MovieName.cs 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. using System;
  2. using System.Collections.Generic;
  3. // ReSharper disable StringLiteralTypo
  4. namespace FF8
  5. {
  6. public static class MovieName
  7. {
  8. public static IEnumerable<String> PossibleNames(Int32 movieId)
  9. {
  10. Boolean isFound = false;
  11. if (movieId < Disk1.Length)
  12. {
  13. isFound = true;
  14. yield return "Disk 1: " + Disk1[movieId];
  15. }
  16. if (movieId < Disk2.Length)
  17. {
  18. isFound = true;
  19. yield return "Disk 2: " + Disk2[movieId];
  20. }
  21. if (movieId < Disk3.Length)
  22. {
  23. isFound = true;
  24. yield return "Disk 3: " + Disk3[movieId];
  25. }
  26. if (movieId < Disk4.Length)
  27. {
  28. isFound = true;
  29. yield return "Disk 4: " + Disk3[movieId];
  30. }
  31. if (!isFound)
  32. throw new NotSupportedException($"Unknown movie id: {movieId}");
  33. }
  34. private static readonly String[] Disk1 =
  35. {
  36. "Balamb Garden explore",
  37. "Quistis Appears",
  38. "Zell Appears",
  39. "Dollet Intro",
  40. "Selphie Appears",
  41. "Dollet Tower Transform",
  42. "X-ATM Steps on a Car",
  43. "Dollet Escape",
  44. "Ballroom - Shooting Star",
  45. "Ballroom Dance",
  46. "Timber Train 1",
  47. "Timber Train 2",
  48. "Timber TV Distortion",
  49. "Timber TV Camera Tilt",
  50. "Enter Galbadia Garden",
  51. "Irvine Appears",
  52. "Enter Deling City",
  53. "Edea Appears",
  54. "Edea Approaches Podium",
  55. "Crowd Cheers",
  56. "Iguions Attack",
  57. "Parade Starts",
  58. "Parade 1",
  59. "Parade 2",
  60. "Carousel Raises",
  61. "Gateway Trap",
  62. "Irvine's Shot",
  63. "Squall Assaults Edea",
  64. "Seifer and Edea",
  65. "Wounded",
  66. "Liberi Fatali"
  67. };
  68. private static readonly String[] Disk2 =
  69. {
  70. "Squall's Cell",
  71. "Prison Desert Overlook",
  72. "Prison Submerges 1",
  73. "Prison Submerges 2",
  74. "Missile Launch",
  75. "Missile Base Explodes 1",
  76. "Missile Base Explodes 2",
  77. "Missiles in Clouds",
  78. "Missiles over Water",
  79. "MD Machine Startup",
  80. "Garden Ring Energizes",
  81. "Missile Impact",
  82. "Missiles Destroy Garden (unused)",
  83. "Flying Garden Overlook",
  84. "Flying Garden Overlook (w/ Rinoa)",
  85. "Garden over Balamb",
  86. "Garden Crashes into Ocean",
  87. "Garden in Ocean",
  88. "White SeeD Ship",
  89. "Crash into FH",
  90. "FH Overlook",
  91. "G-Garden through Binocs",
  92. "G-Garden through Forest",
  93. "Garden Showdown",
  94. "G-Cyclist Attack",
  95. "Rinoa Falls",
  96. "After Rinoa Falls",
  97. "G-Garden pre-Ram",
  98. "G-Garden Ram",
  99. "G-Mechs Launch",
  100. "Another Ram",
  101. "Balamb Ram",
  102. "Escape Hatch",
  103. "Paratrooper fight"
  104. };
  105. private static readonly String[] Disk3 =
  106. {
  107. "Esthar Decloaks",
  108. "Esthar Elevator 1",
  109. "Esthar Leave (car)",
  110. "Esthar Arrive (car)",
  111. "Presidential Palace leave?",
  112. "Presidential Palace enter?",
  113. "Pandora Lab Elevator down",
  114. "Space Pod Launch",
  115. "Space Pods exit atmosphere",
  116. "Space Station enter",
  117. "Closeup of Moon 1",
  118. "Closeup of Moon 2",
  119. "LP over Esthar",
  120. "LP Over Tears' Point",
  121. "Monsters falling off Moon",
  122. "Adel's Tomb",
  123. "Escape Pods Launch",
  124. "Rinoa in Space 1",
  125. "Rinoa in Space 2",
  126. "Rinoa in Space 3",
  127. "Rinoa in Space - Ring",
  128. "Rinoa Life Support",
  129. "View of Lunar Cry",
  130. "Ragnarok Conveniently Appears",
  131. "Board Ragnarok",
  132. "Ragnarok Hatch Open",
  133. "Unlock Rinoa's Tomb",
  134. "Enter LP 1",
  135. "Ragnarok with Adel's Tomb",
  136. "Enter LP 2",
  137. "Lunar Cry",
  138. "Lunar Cry Begins"
  139. };
  140. private static readonly String[] Disk4 =
  141. {
  142. "Rinoa and Adel",
  143. "Time Compression",
  144. "Ultimecia's Castle",
  145. "Showdown with Ultimecia",
  146. "Ending 1 (Squall in Limbo)",
  147. "Credits 2 (Balcony)",
  148. "Ending and Credits"
  149. };
  150. }
  151. }