state("MyLittlePonyZephyrHeights") {} startup { vars.Log = (Action<object>)(output => print("[A Zephyr Heights Mystery] " + output)); vars.LastSceneName = null; vars.CurrentSceneName = null; Assembly.Load(File.ReadAllBytes(@"Components/asl-help")).CreateInstance("Unity"); vars.Helper.LoadSceneManager = true; } init { vars.Helper.Load(); } update { if (!vars.Helper.Loaded) return false; vars.Helper.Update(); var name = vars.Helper.Scenes.Active.Name; if (name != null && name.Length > 0) { vars.LastSceneName = vars.CurrentSceneName; vars.CurrentSceneName = vars.Helper.Scenes.Active.Name; } } start { return vars.LastSceneName == "MainMenu" && vars.CurrentSceneName == "LoadingScene"; } split { return vars.CurrentSceneName == "LoadingScene" && vars.LastSceneName != "LoadingScene"; } isLoading { return vars.CurrentSceneName == "LoadingScene"; } exit { vars.Helper.Reset(); } shutdown { vars.Helper.Reset(); }