void OnCollisionEnter2D(Collision2D coll)
    {
        //if (debug) Debug.Log("OnCollisionEnter2D "+HandleCollisionEnter2D,this.gameObject);

        if (HandleCollisionEnter2D)
        {
            lastCollision2DInfo = coll;

            PlayMakerUnity2d.ForwardEventToGameObject(this.gameObject, PlayMakerUnity2d.OnCollisionEnter2DEvent);
        }

        if (this.OnCollisionEnter2dDelegates != null)
        {
            this.OnCollisionEnter2dDelegates(coll);
        }
    }
    void OnTriggerExit2D(Collider2D coll)
    {
        if (debug)
        {
            Debug.Log(this.gameObject.name + " OnTriggerExit2D " + coll.gameObject.name, this.gameObject);
        }

        if (HandleTriggerExit2D)
        {
            lastTrigger2DInfo = coll;

            PlayMakerUnity2d.ForwardEventToGameObject(this.gameObject, PlayMakerUnity2d.OnTriggerExit2DEvent);
        }

        if (this.OnTriggerExit2dDelegates != null)
        {
            this.OnTriggerExit2dDelegates(coll);
        }
    }