我有一個嵌入了影片剪輯的自定義類。當我嘗試使用父類的時候,比如gotoAndStop()。它忽略了這種方法。我想知道我做錯了什麼。下面是我的代碼。我在我的構造函數中調用該方法謝謝!gotoAndStop(); flashdevelop或flex
遊戲對象類
package com.objects
{
import com.eapi.IGameObject;
import flash.display.MovieClip;
/**
* ...
* @author Anthony Gordon
*/
public class GameObject extends MovieClip implements IGameObject
{
public function GameObject()
{
}
}
}
的英雄職業。 gotoAndStop()在構造函數中
package com.objects
{
import flash.display.MovieClip;
import flash.events.*;
/**
* ...
* @author Anthony Gordon
*/
[Embed(source='../../../bin/Assets.swf', symbol='Hero')]
public class Hero extends GameObject
{
private var aKeyPress:Array;
private var jumpDisabled:Boolean = false;
public function Hero()
{
gotoAndStop(1) ///<----------------Doesnt stop. Just keeps playing
wY = 150;
wX = 90;
speed = .5;
aKeyPress = new Array();
TheGame.sr.addEventListener(KeyboardEvent.KEY_DOWN, keyDownListener);
TheGame.sr.addEventListener(KeyboardEvent.KEY_UP,keyUpListener);
}
private function keyDownListener(e:KeyboardEvent):void {
//trace("down e.keyCode=" + e.keyCode);
aKeyPress[e.keyCode]=true;
}
private function keyUpListener(e:KeyboardEvent):void {
//trace("up e.keyCode=" + e.keyCode);
aKeyPress[e.keyCode]=false;
}
override public function UpdateObject():void
{
Controls();
updatePosition();
}
private function Controls():void
{
if (aKeyPress[38])//Key press up
;//dy -= speed;
else if (aKeyPress[40])//Key press down
dy += speed;
if (aKeyPress[37])//left
{
dx -= speed;
}
else if (aKeyPress[39])//Right
{
dx += speed;
}
if (aKeyPress[32]){//space
jump();
}
}//End Controls
private function jump():void
{
if (!jumpDisabled)
{
if (onGround)
{
gotoAndStop(10);
dy = -15;
jumpDisabled = true;
}
}
else
{
jumpDisabled = false;
}
}
}
}
我有點困惑什麼順序的操作必須做與告訴movieclip停止。此外,英雄不是主要的類,所以它沒有參考舞臺屬性。我沒有將舞臺參考存儲在一個名爲TheGame.sr的常量中。但無論如何,該方法不起作用 – numerical25 2010-02-16 20:26:09