Hey liebe Leute, hab folgendes Problem:
SETCURRENTDIR("Media") // go to media files
GLOBAL stage = GENSPRITE(); LOADSPRITE "stage.png", stage
GLOBAL l1stage = GENSPRITE()
GLOBAL l2stage = GENSPRITE()
WHILE TRUE
test(2)
DRAWSPRITE l1stage,100,100
DRAWSPRITE l2stage,300,300
SHOWSCREEN
WEND
FUNCTION test: value
LOCAL dummy$
IF value = 1
dummy$ = "l1"
ELSEIF value = 2
dummy$ = "l2"
ENDIF
dummy$+stage = stage
ENDFUNCTION
der fehler ist die letzte Zeile in der Funktion. Hab schon einiges ausprobiert, auch mit "" bei beiden Variablen aber leider ohne Erfolg. Also wenn ich die Funktion mit 1 aufrufe, soll er l1stage = stage machen und ansonsten eben l2stage = stage, damit das entsprechende Bild zugewiesen wird
Hallo, Willkommen im Forum!
Um es kurz zu machen: das geht nicht. Der Name einer Variable muss immer vollständig ausgeschrieben werden, sonst geht es nicht.
Damit man nicht endlos Variablen wie stage1, stage2, stage3,... schreiben muss, gibt es Arrays, hier ein Beispiel wie du vier Einträge im Array stage erzeugst und nutzt, beachte, dass der Computer bei 0 beginnt zu zählen:
LOCAL stage[]
DIM stage[3]
stage[0]=1
stage[1]=2
stage[2]=3
stage[3]=4
koralle, so gehts, thx !