BB: Grafik bewegt sich zu schnell (Programmieren)

BB: Grafik bewegt sich zu schnell (Programmieren)

Hi,

also ich mach so ein kleines Retrogame in der Auflösung 320x240. Jetzt lasse ich eine Grafik ins Bild rollen. Dazu nehm ich ne Repeat-Schleife und lasse das Bild so lange nach unten scrollen, bis es auf 26 (y) steht. Das funzt auch, nur geht das zu schnell!

Wie kann ich das alles langsamer ablaufen lassen?
DELAY Millisekunden

Experimentiere etwas mit den Milliseks und um dein Bild der gewünschten geschwindigkeit runterfahren zu lassen.

Es würde warscheinlich auch gehen wenn du das "rollen" in kleineren Schritten machst. z.B. in 0.01er Schritten ;)
Üblicherweise verwendet man einen Timer im Spiel, der die Zahl der Durchläufe je Sekunde festlegt.

timer = CreateTimer(50) ; 50 Frames je Sekunde
Repeat
; Spielschleife
WaitTimer timer
Flip
Until KeyHit(1)
Ok, danke erstmal, das funzt.

Also ich habe 2 Schleifen. Erst eine Menüschleife:

While Not KeyHit(28)
; Menüschleife
Wend

Und eine Spielschleife:

While Not KeyHit(1)
; Spielschleife
Wend

Aber wenn ich in der Menüschleife Return drücke (28) hält das ganze Spiel an und es passiert nichts mehr.

Mit Repeat...Until... gehts auch nicht.

MfG,
PCM
Dieser Code funktioniert ja:

Repeat Until KeyHit(28)

Also liegt der Fehler woanders. :)
Also liegts doch an der While-Schleife?

Zwischen den beiden Schleifen habe ich glaub ich noch ein Cls reingesetzt...

Oder soll ich das bit Gosub machen?
Also ich habe folgenden Code. Ist ein bisschen unübersichtlich und schlecht geproggt, aber ich bin halt noch ein Anfänger ^^

Graphics 320,240,16,2
SetBuffer BackBuffer()
y_logo = -56
x_text = -300

; Alle Bilder laden
splashbg = LoadImage("pics\splashbg.bmp") ; Splash-Hintergrund
splashtext = LoadImage("pics\splashtext.bmp") ; Virus-Catcher-Logo
presskey = LoadImage("pics\presskey.bmp") ; Press any key-Text

; Tranzparenz festlegen
MaskImage splashtext, 255, 0, 255
MaskImage presskey, 255, 0, 255

;Menüschleife
Repeat
Cls

;Logo einblenden
If y_logo <= 26 Then y_logo = y_logo + 1

DrawImage splashbg, -5, -5
DrawImage splashtext, 26, y_logo%

;Logo einblenden <Ende>

;Schrift einblenden
If x_text <= 26 Then x_text = x_text + 1

If y_logo >= 26 Then DrawImage presskey, x_text, 150
;Schrift einblenden <Ende>

Color 0, 128, 0
Text 5, 220, "by Sascha Gehlich"

If y_logo < 26 Then Delay 25
If x_text < 26 Then Delay 10
If x_text = 26 Then Exit

Flip
Until KeyHit(28)
;Menüschleife <Ende>

;Spielschleife
Repeat
Cls
Text 10, 10, "Spiel"
Until KeyHit(1)
;Spielschleife <Ende>
End
In der Spielschleife fehlt Flip, daher wird der Text "Spiel" nicht angezeigt.
Habs schon im Blitzforum erfahren, trotzdem Danke ;D
Logge dich ein um einen Beitrag zu schreiben.