Highlight of all children with onmouseover. //C#

Good afternoon, ladies and gentelmens.

I have a little problem with highliting object on mouse over.
The task is to highlight an object when the mouse is over it and turn the highlight off, when mouse goes away of object.
I have the parent object called “cockpit” which have a lot of children objects.

But this script highlight only that objects, which have this script as a component, not all objects.
How to solve this problem?

using UnityEngine;
using System.Collections;

public class Highlights : MonoBehaviour
{
	public GameObject cockpit;
	void OnMouseOver() 
	{
		cockpit = GameObject.Find("cockpit");
		Transform[] allChildrens = cockpit.GetComponentsInChildren<Transform>();
		
		foreach (Transform obj in allChildrens)
		{	
			obj.renderer.material.color = Color.yellow;
		}
    }
	void OnMouseExit()
	{
		transform.renderer.material.color = Color.white;
	}
}

I’d start with checking if allChildrens has anything in it…

I used this thing and find out that foreach implementing for every object, which have this script, even if this object doesn’t included to cocpit.