Четверг, 14 декабря 2017, 21:55

Приветствую Вас Гость

Меню сайта
Категории каталога
Создание игр [307]
Статьи об общих понятиях связанных с созданием игр.
Программирование [69]
Гайды по программированию на разных ЯП.
Движки и Гейммейкеры [123]
Статьи о программах для создания игр, уроки и описания.
Софт [27]
Различные программы, в том числе в помощь игроделам.
2D-графика [11]
Уроки по рисованию, растр, пиксель-арт, создание спрайтов и пр.
3D-графика [10]
Уроки по моделированию, ландшафт, модели, текстурирование и пр.
Моддинг игр [4]
Модификация компьютерных игр, создание дополнений, перевод, хакинг.
Игры [70]
Статьи об играх, в том числе и сделанных на гейммейкерах.
Разное [58]
Статьи, которые не вошли в определённые разделы.
Наш опрос
Какой ЯП вы знаете?
Всего ответов: 27084
Главная » Статьи » Создание игр

Делаем платформер в GameMaker
Я решил написать статью из-за этой статьи. Она меня, мягко говоря, убила. Ну, пожалуй начнем. Прежде всего, создадим объект игрока и в событие Create напишем следующий код:
Код

gravity=0.8
hp=100
shot=false
rot=0
//Тут мы объявили переменные, что они значат я объясню позже

В step:
Код
if keyboard_check(ord('A'));//Если клавиша нажата (буква(A));
{x-=4}//Текущее положение x уменьшаем на 4
if keyboard_check(ord('D'))
{x+=4}//То же самое, что и вверху, только в другую сторону
rot=point_direction(x,y,mouse_x,mouse_y);//Переменная rot будет зависить от поворота мыши
image_angle=rot//спрайт игрока будет поворачиваться вслед за мышкой
if mouse_check_button(mb_left);//если нажата ЛКМ
{with instance_create(x,y,bullet);//С созданной пулей
{motion_set(other.rot,40);image_angle=direction}//Задать движение(переменная rot объекта игрока, скорость повернуть спрайт так, чтобы он был повернут по-направлению, куда летит объект
if place_free(x,y+1);//если под ногами пусто
{gravity=0.8}//включаем гравитацию
else//если под ногами что-то есть
{gravity=0}//выключаем.
if hp=0
{instance_destroy()}

Создали мы стрельбу, ходьбу. Перейдем к рисованию.
В событии Draw пишем следующий код:
Код

draw_healthbar(x,y,x+200,y+40,hp,c_black,c_red,c_green,1,1,1);//нарисовать хеалтхбар(полоску жизней);.
draw_sprite(sprite_index,image_index,x,y)

Ну..., с игроком вроде бы завершили. Перейдем к объекту пули, платформам и врагам.
Создадим объект блока. Слева поставьте галочку над "Solid"
Переходим обратно к игроку и создаем событие столкновения с объектом блока. Там пишем:
Код

vspeed=0//Вертикальная скорость равна 0

А теперь создадим объект пули, назовем его bullet.
В объекте bullet, напишите следующий код:
Код

image_angle=direction

И в этом же объекте, создайте событие столкновения с блоком.
Там пропишите:
Код

instance_destroy()//Самоуничтожение

Теперь создадим объект врага. Который будет слепо идти за игроком :)
В create пишем:
Код

hp=100
way=0

В step:
Код

if instance_exists(player);//Если объект игрока существует в комнате
{way=point_direction(x,y,player.x,player.y);//Переменная way равна направлению игрока относительно первоначальной позиции
motion_set(way,10);}//Задаем движение в сторону игрока
if hp=0
{instance_destroy()}

Создаем событие столкновения с игроком
Код

with player//обращаемся к игроку
{hp-=1}//отнимаем 1 единицу здоровья

И создаем событие столкновения с пулей
Код

hp-=irandom_range(10,40);//Отнимаем рандомное кол-во здоровья.

Извините, что без скринов.
Если будут вопросы по GameMaker, то обращайтесь, всегда рад вам помочь!
https://vk.com/mrslendyman
Категория: Создание игр | Добавил: Slendyman (04 августа 2017)
Просмотров: 950 | Комментарии: 4 | Рейтинг: 3.0/7 |
Теги: Код, платформер, Как сделать, GM, Делаем платформер, GML, Сделать игры, gamemaker, 2d платформер
Дополнительные опции:
Также если вы считаете, что данный материал мог быть интересен и полезен кому-то из ваших друзей, то вы бы могли посоветовать его, отправив сообщение на e-mail друга:

Игровые объявления и предложения:
Если вас заинтересовал материал «Делаем платформер в GameMaker», и вы бы хотели прочесть что-то на эту же тему, то вы можете воспользоваться списком схожих материалов ниже. Данный список сформирован автоматически по тематическим меткам раздела. Предлагаются такие схожие материалы: Если вы ведёте свой блог, микроблог, либо участвуете в какой-то популярной социальной сети, то вы можете быстро поделиться данной заметкой со своими друзьями и посетителями.

Всего комментариев: 4
+1-
2 zuzumin   (23 августа 2017 12:08)
zuzuminЗа то что скринов нет - не извиним - это косяк!

+0-
3 Slendyman   (30 августа 2017 13:01)
SlendymanНу, войдите в положение :)

+0-
1 DyenBade   (19 августа 2017 07:49)
DyenBadeКлассика

+0-
4 Slendyman   (30 августа 2017 13:02)
SlendymanНу да. Но есть что почитать. Нью фагам в гейм мейкере подойдет. Возможно, потом что-нибудь по сложнее реализуем.

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Поиск по сайту
10 случ. движков
  • Spaceport
  • Adventure Maker
  • PointJS
  • Xenko
  • Dark BASIC
  • lifeEngine
  • WindMill
  • BlitzMax
  • NaaLaa
  • Dreemchest
  • Друзья сайта
    Игровой форум GFAQ.ru Перевод консольных игр
    GameDev, Уроки OpenGL, Программирование, Создать Minecraft
    Все права сохранены. GcUp.ru © 2008-2017 Рейтинг