private static void SaveSelectedBlocksAsABlockSetup() { var blockSetup = ScriptableObject.CreateInstance <MultiBlockSetup>(); blockSetup.Blocks = new List <EasyBlock>(); blockSetup.Blocks.AddRange(Selection.GetFiltered <EasyBlock>(SelectionMode.Assets)); ScriptableObjectUtility.CreateAssetWithSavePrompt(blockSetup, "BlockSetup"); }
private static void SaveCurrentSceneSetup(string assetPath = null) { var loader = ScriptableObject.CreateInstance <MultiSceneSetup>(); var setups = EditorSceneManager.GetSceneManagerSetup(); loader.Setups = new List <SceneSetup>(); for (var i = 0; i < setups.Length; i++) { loader.Setups.Add(new SceneSetup(setups[i], i == 0 ? LoadSceneMode.Single : LoadSceneMode.Additive)); } if (string.IsNullOrEmpty(assetPath)) { ScriptableObjectUtility.CreateAssetWithSavePrompt(loader, "SceneSetup"); } else { ScriptableObjectUtility.CreateAsset(loader, assetPath); } }