0

「_pokemon」というオブジェクトを削除しようとしています。'_jednaLinia' ('_oneLine' の意味) と呼ばれる雨が 10 回降ってくると取り外されます。私はこのコードを使用します。はい、_pokemon が消えますが、handleColisin 関数で検出されます。そして、ポケモンクラスでこのエラーが発生したため、メインクラスはまだそれを参照し続けています

エラー #1009: null オブジェクト参照のプロパティまたはメソッドにアクセスできません。


私は AS3 の初心者であり、多くの簡単な解決策を試しましたが、意図したとおりに機能していないようです。できれば答えてください。

 ## some code I think is necessary, not all of it
...
public class Main extends Sprite 
{

    private var _pokemon:Pokemon;       
    public function Main():void 
    {   
        _starTimer = new Timer(30); 
        addEventListener(Event.ADDED_TO_STAGE, init);
        _starTimer.addEventListener(TimerEvent.TIMER, start);

    }
    private function init(e:Event = null):void 
    {
        removeEventListener(Event.ADDED_TO_STAGE, init);    
        _starTimer.start();
        this.addChild(_pokemon);

    }




...and further...

    private function _pokemonLive(e:Event = null):void
    {           
        decreaseLive--;         
        if (decreaseLive == 0)
        {               
            _pokemon.parent.removeChild( _pokemon );/i think i tried all methods
            _starTimer.stop();
        }
    }

そして、私が述べたように。ランダム移動機能を搭載したポケモンクラスでエラーが発生しました。そして、エラー1009が表示される場所です。必要に応じて、さらにコードを送信します。

4

1 に答える 1

0

「デッド」ブール値を「メイン」クラスに追加します。

変化する

private function _pokemonLive(e:Event = null):void
    {           
        decreaseLive--;                       
            _pokemon.parent.removeChild( _pokemon );
            _starTimer.stop();
    }

private function _pokemonLive(e:Event = null):void
    {           
        if(dead == false)
        {     
        decreaseLive --;   
        if (decreaseLive == 0)
        {            
            dead = true;  
            _pokemon.parent.removeChild( _pokemon );/i think i tried all methods
            _starTimer.stop();
        }
        }
    }
于 2013-05-12T16:35:00.117 に答える