From ade2dece10b3e778afa82a0a1505266ecff3fe2f Mon Sep 17 00:00:00 2001 From: Mordred Date: Mon, 31 Dec 2018 13:54:31 +0100 Subject: [PATCH] Moved cmake logic to root cmakelists --- cmake/compiler.cmake | 11 ++---- deps/datReader/CMakeLists.txt | 6 ---- deps/mysqlConnector/CMakeLists.txt | 6 ---- src/api/CMakeLists.txt | 3 -- src/common/CMakeLists.txt | 3 -- src/dbm/CMakeLists.txt | 3 -- src/lobby/CMakeLists.txt | 3 -- src/scripts/CMakeLists.txt | 3 -- src/tools/discovery_parser/CMakeLists.txt | 3 -- src/tools/event_object_parser/CMakeLists.txt | 3 -- src/tools/exd_common_gen/CMakeLists.txt | 3 -- src/tools/exd_struct_gen/CMakeLists.txt | 3 -- src/tools/exd_struct_test/CMakeLists.txt | 3 -- src/tools/mob_parse/CMakeLists.txt | 3 -- src/tools/pcb_reader/CMakeLists.txt | 3 -- src/tools/quest_parser/CMakeLists.txt | 3 -- src/world/Actor/SpawnGroup.h | 2 +- src/world/CMakeLists.txt | 3 -- src/world/ForwardsZone.h | 2 ++ src/world/Territory/Zone.cpp | 36 +++++++++++++++++--- src/world/Territory/Zone.h | 2 ++ 21 files changed, 40 insertions(+), 67 deletions(-) diff --git a/cmake/compiler.cmake b/cmake/compiler.cmake index 99bd6428..f8fa19b2 100644 --- a/cmake/compiler.cmake +++ b/cmake/compiler.cmake @@ -9,14 +9,9 @@ else() set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHc") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /bigobj") - - if (MSVC_VERSION GREATER_EQUAL "1900") - include(CheckCXXCompilerFlag) - CHECK_CXX_COMPILER_FLAG("/std:c++latest" _cpp_latest_flag_supported) - if (_cpp_latest_flag_supported) - add_compile_options("/std:c++latest") - endif() - endif() + set(CMAKE_CXX_STANDARD 17) + set(CMAKE_CXX_STANDARD_REQUIRED ON) + set(CMAKE_CXX_EXTENSIONS ON) if(CMAKE_BUILD_TYPE STREQUAL "Debug") # disabling SAFESEH diff --git a/deps/datReader/CMakeLists.txt b/deps/datReader/CMakeLists.txt index a8c7ec6c..70b469ba 100644 --- a/deps/datReader/CMakeLists.txt +++ b/deps/datReader/CMakeLists.txt @@ -10,12 +10,6 @@ set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} ) add_library( xivdat ${UTILS_PUBLIC_INCLUDE_FILES} ${UTILS_SOURCE_FILES} ) -set_target_properties( xivdat PROPERTIES - CXX_STANDARD 17 - CXX_STANDARD_REQUIRED ON - CXX_EXTENSIONS ON - ) - if (UNIX) target_link_libraries( xivdat PUBLIC dl ) target_link_libraries( xivdat PUBLIC z ) diff --git a/deps/mysqlConnector/CMakeLists.txt b/deps/mysqlConnector/CMakeLists.txt index 76f2f97f..1bff9537 100644 --- a/deps/mysqlConnector/CMakeLists.txt +++ b/deps/mysqlConnector/CMakeLists.txt @@ -9,12 +9,6 @@ set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} ) add_library( mysqlConnector ${UTILS_PUBLIC_INCLUDE_FILES} ${UTILS_SOURCE_FILES} ) -set_target_properties( mysqlConnector PROPERTIES - CXX_STANDARD 17 - CXX_STANDARD_REQUIRED ON - CXX_EXTENSIONS ON - ) - target_include_directories( mysqlConnector PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ) target_link_libraries( mysqlConnector PUBLIC mysql ) #cotire(mysqlConnector) diff --git a/src/api/CMakeLists.txt b/src/api/CMakeLists.txt index baca5da6..a9eca8ca 100644 --- a/src/api/CMakeLists.txt +++ b/src/api/CMakeLists.txt @@ -8,9 +8,6 @@ file( GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*" ) add_executable( api ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES} ) set_target_properties( api PROPERTIES - CXX_STANDARD 17 - CXX_STANDARD_REQUIRED ON - CXX_EXTENSIONS ON RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/" RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/" RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/" diff --git a/src/common/CMakeLists.txt b/src/common/CMakeLists.txt index d8579e93..00f863c9 100644 --- a/src/common/CMakeLists.txt +++ b/src/common/CMakeLists.txt @@ -18,9 +18,6 @@ set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} ) add_library( common ${UTILS_PUBLIC_INCLUDE_FILES} ${UTILS_SOURCE_FILES} ) set_target_properties( common PROPERTIES - CXX_STANDARD 17 - CXX_STANDARD_REQUIRED ON - CXX_EXTENSIONS ON RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/" RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/" RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/" diff --git a/src/dbm/CMakeLists.txt b/src/dbm/CMakeLists.txt index f731b609..278cbd99 100644 --- a/src/dbm/CMakeLists.txt +++ b/src/dbm/CMakeLists.txt @@ -8,9 +8,6 @@ file( GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*" ) add_executable( dbm ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES} ) set_target_properties( dbm PROPERTIES - CXX_STANDARD 17 - CXX_STANDARD_REQUIRED ON - CXX_EXTENSIONS ON RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/" RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/" RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/" diff --git a/src/lobby/CMakeLists.txt b/src/lobby/CMakeLists.txt index fc4e2067..48a9596c 100644 --- a/src/lobby/CMakeLists.txt +++ b/src/lobby/CMakeLists.txt @@ -10,9 +10,6 @@ add_executable( lobby ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES} ) set_target_properties( lobby PROPERTIES - CXX_STANDARD 17 - CXX_STANDARD_REQUIRED ON - CXX_EXTENSIONS ON RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/" RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/" RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/" diff --git a/src/scripts/CMakeLists.txt b/src/scripts/CMakeLists.txt index 9d6f39f2..a049fc96 100644 --- a/src/scripts/CMakeLists.txt +++ b/src/scripts/CMakeLists.txt @@ -40,9 +40,6 @@ foreach(_scriptDir ${children}) if(MSVC) set_target_properties( "script_${_name}" PROPERTIES - CXX_STANDARD 17 - CXX_STANDARD_REQUIRED ON - CXX_EXTENSIONS ON LIBRARY_OUTPUT_DIRECTORY_DEBUG "${SCRIPT_LIB_DIR}" LIBRARY_OUTPUT_DIRECTORY_RELEASE "${SCRIPT_LIB_DIR}" LIBRARY_OUTPUT_DIRECTORY_RELWITHDEBINFO "${SCRIPT_LIB_DIR}" diff --git a/src/tools/discovery_parser/CMakeLists.txt b/src/tools/discovery_parser/CMakeLists.txt index e75e09b0..72d3f831 100644 --- a/src/tools/discovery_parser/CMakeLists.txt +++ b/src/tools/discovery_parser/CMakeLists.txt @@ -17,9 +17,6 @@ file(GLOB SERVER_SOURCE_FILES add_executable(discovery_parser ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES}) set_target_properties(discovery_parser PROPERTIES - CXX_STANDARD 17 - CXX_STANDARD_REQUIRED ON - CXX_EXTENSIONS ON RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" diff --git a/src/tools/event_object_parser/CMakeLists.txt b/src/tools/event_object_parser/CMakeLists.txt index b6e41fe7..153ec3ba 100644 --- a/src/tools/event_object_parser/CMakeLists.txt +++ b/src/tools/event_object_parser/CMakeLists.txt @@ -14,9 +14,6 @@ file(GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*") add_executable(event_object_parser ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES}) set_target_properties(event_object_parser PROPERTIES - CXX_STANDARD 17 - CXX_STANDARD_REQUIRED ON - CXX_EXTENSIONS ON RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" diff --git a/src/tools/exd_common_gen/CMakeLists.txt b/src/tools/exd_common_gen/CMakeLists.txt index 78f2714f..44f19de3 100644 --- a/src/tools/exd_common_gen/CMakeLists.txt +++ b/src/tools/exd_common_gen/CMakeLists.txt @@ -11,9 +11,6 @@ file(GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*") add_executable(exd_common_gen ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES}) set_target_properties(exd_common_gen PROPERTIES - CXX_STANDARD 17 - CXX_STANDARD_REQUIRED ON - CXX_EXTENSIONS ON RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" diff --git a/src/tools/exd_struct_gen/CMakeLists.txt b/src/tools/exd_struct_gen/CMakeLists.txt index e4fef2d0..c2a72377 100644 --- a/src/tools/exd_struct_gen/CMakeLists.txt +++ b/src/tools/exd_struct_gen/CMakeLists.txt @@ -14,9 +14,6 @@ file(GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*") add_executable(exd_struct_gen ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES}) set_target_properties(exd_struct_gen PROPERTIES - CXX_STANDARD 17 - CXX_STANDARD_REQUIRED ON - CXX_EXTENSIONS ON RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" diff --git a/src/tools/exd_struct_test/CMakeLists.txt b/src/tools/exd_struct_test/CMakeLists.txt index 2e89b09c..0f05b4e3 100644 --- a/src/tools/exd_struct_test/CMakeLists.txt +++ b/src/tools/exd_struct_test/CMakeLists.txt @@ -12,9 +12,6 @@ file(GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*") add_executable(exd_struct_test ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES}) set_target_properties(exd_struct_test PROPERTIES - CXX_STANDARD 17 - CXX_STANDARD_REQUIRED ON - CXX_EXTENSIONS ON RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" diff --git a/src/tools/mob_parse/CMakeLists.txt b/src/tools/mob_parse/CMakeLists.txt index 06e8f9e6..db59308f 100644 --- a/src/tools/mob_parse/CMakeLists.txt +++ b/src/tools/mob_parse/CMakeLists.txt @@ -12,9 +12,6 @@ file(GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*") add_executable(mob_parse ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES}) set_target_properties(mob_parse PROPERTIES - CXX_STANDARD 17 - CXX_STANDARD_REQUIRED ON - CXX_EXTENSIONS ON RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" diff --git a/src/tools/pcb_reader/CMakeLists.txt b/src/tools/pcb_reader/CMakeLists.txt index 7a330175..46eccf0f 100644 --- a/src/tools/pcb_reader/CMakeLists.txt +++ b/src/tools/pcb_reader/CMakeLists.txt @@ -12,9 +12,6 @@ file(GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*") add_executable(pcb_reader2 ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES}) set_target_properties(pcb_reader2 PROPERTIES - CXX_STANDARD 17 - CXX_STANDARD_REQUIRED ON - CXX_EXTENSIONS ON RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" diff --git a/src/tools/quest_parser/CMakeLists.txt b/src/tools/quest_parser/CMakeLists.txt index 51609ba5..ccd4098f 100644 --- a/src/tools/quest_parser/CMakeLists.txt +++ b/src/tools/quest_parser/CMakeLists.txt @@ -20,9 +20,6 @@ file(GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*") add_executable(quest_parse ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES}) set_target_properties(quest_parse PROPERTIES - CXX_STANDARD 17 - CXX_STANDARD_REQUIRED ON - CXX_EXTENSIONS ON RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../bin/" diff --git a/src/world/Actor/SpawnGroup.h b/src/world/Actor/SpawnGroup.h index 6ba85a50..5f5fb95a 100644 --- a/src/world/Actor/SpawnGroup.h +++ b/src/world/Actor/SpawnGroup.h @@ -3,7 +3,7 @@ #include "ForwardsZone.h" -namespace Core::Entity +namespace Sapphire::Entity { class SpawnGroup diff --git a/src/world/CMakeLists.txt b/src/world/CMakeLists.txt index 98583cba..0542fc26 100644 --- a/src/world/CMakeLists.txt +++ b/src/world/CMakeLists.txt @@ -24,9 +24,6 @@ file( GLOB SERVER_SOURCE_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} add_executable( world ${SERVER_SOURCE_FILES} ) set_target_properties( world PROPERTIES - CXX_STANDARD 17 - CXX_STANDARD_REQUIRED ON - CXX_EXTENSIONS ON ENABLE_EXPORTS ON WINDOWS_EXPORT_ALL_SYMBOLS ON RUNTIME_OUTPUT_DIRECTORY_DEBUG "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/" diff --git a/src/world/ForwardsZone.h b/src/world/ForwardsZone.h index 6694111d..4437ac84 100644 --- a/src/world/ForwardsZone.h +++ b/src/world/ForwardsZone.h @@ -66,6 +66,8 @@ TYPE_FORWARD( Player ); TYPE_FORWARD( EventObject ); TYPE_FORWARD( BNpcTemplate ); TYPE_FORWARD( BNpc ); +TYPE_FORWARD( SpawnPoint ); +TYPE_FORWARD( SpawnGroup ); } namespace Event diff --git a/src/world/Territory/Zone.cpp b/src/world/Territory/Zone.cpp index 699a1dfd..98cd1df5 100644 --- a/src/world/Territory/Zone.cpp +++ b/src/world/Territory/Zone.cpp @@ -24,6 +24,8 @@ #include "Actor/BNpc.h" #include "Actor/Player.h" #include "Actor/EventObject.h" +#include "Actor/SpawnGroup.h" +#include "Actor/SpawnPoint.h" #include "Network/GameConnection.h" @@ -116,7 +118,6 @@ bool Sapphire::Zone::init() // all good } - return true; } @@ -679,14 +680,14 @@ void Sapphire::Zone::onPlayerZoneIn( Entity::Player& player ) { Logger::debug( "Zone::onEnterTerritory: Zone#" + std::to_string( getGuId() ) + "|" + std::to_string( getTerritoryTypeId() ) + - +", Entity#" + std::to_string( player.getId() ) ); + + ", Entity#" + std::to_string( player.getId() ) ); } void Sapphire::Zone::onLeaveTerritory( Entity::Player& player ) { Logger::debug( "Zone::onLeaveTerritory: Zone#" + std::to_string( getGuId() ) + "|" + std::to_string( getTerritoryTypeId() ) + - +", Entity#" + std::to_string( player.getId() ) ); + + ", Entity#" + std::to_string( player.getId() ) ); } void Sapphire::Zone::onUpdate( uint32_t currTime ) @@ -757,4 +758,31 @@ Sapphire::Entity::EventObjectPtr Sapphire::Zone::registerEObj( const std::string Sapphire::Data::TerritoryTypePtr Sapphire::Zone::getTerritoryTypeInfo() const { return m_territoryTypeInfo; -} \ No newline at end of file +} + +bool Sapphire::Zone::loadSpawnGroups() +{ + auto pDb = m_pFw->get< Db::DbWorkerPool< Db::ZoneDbConnection > >(); + auto res = pDb->query( "SELECT id, bNpcTemplateId, " + "level, maxHp " + "FROM spawnGroup " + "WHERE territoryTypeId = " + std::to_string( getTerritoryTypeId() ) + ";" ); + + while( res->next() ) + { + uint32_t id = res->getUInt( 1 ); + uint32_t templateId = res->getUInt( 2 ); + uint32_t level = res->getUInt( 3 ); + uint32_t maxHp = res->getUInt( 4 ); + + //Entity::SpawnGroup group; + + Logger::debug( std::to_string( id ) + " " + + std::to_string( templateId ) + " " + + std::to_string( level ) + " " + + std::to_string( maxHp ) ); + + } + + return false; +} diff --git a/src/world/Territory/Zone.h b/src/world/Territory/Zone.h index e504c899..812b7d8a 100644 --- a/src/world/Territory/Zone.h +++ b/src/world/Territory/Zone.h @@ -134,6 +134,8 @@ namespace Sapphire void loadWeatherRates(); + bool loadSpawnGroups(); + bool checkWeather(); //void updateBnpcs( int64_t tickCount );