CODAdvancedWarfare.asl 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. // Asl written by KunoDemetries#6969
  2. // Addresses found by Klooger#1867
  3. state("s1_sp64_ship")
  4. {
  5. bool Loader : 0xF6109DC; //Originally an int
  6. string50 CurrentLevelName : 0x30740B6;
  7. }
  8. init
  9. {
  10. vars.doneMaps = new List<string>(); //Used for not splitting twice just in cause the game crashes
  11. }
  12. startup
  13. {
  14. settings.Add("missions", true, "All Missions");
  15. vars.missions = new Dictionary<string,string>
  16. {
  17. {"recovery","Atlas"},
  18. {"lagos","Traffic"},
  19. {"fusion","Fission"},
  20. {"detroit","Aftermath"},
  21. {"greece","Manhunt"},
  22. {"betrayal","Utopia"},
  23. {"irons_estate","Sentinel"},
  24. {"crash","Crash"},
  25. {"lab","Bio Lab"},
  26. {"sanfran","Collapse"},
  27. {"sanfran_b","Armada"},
  28. {"df_fly","Throttle"},
  29. {"captured","Captured"},
  30. {"finale","Terminus"},
  31. };
  32. foreach (var Tag in vars.missions)
  33. {
  34. settings.Add(Tag.Key, true, Tag.Value, "missions");
  35. };
  36. if (timer.CurrentTimingMethod == TimingMethod.RealTime) // stolen from dude simulator 3, basically asks the runner to set their livesplit to game time
  37. {
  38. var timingMessage = MessageBox.Show (
  39. "This game uses Time without Loads (Game Time) as the main timing method.\n"+
  40. "LiveSplit is currently set to show Real Time (RTA).\n"+
  41. "Would you like to set the timing method to Game Time? This will make verification easier",
  42. "LiveSplit | Call of Duty: Advanced Warfare",
  43. MessageBoxButtons.YesNo,MessageBoxIcon.Question
  44. );
  45. if (timingMessage == DialogResult.Yes)
  46. {
  47. timer.CurrentTimingMethod = TimingMethod.GameTime;
  48. }
  49. }
  50. }
  51. start
  52. {
  53. return ((current.CurrentLevelName == "seoul") && (!current.Loader));
  54. }
  55. onStart
  56. {
  57. vars.doneMaps.Clear();
  58. }
  59. split
  60. {
  61. if ((current.CurrentLevelName != old.CurrentLevelName) && (settings[(current.CurrentLevelName)]) && (!vars.doneMaps.Contains(current.CurrentLevelName)))
  62. {
  63. vars.doneMaps.Add(current.CurrentLevelName);
  64. return true;
  65. }
  66. }
  67. reset
  68. {
  69. return (current.CurrentLevelName == "ui");
  70. }
  71. isLoading
  72. {
  73. return (current.Loader);
  74. }