private void HandleLobbyUpdate(CSODOTALobby lobby) { if (Lobby == null && lobby != null) { log.DebugFormat("Entered lobby {0} with state {1}.", lobby.lobby_id, lobby.state.ToString("G")); } else if (Lobby != null && lobby == null) { log.DebugFormat("Exited lobby {0}.", Lobby.lobby_id); } if (lobby != null) { _state.Fire(lobby.state == CSODOTALobby.State.UI || string.IsNullOrEmpty(lobby.connect) ? Trigger.DotaEnteredLobbyUI : Trigger.DotaEnteredLobbyPlay); } else { _state.Fire(Trigger.DotaNoLobby); } LobbyUpdate?.Invoke(Lobby, lobby); Lobby = lobby; }
public LobbyUpdate GetUpdates() { LobbyUpdate sr = new LobbyUpdate(); sr.messages = new List<string>(incomingChat); incomingChat.Clear(); sr.players = new List<LobbyPlayer>(players); return sr; }
protected void HandleLobbyUpdate(MessageWrapper message) { LobbyUpdate lu = JsonUtility.FromJson <LobbyUpdate>(message.message); CurrentGame.Instance.gameDetail.teams = lu.teams; CurrentGame.Instance.isHost = lu.isHost; NetworkManager.Singleton.RoomManager.OnLobbyLoad(); }