浏览代码

Can pause h2d anims

Fl0xer 8 年之前
父节点
当前提交
2036cf7f04
共有 1 个文件被更改,包括 5 次插入2 次删除
  1. 5 2
      h2d/Anim.hx

+ 5 - 2
h2d/Anim.hx

@@ -5,8 +5,9 @@ class Anim extends Drawable {
 	public var frames : Array<Tile>;
 	public var frames : Array<Tile>;
 	public var currentFrame(get,set) : Float;
 	public var currentFrame(get,set) : Float;
 	public var speed : Float;
 	public var speed : Float;
+	public var pause : Bool = false;
 	public var loop : Bool = true;
 	public var loop : Bool = true;
-	
+
 	/**
 	/**
 		When enable, fading will draw two consecutive frames with alpha transition between
 		When enable, fading will draw two consecutive frames with alpha transition between
 		them instead of directly switching from one to another when it reaches the next frame.
 		them instead of directly switching from one to another when it reaches the next frame.
@@ -29,6 +30,7 @@ class Anim extends Drawable {
 	public function play( frames, atFrame = 0. ) {
 	public function play( frames, atFrame = 0. ) {
 		this.frames = frames == null ? [] : frames;
 		this.frames = frames == null ? [] : frames;
 		currentFrame = atFrame;
 		currentFrame = atFrame;
+		pause = false;
 	}
 	}
 
 
 	public dynamic function onAnimEnd() {
 	public dynamic function onAnimEnd() {
@@ -49,7 +51,8 @@ class Anim extends Drawable {
 	override function sync( ctx : RenderContext ) {
 	override function sync( ctx : RenderContext ) {
 		super.sync(ctx);
 		super.sync(ctx);
 		var prev = curFrame;
 		var prev = curFrame;
-		curFrame += speed * ctx.elapsedTime;
+		if (!pause)
+			curFrame += speed * ctx.elapsedTime;
 		if( curFrame < frames.length )
 		if( curFrame < frames.length )
 			return;
 			return;
 		if( loop ) {
 		if( loop ) {