CODInfiniteWarfare.asl 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. state("iw7_ship")
  2. {
  3. string100 CurrentLevelName : 0x21E5F3C;
  4. byte Loader : 0x5D65B77;
  5. }
  6. startup
  7. {
  8. settings.Add("missions", true, "Missions");
  9. vars.missions = new Dictionary<string,string>
  10. {
  11. {"europa", "Rising Threat"},
  12. {"phparade", "Black Sky: Parade"},
  13. {"phstreets", "Black Sky: Under Attack"},
  14. {"phspace", "Black Sky: Take to the Sky"},
  15. {"shipcrib_moon", "Retribution: Aftermath"},
  16. {"moon_port", "Operation Port Armor: Civilian Terminal"},
  17. {"moonjackal", "Operation Port Armor: Shipping Storage"},
  18. {"sa_moon", "Operation Port Armor: Boarding Party"},
  19. {"shipcrib_europa", "Retribution: Back in the Fight"},
  20. {"sa_assassination", "Operation Deep Execute"},
  21. {"shipcrib_titan", "Retribution: Doing What Needs to be Done"},
  22. {"titan", "Operation Burn Water: Refinery"},
  23. {"titanjackal", "Operation Burn Water: Fight or Flight"},
  24. {"shipcrib_rogue", "Retribution: Rescued"},
  25. {"rogue", "Operation Dark Quarry"},
  26. {"shipcrib_prisoner", "Retribution: Cost of Victory"},
  27. {"prisoner", "Operation Black Flag: Prisoner Escort"},
  28. {"heist", "Operation Black Flag: Trap is Sprung"},
  29. {"heistspace", "Operation Blood Storm: Trojan House"},
  30. {"marscrash", "Operation Blood Storm: Crash Landing"},
  31. {"marscrib", "Operation Blood Storm: Regroup"},
  32. {"marsbase", "Operation Blood Storm: All or Nothing"},
  33. {"yard", "Operation Blood Storm: Assault the Shipyard"},
  34. };
  35. foreach (var Tag in vars.missions)
  36. {
  37. settings.Add(Tag.Key, true, Tag.Value, "missions");
  38. };
  39. if (timer.CurrentTimingMethod == TimingMethod.RealTime) // stolen from dude simulator 3, basically asks the runner to set their livesplit to game time
  40. {
  41. var timingMessage = MessageBox.Show (
  42. "This game uses Time without Loads (Game Time) as the main timing method.\n"+
  43. "LiveSplit is currently set to show Real Time (RTA).\n"+
  44. "Would you like to set the timing method to Game Time? This will make verification easier",
  45. "LiveSplit | Call of Duty: Inifinite Warfare",
  46. MessageBoxButtons.YesNo,MessageBoxIcon.Question
  47. );
  48. if (timingMessage == DialogResult.Yes)
  49. {
  50. timer.CurrentTimingMethod = TimingMethod.GameTime;
  51. }
  52. }
  53. }
  54. init
  55. {
  56. vars.doneMaps = new List<string>(); // Like most newer cods you can enter old levels while still playing the game, so gotta have doneMaps
  57. }
  58. onStart
  59. {
  60. vars.doneMaps.Clear();
  61. }
  62. split
  63. {
  64. if ((current.CurrentLevelName != old.CurrentLevelName) && (settings[current.CurrentLevelName]) && (!vars.doneMaps.Contains(old.CurrentLevelName)))
  65. {
  66. vars.doneMaps.Add(old.CurrentLevelName);
  67. return true;
  68. }
  69. }
  70. isLoading
  71. {
  72. return (current.Loader == 0);
  73. }