コード例 #1
0
        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);
            }
        }
コード例 #2
0
        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);
        }