add kick command to LobbyCommands

This commit is contained in:
Chris Forbes
2010-12-24 12:10:38 +13:00
parent b5b6b47e95
commit 54cf2e7993
3 changed files with 31 additions and 6 deletions

View File

@@ -129,7 +129,7 @@ namespace OpenRA.Mods.RA.Server
{
var occupantConn = server.conns.FirstOrDefault( c => c.PlayerIndex == occupant.Index );
if (occupantConn != null)
server.DropClient( occupantConn, new Exception() );
server.DropClient(occupantConn);
}
server.SyncLobbyInfo();
@@ -221,6 +221,31 @@ namespace OpenRA.Mods.RA.Server
bool.TryParse(s, out server.lobbyInfo.GlobalSettings.LockTeams);
server.SyncLobbyInfo();
return true;
}},
{ "kick",
s =>
{
if (conn.PlayerIndex != 0)
{
server.SendChatTo( conn, "Only the host can kick players" );
return true;
}
int slot;
int.TryParse( s, out slot );
var connToKick = server.conns.SingleOrDefault( c => server.GetClient(c) != null && server.GetClient(c).Slot == slot);
if (connToKick == null)
{
server.SendChatTo( conn, "Noone in that slot." );
return true;
}
server.DropClient(connToKick);
server.SyncLobbyInfo();
return true;
}},
};