Beispiel #1
0
 public virtual void OnTriggerEnter(Collider col)
 {
     if (col.tag == "Enemy")
     {
         Physics.IgnoreCollision(this.GetComponent <Collider>(), col);
     }
     Weapons.Hitbox hitbox = col.gameObject.GetComponent <Weapons.Hitbox>();
     if (hitbox != null)
     {
         if (invulerability <= 0)
         {
             hit = true;
             TakeDamage(hitbox.Damage, hitbox.Element);
             invulerability = invulerabilityTime;
         }
     }
     Weapons.Projectiles.Stun s = col.gameObject.GetComponent <Weapons.Projectiles.Stun>();
     if (s != null)
     {
         Stun = true;
     }
     OnTriggerEnterAI(col);
 }
Beispiel #2
0
 void OnTriggerEnter(Collider col)
 {
     Weapons.Hitbox hitbox = col.gameObject.GetComponent <Weapons.Hitbox>();
     if (hitbox != null && !invun)
     {
         if (hitbox.Owner == this.gameObject)
         {
             return;
         }
         if (hitbox.GetType() == typeof(Weapons.Projectiles.Tornado))
         {
             if (hitbox.Direction == Enums.Direction.Left)
             {
                 if (currentNode.panelAllowed(Util.Enums.Direction.Left, Type))
                 {
                     currentNode        = currentNode.Left;
                     transform.position = CurrentNode.transform.position;
                 }
                 else
                 {
                     if (currentNode.panelAllowed(Util.Enums.Direction.Up, Type))
                     {
                         currentNode        = currentNode.Up;
                         transform.position = CurrentNode.transform.position;
                         hit           = true;
                         damage        = hitbox.Damage;
                         damageElement = hitbox.Element;
                     }
                     else if (currentNode.panelAllowed(Util.Enums.Direction.Down, Type))
                     {
                         currentNode        = currentNode.Down;
                         transform.position = CurrentNode.transform.position;
                         hit           = true;
                         damage        = hitbox.Damage;
                         damageElement = hitbox.Element;
                     }
                 }
             }
             else
             {
                 if (currentNode.panelAllowed(Util.Enums.Direction.Right, Type))
                 {
                     currentNode        = currentNode.Right;
                     transform.position = CurrentNode.transform.position;
                 }
                 else
                 {
                     if (currentNode.panelAllowed(Util.Enums.Direction.Up, Type))
                     {
                         currentNode        = currentNode.Up;
                         transform.position = CurrentNode.transform.position;
                         hit           = true;
                         damage        = hitbox.Damage;
                         damageElement = hitbox.Element;
                     }
                     else if (currentNode.panelAllowed(Util.Enums.Direction.Down, Type))
                     {
                         currentNode        = currentNode.Down;
                         transform.position = CurrentNode.transform.position;
                         hit           = true;
                         damage        = hitbox.Damage;
                         damageElement = hitbox.Element;
                     }
                 }
             }
         }
         else
         {
             hit           = true;
             damage        = hitbox.Damage;
             damageElement = hitbox.Element;
         }
     }
     Weapons.Projectiles.Stun s = col.gameObject.GetComponent <Weapons.Projectiles.Stun>();
     if (s != null)
     {
         Stun = true;
     }
 }