ð®ðÁ ðÀð░ð▓ÐèÐÇÐêð©ð╝ ð©ð│ÐÇð░Ðéð░ Ðüð© Ðü ð┤ð¥ð▒ð░ð▓ÐÅð¢ðÁÐéð¥ ð¢ð░ ð▓ÐÇð░ð│ð¥ð▓ðÁ. ðóð¥ð▓ð░ ÐëðÁ ÐÅ ð¢ð░ð┐ÐÇð░ð▓ð© ð© ð┐ð¥-ð┐ÐÇðÁð┤ð©ðÀð▓ð©ð║ð░ÐéðÁð╗ð¢ð░, ð║ð¥ðÁÐéð¥ ð┐ÐÇðÁð┤ð© ÐØ ð╗ð©ð┐Ðüð▓ð░ÐêðÁ.
ðÿð┤ðÁÐÅÐéð░ ðÁ Ðüð╗ðÁð┤ð¢ð░Ðéð░: ð║ð¥ð│ð░Ðéð¥ ð©ð│ÐÇð░ÐçÐèÐé ÐüÐèð▒ðÁÐÇðÁ ð▓Ðüð©Ðçð║ð© ðÀð▓ðÁðÀð┤ð© ðÀð░ ð┐ÐÇÐèð▓ ð┐ÐèÐé, ÐëðÁ ÐüðÁ ð┐ð¥ÐÅð▓ð© ðÁð┤ð¢ð░ ð▒ð¥ð╝ð▒ð░, ð║ð¥ÐÅÐéð¥ Ðüð╗ÐâÐçð░ð╣ð¢ð¥ ÐëðÁ ð┐ð¥ð┤Ðüð║ð░Ðçð░ ð©ðÀ ð¢ð©ð▓ð¥Ðéð¥ ð© ÐëðÁ ð│ð¥ Ðâð▒ð©ðÁ, ð░ð║ð¥ ÐÅ ð┤ð¥ð║ð¥Ðüð¢ðÁ. ðÆÐüð©Ðçð║ð©ÐéðÁ ðÀð▓ðÁðÀð┤ð© ÐëðÁ ÐüðÁ ð┐ð¥ÐÅð▓ÐÅÐé ð¥Ðéð¢ð¥ð▓ð¥ ð© ð░ð║ð¥ ð©ð│ÐÇð░ÐçÐèÐé ð┐ð░ð║ ð│ð© ÐüÐèð▒ðÁÐÇðÁ, ÐëðÁ ÐüðÁ ð┐ð¥ÐÅð▓ð© ð¥ÐëðÁ ðÁð┤ð¢ð░ ð▒ð¥ð╝ð▒ð░. ðóð¥ð▓ð░ Ðüð╗ÐâðÂð© ð║ð░Ðéð¥ ð┐ÐÇðÁð┤ð©ðÀð▓ð©ð║ð░ÐéðÁð╗ÐüÐéð▓ð¥: ÐüÐèð▒ð©ÐÇð░ð¢ðÁ ð¢ð░ ð▓ÐèðÀð╝ð¥ðÂð¢ð¥ ð¢ð░ð╣-ð╝ð¢ð¥ð│ð¥ Ðéð¥Ðçð║ð© ð▒ðÁðÀ Ðâð╝ð©ÐÇð░ð¢ðÁ.
ðƒÐèÐÇð▓ð¥ ÐüðÁ ð¢ÐâðÂð┤ð░ðÁð╝ ð¥Ðé ð│ÐÇÐâð┐ð░ ðÀð░ ð▒ð¥ð╝ð▒ð©ÐéðÁ ð© ð¢ÐÅð║ð¥ð╗ð║ð¥ ð¥ð▒ðÁð║Ðéð░ Collider:
bombs = this.physics.add.group();
this.physics.add.collider(bombs, platforms);
this.physics.add.collider(player, bombs, hitBomb, null, this);
ðæð¥ð╝ð▒ð©ÐéðÁ ÐëðÁ ð¥ÐéÐüð║ð░Ðçð░Ðé ð¥Ðé ð┐ð╗ð░ÐéÐäð¥ÐÇð╝ð©ÐéðÁ, ð░ ð░ð║ð¥ ð©ð│ÐÇð░ÐçÐèÐé ð┤ð¥ð║ð¥Ðüð¢ðÁ ð¢ÐÅð║ð¥ÐÅ, ÐëðÁ ð▒Ðèð┤ðÁ ð©ðÀð┐Ðèð╗ð¢ðÁð¢ð░ ÐäÐâð¢ð║Ðåð©ÐÅÐéð░ hitBomb. ðóÐÅ ÐëðÁ Ðüð┐ÐÇðÁ ð©ð│ÐÇð░Ðéð░ ð© ÐëðÁ ð¢ð░ð┐ÐÇð░ð▓ð© ð©ð│ÐÇð░Ðçð░ ÐçðÁÐÇð▓ðÁð¢:
function hitBomb (player, bomb)
{
this.physics.pause();
player.setTint(0xff0000);
player.anims.play('turn');
gameOver = true;
}
ðùð░ ÐüðÁð│ð░ ð┤ð¥ð▒ÐÇðÁ, ð¢ð¥ ÐéÐÇÐÅð▒ð▓ð░ ð© ð┤ð░ ÐüÐèðÀð┤ð░ð┤ðÁð╝ ð▒ð¥ð╝ð▒ð©ÐéðÁ. ðùð░ Ðéð░ðÀð© ÐåðÁð╗ ÐëðÁ ð┐ÐÇð¥ð╝ðÁð¢ð©ð╝ ÐäÐâð¢ð║Ðåð©ÐÅÐéð░ collectStar:
function collectStar (player, star)
{
star.disableBody(true, true);
score += 10;
scoreText.setText('Score: ' + score);
if (stars.countActive(true) === 0)
{
stars.children.iterate(function (child) {
child.enableBody(true, child.x, 0, true, true);
});
var x = (player.x < 400) ? Phaser.Math.Between(400, 800) : Phaser.Math.Between(0, 400);
var bomb = bombs.create(x, 16, 'bomb');
bomb.setBounce(1);
bomb.setCollideWorldBounds(true);
bomb.setVelocity(Phaser.Math.Between(-200, 200), 20);
}
}
ðÿðÀð┐ð¥ð╗ðÀð▓ð░ð╝ðÁ ð╝ðÁÐéð¥ð┤ ð¢ð░ ð│ÐÇÐâð┐ð░Ðéð░ ð¢ð░ ð©ð╝ðÁ countActive, ðÀð░ ð┤ð░ ð┐ÐÇð¥ð▓ðÁÐÇð©ð╝ ð║ð¥ð╗ð║ð¥ ðÀð▓ðÁðÀð┤ð© ð¥ÐüÐéð░ð▓ð░Ðé. ðÉð║ð¥ ð¢ÐÅð╝ð░ Ðéð░ð║ð©ð▓ð░, ð©ð│ÐÇð░ÐçÐèÐé ðÁ ÐüÐèð▒ÐÇð░ð╗ ð▓Ðüð©Ðçð║ð© ð© ð©ðÀð┐ð¥ð╗ðÀð▓ð░ð╝ðÁ ÐäÐâð¢ð║Ðåð©ÐÅÐéð░ iterate, ðÀð░ ð┤ð░ ÐüÐèðÂð©ð▓ð©ð╝ ð▓Ðüð©Ðçð║ð© ðÀð▓ðÁðÀð┤ð© ð© ð┤ð░ ð┐ÐÇð¥ð╝ðÁð¢ð©ð╝ ð┐ð¥ðÀð©Ðåð©ÐÅÐéð░ ð©ð╝ ð┐ð¥ Y ð¢ð░ 0. ðóð¥ð▓ð░ ÐëðÁ ð│ð© ð¢ð░ð║ð░ÐÇð░ ð┐ð░ð║ ð┤ð░ ð┐ð░ð┤ð¢ð░Ðé ð¥Ðé ð│ð¥ÐÇð¢ð░Ðéð░ Ðçð░ÐüÐé ð¢ð░ ðÁð║ÐÇð░ð¢ð░.
ðíð╗ðÁð┤ð▓ð░Ðëð░Ðéð░ Ðçð░ÐüÐé ð¥Ðé ð║ð¥ð┤ð░ ÐüÐèðÀð┤ð░ð▓ð░ ð▒ð¥ð╝ð▒ð░. ðƒÐèÐÇð▓ð¥ ð©ðÀð▒ð©ÐÇð░ð╝ðÁ Ðüð╗ÐâÐçð░ð╣ð¢ð░ ð║ð¥ð¥ÐÇð┤ð©ð¢ð░Ðéð░ ð┐ð¥ X, ð▓ð©ð¢ð░ð│ð© ð¥Ðé ÐüÐÇðÁÐëÐâð┐ð¥ð╗ð¥ðÂð¢ð░Ðéð░ ð┐ð¥ð╗ð¥ð▓ð©ð¢ð░ ð¢ð░ ðÁð║ÐÇð░ð¢ð░ Ðüð┐ÐÇÐÅð╝ð¥ ð©ð│ÐÇð░Ðçð░, ðÀð░ ð┤ð░ ð╝Ðâ ð┤ð░ð┤ðÁð╝ Ðêð░ð¢Ðü. ðíð╗ðÁð┤ Ðéð¥ð▓ð░ ÐüÐèðÀð┤ð░ð▓ð░ð╝ðÁ ð▒ð¥ð╝ð▒ð░Ðéð░, ð║ð░ÐÇð░ð╝ðÁ ÐÅ ð┤ð░ ð¥ÐéÐüð║ð░Ðçð░ ð¥Ðé ð│ÐÇð░ð¢ð©Ðåð©ÐéðÁ ð¢ð░ Ðüð▓ðÁÐéð░ ð© ÐØ ð┤ð░ð▓ð░ð╝ðÁ Ðüð╗ÐâÐçð░ð╣ð¢ð░ Ðüð║ð¥ÐÇð¥ÐüÐé.
ðÜÐÇð░ð╣ð¢ð©ÐÅÐé ÐÇðÁðÀÐâð╗Ðéð░Ðé ðÁ ð╝ð░ð╗ð║ð░ ð▒ð¥ð╝ð▒ð░, ð║ð¥ÐÅÐéð¥ ÐÇð©ð║ð¥Ðêð©ÐÇð░ ð©ðÀ ðÁð║ÐÇð░ð¢ð░. ð£ð░ð╗ð║ð░ ð© ð╗ðÁÐüð¢ð░ ðÀð░ ð¥Ðéð▒ÐÅð│ð▓ð░ð¢ðÁ ð▓ ð¢ð░Ðçð░ð╗ð¥Ðéð¥, ð¢ð¥ ÐüÐéð░ð▓ð░ ð┐ð¥-ÐéÐÇÐâð┤ð¢ð¥, ð║ð¥ð│ð░Ðéð¥ ÐüðÁ ÐüÐèð▒ðÁÐÇð░Ðé ð╝ð¢ð¥ð│ð¥!

ðí Ðéð¥ð▓ð░, ð©ð│ÐÇð░Ðéð░ ð¢ð© ðÁ ð│ð¥Ðéð¥ð▓ð░ :)
ðùð░ð║ð╗ÐÄÐçðÁð¢ð©ðÁ
ðÆðÁÐçðÁ ð╝ð¥ðÂðÁÐéðÁ ð┤ð░ ÐüÐèðÀð┤ð░ð┤ðÁÐéðÁ Ðüð┐ÐÇð░ð╣Ðé Ðü Ðäð©ðÀð©Ðçð¢ð© Ðüð▓ð¥ð╣ÐüÐéð▓ð░, ð┤ð░ ð║ð¥ð¢ÐéÐÇð¥ð╗ð©ÐÇð░ÐéðÁ ð┤ð▓ð©ðÂðÁð¢ð©ðÁÐéð¥ ð╝Ðâ ð© ð┤ð░ ð│ð¥ ð¢ð░ð║ð░ÐÇð░ÐéðÁ ð┤ð░ Ðüð© ð▓ðÀð░ð©ð╝ð¥ð┤ðÁð╣ÐüÐéð▓ð░ Ðü ð┤ÐÇÐâð│ð© ð¥ð▒ðÁð║Ðéð© ð▓ ð╝ð░ð╗Ðèð║ ð©ð│ÐÇð░ð╗ðÁð¢ Ðüð▓ÐÅÐé. ðÿð╝ð░ ð╝ð¢ð¥ð│ð¥ ð¢ðÁÐëð░, Ðü ð║ð¥ð©Ðéð¥ ð╝ð¥ðÂðÁÐéðÁ ð┤ð░ ð┐ð¥ð┤ð¥ð▒ÐÇð©ÐéðÁ Ðéð¥ð▓ð░. ðùð░Ðëð¥ ð┤ð░ ð¢ðÁ Ðâð▓ðÁð╗ð©Ðçð©ÐéðÁ ÐÇð░ðÀð╝ðÁÐÇð░ ð¢ð░ ð¢ð©ð▓ð¥Ðéð¥ ð© ð┤ð░ ð┐ð¥ðÀð▓ð¥ð╗ð©ÐéðÁ ð¢ð░ ð║ð░ð╝ðÁÐÇð░Ðéð░ ð┤ð░ ÐüðÁ ð┤ð▓ð©ðÂð©? ð£ð¥ðÂðÁÐéðÁ ð┤ð░ ð┤ð¥ð▒ð░ð▓ð©ÐéðÁ ÐÇð░ðÀð╗ð©Ðçð¢ð© ð▓ð©ð┤ð¥ð▓ðÁ ð▓ÐÇð░ð│ð¥ð▓ðÁ, ÐüÐèð▒ð©ÐÇð░ðÁð╝ð© ð┐ÐÇðÁð┤ð╝ðÁÐéð© Ðü ÐÇð░ðÀð╗ð©Ðçð¢ð© ÐüÐéð¥ð╣ð¢ð¥ÐüÐéð© ð©ð╗ð© ð┤ð░ ð┤ð░ð┤ðÁÐéðÁ ð¢ð░ ð©ð│ÐÇð░Ðçð░ Ðéð¥Ðçð║ð© ðÂð©ð▓ð¥Ðé.
ðÉ ðÀð░ ÐüÐéð©ð╗ ð¢ð░ ð©ð│ÐÇð░ ð▒ðÁðÀ ð¢ð░Ðüð©ð╗ð©ðÁ, ð╝ð¥ðÂðÁÐéðÁ ð┐ÐÇð¥ÐüÐéð¥ ð┤ð░ ð┐ÐÇðÁð┤ð©ðÀð▓ð©ð║ð░ÐéðÁ ð©ð│ÐÇð░Ðçð░ ð┤ð░ ÐüÐèð▒ðÁÐÇðÁ ðÀð▓ðÁðÀð┤ð©ÐéðÁ ð▓ÐèðÀð╝ð¥ðÂð¢ð¥ ð¢ð░ð╣-ð▒ÐèÐÇðÀð¥.
With the help of what you have learned in this tutorial and the hundreds of examples available to you, you should now have a solid foundation for a future project. But as always if you have questions, need advice or want to share what you've been working on then feel free to ask for help in the Phaser forum. ðí ð┐ð¥ð╝ð¥ÐëÐéð░ ð¢ð░ Ðéð¥ð▓ð░, ð║ð¥ðÁÐéð¥ ð¢ð░ÐâÐçð©ÐàÐéðÁ ð▓ Ðéð¥ðÀð© ÐâÐÇð¥ð║, ð© ÐüÐéð¥Ðéð©Ðåð©ÐéðÁ ð┐ÐÇð©ð╝ðÁÐÇð©, ð║ð¥ð©Ðéð¥ ð╝ð¥ðÂðÁÐéðÁ ð┤ð░ ð©ðÀð┐ð¥ð╗ðÀð▓ð░ÐéðÁ, ð▓ðÁÐçðÁ ÐéÐÇÐÅð▒ð▓ð░ ð┤ð░ ð©ð╝ð░ÐéðÁ ð┤ð¥ð▒ÐÇð░ ð¥Ðüð¢ð¥ð▓ð░ ðÀð░ ð▒Ðèð┤ðÁÐë ð┐ÐÇð¥ðÁð║Ðé. ðÉð║ð¥ ð©ð╝ð░ÐéðÁ ð▓Ðèð┐ÐÇð¥Ðüð©, ð¢ÐâðÂð┤ð░ ð¥Ðé ð┐ð¥ð╝ð¥Ðë ð©ð╗ð© ð░ð║ð¥ ð©Ðüð║ð░ÐéðÁ ð┤ð░ Ðüð┐ð¥ð┤ðÁð╗ð© Ðéð¥ð▓ð░, ð▓ÐèÐÇÐàÐâ ð║ð¥ðÁÐéð¥ ÐÇð░ð▒ð¥Ðéð©ÐéðÁ, ð▓ð©ð¢ð░ð│ð© ð╝ð¥ðÂðÁÐéðÁ ð┤ð░ ð┐ð¥ð┐ð©Ðéð░ÐéðÁ ð▓Ðèð▓ Ðäð¥ÐÇÐâð╝ð░ ð¢ð░ Phaser.
Facebook Instant Games
Phaser 3 ð©ð╝ð░ ð┐Ðèð╗ð¢ð░ ð┐ð¥ð┤ð┤ÐÇÐèðÂð║ð░ ðÀð░ ÐüÐèðÀð┤ð░ð▓ð░ð¢ðÁ ð¢ð░ ð©ð│ÐÇð© ÐçÐÇðÁðÀ ð┐ð╗ð░ÐéÐäð¥ÐÇð╝ð░Ðéð░ Facebook Instant Games. ðíð╗ðÁð┤ ð║ð░Ðéð¥ ð▓ðÁÐçðÁ ð╝ð¥ðÂðÁÐéðÁ ð┤ð░ ÐüÐèðÀð┤ð░ð┤ðÁÐéðÁ ð©ð│ÐÇð░ Ðü Phaser, ðÀð░Ðëð¥ ð¢ðÁ ð▓ð©ð┤ð©ÐéðÁ ð║ð¥ð╗ð║ð¥ ðÁ ð╗ðÁÐüð¢ð¥ ð┤ð░ ÐüðÁ ð▓ÐèðÀð┐ð¥ð╗ðÀð▓ð░ÐéðÁ ð¥Ðé ð¢ðÁÐÅ?