CODModernWarfare3.asl 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. state("iw5sp")
  2. {
  3. int loading1 : 0x19ECCC4;
  4. string200 map : 0x18002C0;
  5. int poser : 0x18002C3;
  6. int dad : 0x5AC158;
  7. }
  8. startup
  9. {
  10. settings.Add("missions", true, "Missions");
  11. vars.diamond1 = new Dictionary<string,string>
  12. {
  13. {"sp_ny_harbor", "Hunter Killer"},
  14. {"sp_intro", "Persona Non Grata"},
  15. {"hijack", "Turbulence"},
  16. {"sp_warlord", "Back on the Grid"},
  17. {"london", "Mind the Gap"},
  18. {"hamburg", "Goalpost"},
  19. {"sp_payback", "Return To Sender"},
  20. {"sp_paris_a", "Bag and Drag"},
  21. {"paris_ac130", "Iron Lady"},
  22. {"sp_prague", "Eye of the Storm"},
  23. {"prague_escape", "Blood Brothers"},
  24. {"castle", "Stronghold"},
  25. {"sp_berlin", "Scorched Earth"},
  26. {"rescue_2", "Down the Rabbit Hole"},
  27. {"sp_dubai", "Dust to Dust"},
  28. };
  29. foreach (var Tag in vars.diamond1)
  30. {
  31. settings.Add(Tag.Key, true, Tag.Value, "missions");
  32. };
  33. if (timer.CurrentTimingMethod == TimingMethod.RealTime) // stolen from dude simulator 3, basically asks the runner to set their livesplit to game time
  34. {
  35. var timingMessage = MessageBox.Show (
  36. "This game uses Time without Loads (Game Time) as the main timing method.\n"+
  37. "LiveSplit is currently set to show Real Time (RTA).\n"+
  38. "Would you like to set the timing method to Game Time? This will make verification easier",
  39. "LiveSplit | Call of Duty: Modern Warfare 3",
  40. MessageBoxButtons.YesNo,MessageBoxIcon.Question
  41. );
  42. if (timingMessage == DialogResult.Yes)
  43. {
  44. timer.CurrentTimingMethod = TimingMethod.GameTime;
  45. }
  46. }
  47. }
  48. split
  49. {
  50. return ((current.map != old.map) && (settings[current.map]));
  51. }
  52. start
  53. {
  54. return ((current.map == "sp_ny_manhattan") && (current.dad != 0) && (current.loading1 != 0));
  55. }
  56. reset
  57. {
  58. return ((current.poser == 0) && (old.poser != 0));
  59. }
  60. isLoading
  61. {
  62. return (current.loading1 == 0);
  63. }