2012-11-15 6 views
0

안녕하세요, Flash CS3 Action Script에서 게임을 만들려고합니다. 13-15 줄에 오류가 계속 발생합니다. 충돌은 정의와 충돌합니다. 내부 _ 네임 스페이스의 충돌, 충돌 내부에 네임 스페이스 _highscore 정의가 존재하며 내부 네임 스페이스에 정의 _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

위의 클래스와 같은 디렉토리/패키지에있는 파일/클래스라는 이름의 텍스트 필드가 있습니까? – BadFeelingAboutThis

+0

내가 어떻게하는지 확인합니까? 확실하지 않다 – mvitagames

+1

자동으로 스테이지 이름 인스턴스에 대한 속성을 제작 (ActionScript 3.0 설정 용)으로 선택했을 가능성이 있습니다. –

답변

0

이동 "고급 액션 스크립트 3.0 설정"에 - 나는 파일을 통해 CS5.5를 사용하고 있는데 CS3가없는 (그러나이 동일해야합니다) -> [제작 설정] -> 액션 설정 및 "자동으로 스테이지 인스턴스를 선언합니다"(기본 설정 임)

을 선택 취소하거나 클래스에서 정의하지 마십시오.

Detailed description of Error 1151 and resolution

0

아마 당신이 복제 한 정의. 예를 들어 같은

:

var _bounces:TextField;