Разрабатываю игру наподобие HearthStone на c#. Пытаюсь реализовать систему бафов с помощью паттерна "декоратор". Есть некий класс Card
public abstract class Card
{
public string Name { get; set; }
public string Description { get; set; }
public int Health { get; set; }
public int Damage { get; set; }
public int Mana { get; set; }
}
И есть некий баф
public abstract class HealthBuff : Card
{
public string Name { get; set; }
public string Description { get; set; }
public int Health => base.Health + 2;
public int Damage { get; set; }
public int Mana { get; set; }
}
И таких бафов можеть быть множество, соответственно нужно в этой иерархии классов удалять их, при необходимости. Как это сделать?