Spiel soll flüssiger laufen

Übersicht BlitzBasic Beginners-Corner

Gehe zu Seite Zurück  1, 2

Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.

 

petecoolbelab

BeitragDo, Apr 10, 2008 18:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Stimmt da hast du recht. Kann man mit BB eigentlich so programmieren, dass wenn ich KeyDown(203) habe das Bild Spiegelt(sodass die figur dann zurück geht) ?
(Das zurückgehen habe ich schon programmiert, brauche nur noch das Bild spiegeln)

The Shark

BeitragDo, Apr 10, 2008 19:12
Antworten mit Zitat
Benutzer-Profile anzeigen
ql:SCALEIMAGE Bild, Breite#, Höhe#

bei breite negativen wert eingeben
der bezugspunkt wird mitgespiegelt !

THE SHARK
 

petecoolbelab

BeitragDo, Apr 10, 2008 21:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke, aber habe das Problem so gelöst, dass ich von frame 6 bis 10 das ganze nur umgekehrt habe.
Sieht jetzt so aus:

Code: [AUSKLAPPEN]

DrawImage Map1, 1, 1; Hintergrund zeichnen
   
   DrawImage Man, Xpos, 360, frame; Männchen Zeichnen
   
   
   If KeyDown(205) And zeit + 100 < MilliSecs() Then ; Figur geht nach vorne und wenn frame=5 dann frame=1
      zeit = MilliSecs()
   frame = frame + 1
   If frame = 5 Then frame = 1
   EndIf
   
   If KeyDown(203) And zeit + 100 < MilliSecs() Then ; wenn <- dann figur geht
      zeit = MilliSecs()
   frame = frame + 1
   If frame = 5 Then frame = 1
   EndIf
   
   
   If KeyDown (203) Then; wenn rückwerts dann frame = 6
   frame = 6
   EndIf
   
   
   If KeyDown (203 ) And frame = 10 Then; wenn frame = 10 then frame =6
   frame = 6
   EndIf
   
   If KeyDown(205) And frame = 10 Then; wenn-> dann frame wieder 1 - 5
   frame = 1
   EndIf
      
      
   If KeyDown(203) Then; wenn <- dann Figur nach hinten
   Xpos = Xpos - 2
   EndIf
         
   If KeyDown(205) Then; wenn -> dann Figur nach vorne
   Xpos = Xpos + 2
   EndIf
   


Ist natürlich nicht der ganze Code.

Habe nun ein kleines Video gedreht, welches zeigt, was mein Problem ist. Hier der Link:

http://petevideo.blogspot.com/
 

petecoolbelab

BeitragFr, Apr 11, 2008 17:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Verdesst das Video, aber mein Problem ist ähnlich. Wenn meine Figur zurück geht, dann ruckelt sie so komisch. Wie kann ich das ändern.

Hier mein Code:
Code: [AUSKLAPPEN]

Graphics 640, 480, 16, 3
SetBuffer BackBuffer()

Man = LoadAnimImage ("Man2_Test.png", 80, 80, 0, 10)
MaskImage Man, 255, 255, 255
Map1 = LoadImage ("Map.png")

Repeat
  Cls
   DrawImage Map1, 1, 1; Hintergrund zeichnen
   
   DrawImage Man, Xpos, 360, frame; Männchen Zeichnen
   
   
   If KeyDown(205) And zeit + 100 < MilliSecs() Then ; Figur geht nach vorne und wenn frame=5 dann frame=1
      zeit = MilliSecs()
   frame = frame + 1
   If frame = 5 Then frame = 1
   EndIf
   
   If KeyDown(203) And zeit + 100 < MilliSecs() Then ; wenn <- dann figur geht
      zeit = MilliSecs()
   frame = frame + 1
   If frame = 10 Then frame = 6
   EndIf
   
   If KeyDown(203) Then
   frame = frame + 1
   EndIf
   

   If KeyDown (203 ) And frame = 10 Then; wenn frame = 10 then frame =6
   frame = 6
   EndIf
   
   If KeyDown(205) And frame = 10 Then; wenn-> dann frame wieder 1 - 5
   frame = 1
   EndIf
      
      
   If KeyDown(203) Then; wenn <- dann Figur nach hinten
   Xpos = Xpos - 2
   EndIf
         
   If KeyDown(205) Then; wenn -> dann Figur nach vorne
   Xpos = Xpos + 2
   EndIf
   
   If Xpos > 640 Then
   Xpos = 1
   EndIf
   
   
Flip
Until KeyHit(1)
End
 

DennY

BeitragFr, Apr 11, 2008 17:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,
ich glaube du musst das hier rausnehmen:
Code: [AUSKLAPPEN]
   If KeyDown(203) Then
      frame = frame + 1
   EndIf


Das hast du quasie 2 mal drin, einmal mit dieser Zeitbegrenzung und einmal ohne. Das ohne nimm mal lieber raus.

BladeRunner

Moderator

BeitragFr, Apr 11, 2008 23:30
Antworten mit Zitat
Benutzer-Profile anzeigen
petecoolbelab, ich möchte Dich hiermit ein letztes Mal bitten auf Doppelpostings zu verzichten und statt dessen den Edit-Button zu benutzen.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

petecoolbelab

BeitragSa, Apr 12, 2008 20:21
Antworten mit Zitat
Benutzer-Profile anzeigen
DennY hat Folgendes geschrieben:
Hi,
ich glaube du musst das hier rausnehmen:
Code: [AUSKLAPPEN]
   If KeyDown(203) Then
      frame = frame + 1
   EndIf


Das hast du quasie 2 mal drin, einmal mit dieser Zeitbegrenzung und einmal ohne. Das ohne nimm mal lieber raus.


Ja, danke haste recht.
 

petecoolbelab

BeitragSa, Apr 12, 2008 20:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Okay, hab das mal geschaft. Nun ergibt sich auch schon die nächste Frage:

Gibt es so etwas wie eine Stoppuhr, welche die sekunden ab diesem Zeitpunkt zählt und als Variable speichert.
Ich meine ungefähr so etwas:
Code: [AUSKLAPPEN]

Startet Stoppuhr Variable: XTime

If Xtime =15 Then...

hectic

Sieger des IS Talentwettbewerb 2006

BeitragSa, Apr 12, 2008 21:02
Antworten mit Zitat
Benutzer-Profile anzeigen
ql:MilliSecs() und bitte keine Doppelposts... Benutze den Edit -Button.
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D

BladeRunner

Moderator

BeitragSa, Apr 12, 2008 21:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich hatte dich heute abend gebeten, keine Doppelpostings zu machen.
Da du das nicht beherzigst wird hier geschlossen.
Solltest Du zum selben Thema noch einen Thread eröffnen gibt es eine Verwarnung.

~GESCHLOSSEN~
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Gehe zu Seite Zurück  1, 2

Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group