state("sammypolish") { string20 levelName : 0xA5AB8; //int levelEnd : 0x1B8BF4; } state("wrun") { string20 levelName: 0x13E368; byte blackScreen: 0x78D2F; } startup { vars.objList = new List(); settings.Add("szkolenie", true, "Tutorial"); vars.szkolTags = new Dictionary { {"10001.wmb","Tutorial 1"}, {"10002.wmb","Tutorial 2"}, {"10003.wmb","Tutorial 3"}, {"10004.wmb","Tutorial 4"}, {"10005.wmb","Tutorial 5"}, {"10006.wmb","Tutorial 6"}, {"10007.wmb","Tutorial 7"}, {"10008.wmb","Tutorial 8"}, {"10009.wmb","Tutorial 9"}, {"10012.wmb","Tutorial 10"}, {"10010.wmb","Tutorial 11"}, {"10011.wmb","Tutorial 12"}, }; settings.Add("zrecz", true, "Jump'n'Run"); vars.zreczTags = new Dictionary { {"101o_j.wmb","Jump'n'Run 1"}, {"104m_j.wmb","Jump'n'Run 2"}, {"103j_j.wmb","Jump'n'Run 3"}, {"112e_j.wmb","Jump'n'Run 4"}, {"107i_j.wmb","Jump'n'Run 5"}, {"174a_j07.wmb","Jump'n'Run 6"}, {"111r_j.wmb","Jump'n'Run 7"}, {"172c_j06.wmb","Jump'n'Run 8"}, {"175c_t.wmb","Jump'n'Run 9"}, {"177e_j.wmb","Jump'n'Run 10"}, {"108i_j.wmb","Jump'n'Run 11"}, {"179f_t.wmb","Jump'n'Run 12"}, }; settings.Add("mysl", true, "Think'n'Run"); vars.myslTags = new Dictionary { {"106g_t.wmb","Think'n'Run 1"}, {"171c_t04.wmb","Think'n'Run 2"}, {"110n_t.wmb","Think'n'Run 3"}, {"180c_t.wmb","Think'n'Run 4"}, {"170b_t00.wmb","Think'n'Run 5"}, {"102n_t.wmb","Think'n'Run 6"}, {"173b_t05.wmb","Think'n'Run 7"}, {"114t_t.wmb","Think'n'Run 8"}, {"178d_t.wmb","Think'n'Run 9"}, {"176g_t.wmb","Think'n'Run 10"}, {"113q_t.wmb","Think'n'Run 11"}, {"109o_t.wmb","Think'n'Run 12"}, }; vars.objList = new List(); foreach (var Tag in vars.szkolTags) { settings.Add(Tag.Key, true, Tag.Value, "szkolenie"); } foreach (var Tag in vars.zreczTags) { settings.Add(Tag.Key, true, Tag.Value, "zrecz"); } foreach (var Tag in vars.myslTags) { settings.Add(Tag.Key, true, Tag.Value, "mysl"); } settings.Add("ae", false, "Area Entry Splits"); settings.Add("S1", false, "Split when entering Tutorial 1", "ae"); settings.Add("Z1", false, "Split when entering Jump'n'Run 1", "ae"); settings.Add("M1", false, "Split when entering Think'n'Run 1", "ae"); settings.SetToolTip("S1", "Might be buggy, the game is sucks"); vars.pausePrevention = false; } init { vars.splits = new List(); vars.lastLevels = new List(); vars.lastLevels.Add("109o_t.wmb"); vars.lastLevels.Add("179f_t.wmb"); vars.lastLevels.Add("10011.wmb"); } update { if (game.ProcessName == "wrun") { if (current.levelName == "EXTRO4.WMB" && current.blackScreen == 0 && old.blackScreen != 0) { vars.pausePrevention = true; } if (current.levelName != "EXTRO4.WMB") { vars.pausePrevention = false; } } } split { //level end splits if (current.levelName != old.levelName) { //levels 1-11 if (settings[old.levelName.ToLowerInvariant()] && !vars.splits.Contains(old.levelName) && !vars.splits.Contains(current.levelName)) { if (current.levelName.ToLowerInvariant() != "menu_greenpepper.wmb" && current.levelName.ToLowerInvariant() != "menu1.wmb") { if (!vars.lastLevels.Contains(old.levelName.ToLowerInvariant())) { vars.splits.Add(old.levelName); print("SammySplitter: Splat. " + old.levelName + " -> " + current.levelName); return true; } } } //levels 12 if (vars.lastLevels.Contains(old.levelName.ToLowerInvariant()) && settings[old.levelName.ToLowerInvariant()]) { vars.splits.Add(old.levelName); print("SammySplitter: Splat. " + old.levelName + " -> " + current.levelName); return true; } } //area entry splits if (current.levelName != old.levelName) { if (settings["S1"] && current.levelName.ToLowerInvariant() == "10001.wmb" && !vars.splits.Contains("S1c")) { vars.splits.Add("S1c"); return true; } if (settings["Z1"] && current.levelName.ToLowerInvariant() == "101o_j.wmb" && !vars.splits.Contains("Z1c")) { vars.splits.Add("Z1c"); return true; } if (settings["M1"] && current.levelName.ToLowerInvariant() == "106g_t.wmb" && !vars.splits.Contains("M1c")) { vars.splits.Add("M1c"); return true; } } } start { if (old.levelName.ToLowerInvariant() == "menu_greenpepper.wmb" || old.levelName.ToLowerInvariant() == "menu1.wmb") { if (current.levelName != old.levelName) { vars.splits.Clear(); //vars.splits.Add(current.levelName); return true; } } } isLoading { if (game.ProcessName == "wrun") { if (current.blackScreen != 0) { if (current.levelName != "EXTRO4.WMB") { return true; } else if (current.levelName == "EXTRO4.WMB" && vars.pausePrevention == false) { return true; } } else { return false; } } }