コード例 #1
0
        public void UpdateComponent()
        {
            PlayerNameBox.Text   = LocalPlayerName;
            OpponentNameBox.Text = RemotePlayerName;

            var topTeam = TeamAtBottom.GetOpponent();
            var slots   = new byte[24];

            int blackBorneOffCount = 0, whiteBorneOffCount = 0, blackHitCount = 0, whiteHitCount = 0;

            foreach (var checker in Checkers)
            {
                if (checker.Key.State == CheckerState.InGame)
                {
                    slots[checker.Key.Slot]++;
                    checker.Value.Visibility = slots[checker.Key.Slot] <= 5 ? Visibility.Visible : Visibility.Hidden;
                    SetOverflowText(checker.Key.Slot, slots[checker.Key.Slot]);
                    var gridCoordinates = Coordinates.GetGridPosition(TeamAtBottom, checker.Key.Slot, slots[checker.Key.Slot]);
                    Grid.SetRow(MainGrid, (int)gridCoordinates.X);
                    Grid.SetColumn(MainGrid, (int)gridCoordinates.Y);
                }
                else if (checker.Key.State == CheckerState.BorneOff)
                {
                    checker.Value.Visibility = Visibility.Hidden;
                    if (checker.Key.Color == Color.White)
                    {
                        whiteBorneOffCount++;
                    }
                    else
                    {
                        blackBorneOffCount++;
                    }
                }
                else if (checker.Key.State == CheckerState.Hit)
                {
                    checker.Value.Visibility = Visibility.Hidden;
                    if (checker.Key.Color == Color.White)
                    {
                        whiteHitCount++;
                    }
                    else
                    {
                        blackHitCount++;
                    }
                }
            }

            if (whiteBorneOffCount > 0)
            {
                // todo
            }

            if (blackBorneOffCount > 0)
            {
                // todo
            }

            if (whiteHitCount > 0)
            {
                // todo
            }

            if (blackHitCount > 0)
            {
                // todo
            }
        }