public override void OnInspectorGUI()
    {
        SuperSimpleSaving simpleSave = target as SuperSimpleSaving;

        if (simpleSave == null || simpleSave.gameObject == null)
        {
            return;
        }

        if (simpleSave.spawnables == null)
        {
            EditorGUILayout.HelpBox("No Spawnables Library referenced!", MessageType.Warning);
            if (GUILayout.Button("Create and reference"))
            {
                SpawnablesLibrary spawnablesLibrary = ScriptableObject.CreateInstance <SpawnablesLibrary>();
                string            path = AssetDatabase.GenerateUniqueAssetPath("Assets/SimpleSave/New Spawnables Library.asset");
                AssetDatabase.CreateAsset(spawnablesLibrary, path);
                AssetDatabase.SaveAssets();
                AssetDatabase.Refresh();

                simpleSave.spawnables  = spawnablesLibrary;
                Selection.activeObject = spawnablesLibrary;
            }
        }
        base.OnInspectorGUI();
    }
 private void Awake()
 {
     if (instance != null && instance != this)
     {
         Debug.LogError("Error: Instance of SimpleSave already present.\nDisabling Component!", this);
         enabled = false;
     }
     else
     {
         if (persistentObjects == null)
         {
             persistentObjects = new HashSet <PersistentObject>();
         }
         instance = this;
     }
 }