private void ConsumeMana(int manaToConsume) { manaSlots.RemoveRange(0, manaToConsume); var consumedMana = manaToConsume; manaSlots.AddRange(Enumerable.Repeat(ManaSlot.Empty(), consumedMana)); }
public static Duelist Restore(string id, int health, int mana, int manaSlots, Deck deck, IList <Card> hand) { var completeManaSlots = new List <ManaSlot>() .Concat(Enumerable.Repeat(ManaSlot.Filled(), mana)) .Concat(Enumerable.Repeat(ManaSlot.Empty(), manaSlots - mana)) .ToList(); return(new Duelist(id, health, completeManaSlots, deck, hand.ToList())); }
internal void RefillMana() { manaSlots = manaSlots.Map(_ => ManaSlot.Filled()).ToList(); }
internal void IncrementManaSlot() { manaSlots.Add(ManaSlot.Empty()); }