Решил я писать свою ходилку. Причем решил ее сделать сверх-точной и чтобы ходила ровно. Она уже дописана (дебаггинг еще не проведен так как нет рядом ультимы), вот только появилась одна проблема.
Скрипт сделан с использованием sendstep так как иначе он работать не будет. Просто скрипт ищет путь по всем 8-и сторонам (чтобы небыло угловатости ходьбы) и их записывает. Причем обязательно для него чтобы клиент не обходил препятствия сам (если например пойти ровно вверх, то небольшие препятствия будут обходиться стороной сами). При нажатии на определенные кнопки препятсвия тоже обходяться.
Все было-бы хорошо, но Йоко сказал что вероятно уберет комманду Sendstep вообще. Как ее можно заменить в моем скрипте? Может как-то можно запретить обход препятствий в клиенте?
Замена Sendstep
Moderators: Murderator+, Murderator
-
- Junior Expert
- Posts: 3221
- Joined: 2004-06-24 22:08:56
Да мне какраз ненужно никаких обходов вообще. Скрипт должен идти если идет и не идти если не идет. Если стать справа от дерева и нажать кнопку влево, чар спокойно обойдет дерево. А мне нужно чтобы он туда уперся носом.
Принцип скрипта примерно такой:
Есть массив на кучу строк (строка идет еще как массив).
Каждый елемент массива = 1 шаг.
Каждая буква в строке = направление и результат хотьбы туда.
Тоесть:
InfoStep[0][1] - можно ли пройти по направлению 1 в первом шагу.
Порядок работы:
Скрипт идет по ближайшему маршруту, если прошло, записывает в массив в нужное место что пройти там можно и идет на клетку вперед. Если направление заблокировано, записывает это в массив и пробует другое ближайшее направление.
Если тупик (все направления заблокированы) скрипт идет откуда пришел записывает в направление куда ходил 0 (непроходимо) и проверяет дальше.
По теории скрипт должен суметь обойти совершенно любое препятствие, на практике еще не проверял
.
Принцип скрипта примерно такой:
Есть массив на кучу строк (строка идет еще как массив).
Каждый елемент массива = 1 шаг.
Каждая буква в строке = направление и результат хотьбы туда.
Тоесть:
InfoStep[0][1] - можно ли пройти по направлению 1 в первом шагу.
Порядок работы:
Скрипт идет по ближайшему маршруту, если прошло, записывает в массив в нужное место что пройти там можно и идет на клетку вперед. Если направление заблокировано, записывает это в массив и пробует другое ближайшее направление.
Если тупик (все направления заблокированы) скрипт идет откуда пришел записывает в направление куда ходил 0 (непроходимо) и проверяет дальше.
По теории скрипт должен суметь обойти совершенно любое препятствие, на практике еще не проверял

-
- Junior Expert
- Posts: 3221
- Joined: 2004-06-24 22:08:56