OnTriggerEnter problem

so…This is my code…This script is put on an object with only the script itself and a Trigger.
There is a object with the NavMesh_BasicAI script on it on the scene, but when it enters the trigger, nothing happens…any idea of why?

public Area area = Area.Area_A;
public Transform enemyHQ;
public Transform waitArea;
public Transform wayPoint_1_Start;
public Transform wayPoint_1_End;
public Transform wayPoint_2_Start;
public Transform wayPoint_2_End;

void OnTriggerEnter(Collider trigger){
	if(trigger.collider.gameObject.GetComponent<NavMesh_BasicAI>()){
		NavMesh_BasicAI unit;
		if(trigger.collider.gameObject.GetComponent<NavMesh_BasicAI>().home == null){
			unit = trigger.collider.gameObject.GetComponent<NavMesh_BasicAI>();
			unit.home = transform;
		}
	}

Does the object entering the trigger have a collider and rigidbody component attached? It needs them…