Доброго времени суток!
Я столкнулся с такой проблемой, что при истечении таймера, мой курьер зависает на месте и не хочет двигаться в случайно выбранную область.

Тогда ошибка в коде карты.
Во-первых, этот ступенчатый if нужно заменить на массив. Создай массив с размером 0, и во время инициализации карты занеси центры областей в ячейки 1 - 8. Получаешь случайное число и используешь его как индекс для получения точки, куда идти. Код станет заметно проще.
Во-вторых, не нужно отдавать приказ каждые 0.33 секунды. Отдай приказ 1 раз.
В-третьих, тут используются паузы. За время паузы глобальные переменные (а все переменные в гуи глобальные) могут поменять своё значение.
`
ОЖИДАНИЕ РЕКЛАМЫ...
11
Попробуй создавать не для нейтрала, а для игрока, нейтралы могут сбить приказ
1
ArhiMEN:
Попробуй создавать не для нейтрала, а для игрока, нейтралы могут сбить приказ
Не помогло
11
Попробуй продебажить. Повыводи на экран имя юнита из переменной и по всему триггеру проставь вывод текста, чтобы понять, где перестаёт работать код
1
В общем, при выборе пункта назначения, он может зависнуть и всё.
Вертолёт может заспавниться и никуда не полететь в первый раз; а может не полететь, когда уже доставлял предмет больше двух раз.
28
Elvenelve, чтобы юнитом точно выполнял приказы из кода, он должен быть либо под управлением игрока, либо по игроком, для которого нет слота. Иначе же базовый ИИ может делать всякую чушь в случайный момент.
1
PT153:
Elvenelve, чтобы юнитом точно выполнял приказы из кода, он должен быть либо под управлением игрока, либо по игроком, для которого нет слота. Иначе же базовый ИИ может делать всякую чушь в случайный момент.
Я попробовал данный вариант. Увы, ничего не вышло. Создавал доставщика и для себя, и для игрока без слота, и для слота с компьютером - всё равно не хочет лететь.
28
Тогда ошибка в коде карты.
Во-первых, этот ступенчатый if нужно заменить на массив. Создай массив с размером 0, и во время инициализации карты занеси центры областей в ячейки 1 - 8. Получаешь случайное число и используешь его как индекс для получения точки, куда идти. Код станет заметно проще.
Во-вторых, не нужно отдавать приказ каждые 0.33 секунды. Отдай приказ 1 раз.
В-третьих, тут используются паузы. За время паузы глобальные переменные (а все переменные в гуи глобальные) могут поменять своё значение.
Принятый ответ
1
PT153:
Тогда ошибка в коде карты.
Во-первых, этот ступенчатый if нужно заменить на массив. Создай массив с размером 0, и во время инициализации карты занеси центры областей в ячейки 1 - 8. Получаешь случайное число и используешь его как индекс для получения точки, куда идти. Код станет заметно проще.
Во-вторых, не нужно отдавать приказ каждые 0.33 секунды. Отдай приказ 1 раз.
В-третьих, тут используются паузы. За время паузы глобальные переменные (а все переменные в гуи глобальные) могут поменять своё значение.
Помогло! Огромное спасибо!!!
Чтобы оставить комментарий, пожалуйста, войдите на сайт.