public static SettingsProvider CreateFromSettingsObject() { // Create an AssetSettingsProvider from a settings object (UnityEngine.Object): var settingsObj = LevelBuilderSettings.GetOrCreateSettings(); var provider = AssetSettingsProvider.CreateProviderFromObject(ProviderPath, settingsObj); // Register keywords from the properties of MyCustomSettings provider.keywords = SettingsProvider.GetSearchKeywordsFromSerializedObject(new SerializedObject(settingsObj)); return(provider); }
protected override void Initialize() { if (loadedDefaultValues) { return; } loadedDefaultValues = true; var levelBuilderSettings = LevelBuilderSettings.GetOrCreateSettings(); fullWall = (PrefabsPerSide)levelBuilderSettings.fullWall.Clone(); wallShortenedLeft = (PrefabsPerSide)levelBuilderSettings.wallShortenedLeft.Clone(); wallShortenedRight = (PrefabsPerSide)levelBuilderSettings.wallShortenedRight.Clone(); wallShortenedBothSides = (PrefabsPerSide)levelBuilderSettings.wallShortenedBothSides.Clone(); floor = (RoomElementSpawnSettings)levelBuilderSettings.floor.Clone(); innerCorner = (RoomElementSpawnSettings)levelBuilderSettings.innerCorner.Clone(); outerCorner = (RoomElementSpawnSettings)levelBuilderSettings.outerCorner.Clone(); materialSlotSetup = levelBuilderSettings.materialSlotSetup; floorSize = levelBuilderSettings.floorSize; roomName = (string)levelBuilderSettings.roomName.Clone(); roomSizeX = levelBuilderSettings.roomSizeX; roomSizeZ = levelBuilderSettings.roomSizeZ; }