CODModernWarfareRemastered.asl 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. state("h1_sp64_ship")
  2. {
  3. string4 decide: 0x6668D4C;
  4. string4 decide2: 0x781FAC;
  5. }
  6. state("h1_sp64_ship","default")
  7. {
  8. int Loader : 0x1226507C;
  9. string200 CurrentLevelName : 0x443C652;
  10. string4 decide : 0x6668D4C;
  11. string4 decide2 : 0x781FAC;
  12. }
  13. state("h1_sp64_ship","1.13")
  14. {
  15. int Loader : 0x1240049C;
  16. string200 CurrentLevelName : 0x45FF434;
  17. string4 decide : 0x6668D4C;
  18. string4 decide2 : 0x781FAC;
  19. }
  20. state("h1_sp64_ship","1.15")
  21. {
  22. int Loader : 0x5005458;
  23. string200 CurrentLevelName : 0x45FF196;
  24. string4 decide : 0x6668D4C;
  25. string4 decide2 : 0x781FAC;
  26. }
  27. init
  28. {
  29. if (current.decide == "1.15")
  30. {
  31. version = "1.15";
  32. }
  33. if (current.decide2 == "1.13")
  34. {
  35. version = "1.13";
  36. }
  37. if ((current.decide != "1.15") && (current.decide2 != "1.13"))
  38. {
  39. version = "1.15";
  40. }
  41. vars.doneMaps = new List<string>();
  42. vars.coupOffset = false;
  43. vars.currentTime = new TimeSpan(0, 0, 0);
  44. }
  45. update
  46. {
  47. vars.currentTime = timer.CurrentTime.GameTime; //keep the variable updated with the current time on the timer
  48. }
  49. startup
  50. {
  51. settings.Add("CoD4", true, "Call of Duty 4 Remastered");
  52. settings.Add("act0", true, "Prologue", "CoD4");
  53. settings.Add("act1", true, "Act 1", "CoD4");
  54. settings.Add("act2", true, "Act 2", "CoD4");
  55. settings.Add("act3", true, "Act 3", "CoD4");
  56. var tB = (Func<string, string, string, Tuple<string, string, string>>) ((elmt1, elmt2, elmt3) => { return Tuple.Create(elmt1, elmt2, elmt3); });
  57. var sB = new List<Tuple<string, string, string>>
  58. {
  59. tB("act0","killhouse", "F.N.G."),
  60. tB("act0","cargoship", "Crew Expendable"),
  61. tB("act0","coup", "The Coup"),
  62. tB("act1","blackout", "Blackout"),
  63. tB("act1","armada", "Charlie Dont Surf"),
  64. tB("act1","bog_a", "The Bog"),
  65. tB("act1","hunted", "Hunted"),
  66. tB("act1","ac130", "Death From Above"),
  67. tB("act1","bog_b", "War Pig"),
  68. tB("act1","airlift", "Shock and Awe"),
  69. tB("act1","aftermath", "Aftermath"),
  70. tB("act2","village_assault", "Safe House"),
  71. tB("act2","scoutsniper", "All Ghillied Up"),
  72. tB("act2","sniperescape", "One Shot, One Kill"),
  73. tB("act2","village_defend", "Heat"),
  74. tB("act2","ambush", "The Sins of the Father"),
  75. tB("act3","icbm", "Ultimatum"),
  76. tB("act3","launchfacility_a", "All In"),
  77. tB("act3","launchfacility_b", "No Fighting in The War Room"),
  78. tB("act3","jeepride", "Game Over"),
  79. };
  80. foreach (var s in sB) settings.Add(s.Item2, true, s.Item3, s.Item1);
  81. }
  82. start
  83. {
  84. return ((current.CurrentLevelName == "killhouse") && (current.Loader == 1));
  85. }
  86. onStart
  87. {
  88. vars.doneMaps.Clear();
  89. }
  90. split
  91. {
  92. if (current.CurrentLevelName != old.CurrentLevelName)
  93. {
  94. if (current.CurrentLevelName == "coup")
  95. {
  96. vars.currentTime = timer.CurrentTime.GameTime;
  97. vars.coupOffset = true;
  98. if (settings["coup"])
  99. {
  100. vars.doneMaps.Add(old.CurrentLevelName);
  101. return true;
  102. }
  103. }
  104. else
  105. {
  106. if (settings[current.CurrentLevelName])
  107. {
  108. vars.doneMaps.Add(old.CurrentLevelName);
  109. return true;
  110. }
  111. }
  112. }
  113. }
  114. reset
  115. {
  116. return ((current.CurrentLevelName == "ui") && (old.CurrentLevelName != "ui"));
  117. }
  118. isLoading
  119. {
  120. return (current.Loader == 0);
  121. if ((version == "default") && (current.loading1 == 0))
  122. {
  123. return true;
  124. }
  125. }
  126. gameTime
  127. {
  128. if (vars.coupOffset == true)
  129. {
  130. vars.coupOffset = false;
  131. return vars.currentTime.Add(new TimeSpan (0, 4, 45));
  132. }
  133. }