Hab mal wieder Probleme
Übersicht

![]() |
sbrogBetreff: Hab mal wieder Probleme |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich will ein Programm schreiben, in dem man mit einem Panzer herumfährt und schießt. Ich hab den Panzer so gecodet :
Code: [AUSKLAPPEN] Graphics 800,600 Panzerpositionx = 100 Repeat Cls Rect panzerposition,550,50,50,2 Rect panzerposition+10,500,5,50 Rect panzerposition+35,500,5,50 If KeyDown(203) panzerposition = panzerposition-2 EndIf If KeyDown(205) panzerposition= panzerposition+2 EndIf Flip Until KeyHit(1) If KeyHit(156) Rect panzerposition+10,480,5,20 EndIf Das funktioniert auch und der Panzer bewegt sich . Jetzt will ich aber den Panzer auf der Leertaste schießen lassen wenn ich jetzt aber schreibe If keyhit (code fürs schießen) endif und die schleife läuft das nächste mal durch, dann wird der schuss wieder beendet.(weil if keyhit nicht mehr erfüllt ist ) Wie kann ich schreiben, dass der schuss weiterhin ausgeführt wird,(also das If Keyhit beim zweiten schleifendurchlauf nicht mehr beachtet wird ? |
||
![]() |
Hubsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] If KeyHit(schiessen) Then ballern=True
If ballern ; Code fürs schiessen EndIf Und Setbuffer BackBuffer() nicht vergessen ![]() |
||
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn... |
![]() |
wunderkind |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hubsi hat Folgendes geschrieben: Code: [AUSKLAPPEN]
If KeyHit(schiessen) Then ballern=True
If ballern ; Code fürs schiessen EndIf Und Setbuffer BackBuffer() nicht vergessen ![]() Unvollständig würde ich behaupten ![]() |
||
![]() |
sbrog |
![]() Antworten mit Zitat ![]() |
---|---|---|
damit man nochmal ballern kann ?
hab wieder ein Problem Code: [AUSKLAPPEN] Graphics 800,600 Panzerposition = 100 schussposition = 480 Repeat Cls Rect panzerposition,550,50,50,2 Rect panzerposition+10,500,5,50 Rect panzerposition+35,500,5,50 If KeyDown(203) panzerposition = panzerposition-2 EndIf If KeyDown(205) panzerposition= panzerposition+2 EndIf If keyhit(28) then ballern =1 if ballern rect panzerposition +10,schussposition,5,schussposition+20 Endif Flip Until KeyHit(1) If KeyHit(156) Rect panzerposition+10,480,5,20 EndIf Wenn ich jetzt jedesmal schussposition um 1 verringere, damit sich der schuss nach oben bewegt, wie kann ich einstellen, dass schussposition erst schussposition-1 , wenn ballern = 1 ?[/code] |
||
![]() |
Hubsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
wunderkind hat Folgendes geschrieben: Unvollständig würde ich behaupten Eine gewisse Motivation zum selberdenken setze ich natürlich voraus ![]() ![]() |
||
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn... |
![]() |
sbrog |
![]() Antworten mit Zitat ![]() |
---|---|---|
habs jetzt soweit
Code: [AUSKLAPPEN] Graphics 800,600 Panzerposition = 100 Schussposition = 480 Repeat Cls Rect panzerposition,550,50,50,2 Rect panzerposition+10,500,5,50 Rect panzerposition+35,500,5,50 If KeyDown(203) panzerposition = panzerposition-2 EndIf If KeyDown(205) panzerposition= panzerposition+2 EndIf If KeyHit(28) schiessen= 1 EndIf If schiessen Rect Panzerposition+10,schussposition,5,20 schussposition = schussposition-3 EndIf Flip Until KeyHit(1) If KeyHit(156) Rect panzerposition+10,480,5,20 EndIf was muss ich schreiben, dass der schuss nicht mit der Panzerposition mitläuft, sondern da bleibt, wo er abgeschossen wurde ? |
||
x.Force |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
schau inst CodeArchiv da hat Ralli men mal so was gemacht ![]() |
||
AMD Athlon XP 2000+ | 1024mb DDR-Ram | Asus Radeon 9600XT | BENQ FP757 17°Zoll TFT Was kümmert mich mein Geschwätz von gestern? (Konrad Adenauer) -.- |
![]() |
sbrog |
![]() Antworten mit Zitat ![]() |
---|---|---|
dort wird die schussfunktion aber mit sin und cos berechnet, weil in alle richtungen geschossen wird. | ||
x.Force |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
und bei dir in nur eine? dann rob der hat in seinem tut so ein spiel in tutsammlung 2 | ||
AMD Athlon XP 2000+ | 1024mb DDR-Ram | Asus Radeon 9600XT | BENQ FP757 17°Zoll TFT Was kümmert mich mein Geschwätz von gestern? (Konrad Adenauer) -.- |
![]() |
sbrog |
![]() Antworten mit Zitat ![]() |
---|---|---|
x.Force hat Folgendes geschrieben: und bei dir in nur eine?
schau dir den code an, dann siehst dus. |
||
![]() |
sbrog |
![]() Antworten mit Zitat ![]() |
---|---|---|
hab den code jetzt so :
Code: [AUSKLAPPEN] Graphics 800,600 Schussposition = 480 Repeat Cls Rect panzerposition,550,50,50,2 Rect panzerposition+10,500,5,50 Rect panzerposition+35,500,5,50 If KeyDown(203) panzerposition = panzerposition-2 EndIf If KeyDown(205) panzerposition= panzerposition+2 EndIf If KeyHit(57) schiessen= True EndIf If schiessen Rect panzerposition+10,schussposition,5,20 Rect panzerposition+35,schussposition,5,20 schussposition = schussposition-3 EndIf If schussposition<-20 schiessen=False schussposition =480 EndIf Flip Until KeyHit(1) das problem ist, dass der schuss mit dem panzer mitläuft ,und man sollte schießen können, während der andere schuss noch im bild ist. |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group