private static bool HandleCommandKill(string input) { if (input == ":all") { gameServer.KillAllPlayers(); Log.Write(LogType.Info, "All players were killed!"); } else if (int.TryParse(input, out int playerIndex)) { if (gameServer.KillPlayer((byte)playerIndex)) { Log.Write(LogType.Info, "Player was killed!"); } else { Log.Write(LogType.Error, "Player was not found!"); } } else { GameServer.PlayerClient player = gameServer.FindPlayerByUserName(input); if (player != null && gameServer.KillPlayer(player.Index)) { Log.Write(LogType.Info, "Player was killed!"); } else { Log.Write(LogType.Error, "Player was not found!"); } } return(true); }
private static bool HandleCommandBan(string input) { if (int.TryParse(input, out int playerIndex)) { if (gameServer.BanPlayer((byte)playerIndex)) { Log.Write(LogType.Info, "Player was banned from the server!"); } else { Log.Write(LogType.Error, "Player was not found!"); } } else { GameServer.PlayerClient player = gameServer.FindPlayerByUserName(input); if (player != null && gameServer.BanPlayer(player.Index)) { Log.Write(LogType.Info, "Player was banned from the server!"); } else { Log.Write(LogType.Error, "Player was not found!"); } } return(true); }
private static bool HandleCommandShowMessage(string input) { string target = GetPartFromInput(ref input); if (string.IsNullOrWhiteSpace(input)) { Log.Write(LogType.Info, "Message must be specified!"); return(true); } input = input.Replace("\\n", "\n").Replace("\\f", "\f"); if (target == ":all") { gameServer.ShowMessageToAllPlayers(input); Log.Write(LogType.Info, "Message was sent to all players!"); } else if (int.TryParse(input, out int playerIndex)) { gameServer.ShowMessageToPlayer((byte)playerIndex, input); Log.Write(LogType.Info, "Message was sent to specified player!"); } else { GameServer.PlayerClient player = gameServer.FindPlayerByUserName(target); if (player != null) { gameServer.ShowMessageToPlayer(player.Index, input); Log.Write(LogType.Info, "Player was sent to specified player!"); } else { Log.Write(LogType.Error, "Player was not found!"); } } return(true); }