public static IDiscardableCardState Draw(this ICardStateFactory cardStateFactory, IList <IDrawableCardState> deck)
        {
            var drawableCardState = deck.RemoveLast();
            var result            = cardStateFactory.Draw(drawableCardState);

            return(result);
        }
        public static ISetAsideCardState SetAside(this ICardStateFactory cardStateFactory, IList <IDrawableCardState> deck)
        {
            var drawableCardState = deck.RemoveLast();
            var result            = cardStateFactory.SetAside(drawableCardState);

            return(result);
        }
 public RoundStateFactory(IDeckShuffleService deckShuffleService,
                          IRoundFactory roundFactory,
                          ITurnStateFactory turnStateFactory,
                          IDeckRemovalService deckRemovalService,
                          ICardStateFactory cardStateFactory)
 {
     _deckShuffleService = deckShuffleService;
     _roundFactory       = roundFactory;
     _turnStateFactory   = turnStateFactory;
     _deckRemovalService = deckRemovalService;
     _cardStateFactory   = cardStateFactory;
 }
Exemple #4
0
 public TurnService(ICardStateFactory cardStateFactory)
 {
     _cardStateFactory = cardStateFactory;
 }
Exemple #5
0
 public CardEffectService(ICardStateFactory cardStateFactory, ICardRankService cardRankService)
 {
     _cardStateFactory = cardStateFactory;
     _cardRankService  = cardRankService;
 }