mirror of
https://github.com/vcmi/vcmi.git
synced 2025-03-19 21:10:12 +02:00
parent
d9d01f0b68
commit
965b33d16a
@ -176,7 +176,7 @@ void CVCMIServer::run()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
while(state == EServerState::LOBBY)
|
while(state == EServerState::LOBBY || state == EServerState::GAMEPLAY_STARTING)
|
||||||
boost::this_thread::sleep(boost::posix_time::milliseconds(50));
|
boost::this_thread::sleep(boost::posix_time::milliseconds(50));
|
||||||
|
|
||||||
logNetwork->info("Thread handling connections ended");
|
logNetwork->info("Thread handling connections ended");
|
||||||
|
@ -32,6 +32,7 @@ class CBaseForGHApply;
|
|||||||
enum class EServerState : ui8
|
enum class EServerState : ui8
|
||||||
{
|
{
|
||||||
LOBBY,
|
LOBBY,
|
||||||
|
GAMEPLAY_STARTING,
|
||||||
GAMEPLAY,
|
GAMEPLAY,
|
||||||
GAMEPLAY_ENDED,
|
GAMEPLAY_ENDED,
|
||||||
SHUTDOWN
|
SHUTDOWN
|
||||||
|
@ -115,6 +115,9 @@ bool LobbyChatMessage::checkClientPermissions(CVCMIServer * srv) const
|
|||||||
|
|
||||||
bool LobbySetMap::applyOnServer(CVCMIServer * srv)
|
bool LobbySetMap::applyOnServer(CVCMIServer * srv)
|
||||||
{
|
{
|
||||||
|
if(srv->state != EServerState::LOBBY)
|
||||||
|
return false;
|
||||||
|
|
||||||
srv->updateStartInfoOnMapChange(mapInfo, mapGenOpts);
|
srv->updateStartInfoOnMapChange(mapInfo, mapGenOpts);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -172,6 +175,7 @@ bool LobbyStartGame::applyOnServer(CVCMIServer * srv)
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
// Server will prepare gamestate and we announce StartInfo to clients
|
// Server will prepare gamestate and we announce StartInfo to clients
|
||||||
|
srv->state = EServerState::GAMEPLAY_STARTING;
|
||||||
srv->prepareToStartGame();
|
srv->prepareToStartGame();
|
||||||
initializedStartInfo = std::make_shared<StartInfo>(*srv->gh->getStartInfo(true));
|
initializedStartInfo = std::make_shared<StartInfo>(*srv->gh->getStartInfo(true));
|
||||||
return true;
|
return true;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user