ActionScript3.0マウスカーソル作成
ActionScript3.0でのマウスカーソルの作成手順です。
名づけてAS3マウスカーソルです。
またActionScript3.0では、文法的な間違いがなくても指定方法に間違いがあれば、正常に再生されないなどの現象があります。
なのでActionScript2.0のときのように、シンタックスチェックに頼りすぎるとエラーの原因がどこにあるのか判断できなくなるかもしれせんので注意が必要です。
?マウスカーソル用のインスタンスを作成
ムービークリップをステージ上に配置し、mcと同名のインスタンスにします。
?マウス座標をムービークリップ座標にセット
MouseEvent.MOUSE_MOVE(マウスイベントリスナー)でカーソル座標とムービークリップを同期させる。
スペースキーが押しっぱなしであるか調べる
stage.addEventListener(MouseEvent.MOUSE_MOVE, function(event){
mc.x = stage.mouseX;
mc.y = stage.mouseY;
event.updateAfterEvent();
});
だけです。
MouseEventオブジェクトのupdateAfterEvent() メソッドを追加することでマウスの移動にあわせて再描画をしますので動作にあわせて滑らかな描画が可能になります。
ActionScript2.0でいうところの、updateAfterEvent();ですね。
また、システムのマウスカーソル非表示するにはMouse.hide();を設定。Mouse.show();メソッドでシステムカーソルを表示させることが可能です。
【おまけ】
このように記述すると、マウスカーソルを減速させることも可能です。
mc.addEventListener(Event.ENTER_FRAME,function(event){
var d = 0.09;
mc.x += (stage.mouseX-250 - mc.x) *d;
});