diff options
Diffstat (limited to 'MCServer/Plugins/Core/ban-unban.lua')
-rw-r--r-- | MCServer/Plugins/Core/ban-unban.lua | 45 |
1 files changed, 15 insertions, 30 deletions
diff --git a/MCServer/Plugins/Core/ban-unban.lua b/MCServer/Plugins/Core/ban-unban.lua index 1ad9b7e75..480e5633e 100644 --- a/MCServer/Plugins/Core/ban-unban.lua +++ b/MCServer/Plugins/Core/ban-unban.lua @@ -4,37 +4,22 @@ function HandleBanCommand( Split, Player ) return true end - local Reason = "You have been banned" + local Reason = cChatColor.Red .. "You have been banned." .. cChatColor.White .. " Did you do something illegal?" if( #Split > 2 ) then Reason = table.concat(Split, " ", 3) end - - if( BanPlayer(Split[2], Reason) == false ) then - Player:SendMessage(cChatColor.Rose .. "[INFO] " .. cChatColor.White .. "Could not find player " .. Split[2] ) - return true - end - - return true -end - -function BanPlayer(PlayerName, Reason) - -- Ban the player in the banned.ini: - BannedPlayersIni:SetValueB("Banned", PlayerName, true) - BannedPlayersIni:WriteFile() - -- Kick the player: - if (Reason == nil) then - Reason = "You have been banned" - end - local Success = KickPlayer(PlayerName, Reason) - if (not(Success)) then - return false; + if KickPlayer(Split[2], Reason) == false then + BannedPlayersIni:DeleteValue("Banned", Split[2]) + BannedPlayersIni:SetValueB("Banned", Split[2], true) + BannedPlayersIni:WriteFile() + Player:SendMessage(cChatColor.Green .. "[INFO] " .. cChatColor.White .. "Could not find player, but banned anyway" ) + else + BannedPlayersIni:DeleteValue("Banned", Split[2]) + BannedPlayersIni:SetValueB("Banned", Split[2], true) + BannedPlayersIni:WriteFile() + Player:SendMessage(cChatColor.Green .. "[INFO] " .. cChatColor.White .. "Successfully kicked and banned player" ) end - - LOGINFO("'" .. PlayerName .. "' has been banned (\"" .. Reason .. "\") "); - local Server = cRoot:Get():GetServer(); - Server:SendMessage("Banned " .. PlayerName); - return true end @@ -45,16 +30,16 @@ function HandleUnbanCommand( Split, Player ) end if( BannedPlayersIni:GetValueB("Banned", Split[2], false) == false ) then - Player:SendMessage(cChatColor.Rose .. "[INFO] " .. cChatColor.White .. " is not banned!" ) + Player:SendMessage(cChatColor.Rose .. "[INFO] " .. cChatColor.White .. Split[2] .. " is not banned!" ) return true end - BannedPlayersIni:SetValueB("Banned", Split[2], false, false) + BannedPlayersIni:DeleteValue("Banned", Split[2]) + BannedPlayersIni:SetValueB("Banned", Split[2], false) BannedPlayersIni:WriteFile() - local Server = cRoot:Get():GetServer() LOGINFO( Player:GetName() .. " is unbanning " .. Split[2] ) - Server:SendMessage( "Unbanning " .. Split[2] ) + Player:SendMessage(cChatColor.Green .. "[INFO] " .. cChatColor.White .. "Unbanning " .. Split[2] ) return true end
\ No newline at end of file |