public StateMachineHostBuilder SetPersistence(PersistenceLevel persistenceLevel, IStorageProvider storageProvider) { if (persistenceLevel < PersistenceLevel.None || persistenceLevel > PersistenceLevel.ExecutableAction) { throw new InvalidEnumArgumentException(nameof(persistenceLevel), (int)persistenceLevel, typeof(PersistenceLevel)); } _persistenceLevel = persistenceLevel; _storageProvider = storageProvider ?? throw new ArgumentNullException(nameof(storageProvider)); return(this); }
void Awake() { if (instance != null && instance != this) { Destroy(this.gameObject); return; } else { instance = this; } DontDestroyOnLoad(this.gameObject); }