mirror of
https://github.com/Astatin3/meteorbot-old.git
synced 2026-06-09 00:28:06 -06:00
698 lines
35 KiB
CMake
698 lines
35 KiB
CMake
|
|
project(botcraft)
|
||
|
|
|
||
|
|
set(botcraft_PUBLIC_HDR
|
||
|
|
include/botcraft/AI/BaseNode.hpp
|
||
|
|
include/botcraft/AI/BehaviourClient.hpp
|
||
|
|
include/botcraft/AI/BehaviourTree.hpp
|
||
|
|
include/botcraft/AI/Blackboard.hpp
|
||
|
|
include/botcraft/AI/SimpleBehaviourClient.hpp
|
||
|
|
include/botcraft/AI/Status.hpp
|
||
|
|
include/botcraft/AI/TemplatedBehaviourClient.hpp
|
||
|
|
|
||
|
|
include/botcraft/AI/Tasks/AllTasks.hpp
|
||
|
|
include/botcraft/AI/Tasks/BaseTasks.hpp
|
||
|
|
include/botcraft/AI/Tasks/DigTask.hpp
|
||
|
|
include/botcraft/AI/Tasks/EntitiesTasks.hpp
|
||
|
|
include/botcraft/AI/Tasks/InventoryTasks.hpp
|
||
|
|
include/botcraft/AI/Tasks/PathfindingTask.hpp
|
||
|
|
|
||
|
|
include/botcraft/Game/AssetsManager.hpp
|
||
|
|
include/botcraft/Game/ManagersClient.hpp
|
||
|
|
include/botcraft/Game/ConnectionClient.hpp
|
||
|
|
include/botcraft/Game/Enums.hpp
|
||
|
|
include/botcraft/Game/Model.hpp
|
||
|
|
include/botcraft/Game/Vector3.hpp
|
||
|
|
|
||
|
|
include/botcraft/Game/World/Biome.hpp
|
||
|
|
include/botcraft/Game/World/Blockstate.hpp
|
||
|
|
include/botcraft/Game/World/Chunk.hpp
|
||
|
|
include/botcraft/Game/World/World.hpp
|
||
|
|
|
||
|
|
include/botcraft/Game/Entities/EntityAttribute.hpp
|
||
|
|
include/botcraft/Game/Entities/EntityManager.hpp
|
||
|
|
include/botcraft/Game/Entities/GlobalPos.hpp
|
||
|
|
include/botcraft/Game/Entities/LocalPlayer.hpp
|
||
|
|
include/botcraft/Game/Entities/VillagerData.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/UnknownEntity.hpp
|
||
|
|
|
||
|
|
include/botcraft/Game/Entities/entities/animal/allay/AllayEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/AreaEffectCloudEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/decoration/ArmorStandEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/ArrowEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/axolotl/AxolotlEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/ambient/BatEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/BeeEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/BlazeEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/vehicle/BoatEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/breeze/BreezeEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/vehicle/ChestBoatEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/CatEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/camel/CamelEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/CaveSpiderEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/ChickenEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/CodEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/CowEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/CreeperEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/DolphinEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/horse/DonkeyEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/DragonFireballEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/DisplayBlockDisplayEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/DisplayEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/DisplayItemDisplayEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/DisplayTextDisplayEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/DrownedEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/ElderGuardianEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/boss/enderdragon/EndCrystalEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/boss/enderdragon/EnderDragonEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/EnderManEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/EndermiteEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/EvokerEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/EvokerFangsEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/ExperienceOrbEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/EyeOfEnderEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/item/FallingBlockEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/FireworkRocketEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/FoxEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/frog/FrogEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/GhastEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/GiantEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/decoration/GlowItemFrameEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/GlowSquidEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/goat/GoatEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/GuardianEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/hoglin/HoglinEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/horse/HorseEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/HuskEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/IllusionerEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/InteractionEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/IronGolemEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/item/ItemEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/decoration/ItemFrameEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/LargeFireballEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/decoration/LeashFenceKnotEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/LightningBoltEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/horse/LlamaEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/LlamaSpitEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/MagmaCubeEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/MarkerEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/vehicle/MinecartEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/vehicle/MinecartChestEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/vehicle/MinecartCommandBlockEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/vehicle/MinecartFurnaceEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/vehicle/MinecartHopperEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/vehicle/MinecartSpawnerEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/vehicle/MinecartTNTEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/horse/MuleEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/MushroomCowEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/OcelotEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/decoration/PaintingEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/PandaEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/ParrotEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/PhantomEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/PigZombieEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/PigEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/piglin/PiglinEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/piglin/PiglinBruteEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/PillagerEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/PolarBearEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/item/PrimedTntEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/PufferfishEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/RabbitEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/RavagerEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/SalmonEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/SheepEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/ShulkerEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/ShulkerBulletEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/SilverfishEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/SkeletonEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/horse/SkeletonHorseEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/SlimeEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/SmallFireballEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/sniffer/SnifferEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/SnowGolemEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/SnowballEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/SpectralArrowEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/SpiderEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/SquidEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/StrayEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/StriderEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/frog/TadpoleEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/ThrownEggEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/ThrownEnderpearlEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/ThrownExperienceBottleEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/ThrownPotionEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/ThrownTridentEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/horse/TraderLlamaEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/TropicalFishEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/TurtleEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/VexEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/npc/VillagerEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/VindicatorEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/npc/WanderingTraderEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/warden/WardenEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/WindChargeEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/WitchEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/boss/wither/WitherBossEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/WitherSkeletonEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/WitherSkullEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/WolfEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/ZoglinEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/ZombieEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/horse/ZombieHorseEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/ZombieVillagerEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/ZombifiedPiglinEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/player/PlayerEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/FishingHookEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/Entity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/LivingEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/AbstractArrowEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/AnimalEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/ambient/AmbientCreatureEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/MonsterEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/TamableAnimalEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/AbstractSchoolingFishEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/WaterAnimalEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/horse/AbstractChestedHorseEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/AbstractHurtingProjectileEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/MobEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/SpellcasterIllagerEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/ProjectileEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/FlyingMobEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/horse/AbstractHorseEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/AbstractGolemEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/decoration/HangingEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/FireballEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/vehicle/VehicleEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/vehicle/AbstractMinecartEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/vehicle/AbstractMinecartContainerEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/ShoulderRidingEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/piglin/AbstractPiglinEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/AbstractIllagerEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/animal/AbstractFishEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/raid/RaiderEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/AbstractSkeletonEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/ThrowableItemProjectileEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/npc/AbstractVillagerEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/AgeableMobEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/PathfinderMobEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/monster/PatrollingMonsterEntity.hpp
|
||
|
|
include/botcraft/Game/Entities/entities/projectile/ThrowableProjectileEntity.hpp
|
||
|
|
|
||
|
|
include/botcraft/Game/Inventory/Window.hpp
|
||
|
|
include/botcraft/Game/Inventory/InventoryManager.hpp
|
||
|
|
include/botcraft/Game/Inventory/Item.hpp
|
||
|
|
|
||
|
|
include/botcraft/Game/Physics/AABB.hpp
|
||
|
|
include/botcraft/Game/Physics/PhysicsManager.hpp
|
||
|
|
|
||
|
|
include/botcraft/Network/NetworkManager.hpp
|
||
|
|
include/botcraft/Network/LastSeenMessagesTracker.hpp
|
||
|
|
|
||
|
|
include/botcraft/Utilities/DemanglingUtilities.hpp
|
||
|
|
include/botcraft/Utilities/EnumUtilities.hpp
|
||
|
|
include/botcraft/Utilities/Logger.hpp
|
||
|
|
include/botcraft/Utilities/MiscUtilities.hpp
|
||
|
|
include/botcraft/Utilities/NBTUtilities.hpp
|
||
|
|
include/botcraft/Utilities/ScopeLockedWrapper.hpp
|
||
|
|
include/botcraft/Utilities/SleepUtilities.hpp
|
||
|
|
include/botcraft/Utilities/StdAnyUtilities.hpp
|
||
|
|
include/botcraft/Utilities/Templates.hpp
|
||
|
|
)
|
||
|
|
|
||
|
|
set(botcraft_PRIVATE_HDR
|
||
|
|
private_include/botcraft/Network/Authentifier.hpp
|
||
|
|
private_include/botcraft/Network/AESEncrypter.hpp
|
||
|
|
private_include/botcraft/Network/Compression.hpp
|
||
|
|
private_include/botcraft/Network/TCP_Com.hpp
|
||
|
|
|
||
|
|
private_include/botcraft/Network/DNS/DNSMessage.hpp
|
||
|
|
private_include/botcraft/Network/DNS/DNSQuestion.hpp
|
||
|
|
private_include/botcraft/Network/DNS/DNSResourceRecord.hpp
|
||
|
|
private_include/botcraft/Network/DNS/DNSSrvData.hpp
|
||
|
|
|
||
|
|
private_include/botcraft/Utilities/StringUtilities.hpp
|
||
|
|
|
||
|
|
private_include/botcraft/Game/World/Section.hpp
|
||
|
|
)
|
||
|
|
|
||
|
|
set(botcraft_SRC
|
||
|
|
src/AI/BaseNode.cpp
|
||
|
|
src/AI/BehaviourClient.cpp
|
||
|
|
src/AI/Blackboard.cpp
|
||
|
|
src/AI/SimpleBehaviourClient.cpp
|
||
|
|
|
||
|
|
src/AI/Tasks/BaseTasks.cpp
|
||
|
|
src/AI/Tasks/DigTask.cpp
|
||
|
|
src/AI/Tasks/EntitiesTasks.cpp
|
||
|
|
src/AI/Tasks/InventoryTasks.cpp
|
||
|
|
src/AI/Tasks/PathfindingTask.cpp
|
||
|
|
|
||
|
|
src/Game/AssetsManager.cpp
|
||
|
|
src/Game/ConnectionClient.cpp
|
||
|
|
src/Game/Enums.cpp
|
||
|
|
src/Game/ManagersClient.cpp
|
||
|
|
src/Game/Model.cpp
|
||
|
|
|
||
|
|
src/Game/World/Biome.cpp
|
||
|
|
src/Game/World/Blockstate.cpp
|
||
|
|
src/Game/World/Chunk.cpp
|
||
|
|
src/Game/World/Section.cpp
|
||
|
|
src/Game/World/World.cpp
|
||
|
|
|
||
|
|
src/Game/Inventory/Window.cpp
|
||
|
|
src/Game/Inventory/InventoryManager.cpp
|
||
|
|
src/Game/Inventory/Item.cpp
|
||
|
|
|
||
|
|
src/Game/Entities/EntityAttribute.cpp
|
||
|
|
src/Game/Entities/EntityManager.cpp
|
||
|
|
src/Game/Entities/LocalPlayer.cpp
|
||
|
|
src/Game/Entities/entities/UnknownEntity.cpp
|
||
|
|
|
||
|
|
src/Game/Entities/entities/animal/allay/AllayEntity.cpp
|
||
|
|
src/Game/Entities/entities/AreaEffectCloudEntity.cpp
|
||
|
|
src/Game/Entities/entities/decoration/ArmorStandEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/ArrowEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/axolotl/AxolotlEntity.cpp
|
||
|
|
src/Game/Entities/entities/ambient/BatEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/BeeEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/BlazeEntity.cpp
|
||
|
|
src/Game/Entities/entities/vehicle/BoatEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/breeze/BreezeEntity.cpp
|
||
|
|
src/Game/Entities/entities/vehicle/ChestBoatEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/CatEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/camel/CamelEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/CaveSpiderEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/ChickenEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/CodEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/CowEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/CreeperEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/DolphinEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/horse/DonkeyEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/DragonFireballEntity.cpp
|
||
|
|
src/Game/Entities/entities/DisplayBlockDisplayEntity.cpp
|
||
|
|
src/Game/Entities/entities/DisplayEntity.cpp
|
||
|
|
src/Game/Entities/entities/DisplayItemDisplayEntity.cpp
|
||
|
|
src/Game/Entities/entities/DisplayTextDisplayEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/DrownedEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/ElderGuardianEntity.cpp
|
||
|
|
src/Game/Entities/entities/boss/enderdragon/EndCrystalEntity.cpp
|
||
|
|
src/Game/Entities/entities/boss/enderdragon/EnderDragonEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/EnderManEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/EndermiteEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/EvokerEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/EvokerFangsEntity.cpp
|
||
|
|
src/Game/Entities/entities/ExperienceOrbEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/EyeOfEnderEntity.cpp
|
||
|
|
src/Game/Entities/entities/item/FallingBlockEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/FireworkRocketEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/FoxEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/frog/FrogEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/GhastEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/GiantEntity.cpp
|
||
|
|
src/Game/Entities/entities/decoration/GlowItemFrameEntity.cpp
|
||
|
|
src/Game/Entities/entities/GlowSquidEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/goat/GoatEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/GuardianEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/hoglin/HoglinEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/horse/HorseEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/HuskEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/IllusionerEntity.cpp
|
||
|
|
src/Game/Entities/entities/InteractionEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/IronGolemEntity.cpp
|
||
|
|
src/Game/Entities/entities/item/ItemEntity.cpp
|
||
|
|
src/Game/Entities/entities/decoration/ItemFrameEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/LargeFireballEntity.cpp
|
||
|
|
src/Game/Entities/entities/decoration/LeashFenceKnotEntity.cpp
|
||
|
|
src/Game/Entities/entities/LightningBoltEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/horse/LlamaEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/LlamaSpitEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/MagmaCubeEntity.cpp
|
||
|
|
src/Game/Entities/entities/MarkerEntity.cpp
|
||
|
|
src/Game/Entities/entities/vehicle/MinecartEntity.cpp
|
||
|
|
src/Game/Entities/entities/vehicle/MinecartChestEntity.cpp
|
||
|
|
src/Game/Entities/entities/vehicle/MinecartCommandBlockEntity.cpp
|
||
|
|
src/Game/Entities/entities/vehicle/MinecartFurnaceEntity.cpp
|
||
|
|
src/Game/Entities/entities/vehicle/MinecartHopperEntity.cpp
|
||
|
|
src/Game/Entities/entities/vehicle/MinecartSpawnerEntity.cpp
|
||
|
|
src/Game/Entities/entities/vehicle/MinecartTNTEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/horse/MuleEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/MushroomCowEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/OcelotEntity.cpp
|
||
|
|
src/Game/Entities/entities/decoration/PaintingEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/PandaEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/ParrotEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/PhantomEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/PigZombieEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/PigEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/piglin/PiglinEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/piglin/PiglinBruteEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/PillagerEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/PolarBearEntity.cpp
|
||
|
|
src/Game/Entities/entities/item/PrimedTntEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/PufferfishEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/RabbitEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/RavagerEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/SalmonEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/SheepEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/ShulkerEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/ShulkerBulletEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/SilverfishEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/SkeletonEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/horse/SkeletonHorseEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/SlimeEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/SmallFireballEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/sniffer/SnifferEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/SnowGolemEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/SnowballEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/SpectralArrowEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/SpiderEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/SquidEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/StrayEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/StriderEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/frog/TadpoleEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/ThrownEggEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/ThrownEnderpearlEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/ThrownExperienceBottleEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/ThrownPotionEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/ThrownTridentEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/horse/TraderLlamaEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/TropicalFishEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/TurtleEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/VexEntity.cpp
|
||
|
|
src/Game/Entities/entities/npc/VillagerEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/VindicatorEntity.cpp
|
||
|
|
src/Game/Entities/entities/npc/WanderingTraderEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/WindChargeEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/warden/WardenEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/WitchEntity.cpp
|
||
|
|
src/Game/Entities/entities/boss/wither/WitherBossEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/WitherSkeletonEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/WitherSkullEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/WolfEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/ZoglinEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/ZombieEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/horse/ZombieHorseEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/ZombieVillagerEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/ZombifiedPiglinEntity.cpp
|
||
|
|
src/Game/Entities/entities/player/PlayerEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/FishingHookEntity.cpp
|
||
|
|
src/Game/Entities/entities/Entity.cpp
|
||
|
|
src/Game/Entities/entities/LivingEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/AbstractArrowEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/AnimalEntity.cpp
|
||
|
|
src/Game/Entities/entities/ambient/AmbientCreatureEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/MonsterEntity.cpp
|
||
|
|
src/Game/Entities/entities/TamableAnimalEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/AbstractSchoolingFishEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/WaterAnimalEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/horse/AbstractChestedHorseEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/AbstractHurtingProjectileEntity.cpp
|
||
|
|
src/Game/Entities/entities/MobEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/SpellcasterIllagerEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/ProjectileEntity.cpp
|
||
|
|
src/Game/Entities/entities/FlyingMobEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/horse/AbstractHorseEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/AbstractGolemEntity.cpp
|
||
|
|
src/Game/Entities/entities/decoration/HangingEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/FireballEntity.cpp
|
||
|
|
src/Game/Entities/entities/vehicle/AbstractMinecartEntity.cpp
|
||
|
|
src/Game/Entities/entities/vehicle/AbstractMinecartContainerEntity.cpp
|
||
|
|
src/Game/Entities/entities/vehicle/VehicleEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/ShoulderRidingEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/piglin/AbstractPiglinEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/AbstractIllagerEntity.cpp
|
||
|
|
src/Game/Entities/entities/animal/AbstractFishEntity.cpp
|
||
|
|
src/Game/Entities/entities/raid/RaiderEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/AbstractSkeletonEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/ThrowableItemProjectileEntity.cpp
|
||
|
|
src/Game/Entities/entities/npc/AbstractVillagerEntity.cpp
|
||
|
|
src/Game/Entities/entities/AgeableMobEntity.cpp
|
||
|
|
src/Game/Entities/entities/PathfinderMobEntity.cpp
|
||
|
|
src/Game/Entities/entities/monster/PatrollingMonsterEntity.cpp
|
||
|
|
src/Game/Entities/entities/projectile/ThrowableProjectileEntity.cpp
|
||
|
|
|
||
|
|
src/Game/Physics/AABB.cpp
|
||
|
|
src/Game/Physics/PhysicsManager.cpp
|
||
|
|
|
||
|
|
src/Network/AESEncrypter.cpp
|
||
|
|
src/Network/Authentifier.cpp
|
||
|
|
src/Network/Compression.cpp
|
||
|
|
src/Network/LastSeenMessagesTracker.cpp
|
||
|
|
src/Network/NetworkManager.cpp
|
||
|
|
src/Network/TCP_Com.cpp
|
||
|
|
|
||
|
|
src/Utilities/DemanglingUtilities.cpp
|
||
|
|
src/Utilities/Logger.cpp
|
||
|
|
src/Utilities/NBTUtilities.cpp
|
||
|
|
src/Utilities/SleepUtilities.cpp
|
||
|
|
src/Utilities/StdAnyUtilities.cpp
|
||
|
|
src/Utilities/StringUtilities.cpp
|
||
|
|
)
|
||
|
|
|
||
|
|
if(BOTCRAFT_USE_OPENGL_GUI)
|
||
|
|
list(APPEND botcraft_PUBLIC_HDR
|
||
|
|
include/botcraft/Renderer/RenderingManager.hpp
|
||
|
|
include/botcraft/Renderer/Enums.hpp
|
||
|
|
include/botcraft/Renderer/Face.hpp
|
||
|
|
include/botcraft/Renderer/Transformation.hpp
|
||
|
|
)
|
||
|
|
|
||
|
|
list(APPEND botcraft_PRIVATE_HDR
|
||
|
|
private_include/botcraft/Renderer/Atlas.hpp
|
||
|
|
private_include/botcraft/Renderer/BehaviourRenderer.hpp
|
||
|
|
private_include/botcraft/Renderer/BlockRenderable.hpp
|
||
|
|
private_include/botcraft/Renderer/Camera.hpp
|
||
|
|
private_include/botcraft/Renderer/Chunk.hpp
|
||
|
|
private_include/botcraft/Renderer/Entity.hpp
|
||
|
|
private_include/botcraft/Renderer/ImageSaver.hpp
|
||
|
|
private_include/botcraft/Renderer/Shader.hpp
|
||
|
|
private_include/botcraft/Renderer/TransparentChunk.hpp
|
||
|
|
private_include/botcraft/Renderer/WorldRenderer.hpp
|
||
|
|
)
|
||
|
|
|
||
|
|
list(APPEND botcraft_SRC
|
||
|
|
src/Renderer/Atlas.cpp
|
||
|
|
src/Renderer/BehaviourRenderer.cpp
|
||
|
|
src/Renderer/BlockRenderable.cpp
|
||
|
|
src/Renderer/Camera.cpp
|
||
|
|
src/Renderer/Chunk.cpp
|
||
|
|
src/Renderer/Entity.cpp
|
||
|
|
src/Renderer/RenderingManager.cpp
|
||
|
|
src/Renderer/Face.cpp
|
||
|
|
src/Renderer/ImageSaver.cpp
|
||
|
|
src/Renderer/Shader.cpp
|
||
|
|
src/Renderer/Transformation.cpp
|
||
|
|
src/Renderer/TransparentChunk.cpp
|
||
|
|
src/Renderer/WorldRenderer.cpp
|
||
|
|
)
|
||
|
|
endif(BOTCRAFT_USE_OPENGL_GUI)
|
||
|
|
|
||
|
|
|
||
|
|
# To have a nice files structure in Visual Studio
|
||
|
|
if(MSVC)
|
||
|
|
foreach(source IN LISTS botcraft_PUBLIC_HDR)
|
||
|
|
get_filename_component(source_path_header "${source}" PATH)
|
||
|
|
string(REPLACE "include/botcraft" "Header Files/public" source_path_header "${source_path_header}")
|
||
|
|
string(REPLACE "/" "\\" source_path_msvc "${source_path_header}")
|
||
|
|
source_group("${source_path_msvc}" FILES "${source}")
|
||
|
|
endforeach()
|
||
|
|
|
||
|
|
foreach(source IN LISTS botcraft_PRIVATE_HDR)
|
||
|
|
get_filename_component(source_path_header "${source}" PATH)
|
||
|
|
string(REPLACE "private_include/botcraft" "Header Files/private" source_path_header "${source_path_header}")
|
||
|
|
string(REPLACE "/" "\\" source_path_msvc "${source_path_header}")
|
||
|
|
source_group("${source_path_msvc}" FILES "${source}")
|
||
|
|
endforeach()
|
||
|
|
|
||
|
|
foreach(source IN LISTS botcraft_SRC)
|
||
|
|
get_filename_component(source_path "${source}" PATH)
|
||
|
|
string(REPLACE "src" "Source Files" source_path "${source_path}")
|
||
|
|
string(REPLACE "/" "\\" source_path_msvc "${source_path}")
|
||
|
|
source_group("${source_path_msvc}" FILES "${source}")
|
||
|
|
endforeach()
|
||
|
|
endif()
|
||
|
|
|
||
|
|
add_library(botcraft SHARED ${botcraft_SRC} ${botcraft_PUBLIC_HDR} ${botcraft_PRIVATE_HDR})
|
||
|
|
set_property(TARGET botcraft PROPERTY CXX_STANDARD 17)
|
||
|
|
set_target_properties(botcraft PROPERTIES DEBUG_POSTFIX "_d")
|
||
|
|
set_target_properties(botcraft PROPERTIES RELWITHDEBINFO_POSTFIX "_rd")
|
||
|
|
|
||
|
|
# Enable precompiled headers, except on GCC because it's hurting performances
|
||
|
|
if (BOTCRAFT_USE_PRECOMPILED_HEADERS AND NOT CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
|
||
|
|
target_precompile_headers(botcraft PRIVATE
|
||
|
|
include/botcraft/Game/Entities/entities/Entity.hpp
|
||
|
|
${protocolCraft_SOURCE_DIR}/include/protocolCraft/AllMessages.hpp
|
||
|
|
)
|
||
|
|
endif()
|
||
|
|
|
||
|
|
if(MSVC)
|
||
|
|
# To avoid having folder for each configuration when building with Visual
|
||
|
|
set_target_properties(botcraft PROPERTIES RUNTIME_OUTPUT_DIRECTORY_DEBUG "${BOTCRAFT_OUTPUT_DIR}/bin")
|
||
|
|
set_target_properties(botcraft PROPERTIES RUNTIME_OUTPUT_DIRECTORY_RELEASE "${BOTCRAFT_OUTPUT_DIR}/bin")
|
||
|
|
set_target_properties(botcraft PROPERTIES RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${BOTCRAFT_OUTPUT_DIR}/bin")
|
||
|
|
set_target_properties(botcraft PROPERTIES RUNTIME_OUTPUT_DIRECTORY_MINSIZEREL "${BOTCRAFT_OUTPUT_DIR}/bin")
|
||
|
|
set_target_properties(botcraft PROPERTIES LIBRARY_OUTPUT_DIRECTORY_DEBUG "${BOTCRAFT_OUTPUT_DIR}/bin")
|
||
|
|
set_target_properties(botcraft PROPERTIES LIBRARY_OUTPUT_DIRECTORY_RELEASE "${BOTCRAFT_OUTPUT_DIR}/bin")
|
||
|
|
set_target_properties(botcraft PROPERTIES LIBRARY_OUTPUT_DIRECTORY_RELWITHDEBINFO "${BOTCRAFT_OUTPUT_DIR}/bin")
|
||
|
|
set_target_properties(botcraft PROPERTIES LIBRARY_OUTPUT_DIRECTORY_MINSIZEREL "${BOTCRAFT_OUTPUT_DIR}/bin")
|
||
|
|
set_target_properties(botcraft PROPERTIES ARCHIVE_OUTPUT_DIRECTORY_DEBUG "${BOTCRAFT_OUTPUT_DIR}/lib")
|
||
|
|
set_target_properties(botcraft PROPERTIES ARCHIVE_OUTPUT_DIRECTORY_RELEASE "${BOTCRAFT_OUTPUT_DIR}/lib")
|
||
|
|
set_target_properties(botcraft PROPERTIES ARCHIVE_OUTPUT_DIRECTORY_RELWITHDEBINFO "${BOTCRAFT_OUTPUT_DIR}/lib")
|
||
|
|
set_target_properties(botcraft PROPERTIES ARCHIVE_OUTPUT_DIRECTORY_MINSIZEREL "${BOTCRAFT_OUTPUT_DIR}/lib")
|
||
|
|
else()
|
||
|
|
set_target_properties(botcraft PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${BOTCRAFT_OUTPUT_DIR}/bin")
|
||
|
|
set_target_properties(botcraft PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${BOTCRAFT_OUTPUT_DIR}/bin")
|
||
|
|
set_target_properties(botcraft PROPERTIES ARCHIVE_OUTPUT_DIRECTORY "${BOTCRAFT_OUTPUT_DIR}/lib")
|
||
|
|
endif(MSVC)
|
||
|
|
|
||
|
|
if (MSVC)
|
||
|
|
target_compile_options(botcraft PRIVATE "$<$<CONFIG:Debug>:/bigobj>")
|
||
|
|
endif (MSVC)
|
||
|
|
|
||
|
|
# Set version header
|
||
|
|
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cmake/Version.hpp.in" "${CMAKE_CURRENT_BINARY_DIR}/include/botcraft/Version.hpp")
|
||
|
|
|
||
|
|
if (WIN32)
|
||
|
|
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cmake/download_mc_assets.bat.in" "${CMAKE_CURRENT_BINARY_DIR}/download_mc_assets.bat")
|
||
|
|
else()
|
||
|
|
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cmake/download_mc_assets.sh.in" "${CMAKE_CURRENT_BINARY_DIR}/download_mc_assets.sh")
|
||
|
|
endif (WIN32)
|
||
|
|
|
||
|
|
# Add include folders
|
||
|
|
target_include_directories(botcraft
|
||
|
|
PUBLIC
|
||
|
|
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
|
||
|
|
"$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/include>"
|
||
|
|
"$<INSTALL_INTERFACE:include>"
|
||
|
|
PRIVATE
|
||
|
|
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/private_include>"
|
||
|
|
)
|
||
|
|
|
||
|
|
target_compile_definitions(botcraft PRIVATE ASSETS_PATH="${ASSET_DIR}")
|
||
|
|
|
||
|
|
# Add DL lib for linux compilation
|
||
|
|
target_link_libraries(botcraft PUBLIC ${CMAKE_DL_LIBS})
|
||
|
|
|
||
|
|
# Add protocolCraft
|
||
|
|
target_link_libraries(botcraft PUBLIC protocolCraft)
|
||
|
|
|
||
|
|
if (WIN32 AND BOTCRAFT_WINDOWS_BETTER_SLEEP)
|
||
|
|
target_link_libraries(botcraft PRIVATE winmm.lib)
|
||
|
|
target_compile_definitions(botcraft PRIVATE BETTER_SLEEP=1)
|
||
|
|
endif()
|
||
|
|
|
||
|
|
# Add Asio
|
||
|
|
target_link_libraries(botcraft PRIVATE asio)
|
||
|
|
target_compile_definitions(botcraft PRIVATE ASIO_STANDALONE)
|
||
|
|
|
||
|
|
# Add threads support
|
||
|
|
target_link_libraries(botcraft PUBLIC Threads::Threads)
|
||
|
|
|
||
|
|
# Add graphical dependencies
|
||
|
|
if(BOTCRAFT_USE_OPENGL_GUI)
|
||
|
|
target_link_libraries(botcraft PRIVATE glfw glad glm rectpack2D OpenGL::GL stb_image)
|
||
|
|
if(BOTCRAFT_USE_IMGUI)
|
||
|
|
target_link_libraries(botcraft PRIVATE imgui)
|
||
|
|
target_compile_definitions(botcraft PRIVATE USE_IMGUI=1)
|
||
|
|
endif()
|
||
|
|
target_compile_definitions(botcraft PUBLIC USE_GUI=1)
|
||
|
|
endif(BOTCRAFT_USE_OPENGL_GUI)
|
||
|
|
|
||
|
|
if(BOTCRAFT_COMPRESSION)
|
||
|
|
target_link_libraries(botcraft PRIVATE ZLIB::ZLIB)
|
||
|
|
target_compile_definitions(botcraft PRIVATE USE_COMPRESSION=1)
|
||
|
|
endif(BOTCRAFT_COMPRESSION)
|
||
|
|
|
||
|
|
if(BOTCRAFT_ENCRYPTION)
|
||
|
|
target_link_libraries(botcraft PRIVATE OpenSSL::SSL)
|
||
|
|
target_link_libraries(botcraft PRIVATE OpenSSL::Crypto)
|
||
|
|
target_compile_definitions(botcraft PRIVATE USE_ENCRYPTION=1)
|
||
|
|
endif(BOTCRAFT_ENCRYPTION)
|
||
|
|
|
||
|
|
if(WIN32 AND MINGW)
|
||
|
|
target_link_libraries(botcraft PRIVATE ws2_32 crypt32)
|
||
|
|
# Copy dll from the compiler folder
|
||
|
|
get_filename_component(COMPILER_FOLDER ${CMAKE_CXX_COMPILER} DIRECTORY)
|
||
|
|
add_custom_command(TARGET botcraft POST_BUILD
|
||
|
|
COMMAND ${CMAKE_COMMAND} -E copy_if_different
|
||
|
|
"${COMPILER_FOLDER}/libstdc++-6.dll"
|
||
|
|
$<TARGET_FILE_DIR:botcraft>)
|
||
|
|
endif()
|
||
|
|
|
||
|
|
# Installation stuff
|
||
|
|
include(GNUInstallDirs)
|
||
|
|
|
||
|
|
install(TARGETS botcraft
|
||
|
|
EXPORT botcraft-targets
|
||
|
|
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
|
||
|
|
LIBRARY DESTINATION "${CMAKE_INSTALL_BINDIR}"
|
||
|
|
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
|
||
|
|
)
|
||
|
|
|
||
|
|
if (NOT BOTCRAFT_INSTALL_MC_ASSETS)
|
||
|
|
if (WIN32)
|
||
|
|
install(FILES
|
||
|
|
"${CMAKE_CURRENT_BINARY_DIR}/download_mc_assets.bat"
|
||
|
|
DESTINATION "${CMAKE_INSTALL_BINDIR}"
|
||
|
|
)
|
||
|
|
else()
|
||
|
|
install(FILES
|
||
|
|
"${CMAKE_CURRENT_BINARY_DIR}/download_mc_assets.sh"
|
||
|
|
DESTINATION "${CMAKE_INSTALL_BINDIR}"
|
||
|
|
)
|
||
|
|
endif (WIN32)
|
||
|
|
endif(NOT BOTCRAFT_INSTALL_MC_ASSETS)
|
||
|
|
|
||
|
|
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/include/botcraft"
|
||
|
|
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}"
|
||
|
|
)
|
||
|
|
|
||
|
|
install(FILES
|
||
|
|
"${CMAKE_CURRENT_BINARY_DIR}/include/botcraft/Version.hpp"
|
||
|
|
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/botcraft"
|
||
|
|
)
|
||
|
|
|
||
|
|
install(EXPORT botcraft-targets
|
||
|
|
FILE botcraft-targets.cmake
|
||
|
|
DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/botcraft"
|
||
|
|
)
|
||
|
|
|
||
|
|
include(CMakePackageConfigHelpers)
|
||
|
|
|
||
|
|
configure_package_config_file(
|
||
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/botcraft-config.cmake.in"
|
||
|
|
"${CMAKE_CURRENT_BINARY_DIR}/cmake/botcraft-config.cmake"
|
||
|
|
INSTALL_DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/botcraft"
|
||
|
|
)
|
||
|
|
|
||
|
|
install(
|
||
|
|
FILES
|
||
|
|
"${CMAKE_CURRENT_BINARY_DIR}/cmake/botcraft-config.cmake"
|
||
|
|
DESTINATION
|
||
|
|
"${CMAKE_INSTALL_LIBDIR}/cmake/botcraft"
|
||
|
|
)
|
||
|
|
|
||
|
|
export(EXPORT botcraft-targets
|
||
|
|
FILE "${CMAKE_CURRENT_BINARY_DIR}/cmake/botcraft-targets.cmake"
|
||
|
|
)
|
||
|
|
|
||
|
|
# Copy asset files into install binary folder
|
||
|
|
if (BOTCRAFT_INSTALL_MC_ASSETS)
|
||
|
|
install(DIRECTORY "${BOTCRAFT_OUTPUT_DIR}/bin/Assets/${BOTCRAFT_GAME_VERSION}"
|
||
|
|
DESTINATION "${CMAKE_INSTALL_BINDIR}/Assets"
|
||
|
|
)
|
||
|
|
else()
|
||
|
|
install(DIRECTORY "${BOTCRAFT_OUTPUT_DIR}/bin/Assets/${BOTCRAFT_GAME_VERSION}"
|
||
|
|
DESTINATION "${CMAKE_INSTALL_BINDIR}/Assets"
|
||
|
|
PATTERN "minecraft" EXCLUDE
|
||
|
|
)
|
||
|
|
endif(BOTCRAFT_INSTALL_MC_ASSETS)
|
||
|
|
|
||
|
|
# Copy Mingw libstdc++ dll
|
||
|
|
if(WIN32 AND MINGW)
|
||
|
|
install(FILES
|
||
|
|
"${BOTCRAFT_OUTPUT_DIR}/bin/libstdc++-6.dll"
|
||
|
|
DESTINATION "${CMAKE_INSTALL_BINDIR}"
|
||
|
|
)
|
||
|
|
endif()
|