void OnGUI() { int left = 200; int width = 150; int height = 30; int top = 70; int i = 0; bool initialize = false; bool shutdown = false; bool connect = false; bool connectAnonymous = false; bool disconnect = false; bool sendMessage = false; if (m_ChatController.IsInitialized) { if (m_ChatController.IsConnected(m_Channel)) { if (!m_ChatController.IsAnonymous(m_Channel)) { sendMessage = GUI.Button(new Rect(left, top + height * i++, width, height), "Send Message"); } disconnect = GUI.Button(new Rect(left, top + height * i++, width, height), "Disconnect"); } else { connect = GUI.Button(new Rect(left, top + height * i++, width, height), "Connect"); connectAnonymous = GUI.Button(new Rect(left, top + height * i++, width, height), "Connect Anonymously"); } shutdown = GUI.Button(new Rect(left, top + height * i++, width, height), "Shutdown"); } else { initialize = GUI.Button(new Rect(left, top + height * i++, width, height), "Initialize"); } if (connect) { if (string.IsNullOrEmpty(m_Channel.Trim())) { m_Channel = m_UserName; } m_ChatController.Connect(m_Channel); } else if (connectAnonymous) { if (string.IsNullOrEmpty(m_Channel.Trim())) { m_Channel = m_UserName; } m_ChatController.AuthToken = m_BroadcastController.AuthToken; m_ChatController.ConnectAnonymous(m_Channel); } else if (disconnect) { m_ChatController.Disconnect(m_Channel); } else if (sendMessage) { m_ChatController.SendChatMessage(m_Channel, m_Message); m_Message = string.Empty; } else if (initialize) { if (m_BroadcastController.AuthToken == null || string.IsNullOrEmpty(m_BroadcastController.AuthToken.Data)) { DebugOverlay.Instance.AddViewportText("Auth token not available"); return; } m_ChatController.AuthToken = m_BroadcastController.AuthToken; m_ChatController.UserName = m_UserName; m_ChatController.Initialize(); } else if (shutdown) { m_ChatController.Shutdown(); } }