public Creature(int maxLife, int attackSpeed, int speed, Vector position, double size) : base(position, size) { this.maxLife = maxLife; currentLife = maxLife; this.attackSpeed = attackSpeed; this.speed = speed; DamageObserver = new DamageObserver(); HealObserver = new HealObserver(); DeathObserver = new DeathObserver(); }
public static void RegisterDeathObserver(DeathObserver obs) { current.deathObservers.Add(obs); }
void Derelict() { GetComponent <SpriteRenderer>().color = Color.gray; DeathObserver.Unsubscribe(this); Destroy(gameObject, 10.0f); }
// Start is called before the first frame update void Start() { spawnTimer = 0.0f; DeathObserver.Subscribe(this); }