| |||||||
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) |
| Neuer User Registriert seit: May 2003
Beiträge: 60
| hilfe bei "renas" setinterval tutorial
hallo, ich habe in der rubrik "tutorial", das setinterval tutorial von rena gefunden: Geschwindigkeit von Zeitleistenanimationen unabhängig von der Bildrate steuern nun wollte ich das script in sofern modifizieren, das sich die abspielgeschwindigkeit des mc's nicht stufenweise per buttondruck steigert, sondern, dass man nur einmal den button drückt und sich die geschwindigkeit automatisch bis zum maximum verdoppelt. ich hatte gedacht das man einfach eine zusätzliche variable z++ einfügt, die man dann mit der variable speed multipliziet, funzt aber nicht. hat jemand einen tipp von euch??? renas original script: ani=function(){ //Aufruf des nächsten Frames mc.nextFrame(); //Falls beim letzten Frame angekommen, wieder zum ersten if(mc._currentframe==mc._totalframes){ mc.gotoAndStop(1); } //Folgender Befehl macht den Ablauf flüssiger - sagt man jedenfalls updateAfterEvent(); } // Die Häufigkeit des Aufrufs ist hier in eine Variable geschrieben // Sie kann aber auch direkt in den setInterval-Befehl gesetzt werden speed=50 // Initiieren des Intervals // ID=setInterval(Funktion die aufgerufen wird, Wiederholung alle x Millisek.) aufruf=setInterval(ani,speed) plus.onPress=function(){ speed-=10; clearInterval(aufruf); //aufruf ist die oben verwendete ID des Intervals aufruf=setInterval(ani,speed); } minus.onPress=function(){ speed+=10; clearInterval(aufruf); aufruf=setInterval(ani,speed); } |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: May 2003
Beiträge: 60
|
erstmal vielen dank für dein ausführliches tutorial und deine schnelle antwort. ich glaube ich habe habe mich etwas missverständlich ausgedrückt. ich möchte nicht mehrmals klicken um die geschwindigkeit zu steigern. ich möchte wenn ich den "schneller" button einmal gedrückt habe, das sich die animationgeschwindigkeit von da an alleine bis zum max steigert. praktisch wie bei einem "fade in" button, der nur einmal gedrückt wird und der volumenwert steigert sich alleine von wert0 bis wert100. deshalb dachte ich, das man einfach eine onEnterFrame funktion einsetzt die eine variable automatisch hochzählt. vielleicht ist das aber auch völliger blödsinn (hat zumindest nicht geklappt), ich bin noch ein ziemlich AS-anfänger. grüsse |
| | |
| | #4 (permalink) |
| All-rounder Registriert seit: Mar 2004 Ort: Bayerische Rhön
Beiträge: 2.507
|
Hy. Dann bau doch ein onEnterFrame ein. Hier z.B. beim Zoomen. ActionScript:
__________________ -------------------------------- Ich klicke, ergo bin ich. (me) -------------------------------- |
| | |
| | #5 (permalink) |
| Neuer User Registriert seit: May 2003
Beiträge: 60
| haut einfach nicht hin
wie gesagt, dass habe ich schon versucht, haut aber nicht hin - keine ahnung was ich sachon wieder falsch gemacht habe. a=0; ani=function(){ a++ mc.nextFrame(); if(mc._currentframe==mc._totalframes){ mc.gotoAndStop(1); } updateAfterEvent(); } speed=50 aufruf=setInterval(ani,speed) // buttons zum verändern von speed _root.plus.onPress = function() { this.onEnterFrame = function() { speed-=10 clearInterval(aufruf) aufruf=setInterval(ani,speed) }; this.onRelease = function() { delete this.onEnterFrame; }; }; |
| | |
| | #6 (permalink) |
| All-rounder Registriert seit: Mar 2004 Ort: Bayerische Rhön
Beiträge: 2.507
|
Also Du musst bedenken, dass bei einer Framerate von 25bps in einer Sekunden 25x -10 geschieht. Ich weiß nicht wie kurz Du auf den Button drückst, aber das geht ratze-fatze. ![]() Vielleicht liegt da der Fehler.
__________________ -------------------------------- Ich klicke, ergo bin ich. (me) -------------------------------- |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |