CODGhosts.asl 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. state("iw6sp64_ship")
  2. {
  3. string50 CurrentLevelName : 0x5816540;
  4. int Loader : 0x6024EA0;
  5. int Loader2 : 0x774853C;
  6. }
  7. startup
  8. {
  9. settings.Add("missions", true, "Missions");
  10. vars.missions = new Dictionary<string,string>
  11. {
  12. {"deer_hunt","Brave New World"},
  13. {"nml","No Man's Land"},
  14. {"enemyhq","Struck Down"},
  15. {"homecoming","Homecoming"},
  16. {"flood","Legends Never Die"},
  17. {"cornered","Federation Day"},
  18. {"oilrocks","Birds of Prey"},
  19. {"jungle_ghosts","The Hunted"},
  20. {"clockwork","Clockwork"},
  21. {"black_ice","Atlas Falls"},
  22. {"ship_graveyard","Into the Deep"},
  23. {"factory","End of the Line"},
  24. {"las_vegas","Sin City"},
  25. {"carrier","All or Nothing"},
  26. {"satfarm","Severed Ties"},
  27. {"loki","Loki"},
  28. {"skyway","The Ghost Killer"},
  29. };
  30. foreach (var Tag in vars.missions)
  31. {
  32. settings.Add(Tag.Key, true, Tag.Value, "missions");
  33. };
  34. if (timer.CurrentTimingMethod == TimingMethod.RealTime) // stolen from dude simulator 3, basically asks the runner to set their livesplit to game time
  35. {
  36. var timingMessage = MessageBox.Show (
  37. "This game uses Time without Loads (Game Time) as the main timing method.\n"+
  38. "LiveSplit is currently set to show Real Time (RTA).\n"+
  39. "Would you like to set the timing method to Game Time? This will make verification easier",
  40. "LiveSplit | Call of Duty: Ghosts",
  41. MessageBoxButtons.YesNo,MessageBoxIcon.Question
  42. );
  43. if (timingMessage == DialogResult.Yes)
  44. {
  45. timer.CurrentTimingMethod = TimingMethod.GameTime;
  46. }
  47. }
  48. }
  49. start
  50. {
  51. return ((current.CurrentLevelName == "prologue") && (current.Loader2 == 0));
  52. }
  53. split
  54. {
  55. return ((current.CurrentLevelName != old.CurrentLevelName) && (settings[current.CurrentLevelName]));
  56. }
  57. isLoading
  58. {
  59. return ((current.Loader == 0) && (current.Loader2 == 1));
  60. }
  61. reset
  62. {
  63. return (current.CurrentLevelName == null);
  64. }