void IInteractionRule.Interact(Card card, ICardCollection source) { _NextRule = InteractionRuleType.Peek2; if (_CardCollections.Inspect.Count < 2) { source.RemoveCard(card); _CardCollections.Inspect.AddCard(card); } else { source.AddCard(_CardCollections.Inspect.RemoveFirstCard()); source.AddCard(_CardCollections.Inspect.RemoveFirstCard()); _NextRule = InteractionRuleType.Default; } }
void IInteractionRule.Interact(Card card, ICardCollection source) { switch (source.Type) { case InteractionController.CardCollectionType.Draw: { _NextRule = InteractionRuleType.FromDraw; if (card.Type != Card.CardType.Normal) { _NextRule = InteractionRuleType.FromDrawSpecial; } var topCard = source.RemoveCard(default); _CardCollections.Inspect.AddCard(topCard); break; }