RICO.asl 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. state("RICO")
  2. {
  3. int resetMenu : "GameAssembly.dll", 0x02147120, 0x5C, 0x1C, 0x30, 0x1C;
  4. int levelEnd : "GameAssembly.dll", 0x0201260C, 0x5C, 0x1C, 0x3C, 0x44, 0x1C;
  5. byte skipped : "GameAssembly.dll", 0x02144FCC, 0x5C, 0x4, 0x48, 0xC8, 0x18, 0x4C, 0x28C;
  6. byte success : "GameAssembly.dll", 0x02144F9C, 0x5C, 0x24, 0x3C, 0x4C, 0x1C;
  7. float toLoad : "GameAssembly.dll", 0x02126C5C, 0x8E8, 0x20;
  8. }
  9. startup
  10. {
  11. if (timer.CurrentTimingMethod == TimingMethod.RealTime) // stolen from dude simulator 3, basically asks the runner to set their livesplit to game time
  12. {
  13. var timingMessage = MessageBox.Show (
  14. "This game uses Time without Loads (Game Time) as the main timing method.\n"+
  15. "LiveSplit is currently set to show Real Time (RTA).\n"+
  16. "Would you like to set the timing method to Game Time? This will make verification easier",
  17. "LiveSplit | RICO",
  18. MessageBoxButtons.YesNo,MessageBoxIcon.Question
  19. );
  20. if (timingMessage == DialogResult.Yes)
  21. {
  22. timer.CurrentTimingMethod = TimingMethod.GameTime;
  23. }
  24. }
  25. }
  26. start
  27. {
  28. return ((current.skipped != old.skipped) && (current.skipped == 2) || (current.skipped != old.skipped) && (current.skipped == 1));
  29. }
  30. split
  31. {
  32. return ((current.levelEnd != old.levelEnd) && (current.levelEnd == 2) || (current.success != old.success) && (current.success == 2));
  33. }
  34. reset
  35. {
  36. return ((current.resetMenu != old.resetMenu) && (current.resetMenu == 2));
  37. }
  38. isLoading
  39. {
  40. return (current.toLoad != 0);
  41. }