Проблема в том, что мне нужно чтобы у врага востанавливалось здоровье, но вот проблема в Step я пишу if wr_hp<=300 then alarm[0]=30 ( изначально у врага 400 хп) а в alarm[0] пишу wr_hp+=10 alarm[0]=30 но он не чего не востанавливает в чём проблема?
Сообщение отредактировал Интернет - Пятница, 17 Июля 2015, 18:15
может быть в том, что в GameMaker не надо писать then?
Цитата
if wr_hp<=300 then alarm[0]=30
А вообще мой тебе совет. В последних версиях гамака добавлили ПРЕКРАСНЕЙШУЮ функцию дебагинга - ты можешь поставить брекпоинт, запустить дебаг, и затем пошагово, посмотреть почему не выполняется\не вызываестя та или иная функция или почему логика не заходит в блок if. Может быть ты что-то не доглядел, чтото неправильно расчитал или еще милион причин, вплоть до опечатки.
В твоем коде я ошибок не вижу (кроме then, но это скорее всего ты только на форуме ошибся, потому что иначе гамак, скорее всего бы не скомпилировался)
помоему твой код должен выглядеть так:
Код
if (wr_hp<=300) alarm[0]=30;
Сообщение отредактировал Fill_Freeman - Пятница, 17 Июля 2015, 18:33
Интернет, проблема в том, что твой код в step выполняется постоянно, аларм перезапускается и перезапускается, не доводя свой отсчет до конца. Сделай так:
и ещё парочка вопросиков не по теме созрели. Можно ли через код в определённое время игры остановить вид и слежение за играком, а то в сражении с главным боссом игры камера не должна ездить, а толко остоватся в координатах экрана. И 2 как сделать чтобы хп игрока убывало если он находится в определённых координатах ( лазер)
Сообщение отредактировал Интернет - Пятница, 17 Июля 2015, 23:06
Насчет видов могу опять наврать, но вроде как view_object[] переменная содержит объект за которым вид следит. Поэтому при достижении финального босса, просто сбрось ее.
например, если ты используешь вид с индексом 0 - то так:
Код
view_object[0] = -1;
Про вторую проблему, тут разные способы приходят в голову, в зависимости от того, как ты сделал лазар.
Скорее всего, если у тебя лазер сделан видимым объектом, то можно обойтись чем-то вроде
Код
в Step игрока: if place_meeting(x, y, obj_laser) { hp -= laser_damage }
Насчет видов могу опять наврать, но вроде как view_object[] переменная содержит объект за которым вид следит. Поэтому при достижении финального босса, просто сбрось ее.
например, если ты используешь вид с индексом 0 - то так: Код view_object[0] = -1;
Про вторую проблему, тут разные способы приходят в голову, в зависимости от того, как ты сделал лазар.
Скорее всего, если у тебя лазер сделан видимым объектом, то можно обойтись чем-то вроде
Код в Step игрока: if place_meeting(x, y, obj_laser) { hp -= laser_damage }
Спасибо за это но я все же догадался про лазер, я сделал с помощью instance_position