2016-08-01 2 views
0

私はフェイザーを始めている、と私はフォローアニメーションを作る必要があります。画面のいずれかの側から見える車の スプライトので、同じ方向の特定の時点で別の車を移動し、別のと別の、いつも同じ間隔で、そしてこの車がスクリーンから外れるとき、彼らは破壊されるでしょう。グループのスプライトを作成して別のオブジェクトを作成し、自分自身を破壊するにはどうすればいいですか?

試してみましたが、スプライトをかけましたが、車が衝突したら別の車が動き始めます。 collisionで、彼のパスのうち、彼女なしの車が、彼はcollisionまたはoverlapコールバックを呼び出すことはありません、ので、

var x = 800 
var y = 600 


var game = new Phaser.Game(x, y, Phaser.AUTO, '', { preload: preload, create: create, update: update }); 
var cars; 
var next; 

function preload() { 
    game.load.image('car', 'assets/images/car.png'); 
    game.load.image('next', 'assets/images/square.png'); 
    game.load.image('destroy', 'assets/images/square.png'); 
} 


function create() { 
    game.physics.startSystem(Phaser.Physics.ARCADE); 
    game.stage.backgroundColor = "#4488AA"; 

    // call next car 
    next = game.add.sprite(500, 200, 'next'); 
    game.physics.arcade.enable(next); 
    // next.body.checkCollision.right = false; 
    next.body.bounce.set(0); 
    next.body.immovable = true; 

    // destroy last car 
    destroy = game.add.sprite(0, 550, 'destroy'); 
    game.physics.arcade.enable(destroy); 
    destroy.body.immovable = true; 


    cars = game.add.physicsGroup(); 

    createCar(null, null); 
} 

function update() { 
    game.physics.arcade.collide(next, cars, createCar, processHandler, this); 
} 

function processHandler (pointer, car) { 

    return true; 

} 
function createCar(pointer, car) { 
    console.log('call next'); 
    car = cars.create(x, 0,'car'); 
    car.body.velocity.setTo(-150, 100); 
} 

でもない仕事:コードを見て。見て:私はこの作品を作ったことができますどのように

enter image description here

を?

答えて

0

私はあなたの質問と問題を完全には理解していませんでした...私が見る限り、衝突は現時点ではかなり意味をなさない。フェイザーのウェブサイトの例を見てください。あなたの場合の良いコード例が見つかります。あなたは

checkWorldBounds and set it to true. 
を使用することができ、世界/画面の衝突を確認するには

関連する問題