示例#1
0
 private void OnParticleCollision(GameObject other)
 {
     Health -= ParticleDamage;
     if (Health <= 0)
     {
         OnEnemyDie?.Invoke(Reward);
         Destroy(gameObject);
     }
 }
示例#2
0
    void EnemyDeath(OnEnemyDie ed)
    {
        if (allEnemies.Contains(ed.en))
        {
            allEnemies.Remove(ed.en);
        }

        enemyCount = allEnemies.Count;
        targetEnemyNumber--;
    }
示例#3
0
    public void Die()
    {
        deathParticles.SetActive(true);
        deathParticles.transform.parent = transform.parent;
        isDead = true;
        OnEnemyDie ed = new OnEnemyDie
        {
            val = 1,
            en  = this
        };


        EventManager.Instance.FireEvent(ed);

        Destroy(gameObject);
    }
示例#4
0
    public void ChangeScore(OnEnemyDie ed)
    {
        score += ed.val;

        scoreText.text = score.ToString();
    }
 private void OnEnemyDieHandler(int score)
 {
     OnEnemyDie?.Invoke(score);
 }
 internal static void KillEnemy(EnemyBehaviour enemyBehaviour)
 {
     OnEnemyDie?.Invoke(enemyBehaviour);
 }
 private void Enemy_OnDie(Enemy enemy)
 {
     enemySoundController.Scream();
     OnEnemyDie?.Invoke(enemy);
 }
示例#8
0
        protected override void OnDie()
        {
            base.OnDie();

            OnEnemyDie?.Invoke(this, new DieArgs(this));
        }
示例#9
0
 public void CallOnEnemyDie()
 {
     OnEnemyDie?.Invoke();
 }