void AddPlayer(Friend member) { if (playerTexts.ContainsKey(member)) { return; } playerTexts.Add(member, Instantiate(PlayerTextPrefab, PlayerTextGroup.transform).GetComponent <LobbyPlayerUI>()); SetPlayerData(member); if (member.IsMe) { playerTexts[member].ReadyClicked += OnReadyClicked; playerTexts[member].ChangeMageClicked += OnChangeMageClicked; playerTexts[member].Set(); } LobbyMemberDataUpdated(member); void OnChangeMageClicked() { isChangingMage = true; ChangeMageClicked?.Invoke(); } void OnReadyClicked() { var myData = Lobby.GetMeFromLobby(); Lobby.SetMemberData(myData, LobbyData.Ready, Lobby.GetMemberData(myData, LobbyData.Ready) == LobbyData.Yes ? LobbyData.No : LobbyData.Yes); } }
public void Set() { ReadyButton.interactable = true; ReadyButton.onClick.AddListener(() => { isReady = !isReady; ReadyText.text = isReady ? $"<color=green>{LocaleKeys.ReadyYes.GetLocalized()}</color>" : $"<color=red>{LocaleKeys.ReadyNo.GetLocalized()}</color>"; ReadyClicked?.Invoke(); }); ChangeMageButton.gameObject.SetActive(true); ChangeMageButton.onClick.AddListener(() => ChangeMageClicked?.Invoke()); ChangeMageButton.gameObject.SetActive(false); }