Einkaufen-Funktion

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

gigi

Betreff: Einkaufen-Funktion

BeitragSo, Mai 20, 2007 9:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe eine Einkaufen-Funktion geschrieben die ohne externe Quellen läuft.
Leider klappt da etwas nicht, man kann den Auswahlrahmen nicht verschieben obwohl ich dafür etwas gecodet habe...Hier der Code:Code: [AUSKLAPPEN]
Function Kaufen(ware1$,ware2$,ware3$,ware4$,an)
If an=1 Then
o=240
Rect 100,o,150,35,0
Text 100,250,ware1$
Text 100,280,ware2$
Text 100,310,ware3$
Text 100,340,ware4$
EndIf
If an=1 And KeyDown(208) And o=240 Then
o=270
Delay 500
EndIf
If KeyDown(208) And an=1 And o=270 Then
o=300
Delay 500
EndIf
If KeyDown(208) And an=1 And o=300 Then
o=330
Delay 500
EndIf
If an=1 And KeyDown(200) And o=330 Then
o=300
Delay 500
EndIf
If an=1 And KeyDown(200) And o=310 Then
o=270
Delay 500
EndIf
If an=1 And KeyDown(200) And o=270 Then
o=240
Delay 500
EndIf
End Function
Anfänger Tut von mir:
http://www.blitzforum.de/forum...hp?t=26185
 

ChristianK

BeitragSo, Mai 20, 2007 11:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Rufst du die Kaufen-Funktion in der Schleife immer auf?
Wenn ja, liegt das Problem darin:

Du sagst ja, wenn KeyDown( 208 ) und o=240, soll der Rahmen bewegt werden bzw. o soll auf 270 gesetzt werden. Im nächsten Schleifendurchlauf wird die Funktion wieder aufgerufen und o wird wieder auf 240 gesetzt, daher bleibt der Rahmen immer auf der gleichen Stelle. Wenn du o global machst, funktioniert es einigermaßen.

Deine Methode ist aber ziemlich unflexibel. Du solltest statt der y-Koordinate besser nur einen Index speichern, z.B. so:

Code: [AUSKLAPPEN]
Graphics 800, 600, 32, 2
SetBuffer BackBuffer( )

While Not KeyDown( 1 )

   Cls

   If KeyHit( 200 )
      index = index - 1
      If index < 0 index = 3
   EndIf

   If KeyHit( 208 )
      index = index + 1
      If index > 3 index = 0
   EndIf

   Rect 100, index * 50 + 100, 150, 35, 0

   Flip
   
Wend

End
 

gigi

Betreff: Danke

BeitragMo, Mai 21, 2007 16:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Es hat geklappt, danke!!!Hätte ich eigentlich auch draufkommen können.

P.S.:Man hat in meinem Spiel nun ein Inventar und man kann richtig einkaufen gehen. Very Happy
Anfänger Tut von mir:
http://www.blitzforum.de/forum...hp?t=26185

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group