Пример создания робота через BotFactory в OsEngine.

Продолжим работать с нашим ботом Absorption из прошлой темы. Помимо того, что в нем нет пока никакой логики, он даже не появится в терминале в окне выбора роботов для запуска, потому что программа не знает о его существовании. Чтобы исправить положение, существует три способа, в этой теме рассмотрим первый из них.

Классический подход, самый первый и когда-то единственный заключается в том, что вам надо руками прописывать создание экземпляра робота в классе BotFactory. Сразу отмечу, что подход является устаревшим и не рекомендуется к использованию, существует для сохранения обратной совместимости. 

Первым делом нужно в методе GetNamesStrategy добавить в результирующий список строку с названием алгоритма, которая будет отображаться в окне выбора робота:

Рис. 1. Добавление названия робота в список доступных алгоритмов.

Далее в методе GetStrategyForName создаем экземпляр робота если запрашиваемое имя класса равно названию нашего алгоритма:

Рис. 2. Внедрение робота в BotFactory.

И теперь мы можем получить доступ к нашему алгоритму из пользовательского интерфейса:

Рис. 3. Создание робота в пользовательском интерфейсе.

14:29
154
FAQ

Комментарии

Нет комментариев. Ваш будет первым!