[animate] update

This commit is contained in:
2020-03-24 23:37:08 +03:00
parent 279baa1113
commit fe60e78b74
10 changed files with 73 additions and 54 deletions

View File

@@ -0,0 +1,28 @@
package hw.animate;
import flash.events.Event;
import flash.Lib;
@:provide class AnimateRunner {
private var animates:Array<IAnimate>;
public function new() {
animates = [];
Lib.current.stage.addEventListener(Event.ENTER_FRAME, _ -> update());
}
private function update():Void {
if (animates.length > 0) {
var time = Date.now().getTime();
animates = animates.filter(animate -> animate.update(time));
}
}
public function run(animate:IAnimate):Float {
animates.push(animate);
var time = Date.now().getTime();
animate.update(time);
return time;
}
}