static void MANAGE_RUN(string inputSeed, bool immediateRestart = false) { SoulsMod mod = new SoulsMod(MOD_PATH, ".smbak"); DSRHook hook = new DSRHook(5000, 5000); hook.Start(); Console.WriteLine("Waiting for game application to start..."); while (!hook.Hooked) { Thread.Sleep(100); } Console.WriteLine("Waiting for game to be loaded..."); while (!hook.Loaded) { Thread.Sleep(100); } Console.WriteLine("Hooked."); Console.WriteLine("Roguelike Souls manager starting..."); RunManager runManager = new RunManager(mod, hook, inputSeed); runManager.RunMainLoop(immediateRestart); }
public RunManager(SoulsMod mod, DSRHook hook, string inputSeed = "") { #if !DEBUG if (DEBUG_MAP != "") { throw new ApplicationException("Debug map must be empty for release version!"); } #endif Mod = mod; Rand = inputSeed == "" ? new Random() : new Random(inputSeed.GetHashCode()); Hook = hook; if (GetFlag(GameFlag.RunStartedFlag)) { Console.WriteLine("Loading existing journey..."); LoadExistingRun(); Console.WriteLine("Journey loaded."); } }