diff options
author | Alexander Harkness <bearbin@gmail.com> | 2013-07-27 17:24:03 +0200 |
---|---|---|
committer | Alexander Harkness <bearbin@gmail.com> | 2013-07-27 17:24:03 +0200 |
commit | 983d87e44356c4cfc8f8908ec365006323a4dbe0 (patch) | |
tree | b035a1f68cf97fd3fbfbf5fed187d3f465835f3b /MCServer/Plugins/Core/ban-unban.lua | |
parent | Removed extraneous core. (diff) | |
download | cuberite-983d87e44356c4cfc8f8908ec365006323a4dbe0.tar cuberite-983d87e44356c4cfc8f8908ec365006323a4dbe0.tar.gz cuberite-983d87e44356c4cfc8f8908ec365006323a4dbe0.tar.bz2 cuberite-983d87e44356c4cfc8f8908ec365006323a4dbe0.tar.lz cuberite-983d87e44356c4cfc8f8908ec365006323a4dbe0.tar.xz cuberite-983d87e44356c4cfc8f8908ec365006323a4dbe0.tar.zst cuberite-983d87e44356c4cfc8f8908ec365006323a4dbe0.zip |
Diffstat (limited to 'MCServer/Plugins/Core/ban-unban.lua')
-rw-r--r-- | MCServer/Plugins/Core/ban-unban.lua | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/MCServer/Plugins/Core/ban-unban.lua b/MCServer/Plugins/Core/ban-unban.lua new file mode 100644 index 000000000..cee511e37 --- /dev/null +++ b/MCServer/Plugins/Core/ban-unban.lua @@ -0,0 +1,60 @@ +function HandleBanCommand( Split, Player ) + if( #Split < 2 ) then + Player:SendMessage( cChatColor.Green .. "Usage: /ban [Player] <Reason>" ) + return true + end + + local Reason = "You have been banned" + if( #Split > 2 ) then + Reason = table.concat(Split, " ", 3) + end + + if( BanPlayer(Split[2], Reason) == false ) then + Player:SendMessage( cChatColor.Green .. "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; + end + + LOGINFO("'" .. PlayerName .. "' has been banned (\"" .. Reason .. "\") "); + local Server = cRoot:Get():GetServer(); + Server:SendMessage("Banned " .. PlayerName); + + return true +end + +function HandleUnbanCommand( Split, Player ) + if( #Split < 2 ) then + Player:SendMessage( cChatColor.Green .. "Usage: /unban [Player]" ) + return true + end + + if( BannedPlayersIni:GetValueB("Banned", Split[2], false) == false ) then + Player:SendMessage( cChatColor.Green .. Split[2] .. " is not banned!" ) + return true + end + + BannedPlayersIni:SetValueB("Banned", Split[2], false, false) + BannedPlayersIni:WriteFile() + + local Server = cRoot:Get():GetServer() + LOGINFO( Player:GetName() .. " is unbanning " .. Split[2] ) + Server:SendMessage( "Unbanning " .. Split[2] ) + + return true +end
\ No newline at end of file |