ソースを参照

added getEventTime

Nicolas Cannasse 4 年 前
コミット
05a96f3349
1 ファイル変更15 行追加1 行削除
  1. 15 1
      h3d/anim/Animation.hx

+ 15 - 1
h3d/anim/Animation.hx

@@ -56,7 +56,11 @@ class Animation implements hxd.impl.Serializable {
 	}
 
 	public function getDuration() {
-		return frameCount / (sampling * speed);
+		return frameToTime(frameCount);
+	}
+
+	inline function frameToTime(f) {
+		return f / (sampling * speed);
 	}
 
 	inline function getIFrame() {
@@ -102,6 +106,16 @@ class Animation implements hxd.impl.Serializable {
 
 	public function getObjects() return objects;
 
+	public function getEventTime( id : String ) : Null<Float> {
+		if( events == null )
+			return null;
+		for( i in 0...events.length ) {
+			var ev = events[i];
+			if( ev != null && ev.indexOf(id) >= 0 ) return frameToTime(i);
+		}
+		return null;
+	}
+
 	public function setFrame( f : Float ) {
 		frame = f;
 		lastEvent = -1;