Az Econ haver alapja a lövöldözős játékok készítésének, mint a lövés és a golyók készítése a játékkészítő stúdióban 2
Folytatjuk a leckék sorozatát - a játékok készítésének alapjait. Ma megnézzük, hogyan lehet a legegyszerűbb lövés mechanika - hogyan készítsünk egy lövést.
Fokozatosan forduljunk a Game Maker Studio 2-hez, így ott megyünk, bár a különbség minimális.
Hogy a lecke nem volt túl egyszerű, kipróbálnánk a lövések nagyon eltérő verzióit, egy lövésből megnyomva, lövedékbe és egy lövésbe a vereség területével.
Hogyan történik ez például a játék krimsonlandban, ha a GMS2-ben történt?
Valójában szükségünk van egy szobára és 3 tárgyra - hősre, golyóra és ellenségre. Hát, megpróbál rájuk.
Ha rákattint a bal egérgombbal (globálisan).
Általában elég van ennek:
instance_create_depth (x, y, 0, obj_bullet) A többi már a blokk (hogy ne jöhessen létre egy csomó golyót egyszerre), és az alsó 2 riasztás, csak én megtettem mindent. Még nincs szükség.
A golyó létrehozásakor az egérmutató mozgás kódja:
move_towards_point (mouse_x, mouse_y, 50) -50 + random (100) terjed, amikor begyullad, ha szüksége van egy, akkor megteheti itt.
50 a golyó sebessége. Nagyon gyors, általában 15-30-at teszek ki, attól függően, hogy milyen típusú fegyver és játék (ez az FPS-től függ).
Hogyan lehet elpusztítani az ellenséget egy golyó érintéséig? Ha elég egyszerű:
Itt az ellenség és a golyó meghal. Bullet sem feledkezett ölni, különben nem fog repülni, és megsemmisíti az összes ellenséget (ami néha szükséges, de ha a kárt kell számítani sokszor, hogy ezt, ha van CP rendszer és a kár).
instance_destroy (önmagában)
instance_destroy (egyéb) Igen ez az! Így készült a felvétel.
- A hős létrehoz egy golyót, amikor rákattint az egérre (vagy bárhol is akarod)
- A golyó repül az egér (vagy bárhol, ahol akarja)
- A golyó megöli az ellenséget, vagy kárt okoz neki.
Hogyan lehet károkat és a HP rendszert? Egy kissé eltérő téma, de ha egyszerűen történik:
Az ellenség létrehozásában: hp = 100
Például: páncél = 5
Amikor ütközés (ütközés) golyók és az ellenség:
Az egyik módja. Ebben az esetben a kár keletkezését a medencében kell regisztrálni. Ez globális változóval (global.damage) tehető, és a készség, repülés távolsága, fegyverei és bármi alapján határozza meg a károkat.
Lásd a Lonely Dude forráskódját. a távolságtól függően akár károkat is okozhat.
Károsítsa a 10-et és az 5-ös páncélt, majd 5 sebzést szenved.
Hogyan kell ölni? Ott, a golyók ütközésében és az ellenségben azt írjuk:
instance_destroy (önmagad) // mi is elfelejtjük megölni a golyót más.hp- = self.damage-other.armor
ha más.hp<=0 then instance_destroy(other)
Itt, bár ez egy kissé más téma.
Hogyan lehet golyót repülni ostoba módon, például felfelé?
Golyó létrehozásakor írj vspeed- = 10 (Vagy egy másik számot / változót)