Я решил написать статью из-за этой статьи. Она меня, мягко говоря, убила. Ну, пожалуй начнем. Прежде всего, создадим объект игрока и в событие 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 пишем следующий код:
Ну..., с игроком вроде бы завершили. Перейдем к объекту пули, платформам и врагам. Создадим объект блока. Слева поставьте галочку над "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 единицу здоровья
Также если вы считаете, что данный материал мог быть интересен и полезен кому-то из ваших друзей, то вы бы могли посоветовать его, отправив сообщение на e-mail друга:
Игровые объявления и предложения:
Если вас заинтересовал материал «Делаем платформер в GameMaker», и вы бы хотели прочесть что-то на эту же тему, то вы можете воспользоваться списком схожих материалов ниже. Данный список сформирован автоматически по тематическим меткам раздела.
Предлагаются такие схожие материалы:
Если вы ведёте свой блог, микроблог, либо участвуете в какой-то популярной социальной сети, то вы можете быстро поделиться данной заметкой со своими друзьями и посетителями.