我正在爲學校製作一個小應用程序,你可以用Acceleropmeter(智能手機)控制一個球,我想要的是,如果球達到某個Y座標,你輸了,到另一個框架(它說你失去了遊戲)。已經做球,到目前爲止的代碼是這樣的:AS3 - 擊球Y座標
var fl_Accelerometer:Accelerometer = new Accelerometer();
fl_Accelerometer.addEventListener(AccelerometerEvent.UPDATE, fl_AccelerometerUpdateHandler);
function fl_AccelerometerUpdateHandler(event:AccelerometerEvent):void
{
cBall.x -= event.accelerationX * 40;
cBall.y += event.accelerationY * 40;
}
cBall.addEventListener(Event.ENTER_FRAME, moveBall);
function moveBall(evt:Event){
// this is to stop the ball when it tries to exit the sreen
if(cBall.x > (480-cBall.width/2)){
cBall.x = 480-cBall.width/2;
}
// except for this, that stops the ball not if it touches the end of the screen, but if it reaches a certain Y coordinate
if(cBall.y > (780-cBall.width/2)){
gotoAndStop(3);
}
if(cBall.x < (0+cBall.width/2)){
cBall.x = 0+cBall.width/2;
}
if(cBall.y < (0+cBall.width/2)){
cBall.y = 0+cBall.width/2;
}
}
每當我嘗試的應用程序,它說,有在第32行錯誤(類型錯誤:錯誤#1009:無法訪問的屬性或方法一個空對象引用。 at ballApp_Scene1_fla :: MainTimeline/moveBall()[ballApp_Scene1_fla.MainTimeline :: frame1:32)爲什麼?我怎樣才能解決這個問題?
是cBall空?我沒有看到你在哪裏聲明或在任何地方初始化它... – 2012-04-28 20:38:02