diff options
author | bearbin <bearbin@gmail.com> | 2013-07-27 18:19:22 +0200 |
---|---|---|
committer | bearbin <bearbin@gmail.com> | 2013-07-27 18:19:22 +0200 |
commit | 1d0b57d8abf2297614659e1115b81d569612a402 (patch) | |
tree | df7d0acb85b3ef5c4783f721a83908ddc5130ef7 /MCServer/Plugins/Core/ban-unban.lua | |
parent | Merge pull request #7 from tigerw/master (diff) | |
parent | Merge pull request #8 from mc-server/master (diff) | |
download | cuberite-1d0b57d8abf2297614659e1115b81d569612a402.tar cuberite-1d0b57d8abf2297614659e1115b81d569612a402.tar.gz cuberite-1d0b57d8abf2297614659e1115b81d569612a402.tar.bz2 cuberite-1d0b57d8abf2297614659e1115b81d569612a402.tar.lz cuberite-1d0b57d8abf2297614659e1115b81d569612a402.tar.xz cuberite-1d0b57d8abf2297614659e1115b81d569612a402.tar.zst cuberite-1d0b57d8abf2297614659e1115b81d569612a402.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 |