state("TheHive_S1_102410"){ //Memory addresses int LevelNumber: 0x1AF2F8; /* Main Menu = 131 Inventory = 93 Intro = 133 First Level / Start = 95 Screen after first Level = 181 Level-3 = 103 */ int HUD_Number: 0x18989C; //In-Game = 2 double Door1: 0x1AF2F4, 0x80, 0x3B4, 0x0, 0x10; double Door2: 0x1AF2F4, 0x80, 0x3B4, 0x4, 0x10; //Double from 0 to 5 to 10 - Door1 Funktioniert so weit gut für LVL3 und LVL4, es waren aber noch andere Pointer vorhanden double EndTimer: 0x1AF2F0, 0x2B0, 0x78, 0x508, 0x0, 0x10C, 0x4, 0x10; //Timer from 9 to 0 in double double Move: 0x001AF2F4, 0x80, 0x1C, 0x0, 0x10C, 0x4, 0xB0; //0x001AF2F4, 0x5C, 0xB4, 0x0, 0x10C, 0x4, 0xB0; //0x001AF2F4, 0x60, 0x6C, 0x0, 0x10C, 0x4, 0xB0; //0x001AF2F4, 0x78, 0x1C, 0x0, 0x10C, 0x4, 0xB0; double Jump: 0x001AF2F4, 0x78, 0x1C, 0x0, 0x10C, 0x4, 0x218; //0x001AF2F4, 0x80, 0x1C, 0x0, 0x10C, 0x4, 0x218; //Jump counts from 0 up and is delayed } init{ //vars int splitnum; refreshRate = 70; } startup{ // Settings //Start-Trigger settings.Add("Start-Trigger", true, "Start-Trigger"); settings.Add("Level 1+2", true, "Level 1+2", "Start-Trigger"); settings.Add("FirstMove", false, "First Move", "Start-Trigger"); settings.Add("OpenDoor", false, "Open Door", "Start-Trigger"); //Split-Trigger settings.Add("Split-Trigger", true, "Split-Trigger"); settings.Add("Level3Door", true, "Level 3 Door", "Split-Trigger"); settings.Add("Level4Door", true, "Level 4 Door", "Split-Trigger"); settings.Add("Level5Door", true, "Level 5 Door", "Split-Trigger"); settings.Add("Level6Door", false, "Level 6 Door", "Split-Trigger"); settings.Add("Level7Door", false, "Level 7 Door", "Split-Trigger"); settings.Add("VanKlaus", true, "Van Klaus", "Split-Trigger"); settings.Add("End", true, "End", "Split-Trigger"); //Reset-Trigger settings.Add("Reset-Trigger", true, "Reset-Trigger"); settings.Add("NewGame", true, "New Game", "Reset-Trigger"); settings.Add("MainMenu", false, "Main Menu", "Reset-Trigger"); } start{ //Starts Timer after 95 / First Level after intro. And to not start again after reset it checks a few things :D if (settings["Level 1+2"]) { if(current.LevelNumber==95 && current.LevelNumber != old.LevelNumber && old.LevelNumber != 93 && old.LevelNumber != 181){vars.splitnum=0; return true;} } //Starts Timer after Walking Double is not 0 - Walking is +3/-3, Sneaking is +-1, Jumping is +-5 if (settings["FirstMove"]) { if(current.Move != 0){vars.splitnum=0; return true;} } if (settings["OpenDoor"]) { if(current.Door1 != 0 || current.Door2 != 0){vars.splitnum=0; return true;} } } split{ //Splits when opening Level 3 door if(vars.splitnum == 0 && settings["Level3Door"] && current.LevelNumber==103 && current.Door1 > 0){vars.splitnum++; return true;} if(vars.splitnum == 0 && settings["Level3Door"] == false){vars.splitnum++;} //Splits when opening Level 4 door if(vars.splitnum == 1 && settings["Level4Door"] && current.LevelNumber==109 && current.Door1 > 0){vars.splitnum++; return true;} if(vars.splitnum == 1 && settings["Level4Door"] == false){vars.splitnum++;} //Splits when opening Level 5 door if(vars.splitnum == 2 && settings["Level5Door"] && current.LevelNumber==66 && current.Door2 > 0){vars.splitnum++; return true;} if(vars.splitnum == 2 && settings["Level5Door"] == false){vars.splitnum++;} //Splits when opening Level 6 door if(vars.splitnum == 3 && settings["Level6Door"] && current.LevelNumber==89 && current.Door1 > 0){vars.splitnum++; return true;} if(vars.splitnum == 3 && settings["Level6Door"] == false){vars.splitnum++;} //Splits when opening Level 7 door if(vars.splitnum == 4 && current.LevelNumber==80 && current.Door1 > 0){vars.splitnum++; return true;} //Alternative for Skipping Level 7 Door if(vars.splitnum == 4 && settings["Level7Door"] && current.LevelNumber==170){vars.splitnum++; return true;} if(vars.splitnum == 4 && settings["Level7Door"] == false){vars.splitnum++;} //Splits when entering Van Klaus room if(vars.splitnum == 5 && settings["VanKlaus"] && current.LevelNumber==172){vars.splitnum++; return true;} if(vars.splitnum == 5 && settings["VanKlaus"] == false){vars.splitnum++;} //Split when timer is 9 before explotion if(vars.splitnum == 6 && settings["End"] && current.EndTimer == 9 && current.LevelNumber == 172){vars.splitnum++; return true;} if(vars.splitnum == 6 && settings["End"] == false){vars.splitnum++;} } reset{ //Reset on New Game if(settings["NewGame"]){if(current.LevelNumber == 133){return true;}} //Reset on Main Menu if(settings["MainMenu"]){if(current.LevelNumber == 131){return true;}} } /* Pause if in a HUD or Menu isLoading{ if(current.HUD_Number != 2){return true;} else{return false;} }*/