Pr├ív─ø jsme p┼Öidali spoustu k├│du do funkce create, kter├¢ si zaslou┼¥├¡ detailn─øj┼í├¡ vysv─øtlen├¡. Nejd┼Ö├¡ve tato ─ì├íst:
platforms = this.physics.add.staticGroup();
Toto vytv├í┼Ö├¡ novou skupinu t─øles, statick├¢ch z hlediska fyziky (Static Physics Group), a p┼Öi┼Öazuje ji prom─ønn├® platforms. V ark├ídov├® fyzice jsou dva typy t─øles: dynamick├í a statick├í. Dynamick├í t─ølesa se mohou pohybovat a jejich pohyb je mo┼¥n├® ovliv┼êovat p┼»soben├¡m sil, jako je t┼Öeba zrychlen├¡. Mohou se odr├í┼¥et a kolidovat s ostatn├¡mi t─ølesy a jejich reakce na kolize je d├ína jejich hmotnost├¡ a dal┼í├¡mi parametry.
V p┼Ö├¡m├®m kontrastu, statick├í t─ølesa maj├¡ jen pozici a velikost. Nep┼»sob├¡ na n─ø gravitace, nelze jim nastavit rychlost a kdy┼¥ do nich n─øco naraz├¡, tak se nepohnou. Zkr├ítka jsou p┼Öesn─ø tak statick├í, jak se jmenuj├¡. A proto jsou vhodn├í pro podlahu a plo┼íinky, na kter├¢ch nech├íme pob├¡hat hr├í─ìe.
Ale co je skupina (Group)? Jak nazna─ìuje n├ízev, jej├¡m c├¡lem je sdru┼¥ovat podobn├® objekty a ovl├ídat je v┼íechny najednou jako jeden celek. Dokonce je mo┼¥n├® testovat kolize mezi skupinami a ostatn├¡mi hern├¡mi objekty. Skupiny jsou schopn├® vytv├í┼Öet sv├® vlastn├¡ hern├¡ objekty prost┼Öednictv├¡m ┼íikovn├¢ch pomocn├¢ch funkc├¡ jako create. Fyzik├íln├¡ skupina (Physics Group) automaticky vytvo┼Ö├¡ potomky s aktivovanou fyzikou a t├¡m v├ím u┼íet┼Ö├¡ n─øjakou n├ímahu.
Skupinu pro plošinky můŝeme nyní vyuŝít k vytvoření jednotlivÛch plošinek:
platforms.create(400, 568, 'ground').setScale(2).refreshBody();
platforms.create(600, 400, 'ground');
platforms.create(50, 250, 'ground');
platforms.create(750, 220, 'ground');
Jak jsme u┼¥ d┼Ö├¡ve vid─øli, vytv├í┼Ö├¡ to tuto sc├®nu:

B─øhem nahr├ív├ín├¡ obr├ízk┼» jsme naimportovali obr├ízek 'ground'. To je jednoduch├¢ zelen├¢ obd├®ln├¡k s rozm─øry 400 x 32 pixel┼», kter├¢ n├ím poslou┼¥├¡ jako z├íklad pro plo┼íinky:

Prvn├¡ ┼Ö├ídek k├│du v├¢┼íe p┼Öid├ív├í obr├ízek pro podlahu na pozici 400 x 568 (vzpome┼ête si, ┼¥e obr├ízky jsou um├¡s┼Ñovan├® na pozici sv├¢m st┼Öedem). Probl├®m je, ┼¥e pot┼Öebujeme, aby se tato plo┼íinka p┼Öedstavuj├¡c├¡ podlahu rozt├íhla na celou ┼í├¡┼Öku na┼í├¡ hry, jinak by hr├í─ì na kraj├¡ch mohl spadnout dol┼». Doc├¡l├¡me toho t├¡m, ┼¥e ji zv─øt┼í├¡me x2 pomoc├¡ funkce setScale(2). Tak┼¥e nyn├¡ m├í velikost 800 x 64, co┼¥ p┼Öesn─ø pot┼Öebujeme. Vol├ín├¡ refreshBody() je nutn├®, proto┼¥e jsme zm─ønili velikost statick├®ho fyzik├íln├¡ho t─ølesa a mus├¡me hern├¡ fyzice, spravuj├¡c├¡ fyzik├íln├¡ sv─øt hry, tuto zm─ønu ozn├ímit.
Podlaha je zv─øt┼íena a na m├¡st─ø, tak┼¥e je ─ìas na dal┼í├¡ plo┼íinky:
platforms.create(600, 400, 'ground');
platforms.create(50, 250, 'ground');
platforms.create(750, 220, 'ground');
Postup je ├║pln─ø stejn├¢ jako p┼Öedt├¡m, jen nepot┼Öebujeme u t─øchto plo┼íinek m─ønit velikost, proto┼¥e n├ím st├ívaj├¡c├¡ vyhovuje.
3 plo┼íinky jsou um├¡st─øn├® na obrazovce v dobr├¢ch vzd├ílenostech tak, aby na n─ø mohl hr├í─ì sko─ìit.
Takŝe, přidejme hráče.