private void Kill() { explosionPool.SpawnExplosion(transform.position); scoreboard.ScoreHit(scoreValue); selfDestructing = true; print("Running!"); Destroy(gameObject); }
private void StartDeathSequence() { if (alive) { explosionPool.SpawnExplosion(transform.position); StopAllCoroutines(); audioSource.Stop(); foreach (MeshRenderer render in renderers) { render.enabled = false; } foreach (ParticleSystem particleSystem in bulletSystems) { particleSystem.Stop(); } alive = false; } }
private void Die(bool giveScore) { dying = true; if (giveScore) { if (EnemyDeathObservers != null) { EnemyDeathObservers(scoreValue, currencyValue); } } else { if (EnemyDeathObservers != null) { EnemyDeathObservers(0, 0); } } explosionObjectPool.SpawnExplosion(transform.position); Destroy(gameObject); }