Seite 1 von 2
Spiel
Verfasst: 29.04.2006 12:05
von Svking
Hi, ich habe angefangen ein kleines Spiel zu schreiben
Nur leider habe ich ein kleines Problem. Es Startet sich nur ein Schwarzer Bildschirm und sonst nichts

. kann mir da please einer helfen?
Es soll sich ein Balken (player.bmp) nach links und rechts bewegen und herunterfallendes Eis Aufsammeln.
Hier mein code:
Code: Alles auswählen
InitSprite()
InitKeyboard()
OpenScreen(800,600,32,"eating Sv")
LoadSprite(0,"data\pics\background.bmp")
LoadSprite(1,"data\pics\player.bmp")
LoadSprite(2,"data\pics\icecream.bmp")
player_x = 363
ice_x = 0
ice_y = 0
If ice_y > 600
ice_y = 0
ice_x = Random(640-20)
EndIf
Repeat
ice_y - 3
ForEver
Repeat
ExamineKeyboard()
ClearScreen(0,0,0)
If KeyboardPushed(#PB_Key_Left)
player_x - 5
If player_x < 0
player_x = 0
EndIf
EndIf
If KeyboardPushed(#PB_Key_Right)
player_x + 5
If player_x > 700
player_x = 700
EndIf
EndIf
DisplaySprite(0,0,0)
DisplayTransparentSprite(1,player_x,559)
DisplayTransparentSprite(2,ice_x,ice_y)
FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape)
Verfasst: 29.04.2006 12:08
von Macros
Hier
Hängt sich dein Programm auf, für immer.
Verfasst: 29.04.2006 12:17
von Svking
ah danke x) aber wie mach ich das dann , dass das bitmap immer nach unten fällt?
Verfasst: 29.04.2006 12:21
von Macros
Code: Alles auswählen
InitSprite()
InitKeyboard()
OpenScreen(800,600,32,"eating Sv")
LoadSprite(0,"data\pics\background.bmp")
LoadSprite(1,"data\pics\player.bmp")
LoadSprite(2,"data\pics\icecream.bmp")
player_x = 363
ice_x = 0
ice_y = 0
Repeat
ice_y + 3
If ice_y > 600
ice_y = 0
ice_x = Random(640-20)
EndIf
ExamineKeyboard()
ClearScreen(0,0,0)
If KeyboardPushed(#PB_Key_Left)
player_x - 5
If player_x < 0
player_x = 0
EndIf
EndIf
If KeyboardPushed(#PB_Key_Right)
player_x + 5
If player_x > 700
player_x = 700
EndIf
EndIf
DisplaySprite(0,0,0)
DisplayTransparentSprite(1,player_x,559)
DisplayTransparentSprite(2,ice_x,ice_y)
FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape)
Verfasst: 29.04.2006 12:30
von Svking
das stürzt bei mir auch ab ^^
Edit: Ah ne hatte was falsch eingegeben funzt perfekt

big THX
Eine Frage hätt ich aber noch^^:
ich habe den code jetzt so:
Code: Alles auswählen
InitSprite()
InitKeyboard()
InitMovie()
OpenScreen(800,600,32,"eating Sv")
LoadSprite(1,"data\pics\player.bmp")
LoadSprite(2,"data\pics\icecream.bmp")
LoadSprite(3,"data\pics\bread.bmp")
LoadMovie(1,"data\1.wav")
player_x = 363
ice_x = 0
ice_y = 0
bonusA = 0
bonus_x = 0
bonus_y = 0
punkte = 0
speed = 3
Repeat
ice_y + speed
If ice_y > 600
ice_y = 0
ice_x = Random(770-20)
EndIf
ExamineKeyboard()
ClearScreen(0,0,0)
StartDrawing(ScreenOutput())
DrawText("punkte")
StopDrawing()
If Punkte = 100
speed = 5
EndIf
If Punkte = 300
speed = 7
EndIf
If Punkte = 600
speed = 9
EndIf
If SpriteCollision(1,player_x,559,2,ice_x,ice_y) = 1
punkte + 10
PlayMovie(1,0)
ice_y = 0
ice_x = Random(640-20)
EndIf
If KeyboardPushed(#PB_Key_Left)
player_x - 5
If player_x < 0
player_x = 0
EndIf
EndIf
If KeyboardPushed(#PB_Key_Right)
player_x + 5
If player_x > 700
player_x = 700
EndIf
EndIf
If KeyboardPushed(#PB_Key_P)
MessageRequester("Punkte",punkte$,0)
EndIf
DisplayTransparentSprite(1,player_x,559)
DisplayTransparentSprite(2,ice_x,ice_y)
FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape)
Wie bekomme ich jetzt bei dieser Stelle:
Code: Alles auswählen
StartDrawing(ScreenOutput())
DrawText("punkte")
StopDrawing()
da wo jetzt punkte steht die Anzahl der Punkte hin? also, dass dann oben links am Bildschirmrand die Punkte stehen.
Die Punkte werden ja schon gezählt oben
punkte = 0
Verfasst: 29.04.2006 19:23
von coder
Probiers mal mit:
Code: Alles auswählen
StartDrawing(ScreenOutput())
DrawingFont(FontID())
Locate(600-TextLength("Punkte: "+Str(punkte)), 10)
DrawText("Punkte: "+Str(punkte))
StopDrawing()
Bei PB 3.94 müsste das klappen.
Verfasst: 29.04.2006 19:25
von Svking
hm bei mir sagt er: There is no current Font.
bei der Zeile DrawingFont(Font ID())
Aber wenn ich die Zeile wegnehme gehts, thx

Verfasst: 29.04.2006 19:43
von Marvin
> There is no current font
Ein bisschen Englisch hilft weiter, du hast doch gar keine Font geladen, welche soll dann auch zum Zeichnen benutzt werden...

Verfasst: 30.04.2006 15:19
von Svking
hm also bis jetzt ises nen ganz cooles game x)
weis nur nich, wie ich die punkte in nen MessageRequester bekomme.
Ich habs so probiert:
will aber nich.
Wie geht das den?
Sv
Verfasst: 30.04.2006 15:24
von Macros
Fast richtig, du hast nur die Überschrift angegeben