Ping Pong
Übersicht

D@NieLBetreff: Ping Pong |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi!
Ich habe letzte Zeit Blitz Basic ausprobiert (Demo) und war so begeistert, dass ich sofort auf die Suche nach der Vollversion und einem Buch gegangen bin. Das traurige Ergebniss ![]() So, nun zum eigentlichen Problem: Da ich ein Anfänger im Bereich von Blitz Basic bin, habe ich mir vorgenommen zuerst "leicht" anzufangen. Mit """"Ping Pong"""". Jetzt weis ich nicht wie ich die Kugel dazu bringe das sie immer hin und her "fliegt" und dann immer schneller wird! Bitte helft mir... Mfg D@NieL |
||
![]() |
JustTheBest |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das ganze Prinzip hier zu beschreiben würd zu lange führen, aber wenn du die Foren-Suche(oben unterm logo "suche") benutzt findest du etliche Themen!
Also gaaanz kurz zusammengefasst: Du hast eine Variable: Speed Die erhöhst du, je nach belieben pro schleifendurchlauf um ca. 0.01 (<-ausprobieren!) oder bei jedem "aufprall"! Der Aufprall: Du prüfst mit einer If-Bedingung, ob die x-Koordinate des Balles entweder unter ca. 10 ist oder über 620! Dann gilt das Prinzip aufprallwinkel = abprallwinkel! Das gleich machst du mit dem(/n) Schläger(n)! Einfach mal suchen! Gibt echt unzählige hilfen hier im Forum! mfg JTB |
||
www.mas-online.de.gg
__________ Liegt der Camper tot im Keller war der Rusher wieder schneller. Liegt der Rusher tot daneben hat der Camper nen Kollegen! |
![]() |
darthBetreff: .. |
![]() Antworten mit Zitat ![]() |
---|---|---|
in etwa so:
x_geschwindigkeit=5 y_geschwindigkeit=0 Code: [AUSKLAPPEN] solange_nicht_abbruch_gedrückt: zeichne_kugel_an_stelle: x,y wenn_x=rechter_rand dann x_geschwindigkeit=-x_geschwindigkeit x_geschwindigkeit=x_geschwindigkeit-1 (schneller machen) y_geschwindigkeit=-y_geschwindigkeit (einfall winkel = ausfall winkel) ende_wenn wenn_x=linker_rand dann x_geschwindigkeit=-x_geschwindigkeit x_geschwindigkeit=x_geschwindigkeit+1 (schneller) y_geschwindigkeit=-y_geschwindigkeit (einfall winkel = ausfall winkel) ende_wenn x=x+x_geschwindigkeit y=y+y_geschwindigkeit ende_solange => jetzt fehlt zwar noch dass y_geschwindigkeit irgendwann einmal ändert, aber da musst du sagen wann die ändern soll... |
||
Diese Signatur ist leer. |
D@NieL |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Aha !!! Jetzt hab ichs verstanden... danke!
Bin jetzt schon relativ weit mit meinem Clone, muss nur noch mehr Levels machen! LG D@NieL |
||
![]() |
Yankee |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi,
Ich hab des hier grad gefunden und hab in meinem vollen speicher auch ein ping pong gefunden, so wie du es wolltest, glaube ich^^ hier isses, wenn du willst (musst nur kopieren, dann haste es) Code: [AUSKLAPPEN] Graphics 640, 480 SetBuffer BackBuffer() ball_x = 120 ball_y = 240 x_speed = 2 y_speed = 2 player1_x = 10 player1_y = 240 player2_x = 610 player2_y = 240 speed_1 = 3 speed_2 = 3 score1 = 0 score2 = 0 schrift = LoadFont("arial", 20,False,True,False) SetFont schrift While Not KeyHit(1) ClsColor 255,255,255 Cls If ball_y > 455 Or ball_y < 0 Then y_speed = -y_speed EndIf If KeyDown(31) Then player1_y = player1_y + speed_1 If KeyDown(17) Then player1_y = player1_y - speed_1 ;player 2 If KeyDown(208) Then player2_y = player2_y + speed_2 If KeyDown(200) Then player2_y = player2_y - speed_2 ball_x = ball_x + x_speed ball_y = ball_y + y_speed ;abprallen If (ball_x < 10) And (ball_y > - 50 + player1_y And ball_yw < 50 + player1_y) Then If x_speed < 0 Then x_speed = x_speed - 1 Else x_speed = x_speed + 1 EndIf x_speed = -x_speed EndIf If (ball_x > 590) And (ball_y > - 50 + player2_y And ball_y < 50 + player2_y) Then If x_speed < 0 Then x_speed = x_speed - 1 Else x_speed = x_speed + 1 EndIf x_speed = -x_speed EndIf ;ueberpruefen die punkte If ball_x < -10 Then score2 = score2 + 1 ball_x = 320 ball_y = 240 x_speed = -x_speed y_speed = -y_speed x_speed = 1 player1_y = 240 player2_y = 240 EndIf If ball_x > 640 Then score1 = score1 + 1 ball_x = 320 ball_y = 240 x_speed = -x_speed y_speed = -y_speed x_speed = 1 player1_y = 240 player2_y = 240 EndIf ;damit man nicht zu weit gehen kann If player1_y < 50 Then player1_y = 50 If player2_y < 50 Then player2_y = 50 If player1_y > 430 Then player1_y = 430 If player2_y > 430 Then player2_y = 430 Color 0,0,255 Text 160, 10, score1 Text 480, 10, score2 Color 200,200,40 Line player1_x, player1_y + 50, player1_x, player1_y - 50 Line player2_x, player2_y + 50, player2_x, player2_y - 50 Color 100,200,40 Oval ball_x, ball_y, 20,20 Flip Wend End Hoffe des hier nuetzt dir was... ![]() Cu |
||
Um so kleiner der code, um so schwieriger den Fehler zu finden:
Siehst du den Fehler? Klick mal hier drauf... hehehe |
ke^kx |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Lol? "Du musst nur kopieren, dann haste es!" ![]() Aber gut, jedem das seine... Jiriki |
||
http://i3u8.blogspot.com
Asus Striker II Intel Core2Quad Q9300 @ 2,5 GHz (aber nur zwei Kerne aktiv aufgrund der Instabilität -.-) Geforce 9800 GTX 2GB RAM |
D@NieL |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
@ jiriki: Hab schon mein eigenes Ping Pong "Smaily Ping Pong" gemacht seit 3 Tagen... hab nix gekoppiert.. nur bei der Sinusrechnung für den ball hat mir wer geholfen ![]() Danke für eure hilfe habs schon rausgefunden und kapiert ![]() Lg D@niel |
||
ke^kx |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich meinte auch garnicht dich, sondern den, der den Code gepostet hat mit ebendiesem schon fast anrüchigem Kommentar.
Jiriki |
||
http://i3u8.blogspot.com
Asus Striker II Intel Core2Quad Q9300 @ 2,5 GHz (aber nur zwei Kerne aktiv aufgrund der Instabilität -.-) Geforce 9800 GTX 2GB RAM |
![]() |
Yankee |
![]() Antworten mit Zitat ![]() |
---|---|---|
meinte doch nur als Beispiel, fuer das Spiel.....
Aber wenn ihr meine Hilfe net wollt.... Ach egal Yankee ![]() |
||
Um so kleiner der code, um so schwieriger den Fehler zu finden:
Siehst du den Fehler? Klick mal hier drauf... hehehe |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group