From 39f7d51747746702dedfc783e6b4602dc6b43fa0 Mon Sep 17 00:00:00 2001 From: David Anderson Date: Tue, 24 Jul 2007 22:20:58 +0000 Subject: [PATCH] added amb403 (sm_reloadadmins) --HG-- extra : convert_revision : svn%3A39bc706e-5318-0410-9160-8a85361fbb7c/trunk%401168 --- core/AdminCache.cpp | 1 + core/PlayerManager.cpp | 12 ++++++++++++ core/PlayerManager.h | 1 + plugins/basecommands.sp | 13 +++++++++++++ 4 files changed, 27 insertions(+) diff --git a/core/AdminCache.cpp b/core/AdminCache.cpp index 3f2f9b42..aa1ec086 100644 --- a/core/AdminCache.cpp +++ b/core/AdminCache.cpp @@ -831,6 +831,7 @@ void AdminCache::DumpAdminCache(AdminCachePart part, bool rebuild) m_pCacheFwd->PushCell(AdminCache_Admins); m_pCacheFwd->Execute(&result); } + g_Players.RecheckAnyAdmins(); } } diff --git a/core/PlayerManager.cpp b/core/PlayerManager.cpp index d11ab7b2..f64488cf 100644 --- a/core/PlayerManager.cpp +++ b/core/PlayerManager.cpp @@ -708,6 +708,18 @@ const char *PlayerManager::GetPassInfoVar() return m_PassInfoVar.c_str(); } +void PlayerManager::RecheckAnyAdmins() +{ + for (int i=1; i<=m_maxClients; i++) + { + if (m_Players[i].IsInGame() && m_Players[i].IsAuthorized()) + { + m_Players[i].DoBasicAdminChecks(); + } + } +} + + /******************* *** PLAYER CODE *** *******************/ diff --git a/core/PlayerManager.h b/core/PlayerManager.h index 60756c55..4ec8772b 100644 --- a/core/PlayerManager.h +++ b/core/PlayerManager.h @@ -116,6 +116,7 @@ public: bool CheckSetAdmin(int index, CPlayer *pPlayer, AdminId id); bool CheckSetAdminName(int index, CPlayer *pPlayer, AdminId id); const char *GetPassInfoVar(); + void RecheckAnyAdmins(); private: void OnServerActivate(edict_t *pEdictList, int edictCount, int clientMax); private: diff --git a/plugins/basecommands.sp b/plugins/basecommands.sp index fdc3cdc0..fd75b241 100644 --- a/plugins/basecommands.sp +++ b/plugins/basecommands.sp @@ -51,12 +51,25 @@ public OnPluginStart() RegAdminCmd("sm_unban", Command_Unban, ADMFLAG_UNBAN, "sm_unban "); RegAdminCmd("sm_addban", Command_AddBan, ADMFLAG_RCON, "sm_addban