Суббота, 30 Ноября 2024, 10:28

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Как в комнате включить/отключить галочку "Постоянный"?
КомиссарДата: Понедельник, 13 Мая 2013, 13:41 | Сообщение # 1
заслуженный участник
Сейчас нет на сайте
Как в комнате включить/отключить галочку "Постоянный" с помощью скрипта?
Это нужно сделать именно кодом.

Дело в том, что в игре нужны оба состояния одной и той же комнаты.
В процессе игры иногда осуществляется временный переход в другую комнату (меню или режим диалога), и тогда галочка на "Постоянный" нужна, иначе игра начнётся сначала.
Но когда игра проиграна и не выходя из игры через меню запускаешь игру заново - галочка "Постоянный" должна быть снята, иначе в комнате сохранится состояние проигрыша.
Я просто не знаю, какая команда эта делает, и где её нужно прописывать: в комнате (что было бы логично) или в объекте игрока (ведь переход в меню происходит после его смерти, и именно тогда игра должна обновиться)?


LunarPixelДата: Понедельник, 13 Мая 2013, 14:09 | Сообщение # 2
старожил
Сейчас нет на сайте
room_set_persistent(ind,val) тебе в помощь, ind - комната, val (1,0) - постоянная или нет. Прописать, наверно, лучше в игроке, в момент смерти. smile

КомиссарДата: Понедельник, 13 Мая 2013, 16:13 | Сообщение # 3
заслуженный участник
Сейчас нет на сайте
Спасибо!)
Ты всегда меня выручаешь!)

Добавлено (13.05.2013, 16:13)
---------------------------------------------
Что-то не получается.

Комната (изначально галочка стоит на "Постоянный"):
r_space_zelon

Объект:
o_corvete_zelon

Create:
Код
room_set_persistent(r_space_zelon,1)


End Step:
Код
if health < 1    
{
sleep(3000)
game_end()
room_goto(r_gameover)
room_set_persistent(r_space_zelon,0)
}


Не помогло. При повторном заходе всё равно состояние проигрыша и выход в геймовер.




Сообщение отредактировал Комиссар - Понедельник, 13 Мая 2013, 16:14
LunarPixelДата: Понедельник, 13 Мая 2013, 16:45 | Сообщение # 4
старожил
Сейчас нет на сайте
А, возможно эта функция только для новой комнаты может задать параметр, не помню.
Сделай тогда так:
заведи глобальную переменную или постоянный объект с переменной и через нее проверяй, умирал ли игрок. Если умирал и ты перешел в постоянную комнату, то происходит её рестарт. Ну и при смерти проверку надо сделать, если герой помирал, то уже не кидать в комнату с геймовером. Перед рестартом сбрасывай переменную, отвечающую за проверку смерти.


КомиссарДата: Понедельник, 13 Мая 2013, 17:20 | Сообщение # 5
заслуженный участник
Сейчас нет на сайте
Если я правильно тебя понял, то:

Object: o_deathcontrol в комнате r_space_zelon

Create:
Код
global.deadplayer = 0


Step:
Код

if room_goto(r_gameover) then global.deadplayer = 1
else
global.deadplayer = 0

if global.deadplayer = 1
{
room_restart()
global.deadplayer = 0
}


Игра переходит в геймовер сразу после старта, даже если запустил заново.




Сообщение отредактировал Комиссар - Понедельник, 13 Мая 2013, 17:21
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг