1
0

Fixed failure for cRankManager to restart

This commit is contained in:
Tiger Wang 2014-10-18 19:55:01 +01:00
parent 6a22b63473
commit eb821ff240
4 changed files with 44 additions and 43 deletions

View File

@ -34,7 +34,7 @@ static int tolua_cRankManager_AddGroup(lua_State * L)
S.GetStackValue(2, GroupName); S.GetStackValue(2, GroupName);
// Add the group: // Add the group:
cRoot::Get()->GetRankManager().AddGroup(GroupName); cRoot::Get()->GetRankManager()->AddGroup(GroupName);
return 0; return 0;
} }
@ -63,7 +63,7 @@ static int tolua_cRankManager_AddGroupToRank(lua_State * L)
S.GetStackValues(2, GroupName, RankName); S.GetStackValues(2, GroupName, RankName);
// Add the group to the rank: // Add the group to the rank:
S.Push(cRoot::Get()->GetRankManager().AddGroupToRank(GroupName, RankName)); S.Push(cRoot::Get()->GetRankManager()->AddGroupToRank(GroupName, RankName));
return 1; return 1;
} }
@ -92,7 +92,7 @@ static int tolua_cRankManager_AddPermissionToGroup(lua_State * L)
S.GetStackValues(2, Permission, GroupName); S.GetStackValues(2, Permission, GroupName);
// Add the group to the rank: // Add the group to the rank:
S.Push(cRoot::Get()->GetRankManager().AddPermissionToGroup(Permission, GroupName)); S.Push(cRoot::Get()->GetRankManager()->AddPermissionToGroup(Permission, GroupName));
return 1; return 1;
} }
@ -121,7 +121,7 @@ static int tolua_cRankManager_AddRank(lua_State * L)
S.GetStackValues(2, RankName, MsgPrefix, MsgSuffix, MsgNameColorCode); S.GetStackValues(2, RankName, MsgPrefix, MsgSuffix, MsgNameColorCode);
// Add the rank: // Add the rank:
cRoot::Get()->GetRankManager().AddRank(RankName, MsgPrefix, MsgSuffix, MsgNameColorCode); cRoot::Get()->GetRankManager()->AddRank(RankName, MsgPrefix, MsgSuffix, MsgNameColorCode);
return 0; return 0;
} }
@ -142,7 +142,7 @@ static int tolua_cRankManager_ClearPlayerRanks(lua_State * L)
} }
// Remove all players: // Remove all players:
cRoot::Get()->GetRankManager().ClearPlayerRanks(); cRoot::Get()->GetRankManager()->ClearPlayerRanks();
return 1; return 1;
} }
@ -166,7 +166,7 @@ static int tolua_cRankManager_GetAllGroups(lua_State * L)
} }
// Get the groups: // Get the groups:
AStringVector Groups = cRoot::Get()->GetRankManager().GetAllGroups(); AStringVector Groups = cRoot::Get()->GetRankManager()->GetAllGroups();
// Push the results: // Push the results:
S.Push(Groups); S.Push(Groups);
@ -193,7 +193,7 @@ static int tolua_cRankManager_GetAllPermissions(lua_State * L)
} }
// Get the permissions: // Get the permissions:
AStringVector Permissions = cRoot::Get()->GetRankManager().GetAllPermissions(); AStringVector Permissions = cRoot::Get()->GetRankManager()->GetAllPermissions();
// Push the results: // Push the results:
S.Push(Permissions); S.Push(Permissions);
@ -220,7 +220,7 @@ static int tolua_cRankManager_GetAllPlayerUUIDs(lua_State * L)
} }
// Get the player uuid's: // Get the player uuid's:
AStringVector Players = cRoot::Get()->GetRankManager().GetAllPlayerUUIDs(); AStringVector Players = cRoot::Get()->GetRankManager()->GetAllPlayerUUIDs();
// Push the results: // Push the results:
S.Push(Players); S.Push(Players);
@ -247,7 +247,7 @@ static int tolua_cRankManager_GetAllRanks(lua_State * L)
} }
// Get the ranks: // Get the ranks:
AStringVector Ranks = cRoot::Get()->GetRankManager().GetAllRanks(); AStringVector Ranks = cRoot::Get()->GetRankManager()->GetAllRanks();
// Push the results: // Push the results:
S.Push(Ranks); S.Push(Ranks);
@ -274,7 +274,7 @@ static int tolua_cRankManager_GetDefaultRank(lua_State * L)
} }
// Return the rank name: // Return the rank name:
S.Push(cRoot::Get()->GetRankManager().GetDefaultRank()); S.Push(cRoot::Get()->GetRankManager()->GetDefaultRank());
return 1; return 1;
} }
@ -303,7 +303,7 @@ static int tolua_cRankManager_GetGroupPermissions(lua_State * L)
S.GetStackValue(2, GroupName); S.GetStackValue(2, GroupName);
// Get the permissions: // Get the permissions:
AStringVector Permissions = cRoot::Get()->GetRankManager().GetGroupPermissions(GroupName); AStringVector Permissions = cRoot::Get()->GetRankManager()->GetGroupPermissions(GroupName);
// Push the results: // Push the results:
S.Push(Permissions); S.Push(Permissions);
@ -335,7 +335,7 @@ static int tolua_cRankManager_GetPlayerGroups(lua_State * L)
S.GetStackValue(2, PlayerUUID); S.GetStackValue(2, PlayerUUID);
// Get the groups: // Get the groups:
AStringVector Groups = cRoot::Get()->GetRankManager().GetPlayerGroups(PlayerUUID); AStringVector Groups = cRoot::Get()->GetRankManager()->GetPlayerGroups(PlayerUUID);
// Push the results: // Push the results:
S.Push(Groups); S.Push(Groups);
@ -368,7 +368,7 @@ static int tolua_cRankManager_GetPlayerMsgVisuals(lua_State * L)
// Get the permissions: // Get the permissions:
AString MsgPrefix, MsgSuffix, MsgNameColorCode; AString MsgPrefix, MsgSuffix, MsgNameColorCode;
if (!cRoot::Get()->GetRankManager().GetPlayerMsgVisuals(PlayerUUID, MsgPrefix, MsgSuffix, MsgNameColorCode)) if (!cRoot::Get()->GetRankManager()->GetPlayerMsgVisuals(PlayerUUID, MsgPrefix, MsgSuffix, MsgNameColorCode))
{ {
return 0; return 0;
} }
@ -405,7 +405,7 @@ static int tolua_cRankManager_GetPlayerPermissions(lua_State * L)
S.GetStackValue(2, PlayerUUID); S.GetStackValue(2, PlayerUUID);
// Get the permissions: // Get the permissions:
AStringVector Permissions = cRoot::Get()->GetRankManager().GetPlayerPermissions(PlayerUUID); AStringVector Permissions = cRoot::Get()->GetRankManager()->GetPlayerPermissions(PlayerUUID);
// Push the results: // Push the results:
S.Push(Permissions); S.Push(Permissions);
@ -437,7 +437,7 @@ static int tolua_cRankManager_GetPlayerRankName(lua_State * L)
S.GetStackValue(2, PlayerUUID); S.GetStackValue(2, PlayerUUID);
// Get the rank name: // Get the rank name:
AString RankName = cRoot::Get()->GetRankManager().GetPlayerRankName(PlayerUUID); AString RankName = cRoot::Get()->GetRankManager()->GetPlayerRankName(PlayerUUID);
// Push the result: // Push the result:
S.Push(RankName); S.Push(RankName);
@ -469,7 +469,7 @@ static int tolua_cRankManager_GetPlayerName(lua_State * L)
S.GetStackValue(2, PlayerUUID); S.GetStackValue(2, PlayerUUID);
// Get the player name: // Get the player name:
AString PlayerName = cRoot::Get()->GetRankManager().GetPlayerName(PlayerUUID); AString PlayerName = cRoot::Get()->GetRankManager()->GetPlayerName(PlayerUUID);
// Push the result: // Push the result:
S.Push(PlayerName); S.Push(PlayerName);
@ -501,7 +501,7 @@ static int tolua_cRankManager_GetRankGroups(lua_State * L)
S.GetStackValue(2, RankName); S.GetStackValue(2, RankName);
// Get the groups: // Get the groups:
AStringVector Groups = cRoot::Get()->GetRankManager().GetRankGroups(RankName); AStringVector Groups = cRoot::Get()->GetRankManager()->GetRankGroups(RankName);
// Push the results: // Push the results:
S.Push(Groups); S.Push(Groups);
@ -533,7 +533,7 @@ static int tolua_cRankManager_GetRankPermissions(lua_State * L)
S.GetStackValue(2, RankName); S.GetStackValue(2, RankName);
// Get the permissions: // Get the permissions:
AStringVector Permissions = cRoot::Get()->GetRankManager().GetRankPermissions(RankName); AStringVector Permissions = cRoot::Get()->GetRankManager()->GetRankPermissions(RankName);
// Push the results: // Push the results:
S.Push(Permissions); S.Push(Permissions);
@ -566,7 +566,7 @@ static int tolua_cRankManager_GetRankVisuals(lua_State * L)
// Get the visuals: // Get the visuals:
AString MsgPrefix, MsgSuffix, MsgNameColorCode; AString MsgPrefix, MsgSuffix, MsgNameColorCode;
if (!cRoot::Get()->GetRankManager().GetRankVisuals(RankName, MsgPrefix, MsgSuffix, MsgNameColorCode)) if (!cRoot::Get()->GetRankManager()->GetRankVisuals(RankName, MsgPrefix, MsgSuffix, MsgNameColorCode))
{ {
// No such rank, return nothing: // No such rank, return nothing:
return 0; return 0;
@ -604,7 +604,7 @@ static int tolua_cRankManager_GroupExists(lua_State * L)
S.GetStackValue(2, GroupName); S.GetStackValue(2, GroupName);
// Get the response: // Get the response:
bool res = cRoot::Get()->GetRankManager().GroupExists(GroupName); bool res = cRoot::Get()->GetRankManager()->GroupExists(GroupName);
// Push the result: // Push the result:
S.Push(res); S.Push(res);
@ -636,7 +636,7 @@ static int tolua_cRankManager_IsGroupInRank(lua_State * L)
S.GetStackValues(2, GroupName, RankName); S.GetStackValues(2, GroupName, RankName);
// Get the response: // Get the response:
bool res = cRoot::Get()->GetRankManager().IsGroupInRank(GroupName, RankName); bool res = cRoot::Get()->GetRankManager()->IsGroupInRank(GroupName, RankName);
// Push the result: // Push the result:
S.Push(res); S.Push(res);
@ -668,7 +668,7 @@ static int tolua_cRankManager_IsPermissionInGroup(lua_State * L)
S.GetStackValues(2, Permission, GroupName); S.GetStackValues(2, Permission, GroupName);
// Get the response: // Get the response:
bool res = cRoot::Get()->GetRankManager().IsPermissionInGroup(Permission, GroupName); bool res = cRoot::Get()->GetRankManager()->IsPermissionInGroup(Permission, GroupName);
// Push the result: // Push the result:
S.Push(res); S.Push(res);
@ -700,7 +700,7 @@ static int tolua_cRankManager_IsPlayerRankSet(lua_State * L)
S.GetStackValue(2, PlayerUUID); S.GetStackValue(2, PlayerUUID);
// Get the response: // Get the response:
bool res = cRoot::Get()->GetRankManager().IsPlayerRankSet(PlayerUUID); bool res = cRoot::Get()->GetRankManager()->IsPlayerRankSet(PlayerUUID);
// Push the result: // Push the result:
S.Push(res); S.Push(res);
@ -732,7 +732,7 @@ static int tolua_cRankManager_RankExists(lua_State * L)
S.GetStackValue(2, RankName); S.GetStackValue(2, RankName);
// Get the response: // Get the response:
bool res = cRoot::Get()->GetRankManager().RankExists(RankName); bool res = cRoot::Get()->GetRankManager()->RankExists(RankName);
// Push the result: // Push the result:
S.Push(res); S.Push(res);
@ -764,7 +764,7 @@ static int tolua_cRankManager_RemoveGroup(lua_State * L)
S.GetStackValue(2, GroupName); S.GetStackValue(2, GroupName);
// Remove the group: // Remove the group:
cRoot::Get()->GetRankManager().RemoveGroup(GroupName); cRoot::Get()->GetRankManager()->RemoveGroup(GroupName);
return 0; return 0;
} }
@ -793,7 +793,7 @@ static int tolua_cRankManager_RemoveGroupFromRank(lua_State * L)
S.GetStackValues(2, GroupName, RankName); S.GetStackValues(2, GroupName, RankName);
// Remove the group: // Remove the group:
cRoot::Get()->GetRankManager().RemoveGroupFromRank(GroupName, RankName); cRoot::Get()->GetRankManager()->RemoveGroupFromRank(GroupName, RankName);
return 0; return 0;
} }
@ -822,7 +822,7 @@ static int tolua_cRankManager_RemovePermissionFromGroup(lua_State * L)
S.GetStackValues(2, Permission, GroupName); S.GetStackValues(2, Permission, GroupName);
// Remove the group: // Remove the group:
cRoot::Get()->GetRankManager().RemovePermissionFromGroup(Permission, GroupName); cRoot::Get()->GetRankManager()->RemovePermissionFromGroup(Permission, GroupName);
return 0; return 0;
} }
@ -851,7 +851,7 @@ static int tolua_cRankManager_RemovePlayerRank(lua_State * L)
S.GetStackValue(2, PlayerUUID); S.GetStackValue(2, PlayerUUID);
// Remove the player's rank: // Remove the player's rank:
cRoot::Get()->GetRankManager().RemovePlayerRank(PlayerUUID); cRoot::Get()->GetRankManager()->RemovePlayerRank(PlayerUUID);
return 0; return 0;
} }
@ -881,7 +881,7 @@ static int tolua_cRankManager_RemoveRank(lua_State * L)
S.GetStackValues(2, RankName, ReplacementRankName); S.GetStackValues(2, RankName, ReplacementRankName);
// Remove the rank: // Remove the rank:
cRoot::Get()->GetRankManager().RemoveRank(RankName, ReplacementRankName); cRoot::Get()->GetRankManager()->RemoveRank(RankName, ReplacementRankName);
return 0; return 0;
} }
@ -910,7 +910,7 @@ static int tolua_cRankManager_RenameGroup(lua_State * L)
S.GetStackValues(2, OldName, NewName); S.GetStackValues(2, OldName, NewName);
// Remove the group: // Remove the group:
bool res = cRoot::Get()->GetRankManager().RenameGroup(OldName, NewName); bool res = cRoot::Get()->GetRankManager()->RenameGroup(OldName, NewName);
// Push the result: // Push the result:
S.Push(res); S.Push(res);
@ -942,7 +942,7 @@ static int tolua_cRankManager_RenameRank(lua_State * L)
S.GetStackValues(2, OldName, NewName); S.GetStackValues(2, OldName, NewName);
// Remove the rank: // Remove the rank:
bool res = cRoot::Get()->GetRankManager().RenameRank(OldName, NewName); bool res = cRoot::Get()->GetRankManager()->RenameRank(OldName, NewName);
// Push the result: // Push the result:
S.Push(res); S.Push(res);
@ -974,7 +974,7 @@ static int tolua_cRankManager_SetDefaultRank(lua_State * L)
S.GetStackValue(2, RankName); S.GetStackValue(2, RankName);
// Set the rank, return the result: // Set the rank, return the result:
S.Push(cRoot::Get()->GetRankManager().SetDefaultRank(RankName)); S.Push(cRoot::Get()->GetRankManager()->SetDefaultRank(RankName));
return 1; return 1;
} }
@ -1003,7 +1003,7 @@ static int tolua_cRankManager_SetPlayerRank(lua_State * L)
S.GetStackValues(2, PlayerUUID, PlayerName, RankName); S.GetStackValues(2, PlayerUUID, PlayerName, RankName);
// Set the rank: // Set the rank:
cRoot::Get()->GetRankManager().SetPlayerRank(PlayerUUID, PlayerName, RankName); cRoot::Get()->GetRankManager()->SetPlayerRank(PlayerUUID, PlayerName, RankName);
return 0; return 0;
} }
@ -1032,7 +1032,7 @@ static int tolua_cRankManager_SetRankVisuals(lua_State * L)
S.GetStackValues(2, RankName, MsgPrefix, MsgSuffix, MsgNameColorCode); S.GetStackValues(2, RankName, MsgPrefix, MsgSuffix, MsgNameColorCode);
// Set the visuals: // Set the visuals:
cRoot::Get()->GetRankManager().SetRankVisuals(RankName, MsgPrefix, MsgSuffix, MsgNameColorCode); cRoot::Get()->GetRankManager()->SetRankVisuals(RankName, MsgPrefix, MsgSuffix, MsgNameColorCode);
return 0; return 0;
} }

View File

@ -2134,19 +2134,19 @@ void cPlayer::ApplyFoodExhaustionFromMovement()
void cPlayer::LoadRank(void) void cPlayer::LoadRank(void)
{ {
// Load the values from cRankManager: // Load the values from cRankManager:
cRankManager & RankMgr = cRoot::Get()->GetRankManager(); cRankManager * RankMgr = cRoot::Get()->GetRankManager();
m_Rank = RankMgr.GetPlayerRankName(m_UUID); m_Rank = RankMgr->GetPlayerRankName(m_UUID);
if (m_Rank.empty()) if (m_Rank.empty())
{ {
m_Rank = RankMgr.GetDefaultRank(); m_Rank = RankMgr->GetDefaultRank();
} }
else else
{ {
// Update the name: // Update the name:
RankMgr.UpdatePlayerName(m_UUID, m_PlayerName); RankMgr->UpdatePlayerName(m_UUID, m_PlayerName);
} }
m_Permissions = RankMgr.GetPlayerPermissions(m_UUID); m_Permissions = RankMgr->GetPlayerPermissions(m_UUID);
RankMgr.GetRankVisuals(m_Rank, m_MsgPrefix, m_MsgSuffix, m_MsgNameColorCode); RankMgr->GetRankVisuals(m_Rank, m_MsgPrefix, m_MsgSuffix, m_MsgNameColorCode);
// Break up the individual permissions on each dot, into m_SplitPermissions: // Break up the individual permissions on each dot, into m_SplitPermissions:
m_SplitPermissions.clear(); m_SplitPermissions.clear();

View File

@ -154,7 +154,8 @@ void cRoot::Start(void)
m_WebAdmin->Init(); m_WebAdmin->Init();
LOGD("Loading settings..."); LOGD("Loading settings...");
m_RankManager.Initialize(m_MojangAPI); m_RankManager = new cRankManager();
m_RankManager->Initialize(m_MojangAPI);
m_CraftingRecipes = new cCraftingRecipes; m_CraftingRecipes = new cCraftingRecipes;
m_FurnaceRecipe = new cFurnaceRecipe(); m_FurnaceRecipe = new cFurnaceRecipe();

View File

@ -86,7 +86,7 @@ public:
cPluginManager * GetPluginManager (void) { return m_PluginManager; } // tolua_export cPluginManager * GetPluginManager (void) { return m_PluginManager; } // tolua_export
cAuthenticator & GetAuthenticator (void) { return m_Authenticator; } cAuthenticator & GetAuthenticator (void) { return m_Authenticator; }
cMojangAPI & GetMojangAPI (void) { return m_MojangAPI; } cMojangAPI & GetMojangAPI (void) { return m_MojangAPI; }
cRankManager & GetRankManager (void) { return m_RankManager; } cRankManager * GetRankManager (void) { return m_RankManager; }
/** Queues a console command for execution through the cServer class. /** Queues a console command for execution through the cServer class.
The command will be executed in the tick thread The command will be executed in the tick thread
@ -185,7 +185,7 @@ private:
cPluginManager * m_PluginManager; cPluginManager * m_PluginManager;
cAuthenticator m_Authenticator; cAuthenticator m_Authenticator;
cMojangAPI m_MojangAPI; cMojangAPI m_MojangAPI;
cRankManager m_RankManager; cRankManager * m_RankManager;
cHTTPServer m_HTTPServer; cHTTPServer m_HTTPServer;
bool m_bStop; bool m_bStop;