// ------------------------------------------------------------- //
// --- TITELBILD ---
// ------------------------------------------------------------- //
SUB Titelbild:
LOADSPRITE "optiongruen.bmp",1
LOADSPRITE "optionrot.bmp",2
LOADSPRITE "startgruen.bmp",3
LOADSPRITE "startrot.bmp",4
LOADBMP "titelbild.bmp"
FOR x=1 TO 111 STEP 2
INC w, 5
DRAWSPRITE 2,110,105
DRAWSPRITE 4,110,160
ROTOSPRITE 2, x,x,w
SHOWSCREEN
NEXT
KEYWAIT
ENDSUB // TITELBILD
Hallo,
ich habe da irgendwie ein Winkelproblem, ich versuche die ganze Zeit ein Sprite von oben nach unten fliegend rotieren zu lassen und genau auf die Position
110,105 landen zu lassen, irgendwie treffe ich immer voll daneben ;-( Mathe ist nicht gerade meine Stärke ...
weiß jemand, wie ich das genau hinbekomme oder hat evtl. eine interessante flugbahn von oben nach unten auf eben position 110,105; wobei das Sprite aber wieder den normalen Winkel haben sollte...
Bin gerade dabei, mein Titelbild+Button´s für Optionen und Start zu erstellen und möchte, dass die Buttons hereinfliegen/runterfallen, damit das Menü nicht zu langweilig aussieht...
Würde mich über Tipps freuen
Gruß+Danke
Thomas
gehört aber eigentlich eher ins Fragen-Forum, aber sei's drum
so könnte man es evtl. machen:
GOSUB Titelbild
SUB Titelbild:
DRAWRECT 0, 0, 100, 50, RGB(255, 255, 0) // als Beispielgrafik
PRINT "Rotobutton", 10, 20
GRABSPRITE 0, 0, 0, 100, 50
zielx = 110 // die Zielkoordinaten
ziely = 105
startx = 0 // die Startposition
starty = 0
// je nachdem ob der X-Weg oder Y-Weg größer ist, die Anzahl
// der erforderlichen Schleifendurchäufe errechnen
IF zielx > ziely
count = zielx - startx
ELSE
count = ziely - starty
ENDIF
// Wert, um den der Drehwinkel bei jedem Schleifendurchlauf
// erhöht werden muss
delta_angle = 360 / (zielx - startx)
// hier die Werte berechnen, um die x und y jeweils
// erhöht werden müssen
deltax = (zielx - startx) / count
deltay = (ziely - starty) / count
// jetzt noch die Variablen für die Schleifendurchlauf initialisieren
x = startx
y = starty
angle = 0
// und los gehts
FOR i = 1 TO count
ROTOSPRITE 0, x + i * deltax, y + i * deltay, angle + i * delta_angle
SLEEP 5
SHOWSCREEN
NEXT
KEYWAIT
ENDSUB
Hi,
super, genau so hatte ich mir das gedacht ;-)
dafür hätte ich ja Wochen gebraucht ............
Danke
Gruß
Thomas
Quote from: Quentin on 2008-Nov-19
gehört aber eigentlich eher ins Fragen-Forum, aber sei's drum
RICHTÖÖÖÖÖÖÖÖÖÖÖÖSCH :D
Move to -> Siehe oben ;)