-
Notifications
You must be signed in to change notification settings - Fork 0
ClientLibs FAQ
AndrexPJ edited this page Nov 4, 2013
·
4 revisions
- Копируем .cpp и .h файлы из CleintLibs/c++/<Ваша ОС>/AIWarsLib/
- Подключаем controller.h в проект.
- Для пользователей MS VS 2010 и раньше, читаем ClientLibs/c++/HowTo.txt
- Для пользователей Windows требуется WS2_32.lib
- Создаем экземпляр класса Controller. Конструктор класса требует IP хоста, порт хоста, ID игрока.
Пример:
Controller ctrl("192.168.0.1","1234","123");
- Используем метод ready() для установки соединения с хостом и обмена с ним рукопожатием. Игра начинается когда хост ответит на рукопожатие, то есть ready() блокирующий метод. Пример:
if(ctrl.ready()){ cout<<"started"<<endl; }
- Для управления роботом используем встроенные методы типа move(dist), roteate(angle) и.т.п.
- Методы возвращают значения 1 (успешно),0 (безуспешно),-1(конец игры) или в зависимости от метода другую доп информацию (например метод scan возвращает значение типа ScanCommandAnswer, внутри которого лежит знаение state (1,0,-1) и вектор сканированных объектов мира)
- Для завершения соединения используем метод end_game().
- При завершении игры сервером, вызов любого последующего метода управления роботом будет возвращать значение -1