problem mir function

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

grafe

Betreff: problem mir function

BeitragMi, Nov 12, 2008 22:16
Antworten mit Zitat
Benutzer-Profile anzeigen
hy ich hab ein problem in meinem text adventure:
hier mal den Code: [AUSKLAPPEN]
Function apfelernte()
t0=Input("        =")
Cls


If t0=2 Then
nett=nett-1
abhauen2()
EndIf
If t0=1 Then
gold=gold+1
nett=nett+1
apfelgeben()
EndIf
If t0=>2 Then
apfelernte()
Else
apfelernte()
EndIf
End Function



wen ich eine 1 eintippe komt wider die gleiche function was mach ich falsch??

The_Nici

BeitragMi, Nov 12, 2008 22:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Rücke bitte deinen Code ein. ._.
Code: [AUSKLAPPEN]

If t0=>2 Then

Was soll das darstellen?
Das sollte "If t0 >= 2 Then" heissen.
Achja, 1 ist zufälligerweise kleiner als 2.

MfG

grafe

BeitragMi, Nov 12, 2008 22:23
Antworten mit Zitat
Benutzer-Profile anzeigen
also ich will nicht meine ganze arbeit einfach reinstellen den es ist ein Text adventure

hier den ganzen code von meiner function:Code: [AUSKLAPPEN]
Function appfelernte()
bilder()
Locate 0,200
werte()
Print"        Du machst was die Magd sagt. Du erntest die Äpfel."
Print"        Aber es ist sehr warm. Die Sonne steht weit oben am Himmel."
Print"        Es muss schon Mittag sein, denn du hast grossen Hunger"
Print"        Aber dein Vater gibt dir trotzdem nichts zum essen. Vieleicht verstehst"
Print"        du warum sie dich bestrafen, vieleicht auch nicht. Na ja,"
Print"        ist ja auch egal. Aber so kann es einfach nicht weiter gehen."
Print""
Print"        mit 1. gibst du der Magd die Äpfel und hoffst, dass du etwas Essen bekommst."
Print"        mit 2. gehst du zur Magd, schreist sie grundlos an, isst die Äpfel die du "
Print"               geplückt hast und rennst weg."

t0=Input("        =")
Cls

If t0=1 Then
gold=gold+1
nett=nett+1
apfelgeben()
EndIf

If t0=2 Then
nett=nett-1
abhauen2()

Else
appfelernte()
EndIf
End Function
 

da_poller

BeitragMi, Nov 12, 2008 22:44
Antworten mit Zitat
Benutzer-Profile anzeigen
dir fehlt ein end function?

Xeres

Moderator

BeitragMi, Nov 12, 2008 22:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn du 1 eingibst, wird apfelgeben() ausgeführt - was auch immer du darin machst - und dann geht's in der Funktion weiter, welche sich in jedem Fall wieder selbst aufruft (weil dann t0 <> 2 ist und damit den Else-Block ausführt...)
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)

grafe

BeitragMi, Nov 12, 2008 22:56
Antworten mit Zitat
Benutzer-Profile anzeigen
ah ok danke
aber bei meinen anderen funktionen ist das immer gegangen^^

edit: hier geht es
Code: [AUSKLAPPEN]
t6=Input("        :")
Cls
If t6=1 Then
blick()
EndIf
If t6=2 Then
nett=nett-1
abhauen3()

Else
abhauen2()
EndIf
End Function

BladeRunner

Moderator

BeitragDo, Nov 13, 2008 14:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich schliesse mich the nici an. Rück deinen Code ein. Ich weigere mich Code anzuschauen der so aufgebaut ist.

EDIT:
~VERSCHOBEN~
Dieser Thread passte nicht in das Forum, in dem er ursprünglich gepostet wurde.


Das gehört definitiv ins beginners.
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

Valnar

BeitragDo, Nov 13, 2008 16:01
Antworten mit Zitat
Benutzer-Profile anzeigen
@grafe: bau dein spiel wie folgt auf:
Code: [AUSKLAPPEN]

;Grafik und Variablengedöns, halt alles was das spiel braucht
next_function$ = "start"


repeat
 select next_function$
  case "start" next_function$ = start()
  case "ende" next_function$ = ende()
forever

function start$()
 repeat
  if keyhit(1) then return "ende"
 forever
end function

function ende$()
 end
end function


Hoffe der Kleine Einblick reicht!

grafe

BeitragDo, Nov 13, 2008 18:58
Antworten mit Zitat
Benutzer-Profile anzeigen
ich hab jetzt das problem gelöst ich habe einfach nicht input geschrieben^^
therad kann geschlosen werden

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group