private void OnActivate() { // Parameter preset editor works in editor if (_ParameterPresetEditor == null) { _ParameterPresetEditor = new TerrainParameterPresetEditor(); } Script = (TerrainGeneration)target; // Noise parameter editor works in runtime if (Script.TerrainInfo != null) { // We are in runtime, means we can get all the info from runtime if (TerrainInfo == null) { TerrainInfo = Script.TerrainInfo; _NoiseParameterEditor = new NoiseParameterEditor(TerrainInfo); // now just overrwrite this terrain infos parameter property list (biomes) with our serialized editor list TerrainInfo.TerrainParameterList = _ParameterPresetEditor.SerializedTerrainParameters; } } WasInitialised = true; }