示例#1
0
        public void UpdateUI(CarromGameplay.State state)
        {
            if (state == null)
            {
                return;
            }

            turnIndicator.text = players.FirstOrDefault(p => p.number == state.awaitingTurn)?.playerName.text ?? "---";
            coverShotIndicator.gameObject.SetActive(state.state == GameplayState.CoverStroke);
            for (int i = 0; i < players.Length; i++)
            {
                players[i].UpdateUI(state);
            }
        }
示例#2
0
        public void UpdateUI(CarromGameplay.State state)
        {
            if (state == null || state.progress.Length <= (int)number || number == PlayerNumber.None)
            {
                SetUnused();
                return;
            }

            SetUsed();

            var progress = state.progress[(int)number];

            pockets.text = progress.HasDue
                ? progress.Due.ToString()
                : (progress.WhitePocketed + progress.BlackPocketed).ToString();
            hasQueenIndicator.gameObject.SetActive(progress.QueenPocketed);

            onOwnTurnAnimate.SetBool(s_Animate, state.awaitingTurn == number);
        }