MrSlap | Дата: Среда, 18 Октября 2017, 05:02 | Сообщение # 1 |
почетный гость
Сейчас нет на сайте
| Есть лучник, который, при виде героя начинает стрелять. Нужно сделать так, чтобы, если на траектории стрелы появляется его союзник, он не просто переставал стрелять, а пытался отойти так, чтобы освободить себе обзор. Первую часть я легко сделал с помощью
Код !collision_line(x,y,obj,false,true) {attack = true} else {attack = false} Однако. Как сделать обход? Пытался использовать action_potential_step, но, не могу заставить его рассчитать угол обхода, чтобы он не бежал вперёд и не скользил вдоль своих же. Больше нет идей.
Второй вопрос. Есть код обнаружения героя. Стандартный, достаточно.
Код if (instance_exists(o_player)) { if (attack==0 and distance_to_point(o_player.x,o_player.y) < max_dist and distance_to_point(o_player.x,o_player.y) >= dist and !collision_line(x,y,o_player.x,o_player.y,obj_solid, false, true) and !collision_line(x,y,o_player.x,o_player.y,obj_wall, false, true)) { friction =0 action_potential_step(o_player.x,o_player.y,2,0) en_animation(); //Передвижение с учётом анимации if (speed>=4) {speed=4} }
Однако, когда враги подходят толпой в ближний бой, они не останавливаются, а начинают вибрировать друг об друга. вроде и
Код { move_bounce_all(true); if speed >2 speed = speed/2; }
в столкновениях присутствует... Как это реализовать и исправить?..
Создаю интерактивную повесть.
|
|
| |
ДанилаСтержнев | Дата: Среда, 18 Октября 2017, 17:04 | Сообщение # 2 |
постоянный участник
Сейчас нет на сайте
| Цитата MrSlap ( ) Однако, когда враги подходят толпой в ближний бой, они не останавливаются, а начинают вибрировать друг об друга. У тебя в коде не прописаны условия, чтобы они останавливались. Пропиши их и все, только не забудь возобновлять движение, при отсутствии условий для остановки
Красочная сюжетно ориентированная игра-головоломка
|
|
| |