BitFlags.cpp 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. /*
  2. ** Command & Conquer Generals Zero Hour(tm)
  3. ** Copyright 2025 Electronic Arts Inc.
  4. **
  5. ** This program is free software: you can redistribute it and/or modify
  6. ** it under the terms of the GNU General Public License as published by
  7. ** the Free Software Foundation, either version 3 of the License, or
  8. ** (at your option) any later version.
  9. **
  10. ** This program is distributed in the hope that it will be useful,
  11. ** but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. ** GNU General Public License for more details.
  14. **
  15. ** You should have received a copy of the GNU General Public License
  16. ** along with this program. If not, see <http://www.gnu.org/licenses/>.
  17. */
  18. ////////////////////////////////////////////////////////////////////////////////
  19. // //
  20. // (c) 2001-2003 Electronic Arts Inc. //
  21. // //
  22. ////////////////////////////////////////////////////////////////////////////////
  23. // FILE: BitFlags.cpp ///////////////////////////////////////////////////////////
  24. //
  25. // Used to set detail levels of various game systems.
  26. // Steven Johnson, Sept 2002
  27. //
  28. //
  29. ///////////////////////////////////////////////////////////////////////////////
  30. #include "PreRTS.h" // This must go first in EVERY cpp file in the GameEngine
  31. #include "Common/BitFlags.h"
  32. #include "Common/BitFlagsIO.h"
  33. #include "Common/ModelState.h"
  34. #include "GameLogic/ArmorSet.h"
  35. const char* ModelConditionFlags::s_bitNameList[] =
  36. {
  37. "TOPPLED",
  38. "FRONTCRUSHED",
  39. "BACKCRUSHED",
  40. "DAMAGED",
  41. "REALLYDAMAGED",
  42. "RUBBLE",
  43. "SPECIAL_DAMAGED",
  44. "NIGHT",
  45. "SNOW",
  46. "PARACHUTING",
  47. "GARRISONED",
  48. "ENEMYNEAR",
  49. "WEAPONSET_VETERAN",
  50. "WEAPONSET_ELITE",
  51. "WEAPONSET_HERO",
  52. "WEAPONSET_CRATEUPGRADE_ONE",
  53. "WEAPONSET_CRATEUPGRADE_TWO",
  54. "WEAPONSET_PLAYER_UPGRADE",
  55. "DOOR_1_OPENING",
  56. "DOOR_1_CLOSING",
  57. "DOOR_1_WAITING_OPEN",
  58. "DOOR_1_WAITING_TO_CLOSE",
  59. "DOOR_2_OPENING",
  60. "DOOR_2_CLOSING",
  61. "DOOR_2_WAITING_OPEN",
  62. "DOOR_2_WAITING_TO_CLOSE",
  63. "DOOR_3_OPENING",
  64. "DOOR_3_CLOSING",
  65. "DOOR_3_WAITING_OPEN",
  66. "DOOR_3_WAITING_TO_CLOSE",
  67. "DOOR_4_OPENING",
  68. "DOOR_4_CLOSING",
  69. "DOOR_4_WAITING_OPEN",
  70. "DOOR_4_WAITING_TO_CLOSE",
  71. "ATTACKING",
  72. "PREATTACK_A",
  73. "FIRING_A",
  74. "BETWEEN_FIRING_SHOTS_A",
  75. "RELOADING_A",
  76. "PREATTACK_B",
  77. "FIRING_B",
  78. "BETWEEN_FIRING_SHOTS_B",
  79. "RELOADING_B",
  80. "PREATTACK_C",
  81. "FIRING_C",
  82. "BETWEEN_FIRING_SHOTS_C",
  83. "RELOADING_C",
  84. "TURRET_ROTATE",
  85. "POST_COLLAPSE",
  86. "MOVING",
  87. "DYING",
  88. "AWAITING_CONSTRUCTION",
  89. "PARTIALLY_CONSTRUCTED",
  90. "ACTIVELY_BEING_CONSTRUCTED",
  91. "PRONE",
  92. "FREEFALL",
  93. "ACTIVELY_CONSTRUCTING",
  94. "CONSTRUCTION_COMPLETE",
  95. "RADAR_EXTENDING",
  96. "RADAR_UPGRADED",
  97. "PANICKING", // yes, it's spelled with a "k". look it up.
  98. "AFLAME",
  99. "SMOLDERING",
  100. "BURNED",
  101. "DOCKING",
  102. "DOCKING_BEGINNING",
  103. "DOCKING_ACTIVE",
  104. "DOCKING_ENDING",
  105. "CARRYING",
  106. "FLOODED",
  107. "LOADED",
  108. "JETAFTERBURNER",
  109. "JETEXHAUST",
  110. "PACKING",
  111. "UNPACKING",
  112. "DEPLOYED",
  113. "OVER_WATER",
  114. "POWER_PLANT_UPGRADED",
  115. "CLIMBING",
  116. "SOLD",
  117. #ifdef ALLOW_SURRENDER
  118. "SURRENDER",
  119. #endif
  120. "RAPPELLING",
  121. "ARMED",
  122. "POWER_PLANT_UPGRADING",
  123. "SPECIAL_CHEERING",
  124. "CONTINUOUS_FIRE_SLOW",
  125. "CONTINUOUS_FIRE_MEAN",
  126. "CONTINUOUS_FIRE_FAST",
  127. "RAISING_FLAG",
  128. "CAPTURED",
  129. "EXPLODED_FLAILING",
  130. "EXPLODED_BOUNCING",
  131. "SPLATTED",
  132. "USING_WEAPON_A",
  133. "USING_WEAPON_B",
  134. "USING_WEAPON_C",
  135. "PREORDER",
  136. "CENTER_TO_LEFT",
  137. "LEFT_TO_CENTER",
  138. "CENTER_TO_RIGHT",
  139. "RIGHT_TO_CENTER",
  140. "RIDER1", //Kris: Added these for different combat-bike riders, but feel free to use these for anything.
  141. "RIDER2",
  142. "RIDER3",
  143. "RIDER4",
  144. "RIDER5",
  145. "RIDER6",
  146. "RIDER7",
  147. "RIDER8",
  148. "STUNNED_FLAILING", // Daniel Teh's idea, added by Lorenzen, 5/28/03
  149. "STUNNED",
  150. "SECOND_LIFE",
  151. "JAMMED",
  152. "ARMORSET_CRATEUPGRADE_ONE",
  153. "ARMORSET_CRATEUPGRADE_TWO",
  154. "USER_1",
  155. "USER_2",
  156. "DISGUISED",
  157. NULL
  158. };
  159. const char* ArmorSetFlags::s_bitNameList[] =
  160. {
  161. "VETERAN",
  162. "ELITE",
  163. "HERO",
  164. "PLAYER_UPGRADE",
  165. "WEAK_VERSUS_BASEDEFENSES",
  166. "SECOND_LIFE",
  167. "CRATE_UPGRADE_ONE",
  168. "CRATE_UPGRADE_TWO",
  169. NULL
  170. };