public bool EditTerrains()
{
GameObject[] objArray;
Terrain[] selectedObjectsOfType = SceneModeUtility.GetSelectedObjectsOfType<Terrain>(out objArray, new Type[0]);
if (objArray.Length == 0)
{
return false;
}
EditorGUILayout.InspectorTitlebar(selectedObjectsOfType);
SerializedObject obj2 = new SerializedObject(objArray);
using (new EditorGUI.DisabledScope(!SceneModeUtility.StaticFlagField("Lightmap Static", obj2.FindProperty("m_StaticEditorFlags"), 1)))
{
if (GUI.enabled)
{
this.ShowTerrainChunks(selectedObjectsOfType);
}
SerializedObject so = new SerializedObject(Enumerable.ToArray<Terrain>(selectedObjectsOfType));
float lightmapScale = this.LightmapScaleGUI(so, 1f);
TerrainData terrainData = selectedObjectsOfType[0].terrainData;
float cachedSurfaceArea = (terrainData == null) ? 0f : (terrainData.size.x * terrainData.size.z);
this.ShowClampedSizeInLightmapGUI(lightmapScale, cachedSurfaceArea);
LightmapParametersGUI(so.FindProperty("m_LightmapParameters"), s_Styles.LightmapParameters, true);
if ((GUI.enabled && (selectedObjectsOfType.Length == 1)) && (selectedObjectsOfType[0].terrainData != null))
{
this.ShowBakePerformanceWarning(so, selectedObjectsOfType[0]);
}
this.m_ShowBakedLM = EditorGUILayout.Foldout(this.m_ShowBakedLM, s_Styles.Atlas);
if (this.m_ShowBakedLM)
{
this.ShowAtlasGUI(so);
}
this.m_ShowRealtimeLM = EditorGUILayout.Foldout(this.m_ShowRealtimeLM, s_Styles.RealtimeLM);
if (this.m_ShowRealtimeLM)
{
this.ShowRealtimeLMGUI(selectedObjectsOfType[0]);
}
obj2.ApplyModifiedProperties();
so.ApplyModifiedProperties();
}
GUILayout.Space(10f);
return true;
}