low framerate with trigger

Hi,

I got a very low framerate with the following trigger.
I tried to don’t use OnTriggerStay, but th result is the same.
I use it on two object with 20 colliders each.
When the objects are outside eachother everything is ok, but when they start to enter their trigger the framerate fall.

using UnityEngine;
using System.Collections;
using System.Collections.Generic;

public class ShieldMesh :  MonoBehaviour {
	public float regenBonus = 10.0f;
	public float shieldBonus = 10.0f;

	private int shipID;
	private List<SpaceShip> m_Targets = new List<SpaceShip>();
	private bool isTriggered = false;

	public void Start()
	{
		shipID = gameObject.GetInstanceID();
	}

	public void OnTriggerEnter(Collider collider){
		if (collider.gameObject.GetInstanceID() != shipID)
		{
			SpaceShip ship = collider.gameObject.GetComponent<SpaceShip>();
			if (ship) { 
				m_Targets.Add(ship);

				if (!isTriggered)
					StartCoroutine("DegenerateTargets");

				isTriggered = true;
			}
		}
	}

	public void OnTriggerExit(Collider collider)
	{
		if (collider.gameObject.GetInstanceID() != shipID)
		{
			SpaceShip ship = collider.gameObject.GetComponent<SpaceShip>();
			if (ship) { 
				m_Targets.Remove(ship);
				if (m_Targets.Count <= 0)
				{
					StopCoroutine("DegenerateTargets");
					isTriggered = false;
				}
			}
		}
	}

	private IEnumerator DegenerateTargets()
	{
		foreach (SpaceShip ship in m_Targets)
		{
			ship.Energy -= 5;
			yield return new WaitForSeconds(1.0f);
		}
	}

}

EDIT : I found more mesh colliders in the object. I forgot them as there are not supposed to collide.
Disabling them solve the problem.

Saddly, I need them for other objects…