Probleme

Übersicht BlitzBasic Beginners-Corner

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen

@ndinho

Betreff: Probleme

BeitragMi, März 09, 2005 15:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich hab ein Problem mit einem (Spiel) von mir:


Ích hab eingestellt, dass wenn Eis = 0 ist, dass er dann auf den Bildschirm schreib: Du hast kein Eis mehr, und dann delay 5000 und dann end.


Aber er beendet das Programm schon, wenn Eis = 20 ist WARUM???

Code: [AUSKLAPPEN]
Graphics 640, 480
SetBuffer BackBuffer()

Geld = 100                     
Eis = 100                       
Schlaf = 100

Repeat




Text 10, 10, "Was willst du machen?"
Text 10, 20, "1 - Eis verkaufen"
Text 10, 30, "2 - Schlafen"
Text 10, 40, "3 - Eis kaufen"
Text 10, 50, "4 - Spiel verlassen"


Text 10, 70, "Geld: " + Geld
Text 10, 80, "Schlaf: " + Schlaf
Text 10, 90, "Eis: " + Eis


Locate 10,130
lol = Input("Wähle jetzt: ")

If lol = 1 Then
Geld=geld +10                                         
Eis=Eis -10
Schlaf=Schlaf -10

ElseIf lol = 2 Then
Schlaf=Schlaf +10
ElseIf lol = 3 Then
geld=geld -10
Eis=Eis +10
ElseIf lol = 4
End
EndIf

 


If Schlaf <= 0 Then Print "Du bist gestorben!" : Delay 5000 : End
If Geld <= 0 Then Print "Du bist Pleite!" : Delay 5000 : End
If Eis <= 0 Then Print "Du hast kein Eis mehr!" : Delay 5000 : End




Flip
Cls
Until KeyDown(1)


End
User posted image

Mein PC: AMD 3000+ / 1024 DDR-Ramm 400 / Geforce 6800
Meine Lieblingsspiele: World of Warcraft, Warcraft III, Pro Evolutions Soccer 4, Blitz Basic Smile

Artemis

BeitragMi, März 09, 2005 15:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Bei mir funktioniert alles problemlos!!!

@ndinho

BeitragMi, März 09, 2005 15:39
Antworten mit Zitat
Benutzer-Profile anzeigen
bei mir aber nicht Crying or Very sad
User posted image

Mein PC: AMD 3000+ / 1024 DDR-Ramm 400 / Geforce 6800
Meine Lieblingsspiele: World of Warcraft, Warcraft III, Pro Evolutions Soccer 4, Blitz Basic Smile

Hubsi

BeitragMi, März 09, 2005 15:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Weiß nicht was Du hast? Geht doch?
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...

@ndinho

BeitragMi, März 09, 2005 15:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Vieleicht liegt das an meiner Version, ich hab V1.66
User posted image

Mein PC: AMD 3000+ / 1024 DDR-Ramm 400 / Geforce 6800
Meine Lieblingsspiele: World of Warcraft, Warcraft III, Pro Evolutions Soccer 4, Blitz Basic Smile

Hubsi

BeitragMi, März 09, 2005 15:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Die paar Befehle kann jede Version (ausser bei B+ änderten sich da ein paar Kleinigkeiten, aber das liegt auch nicht in 1.66 vor Very Happy )
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...

@ndinho

BeitragMi, März 09, 2005 15:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich wollte mal ein halbwegs vernünftiges Programm anfangen und nun dieser Fehler!!!! Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad


PS: Habt ihr auch am Anfang den Fehler, dass man nur die Eingabe sieht und erst eine taste drücken muss?
User posted image

Mein PC: AMD 3000+ / 1024 DDR-Ramm 400 / Geforce 6800
Meine Lieblingsspiele: World of Warcraft, Warcraft III, Pro Evolutions Soccer 4, Blitz Basic Smile

Artemis

BeitragMi, März 09, 2005 15:46
Antworten mit Zitat
Benutzer-Profile anzeigen
hab die demo v 1.60

Hubsi

BeitragMi, März 09, 2005 15:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Es handelt sich bei Dir um eien Flipfehler, wenn ich das so lese. Probiers mal im Vollbild, dann gehst du erst mit 10 Eis drauf. Oder setze die Abfrage wieviel Eis man noch hat hinter die Text-befehle und vor das Input, bzw. such dir eine Inputroutine aus dem Codearchiv. Dann wirst du den Fehler sehr schnell selbst entdecken Wink
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...

Sir Dan

BeitragMi, März 09, 2005 15:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
If Schlaf <= 0 Then Print "Du bist gestorben!" : Delay 5000 : End
If Geld <= 0 Then Print "Du bist Pleite!" : Delay 5000 : End
If Eis <= 0 Then Print "Du hast kein Eis mehr!" : Delay 5000 : End

Probiere es mal mit mit If Schlaf < 1 Then...
Ich hatte ein ähnliches Problem mit "<=" hat dann aber Funktioniert. Ich weiß aber nicht wieso. Very Happy
(\_/)
(O.o)
(> <) This is Bunny. Copy Bunny into your signature to help him on his way to world domination.

Spikespine

BeitragMi, März 09, 2005 16:14
Antworten mit Zitat
Benutzer-Profile anzeigen
In diesem Fall ist <1 genau das selbe wie <= 0 .
Bei Fließkommazahlen nicht.
Athlon 64 3700+ | 1024 MB RAM | GeForce 7900 GT | Blitz2D, Blitz3D, BlitzPlus, BlitzMax

stfighter01

BeitragMi, März 09, 2005 16:19
Antworten mit Zitat
Benutzer-Profile anzeigen
also den fehler von Sir Dan schliess ich mal fix aus.
wenn ein compiler nicht mal in der lage ist ein programm zu erstellen, das werte korrekt zu addiert, dann hätte er sicher keine website und nen fanclub Wink

wie hubsi schon sagt liegt das problem beim flippen.
1) input schreibt am frontbuffer rum, und print am eingestellten buffer.
das kann für einen anfänger sehr verwirrend sein.
am besten du lässt doublebuffering überhaupt weg für dieses spiel und
macht am anfang setbuffer frontbuffer()
2) den fehler lass ich dir selbst suchen, ist aber ganz simpler natur Wink


mfg stfighter
Denken hilft!

Alfadur

BeitragMi, März 09, 2005 16:27
Antworten mit Zitat
Benutzer-Profile anzeigen
ist doch easy.
mach dir am anfang mal gedanken um deine struktur und die befehle die du benutzt.

zb hält der input befehle den programmlauf ja an, und da du alles vorher in den backbuffer pinselst und bis input noch nich geflippt hast ist es natürlich nicht da.




das hier solltest du nur lesen wenn du nicht wirklich lernen willst...


machst du flip und die if abfragen vor die input methode, dann funktionierts.
sieht zwar immernoch nicht sehr schön aus der ganze code, aber das schöner zu machen bleibt dir überlassen.
A Cray is the only computer that runs an endless loop in less than four hours.

@ndinho

BeitragMi, März 09, 2005 17:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Jo, jetzt klappt es, ihr seit einfach die besten!!!!! Very Happy
User posted image

Mein PC: AMD 3000+ / 1024 DDR-Ramm 400 / Geforce 6800
Meine Lieblingsspiele: World of Warcraft, Warcraft III, Pro Evolutions Soccer 4, Blitz Basic Smile

Alfadur

BeitragMi, März 09, 2005 17:44
Antworten mit Zitat
Benutzer-Profile anzeigen
hoffentlich hast du auch verstanden WARUM es so funktioniert.
A Cray is the only computer that runs an endless loop in less than four hours.

@ndinho

BeitragMi, März 09, 2005 17:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja, weigentlich schon, ich will jetzt auch noch einen Rundenzähler einbauen, aber das ist ja einfach. Aber eigentlich möchte ich gerne auch noch die Spielzeit in Sekunden angeben... das weiß jetzt nicht genau wie das geht, ich glaub mit Timer oder so, muss ich mal in der OH nachschauen oder ihr sagt es mir^^
User posted image

Mein PC: AMD 3000+ / 1024 DDR-Ramm 400 / Geforce 6800
Meine Lieblingsspiele: World of Warcraft, Warcraft III, Pro Evolutions Soccer 4, Blitz Basic Smile

Hubsi

BeitragMi, März 09, 2005 18:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Stichwort MilliSecs(). Der Rest ist Logik und die OH Very Happy
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...

@ndinho

BeitragMi, März 09, 2005 18:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich hab das Spiel ( wenn man das so nennen darf) mal weiter gemacht, ihr könnt es euch hier ziehen http://aagame.aa.funpic.de/inc...;themeid=0



Erbitte Kritik und Lob (was ich eh nicht bekomme^^)


Übrigens, ist mein erstes Programm!! ETD war von Bltzableiter!
User posted image

Mein PC: AMD 3000+ / 1024 DDR-Ramm 400 / Geforce 6800
Meine Lieblingsspiele: World of Warcraft, Warcraft III, Pro Evolutions Soccer 4, Blitz Basic Smile

@ndinho

BeitragMi, März 09, 2005 18:30
Antworten mit Zitat
Benutzer-Profile anzeigen
keine Kritik oder so??


PS: Das Programm ist 150 Kb groß und ich wollte jetzt kein Screenshot machen. PS: Hab Bilder eingebaut und desahlb hab ich alles in ein rar verzeichnis gepackt
User posted image

Mein PC: AMD 3000+ / 1024 DDR-Ramm 400 / Geforce 6800
Meine Lieblingsspiele: World of Warcraft, Warcraft III, Pro Evolutions Soccer 4, Blitz Basic Smile

Rob_

BeitragMi, März 09, 2005 18:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Wieso so eilig?

Und ich glaube kaum, das jemand sich extra für das "spiel" regestrieren wird, um es runterzuladen.
Wieso benutzt du nicht www.blitz-pasting.de.vu
AMD Athlon 64 3500+ | Infineon 1 GB DDR RAM | nVidia Geforce 7800 GTX

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group