Merge remote-tracking branch 'origin/master' into portals
Conflicts: src/Chunk.cpp src/Entities/Player.cpp src/Root.cpp src/World.cpp
This commit is contained in:
+13
-15
@@ -30,8 +30,6 @@
|
||||
#include <mach/mach.h>
|
||||
#endif
|
||||
|
||||
extern bool g_TERMINATE_EVENT_RAISED;
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -79,7 +77,7 @@ void cRoot::InputThread(void * a_Params)
|
||||
|
||||
cLogCommandOutputCallback Output;
|
||||
|
||||
while (!self.m_bStop && !self.m_bRestart && !g_TERMINATE_EVENT_RAISED && std::cin.good())
|
||||
while (!self.m_bStop && !self.m_bRestart && !m_TerminateEventRaised && std::cin.good())
|
||||
{
|
||||
AString Command;
|
||||
std::getline(std::cin, Command);
|
||||
@@ -89,7 +87,7 @@ void cRoot::InputThread(void * a_Params)
|
||||
}
|
||||
}
|
||||
|
||||
if (g_TERMINATE_EVENT_RAISED || !std::cin.good())
|
||||
if (m_TerminateEventRaised || !std::cin.good())
|
||||
{
|
||||
// We have come here because the std::cin has received an EOF / a terminate signal has been sent, and the server is still running; stop the server:
|
||||
self.m_bStop = true;
|
||||
@@ -193,8 +191,8 @@ void cRoot::Start(void)
|
||||
|
||||
#if !defined(ANDROID_NDK)
|
||||
LOGD("Starting InputThread...");
|
||||
m_InputThread = new cThread( InputThread, this, "cRoot::InputThread" );
|
||||
m_InputThread->Start( false ); // We should NOT wait? Otherwise we can't stop the server from other threads than the input thread
|
||||
m_InputThread = new cThread( InputThread, this, "cRoot::InputThread");
|
||||
m_InputThread->Start( false); // We should NOT wait? Otherwise we can't stop the server from other threads than the input thread
|
||||
#endif
|
||||
|
||||
long long finishmseconds = Time.GetNowTime();
|
||||
@@ -205,12 +203,12 @@ void cRoot::Start(void)
|
||||
EnableMenuItem(hmenu, SC_CLOSE, MF_ENABLED); // Re-enable close button
|
||||
#endif
|
||||
|
||||
while (!m_bStop && !m_bRestart && !g_TERMINATE_EVENT_RAISED) // These are modified by external threads
|
||||
while (!m_bStop && !m_bRestart && !m_TerminateEventRaised) // These are modified by external threads
|
||||
{
|
||||
cSleep::MilliSleep(1000);
|
||||
}
|
||||
|
||||
if (g_TERMINATE_EVENT_RAISED)
|
||||
if (m_TerminateEventRaised)
|
||||
{
|
||||
m_bStop = true;
|
||||
}
|
||||
@@ -271,12 +269,12 @@ void cRoot::LoadWorlds(cIniFile & IniFile)
|
||||
{
|
||||
// First get the default world
|
||||
AString DefaultWorldName = IniFile.GetValueSet("Worlds", "DefaultWorld", "world");
|
||||
m_pDefaultWorld = new cWorld( DefaultWorldName.c_str() );
|
||||
m_pDefaultWorld = new cWorld( DefaultWorldName.c_str());
|
||||
m_WorldsByName[ DefaultWorldName ] = m_pDefaultWorld;
|
||||
|
||||
// Then load the other worlds
|
||||
unsigned int KeyNum = IniFile.FindKey("Worlds");
|
||||
unsigned int NumWorlds = IniFile.GetNumValues( KeyNum );
|
||||
unsigned int NumWorlds = IniFile.GetNumValues( KeyNum);
|
||||
if (NumWorlds <= 0)
|
||||
{
|
||||
return;
|
||||
@@ -285,18 +283,18 @@ void cRoot::LoadWorlds(cIniFile & IniFile)
|
||||
bool FoundAdditionalWorlds = false;
|
||||
for (unsigned int i = 0; i < NumWorlds; i++)
|
||||
{
|
||||
AString ValueName = IniFile.GetValueName(KeyNum, i );
|
||||
AString ValueName = IniFile.GetValueName(KeyNum, i);
|
||||
if (ValueName.compare("World") != 0)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
AString WorldName = IniFile.GetValue(KeyNum, i );
|
||||
AString WorldName = IniFile.GetValue(KeyNum, i);
|
||||
if (WorldName.empty())
|
||||
{
|
||||
continue;
|
||||
}
|
||||
FoundAdditionalWorlds = true;
|
||||
cWorld* NewWorld = new cWorld( WorldName.c_str() );
|
||||
cWorld* NewWorld = new cWorld( WorldName.c_str());
|
||||
m_WorldsByName[ WorldName ] = NewWorld;
|
||||
} // for i - Worlds
|
||||
|
||||
@@ -361,7 +359,7 @@ void cRoot::StopWorlds(void)
|
||||
void cRoot::UnloadWorlds(void)
|
||||
{
|
||||
m_pDefaultWorld = NULL;
|
||||
for( WorldMap::iterator itr = m_WorldsByName.begin(); itr != m_WorldsByName.end(); ++itr )
|
||||
for (WorldMap::iterator itr = m_WorldsByName.begin(); itr != m_WorldsByName.end(); ++itr)
|
||||
{
|
||||
delete itr->second;
|
||||
}
|
||||
@@ -521,7 +519,7 @@ void cRoot::AuthenticateUser(int a_ClientID, const AString & a_Name, const AStri
|
||||
int cRoot::GetTotalChunkCount(void)
|
||||
{
|
||||
int res = 0;
|
||||
for ( WorldMap::iterator itr = m_WorldsByName.begin(); itr != m_WorldsByName.end(); ++itr )
|
||||
for (WorldMap::iterator itr = m_WorldsByName.begin(); itr != m_WorldsByName.end(); ++itr)
|
||||
{
|
||||
res += itr->second->GetNumChunks();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user