articles

2009 年 8 月 8 日

AS3 TweenerのsetTimeScaleを試すつもりが

CATEGORYactionscriptflashui   2:49 AM

TweenerのsetTimeScaleを試すつもりが
なぜかKeyのことについて色々勉強することとなりました。
へたくそっ!このコード!

key_test1.fla

import caurina.transitions.Tweener;
import KeyEvent;

var key_event=new KeyEvent(test_mc);

stage.addEventListener(MouseEvent.CLICK,clickHandler);

function clickHandler(event) {
	trace("押された");
	Tweener.removeTweens(test_mc);
	test_mc.x=90
	Tweener.addTween(test_mc,{time:10,x:500,transition:"linear"});
}

function setTweenerTimeScale() {
	Tweener.setTimeScale(5);
	trace("setTweenerTimeScale");
}
function setTweenerTimeScaleDefault() {
	Tweener.setTimeScale(1);
	trace("setTweenerTimeScale");
}

KeyEventSample.as

package {
	import flash.events.KeyboardEvent;
	import flash.ui.Keyboard;
	import flash.display.MovieClip;

	public class KeyEventSample {
		var my_mc:MovieClip;
		public function KeyEventSample(mc) {
			my_mc=mc;
			my_mc.stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDownHandler);
			my_mc.stage.addEventListener(KeyboardEvent.KEY_UP,keyUpHandler);
		}

		function keyDownHandler(event) {
			if (event.shiftKey) {
				trace("シフトキーが押された");
			}
			trace("押された");
		}

		function keyUpHandler(event) {
			trace(event.keyCode)
			if (event.keyCode==16) {
				trace("シフトキーが離された");
			}
			trace("離された");
		}
	}
}

KeyEvent.as

package {
	import KeyEventSample;

	public class KeyEvent extends KeyEventSample {
		var mainTimeLine:MovieClip;
		public function KeyEvent(mc) {
			super(mc);
			mainTimeLine=my_mc.root as MovieClip;
		}

		override function keyDownHandler(event) {
			trace("オーバーライドされた関数");
			mainTimeLine.setTweenerTimeScale();
		}
		override function keyUpHandler(event) {
			trace("オーバーライドされた関数");
			stageObj.setTweenerTimeScaleDefault();
		}


	}
}