private static void TestDecorators()
        {
            Card soldier = new Card("Soldier", 25, 20);

            soldier = new AttackDecorator(soldier, "Sword", 15);
            soldier = new AttackDecorator(soldier, "Amulet", 5);
            soldier = new DefenseDecorator(soldier, "Helmet", 10);
            soldier = new DefenseDecorator(soldier, "Heavy Armor", 45);
            Console.WriteLine($"Final Stats: {soldier.Attack} / {soldier.Defense}");
        }
예제 #2
0
        private void AddDecoratedCard()
        {
            Console.WriteLine("\n\nAdding a decorated card:");
            Card decoratedCard = new Card("Soldier", 10, 15);

            decoratedCard = new AttackDecorator(decoratedCard, "Sword", 15);
            decoratedCard = new AttackDecorator(decoratedCard, "Amulet", 5);
            decoratedCard = new DefenseDecorator(decoratedCard, "Helmet", 10);
            decoratedCard = new DefenseDecorator(decoratedCard, "Heavy Armor", 45);
            _player.Cards.Add(decoratedCard);
            Console.WriteLine($"{decoratedCard.Name}\t\t({decoratedCard.Attack}/{decoratedCard.Defense})");
        }