public void Dispose() { if (!hasStarted) { lobby.Dispose(); } lobby.MemberJoined -= Lobby_MemberJoined; lobby.MemberChangedTeam -= Lobby_MemberChangedTeam; lobby.MemberLeft -= Lobby_MemberLeft; lobby.LeftLobby -= Lobby_LeftLobby; lobby.Loaded -= Lobby_Loaded; lobby.GameStarted -= Lobby_GameStarted; lobby.Updated -= Lobby_GotGameDTO; Session.Current.ChatManager.Status = ChatStatus.outOfGame; }