Bewegungsproblem
Übersicht

mpcoolBetreff: Bewegungsproblem |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hey leute, hab ein Problem mit der Bewegung....
Es soll ein Pong werden, wenn ich z.b. hoch drücke geht der nur hoch und gar nicht mehr runter wenn ich runter drücke, und das ist auch umgekehrt genau so ![]() Hier mal der Code: Code: [AUSKLAPPEN] AppTitle "Easy Pong"
Graphics 800, 600, 16, 2 SetBuffer BackBuffer() SeedRnd MilliSecs() ;bilder laden und variablen bzw. konstanten festlegen pong = LoadImage("pong.jpg") x_pong_start = 10 y_pong_start = 225 Const hoch = 1 Const runter = 2 richtung = 0 ;schleife Repeat Cls ;hoch If KeyHit(200) Then If richtung <> runter Then richtung = hoch EndIf EndIf ;runter If KeyHit(208) Then If richtung <> hoch Then richtung = runter EndIf EndIf ;zeit abfragen If MilliSecs() - bewegung > 1 Then ;je weniger desto schneller bewegung = MilliSecs() ;bewegung ausführen y_pong_start = y_pong_start - (richtung=hoch) + (richtung=runter) EndIf ;pong malen DrawImage pong, x_pong_start, y_pong_start ;falls spielfeld verlässt If y_pong_start < -110 Then y_pong_start = 599 If y_pong_start > 599 Then y_pong_start = -105 Flip Until KeyHit(1) End Hoffe ihr versteht mein Problem und könnt mir helfen ![]() |
||
Laias |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wann soll der Pong denn genau wieder runter bzw hoch gehen? | ||
http://laias.wordpress.com |
mpcool |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Also wenn er hoch geht (wenn hoch gedrückt wurde) soll er wieder runter gehn wenn die taste runter gedrückt wird ![]() |
||
Laias |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das ist einfach.
Du musst nur das if richtung <> hoch löschen dann gehts. Wiso hast du das überhaup darein getan? hab den code verbessert: Code: [AUSKLAPPEN] AppTitle "Easy Pong"
Graphics 800, 600, 16, 2 SetBuffer BackBuffer() SeedRnd MilliSecs() ;bilder laden und variablen bzw. konstanten festlegen x_pong_start = 10 y_pong_start = 225 Const hoch = 1 Const runter = 2 richtung = 0 ;schleife Repeat Cls ;hoch If KeyHit(200) Then richtung = hoch EndIf ;runter If KeyHit(208) Then richtung = runter EndIf ;zeit abfragen If MilliSecs() - bewegung > 1 Then ;je weniger desto schneller bewegung = MilliSecs() ;bewegung ausführen y_pong_start = y_pong_start - (richtung=hoch) + (richtung=runter) EndIf ;pong malen Oval x_pong_start, y_pong_start,20,20 ;falls spielfeld verlässt If y_pong_start < -110 Then y_pong_start = 599 If y_pong_start > 599 Then y_pong_start = -105 Flip Until KeyHit(1) End mfg Laias EDIT: Achso du musst den Pong dann nochmal zeichnen hab ihn dur oval ersetzt |
||
http://laias.wordpress.com |
- Zuletzt bearbeitet von Laias am Do, Jul 19, 2007 13:04, insgesamt einmal bearbeitet
mpcool |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wow, danke für die schnelle Hilfe ![]() Problem gelöst ![]() |
||
![]() |
X-Calibur |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi, und hier gleich noch n Denkanstoss wie mans auch anders machen könnte ![]() Code: [AUSKLAPPEN] AppTitle "Easy Pong" Graphics 800, 600, 16, 2 SetBuffer BackBuffer() SeedRnd MilliSecs() ;bilder laden und variablen bzw. konstanten festlegen pong = LoadImage("pong.jpg") PX=MouseX() PY=560 Pongx#=400 Pongy#=550 PongW#=300 PongSpeed#=5 ;schleife Repeat Cls If pongy<0 Then ; oben kollidiert Pongw = 2 * 180 - Pongw EndIf If pongx>790 Then ; rechts kollidiert Pongw = 2 * 90 - Pongw EndIf If pongy>590 Then ; unten kollidiert Pongw = 2 * 0 - Pongw EndIf If pongx<0 Then ; links kollidiert Pongw = 2 * 270 - Pongw EndIf Pongx=Pongx+Cos(Pongw)*PongSpeed Pongy=Pongy+Sin(Pongw)*PongSpeed DrawImage pong,pongx, pongy ; Pong malen Rect MouseX()-30, PY,60,10 ; Player Malen Flip Until KeyHit(1) End |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group