[Client] MessageFromChat ProcessMessage(string message) { MessageFromChat result = new MessageFromChat(); if (message.StartsWith("/")) { // Contains a Command, find out which one. result.channelType = (int) GetMessageChannelType(message.Substring(0, message.IndexOf(" "))); if (result.channelType != (int) ChatChannelType.Command) { // Remove the first word of our message for further processing. result.message = message.Substring(message.IndexOf(" "), message.Length); } } else { result.channelType = (int) ChatChannelType.All; result.message = message; } // #TODO: Something something player names something. result.sender = "Player " + SuperNetworkManager.connectionID.ToString(); return result; }
[ClientRpc] void RpcReceiveAllMessage(MessageFromChat message) { // Just print that little piece of ... text. PrintChatMessage(message); }
[Command] void CmdDoSomethingWithThisMessage(MessageFromChat message) { // #TODO: Send Message to receivers }
[Client] void PrintChatMessage(MessageFromChat message) { // #TODO: Display Chat Message in a nice way. Debug.Log("[" + message.channelType + "]" + message.sender + ": " + message.message); // #NiceToHave: Log Message }