/// <summary> /// Handles a chat command /// </summary> /// <param name="player"></param> /// <param name="cmd"></param> /// <param name="args"></param> private bool HandleChatCommand(ILivePlayer player, string cmd, string[] args) { // Check things if (commandFilter != null && !commandFilter(cmd)) return false; if (callback == null) return false; // Handle return callback(cmd, CommandType.Chat, player?.BasePlayer, args); }
/// <summary> /// Handle console input from the specified player, returns true if handled /// </summary> /// <param name="player"></param> /// <param name="str"></param> public bool HandleConsoleMessage(ILivePlayer player, string str) { // Parse it string cmd; string[] args; ParseChatCommand(str, out cmd, out args); // Handle it return cmd != null && HandleConsoleCommand(player, cmd, args); }
/// <summary> /// Handles a chat message from the specified player, returns true if handled /// </summary> /// <param name="player"></param> /// <param name="str"></param> public bool HandleChatMessage(ILivePlayer player, string str) { // Get the args if (str.Length == 0) return false; // Is it a chat command? if (str[0] == '/' || str[0] == '!') { // Get the message var message = str.Substring(1); // Parse it string cmd; string[] args; ParseChatCommand(message, out cmd, out args); // Handle it return cmd != null && HandleChatCommand(player, cmd, args); } return false; }
/// <summary> /// Handles a chat message /// </summary> /// <param name="player"></param> /// <param name="str"></param> /// <returns></returns> public bool HandleChatMessage(ILivePlayer player, string str) => chatCommandHandler.HandleChatMessage(player, str);
/// <summary> /// Handles a console command /// </summary> /// <param name="player"></param> /// <param name="cmd"></param> /// <param name="args"></param> private bool HandleConsoleCommand(ILivePlayer player, string cmd, string[] args) { // Check things if (commandFilter != null && !commandFilter(cmd)) return false; if (callback == null) return false; player.LastCommand = CommandType.Console; // Handle it return callback(player.BasePlayer, cmd, args); }
/// <summary> /// Handles a chat message /// </summary> /// <param name="player"></param> /// <param name="message"></param> /// <returns></returns> public bool HandleConsoleMessage(ILivePlayer player, string message) => commandHandler.HandleConsoleMessage(player, message);
void PlayerRejection(ILivePlayer player, string country) { player.Kick(GetMessage("PlayerRejected", player.BasePlayer.UniqueID).Replace("{country}", country)); }