ðÆÐÇðÁð╝ðÁ ðÁ ð┤ð░ ð┤ð░ð┤ðÁð╝ ð┐ÐÇðÁð┤ð¢ð░ðÀð¢ð░ÐçðÁð¢ð©ðÁ ð¢ð░ ð╝ð░ð╗ð║ð░Ðéð░ ð¢ð© ð©ð│ÐÇð░. ð®ðÁ ð┐ð¥ÐÇÐèÐüð©ð╝ ð¢ÐÅð║ð¥ð╗ð║ð¥ ðÀð▓ðÁðÀð┤ð© ð▓ÐèÐÇÐàÐâ ÐüÐåðÁð¢ð░Ðéð░ ð© ÐëðÁ ð┤ð░ð┤ðÁð╝ ð¢ð░ ð©ð│ÐÇð░Ðçð░ ð┤ð░ ð│ð© ÐüÐèð▒ð©ÐÇð░. ðùð░ ð┤ð░ ð┐ð¥ÐüÐéð©ð│ð¢ðÁð╝ Ðéð¥ð▓ð░, ÐëðÁ ÐüÐèðÀð┤ð░ð┤ðÁð¢ ð¢ð¥ð▓ð░ ð│ÐÇÐâð┐ð░ ð¢ð░ ð©ð╝ðÁ stars ð© ÐëðÁ ð┤ð¥ð▒ð░ð▓ð©ð╝ ðÀð▓ðÁðÀð┤ð©ÐéðÁ ð▓ ð¢ðÁÐÅ. ðÆÐèð▓ ÐäÐâð¢ð║Ðåð©ÐÅÐéð░ create ÐëðÁ ð┤ð¥ð▒ð░ð▓ð©ð╝ Ðüð╗ðÁð┤ð¢ð©ÐÅ ð║ð¥ð┤, ð║ð¥ð╣Ðéð¥ ð╝ð¥ðÂðÁÐéðÁ ð┤ð░ ð▓ð©ð┤ð©ÐéðÁ ð© ð▓ part8.html:

stars = this.physics.add.group({
    key: 'star',
    repeat: 11,
    setXY: { x: 12, y: 0, stepX: 70 }
});

stars.children.iterate(function (child) {

    child.setBounceY(Phaser.Math.FloatBetween(0.4, 0.8));

});

ðƒÐÇð¥ÐåðÁÐüÐèÐé ðÁ ð┐ð¥ð┤ð¥ð▒ðÁð¢ ð¢ð░ Ðéð¥ðÀð©, Ðü ð║ð¥ð╣Ðéð¥ ÐüÐèðÀð┤ð░ð┤ð¥Ðàð╝ðÁ ð│ÐÇÐâð┐ð░Ðéð░ ð¢ð░ ð┐ð╗ð░ÐéÐäð¥ÐÇð╝ð©ÐéðÁ. ðƒð¥ð¢ðÁðÂðÁ ðÀð▓ðÁðÀð┤ð©ÐéðÁ ÐëðÁ ÐéÐÇÐÅð▒ð▓ð░ ð┤ð░ ÐüðÁ ð┤ð▓ð©ðÂð░Ðé ð© ð┤ð░ ð┐ð¥ð┤Ðüð║ð░Ðçð░Ðé, ÐüÐèðÀð┤ð░ð▓ð░ð╝ðÁ ð┤ð©ð¢ð░ð╝ð©Ðçð¢ð░ Ðäð©ðÀð©Ðçð¢ð░ ð│ÐÇÐâð┐ð░, ð░ ð¢ðÁ ÐüÐéð░Ðéð©Ðçð¢ð░.

ðôÐÇÐâð┐ð©ÐéðÁ ð╝ð¥ð│ð░Ðé ð┤ð░ ð┐ð¥ð╗ÐâÐçð░Ðé ð║ð¥ð¢Ðäð©ð│ÐâÐÇð░Ðåð©ð¥ð¢ð¢ð© ð¥ð▒ðÁð║Ðéð©, ð║ð¥ð©Ðéð¥ ð¢ð© ð┐ð¥ð╝ð░ð│ð░Ðé ð▓ ÐéÐÅÐàð¢ð¥Ðéð¥ ÐüÐèðÀð┤ð░ð▓ð░ð¢ðÁ. ðÆ Ðéð¥ðÀð© Ðüð╗ÐâÐçð░ð╣, ð¥ð▒ðÁð║ÐéÐèÐé ðÀð░ ð║ð¥ð¢Ðäð©ð│ÐâÐÇð░Ðåð©ÐÅ ð¢ð░ ð│ÐÇÐâð┐ð░Ðéð░ ð©ð╝ð░ 3 Ðçð░ÐüÐéð©. ðƒÐèÐÇð▓ð¥, ð║ð╗ÐÄÐçÐèÐé ðÀð░ ÐéðÁð║ÐüÐéÐâÐÇð░Ðéð░ ðÁ ðÀð░ð┤ðÁð┤ðÁð¢ ð¢ð░ ð©ðÀð¥ð▒ÐÇð░ðÂðÁð¢ð©ðÁÐéð¥ ÐüÐèÐü ðÀð▓ðÁðÀð┤ð░Ðéð░, star. ðóð¥ð▓ð░ ð¥ðÀð¢ð░Ðçð░ð▓ð░, ÐçðÁ ð▓Ðüð©Ðçð║ð© ð¥ð▒ðÁð║Ðéð©, ÐüÐèðÀð┤ð░ð┤ðÁð¢ð© ÐçÐÇðÁðÀ ð║ð¥ð¢Ðäð©ð│ÐâÐÇð░Ðåð©ð¥ð¢ð¢ð©ÐÅ ð¥ð▒ðÁð║Ðé, ÐëðÁ ð©ðÀð┐ð¥ð╗ðÀð▓ð░Ðé Ðéð¥ð▓ð░ ð©ðÀð¥ð▒ÐÇð░ðÂðÁð¢ð©ðÁ. ðíð╗ðÁð┤ Ðéð¥ð▓ð░, ÐüÐéð¥ð╣ð¢ð¥ÐüÐéÐéð░ ð¢ð░ ð┐ð¥ð▓Ðéð¥ÐÇðÁð¢ð©ðÁÐéð¥, repeat, ðÁ ð┐ÐÇð¥ð╝ðÁð¢ðÁð¢ð░ ð¢ð░ 11. ðƒð¥ð¢ðÁðÂðÁ ðÁð┤ð©ð¢ ð¥ð▒ðÁð║Ðé ÐüðÁ ÐüÐèðÀð┤ð░ð▓ð░ ð░ð▓Ðéð¥ð╝ð░Ðéð©Ðçð¢ð¥, ð┐ð¥ð▓Ðéð░ÐÇÐÅð¢ðÁÐéð¥ ð¥ÐëðÁ 11 ð┐ÐèÐéð© ÐëðÁ ÐüÐèðÀð┤ð░ð┤ðÁ ð¥ð▒Ðëð¥ 12 ð¥ð▒ðÁð║Ðéð░.

ðƒð¥Ðüð╗ðÁð┤ð¢ð░Ðéð░ Ðçð░ÐüÐé ðÁ setXY. ðóÐÅ ð┐ÐÇð¥ð╝ðÁð¢ÐÅ ð┐ð¥ðÀð©Ðåð©ÐÅÐéð░ ð¢ð░ ð┤ð▓ð░ð¢ð░ð╣ÐüðÁÐéÐéðÁ ð¥ð▒ðÁð║Ðéð░ ð¢ð░ ð©ð│ÐÇð░Ðéð░, ð║ð¥ð©Ðéð¥ ð│ÐÇÐâð┐ð░Ðéð░ ÐüÐèðÀð┤ð░ð┤ð░ð▓ð░. ðÆÐüðÁð║ð© ÐëðÁ ð▒Ðèð┤ðÁ ð┐ÐèÐÇð▓ð¥ð¢ð░Ðçð░ð╗ð¢ð¥ Ðüð╗ð¥ðÂðÁð¢ ð¢ð░ (12; 0), ð║ð░Ðéð¥ Ðàð¥ÐÇð©ðÀð¥ð¢Ðéð░ð╗ð¢ð░Ðéð░ ð┐ð¥ðÀð©Ðåð©ÐÅ ÐëðÁ ð▒Ðèð┤ðÁ Ðâð▓ðÁð╗ð©ÐçðÁð¢ð░ ÐüÐèÐü 70 ðÀð░ ð▓ÐüðÁð║ð© ð¥ð▒ðÁð║Ðé. ðóð¥ðÁÐüÐé, ð┐ÐèÐÇð▓ð░Ðéð░ ðÀð▓ðÁðÀð┤ð░ ÐëðÁ ÐüðÁ ð¢ð░ð╝ð©ÐÇð░ ð¢ð░ (12; 0), ð▓Ðéð¥ÐÇð░Ðéð░ ÐëðÁ ÐüðÁ ð¢ð░ð╝ð©ÐÇð░ 70 ð┐ð©ð║ÐüðÁð╗ð░ ð▓ð┤ÐÅÐüð¢ð¥ - ð¢ð░ (82; 0), ÐéÐÇðÁÐéð░Ðéð░ - ð¢ð░ (152; 0) ð© Ðéð░ð║ð░ ð¢ð░Ðéð░ÐéÐèð║. ðíÐéð¥ð╣ð¢ð¥ÐüÐéð©ÐéðÁ step Ðüð░ ð╝ð¢ð¥ð│ð¥ ð┐ð¥ð╗ðÁðÀðÁð¢ ð¢ð░Ðçð©ð¢ ðÀð░ ÐÇð░ðÀð┐ð¥ð╗ð¥ðÂðÁð¢ð©ðÁÐéð¥ ð¢ð░ ð¥ð▒ðÁð║Ðéð©ÐéðÁ ð▓ ðÁð┤ð¢ð░ ð│ÐÇÐâð┐ð░ ð┐ð¥ ð▓ÐÇðÁð╝ðÁ ð¢ð░ ÐüÐèðÀð┤ð░ð▓ð░ð¢ðÁÐéð¥ ÐØ. ðíÐéð¥ð╣ð¢ð¥ÐüÐéÐéð░ 70 ðÁ Ðüð┐ðÁÐåð©ð░ð╗ð¢ð¥ ð©ðÀð▒ÐÇð░ð¢ð░, ðÀð░Ðëð¥Ðéð¥ Ðü ð¢ðÁÐÅ ðÀð▓ðÁðÀð┤ð©ÐéðÁ ÐëðÁ ð▒Ðèð┤ð░Ðé ð¢ð░ ÐÇð░ð▓ð¢ð© ÐÇð░ðÀÐüÐéð¥ÐÅð¢ð©ÐÅ ð©ðÀ ðÁð║ÐÇð░ð¢ð░.

ðíð╗ðÁð┤ð▓ð░Ðëð©ÐÅÐé ð║ð¥ð┤ ð©ÐéðÁÐÇð©ÐÇð░ ð▓ÐüðÁð║ð© ð¥ð▒ðÁð║Ðé ð▓ ð│ÐÇÐâð┐ð░Ðéð░ ð© ð╝Ðâ ð┤ð░ð▓ð░ Ðüð╗ÐâÐçð░ðÁð¢ ð▓ðÁÐÇÐéð©ð║ð░ð╗ðÁð¢ ð¥ÐéÐüð║ð¥ð║ ð╝ðÁðÂð┤Ðâ 0,4 ð© 0,8. ðƒð¥ ð┐ÐÇð©ð¢Ðåð©ð┐, Ðéð░ðÀð© ÐüÐéð¥ð╣ð¢ð¥ÐüÐé ð╝ð¥ðÂðÁ ð┤ð░ ðÁ ð╝ðÁðÂð┤Ðâ 0 (ð▒ðÁðÀ ð¥ÐéÐüð║ð¥ð║) ð© 1 (ð┐Ðèð╗ðÁð¢ ð¥ÐéÐüð║ð¥ð║). ðÆÐüÐÅð║ð░ ðÀð▓ðÁðÀð┤ð░ ÐüðÁ ÐüÐèðÀð┤ð░ð▓ð░ ð¢ð░ ð▓ðÁÐÇÐéð©ð║ð░ð╗ð¢ð░ ð┐ð¥ðÀð©Ðåð©ÐÅ 0 ð© ð│ÐÇð░ð▓ð©Ðéð░Ðåð©ÐÅÐéð░ ÐëðÁ ÐÅ ð©ðÀð┤ÐèÐÇð┐ð░ ð¢ð░ð┤ð¥ð╗Ðâ, ð┤ð¥ð║ð░Ðéð¥ ð¢ðÁ ð┤ð¥ÐüÐéð©ð│ð¢ðÁ ð┐ð╗ð░ÐéÐäð¥ÐÇð╝ð░ ð©ð╗ð© ðÀðÁð╝ÐÅÐéð░. ðíð╗ÐâÐçð░ð╣ð¢ð░Ðéð░ ÐüÐéð¥ð╣ð¢ð¥ÐüÐé ðÀð░ ð¥ÐéÐüð║ð¥ð║ ÐëðÁ ÐÅ ð¢ð░ð║ð░ÐÇð░ ð┤ð░ ÐüðÁ ð▓ÐèÐÇð¢ðÁ ð¢ð░ð│ð¥ÐÇðÁ - ð© Ðéð░ð║ð░ ð┤ð¥ ð┤ð¥ÐüÐéð©ð│ð░ð¢ðÁ ð¢ð░ ð┐ð¥ð║ð¥ð╣.

ðÉð║ð¥ ð©ðÀð┐Ðèð╗ð¢ð©ð╝ ð║ð¥ð┤ð░ ð▓ ÐüðÁð│ð░Ðêð¢ð©ÐÅ ð╝Ðâ ð▓ð©ð┤, ðÀð▓ðÁðÀð┤ð©ÐéðÁ ÐëðÁ ð┐ð░ð┤ð¢ð░Ðé ð┐ÐÇðÁðÀ ðÀðÁð╝ÐÅÐéð░ ð© ð©ðÀð▓Ðèð¢ ðÁð║ÐÇð░ð¢ð░. ðùð░ ð┤ð░ ð┐ÐÇðÁð┤ð¥Ðéð▓ÐÇð░Ðéð©ð╝ Ðéð¥ð▓ð░, ð¢ð©ðÁ ÐéÐÇÐÅð▒ð▓ð░ ð┤ð░ ð┐ÐÇð¥ð▓ðÁÐÇÐÅð▓ð░ð╝ðÁ ðÀð░ Ðâð┤ð░ÐÇð© Ðü ð┐ð╗ð░ÐéÐäð¥ÐÇð╝ð©ÐéðÁ. ð£ð¥ðÂðÁ ð┤ð░ ð©ðÀð┐ð¥ð╗ðÀð▓ð░ð╝ðÁ ð¥ÐëðÁ ðÁð┤ð©ð¢ ð¥ð▒ðÁð║Ðé Collider:

this.physics.add.collider(stars, platforms);

ð×Ðüð▓ðÁð¢ Ðéð¥ð▓ð░, ÐëðÁ ð┐ÐÇð¥ð▓ðÁÐÇÐÅð▓ð░ð╝ðÁ ð© ð┤ð░ð╗ð© ð©ð│ÐÇð░ÐçÐèÐé ð┤ð¥ð║ð¥Ðüð▓ð░ ðÀð▓ðÁðÀð┤ð░:

this.physics.add.overlap(player, stars, collectStar, null, this);

ðóð¥ð▓ð░ ð║ð░ðÀð▓ð░ ð¢ð░ Phaser ð┤ð░ ð┐ÐÇð¥ð▓ðÁÐÇÐÅð▓ð░ ðÀð░ ð┤ð¥ð┐ð©ÐÇ ð╝ðÁðÂð┤Ðâ ð©ð│ÐÇð░Ðçð░ ð© ð║ð¥ÐÅÐéð¥ ð© ð┤ð░ ðÁ ðÀð▓ðÁðÀð┤ð░. ðƒÐÇð© ð┤ð¥ð┐ð©ÐÇ, ð┤ð▓ð░ð╝ð░Ðéð░ ð¢ÐÅð╝ð░ ð┤ð░ ð▒Ðèð┤ð░Ðé ÐÇð░ðÀð┤ðÁð╗ðÁð¢ð© ðÁð┤ð©ð¢ ð¥Ðé ð┤ÐÇÐâð│, ð░ ÐëðÁ ð▒Ðèð┤ð░Ðé ð┐ð¥ð┤ð░ð┤ðÁð¢ð© ð¢ð░ ÐäÐâð¢ð║Ðåð©ÐÅÐéð░ collectStar:

function collectStar (player, star)
{
    star.disableBody(true, true);
}

ðíÐèð▓ÐüðÁð╝ ð┐ÐÇð¥ÐüÐéð¥ - Ðäð©ðÀð©Ðçð¢ð¥Ðéð¥ ÐéÐÅð╗ð¥ ð¢ð░ ðÀð▓ðÁðÀð┤ð░ ð▒ð©ð▓ð░ ðÀð░ð▒ÐÇð░ð¢ðÁð¢ð¥, ð░ ð¥ð▒ðÁð║ÐéÐèÐé ð¢ð░ ð©ð│ÐÇð░Ðéð░, ð║ð¥ð╣Ðéð¥ ð│ð¥ ð┐ÐÇð©ÐéðÁðÂð░ð▓ð░, ÐüðÁ ð¥Ðéð▒ðÁð╗ÐÅðÀð▓ð░ ð║ð░Ðéð¥ ð¢ðÁð░ð║Ðéð©ð▓ðÁð¢ ð© ð¢ðÁð▓ð©ð┤ð©ð╝. ðÉð║ð¥ ÐüðÁð│ð░ ð┐ÐâÐüð¢ðÁð╝ ð©ð│ÐÇð░Ðéð░, ÐëðÁ ð▓ð©ð┤ð©ð╝ ð©ð│ÐÇð░Ðç, ð║ð¥ð╣Ðéð¥ ð╝ð¥ðÂðÁ ð┤ð░ Ðéð©Ðçð░, ð┤ð░ Ðüð║ð░Ðçð░, ð┤ð░ ð¥ÐéÐüð║ð░Ðçð░ ð¥Ðé ð┐ð╗ð░ÐéÐäð¥ÐÇð╝ð© ð© ð┤ð░ ÐüÐèð▒ð©ÐÇð░ ðÀð▓ðÁðÀð┤ð©ÐéðÁ, ð┐ð░ð┤ð░Ðëð© ð¥Ðé ð¢ðÁð▒ðÁÐéð¥. ðØðÁ ðÁ ðÀð╗ðÁ ðÀð░ ð¢ÐÅð║ð¥ð╗ð║ð¥ ÐÇðÁð┤ ÐçðÁÐéð╗ð©ð▓ (ð┐ð¥ð¢ðÁ Ðéð░ð║ð░ ÐüðÁ ð¢ð░ð┤ÐÅð▓ð░ð╝ðÁ!) ð║ð¥ð┤:

image