Набор нейтральных объектов поля (Tree, Stone, DirtPit, TreeLog)
Пока что есть функционал создания поля произвольного размера, создание с помощью статично поставленной базы одного типа юнитов HeavyCavalry (ограничение исходит из UI),
перемещение сих юнитов по полю
Взаимодействие нейтральных объектов поля с юнитами осуществляется с помощью меты действия (структура ActionMeta, определенная в классе BoardUnit), для соответствия общей архитектуре, поэтому делать их взаимодействие при помощи перегрузки операторов было бы нелогично
Генерация ландшафта (пока только снег и трава) осуществляется с помощью Шума Перлина (Perlin Noise) для плавности и натуральности
UI написан на Qt QML, связь с С++ бэкэндом (логикой) обеспечена классом UItoBackendConnector, пока что находится в начальной стадии разработки
Объявления всех классов находятся в папке include
Определения классов находятся в папке source
Ассеты UI находятся в папке images
Qt файлы интерфейса находятся в папке Qt
UML диаграмма находится в файле ClassDiagram1.png в корне проекта
Для запуска необходимо открыть и скомпилировать проект в Visual Studio 2019 (необходимо иметь установленный модуль Qt Visual Studio Tools 2019) либо же открыть и скомпилировать проект в QtCreator
Программа тестировалась на компиляторах MSVC (x64) 2017/MSVC (x64) 2019, работа на других компиляторах (MinGW) не гарантируется, хотя возможна
ВАЖНО:
Статичная база поставлена в клетке (4;9), поэтому создание поля размера меньшего чем (5; 10) приведет к критической ошибке и остановке программы
Добавлена вторая лаб. работа
Созданы:
Класс базы (PongoBaseBoardUnit)
Набор классов ландшафта (Grass, Snow, River)
Набор нейтральных объектов поля (Tree, Stone, DirtPit, TreeLog)
Пока что есть функционал создания поля произвольного размера, создание с помощью статично поставленной базы одного типа юнитов HeavyCavalry (ограничение исходит из UI), перемещение сих юнитов по полю
Взаимодействие нейтральных объектов поля с юнитами осуществляется с помощью меты действия (структура ActionMeta, определенная в классе BoardUnit), для соответствия общей архитектуре, поэтому делать их взаимодействие при помощи перегрузки операторов было бы нелогично
Генерация ландшафта (пока только снег и трава) осуществляется с помощью Шума Перлина (Perlin Noise) для плавности и натуральности
UI написан на Qt QML, связь с С++ бэкэндом (логикой) обеспечена классом UItoBackendConnector, пока что находится в начальной стадии разработки
Объявления всех классов находятся в папке include Определения классов находятся в папке source Ассеты UI находятся в папке images Qt файлы интерфейса находятся в папке Qt UML диаграмма находится в файле ClassDiagram1.png в корне проекта
Для запуска необходимо открыть и скомпилировать проект в Visual Studio 2019 (необходимо иметь установленный модуль Qt Visual Studio Tools 2019) либо же открыть и скомпилировать проект в QtCreator
Программа тестировалась на компиляторах MSVC (x64) 2017/MSVC (x64) 2019, работа на других компиляторах (MinGW) не гарантируется, хотя возможна
ВАЖНО: Статичная база поставлена в клетке (4;9), поэтому создание поля размера меньшего чем (5; 10) приведет к критической ошибке и остановке программы