Hallo, ich bin Neuling und habe erst vor wenigen Tagen angefangen die Befehle kennenzulernen.
Ich möchte, am besten mit Tastendruck eine Zufallswiedergabe von Bildern starten.
Soll später wenn ich etwas mehr kapiere so etwas werden wie ein einarmiger Bandit.
Möchte mich deswegen stückweise Vorwärtsbewegen.
Daher setze ich erstmal ab der Zufallswiedergabe der Bilder. Dazu möchte ich erstmal den RND Befehl nutzen.
LOADFONT "smalfont.png", 0
LOADSPRITE "Pics/01.png", 1
LOADSPRITE "Pics/02.png", 2
LOADSPRITE "Pics/03.png", 3
LOADSPRITE "Pics/04.png", 4
LOADSPRITE "Pics/05.png", 5
LOADSPRITE "Pics/06.png", 6
LOADSPRITE "Pics/07.png", 7
LOADSPRITE "Pics/08.png", 8
LOADSPRITE "Pics/09.png", 9
LET i=a
LET a=45
LET b=9
SETFONT 0
BLACKSCREEN
PRINT "Liberty City", 165, 40
DRAWRECT 50, 100, 200, 200, RGB(255, 102, 0)
[i]
FOR i=a TO 1=RND(b) STEP -1
DRAWSPRITE b, 50, 100 [/i]
NEXT
SHOWSCREEN
MOUSEWAIT
END
Der kursive Teil ist mein Problem. Ich möchte das der Wert, der dabei herauskommt später dann bei Drawsprite verwendet wird.
Wenn ihr euch jetzt fragt warum ich nicht einfach nur Drawsprite 1=RND(b) , 50, 100 dann kann ich das erklären. Ich möchte das es wie bei einem einarmigen Banditen, in diesem Fall jetzt 45 Runden "dreht" und dann beim letzten Wert wenn die Schleife stoppt stehen bleibt. Das nächste Problem wäre natürlich dann noch die 45 Runden sichtbar zu machen, sonst rattert er ja alles durch bis und startet dann das programm. Dazu aber später.
Danke LG Veritas :)
Hallo Veritas,
ich würde es so machen :
dreh = 45 // Anzahl der Drehungen
anz_sp = 9 // Anzahl der Sprite
warten = 1
DRAWRECT 50, 100, 200, 200, RGB(255, 102, 0)
UseAsBMP // Damit das Rechteck als Hintergurnd stehen bleibt
for i=1 to dreh
sp = RND(anz_sp)
DRAWSPRITE sp, 50, 100
sleep(warten*100)
inc(warten,1)
// Damit entsteht der Eindruck, als wenn sich das Bild immer langsamer ändert
Showscreen // und nun Anzeigen
next
Mousewait
Ich hoffe das ist gewünscht und hilt Dir weiter.
Gruß Heiko
Ja, danke das ist schon mal ne Super Idee, habs auch gleich umgesetzt, der Effekt funktioniert auch nur hat
sleep(warten*100)
inc(warten,1)
das mit den Klammern bei mir nicht so funktioniert und ich musste drauf verzichten. Hab 100 auch auf 7 veringert, sonst wirkt es so als würde der computer permanent hängen, tut er ja auch ^^ er pennt ja schließlich. Der Effekt ist gut, aber wirkt leider noch nicht flüssig genug.
Danke LG Veritas