示例#1
0
    public static DebugPanelSave GetDebugPanelSave(bool _create = false)
    {
        DebugPanelSave b_debugPanelSave = null;

        // Load save
        string[] debugPanelSaveFind = AssetDatabase.FindAssets("t:DebugPanelSave");
        if (debugPanelSaveFind.Length > 0)
        {
            b_debugPanelSave = AssetDatabase.LoadAssetAtPath <DebugPanelSave>(AssetDatabase.GUIDToAssetPath(debugPanelSaveFind[0]));
        }

        // If no save, create one
        if (_create && !b_debugPanelSave)
        {
            // Search path
            string   debugPanelSavePath     = "";
            string[] debugPanelSavePathFind = AssetDatabase.FindAssets("DebugPanelSave t:Script");
            if (debugPanelSavePathFind.Length > 0)
            {
                debugPanelSavePath = ((AssetDatabase.GUIDToAssetPath(debugPanelSavePathFind[0])).Replace("DebugPanelSave.cs", "DebugPanelSave.asset"));
            }

            // In case don't find create at root
            if (!debugPanelSavePath.Contains("DebugPanelSave.asset"))
            {
                debugPanelSavePath = "Assets/MenuBuilderSave.asset";
            }

            b_debugPanelSave = ScriptableObject.CreateInstance <DebugPanelSave>();
            AssetDatabase.CreateAsset(b_debugPanelSave, debugPanelSavePath);
            AssetDatabase.SaveAssets();
        }

        return(b_debugPanelSave);
    }
示例#2
0
 public static void OnBeforeSceneLoad()
 {
     if (!debugPanelSave)
     {
         debugPanelSave = GetDebugPanelSave();
     }
 }