Skip to content

[2pts] Create Enemy abstract class and concrete enemy types #9

@github-actions

Description

@github-actions

Description

Create abstract Enemy class and concrete enemy type implementations.

Depends on: Character base class issue

Enemy Abstract Class

Inherits from Character and adds:

  • ExperienceReward (int)
  • GoldReward (int)
  • LootTable (List)
  • abstract GetAttackDescription() method

Concrete Enemy Types

Goblin

  • Low stats (low health, attack, defense)
  • Distinct flavor text in GetAttackDescription()

Orc

  • High health
  • Medium attack and defense
  • Distinct flavor text in GetAttackDescription()

Dragon

  • Boss tier stats (very high in all categories)
  • Distinct flavor text in GetAttackDescription()

Acceptance Criteria

  • Enemy abstract class inherits from Character
  • ExperienceReward property added
  • GoldReward property added
  • LootTable property (List) added
  • Abstract GetAttackDescription() method declared
  • Goblin concrete class implemented with low stats
  • Orc concrete class implemented with high health
  • Dragon concrete class implemented with boss-tier stats
  • Each enemy type has distinct flavor text
  • All classes documented with XML comments

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions