Перемещение ИИ
|
|
Franky | Дата: Вторник, 29 Октября 2013, 18:59 | Сообщение # 1 |
был не раз
Сейчас нет на сайте
| Всем привет. Ребята помогите сделать такое действие: Создается объект которые перемещается только по оси y, при этом он рандомно меняет направление движение. Спасибо, буду очень благодарен.
|
|
| |
Syank | Дата: Среда, 30 Октября 2013, 10:36 | Сообщение # 2 |
участник
Сейчас нет на сайте
| Один из способов, самый банальный: В событии содания поставь будильник на пример на 120 шагов. так же там создай переменную mdir='down' в будильнике напиши if mdir='up' then mdir='down' else mdir='up' и зацикли его добавив alarm[0]=120 можно даже попробовать alarm[0]=1+irandom(120), может сработает. вместо 1 минимальное возможное значение Затем в событии шага пиши if mdir='up' then y-=2 if mdir='down' then y+=2 Вместо 2 меняй значение для получения нужной скорости. Это без учёта столкновений.
|
|
| |
Franky | Дата: Среда, 30 Октября 2013, 11:28 | Сообщение # 3 |
был не раз
Сейчас нет на сайте
| Syank, теперь мой ИИ просто уходит в нижнюю правую сторону...
|
|
| |
GameMix | Дата: Среда, 30 Октября 2013, 18:49 | Сообщение # 4 |
старожил
Сейчас нет на сайте
| Franky, если объект перемещается только по оси Y, то можно реализовать так: В Step или другое подобное событие:Код var Time; // переменная для таймера Time = 0; if (Time >= room_speed * 3) // если прошло 3 секунды { Time = 0; // обнуляем таймер direction = choose(90, 270); } else Time += 1; Хотя подозреваю, что это не то, что нужно... Точнее сформулируй задачу
Steel Standoff - 2D аркада. Мои статьи
|
|
| |
Farcuat | Дата: Среда, 30 Октября 2013, 19:20 | Сообщение # 5 |
частый гость
Сейчас нет на сайте
| Такой вариант: Движемся по Y, случайно меняем направление. Плюс гарантия невыхода из отрезка [YA; YB].
Это в Create Код YA = 50; YB = 550; Speed = 15; YNew = y;
Это в Step Код if(distance_to_point(x, YNew) < Speed) { YNew = random_range(YA, YB); move_towards_point(x, YNew, Speed); }
|
|
| |
Franky | Дата: Четверг, 31 Октября 2013, 00:11 | Сообщение # 6 |
был не раз
Сейчас нет на сайте
| Farcuat, спасибо, Ваш вариант работает на все 100! GameMix, Syank, вам тоже спасибо, но у меня не получилось применить то что вы написали..
|
|
| |
Syank | Дата: Пятница, 01 Ноября 2013, 11:55 | Сообщение # 7 |
участник
Сейчас нет на сайте
| Я говорил, при рандоме будильник иногда может перестать срабатывать... почему то)
|
|
| |