Why doesn't the OnTriggerStay2D run?

Why doesn’t the OnTriggerStay2D run?? The object that collides with the trigger has both a collider and a rigidbody attached. (does it have to have a rigid body?)

#pragma strict
public var hasGravity : boolean;
public var mass : float = 5;
public var reachFactor : float = 5;

function Start () {
gameObject.AddComponent(CircleCollider2D);
gameObject.GetComponent(CircleCollider2D).isTrigger = true;
gameObject.GetComponent(CircleCollider2D).radius = mass * reachFactor;
}

public function OnTriggerStay(coll: Collider) {
	Debug.Log("Sent");
	if (coll.gameObject.GetComponent(affected_by_gravity)) {
		coll.gameObject.GetComponent(affected_by_gravity).pull(mass, Vector2(gameObject.transform.position.x,gameObject.transform.position.y));
	}
}

You are using 2D colliders, but you are using the 3D version of OnTriggerStay(). Try ‘OnTriggerStay2D()’.

Ah, thank you very much! I can’t believe I missed that. Thank you for helping out!