1

画面外にあるスプライトを削除するための的のガベージ コレクターのコード例を見つけましたが、それは古いバージョンの Phaser でのみ機能します。
このコードを v1.1.5 から v2.0.4 に再構築するにはどうすればよいですか?
エラーコード:

Phaser v2.0.3 - WebGL - WebAudio http://phaser.io в™ڐв™ڐв™ phaser.min.js:8
キャッチされていない TypeError: null (インデックス) のプロパティ 'reset' を読み取ることができません:34
    add_cloud (インデックス):34
    b.Timer.update phaser.min.js:12
    b.Time.update phaser.min.js:12
    b.Game.update phaser.min.js:8
    b.RequestAnimationFrame.updateRAF phaser.min.js:11
    window.requestAnimationFrame.forceSetTimeOut._onLoop Phaser.min.js:11

古いバージョン (v1.1.5) で動作するコード:

<script>
    var game = new Phaser.Game(800, 480, Phaser.AUTO, '', { preload: preload, create: create, update: update });
    var clouds;
    var cloud_dummy;

    function preload() {
        game.load.image('mario_cloud', 'mario_cloud.png');
    }

    function create() {
        clouds = game.add.group();
        clouds.enableBody = true;
        clouds.createMultiple( 6, 'mario_cloud');

        timer_shit = game.time.events.loop(1500, add_cloud, this);
    }
    function update() {

    }
    function add_cloud() {
        cloud_dummy = clouds.getFirstDead();
        cloud_dummy.reset(800, 100);
        cloud_dummy.body.velocity.x -= 150;
        cloud_dummy.body.immovable = true;
        cloud_dummy.outOfBoundsKill = true;
    }
</script>
4

1 に答える 1