2012-11-15 45 views
0

您好,我正在嘗試在Flash CS3 Action Script上創建一個遊戲,並在第13-15行中發現錯誤,說明定義_bounces與內部命名空間存在衝突,衝突存在名稱空間內部的定義_highscore,並且名稱空間internal中存在定義_ball的衝突?和幫助,請名稱空間內部定義_bounces存在衝突錯誤

package 
{ 
    import flash.display.MovieClip 
    import flash.text.TextField 
    import flash.events.Event 
    import flash.events.MouseEvent 

    public class DocumentMain extends MovieClip 
    { 
     public const Gravity:Number = 2; 
     public const Bounce_Factor:Number = 0.8; 

     public var _bounces:TextField; 
     public var _highscore:TextField; 
     public var _ball:Ball; 

     public var _vx:Number; 
     public var _vy:Number; 


     public function DocumentMain():void 
     { 
      _vx = 0; 
      _vy = 0; 
      addEventListener(Event.ENTER_FRAME, enterFrameHandler); 
      addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); 
     } 

     private function enterFrameHandler(e:Event):void 
     { 
      //gravitate the ball 
      _vy += Gravity; 
      //move the ball 
      _ball.x += _vx; 
      _ball.y += _vy; 
      //check stage boundaries for collision 
      checkBoundaryCollision(); 
     } 
     private function mouseDownHandler(e:MouseEvent):void 
     { 
      //Hit the ball if it has been clicked 
     } 

     private function checkBoundaryCollision():void 
     { 
      var left:Number; 
      var right:Number; 
      var bottom:Number; 
      var Top:Number; 
      left = _ball.x -(_ball.width/2); 
      right = _ball.x +(_ball.width/2); 
      bottom = _ball.y +(_ball.height/2); 
      top = _ball.y + (_ball.height/2); 

      if (left < 0 && _vx < 0) 
      { 
       _ball.x = _ball.width/2; 
       _vx *= -1; 
      } 
      else if (right > stage.stageWidth && _vx > 0) 
      { 
       _ball.x = stage.stageWidth -(_ball.width /2); 
       _vx *= -1; 
      } 
      if (top < 0 && _vy < 0) 
      { 
       _ball.y = _ball.height/2; 
       _vy *= -1; 
       } 
      else if (bottom > stage.stageHeight && _vy > 0) 
      { 
       _ball.y =stage.stageHeight -(_ball.height/2); 
       _vy *=Bounce_Factor; 
      } 

     } 
    } 
} 
+0

你有在同一目錄/包如上類名爲文件的TextField /班? – BadFeelingAboutThis

+0

我該如何檢查我是否?不確定 – mvitagames

+1

我敢打賭,您已選擇發佈屬性(對於ActionScript 3.0設置)來自動命名舞臺實例。 –

回答

0

進入「高級的ActionScript 3.0設置」 - 我通過文件使用CS5.5和沒有CS3(但它應該是相同的) - >發佈設置 - > ActionScript設置和那麼取消選中「自動聲明階段實例」(這是默認設置)

或者不在類中定義它們。

Detailed description of Error 1151 and resolution

0

可能是你有重複的定義。

像例如:

var _bounces:TextField;