画面外にあるスプライトを削除するための的のガベージ コレクターのコード例を見つけましたが、それは古いバージョンの 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>