AS3 で Player をジャンプさせるのに問題があります。関連するすべてのものをアップロードします。何が間違っていたのかを正確に把握するのに本当に苦労しています。以前は機能していましたが、現在は機能していません。エラーの修正に長い時間を費やしたため、どこが台無しになったのかわかりません。Player クラスは BoundaryObject クラスから拡張されています。プレーヤーが動作しているため、機能がアクティブになっていることがわかりthis.gotoAndStop("jump");
ます。
Player クラス - ジャンプ用関数
public function startJumping():void
{
if (isJumping == false)
{
isJumping = true;
this.gotoAndStop("jump");
downwardVelocity = -28;
}
}
BoundaryObject クラス - 重力の変数/ループ
public var downwardVelocity:Number;
protected var isRunning:Boolean;
public var isJumping:Boolean;
public function BoundaryObject()
{
trace("i am any object that collides with the boundary");
downwardVelocity = 0;
isRunning = false;
this.gotoAndStop("jump");
addEventListener(Event.ENTER_FRAME,enterFrameHandler);
// constructor code
}
private function enterFrameHandler(event:Event):void
{
downwardVelocity += 2; //equals itself plus 2
this.y += downwardVelocity;
}
public function incrementUpward()
{
//increment the y up until not colliding
this.y -= 0.1;
}
public function keepOnBoundary()
{
downwardVelocity = 0;//stops pulling the object down
}