diff --git a/MCServer/Plugins/ProtectionAreas/CommandHandlers.lua b/MCServer/Plugins/ProtectionAreas/CommandHandlers.lua index 4ed629ed8..bb7da77a9 100644 --- a/MCServer/Plugins/ProtectionAreas/CommandHandlers.lua +++ b/MCServer/Plugins/ProtectionAreas/CommandHandlers.lua @@ -293,6 +293,9 @@ function HandleRemoveUser(a_Split, a_Player) -- Send confirmation a_Player:SendMessage("Removed " .. UserName .. " from area " .. AreaID); + -- Reload all currently logged in players + ReloadAllPlayersInWorld(a_Player:GetWorld():GetName()); + return true; end @@ -309,6 +312,10 @@ function HandleRemoveUserAll(a_Split, a_Player) -- Remove the user from the DB g_Storage:RemoveUserAll(a_Split[2], a_Player:GetWorld():GetName()); + + -- Reload all currently logged in players + ReloadAllPlayersInWorld(a_Player:GetWorld():GetName()); + return true; end diff --git a/MCServer/Plugins/ProtectionAreas/Storage.lua b/MCServer/Plugins/ProtectionAreas/Storage.lua index e9479fcbd..10cc469e5 100644 --- a/MCServer/Plugins/ProtectionAreas/Storage.lua +++ b/MCServer/Plugins/ProtectionAreas/Storage.lua @@ -186,14 +186,14 @@ function cStorage:LoadPlayerAreas(a_PlayerName, a_PlayerX, a_PlayerZ, a_WorldNam assert(a_WorldName); assert(self); - res = cPlayerAreas:new(); - -- Bounds for which the areas are loaded local BoundsMinX = a_PlayerX - g_AreaBounds; local BoundsMaxX = a_PlayerX + g_AreaBounds; local BoundsMinZ = a_PlayerZ - g_AreaBounds; local BoundsMaxZ = a_PlayerZ + g_AreaBounds; + local res = cPlayerAreas:new(); + -- Load the areas from the DB, based on the player's location local sql = "SELECT ID, MinX, MaxX, MinZ, MaxZ FROM Areas WHERE " ..