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; }
public TurnService(ICardStateFactory cardStateFactory) { _cardStateFactory = cardStateFactory; }
public CardEffectService(ICardStateFactory cardStateFactory, ICardRankService cardRankService) { _cardStateFactory = cardStateFactory; _cardRankService = cardRankService; }