Search Unity

OnTriggerExit2D doesn't work ( no scaling on the game objects,tower defence game)

Discussion in 'Editor & General Support' started by HarisKap, Jan 25, 2014.

  1. HarisKap

    HarisKap

    Joined:
    Dec 10, 2012
    Posts:
    20
    Hello, i make a tower defence game, and i have this code on my tower

    Code (csharp):
    1.    
    2.     void Start () {
    3.         CircleCollider2D myCollider = transform.GetComponent<CircleCollider2D>();
    4.         myCollider.radius = range;
    5.         baseTower.GetComponent<SetRange> ().RangeSet (range / 2.5f);
    6.     }
    7.  
    8.         void OnTriggerStay2D(Collider2D other) {
    9.         if (!target) {
    10.             if (other.tag == "Enemy") {
    11.                 target = other.transform;
    12.                 nextFireTime = Time.time+(reloadTime* 0.5f);
    13.             }
    14.         }
    15.     }
    16.  
    17.     void OnTriggerExit2D(Collider2D other) {
    18.         Debug.Log (other.transform.name);
    19.         Debug.Log (target.transform.name);
    20.  
    21.         if (other.transform == target) {
    22.             target = null;
    23.         }
    24.     }
    25.  
    My triggerStayWorks perfectly but the OnTriggerExit2D doesn't run at all, why is that?
    When the enemy leaves the range continues shoot him.
    the start function just set the range for the range texture.


    any ideas?