void Kick( Player player, Command cmd ) {
if( player.Can( Permissions.Kick ) ) {
string name = cmd.Next();
if( name != null ) {
string msg = cmd.NextAll();
Player offender = world.FindPlayer( name );
if( offender != null ) {
world.SendToAll( PacketWriter.MakeMessage(
Color.Red + offender.name + " was kicked by " + player.name ), offender );
if( msg != null && msg != "" ) {
world.log.Log( "{0} was kicked by {1}. Message: {2}", LogType.UserActivity, offender.name, player.name, msg );
offender.session.Kick( "Kicked by " + player.name + ": " + msg );
} else {
world.log.Log( "{0} was kicked by {1}", LogType.UserActivity, offender.name, player.name );
offender.session.Kick( "You have been kicked by " + player.name );
}
} else {
world.NoPlayerMessage( player, name );
}
} else {
player.Message( "Usage: " + Color.Help + "/kick PlayerName [Message]" +
Color.Sys + " or " + Color.Help + "/k PlayerName [Message]" );
}
} else {
world.NoAccessMessage( player );
}
}