0
我試圖創建一個擊敗他媽的遊戲,現在我得到了我的角色攻擊。到目前爲止我有3個攻擊動畫,並且工作正常。如果你不斷地搗碎攻擊按鈕,它會攻擊,但是一旦攻擊按鈕關閉,問題就會轉移到下一個攻擊動畫,我不想那樣做。一旦當前的攻擊動畫完成後,我怎樣才能讓它進入下一個攻擊動畫,而不是跳到當前動畫中途的下一幀。所以我希望角色完成自己的攻擊,如果玩家仍然鍵入攻擊密鑰,它會進入下一個攻擊框架。AS3攻擊動畫問題
package
{
import flash.display.MovieClip;
import flash.events.Event;
import flash.events.KeyboardEvent;
import flash.ui.Keyboard;
public class Player extends MovieClip
{
//Attack variables
var Attacking:Boolean = false;
var Punches:int = 0;
var Punching:Boolean = false;
var Kicks:int = 0;
var Kicking:Boolean = false;
public function Player()
{
stage.addEventListener(KeyboardEvent.KEY_DOWN,KeyPressed);
addEventListener(Event.ENTER_FRAME,Update);
}
function KeyPressed(event:KeyboardEvent):void
{
stage.removeEventListener(KeyboardEvent.KEY_DOWN, KeyPressed);
stage.addEventListener(KeyboardEvent.KEY_UP, KeyUp);
//If A key is down
if (event.keyCode == 65)
{
Attacking = true;
Punching = true;
Punches++;
}
}
function Update(event:Event)
{
//If player is not attacking
if (Attacking == false)
{
Punching = false;
Punches = 0;
Kicking = false;
Kicks = 0;
}
else if (Attacking == true)
{
if (Punching == true)
{
gotoAndStop('Jab' + Punches);
}
}
}
function KeyUp(event:KeyboardEvent)
{
stage.addEventListener(KeyboardEvent.KEY_DOWN, KeyPressed);
}
}
}
而且每一次攻擊動畫的最後一幀中我已經放下
import flash.display.MovieClip;
import flash.events.Event;
stop();
MovieClip(parent).Attacking = false;
MovieClip(parent).Punches = 0;
謝謝,我會試一試,但我需要這些聽衆爲不同的原因/功能的作品。我放置的代碼只是我整個冗長代碼中的相關代碼,但我會試試這個代碼並且會讓你知道 – user2350724