EnemyData is a ScriptableObject used to define enemy attributes and behaviors.
- Enemy Name
- Health
- Damage
- Movement Speed
- Attack Range
- Experience Reward
- Easy balancing through the Inspector
- Reusable across multiple enemy prefabs
- Keeps enemy data separate from logic
- Reduces hardcoded values
- RPG Games
- Action Games
- Survival Games
- Platformers
- Store only data.
- Keep AI logic in MonoBehaviour scripts.
- Use ScriptableObjects for different enemy types.