Iveは少しの周りを検索しましたが、私は働くことができる答えを見つけることができませんでした。私は約1年間学校にいませんでした。クラスで作ったフラッシュゲームを見つけました。 Iveが正しく機能するようにいくつかのエラーを修正しようとしていました。私が遭遇する問題は、ジャンプする問題です:キャラクターは空を飛んでいるかのように無限にジャンプすることができます。次のエラーは、プレーヤーが空にいない限り、攻撃グラフィックは再生されません。私はコーディングに錆びていて、私はas3に戻り、フラッシュプログラムを使用したいと考えています。私は "player.as"ファイルを持っています。私は以下のコードを貼り付けます。 ご協力いただきありがとうございます。AS3ジャンピング(飛行)問題
package {
import flash.display.MovieClip;
import CollisionObject;
import flash.events.Event;
import flash.events.TimerEvent;
import flash.utils.Timer;
public class Player extends CollisionObject {
private var xMovement:Number;
public var isAttacking:Boolean;
private var attackTimer:Timer = new Timer (500, 1);
public function Player() {
// constructor code
trace("I am the player");
xMovement = 0;
isAttacking:false;
addEventListener(Event.ENTER_FRAME, enterFrameHandler);
} // end constructor
private function enterFrameHandler(event:Event):void{
this.x += xMovement;
} //end function
public function attack() {
isAttacking = true;
this.gotoAndStop("attack");
attackTimer.addEventListener(TimerEvent.TIMER_COMPLETE, doneAttacking);
attackTimer.start();
}
public function startJumping(){
if (isJumping == false) {
isJumping == true;
this.gotoAndStop("jump");
downwardVelocity = -20;
}
}
public function doneAttacking (event:TimerEvent):void{
isAttacking = false;
this.gotoAndStop("stop");
}
public function moveLeft() : void{
xMovement =-7;
this.scaleX = -1;
this.gotoAndStop("run");
isRunning = true;
} //end function
public function moveRight() : void{
xMovement =7;
this.scaleX = 1;
this.gotoAndStop("run");
isRunning = true;
} //end function
public function standStill() : void{
xMovement = 0;
isRunning = false;
} //end function
override public function positionOnLanding(){
if(isRunning == true){
this.gotoAndStop("run");
}else{
this.gotoAndStop("stop");
} //end else
} //end function
} // end class
あなたのコードは不完全ですどこで 'downwardVelocity'を使用していますか?あなたは 'startJumping()'と 'attack()'をどこで呼びますか? – BadFeelingAboutThis