namespace GlobalClassLib; public abstract class GlobalEnemy where TTile : GlobalMapTile where TCon : GlobalTileConnector { public int Difficulty { get; set; } public TTile? Location { get; set; } public bool Visible { get; set; } public abstract string Name{ get; } public abstract int TypeId{ get; } public int Id { get; } private static int nextId = 0; // public static Dictionary> PresentEnemies = new(); public GlobalEnemy(int difficulty) { Difficulty = difficulty; Id = nextId++; } public GlobalEnemy(int difficulty, int id) { Difficulty = difficulty; Id = id; } public virtual void Spawn(TTile location) { // PresentEnemies.Add(location, this); Location = location; Visible = true; Console.WriteLine($"Enemy {Id} ({Name}) spawned at {location.Id} {location.GridPosition}"); } public virtual void Update() { } }