Introscreen hängt sich auf

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

MrColorkiller

Betreff: Introscreen hängt sich auf

BeitragMo, Dez 03, 2012 21:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo zusammen
Ich habe da ein kleines Problem: Ich habe für mein Spiel einen Introscreen programmiert. In diesem Introscreen bewegen sich zwei Bilder. Jetzt hängt sich das Programm nach 16 Frames einfach auf!
Wüsste gerne warum
BlitzBasic: [AUSKLAPPEN]
Global img_rot = LoadAnimImage("rotintroscreen.bmp",112,96,0,4)
Global img_blau = LoadAnimImage("blauintroscreen.bmp",112,96,0,4)


BlitzBasic: [AUSKLAPPEN]
.introscreen 

frame = 0

Function introscreen()

Repeat


SetBuffer BackBuffer()

Cls

If KeyHit(1) Then End

DrawImage img_rot,512,192,frame
DrawImage img_blau,512,586,frame


frame = frame + 1
If frame = 4 Then frame = 0

WaitTimer CreateTimer(0.5)


Flip

Until KeyHit(57)
End Function


introscreen()


Danch kommt der mainloop

Jetzt schon vielen dank für die Hilfe

BladeRunner

Moderator

BeitragMo, Dez 03, 2012 21:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Mehrerlei:
-Du hast sowohl ne Sprungmarke introcreen als auch ne Function die so heisst.
- Du Definierst bei jedem Durchlauf deiner Introscreen-Function nen neuen Timer. Das wird dein Programm auch zum Absturz bringen.
- Du setzt immer wieder neu den Backbuffer. Einmal ausserhalb der Schleife reicht.
- Du übermalst dein erstes Bild sofort mit dem zweiten.
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

Xeres

Moderator

BeitragMo, Dez 03, 2012 21:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
.introscreen
Das schaut nach einer GoTo Sprungmarke aus und sowas sollte man nicht verwenden...
Code: [AUSKLAPPEN]
WaitTimer CreateTimer(0.5)
Das Problem ist: Du erstellst immer neue Timer. Schau dir an, wie man mit WaitTimer und CreateTimer umgehen sollte.
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)
 

MrColorkiller

BeitragMo, Dez 03, 2012 22:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Ok alles klar. Jetzt geht es. Folgendes habe ich geschrieben:
BlitzBasic: [AUSKLAPPEN]
Global img_rot = LoadAnimImage("rotintroscreen.bmp",112,96,0,4)
Global img_blau = LoadAnimImage("blauintroscreen.bmp",112,96,0,4)
Global IStimer = CreateTimer (0.5)
frame = 0

Function introscreen()

Repeat




Cls

If KeyHit(1) Then End

DrawImage img_n,512,404
Text 512,384,"Maturarbeit von Lukas Käch",1,1
Text 512,404,"Drücke Leertaste um zu beginnen",1,1
DrawImage img_rot,512,192,frame
DrawImage img_blau,512,586,frame


frame = frame + 1
If frame = 4 Then frame = 0

WaitTimer (IStimer)


Flip

Until KeyHit(57)
End Function


introscreen()

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group