diff --git a/CMakeLists.txt b/CMakeLists.txt index a0b051f8..1a53f793 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -36,8 +36,11 @@ add_subdirectory( "deps/datReader" ) add_subdirectory( "deps/mysqlConnector" ) add_subdirectory( "src/common" ) -add_subdirectory( "src/servers" ) +add_subdirectory( "src/api" ) +add_subdirectory( "src/lobby" ) +add_subdirectory( "src/world" ) add_subdirectory( "src/dbm" ) +add_subdirectory( "src/scripts" ) add_subdirectory( "src/tools/exd_common_gen" ) add_subdirectory( "src/tools/exd_struct_gen" ) diff --git a/src/servers/sapphire_api/CMakeLists.txt b/src/api/CMakeLists.txt similarity index 50% rename from src/servers/sapphire_api/CMakeLists.txt rename to src/api/CMakeLists.txt index ab5f9d6f..c30aded2 100644 --- a/src/servers/sapphire_api/CMakeLists.txt +++ b/src/api/CMakeLists.txt @@ -1,13 +1,13 @@ -cmake_minimum_required(VERSION 2.6) -cmake_policy(SET CMP0015 NEW) -project(Sapphire) +cmake_minimum_required( VERSION 2.6 ) +cmake_policy( SET CMP0015 NEW ) +project( Sapphire ) -file(GLOB SERVER_PUBLIC_INCLUDE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/*") -file(GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*") +file( GLOB SERVER_PUBLIC_INCLUDE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/*" ) +file( GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*" ) -add_executable(sapphire_api ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES}) +add_executable( api ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES} ) -set_target_properties(sapphire_api PROPERTIES +set_target_properties( api PROPERTIES CXX_STANDARD 17 CXX_STANDARD_REQUIRED ON CXX_EXTENSIONS ON @@ -18,10 +18,10 @@ set_target_properties(sapphire_api PROPERTIES VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/" ) -target_link_libraries( sapphire_api common ) +target_link_libraries( api common ) if( UNIX ) - target_link_libraries( sapphire_api mysqlclient stdc++fs ) + target_link_libraries( api mysqlclient stdc++fs ) else() - target_link_libraries( sapphire_api mysql ) + target_link_libraries( api mysql ) endif() diff --git a/src/servers/sapphire_api/Forwards.h b/src/api/Forwards.h similarity index 100% rename from src/servers/sapphire_api/Forwards.h rename to src/api/Forwards.h diff --git a/src/servers/sapphire_api/LoginSession.cpp b/src/api/LoginSession.cpp similarity index 100% rename from src/servers/sapphire_api/LoginSession.cpp rename to src/api/LoginSession.cpp diff --git a/src/servers/sapphire_api/LoginSession.h b/src/api/LoginSession.h similarity index 100% rename from src/servers/sapphire_api/LoginSession.h rename to src/api/LoginSession.h diff --git a/src/servers/sapphire_api/PlayerMinimal.cpp b/src/api/PlayerMinimal.cpp similarity index 100% rename from src/servers/sapphire_api/PlayerMinimal.cpp rename to src/api/PlayerMinimal.cpp diff --git a/src/servers/sapphire_api/PlayerMinimal.h b/src/api/PlayerMinimal.h similarity index 100% rename from src/servers/sapphire_api/PlayerMinimal.h rename to src/api/PlayerMinimal.h diff --git a/src/servers/sapphire_api/SapphireAPI.cpp b/src/api/SapphireAPI.cpp similarity index 100% rename from src/servers/sapphire_api/SapphireAPI.cpp rename to src/api/SapphireAPI.cpp diff --git a/src/servers/sapphire_api/SapphireAPI.h b/src/api/SapphireAPI.h similarity index 100% rename from src/servers/sapphire_api/SapphireAPI.h rename to src/api/SapphireAPI.h diff --git a/src/servers/sapphire_api/Session.cpp b/src/api/Session.cpp similarity index 100% rename from src/servers/sapphire_api/Session.cpp rename to src/api/Session.cpp diff --git a/src/servers/sapphire_api/Session.h b/src/api/Session.h similarity index 100% rename from src/servers/sapphire_api/Session.h rename to src/api/Session.h diff --git a/src/servers/sapphire_api/client_http.hpp b/src/api/client_http.hpp similarity index 100% rename from src/servers/sapphire_api/client_http.hpp rename to src/api/client_http.hpp diff --git a/src/servers/sapphire_api/main.cpp b/src/api/main.cpp similarity index 100% rename from src/servers/sapphire_api/main.cpp rename to src/api/main.cpp diff --git a/src/servers/sapphire_api/server_http.hpp b/src/api/server_http.hpp similarity index 100% rename from src/servers/sapphire_api/server_http.hpp rename to src/api/server_http.hpp diff --git a/src/dbm/CMakeLists.txt b/src/dbm/CMakeLists.txt index 0736265e..f731b609 100644 --- a/src/dbm/CMakeLists.txt +++ b/src/dbm/CMakeLists.txt @@ -1,13 +1,13 @@ -cmake_minimum_required(VERSION 3.0) -cmake_policy(SET CMP0015 NEW) -project(sapphire_dbm) +cmake_minimum_required( VERSION 3.0 ) +cmake_policy( SET CMP0015 NEW ) +project( dbm ) -file(GLOB SERVER_PUBLIC_INCLUDE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/*" ) -file(GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*") +file( GLOB SERVER_PUBLIC_INCLUDE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/*" ) +file( GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*" ) -add_executable(sapphire_dbm ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES}) +add_executable( dbm ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES} ) -set_target_properties(sapphire_dbm PROPERTIES +set_target_properties( dbm PROPERTIES CXX_STANDARD 17 CXX_STANDARD_REQUIRED ON CXX_EXTENSIONS ON @@ -17,15 +17,15 @@ set_target_properties(sapphire_dbm PROPERTIES RUNTIME_OUTPUT_DIRECTORY_MINSIZEREL "${CMAKE_CURRENT_SOURCE_DIR}/../../bin/" ) -target_include_directories( sapphire_dbm +target_include_directories( dbm PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/" PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/../" ) - target_link_libraries( sapphire_dbm PRIVATE mysqlConnector common xivdat ) +target_link_libraries( dbm PRIVATE mysqlConnector common xivdat ) if (UNIX) - target_link_libraries( sapphire_dbm PRIVATE stdc++fs ) + target_link_libraries( dbm PRIVATE stdc++fs ) else() - target_link_libraries( sapphire_dbm PRIVATE mysql ) + target_link_libraries( dbm PRIVATE mysql ) endif() diff --git a/src/servers/sapphire_lobby/CMakeLists.txt b/src/lobby/CMakeLists.txt similarity index 75% rename from src/servers/sapphire_lobby/CMakeLists.txt rename to src/lobby/CMakeLists.txt index b6000a47..cc262001 100644 --- a/src/servers/sapphire_lobby/CMakeLists.txt +++ b/src/lobby/CMakeLists.txt @@ -6,9 +6,9 @@ file( GLOB SERVER_PUBLIC_INCLUDE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/*" ) file( GLOB SERVER_SOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}*.c*" ) -add_executable( sapphire_lobby ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES} ) +add_executable( lobby ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES} ) -set_target_properties( sapphire_lobby +set_target_properties( lobby PROPERTIES CXX_STANDARD 17 CXX_STANDARD_REQUIRED ON @@ -18,15 +18,16 @@ set_target_properties( sapphire_lobby RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/" RUNTIME_OUTPUT_DIRECTORY_MINSIZEREL "${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/" VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/../../../bin/" - ) -target_link_libraries( sapphire_lobby - PRIVATE - common mysql ) +) +target_link_libraries( lobby + PRIVATE + common + mysql ) if( UNIX ) - target_link_libraries( sapphire_lobby + target_link_libraries( lobby PRIVATE stdc++fs ) endif() - #cotire( sapphire_lobby ) +#cotire( lobby ) diff --git a/src/servers/sapphire_lobby/Forwards.h b/src/lobby/Forwards.h similarity index 100% rename from src/servers/sapphire_lobby/Forwards.h rename to src/lobby/Forwards.h diff --git a/src/servers/sapphire_lobby/GameConnection.cpp b/src/lobby/GameConnection.cpp similarity index 100% rename from src/servers/sapphire_lobby/GameConnection.cpp rename to src/lobby/GameConnection.cpp diff --git a/src/servers/sapphire_lobby/GameConnection.h b/src/lobby/GameConnection.h similarity index 100% rename from src/servers/sapphire_lobby/GameConnection.h rename to src/lobby/GameConnection.h diff --git a/src/servers/sapphire_lobby/LobbyPacketContainer.cpp b/src/lobby/LobbyPacketContainer.cpp similarity index 100% rename from src/servers/sapphire_lobby/LobbyPacketContainer.cpp rename to src/lobby/LobbyPacketContainer.cpp diff --git a/src/servers/sapphire_lobby/LobbyPacketContainer.h b/src/lobby/LobbyPacketContainer.h similarity index 100% rename from src/servers/sapphire_lobby/LobbyPacketContainer.h rename to src/lobby/LobbyPacketContainer.h diff --git a/src/servers/sapphire_lobby/LobbySession.cpp b/src/lobby/LobbySession.cpp similarity index 100% rename from src/servers/sapphire_lobby/LobbySession.cpp rename to src/lobby/LobbySession.cpp diff --git a/src/servers/sapphire_lobby/LobbySession.h b/src/lobby/LobbySession.h similarity index 100% rename from src/servers/sapphire_lobby/LobbySession.h rename to src/lobby/LobbySession.h diff --git a/src/servers/sapphire_lobby/RestConnector.cpp b/src/lobby/RestConnector.cpp similarity index 100% rename from src/servers/sapphire_lobby/RestConnector.cpp rename to src/lobby/RestConnector.cpp diff --git a/src/servers/sapphire_lobby/RestConnector.h b/src/lobby/RestConnector.h similarity index 100% rename from src/servers/sapphire_lobby/RestConnector.h rename to src/lobby/RestConnector.h diff --git a/src/servers/sapphire_lobby/ServerLobby.cpp b/src/lobby/ServerLobby.cpp similarity index 100% rename from src/servers/sapphire_lobby/ServerLobby.cpp rename to src/lobby/ServerLobby.cpp diff --git a/src/servers/sapphire_lobby/ServerLobby.h b/src/lobby/ServerLobby.h similarity index 100% rename from src/servers/sapphire_lobby/ServerLobby.h rename to src/lobby/ServerLobby.h diff --git a/src/servers/sapphire_lobby/client_http.hpp b/src/lobby/client_http.hpp similarity index 100% rename from src/servers/sapphire_lobby/client_http.hpp rename to src/lobby/client_http.hpp diff --git a/src/servers/sapphire_lobby/mainLobbyServer.cpp b/src/lobby/mainLobbyServer.cpp similarity index 100% rename from src/servers/sapphire_lobby/mainLobbyServer.cpp rename to src/lobby/mainLobbyServer.cpp diff --git a/src/servers/Scripts/CMakeLists.txt b/src/scripts/CMakeLists.txt similarity index 96% rename from src/servers/Scripts/CMakeLists.txt rename to src/scripts/CMakeLists.txt index 06ea6827..dd9f0759 100644 --- a/src/servers/Scripts/CMakeLists.txt +++ b/src/scripts/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.0) -project(Sapphire_Script) +project(Script) file(GLOB SCRIPT_INCLUDE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/*.h") @@ -36,7 +36,7 @@ foreach(_scriptDir ${children}) endforeach() add_library("script_${_name}" MODULE ${SCRIPT_BUILD_FILES} "${SCRIPT_INCLUDE_FILES}" "${_scriptDir}/ScriptLoader.cpp") - target_link_libraries( "script_${_name}" sapphire_zone ) + target_link_libraries( "script_${_name}" world ) if(MSVC) set_target_properties( "script_${_name}" PROPERTIES @@ -56,7 +56,7 @@ foreach(_scriptDir ${children}) configure_file("${CMAKE_CURRENT_SOURCE_DIR}/ScriptLoader.cpp.in" "${_scriptDir}/ScriptLoader.cpp") - #cotire("script_${_name}") + cotire("script_${_name}") if(MSVC) add_custom_command(TARGET "script_${_name}" POST_BUILD diff --git a/src/servers/Scripts/ScriptLoader.cpp.in b/src/scripts/ScriptLoader.cpp.in similarity index 100% rename from src/servers/Scripts/ScriptLoader.cpp.in rename to src/scripts/ScriptLoader.cpp.in diff --git a/src/servers/Scripts/ScriptObject.h b/src/scripts/ScriptObject.h similarity index 100% rename from src/servers/Scripts/ScriptObject.h rename to src/scripts/ScriptObject.h diff --git a/src/servers/Scripts/action/ActionReturn6.cpp b/src/scripts/action/ActionReturn6.cpp similarity index 100% rename from src/servers/Scripts/action/ActionReturn6.cpp rename to src/scripts/action/ActionReturn6.cpp diff --git a/src/servers/Scripts/action/ActionSprint3.cpp b/src/scripts/action/ActionSprint3.cpp similarity index 100% rename from src/servers/Scripts/action/ActionSprint3.cpp rename to src/scripts/action/ActionSprint3.cpp diff --git a/src/scripts/action/ScriptLoader.cpp b/src/scripts/action/ScriptLoader.cpp new file mode 100644 index 00000000..53a1a372 --- /dev/null +++ b/src/scripts/action/ScriptLoader.cpp @@ -0,0 +1,17 @@ +#include