Exemple #1
0
 // Update is called once per frame
 private void OnTriggerEnter2D(Collider2D col)
 {
     if (col.gameObject == parent)
     {
         return;             // если мы соприкоснулись с парентом, то выходим из метода и ничего не делаем
     }
     // var health = col.gameObject.GetComponent<Health>();
     // if (health != null) //- перепишем через GameManager
     if (GameManager.Instance.healthContainer.ContainsKey(col.gameObject))
     {
         var health = GameManager.Instance.healthContainer[col.gameObject];
         health.TakeHit(damage, gameObject);
     }
     if (isDestroyingAfterCollision)
     {
         if (destroyer == null)
         {
             Destroy(gameObject);
         }
         else
         {
             destroyer.Destroy(gameObject);
         }
     }
 }
 private void OnTriggerEnter2D(Collider2D col)
 {
     if (col.gameObject == parent)
     {
         return;
     }
     //health = col.gameObject.GetComponent<Health>();
     //var health = col.gameObject.GetComponent<Health>();
     //if (health != null)
     if (GameManager.Instance.healthContainer.ContainsKey(col.gameObject))
     {
         health = GameManager.Instance.healthContainer[col.gameObject];
         health.TakeHealth(damage);
         col.GetComponent <Animator>().SetTrigger("TakeHit");
         if (destroyer == null)
         {
             Destroy(gameObject);
         }
         else
         {
             destroyer.Destroy(gameObject);
         }
     }
 }
Exemple #3
0
    private void OnTriggerEnter2D(Collider2D col)
    {
        if (col.gameObject == parent)
        {
            return;
        }

        if (GameManager.Instance.healthContainer.ContainsKey(col.gameObject))
        {
            var health = GameManager.Instance.healthContainer[col.gameObject];
            health.TakeHit(damage);
        }
        if (isDestroyAfterCollision)
        {
            if (destroyer == null)
            {
                Destroy(gameObject);
            }
            else
            {
                destroyer.Destroy(gameObject);
            }
        }
    }