public static List<IComponent> getAllChildrenComponents(Entity entity, List<IComponent> componentList) {
		Children childrenComponent = entity.getComponent(Children.class);

		// Our base test, stop recursion if we no longer have children
		if (childrenComponent == null) {
			return componentList;
		}

		for (Entity child : childrenComponent.children) {
			// Add to the componentList any of the children's components that we
			// are searching for, and then call this function on the child (in
			// case that child also has children)
			componentList.addAll(child.getAllComponents());
			getAllChildrenComponents(child, componentList);
		}

		return componentList;
	}