2014-05-11 2 views
0

오리 또는 무비 클립이 오른쪽에서 왼쪽으로 이동하는 화면에 도달하면 이것은 사라집니다. 대신 사라지고이 오류가 표시됩니다.어도비 플래시 cs6 게임을 만드는 동안 내 작업 스크립트 3.0에서 오류가 발생했습니다

TypeError: Error #1009: Cannot access a property or method of a null object reference. 
    at Duck/ducksmove() 
    at flash.utils::Timer/_timerDispatch() 
    at flash.utils::Timer/tick()   

나는 여전히이 내 홈페이지 액션 스크립트없는 플래시 새로운 오전으로이 오류를 해결하는 방법을 알고하지 않습니다하지만 액션 스크립트 3.0 패키지 {

import flash.display.MovieClip; 
import flash.utils.Timer; 
import flash.events.TimerEvent; 
import flash.events.MouseEvent; 

public class Duck extends MovieClip { 


    var moveDuck:Timer = new Timer(10); 
    var speedX:Number; 

    public function Duck() { 


     this.addEventListener(MouseEvent.CLICK,KillDuck); 
     moveDuck.addEventListener(TimerEvent.TIMER,ducksmove); 
     moveDuck.start(); 

     speedX = 10; 
    } 
    function ducksmove(evt:TimerEvent):void 
    { 
     this.x -= speedX; 
     if (this.x <=0) 
     { 
      moveDuck.stop(); 
      moveDuck.removeEventListener(TimerEvent.TIMER,ducksmove); 
      this.parent.removeChild(this); 
     } 
    } 

    function KillDuck(evt:MouseEvent):void 
    { 
     var p:MovieClip = this.parent as MovieClip; 
      p.setScore(); 
      p.updatecount(); 
     this.removeEventListener(MouseEvent.CLICK,KillDuck); 
     this.parent.removeChild(this); 
     moveDuck.addEventListener(TimerEvent.TIMER,ducksmove); 
    } 

} 내 오리 액션 스크립트입니다 }

답변

0

마지막 기능 killDuck이 실행 후 : 당신은 타이머 moveDuck에 이벤트를 추가, 그래서 만약

this.parent.removeChild(this);

개체가 더 이상 존재하지 않는,이 호출 될 때 그것은 unexistant 무비 클립을 이동하려고합니다 그리고 충돌.

관련 문제