public void Awake() { if (_instance != null) { Debug.Log("Why is there already a network state manager?"); } _instance = this; }
// Construct a MPChatCommand from a Chat message public MPChatCommand(string message, int sender_connection_id, string sender_player_name, MpTeam sender_player_team, bool isInLobby) { cmd = Command.None; isTeamMessage = NetworkMessageManager.IsTeamMessage(message); if (isTeamMessage) { message = NetworkMessageManager.StripTeamPrefix(message); } sender_conn = sender_connection_id; sender_name = sender_player_name; sender_team = sender_player_team; sender_message = message; needAuth = false; inLobby = isInLobby; senderEntry = null; if (message == null || message.Length < 2 || message[0] != '/') { // not a valid command return; } // is there an additonal argument to this command? // Arguments are separated with space int split = message.IndexOf(' '); if (split > 0) { cmdName = message.Substring(1, split - 1); if (split + 1 < message.Length) { arg = message.Substring(split + 1, message.Length - split - 1); } } else { cmdName = message.Substring(1, message.Length - 1); } // detect the command cmdName = cmdName.ToUpper(); if (cmdName == "GP" || cmdName == "GIVEPERM") { cmd = Command.GivePerm; needAuth = true; } else if (cmdName == "RP" || cmdName == "REVOKEPERM") { cmd = Command.RevokePerm; needAuth = true; } else if (cmdName == "AUTH") { cmd = Command.Auth; needAuth = false; } else if (cmdName == "K" || cmdName == "KICK") { cmd = Command.Kick; needAuth = true; } else if (cmdName == "B" || cmdName == "BAN") { cmd = Command.Ban; needAuth = true; } else if (cmdName == "A" || cmdName == "ANNOY") { cmd = Command.Annoy; needAuth = true; } else if (cmdName == "UA" || cmdName == "UNANNOY") { cmd = Command.Unannoy; needAuth = true; } else if (cmdName == "KB" || cmdName == "KICKBAN") { cmd = Command.KickBan; needAuth = true; } else if (cmdName == "UB" || cmdName == "UNBAN") { cmd = Command.Unban; needAuth = true; } else if (cmdName == "BC" || cmdName == "BLOCKCHAT") { cmd = Command.BlockChat; needAuth = true; } else if (cmdName == "UBC" || cmdName == "UNBLOCKCHAT") { cmd = Command.UnblockChat; needAuth = true; } else if (cmdName == "E" || cmdName == "END") { cmd = Command.End; needAuth = true; } else if (cmdName == "S" || cmdName == "START") { cmd = Command.Start; needAuth = true; } else if (cmdName == "STATUS") { cmd = Command.Status; } else if (cmdName == "SAY" || cmdName == "CHAT") { cmd = Command.Say; } else if (cmdName == "T" || cmdName == "TEST") { cmd = Command.Test; } }