1
我在AS3中做了一个游戏,我有2个文件。一个是HWMain和HWGame。当我点击开始按钮脚本从HWMain切换到HWGame,但我得到了这个错误。AS3:错误MethodInfo-26和25
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at HWGame()
at MethodInfo-26()
at MethodInfo-25()
这是我的代码。
public class HWGame extends MovieClip
{
var INIT_STATE:String = "INIT_STATE";
var READY_STATE:String = "READY_STATE";
var PLAYER_STATE:String = "PLAYER_STATE";
var PLAY_STATE:String = "PLAY_STATE";
var END_STATE:String = "END_STATE";
var gameState:String;
//And another variable
public function HWGame()
{
gameState = INIT_STATE;
trace(gameState);
stage.addEventListener(Event.ENTER_FRAME, gameLoop);
function gameLoop(e:Event):void
{
switch (gameState)
{
case INIT_STATE :
initGame();
break;
case READY_STATE :
ready();
break;
case PLAYER_STATE :
startPlayer();
break;
case PLAY_STATE :
playGame();
break;
case END_STATE :
endGame();
break;
}
}
function initGame():void
{
//I write the long code
}
function ready():void
{
//I write the long code
}
function startPlayer():void
{
//I write the long code
}
function playGame():void
{
//I write the long code
}
function endGame():void
{
//I write the long code
}
}
}
我试图修复它,我认为错误是在gameState = INIT_STATE。 我该怎么办?
谢谢。
它更可能是这个'MovieClip'还未添加到舞台。因此'stage'可能在'stage.addEventListener(Event.ENTER_FRAME,gameLoop);'处为null。 – 2012-07-30 04:54:56
@JasonSturges,所以..我必须删除阶段代码? – Faras 2012-07-30 06:28:29