mirror of
https://github.com/vcmi/vcmi.git
synced 2024-12-26 22:57:00 +02:00
ac66fc7f42
New features for players: * Loading for multiplayer. Any save could be used for multiplayer. * Restart for multiplayer. All clients will restart together. * Loading from single save. * Hotseat mixed with network game. Multiple players per client. * Now connection to server could be cancelled. * Return to menu on disconnections instead of crashes. * Restoring of last selected map, save or campaign on next run. TLDR on important changes in engine code: * UI: work with server separated from UI * UI: all explitic blitting replaced with IntObject's * UI: all new code use smart pointers instead of DISPOSE * Gameplay always start through lobby controlled by server. * Threads receiving netpacks now shared for lobby and gameplay. * Campaigns: heroes for crossover now serialized as JsonNode.
46 lines
1.0 KiB
CMake
46 lines
1.0 KiB
CMake
include_directories(${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/include ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/lib)
|
|
include_directories(${Boost_INCLUDE_DIRS} ${ZLIB_INCLUDE_DIR})
|
|
|
|
set(server_SRCS
|
|
StdInc.cpp
|
|
|
|
CGameHandler.cpp
|
|
CQuery.cpp
|
|
CVCMIServer.cpp
|
|
NetPacksServer.cpp
|
|
NetPacksLobbyServer.cpp
|
|
)
|
|
|
|
set(server_HEADERS
|
|
StdInc.h
|
|
|
|
CGameHandler.h
|
|
CQuery.h
|
|
CVCMIServer.h
|
|
)
|
|
|
|
assign_source_group(${server_SRCS} ${server_HEADERS})
|
|
|
|
if(ANDROID) # android needs client/server to be libraries, not executables, so we can't reuse the build part of this script
|
|
return()
|
|
endif()
|
|
|
|
add_executable(vcmiserver ${server_SRCS} ${server_HEADERS})
|
|
|
|
target_link_libraries(vcmiserver vcmi ${Boost_LIBRARIES} ${SYSTEM_LIBS})
|
|
|
|
if(WIN32)
|
|
set_target_properties(vcmiserver
|
|
PROPERTIES
|
|
OUTPUT_NAME "VCMI_server"
|
|
PROJECT_LABEL "VCMI_server"
|
|
)
|
|
endif()
|
|
|
|
vcmi_set_output_dir(vcmiserver "")
|
|
|
|
set_target_properties(vcmiserver PROPERTIES ${PCH_PROPERTIES})
|
|
cotire(vcmiserver)
|
|
|
|
install(TARGETS vcmiserver DESTINATION ${BIN_DIR})
|