| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| completely mad Registriert seit: Mar 2006
Beiträge: 160
| Stufenlose rotation mit actionscript, abhängig vom timer
Hallo, ich habe einen movieclip, der sich innerhalb einer bestimmten zeit um insgesamt 360° drehen soll. ich steh gerade aufm schlauch und hab keine ahnung, was ich am code ändern muss, damit die rotation stufenlos verläuft. wäre die zeit wie in dem beispiel 10 sek, dann würde das ja sehr ruckelig aussehen... habt ihr ne idee? movieclip >> "control" cdown = countdownwert, anfangswert = 10 sekunden Code: stop();
_global.cdown = 10;
var i = int(_global.cdown);
var tl = this; // this >> _root.control
function countDown() {
--i == -1 ? clearInterval(iv) : tl.zaehler.text=i;
if ((i+1) > i){
(control._rotation) += (360/((int(_global.cdown))+1));
}
}
iv = setInterval(countDown, 1000);
tl.zaehler.text = i; madtrigger |
| | |
| | #2 (permalink) |
| Nagelneuer User Registriert seit: Dec 2005
Beiträge: 924
|
Wer hat denn diesen grauenhaften Code geschrieben. Hast du den irgendwo gefunden? Wenn du eine Bewegung innerhalb einer bestimmten Zeit haben möchtest, musst du die Position von der Zeit abhängig machen. Die kannst du z.B. mit getTimer() -startzeit bestimmen. mfg. h
__________________ The fact that you've got "Replica" written on the side of your gun and the fact that I've got "Desert Eagle written on the side of mine ... :D |
| | |
| | #3 (permalink) |
| Level up Registriert seit: Jun 2001 Ort: Bocholt
Beiträge: 4.155
|
Also, den Code fine ich schon mal nicht so übel (auch wenn getTimer natürlich etwas genauer funktionieren dürfte), sinnvoll wäre es das Ding natürlich an die zu erwartenden framerate (in meinem Beispiel variable) anzupassen dann läuft es vermutlich am saubersten, auch wenn die Funktion im Grunde genommen unabhängig von der tatsächlichen Framerate gesichert ist (Du kannst also ruhig fps=40 lassen, auch wenn Du tatsächlich mit einer anderen Bildrate arbeitest, der Zeiger ist trotzdem nach 10 sec einmal rund): ActionScript:
Gruß Alois Edit: hm, die Abweichungen sind doch gravierender als ich dachte also doch besser mit getTimer: ActionScript:
__________________ -Spuckt mir auf den Stuhl, ich will im Grünen sitzen- Geändert von Alois (27-03-2006 um 21:31 Uhr) |
| | |
| | #4 (permalink) | ||
| completely mad Registriert seit: Mar 2006
Beiträge: 160
| Zitat:
flash sagt über die timer funktion folgends: Zitat:
| ||
| | |
| | #6 (permalink) |
| Level up Registriert seit: Jun 2001 Ort: Bocholt
Beiträge: 4.155
|
ich hoffe, Du hast mein 'EDIT' gelesen, setInterval ist nicht gerade genau und bei sowas besser nur als Handler zu benutzen. Gruß Alois
__________________ -Spuckt mir auf den Stuhl, ich will im Grünen sitzen- |
| | |
| | #7 (permalink) |
| Nagelneuer User Registriert seit: Dec 2005
Beiträge: 924
|
Wie wäre es denn damit? ActionScript:
Der Unterschied ist der, dass du nicht hundert globale Variablen rumfliegen hast. mfg. h
__________________ The fact that you've got "Replica" written on the side of your gun and the fact that I've got "Desert Eagle written on the side of mine ... :D Geändert von hazy fantazy (27-03-2006 um 22:05 Uhr) |
| | |
| | #8 (permalink) |
| completely mad Registriert seit: Mar 2006
Beiträge: 160
|
danke für eure hilfe! ich persönlich finde den code von alois verständlicher. abgesehen davon, spuckt mir flash bei der eingabe deines codes (hazy) ne fehlermeldung aus (er hätte ein komma bzw eine klammer erwartet) ... ich selbst sehe den syntaxfehler nicht... aber so klappt das alles wunderbar, daher nochmal meinen besten dank an euch! |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |