public override void OnInspectorGUI() { AsteroidSpawner astSpawner = (AsteroidSpawner)target; DrawDefaultInspector(); if (GUILayout.Button("Create Asteroid")) { if (astSpawner.asteroid != null) { DestroyImmediate(ProcAsteroid.asteroid); DestroyImmediate(astSpawner.asteroid); } astSpawner.CreateAsteroid(); } if (astSpawner.asteroid && GUILayout.Button("Save Asteroid")) { System.IO.Directory.CreateDirectory(path); Mesh mesh = astSpawner.asteroid.GetComponent <MeshFilter>().sharedMesh; AssetDatabase.CreateAsset(mesh, assetpath + mesh.name + ".asset"); AssetDatabase.SaveAssets(); PrefabUtility.SaveAsPrefabAsset(astSpawner.asteroid, assetpath + filename + ".prefab"); DestroyImmediate(ProcAsteroid.asteroid); DestroyImmediate(astSpawner.asteroid); } }