Using a single parent boolean to set all child object animations

I’m animating a character with multiple child objects inside it (various body parts) and I want to use a single boolean in the parent (hit) to make 4 of the child objects change animation states when the character is damaged. Do I have to have scripts on every single child object to access the variable in the parent GameObject?

Essentially, each script would be exactly the same-

	void Update () {
		if (parent.Hit)
			Hit= true; //To set child's animator boolean

	
	}

There must be a better way instead of having the exact same script 4 times on each child object.

Instead of having the child access the parent, I think it would be better design for the parent to command the children what to do.

So basically the parent object has a list of all its children, and when the parent gets hit, it forwards this message to the children. For C#, using an [Accessor][1] would make this intuitive. Also, you could easily make this handle arbitrary hierarchies of nested objects by using a base class or an interface.

bool Hit {
	set {
		// Alert all children that they have been hit.
		for (int i = 0; i < _children.Length; i++) {
			_children *.Hit = value;*