ウォーキングアニメーションのフレームに変更できます。私は3つのフレームを持っています。最初は(プレイヤークラスの場合)私の他のファイルにもそう}非トゥイーンas3のアニメーション(アクションスクリプト3)
package {
import flash.display.MovieClip;
import flash.events.KeyboardEvent;
import flash.events.Event;
import flash.ui.Keyboard;
public class main extends MovieClip {
var player:Player = new Player();
var px = 0;
var py = 0;
public function main() {
stage.addEventListener(KeyboardEvent.KEY_DOWN, KeyPressed);
addEventListener(Event.ENTER_FRAME, update);
}
public function KeyPressed(e:KeyboardEvent):void {
//trace(e.keyCode);
trace(px);
if(e.keyCode == 38 || e.keyCode == 87) {
trace('w/up');
py -= 5;
moveAnimation();
}
if(e.keyCode == 39 || e.keyCode == 68) {
trace('d/right');
px += 5;
moveAnimation();
}
if(e.keyCode == 37 || e.keyCode == 65) {
trace('a/left');
px -= 5;
moveAnimation();
}
if(e.keyCode == 40 || e.keyCode == 83) {
trace('s/down');
py += 5;
moveAnimation();
}
}
public function moveAnimation():void {
player.gotoAndStop(2);
player.gotoAndStop(3);
player.gotoAndStop(1);
}
public function update(e:Event):void {
addChild(player);
player.x = px;
player.y = py;
}
}
に依然として
正常で 第二及び第三のもの)(I停止を追加し2つの歩行フレームです。それが助けば。しかし、それは動く。呼び出し関数は、それを2番目または3番目のフレームのように移動しますが、1だけを移動します。アニメーション化しません。ちょうど1つのフレームが呼び出され、スタックされます
編集:私はそれをkeyupイベントリスナーとstopAnimation()で修正しましたが、今度はキーがHELDのときは機能しません。それはあまりにも多く呼ばれて1フレームにつかまります。キーが最初に押されたときだけどうすればいいのですか?
編集:キーアップイベントリスナーとstopAnimation()を使用して修正しましたが、キーがHELDのときに機能しません – Artsicle
コメントに情報を追加せず、[編集]してください。 – null
あなたは答えるつもりですか? – Artsicle