summaryrefslogtreecommitdiffstats
path: root/MCServer/Plugins/Core/kick.lua
diff options
context:
space:
mode:
Diffstat (limited to 'MCServer/Plugins/Core/kick.lua')
-rw-r--r--MCServer/Plugins/Core/kick.lua28
1 files changed, 15 insertions, 13 deletions
diff --git a/MCServer/Plugins/Core/kick.lua b/MCServer/Plugins/Core/kick.lua
index ff4f8a705..ce8bd7a31 100644
--- a/MCServer/Plugins/Core/kick.lua
+++ b/MCServer/Plugins/Core/kick.lua
@@ -3,25 +3,27 @@ function HandleKickCommand( Split, Player )
Player:SendMessage( cChatColor.Green .. "Usage: /kick [Player] <Reason>" )
return true
end
+
+ local FoundPlayerCallback = function( OtherPlayer )
+ local Reason = "You have been kicked"
+ if( #Split > 2 ) then
+ Reason = table.concat(Split, " ", 3)
+ end
- local World = Player:GetWorld()
- local OtherPlayer = World:GetPlayer( Split[2] )
- if( OtherPlayer == nil ) then
- Player:SendMessage( cChatColor.Green .. "Could not find player " .. Split[2] )
- return true
+ local Server = cRoot:Get():GetServer()
+ LOGINFO( Player:GetName() .. " is kicking " .. OtherPlayer:GetName() .. " ( "..Reason..") " )
+ Server:SendMessage( "Kicking " .. OtherPlayer:GetName() )
+
+ local ClientHandle = OtherPlayer:GetClientHandle()
+ ClientHandle:Kick( Reason )
end
- local Reason = "You have been kicked"
- if( #Split > 2 ) then
- Reason = table.concat(Split, " ", 3)
+ if( cRoot:Get():FindAndDoWithPlayer( Split[2], FoundPlayerCallback ) == false ) then
+ Player:SendMessage( cChatColor.Green .. "Could not find player " .. Split[2] )
+ return true
end
- local Server = cRoot:Get():GetServer()
- LOGINFO( Player:GetName() .. " is kicking " .. OtherPlayer:GetName() .. " ( "..Reason..") " )
- Server:SendMessage( "Kicking " .. OtherPlayer:GetName() )
- local ClientHandle = OtherPlayer:GetClientHandle()
- ClientHandle:Kick( Reason )
return true
end \ No newline at end of file