Do funkcie create sme pridali kód, ktorÛ si zaslúŝi detailnejšie vysvetlenie. Začneme touto časťou:
platforms = this.physics.add.staticGroup();
T├¢mto sp├┤sobom vytv├írame nov├║ skupinu statick├¢ch telies a prira─Åujeme ju do premennej platforms. V ark├ídovej fyzike m├íme dva typy telies: dynamick├® a statick├®. Dynamick├® teles├í sa pohybuj├║ v─Åaka r├¢chlosti a zr├¢chleniu. Odr├í┼¥aj├║ sa a zr├í┼¥aj├║ sa s in├¢mi telesami intenzitou, ktor├í z├ívis├¡ od ich hmotnosti a je ovplyvnen├í aj ─Åal┼í├¡mi parametrami.
Statick├® teles├í maj├║ len poz├¡ciu a ve─¥kos┼Ñ. Nereaguj├║ na gravit├íciu, ned├í sa im nastavi┼Ñ r├¢chlos┼Ñ a ke─Å do nich nie─ìo naraz├¡, tak sa nepohn├║. S├║ presne tak├®, ako hovor├¡ ich n├ízov. S├║ vhodn├® na ter├®n a plo┼íinky, po ktor├¢ch nech├íme pobehova┼Ñ n├í┼ího hr├í─ìa.
Zost├íva n├ím ot├ízka, ─ìo je to skupina? Ako u┼¥ nazna─ìuje samotn├¢ n├ízov, skupina zdru┼¥uje podobn├® objekty, ktor├® sa daj├║ ovl├ída┼Ñ ako jeden celok. Dokonce je mo┼¥n├® testova┼Ñ kol├¡zie mezi skupinami a ostatn├¢mi hern├¢mi objektmi. Skupiny s├║ schopn├® vytv├íra┼Ñ vlastn├® hern├® objekty pomocou fukcie ako je create. Fyzik├ílna skupina automaticky vytv├íra potomkov s aktivovanou fyzikou, ─ì├¡m n├ím u┼íetr├¡ n├ímahu.
Skupinu pre plošinky môŝeme teraz vyuŝiť na vytvorenie jednotlivÛch plošiniek:
platforms.create(400, 568, 'ground').setScale(2).refreshBody();
platforms.create(600, 400, 'ground');
platforms.create(50, 250, 'ground');
platforms.create(750, 220, 'ground');
Ako sme u┼¥ predt├¢m videli, vytvor├¡me tak t├║to sc├®nu:

Počas prednahrávania sme naimportovali obrázok 'ground'. Tento jednoduchÛ zelenÛ obdĺŝnik, s rozmermi 400 x 32 pixelov, nám poslúŝi ako základ pre plošinky:

Prv├¢ riadok k├│du umiest┼êuje obr├ízok ter├®nu na poz├¡ciu 400 x 568 (vzpome┼ê si, ┼¥e obr├ízky s├║ umiest┼êovan├® na poz├¡ciu svoj├¡m stredom). Potrebujeme, aby se t├íto plo┼íinka predstavuj├║ca ter├®n roztiahla na cel├║ ┼í├¡rku na┼íej hry, aby nemohol hr├í─ì vypadn├║┼Ñ z obrazovky. Dosiahneme to tak, ┼¥e ju zv├ñ─ì┼í├¡me x2 pomocou funkcie setScale(2). Tak┼¥e teraz m├í ve─¥kos┼Ñ 800 x 64, ─ìo je presne to, ─ìo presne potrebujeme. Volanie refreshBody() je nutn├®, preto┼¥e sme zmenili ve─¥kost statick├®ho fyzik├ílneho telesa a mus├¡me to ozn├ími┼Ñ hernej fyzike.
Ter├®n je zv├ñ─ì┼íen├¢ a na svojom mieste, tak┼¥e je ─ìas na dal┼íie plo┼íinky:
platforms.create(600, 400, 'ground');
platforms.create(50, 250, 'ground');
platforms.create(750, 220, 'ground');
Postup je úplne rovnakÛ ako predtÛm, len nepotrebujeme meniť veĝkosť tÛchto plošiniek, pretoŝe ju uŝ majú správnu.
3 plo┼íinky s├║ umiestnen├® na obrazovke tak, aby hr├í─ì mohol medzi nimi preskakova┼Ñ.
Takŝe prišiel čas, aby sme pridali hráča.