// todo: move methods below to separate class private ChildScript CreateChildObject(Child child, GameObject parent) { Shape shape = PartLoader.GetShape(child); GameObject GameObject = shape.Instantiate(parent.transform); ChildScript childScript = GameObject.AddComponent <ChildScript>(); childScript.shape = shape; childScript.Controller = child.Controller; childScript.SetColor(child.Color); if (!GameController.Instance.potatoMode) { shape.ApplyTextures(GameObject); } if (shape is Block && child.Bounds != null) { childScript.SetBlueprintBounds(child.Bounds); } childScript.SetBlueprintPosition(child.Pos); childScript.SetBlueprintRotation(child.Xaxis, child.Zaxis); return(childScript); }