protected Card(CardCost cost) { Id = Guid.NewGuid(); Cost = cost; _currentZone = new NullZone(); _zoneChanger = zone => _currentZone = zone; }
private CardCost CalculateAvailableSpend(ITreasureCard card) { CardCost value = card.Value; foreach (IPassiveCardEffect effect in _passiveEffects) { value = effect.ModifyValue(value, card); } return(value); }
public bool CanGainOfCost(CardCost cardCost) { return(Game.Bank.Piles.Any(p => !p.IsEmpty && p.TopCard.Cost == cardCost)); }
public virtual CardCost ModifyValue(CardCost currentValue, ITreasureCard card) { return(currentValue); }