Я нахожусь в стадии планирования маленькой игры в стиле RPG.
У персонажа будет набор атрибутов, таких как сила, ловкость и т. Д., Которые представлены в виде целых чисел. У персонажа также будет набор атак, представленный как класс атаки.
При каждой атаке я хочу, чтобы она наносила урон в зависимости от атрибутов персонажа, например: атака «удар мечом» будет наносить 10 урона + значение силы персонажа.
Я думал об этом, чтобы иметь абстрактный класс атаки, который имеет абстрактный метод Attack, и для каждой атаки я создаю один класс, который реализует метод Attack.
public class SwordSlash:Attack
{
public void Attack(Character attacker, Character defender)
{
defender.DoDamage(10 + attacker.Strength);
}
}
Я вижу, что это станет кошмаром для поддержания.
Кто-нибудь имеет представление о том, как я могу сделать это лучше?
Я думаю, что основная проблема заключается в том, как правильно ввести атрибут, основываясь на атаке.