Combine Mesh

using this script from eric

// This script should be put on an empty GameObject 
// Objects to be combined should be children of the empty GameObject 
@script RequireComponent(MeshFilter) 
@script RequireComponent(MeshRenderer) 

function CombineMesh () { 
yield WaitForSeconds(3);
   for (var child in transform) 
      child.position += transform.position; 
   transform.position = Vector3.zero; 
   transform.rotation = Quaternion.identity; 
    
   var meshFilters = GetComponentsInChildren(MeshFilter); 
   var combine : CombineInstance[] = new CombineInstance[meshFilters.Length-1]; 
   var index = 0; 
   for (var i = 0; i < meshFilters.Length; i++) 
   { 
      if (meshFilters[i].sharedMesh == null) continue; 
      combine[index].mesh = meshFilters[i].sharedMesh; 
      combine[index++].transform = meshFilters[i].transform.localToWorldMatrix; 
      meshFilters[i].renderer.enabled = false; 
   } 
   GetComponent(MeshFilter).mesh = new Mesh(); 
   GetComponent(MeshFilter).mesh.CombineMeshes (combine); 
   renderer.material = meshFilters[1].renderer.sharedMaterial; 
}

made the change from the start function to a different name, basically so that when ever i parent a new object to the empty one i would call upon that function to combine all the meshes, but it seams to not be working, if i turn the empty object on and off while paused there is no mesh, the objects i am combining are skinned mesh renderers does that make a difference?

The first thing to check is that your CombineMesh gets called. Put a print statement at the first line of the function and make sure you see its message in the status bar or console window.