Недавно увидел тему Notin про jRPG на GM. Меня это зацепило, и результате экспериментов я все таки придумал как это реализовать. Оказалось это очень просто. Позже мы усовершенствуем, а пока, реализация самого простого =)
Начнем. Создадим 2 спрайта:
s_player
s_enemy
Далее создаем 4 объекта:
player
enemy
pl_battle
en_battle
У player в Step пишем:
Код
x+=5
if global.delete=true//Эта переменная для уничтожения врага, позже создадим ее
{x=xprevious}//Игрок остается в той же Х координате, где и был.
В столкновении с enemy:
Код
x=xprevious//Игрок остается в той же Х координате, где и был.
К enemy в создание пишем:
Код
global.delete=false//Переменная уничтожения отключена
В step:
Код
if global.delete=true//Если переменная уничтожения включена...
{instance_destroy()}//Уничтожаем объект.
В столкновении с player:
Код
room=r_battle//Идем в комнату битвы.
Закончили с отключенными. Идем к включенным. pl_battle в создание (create):
Код
global.move=false//Движение отключено
global.health=20//Жизнь равна 20. Указывайте что хотите.
В step:
Код
if global.move=true//Если движение включено...
{x+=5}//Движемся вправо со скоростью 5
if global.health=0//Если здоровье на нуле..
{instance_destroy()}//Уничтожение.
if global.hod=true//Если включен ход врага...
{global.move=false}//Движение отключается.
В столкновении с en_battle:
Код
x=xstart//Игрок возвращается на старт (только по Х-координате)
И наконец идем к en_battle.
Создание:
Код
hp=20//Жизнь равна 20. Указываем что хотим.
global.hod=false//Ход у игрока.
Уничтожение:
Код
room=room0//Идем в room0
global.delete=true//Уничтожение простого врага включено.
В step:
Код
if hp=0//Если жизнь на нуле...
{instance_destroy()}//Уничтожение.
if global.hod=true//Если ход у врага..
{x-=5}//Влево со скоростью 5.
else//а если нет..
{x=xstart}//Старт по Х.
Столкновении с боевым игроком:
Код
if x=xstart
{hp-=10
global.hod=true}
else
{global.health-=10
x=xstart
y=ystart
global.hod=false}
Left button:
Код
v=show_menu('Пропуск|Удар',0)
if v=1
{global.move=true}
else
{global.hod=true}
Создаем room0, ставим отключенные объекты.
r_battle -боевые. Все =)