コード例 #1
0
ファイル: StickersBoard.cs プロジェクト: xneg/featureban
        public Player GetPlayerThatCanSpendToken()
        {
            var movableSticker =
                ReversedProgressCells
                .Select(c => c.GetUnblockedSticker())
                .FirstOrDefault(s => s != null && CanMove(s));

            if (movableSticker != null)
            {
                return(movableSticker.Owner);
            }

            var blockedSticker = ReversedProgressCells
                                 .Select(c => c.GetBlockedSticker())
                                 .FirstOrDefault(s => s != null);

            if (blockedSticker != null)
            {
                return(blockedSticker.Owner);
            }

            return(null);
        }
コード例 #2
0
ファイル: StickersBoard.cs プロジェクト: xneg/featureban
 public Sticker GetMoveableStickerFor(Player player)
 {
     return(ReversedProgressCells
            .Select(c => c.GetUnblockedStickerFor(player))
            .FirstOrDefault(s => s != null && CanMove(s)));
 }
コード例 #3
0
ファイル: StickersBoard.cs プロジェクト: xneg/featureban
 public Sticker GetBlockedStickerFor(Player player)
 {
     return(ReversedProgressCells
            .Select(c => c.GetBlockedStickerFor(player))
            .FirstOrDefault(s => s != null));
 }