Створення платформера в gamemaker - створення ігор - каталог статей

Створення платформера в GM

Ви ознайомилися з Game Maker, тепер обов'язково вивчіть хоча б основи GML. Хоча нижче описаний приклад platf_primer.gm6 буде використаний переважно на кнопках (тригерах).

Платформери - це, мабуть, один з найпоширеніших жанрів в приставках Dendy, Sega і просто в іграх на комп'ютери. Суть його полягає в тому, що ви ходите як би по «платформ» і після стрибка, гравітація притягує вас назад до «платформі». Часто вам доведеться стрибати з однієї «платформи» на іншу. Взагалі жанр платформер дуже великий, це можуть бути і 2D-шутери з кривавою різаниною, або просто розвеселі платформери зразок Соника або Tiny Toon.

Для кращого розуміння створення платформера, до статті додається приклад платформера platf_primer.gm6.

Почнемо зі створення персонажа. Створюємо об'єкт, називаємо наприклад obj_player. Задаємо йому руху в різні боки. У кнопці Left перевіряємо зіткнення об'єкта, як це показано в прикладі, і власне зміщення персонажа по осі x на координати -4. Теж саме і Right, тільки координати +4. І не забуваємо про зміну спрайтів. Червоним шрифтом на малюнках відзначені мої текстові пояснення дій.

ПРИМІТКА: ЯКЩО НА МАЛЮНКАХ ДЛЯ КООРДИНАТ ВКАЗАНІ ЗНАКИ + АБО -. ЦЕ ОЗНАЧАЄ ЩО ПРИ СТВОРЕННІ ДІЇ ПОТРІБНО поставити галочку НА RELATIVE.

Створення платформера в gamemaker - створення ігор - каталог статей

Тепер персонаж ходить вліво і вправо. Мабуть, найважливіше в цих іграх це гравітація, і природно потрібні платформи. Створюємо ще один об'єкт, назвемо його obj_platform - це будуть наші майбутні платформи описані вище. Обов'язково ставимо галочку Solid (твердий) в obj_platform.

Переходимо знову до obj_player. У Step ставимо умови, що показуються на скріншоті і в прикладі:

Створення платформера в gamemaker - створення ігор - каталог статей

Тут так само пояснюються всі кнопки, для чого вони, і що вони дають. Я просто хочу, щоб не бездумно взяли мій приклад платформера, і просто вставили свої спрайт. Я хочу, щоб ви зрозуміли, як це все працює.

Створення платформера в gamemaker - створення ігор - каталог статей

Змінна, відображена зліва, допоможе вам обмежити швидкість падіння до 12 максимум. Це допоможе вам позбавитися від нескінченного збільшення швидкості падіння.

Тепер важливо зробити стрибок персонажа. Давайте замахнёмся відразу на подвійний стрибок.

Щоб зробити стрибок, нам потрібно впровадити змінну. Давайте назвемо її jump. Вона знадобиться нам для встановлення максимального кількість поштовхів. В умови create створюємо змінну jump = 0. Змінні створюються виділеної червоним кольором кнопкою. Коли ви її перенесете в «Actions», з'явиться меню. Вказуйте там все, як на скріншоті.

Створення платформера в gamemaker - створення ігор - каталог статей

Тепер при створенні персонажа змінна буде дорівнювати нулю.

У Події press (натиснути кнопку вгору) створюємо таке:

Створення платформера в gamemaker - створення ігор - каталог статей

І тепер створюємо ланцюжок дій в тому, що стосується з об'єктом obj_platform.

Створення платформера в gamemaker - створення ігор - каталог статей

В принципі, основний двигун для нашого платформера готовий! Але давайте впровадимо в нього додаткові функції.

Давайте зробимо сходи. Сходи ми зробимо в подіях Step, Up, Down. Створюємо новий об'єкт, і назвемо його obj_ladder.

У Step створюємо такі дії:

Створення платформера в gamemaker - створення ігор - каталог статей

В Up, створюємо наступне ...

Створення платформера в gamemaker - створення ігор - каталог статей

У Down створюємо те ж саме, що і в Up, але координату y = -4, треба замінити на y = + 4

Створюємо об'єкт ворога. Назвемо obj_enemy. Ворогам в подію Create створюємо дію, вказане на малюнку, і ставимо в ньому все як вказано на скріншоті.

Створення платформера в gamemaker - створення ігор - каталог статей

Ще нам знадобиться об'єкт obj_rotate і зробити його невидимим (прибрати галочку Visible).

У ворога створюємо подія зіткнення з obj_rotate і вставляємо наступне дію:

При торканні до цього об'єкта, ворог буде міняти свій напрямок, і йти у зворотний бік. Тобто так ми встановлюємо області патрулювання ворогів.

Щоб вороги могли «вбивати» персонажа, потрібно зробити систему життів і здоров'я. В Game Maker така система вже вбудована.

У події Step створюємо наступне:

Створення платформера в gamemaker - створення ігор - каталог статей

І в подію зіткнення з obj_enemy:

Тепер при торканні до ворога, у вас буде відніматися одне життя.

Теж саме, як і ворога, робимо багнети, тільки вони не рухаються. При торканні до них ставимо:

- тобто -1 здоров'я. І при торканні до багнетів, буде зменшуватися здоров'я.

Коли здоров'я буде менше одного, віднімається одне життя.

Ось уже можна зробити непоганий платформер. Йдемо в кімнату і робимо рівень. Розставляємо блоки, персонажа, ворогів та інше ...

Давайте зробимо, щоб наш платформер був не просто на одній картинці, а був великий рівень, і камера стежила за персонажем. Для цього в кімнаті у вкладці views (види) робимо наступне:

Hbor і Vbor потрібно міняти. Це координати x і y при досягненні яких, камера буде рухатися. Наприклад, про людське око розміром 640х480 можна поставити Hbor: 320; Vbor: 240. Тоді камера буде стежити чітко по центру за персонажем.

Схожі статті