// DNMListener methods public void OnStateChanged(DNMState state) { if (state == DNMState.Off) { panels.OpenPanel(mainMenuPanel); } else if (state == DNMState.Offline) { lobbyPanel.SetMode(Mode.OfflineMode); panels.OpenPanel(lobbyPanel); } else if (state == DNMState.Host) { lobbyPanel.SetMode(Mode.OnlineMode, true); panels.OpenPanel(lobbyPanel); } else if (state == DNMState.CreatingHost) { // do nothing } else if (state == DNMState.StartingAsClient) { panels.OpenPanel(connectingPanel); } else if (state == DNMState.Client) { lobbyPanel.SetMode(Mode.OnlineMode, false); panels.OpenPanel(lobbyPanel); } else { Log.Warn("Unknown new state: {0}", state); } }