Перенос с другого сайта.
В процессе переноса, я делал небольшой рефакторинг в структуре кода. Имена и методы не менял.
Код был распознан со скриншотов. Часть кода додумывал. Могут быть ошибки.
Привязал функции поиска кубиков и выхода к кнопкам.
https://gist.github.com/Musin-Mihail/08956d0aaa34d18680189a0e8e647191
--------------------------
Реализовал сбор ресурсов на склад и отображение значений в интерфейсе.
https://gist.github.com/Musin-Mihail/05ddc1c0c39a744f105b0081add16b72
---------------------------
Настроил управление камерой. Есть, что ещё улучшать, Но это в процессе. Пока и так сойдёт.
https://gist.github.com/Musin-Mihail/c5b42cd271f340308a1a3a71408166ab
---------------------------
Немного переработал скрипты.
В одном я храню основные параметры для игры.
Во втором инструкции для отдельных ботов.
Иначе не получалось запустить несколько ботов на карту, которые могли делать одни и те же действия.
https://gist.github.com/Musin-Mihail/e57342b643a538f12eaada3a8d18d191
https://gist.github.com/Musin-Mihail/9b472544b67881cd7319993869a6dc25
Одна из следующих задач устранить заторы в узких местах. Чтобы боты пропускали друг друга.
Ещё хочу реализовать, чтобы за одним кубиком шёл один бот. А не все вместе.
----------------------------
Методом научного тыка, я напечатал нужный код. Благодаря которому, за одним кубиком идёт только один бот.
https://gist.github.com/Musin-Mihail/99ee1a64cfe8e75eb05dfc94e8919f15
Но в этом случае, бот не пересчитывает путь во время движения. А идёт к первоначальной цели.
Сейчас новая задача. Если я заказываю собрать один кубик, то все боты собирают по одному кубику. А мне нужно, чтобы был собран только один кубик, одним ботом
Получился один вариант. Но в этом случае, если мне нужно 5 кубиков. Они собирают по очереди. Даже если есть свободные боты
https://gist.github.com/Musin-Mihail/a56ea2d4ebee4c89bfd46a918f2efbc4
Попутно создал эффект перегруза в виде уменьшении скорости передвижения.
Но пока убрал.
-------------------------
Случайно создал жонглёров. )
----------------------
Продолжая использовать метод научного тыка и логическое мышление, дописал нужный мне код, для равномерного распределения задач среди всех ботов.
Затупы у ботов бывают, но это не критично.
И если мне нужно собрать один кубик, то подрываются все боты, и останавливаются только тогда, когда один из ботов подберёт кубик.
А мне нужно чтобы один двигался. А все остальные ждали следующих заданий.
--------------------------------------
Пытаюсь писать код с мыслями о расширении возможностей. Но в голове появляется каша и не получается соединить всё во едино.
Сейчас у меня 2 основных скрипта. Видимо нужно больше.
Попробую работать с одним ботом. И реализовать идеи с ним.
И потом подключать новых.
Только в таком случае, потом придётся переписывать весь код. Как мне кажется