spiel zu langsam

Übersicht BlitzBasic Allgemein

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen

wuenschie

Betreff: spiel zu langsam

BeitragDo, Nov 25, 2004 16:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo Leute,

ich hab ein kleines fight-spiel geschrieben in dem mehrere figuren sich bekämpfen mit spezialmoves und so. am anfang ist alles wunderbar schnell, nach einer minute aber wird es langsamer und meine cpu belastung liegt bei 100%.
woran liegt das?? könnte es sein das ich zu viele variablen habe, wenn ja gibt es in blitzbasic so etwas wie dynamische speicherung oder elokieren (keine ahnung wie das geschrieben wird)????

danke für eure hilfe
Der Tod ist sicher, das Leben nicht!!

sbrog

BeitragDo, Nov 25, 2004 16:55
Antworten mit Zitat
Benutzer-Profile anzeigen
vielleicht lädst du irgendwas in der hauptschleife , z.B Bilder , Sounds , Fonts usw.
 

konstantin

BeitragDo, Nov 25, 2004 16:55
Antworten mit Zitat
Benutzer-Profile anzeigen
naja, das liegt wohl daran, das du mit der zeit immer mehr werte in variablen schreibst, aber die alten nicht löschst Wink

wuenschie

BeitragDo, Nov 25, 2004 16:56
Antworten mit Zitat
Benutzer-Profile anzeigen
meine deklerationen sind alle vor der hauptschleife
Der Tod ist sicher, das Leben nicht!!
 

konstantin

BeitragDo, Nov 25, 2004 16:57
Antworten mit Zitat
Benutzer-Profile anzeigen
und deine definitionen?

wuenschie

BeitragDo, Nov 25, 2004 16:57
Antworten mit Zitat
Benutzer-Profile anzeigen
und wie kann ich die alten variaablen löschen??? und so wie in c++, dynamische speicherung gibt es wo nich????
Der Tod ist sicher, das Leben nicht!!

wuenschie

BeitragDo, Nov 25, 2004 17:01
Antworten mit Zitat
Benutzer-Profile anzeigen
meine definition steht auch vor der hauptschleife
Der Tod ist sicher, das Leben nicht!!
 

getlose

BeitragDo, Nov 25, 2004 18:01
Antworten mit Zitat
Benutzer-Profile anzeigen
code wäre hilfreich, so kann man nur raten.

wuenschie

BeitragDo, Nov 25, 2004 18:29
Antworten mit Zitat
Benutzer-Profile anzeigen
hier mein code [so das wichtigste Wink]

Code: [AUSKLAPPEN]

;---------------------------------------------------
;
;      LITTLE FIGHTER III                  v1.0
;
;                     written by Markus Wünsch
;---------------------------------------------------

Graphics 800, 600, 32, 2
SetBuffer BackBuffer()


framestarten=1
frameoptionen=0
framebeenden=0

überschrift=LoadImage("grafik\überschrift.bmp")
spielstarten=LoadAnimImage("grafik\spiel starten.bmp", 250, 50, 0, 2)
optionen=LoadAnimImage("grafik\optionen.bmp", 250, 50, 0, 2)
spielbeenden=LoadAnimImage("grafik\spiel beenden.bmp", 250, 50, 0, 2)

While Not KeyHit(1)
   ClsColor 190, 190, 190
   Cls

   DrawImage überschrift, 15, 20
   DrawImage spielstarten, 275, 200, framestarten
   DrawImage optionen, 275, 300, frameoptionen
   DrawImage spielbeenden, 275, 400, framebeenden
   
   If KeyHit(208) Then
      If framestarten=1 Then
         framestarten=0
         If frameoptionen=0 Then frameoptionen=1
      ElseIf frameoptionen=1 Then
         frameoptionen=0
         If framebeenden=0 Then framebeenden=1
      ElseIf framebeenden=1 Then
         framebeenden=0
         If framestarten=0 Then framestarten=1
      EndIf
   EndIf
   
   If KeyHit(200) Then
      If framestarten=1 Then
         framestarten=0
         If framebeenden=0 Then framebeenden=1
      ElseIf frameoptionen=1 Then
         frameoptionen=0
         If framestarten=0 Then framestarten=1
      ElseIf framebeenden=1 Then
         framebeenden=0
         If frameoptionen=0 Then frameoptionen=1
      EndIf
   EndIf

   
   If KeyHit(28) Then
      If framestarten=1 Then
         spielstarten()
      ElseIf frameoptionen=1 Then
         optionen()
      ElseIf framebeenden=1 Then
         End
      EndIf
   EndIf
   
   Flip
Wend

End

;-------------------------------------------------------------------------------
;
;   Funktionen
;
;-------------------------------------------------------------------------------

Function spielstarten()

richtung=1
rstehen=0
rlaufen=4
irlaufen=1
rspringen=60
rschlagen=12
lstehen=9
llaufen=5
illaufen=-1
lspringen=69
lschlagen=17
x=50
y=400
iy=3
   
rtemplate=LoadAnimImage("grafik\template-rechts.bmp", 80, 80, 0, 70)
ltemplate=LoadAnimImage("grafik\template-links.bmp", 80, 80, 0, 70)


Repeat
   player1()
   player2()
   If KeyHit(1) Then End
Forever

End Function



Function player1()

;richtung=1
;rstehen=0
;rlaufen=4
;irlaufen=1
;rspringen=60
;rschlagen=12
;lstehen=9
;llaufen=5
;illaufen=-1
;lspringen=69
;lschlagen=17
;x=50
;y=400
;iy=3
   
;rtemplate=LoadAnimImage("grafik\template-rechts.bmp", 80, 80, 0, 70)
;ltemplate=LoadAnimImage("grafik\template-links.bmp", 80, 80, 0, 70)

;Repeat
   ClsColor 0, 0, 0
   Cls
   grafik()
   
   Select richtung
   Case 1
      DrawImage rtemplate, x, y, rstehen
      rstehen=rstehen+1
      If rstehen>3 Then rstehen=0
            
   Case 2
      DrawImage ltemplate, x, y, lstehen
      lstehen=lstehen-1
      If lstehen<6 Then lstehen=9
   End Select
   
   Delay 70
   
   If KeyDown(72) Then                              ; nach oben (NumPad 8)
      Repeat
         Cls
         grafik()
         
         If y<290 Then y=y
         If y>290 Then y=y-3
               
         Select richtung
         Case 1
            DrawImage rtemplate, x, y, rlaufen
            rlaufen=rlaufen+irlaufen
            If rlaufen=7 Then irlaufen=-1
            If rlaufen=4 Then irlaufen=1
            
            If KeyDown(77) Then                              ; schräg nach rechts (NumPad 6)
               Repeat                                    ; und nach oben
                  Cls
                  grafik()
                  
                  x=x+7
                  If y<290 Then y=y
                  If y>290 Then y=y-3

                  DrawImage rtemplate, x, y, rlaufen
                  Delay 50
                  
                  rlaufen=rlaufen+irlaufen
                  If rlaufen=7 Then irlaufen=-1
                  If rlaufen=4 Then irlaufen=1
                  
                  richtung=1
                  
                  Flip
               Until Not KeyDown(77) And KeyDown(72)
            EndIf
            
            If KeyHit(157) Then                           ; nach oben springen (rechte strg)
               Repeat                                 ; rechte Seite
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rspringen
                  rspringen=rspringen+1
                  Delay 40
                  Flip
               Until rspringen=61
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y-15
                  DrawImage rtemplate, x, y, 62
                  Delay 40
                  Flip
               Next
                  
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, 62
               Delay 40
                  
               For i=1 To 2
                  Cls
                  grafik()
                  
                  If y<290 Then y=290
                  If y>290 Then y=y+5
                  
                  DrawImage rtemplate, x, y, 62
                  Delay 30
                  Flip
               Next
                  
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rspringen
                  rspringen=rspringen-1
                  Flip
               Until rspringen=60
            EndIf
            
         Case 2
            DrawImage ltemplate, x, y, llaufen
            llaufen=llaufen+illaufen
            If llaufen=2 Then illaufen=1
            If llaufen=5 Then illaufen=-1
            
            If KeyDown(75) Then                              ; schrähg nach links
               Repeat                                       ; und nach oben
                  Cls
                  grafik()
                  
                  x=x-7
                  If y<290 Then y=y
                  If y>290 Then y=y-3

                  
                  DrawImage ltemplate, x, y, llaufen
                  Delay 50
                  
                  llaufen=llaufen+illaufen
                  If llaufen=2 Then illaufen=1
                  If llaufen=5 Then illaufen=-1
                  
                  richtung=2
            
                  Flip
               Until Not KeyDown(75) And KeyDown(72)
            EndIf
            
            If KeyHit(157) Then                           ; nach oben springen (strg)
               Repeat                                 ; linke Seite
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lspringen
                  lspringen=lspringen-1
                  Delay 40
                  Flip
               Until lspringen=68
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y-15
                  DrawImage ltemplate, x, y, 67
                  Delay 40
                  Flip
               Next
                  
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, 62
               Delay 40
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y+5
                  DrawImage ltemplate, x, y, 67
                  Delay 30
                  Flip
               Next
                  
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lspringen
                  lspringen=lspringen+1
                  Flip
               Until lspringen=69
            EndIf
         End Select
         
         Delay 50
         
         Flip
      Until Not KeyDown(72)
   EndIf
   
   If KeyDown(76) Then                              ; nach unten (NumPad 5)
      Repeat
         Cls
         grafik()
         
         If y>500 Then y=y
         If y<500 Then y=y+3
         
         Select richtung
         Case 1
            DrawImage rtemplate, x, y, rlaufen
            rlaufen=rlaufen+irlaufen
            If rlaufen=7 Then irlaufen=-1
            If rlaufen=4 Then irlaufen=1
            
            If KeyDown(77) Then                              ; schräg nach rechts (NumPad 6)
               Repeat                                    ; und nach unten
                  Cls
                  grafik()
                  
                  x=x+7
                  If y>500 Then y=y
                  If y<500 Then y=y+3
                  
                  DrawImage rtemplate, x, y, rlaufen
                  Delay 50
                  
                  rlaufen=rlaufen+irlaufen
                  If rlaufen=7 Then irlaufen=-1
                  If rlaufen=4 Then irlaufen=1
                  
                  richtung=1
            
                  Flip
               Until Not KeyDown(77) And KeyDown(76)
            EndIf

            
            If KeyHit(157) Then                           ; nach unten springen (strg)
               Repeat                                 ; rechte Seite
                  Cls
                  grafik()                  
                  
                  DrawImage rtemplate, x, y, rspringen
                  rspringen=rspringen+1
                  Delay 40
                  Flip
               Until rspringen=61
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y-15
                  DrawImage rtemplate, x, y, 62
                  Delay 40
                  Flip
               Next
                  
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, 62
               Delay 40
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y+25
                  DrawImage rtemplate, x, y, 62
                  Delay 30
                  Flip
               Next
                  
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rspringen
                  rspringen=rspringen-1
                  Flip
               Until rspringen=60
            EndIf
            
         Case 2
            DrawImage ltemplate, x, y, llaufen
            llaufen=llaufen+illaufen
            If llaufen=2 Then illaufen=1
            If llaufen=5 Then illaufen=-1
            
            If KeyDown(75) Then                              ; schrähg nach links
               Repeat                                       ; und nach unten
                  Cls
                  grafik()
                  
                  x=x-7
                  If y>500 Then y=y
                  If y<500 Then y=y+3
                                 
                  DrawImage ltemplate, x, y, llaufen
                  Delay 50
                  
                  llaufen=llaufen+illaufen
                  If llaufen=2 Then illaufen=1
                  If llaufen=5 Then illaufen=-1
                  
                  richtung=2
            
                  Flip
               Until Not KeyDown(75) And KeyDown(76)
            EndIf

            
            If KeyHit(157) Then                           ; nach unten springen (strg)
               Repeat                                 ; linke Seite
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lspringen
                  lspringen=lspringen-1
                  Delay 40
                  Flip
               Until lspringen=68
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y-15
                  DrawImage ltemplate, x, y, 67
                  Delay 40
                  Flip
               Next
                  
               Cls
               DrawImage ltemplate, x, y, 62
               Delay 40
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y+25
                  DrawImage ltemplate, x, y, 67
                  Delay 30
                  Flip
               Next
                  
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lspringen
                  lspringen=lspringen+1
                  Flip
               Until lspringen=69
            EndIf
         End Select
         
         Delay 50
   
         Flip
      Until Not KeyDown(76)
   EndIf

   
   If KeyDown(77) Then                              ; nach rechts (NumPad 6)
      Repeat
         Cls
         grafik()
         
         x=x+10
         If x>800 Then x=0
         
         DrawImage rtemplate, x, y, rlaufen
         Delay 50
         
         rlaufen=rlaufen+irlaufen
         If rlaufen=7 Then irlaufen=-1
         If rlaufen=4 Then irlaufen=1
         
         richtung=1
   
         Flip
         
         If KeyHit(28) Then                                       ; erst laufen und
            If rschlagen=12 Then                                 ; dann enter
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rschlagen
                  rschlagen=rschlagen+1
                  Delay 50
                  Flip
               Until rschlagen=14
            EndIf
            
            If rschlagen=10 Then
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rschlagen
                  rschlagen=rschlagen+1
                  Delay 50
                  Flip
               Until rschlagen=12
            EndIf
            
            If rschlagen=14 Then rschlagen=10
         EndIf
         
         If KeyHit(157) Then                           ; nach rechts springen (strg)
            Repeat
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, rspringen
               rspringen=rspringen+1
               Delay 40
               Flip
            Until rspringen=61
               
            For i=1 To 5
               Cls
               grafik()
               
               y=y-15
               x=x+15
               DrawImage rtemplate, x, y, 62
               Delay 40
               Flip
            Next
               
            Cls
            grafik()
            
            DrawImage rtemplate, x, y, 62
            Delay 40
               
            For i=1 To 5
               Cls
               grafik()
               
               y=y+15
               x=x+15
               DrawImage rtemplate, x, y, 62
               Delay 30
               Flip
            Next
               
            Repeat
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, rspringen
               rspringen=rspringen-1
               Flip
            Until rspringen=60
         EndIf
      Until Not KeyDown(77)
   EndIf
   
   If KeyDown(75) Then                              ; nach links
      Repeat
         Cls
         grafik()
         
         x=x-10
         If x<0 Then x=800
         
         DrawImage ltemplate, x, y, llaufen
         Delay 50
         
         llaufen=llaufen+illaufen
         If llaufen=2 Then illaufen=1
         If llaufen=5 Then illaufen=-1
         
         richtung=2
   
         Flip
         
         If KeyHit(28) Then                                 ;erst laufen und dann enter
            If lschlagen=17 Then
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lschlagen
                  lschlagen=lschlagen-1
                  Delay 50
                  Flip
               Until lschlagen=15
            EndIf
            
            If lschlagen=19 Then
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lschlagen
                  lschlagen=lschlagen-1
                  Delay 50
                  Flip
               Until lschlagen=17   
            EndIf
            
            If lschlagen=15 Then lschlagen=19
         EndIf
         
         If KeyHit(157) Then                           ; nach links springen (strg)
            Repeat
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, lspringen
               lspringen=lspringen-1
               Delay 40
               Flip
            Until lspringen=68
               
            For i=1 To 5
               Cls
               grafik()
               
               y=y-15
               x=x-15
               DrawImage ltemplate, x, y, 67
               Delay 40
               Flip
            Next
               
            Cls
            grafik()
            
            DrawImage ltemplate, x, y, 62
            Delay 40
               
            For i=1 To 5
               Cls
               grafik()
               
               y=y+15
               x=x-15
               DrawImage ltemplate, x, y, 67
               Delay 30
               Flip
            Next
               
            Repeat
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, lspringen
               lspringen=lspringen+1
               Flip
            Until lspringen=69
         EndIf      
      Until Not KeyDown(75)      
   EndIf
   
   If KeyHit(157) Then                                 ; linke strg
      Select richtung
      Case 1
         Repeat
            Cls
            grafik()
            
            DrawImage rtemplate, x, y, rspringen
            rspringen=rspringen+1
            Delay 50
            Flip
         Until rspringen=61
         
         For i=1 To 5
            Cls
            grafik()
            
            y=y-15
            DrawImage rtemplate, x, y, 62
            Delay 40
            Flip
         Next
         
         Cls
         grafik()
         
         DrawImage rtemplate, x, y, 62
         Delay 40
         
         
         For i=1 To 5
            Cls
            grafik()
            
            y=y+15
            DrawImage rtemplate, x, y, 62
            Delay 30
            Flip
         Next
         
         Repeat
            Cls
            grafik()
            
            DrawImage rtemplate, x, y, rspringen
            rspringen=rspringen-1
            Flip
         Until rspringen=60
      
      Case 2
         Repeat
            Cls
            grafik()
            
            DrawImage ltemplate, x, y, lspringen
            lspringen=lspringen-1
            Delay 50
            Flip
         Until lspringen=68
         
         For i=1 To 5
            Cls
            grafik()
            
            y=y-15
            DrawImage ltemplate, x, y, 67
            Delay 40
            Flip
         Next
         
         Cls
         grafik()
         
         DrawImage ltemplate, x, y, 67
         Delay 40
         
         For i=1 To 5
            Cls
            grafik()
            
            y=y+15
            DrawImage ltemplate, x, y, 67
            Delay 30
            Flip
         Next
         
         Repeat
            Cls
            grafik()
            
            DrawImage ltemplate, x, y, lspringen
            lspringen=lspringen+1
            Flip
         Until lspringen=69
      End Select      
   EndIf
      
   If KeyHit(28) Then                                       ; enter
      Select richtung
      Case 1
         If rschlagen=12 Then
            Repeat
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, rschlagen
               rschlagen=rschlagen+1
               Delay 50
               Flip
            Until rschlagen=14
         EndIf
         
         If rschlagen=10 Then
            Repeat
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, rschlagen
               rschlagen=rschlagen+1
               Delay 50
               Flip
            Until rschlagen=12
         EndIf
         
         If rschlagen=14 Then rschlagen=10
         
      Case 2
         If lschlagen=17 Then
            Repeat
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, lschlagen
               lschlagen=lschlagen-1
               Delay 50
               Flip
            Until lschlagen=15
         EndIf
         
         If lschlagen=19 Then
            Repeat
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, lschlagen
               lschlagen=lschlagen-1
               Delay 50
               Flip
            Until lschlagen=17   
         EndIf
         
         If lschlagen=15 Then lschlagen=19
      End Select
   EndIf
   
   If KeyHit(1) Then End
   
   FlushKeys
   Flip
;Forever


End Function



Function player2()

;richtung=2
;rstehen=0
;rlaufen=4
;irlaufen=1
;rspringen=60
;rschlagen=12
;lstehen=9
;llaufen=5
;illaufen=-1
;lspringen=69
;lschlagen=17
;x=750
;y=400
;iy=3
   
;rtemplate=LoadAnimImage("grafik\template-rechts.bmp", 80, 80, 0, 70)
;ltemplate=LoadAnimImage("grafik\template-links.bmp", 80, 80, 0, 70)


;Repeat
   ClsColor 0, 0, 0
   Cls
   grafik()
   
   Select richtung
   Case 1
      DrawImage rtemplate, x, y, rstehen
      rstehen=rstehen+1
      If rstehen>3 Then rstehen=0
            
   Case 2
      DrawImage ltemplate, x, y, lstehen
      lstehen=lstehen-1
      If lstehen<6 Then lstehen=9
   End Select
   
   Delay 70
   
   If KeyDown(17) Then                              ; nach oben
      Repeat
         Cls
         grafik()
         
         If y<290 Then y=y
         If y>290 Then y=y-3
               
         Select richtung
         Case 1
            DrawImage rtemplate, x, y, rlaufen
            rlaufen=rlaufen+irlaufen
            If rlaufen=7 Then irlaufen=-1
            If rlaufen=4 Then irlaufen=1
            
            If KeyDown(32) Then                              ; schräg nach rechts
               Repeat                                    ; und nach oben
                  Cls
                  grafik()
                  
                  x=x+7
                  If y<290 Then y=y
                  If y>290 Then y=y-3

                  DrawImage rtemplate, x, y, rlaufen
                  Delay 50
                  
                  rlaufen=rlaufen+irlaufen
                  If rlaufen=7 Then irlaufen=-1
                  If rlaufen=4 Then irlaufen=1
                  
                  richtung=1
                  
                  Flip
               Until Not KeyDown(32) And KeyDown(17)
            EndIf
            
            If KeyHit(4) Then                           ; nach oben springen (3)
               Repeat                                 ; rechte Seite
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rspringen
                  rspringen=rspringen+1
                  Delay 40
                  Flip
               Until rspringen=61
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y-15
                  DrawImage rtemplate, x, y, 62
                  Delay 40
                  Flip
               Next
                  
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, 62
               Delay 40
                  
               For i=1 To 2
                  Cls
                  grafik()
                  
                  If y<290 Then y=290
                  If y>290 Then y=y+5
                  
                  DrawImage rtemplate, x, y, 62
                  Delay 30
                  Flip
               Next
                  
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rspringen
                  rspringen=rspringen-1
                  Flip
               Until rspringen=60
            EndIf
            
         Case 2
            DrawImage ltemplate, x, y, llaufen
            llaufen=llaufen+illaufen
            If llaufen=2 Then illaufen=1
            If llaufen=5 Then illaufen=-1
            
            If KeyDown(30) Then                              ; schrähg nach links
               Repeat                                    ; und nach oben
                  Cls
                  grafik()
                  
                  x=x-7
                  If y<290 Then y=y
                  If y>290 Then y=y-3

                  
                  DrawImage ltemplate, x, y, llaufen
                  Delay 50
                  
                  llaufen=llaufen+illaufen
                  If llaufen=2 Then illaufen=1
                  If llaufen=5 Then illaufen=-1
                  
                  richtung=2
            
                  Flip
               Until Not KeyDown(30) And KeyDown(17)
            EndIf
            
            If KeyHit(4) Then                           ; nach oben springen (3)
               Repeat                                 ; linke Seite
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lspringen
                  lspringen=lspringen-1
                  Delay 40
                  Flip
               Until lspringen=68
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y-15
                  DrawImage ltemplate, x, y, 67
                  Delay 40
                  Flip
               Next
                  
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, 62
               Delay 40
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y+5
                  DrawImage ltemplate, x, y, 67
                  Delay 30
                  Flip
               Next
                  
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lspringen
                  lspringen=lspringen+1
                  Flip
               Until lspringen=69
            EndIf
         End Select
         
         Delay 50
         
         Flip
      Until Not KeyDown(17)
   EndIf
   
   If KeyDown(31) Then                              ; nach unten
      Repeat
         Cls
         grafik()
         
         If y>500 Then y=y
         If y<500 Then y=y+3
         
         Select richtung
         Case 1
            DrawImage rtemplate, x, y, rlaufen
            rlaufen=rlaufen+irlaufen
            If rlaufen=7 Then irlaufen=-1
            If rlaufen=4 Then irlaufen=1
            
            If KeyDown(32) Then                              ; schräg nach rechts
               Repeat                                    ; und nach unten
                  Cls
                  grafik()
                  
                  x=x+7
                  If y>500 Then y=y
                  If y<500 Then y=y+3
                  
                  DrawImage rtemplate, x, y, rlaufen
                  Delay 50
                  
                  rlaufen=rlaufen+irlaufen
                  If rlaufen=7 Then irlaufen=-1
                  If rlaufen=4 Then irlaufen=1
                  
                  richtung=1
            
                  Flip
               Until Not KeyDown(32) And KeyDown(31)
            EndIf

            
            If KeyHit(4) Then                           ; nach unten springen (3)
               Repeat                                 ; rechte Seite
                  Cls
                  grafik()                  
                  
                  DrawImage rtemplate, x, y, rspringen
                  rspringen=rspringen+1
                  Delay 40
                  Flip
               Until rspringen=61
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y-15
                  DrawImage rtemplate, x, y, 62
                  Delay 40
                  Flip
               Next
                  
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, 62
               Delay 40
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y+25
                  DrawImage rtemplate, x, y, 62
                  Delay 30
                  Flip
               Next
                  
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rspringen
                  rspringen=rspringen-1
                  Flip
               Until rspringen=60
            EndIf
            
         Case 2
            DrawImage ltemplate, x, y, llaufen
            llaufen=llaufen+illaufen
            If llaufen=2 Then illaufen=1
            If llaufen=5 Then illaufen=-1
            
            If KeyDown(30) Then                              ; schrähg nach links
               Repeat                                    ; und nach unten
                  Cls
                  grafik()
                  
                  x=x-7
                  If y>500 Then y=y
                  If y<500 Then y=y+3
                                 
                  DrawImage ltemplate, x, y, llaufen
                  Delay 50
                  
                  llaufen=llaufen+illaufen
                  If llaufen=2 Then illaufen=1
                  If llaufen=5 Then illaufen=-1
                  
                  richtung=2
            
                  Flip
               Until Not KeyDown(30) And KeyDown(31)
            EndIf

            
            If KeyHit(4) Then                           ; nach unten springen (3)
               Repeat                                 ; linke Seite
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lspringen
                  lspringen=lspringen-1
                  Delay 40
                  Flip
               Until lspringen=68
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y-15
                  DrawImage ltemplate, x, y, 67
                  Delay 40
                  Flip
               Next
                  
               Cls
               DrawImage ltemplate, x, y, 62
               Delay 40
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y+25
                  DrawImage ltemplate, x, y, 67
                  Delay 30
                  Flip
               Next
                  
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lspringen
                  lspringen=lspringen+1
                  Flip
               Until lspringen=69
            EndIf
         End Select
         
         Delay 50
   
         Flip
      Until Not KeyDown(31)
   EndIf

   
   If KeyDown(32) Then                              ; nach rechts
      Repeat
         Cls
         grafik()
         
         x=x+10
         If x>800 Then x=0
         
         DrawImage rtemplate, x, y, rlaufen
         Delay 50
         
         rlaufen=rlaufen+irlaufen
         If rlaufen=7 Then irlaufen=-1
         If rlaufen=4 Then irlaufen=1
         
         richtung=1
   
         Flip
         
         If KeyHit(2) Then                                       ; erst laufen und
            If rschlagen=12 Then                                 ; dann 1
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rschlagen
                  rschlagen=rschlagen+1
                  Delay 50
                  Flip
               Until rschlagen=14
            EndIf
            
            If rschlagen=10 Then
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rschlagen
                  rschlagen=rschlagen+1
                  Delay 50
                  Flip
               Until rschlagen=12
            EndIf
            
            If rschlagen=14 Then rschlagen=10
         EndIf
         
         If KeyHit(4) Then                           ; nach rechts springen (3)
            Repeat
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, rspringen
               rspringen=rspringen+1
               Delay 40
               Flip
            Until rspringen=61
               
            For i=1 To 5
               Cls
               grafik()
               
               y=y-15
               x=x+15
               DrawImage rtemplate, x, y, 62
               Delay 40
               Flip
            Next
               
            Cls
            grafik()
            
            DrawImage rtemplate, x, y, 62
            Delay 40
               
            For i=1 To 5
               Cls
               grafik()
               
               y=y+15
               x=x+15
               DrawImage rtemplate, x, y, 62
               Delay 30
               Flip
            Next
               
            Repeat
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, rspringen
               rspringen=rspringen-1
               Flip
            Until rspringen=60
         EndIf
      Until Not KeyDown(32)
   EndIf
   
   If KeyDown(30) Then                              ; nach links
      Repeat
         Cls
         grafik()
         
         x=x-10
         If x<0 Then x=800
         
         DrawImage ltemplate, x, y, llaufen
         Delay 50
         
         llaufen=llaufen+illaufen
         If llaufen=2 Then illaufen=1
         If llaufen=5 Then illaufen=-1
         
         richtung=2
   
         Flip
         
         If KeyHit(2) Then                                 ;erst laufen und dann 1
            If lschlagen=17 Then
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lschlagen
                  lschlagen=lschlagen-1
                  Delay 50
                  Flip
               Until lschlagen=15
            EndIf
            
            If lschlagen=19 Then
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lschlagen
                  lschlagen=lschlagen-1
                  Delay 50
                  Flip
               Until lschlagen=17   
            EndIf
            
            If lschlagen=15 Then lschlagen=19
         EndIf
         
         If KeyHit(4) Then                           ; nach links springen (3)
            Repeat
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, lspringen
               lspringen=lspringen-1
               Delay 40
               Flip
            Until lspringen=68
               
            For i=1 To 5
               Cls
               grafik()
               
               y=y-15
               x=x-15
               DrawImage ltemplate, x, y, 67
               Delay 40
               Flip
            Next
               
            Cls
            grafik()
            
            DrawImage ltemplate, x, y, 62
            Delay 40
               
            For i=1 To 5
               Cls
               grafik()
               
               y=y+15
               x=x-15
               DrawImage ltemplate, x, y, 67
               Delay 30
               Flip
            Next
               
            Repeat
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, lspringen
               lspringen=lspringen+1
               Flip
            Until lspringen=69
         EndIf      
      Until Not KeyDown(30)      
   EndIf
   
   If KeyHit(4) Then                                 ; 3
      Select richtung
      Case 1
         Repeat
            Cls
            grafik()
            
            DrawImage rtemplate, x, y, rspringen
            rspringen=rspringen+1
            Delay 50
            Flip
         Until rspringen=61
         
         For i=1 To 5
            Cls
            grafik()
            
            y=y-15
            DrawImage rtemplate, x, y, 62
            Delay 40
            Flip
         Next
         
         Cls
         grafik()
         
         DrawImage rtemplate, x, y, 62
         Delay 40
         
         
         For i=1 To 5
            Cls
            grafik()
            
            y=y+15
            DrawImage rtemplate, x, y, 62
            Delay 30
            Flip
         Next
         
         Repeat
            Cls
            grafik()
            
            DrawImage rtemplate, x, y, rspringen
            rspringen=rspringen-1
            Flip
         Until rspringen=60
      
      Case 2
         Repeat
            Cls
            grafik()
            
            DrawImage ltemplate, x, y, lspringen
            lspringen=lspringen-1
            Delay 50
            Flip
         Until lspringen=68
         
         For i=1 To 5
            Cls
            grafik()
            
            y=y-15
            DrawImage ltemplate, x, y, 67
            Delay 40
            Flip
         Next
         
         Cls
         grafik()
         
         DrawImage ltemplate, x, y, 67
         Delay 40
         
         For i=1 To 5
            Cls
            grafik()
            
            y=y+15
            DrawImage ltemplate, x, y, 67
            Delay 30
            Flip
         Next
         
         Repeat
            Cls
            grafik()
            
            DrawImage ltemplate, x, y, lspringen
            lspringen=lspringen+1
            Flip
         Until lspringen=69
      End Select      
   EndIf
      
   If KeyHit(2) Then                                       ; 1
      Select richtung
      Case 1
         If rschlagen=12 Then
            Repeat
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, rschlagen
               rschlagen=rschlagen+1
               Delay 50
               Flip
            Until rschlagen=14
         EndIf
         
         If rschlagen=10 Then
            Repeat
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, rschlagen
               rschlagen=rschlagen+1
               Delay 50
               Flip
            Until rschlagen=12
         EndIf
         
         If rschlagen=14 Then rschlagen=10
         
      Case 2
         If lschlagen=17 Then
            Repeat
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, lschlagen
               lschlagen=lschlagen-1
               Delay 50
               Flip
            Until lschlagen=15
         EndIf
         
         If lschlagen=19 Then
            Repeat
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, lschlagen
               lschlagen=lschlagen-1
               Delay 50
               Flip
            Until lschlagen=17   
         EndIf
         
         If lschlagen=15 Then lschlagen=19
      End Select
   EndIf
   
   If KeyHit(1) Then End
   
   FlushKeys
   Flip
;Forever


End Function
Der Tod ist sicher, das Leben nicht!!

wuenschie

BeitragDo, Nov 25, 2004 18:34
Antworten mit Zitat
Benutzer-Profile anzeigen
ups, sorry das war der falsche code hier ist der richtige:

Code: [AUSKLAPPEN]

;---------------------------------------------------
;
;      LITTLE FIGHTER III                  v1.0
;
;                     written by Markus Wünsch
;---------------------------------------------------

Graphics 800, 600, 32, 2
SetBuffer BackBuffer()


framestarten=1
frameoptionen=0
framebeenden=0

überschrift=LoadImage("grafik\überschrift.bmp")
spielstarten=LoadAnimImage("grafik\spiel starten.bmp", 250, 50, 0, 2)
optionen=LoadAnimImage("grafik\optionen.bmp", 250, 50, 0, 2)
spielbeenden=LoadAnimImage("grafik\spiel beenden.bmp", 250, 50, 0, 2)

While Not KeyHit(1)
   ClsColor 190, 190, 190
   Cls

   DrawImage überschrift, 15, 20
   DrawImage spielstarten, 275, 200, framestarten
   DrawImage optionen, 275, 300, frameoptionen
   DrawImage spielbeenden, 275, 400, framebeenden
   
   If KeyHit(208) Then
      If framestarten=1 Then
         framestarten=0
         If frameoptionen=0 Then frameoptionen=1
      ElseIf frameoptionen=1 Then
         frameoptionen=0
         If framebeenden=0 Then framebeenden=1
      ElseIf framebeenden=1 Then
         framebeenden=0
         If framestarten=0 Then framestarten=1
      EndIf
   EndIf
   
   If KeyHit(200) Then
      If framestarten=1 Then
         framestarten=0
         If framebeenden=0 Then framebeenden=1
      ElseIf frameoptionen=1 Then
         frameoptionen=0
         If framestarten=0 Then framestarten=1
      ElseIf framebeenden=1 Then
         framebeenden=0
         If frameoptionen=0 Then frameoptionen=1
      EndIf
   EndIf

   
   If KeyHit(28) Then
      If framestarten=1 Then
         spielstarten()
      ElseIf frameoptionen=1 Then
         optionen()
      ElseIf framebeenden=1 Then
         End
      EndIf
   EndIf
   
   Flip
Wend

End

;-------------------------------------------------------------------------------
;
;   Funktionen
;
;-------------------------------------------------------------------------------

Function spielstarten()




richtung=1
rstehen=0
rlaufen=4
irlaufen=1
rspringen=60
rschlagen=12
lstehen=9
llaufen=5
illaufen=-1
lspringen=69
lschlagen=17
x=50
y=400
iy=3
   
rtemplate=LoadAnimImage("grafik\template-rechts.bmp", 80, 80, 0, 70)
ltemplate=LoadAnimImage("grafik\template-links.bmp", 80, 80, 0, 70)

Repeat
   ClsColor 0, 0, 0
   Cls
   grafik()
   
   Select richtung
   Case 1
      DrawImage rtemplate, x, y, rstehen
      rstehen=rstehen+1
      If rstehen>3 Then rstehen=0
            
   Case 2
      DrawImage ltemplate, x, y, lstehen
      lstehen=lstehen-1
      If lstehen<6 Then lstehen=9
   End Select
   
   Delay 70
   
   If KeyDown(72) Then                              ; nach oben (NumPad 8)
      Repeat
         Cls
         grafik()
         
         If y<290 Then y=y
         If y>290 Then y=y-3
               
         Select richtung
         Case 1
            DrawImage rtemplate, x, y, rlaufen
            rlaufen=rlaufen+irlaufen
            If rlaufen=7 Then irlaufen=-1
            If rlaufen=4 Then irlaufen=1
            
            If KeyDown(77) Then                              ; schräg nach rechts (NumPad 6)
               Repeat                                    ; und nach oben
                  Cls
                  grafik()
                  
                  x=x+7
                  If y<290 Then y=y
                  If y>290 Then y=y-3

                  DrawImage rtemplate, x, y, rlaufen
                  Delay 50
                  
                  rlaufen=rlaufen+irlaufen
                  If rlaufen=7 Then irlaufen=-1
                  If rlaufen=4 Then irlaufen=1
                  
                  richtung=1
                  
                  Flip
               Until Not KeyDown(77) And KeyDown(72)
            EndIf
            
            If KeyHit(157) Then                           ; nach oben springen (rechte strg)
               Repeat                                 ; rechte Seite
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rspringen
                  rspringen=rspringen+1
                  Delay 40
                  Flip
               Until rspringen=61
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y-15
                  DrawImage rtemplate, x, y, 62
                  Delay 40
                  Flip
               Next
                  
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, 62
               Delay 40
                  
               For i=1 To 2
                  Cls
                  grafik()
                  
                  If y<290 Then y=290
                  If y>290 Then y=y+5
                  
                  DrawImage rtemplate, x, y, 62
                  Delay 30
                  Flip
               Next
                  
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rspringen
                  rspringen=rspringen-1
                  Flip
               Until rspringen=60
            EndIf
            
         Case 2
            DrawImage ltemplate, x, y, llaufen
            llaufen=llaufen+illaufen
            If llaufen=2 Then illaufen=1
            If llaufen=5 Then illaufen=-1
            
            If KeyDown(75) Then                              ; schrähg nach links
               Repeat                                       ; und nach oben
                  Cls
                  grafik()
                  
                  x=x-7
                  If y<290 Then y=y
                  If y>290 Then y=y-3

                  
                  DrawImage ltemplate, x, y, llaufen
                  Delay 50
                  
                  llaufen=llaufen+illaufen
                  If llaufen=2 Then illaufen=1
                  If llaufen=5 Then illaufen=-1
                  
                  richtung=2
            
                  Flip
               Until Not KeyDown(75) And KeyDown(72)
            EndIf
            
            If KeyHit(157) Then                           ; nach oben springen (strg)
               Repeat                                 ; linke Seite
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lspringen
                  lspringen=lspringen-1
                  Delay 40
                  Flip
               Until lspringen=68
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y-15
                  DrawImage ltemplate, x, y, 67
                  Delay 40
                  Flip
               Next
                  
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, 62
               Delay 40
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y+5
                  DrawImage ltemplate, x, y, 67
                  Delay 30
                  Flip
               Next
                  
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lspringen
                  lspringen=lspringen+1
                  Flip
               Until lspringen=69
            EndIf
         End Select
         
         Delay 50
         
         Flip
      Until Not KeyDown(72)
   EndIf
   
   If KeyDown(76) Then                              ; nach unten (NumPad 5)
      Repeat
         Cls
         grafik()
         
         If y>500 Then y=y
         If y<500 Then y=y+3
         
         Select richtung
         Case 1
            DrawImage rtemplate, x, y, rlaufen
            rlaufen=rlaufen+irlaufen
            If rlaufen=7 Then irlaufen=-1
            If rlaufen=4 Then irlaufen=1
            
            If KeyDown(77) Then                              ; schräg nach rechts (NumPad 6)
               Repeat                                    ; und nach unten
                  Cls
                  grafik()
                  
                  x=x+7
                  If y>500 Then y=y
                  If y<500 Then y=y+3
                  
                  DrawImage rtemplate, x, y, rlaufen
                  Delay 50
                  
                  rlaufen=rlaufen+irlaufen
                  If rlaufen=7 Then irlaufen=-1
                  If rlaufen=4 Then irlaufen=1
                  
                  richtung=1
            
                  Flip
               Until Not KeyDown(77) And KeyDown(76)
            EndIf

            
            If KeyHit(157) Then                           ; nach unten springen (strg)
               Repeat                                 ; rechte Seite
                  Cls
                  grafik()                  
                  
                  DrawImage rtemplate, x, y, rspringen
                  rspringen=rspringen+1
                  Delay 40
                  Flip
               Until rspringen=61
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y-15
                  DrawImage rtemplate, x, y, 62
                  Delay 40
                  Flip
               Next
                  
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, 62
               Delay 40
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y+25
                  DrawImage rtemplate, x, y, 62
                  Delay 30
                  Flip
               Next
                  
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rspringen
                  rspringen=rspringen-1
                  Flip
               Until rspringen=60
            EndIf
            
         Case 2
            DrawImage ltemplate, x, y, llaufen
            llaufen=llaufen+illaufen
            If llaufen=2 Then illaufen=1
            If llaufen=5 Then illaufen=-1
            
            If KeyDown(75) Then                              ; schrähg nach links
               Repeat                                       ; und nach unten
                  Cls
                  grafik()
                  
                  x=x-7
                  If y>500 Then y=y
                  If y<500 Then y=y+3
                                 
                  DrawImage ltemplate, x, y, llaufen
                  Delay 50
                  
                  llaufen=llaufen+illaufen
                  If llaufen=2 Then illaufen=1
                  If llaufen=5 Then illaufen=-1
                  
                  richtung=2
            
                  Flip
               Until Not KeyDown(75) And KeyDown(76)
            EndIf

            
            If KeyHit(157) Then                           ; nach unten springen (strg)
               Repeat                                 ; linke Seite
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lspringen
                  lspringen=lspringen-1
                  Delay 40
                  Flip
               Until lspringen=68
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y-15
                  DrawImage ltemplate, x, y, 67
                  Delay 40
                  Flip
               Next
                  
               Cls
               DrawImage ltemplate, x, y, 62
               Delay 40
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y+25
                  DrawImage ltemplate, x, y, 67
                  Delay 30
                  Flip
               Next
                  
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lspringen
                  lspringen=lspringen+1
                  Flip
               Until lspringen=69
            EndIf
         End Select
         
         Delay 50
   
         Flip
      Until Not KeyDown(76)
   EndIf

   
   If KeyDown(77) Then                              ; nach rechts (NumPad 6)
      Repeat
         Cls
         grafik()
         
         x=x+10
         If x>800 Then x=0
         
         DrawImage rtemplate, x, y, rlaufen
         Delay 50
         
         rlaufen=rlaufen+irlaufen
         If rlaufen=7 Then irlaufen=-1
         If rlaufen=4 Then irlaufen=1
         
         richtung=1
   
         Flip
         
         If KeyHit(28) Then                                       ; erst laufen und
            If rschlagen=12 Then                                 ; dann enter
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rschlagen
                  rschlagen=rschlagen+1
                  Delay 50
                  Flip
               Until rschlagen=14
            EndIf
            
            If rschlagen=10 Then
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rschlagen
                  rschlagen=rschlagen+1
                  Delay 50
                  Flip
               Until rschlagen=12
            EndIf
            
            If rschlagen=14 Then rschlagen=10
         EndIf
         
         If KeyHit(157) Then                           ; nach rechts springen (strg)
            Repeat
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, rspringen
               rspringen=rspringen+1
               Delay 40
               Flip
            Until rspringen=61
               
            For i=1 To 5
               Cls
               grafik()
               
               y=y-15
               x=x+15
               DrawImage rtemplate, x, y, 62
               Delay 40
               Flip
            Next
               
            Cls
            grafik()
            
            DrawImage rtemplate, x, y, 62
            Delay 40
               
            For i=1 To 5
               Cls
               grafik()
               
               y=y+15
               x=x+15
               DrawImage rtemplate, x, y, 62
               Delay 30
               Flip
            Next
               
            Repeat
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, rspringen
               rspringen=rspringen-1
               Flip
            Until rspringen=60
         EndIf
      Until Not KeyDown(77)
   EndIf
   
   If KeyDown(75) Then                              ; nach links
      Repeat
         Cls
         grafik()
         
         x=x-10
         If x<0 Then x=800
         
         DrawImage ltemplate, x, y, llaufen
         Delay 50
         
         llaufen=llaufen+illaufen
         If llaufen=2 Then illaufen=1
         If llaufen=5 Then illaufen=-1
         
         richtung=2
   
         Flip
         
         If KeyHit(28) Then                                 ;erst laufen und dann enter
            If lschlagen=17 Then
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lschlagen
                  lschlagen=lschlagen-1
                  Delay 50
                  Flip
               Until lschlagen=15
            EndIf
            
            If lschlagen=19 Then
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lschlagen
                  lschlagen=lschlagen-1
                  Delay 50
                  Flip
               Until lschlagen=17   
            EndIf
            
            If lschlagen=15 Then lschlagen=19
         EndIf
         
         If KeyHit(157) Then                           ; nach links springen (strg)
            Repeat
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, lspringen
               lspringen=lspringen-1
               Delay 40
               Flip
            Until lspringen=68
               
            For i=1 To 5
               Cls
               grafik()
               
               y=y-15
               x=x-15
               DrawImage ltemplate, x, y, 67
               Delay 40
               Flip
            Next
               
            Cls
            grafik()
            
            DrawImage ltemplate, x, y, 62
            Delay 40
               
            For i=1 To 5
               Cls
               grafik()
               
               y=y+15
               x=x-15
               DrawImage ltemplate, x, y, 67
               Delay 30
               Flip
            Next
               
            Repeat
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, lspringen
               lspringen=lspringen+1
               Flip
            Until lspringen=69
         EndIf      
      Until Not KeyDown(75)      
   EndIf
   
   If KeyHit(157) Then                                 ; linke strg
      Select richtung
      Case 1
         Repeat
            Cls
            grafik()
            
            DrawImage rtemplate, x, y, rspringen
            rspringen=rspringen+1
            Delay 50
            Flip
         Until rspringen=61
         
         For i=1 To 5
            Cls
            grafik()
            
            y=y-15
            DrawImage rtemplate, x, y, 62
            Delay 40
            Flip
         Next
         
         Cls
         grafik()
         
         DrawImage rtemplate, x, y, 62
         Delay 40
         
         
         For i=1 To 5
            Cls
            grafik()
            
            y=y+15
            DrawImage rtemplate, x, y, 62
            Delay 30
            Flip
         Next
         
         Repeat
            Cls
            grafik()
            
            DrawImage rtemplate, x, y, rspringen
            rspringen=rspringen-1
            Flip
         Until rspringen=60
      
      Case 2
         Repeat
            Cls
            grafik()
            
            DrawImage ltemplate, x, y, lspringen
            lspringen=lspringen-1
            Delay 50
            Flip
         Until lspringen=68
         
         For i=1 To 5
            Cls
            grafik()
            
            y=y-15
            DrawImage ltemplate, x, y, 67
            Delay 40
            Flip
         Next
         
         Cls
         grafik()
         
         DrawImage ltemplate, x, y, 67
         Delay 40
         
         For i=1 To 5
            Cls
            grafik()
            
            y=y+15
            DrawImage ltemplate, x, y, 67
            Delay 30
            Flip
         Next
         
         Repeat
            Cls
            grafik()
            
            DrawImage ltemplate, x, y, lspringen
            lspringen=lspringen+1
            Flip
         Until lspringen=69
      End Select      
   EndIf
      
   If KeyHit(28) Then                                       ; enter
      Select richtung
      Case 1
         If rschlagen=12 Then
            Repeat
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, rschlagen
               rschlagen=rschlagen+1
               Delay 50
               Flip
            Until rschlagen=14
         EndIf
         
         If rschlagen=10 Then
            Repeat
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, rschlagen
               rschlagen=rschlagen+1
               Delay 50
               Flip
            Until rschlagen=12
         EndIf
         
         If rschlagen=14 Then rschlagen=10
         
      Case 2
         If lschlagen=17 Then
            Repeat
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, lschlagen
               lschlagen=lschlagen-1
               Delay 50
               Flip
            Until lschlagen=15
         EndIf
         
         If lschlagen=19 Then
            Repeat
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, lschlagen
               lschlagen=lschlagen-1
               Delay 50
               Flip
            Until lschlagen=17   
         EndIf
         
         If lschlagen=15 Then lschlagen=19
      End Select
   EndIf
   
   If KeyHit(1) Then End
   
   FlushKeys
   Flip
;Forever


End Function



Function player2()

;richtung=2
;rstehen=0
;rlaufen=4
;irlaufen=1
;rspringen=60
;rschlagen=12
;lstehen=9
;llaufen=5
;illaufen=-1
;lspringen=69
;lschlagen=17
;x=750
;y=400
;iy=3
   
;rtemplate=LoadAnimImage("grafik\template-rechts.bmp", 80, 80, 0, 70)
;ltemplate=LoadAnimImage("grafik\template-links.bmp", 80, 80, 0, 70)


;Repeat
   ClsColor 0, 0, 0
   Cls
   grafik()
   
   Select richtung
   Case 1
      DrawImage rtemplate, x, y, rstehen
      rstehen=rstehen+1
      If rstehen>3 Then rstehen=0
            
   Case 2
      DrawImage ltemplate, x, y, lstehen
      lstehen=lstehen-1
      If lstehen<6 Then lstehen=9
   End Select
   
   Delay 70
   
   If KeyDown(17) Then                              ; nach oben
      Repeat
         Cls
         grafik()
         
         If y<290 Then y=y
         If y>290 Then y=y-3
               
         Select richtung
         Case 1
            DrawImage rtemplate, x, y, rlaufen
            rlaufen=rlaufen+irlaufen
            If rlaufen=7 Then irlaufen=-1
            If rlaufen=4 Then irlaufen=1
            
            If KeyDown(32) Then                              ; schräg nach rechts
               Repeat                                    ; und nach oben
                  Cls
                  grafik()
                  
                  x=x+7
                  If y<290 Then y=y
                  If y>290 Then y=y-3

                  DrawImage rtemplate, x, y, rlaufen
                  Delay 50
                  
                  rlaufen=rlaufen+irlaufen
                  If rlaufen=7 Then irlaufen=-1
                  If rlaufen=4 Then irlaufen=1
                  
                  richtung=1
                  
                  Flip
               Until Not KeyDown(32) And KeyDown(17)
            EndIf
            
            If KeyHit(4) Then                           ; nach oben springen (3)
               Repeat                                 ; rechte Seite
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rspringen
                  rspringen=rspringen+1
                  Delay 40
                  Flip
               Until rspringen=61
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y-15
                  DrawImage rtemplate, x, y, 62
                  Delay 40
                  Flip
               Next
                  
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, 62
               Delay 40
                  
               For i=1 To 2
                  Cls
                  grafik()
                  
                  If y<290 Then y=290
                  If y>290 Then y=y+5
                  
                  DrawImage rtemplate, x, y, 62
                  Delay 30
                  Flip
               Next
                  
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rspringen
                  rspringen=rspringen-1
                  Flip
               Until rspringen=60
            EndIf
            
         Case 2
            DrawImage ltemplate, x, y, llaufen
            llaufen=llaufen+illaufen
            If llaufen=2 Then illaufen=1
            If llaufen=5 Then illaufen=-1
            
            If KeyDown(30) Then                              ; schrähg nach links
               Repeat                                    ; und nach oben
                  Cls
                  grafik()
                  
                  x=x-7
                  If y<290 Then y=y
                  If y>290 Then y=y-3

                  
                  DrawImage ltemplate, x, y, llaufen
                  Delay 50
                  
                  llaufen=llaufen+illaufen
                  If llaufen=2 Then illaufen=1
                  If llaufen=5 Then illaufen=-1
                  
                  richtung=2
            
                  Flip
               Until Not KeyDown(30) And KeyDown(17)
            EndIf
            
            If KeyHit(4) Then                           ; nach oben springen (3)
               Repeat                                 ; linke Seite
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lspringen
                  lspringen=lspringen-1
                  Delay 40
                  Flip
               Until lspringen=68
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y-15
                  DrawImage ltemplate, x, y, 67
                  Delay 40
                  Flip
               Next
                  
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, 62
               Delay 40
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y+5
                  DrawImage ltemplate, x, y, 67
                  Delay 30
                  Flip
               Next
                  
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lspringen
                  lspringen=lspringen+1
                  Flip
               Until lspringen=69
            EndIf
         End Select
         
         Delay 50
         
         Flip
      Until Not KeyDown(17)
   EndIf
   
   If KeyDown(31) Then                              ; nach unten
      Repeat
         Cls
         grafik()
         
         If y>500 Then y=y
         If y<500 Then y=y+3
         
         Select richtung
         Case 1
            DrawImage rtemplate, x, y, rlaufen
            rlaufen=rlaufen+irlaufen
            If rlaufen=7 Then irlaufen=-1
            If rlaufen=4 Then irlaufen=1
            
            If KeyDown(32) Then                              ; schräg nach rechts
               Repeat                                    ; und nach unten
                  Cls
                  grafik()
                  
                  x=x+7
                  If y>500 Then y=y
                  If y<500 Then y=y+3
                  
                  DrawImage rtemplate, x, y, rlaufen
                  Delay 50
                  
                  rlaufen=rlaufen+irlaufen
                  If rlaufen=7 Then irlaufen=-1
                  If rlaufen=4 Then irlaufen=1
                  
                  richtung=1
            
                  Flip
               Until Not KeyDown(32) And KeyDown(31)
            EndIf

            
            If KeyHit(4) Then                           ; nach unten springen (3)
               Repeat                                 ; rechte Seite
                  Cls
                  grafik()                  
                  
                  DrawImage rtemplate, x, y, rspringen
                  rspringen=rspringen+1
                  Delay 40
                  Flip
               Until rspringen=61
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y-15
                  DrawImage rtemplate, x, y, 62
                  Delay 40
                  Flip
               Next
                  
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, 62
               Delay 40
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y+25
                  DrawImage rtemplate, x, y, 62
                  Delay 30
                  Flip
               Next
                  
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rspringen
                  rspringen=rspringen-1
                  Flip
               Until rspringen=60
            EndIf
            
         Case 2
            DrawImage ltemplate, x, y, llaufen
            llaufen=llaufen+illaufen
            If llaufen=2 Then illaufen=1
            If llaufen=5 Then illaufen=-1
            
            If KeyDown(30) Then                              ; schrähg nach links
               Repeat                                    ; und nach unten
                  Cls
                  grafik()
                  
                  x=x-7
                  If y>500 Then y=y
                  If y<500 Then y=y+3
                                 
                  DrawImage ltemplate, x, y, llaufen
                  Delay 50
                  
                  llaufen=llaufen+illaufen
                  If llaufen=2 Then illaufen=1
                  If llaufen=5 Then illaufen=-1
                  
                  richtung=2
            
                  Flip
               Until Not KeyDown(30) And KeyDown(31)
            EndIf

            
            If KeyHit(4) Then                           ; nach unten springen (3)
               Repeat                                 ; linke Seite
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lspringen
                  lspringen=lspringen-1
                  Delay 40
                  Flip
               Until lspringen=68
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y-15
                  DrawImage ltemplate, x, y, 67
                  Delay 40
                  Flip
               Next
                  
               Cls
               DrawImage ltemplate, x, y, 62
               Delay 40
                  
               For i=1 To 5
                  Cls
                  grafik()
                  
                  y=y+25
                  DrawImage ltemplate, x, y, 67
                  Delay 30
                  Flip
               Next
                  
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lspringen
                  lspringen=lspringen+1
                  Flip
               Until lspringen=69
            EndIf
         End Select
         
         Delay 50
   
         Flip
      Until Not KeyDown(31)
   EndIf

   
   If KeyDown(32) Then                              ; nach rechts
      Repeat
         Cls
         grafik()
         
         x=x+10
         If x>800 Then x=0
         
         DrawImage rtemplate, x, y, rlaufen
         Delay 50
         
         rlaufen=rlaufen+irlaufen
         If rlaufen=7 Then irlaufen=-1
         If rlaufen=4 Then irlaufen=1
         
         richtung=1
   
         Flip
         
         If KeyHit(2) Then                                       ; erst laufen und
            If rschlagen=12 Then                                 ; dann 1
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rschlagen
                  rschlagen=rschlagen+1
                  Delay 50
                  Flip
               Until rschlagen=14
            EndIf
            
            If rschlagen=10 Then
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage rtemplate, x, y, rschlagen
                  rschlagen=rschlagen+1
                  Delay 50
                  Flip
               Until rschlagen=12
            EndIf
            
            If rschlagen=14 Then rschlagen=10
         EndIf
         
         If KeyHit(4) Then                           ; nach rechts springen (3)
            Repeat
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, rspringen
               rspringen=rspringen+1
               Delay 40
               Flip
            Until rspringen=61
               
            For i=1 To 5
               Cls
               grafik()
               
               y=y-15
               x=x+15
               DrawImage rtemplate, x, y, 62
               Delay 40
               Flip
            Next
               
            Cls
            grafik()
            
            DrawImage rtemplate, x, y, 62
            Delay 40
               
            For i=1 To 5
               Cls
               grafik()
               
               y=y+15
               x=x+15
               DrawImage rtemplate, x, y, 62
               Delay 30
               Flip
            Next
               
            Repeat
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, rspringen
               rspringen=rspringen-1
               Flip
            Until rspringen=60
         EndIf
      Until Not KeyDown(32)
   EndIf
   
   If KeyDown(30) Then                              ; nach links
      Repeat
         Cls
         grafik()
         
         x=x-10
         If x<0 Then x=800
         
         DrawImage ltemplate, x, y, llaufen
         Delay 50
         
         llaufen=llaufen+illaufen
         If llaufen=2 Then illaufen=1
         If llaufen=5 Then illaufen=-1
         
         richtung=2
   
         Flip
         
         If KeyHit(2) Then                                 ;erst laufen und dann 1
            If lschlagen=17 Then
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lschlagen
                  lschlagen=lschlagen-1
                  Delay 50
                  Flip
               Until lschlagen=15
            EndIf
            
            If lschlagen=19 Then
               Repeat
                  Cls
                  grafik()
                  
                  DrawImage ltemplate, x, y, lschlagen
                  lschlagen=lschlagen-1
                  Delay 50
                  Flip
               Until lschlagen=17   
            EndIf
            
            If lschlagen=15 Then lschlagen=19
         EndIf
         
         If KeyHit(4) Then                           ; nach links springen (3)
            Repeat
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, lspringen
               lspringen=lspringen-1
               Delay 40
               Flip
            Until lspringen=68
               
            For i=1 To 5
               Cls
               grafik()
               
               y=y-15
               x=x-15
               DrawImage ltemplate, x, y, 67
               Delay 40
               Flip
            Next
               
            Cls
            grafik()
            
            DrawImage ltemplate, x, y, 62
            Delay 40
               
            For i=1 To 5
               Cls
               grafik()
               
               y=y+15
               x=x-15
               DrawImage ltemplate, x, y, 67
               Delay 30
               Flip
            Next
               
            Repeat
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, lspringen
               lspringen=lspringen+1
               Flip
            Until lspringen=69
         EndIf      
      Until Not KeyDown(30)      
   EndIf
   
   If KeyHit(4) Then                                 ; 3
      Select richtung
      Case 1
         Repeat
            Cls
            grafik()
            
            DrawImage rtemplate, x, y, rspringen
            rspringen=rspringen+1
            Delay 50
            Flip
         Until rspringen=61
         
         For i=1 To 5
            Cls
            grafik()
            
            y=y-15
            DrawImage rtemplate, x, y, 62
            Delay 40
            Flip
         Next
         
         Cls
         grafik()
         
         DrawImage rtemplate, x, y, 62
         Delay 40
         
         
         For i=1 To 5
            Cls
            grafik()
            
            y=y+15
            DrawImage rtemplate, x, y, 62
            Delay 30
            Flip
         Next
         
         Repeat
            Cls
            grafik()
            
            DrawImage rtemplate, x, y, rspringen
            rspringen=rspringen-1
            Flip
         Until rspringen=60
      
      Case 2
         Repeat
            Cls
            grafik()
            
            DrawImage ltemplate, x, y, lspringen
            lspringen=lspringen-1
            Delay 50
            Flip
         Until lspringen=68
         
         For i=1 To 5
            Cls
            grafik()
            
            y=y-15
            DrawImage ltemplate, x, y, 67
            Delay 40
            Flip
         Next
         
         Cls
         grafik()
         
         DrawImage ltemplate, x, y, 67
         Delay 40
         
         For i=1 To 5
            Cls
            grafik()
            
            y=y+15
            DrawImage ltemplate, x, y, 67
            Delay 30
            Flip
         Next
         
         Repeat
            Cls
            grafik()
            
            DrawImage ltemplate, x, y, lspringen
            lspringen=lspringen+1
            Flip
         Until lspringen=69
      End Select      
   EndIf
      
   If KeyHit(2) Then                                       ; 1
      Select richtung
      Case 1
         If rschlagen=12 Then
            Repeat
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, rschlagen
               rschlagen=rschlagen+1
               Delay 50
               Flip
            Until rschlagen=14
         EndIf
         
         If rschlagen=10 Then
            Repeat
               Cls
               grafik()
               
               DrawImage rtemplate, x, y, rschlagen
               rschlagen=rschlagen+1
               Delay 50
               Flip
            Until rschlagen=12
         EndIf
         
         If rschlagen=14 Then rschlagen=10
         
      Case 2
         If lschlagen=17 Then
            Repeat
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, lschlagen
               lschlagen=lschlagen-1
               Delay 50
               Flip
            Until lschlagen=15
         EndIf
         
         If lschlagen=19 Then
            Repeat
               Cls
               grafik()
               
               DrawImage ltemplate, x, y, lschlagen
               lschlagen=lschlagen-1
               Delay 50
               Flip
            Until lschlagen=17   
         EndIf
         
         If lschlagen=15 Then lschlagen=19
      End Select
   EndIf
   
   If KeyHit(1) Then End
   
   FlushKeys
   Flip
Forever


End Function
Der Tod ist sicher, das Leben nicht!!

Paul

BeitragDo, Nov 25, 2004 18:53
Antworten mit Zitat
Benutzer-Profile anzeigen
du bist ja auch selten lustig... Rolling Eyes

Paul
Stratocaster black - Roland MicroCube
User posted image
Girgl-World, wer's nich kennt, is' blöd!
 

getlose

BeitragDo, Nov 25, 2004 18:58
Antworten mit Zitat
Benutzer-Profile anzeigen
hätte ich mal bloß nix gesagt Neutral

soli

BeitragDo, Nov 25, 2004 19:53
Antworten mit Zitat
Benutzer-Profile anzeigen
@getlose
da musst du jetzt durch.
Laughing

@wuenschie
schmeiss mal die delay aus dem Code
die sind Mist.
Und den Rest lädst du am besten mal
mit Graphiken hoch, so dass man es
laufen lassen kann.
So auf theoretischer Ebene ist es mir
und wohl auch den anderen zuviel.
solitaire

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragDo, Nov 25, 2004 21:24
Antworten mit Zitat
Benutzer-Profile anzeigen
ja, die Delay weg....
und diese Bilder global laden am anfang und nicht in der Function
Code: [AUSKLAPPEN]
rtemplate=LoadAnimImage("grafik\template-rechts.bmp", 80, 80, 0, 70)
ltemplate=LoadAnimImage("grafik\template-links.bmp", 80, 80, 0, 70)

oder mit freeimage in der function löschen bevor es ins hauptmenue geht


Versuch das mal....
[BB2D | BB3D | BB+]

wuenschie

BeitragSa, Nov 27, 2004 13:08
Antworten mit Zitat
Benutzer-Profile anzeigen
aber wenn ich die delay weglasse dann läuft es doch zu schnell. mit den delays habe ich erreicht das die figuren im richtigem tempo laufen, bloß irgendwann ist alles zu langsam
Der Tod ist sicher, das Leben nicht!!
 

Apocalyptic

BeitragSa, Nov 27, 2004 13:11
Antworten mit Zitat
Benutzer-Profile anzeigen
lol... such mal im Forum nach Millisecs() und Timer
Suum cuique

[ www.ffs-net.de.vu ] [ Raycaster ]

wuenschie

BeitragSa, Nov 27, 2004 19:58
Antworten mit Zitat
Benutzer-Profile anzeigen
so ich habe jetzt im forum nach millisec() und createtimer geschaut und habe es gefunden. ich hab mich dazu entschlossen createtimer zu nehmen. also habe ich vor der hauptschleife timer=createtimer geschrieben und dann in der funktion spielstarten vor flip waittimer(timer)!!!
dann kommt aber eine fehlermeldung und es passiert nichts.
kann mir bitte jemand sagen was daran falsch ist???

danke markus
Der Tod ist sicher, das Leben nicht!!
 

hot-bit

Gast

BeitragSa, Nov 27, 2004 20:23
Antworten mit Zitat
Hoi.

Ich versteh das nicht.

Da kommt wer, schreibt ein Prog mit x- Zeilen Code, und hat von nichts eine Ahnung.

Ist mir zu hoch !

Toni
 

Apocalyptic

BeitragSa, Nov 27, 2004 21:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Global?

Ansonsten rate ich dir von Waittimer ab... Im Forum sollten sich genügend Gründe dagegen finden lassen.

@ hot-bit: da ist was dran Rolling Eyes

PS: Beim "Überscrollen" deines Codes (btw schon mal was von EDIT gehört?) ist mir dein komisches Schleifensystem aufgefallen. Eins kann ich dir noch sagen: Damit wirst du nicht weit kommen...
Suum cuique

[ www.ffs-net.de.vu ] [ Raycaster ]

wuenschie

BeitragSo, Nov 28, 2004 10:05
Antworten mit Zitat
Benutzer-Profile anzeigen
ich hab schon gemerkt das es nicht so ganz hinhaut. deswegen habe ich noch mal von vorne angefangen. kann mir jetzt trotzdem jemand mal erklären warum das mit waittimer nicht funzt????

markus
Der Tod ist sicher, das Leben nicht!!

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group