@blamnetwork/blf 1.0.0-beta.1 → 1.0.0-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (410) hide show
  1. package/README.md +1 -1
  2. package/dist/automapper/create_map.d.ts +5 -0
  3. package/dist/automapper/create_map.d.ts.map +1 -0
  4. package/dist/automapper/create_map.js +6 -0
  5. package/dist/automapper/create_mapper.d.ts +6 -0
  6. package/dist/automapper/create_mapper.d.ts.map +1 -0
  7. package/dist/automapper/create_mapper.js +9 -0
  8. package/dist/automapper/enum_by_name.d.ts +16 -0
  9. package/dist/automapper/enum_by_name.d.ts.map +1 -0
  10. package/dist/automapper/enum_by_name.js +50 -0
  11. package/dist/automapper/index.d.ts +7 -0
  12. package/dist/automapper/index.d.ts.map +1 -0
  13. package/dist/automapper/index.js +6 -0
  14. package/dist/automapper/stage3_metadata.d.ts +7 -0
  15. package/dist/automapper/stage3_metadata.d.ts.map +1 -0
  16. package/dist/automapper/stage3_metadata.js +38 -0
  17. package/dist/bitstream/enum.d.ts +5 -1
  18. package/dist/bitstream/enum.d.ts.map +1 -1
  19. package/dist/bitstream/enum.js +21 -1
  20. package/dist/bitstream/reader.d.ts.map +1 -1
  21. package/dist/bitstream/reader.js +3 -6
  22. package/dist/bitstream/writer.d.ts +2 -1
  23. package/dist/bitstream/writer.d.ts.map +1 -1
  24. package/dist/bitstream/writer.js +3 -2
  25. package/dist/blam/common/math/real_types.d.ts +19 -0
  26. package/dist/blam/common/math/real_types.d.ts.map +1 -0
  27. package/dist/blam/common/math/real_types.js +21 -0
  28. package/dist/blam/common/math/unit_vector_quantization.d.ts +6 -0
  29. package/dist/blam/common/math/unit_vector_quantization.d.ts.map +1 -0
  30. package/dist/blam/common/math/unit_vector_quantization.js +26 -0
  31. package/dist/blam/common/simulation/simulation_encoding.d.ts +7 -0
  32. package/dist/blam/common/simulation/simulation_encoding.d.ts.map +1 -0
  33. package/dist/blam/common/simulation/simulation_encoding.js +23 -0
  34. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_custom_variant.d.ts.map +1 -1
  35. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_custom_variant.js +272 -112
  36. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_custom_variant_au1_settings.d.ts.map +1 -1
  37. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_custom_variant_au1_settings.js +113 -28
  38. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_default.d.ts +7 -4
  39. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_default.d.ts.map +1 -1
  40. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_default.js +752 -279
  41. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_survival_variant.d.ts.map +1 -1
  42. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_survival_variant.js +485 -170
  43. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_traits.d.ts.map +1 -1
  44. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_traits.js +74 -14
  45. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_variant.d.ts +2 -1
  46. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_variant.d.ts.map +1 -1
  47. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_variant.js +153 -87
  48. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_player_traits.d.ts.map +1 -1
  49. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_player_traits.js +435 -140
  50. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_string_table.d.ts.map +1 -1
  51. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_string_table.js +206 -144
  52. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/game_engine_enums.d.ts.map +1 -1
  53. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/game_engine_enums.js +93 -23
  54. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_megalo_game_statistic.d.ts.map +1 -1
  55. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_megalo_game_statistic.js +81 -16
  56. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_megalogamengine_map_permissions.d.ts.map +1 -1
  57. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_megalogamengine_map_permissions.js +70 -15
  58. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_object_filter.d.ts.map +1 -1
  59. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_object_filter.js +108 -33
  60. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_trigger.d.ts.map +1 -1
  61. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_trigger.js +113 -33
  62. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_actions.d.ts +130 -26
  63. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_actions.d.ts.map +1 -1
  64. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_actions.js +3193 -1602
  65. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_conditions.d.ts.map +1 -1
  66. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_conditions.js +418 -208
  67. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_references.d.ts.map +1 -1
  68. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_references.js +744 -459
  69. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_text.d.ts.map +1 -1
  70. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_text.js +218 -98
  71. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_custom_game_engine_definition.d.ts +5 -4
  72. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_custom_game_engine_definition.d.ts.map +1 -1
  73. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_custom_game_engine_definition.js +242 -107
  74. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_game_engine_player_rating_parameters.d.ts.map +1 -1
  75. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_game_engine_player_rating_parameters.js +177 -52
  76. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_user_defined_option.d.ts.map +1 -1
  77. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_user_defined_option.js +187 -72
  78. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_variable_metadata.d.ts.map +1 -1
  79. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_variable_metadata.js +134 -66
  80. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_variant_variable.d.ts.map +1 -1
  81. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_variant_variable.js +138 -63
  82. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/math/real_math.d.ts +23 -0
  83. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/math/real_math.d.ts.map +1 -0
  84. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/math/real_math.js +110 -0
  85. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/memory/bitstream_extensions.d.ts +5 -0
  86. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/memory/bitstream_extensions.d.ts.map +1 -0
  87. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/memory/bitstream_extensions.js +39 -0
  88. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/saved_games/index.d.ts +1 -0
  89. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/saved_games/index.d.ts.map +1 -1
  90. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/saved_games/index.js +1 -0
  91. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/saved_games/scenario_map_variant.d.ts +104 -0
  92. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/saved_games/scenario_map_variant.d.ts.map +1 -0
  93. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/saved_games/scenario_map_variant.js +681 -0
  94. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/simulation/simulation_encoding.d.ts +5 -0
  95. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/simulation/simulation_encoding.d.ts.map +1 -0
  96. package/dist/blam/haloreach/v12065_11_08_24_1738_tu1actual/simulation/simulation_encoding.js +28 -0
  97. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_engine_custom_variant.d.ts.map +1 -0
  98. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_engine_custom_variant.js +285 -0
  99. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_engine_custom_variant_au1_settings.d.ts.map +1 -0
  100. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_engine_custom_variant_au1_settings.js +115 -0
  101. package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/c_game_engine_default.d.ts +7 -4
  102. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_engine_default.d.ts.map +1 -0
  103. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_engine_default.js +765 -0
  104. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_engine_survival_variant.d.ts.map +1 -0
  105. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_engine_survival_variant.js +504 -0
  106. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_engine_traits.d.ts.map +1 -0
  107. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_engine_traits.js +76 -0
  108. package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/c_game_variant.d.ts +2 -1
  109. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_variant.d.ts.map +1 -0
  110. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_variant.js +175 -0
  111. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_player_traits.d.ts.map +1 -0
  112. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_player_traits.js +437 -0
  113. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_string_table.d.ts.map +1 -0
  114. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_string_table.js +252 -0
  115. package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/game_engine_enums.d.ts.map +1 -1
  116. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/game_engine_enums.js +130 -0
  117. package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/index.d.ts.map +1 -1
  118. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/c_megalo_game_statistic.d.ts.map +1 -0
  119. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/c_megalo_game_statistic.js +83 -0
  120. package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/c_megalogamengine_map_permissions.d.ts.map +1 -1
  121. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/c_megalogamengine_map_permissions.js +73 -0
  122. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/c_object_filter.d.ts.map +1 -0
  123. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/c_object_filter.js +114 -0
  124. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/c_trigger.d.ts.map +1 -0
  125. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/c_trigger.js +139 -0
  126. package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/index.d.ts.map +1 -1
  127. package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_actions.d.ts +187 -26
  128. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/megalogamengine_actions.d.ts.map +1 -0
  129. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/megalogamengine_actions.js +3636 -0
  130. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/megalogamengine_conditions.d.ts.map +1 -0
  131. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/megalogamengine_conditions.js +436 -0
  132. package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_explicit_object.d.ts.map +1 -1
  133. package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_explicit_player.d.ts.map +1 -1
  134. package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_explicit_team.d.ts.map +1 -1
  135. package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_hud_widgets.d.ts.map +1 -1
  136. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/megalogamengine_references.d.ts.map +1 -0
  137. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/megalogamengine_references.js +787 -0
  138. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/megalogamengine_text.d.ts.map +1 -0
  139. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/megalogamengine_text.js +239 -0
  140. package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/s_custom_game_engine_definition.d.ts +5 -4
  141. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/s_custom_game_engine_definition.d.ts.map +1 -0
  142. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/s_custom_game_engine_definition.js +251 -0
  143. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/s_game_engine_player_rating_parameters.d.ts.map +1 -0
  144. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/s_game_engine_player_rating_parameters.js +179 -0
  145. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/s_user_defined_option.d.ts.map +1 -0
  146. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/s_user_defined_option.js +197 -0
  147. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/s_variable_metadata.d.ts.map +1 -0
  148. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/s_variable_metadata.js +153 -0
  149. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/s_variant_variable.d.ts.map +1 -0
  150. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/s_variant_variable.js +150 -0
  151. package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/index.d.ts.map +1 -1
  152. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/saved_games/index.d.ts +3 -0
  153. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/saved_games/index.d.ts.map +1 -0
  154. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/saved_games/index.js +2 -0
  155. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/saved_games/saved_game_files.d.ts +2 -0
  156. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/saved_games/saved_game_files.d.ts.map +1 -0
  157. package/dist/blam/haloreach_mcc/v_untracked_25_08_16_1352/saved_games/saved_game_files.js +1 -0
  158. package/dist/blf_chunk.d.ts +2 -2
  159. package/dist/blf_chunk.d.ts.map +1 -1
  160. package/dist/blf_chunk.js +20 -15
  161. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/index.d.ts +3 -2
  162. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/index.d.ts.map +1 -1
  163. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/index.js +3 -2
  164. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_content_header.d.ts +1 -1
  165. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_content_header.d.ts.map +1 -1
  166. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_content_header.js +7 -7
  167. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_map_variant.d.ts +19 -0
  168. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_map_variant.d.ts.map +1 -0
  169. package/dist/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_map_variant.js +106 -0
  170. package/dist/chunks/haloreach_mcc/v_untracked_25_08_16_1352/index.d.ts +6 -0
  171. package/dist/chunks/haloreach_mcc/v_untracked_25_08_16_1352/index.d.ts.map +1 -0
  172. package/dist/chunks/haloreach_mcc/v_untracked_25_08_16_1352/index.js +5 -0
  173. package/dist/chunks/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/s_blf_chunk_game_variant.d.ts +1 -1
  174. package/dist/chunks/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/s_blf_chunk_game_variant.d.ts.map +1 -1
  175. package/dist/chunks/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/s_blf_chunk_game_variant.js +1 -1
  176. package/dist/chunks/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/s_blf_chunk_packed_game_variant.d.ts +1 -1
  177. package/dist/chunks/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/s_blf_chunk_packed_game_variant.d.ts.map +1 -1
  178. package/dist/chunks/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/s_blf_chunk_packed_game_variant.js +1 -1
  179. package/dist/chunks/mcc/s_blf_chunk_fileshare_metadata.d.ts +12 -0
  180. package/dist/chunks/mcc/s_blf_chunk_fileshare_metadata.d.ts.map +1 -0
  181. package/dist/chunks/mcc/s_blf_chunk_fileshare_metadata.js +107 -0
  182. package/dist/helpers/automap.d.ts +9 -0
  183. package/dist/helpers/automap.d.ts.map +1 -0
  184. package/dist/helpers/automap.js +34 -0
  185. package/dist/helpers/convert_reach_gametype.d.ts +12 -11
  186. package/dist/helpers/convert_reach_gametype.d.ts.map +1 -1
  187. package/dist/helpers/convert_reach_gametype.js +403 -109
  188. package/dist/helpers/game_variant_json.d.ts +19 -0
  189. package/dist/helpers/game_variant_json.d.ts.map +1 -0
  190. package/dist/helpers/game_variant_json.js +121 -0
  191. package/dist/helpers/index.d.ts +1 -1
  192. package/dist/helpers/index.d.ts.map +1 -1
  193. package/dist/helpers/index.js +1 -1
  194. package/dist/helpers/reach_gametype_automap.d.ts +10 -0
  195. package/dist/helpers/reach_gametype_automap.d.ts.map +1 -0
  196. package/dist/helpers/reach_gametype_automap.js +45 -0
  197. package/dist/helpers/reach_gametype_automapper.d.ts +5 -0
  198. package/dist/helpers/reach_gametype_automapper.d.ts.map +1 -0
  199. package/dist/helpers/reach_gametype_automapper.js +9 -0
  200. package/dist/helpers/reach_gametype_conversion_error.d.ts +11 -0
  201. package/dist/helpers/reach_gametype_conversion_error.d.ts.map +1 -0
  202. package/dist/helpers/reach_gametype_conversion_error.js +11 -0
  203. package/dist/types/static_array.d.ts +6 -0
  204. package/dist/types/static_array.d.ts.map +1 -0
  205. package/dist/types/static_array.js +3 -0
  206. package/dist/versions/haloreach/v12065_11_08_24_1738_tu1actual.d.ts +1 -0
  207. package/dist/versions/haloreach/v12065_11_08_24_1738_tu1actual.d.ts.map +1 -1
  208. package/dist/versions/haloreach/v12065_11_08_24_1738_tu1actual.js +1 -0
  209. package/dist/versions/haloreach_mcc/{v_untracked_25_08_19_1352.js → v_untracked_25_08_16_1352.d.ts} +5 -3
  210. package/dist/versions/haloreach_mcc/{v_untracked_25_08_19_1352.d.ts.map → v_untracked_25_08_16_1352.d.ts.map} +1 -1
  211. package/dist/versions/haloreach_mcc/{v_untracked_25_08_19_1352.d.ts → v_untracked_25_08_16_1352.js} +4 -4
  212. package/dist/versions/mcc/v2025_08_16_178512_1_release.d.ts +4 -0
  213. package/dist/versions/mcc/v2025_08_16_178512_1_release.d.ts.map +1 -0
  214. package/dist/versions/mcc/v2025_08_16_178512_1_release.js +3 -0
  215. package/dist-cjs/automapper/create_map.js +9 -0
  216. package/dist-cjs/automapper/create_mapper.js +12 -0
  217. package/dist-cjs/automapper/enum_by_name.js +55 -0
  218. package/dist-cjs/automapper/index.js +20 -0
  219. package/dist-cjs/automapper/stage3_metadata.js +43 -0
  220. package/dist-cjs/bitstream/enum.js +25 -2
  221. package/dist-cjs/bitstream/reader.js +2 -5
  222. package/dist-cjs/bitstream/writer.js +3 -2
  223. package/dist-cjs/blam/common/math/real_types.js +27 -0
  224. package/dist-cjs/blam/common/math/unit_vector_quantization.js +29 -0
  225. package/dist-cjs/blam/common/simulation/simulation_encoding.js +26 -0
  226. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_custom_variant.js +271 -112
  227. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_custom_variant_au1_settings.js +114 -30
  228. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_default.js +743 -280
  229. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_survival_variant.js +480 -170
  230. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_engine_traits.js +74 -15
  231. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_game_variant.js +152 -87
  232. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_player_traits.js +431 -142
  233. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/c_string_table.js +205 -145
  234. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/game_engine_enums.js +92 -23
  235. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_megalo_game_statistic.js +82 -18
  236. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_megalogamengine_map_permissions.js +70 -16
  237. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_object_filter.js +108 -34
  238. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/c_trigger.js +112 -33
  239. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_actions.js +3150 -1607
  240. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_conditions.js +413 -208
  241. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_references.js +735 -459
  242. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/megalogamengine_text.js +216 -99
  243. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_custom_game_engine_definition.js +240 -106
  244. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_game_engine_player_rating_parameters.js +178 -54
  245. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_user_defined_option.js +186 -73
  246. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_variable_metadata.js +135 -68
  247. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/game/megalogamengine/s_variant_variable.js +137 -63
  248. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/math/real_math.js +116 -0
  249. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/memory/bitstream_extensions.js +43 -0
  250. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/saved_games/index.js +1 -0
  251. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/saved_games/scenario_map_variant.js +687 -0
  252. package/dist-cjs/blam/haloreach/v12065_11_08_24_1738_tu1actual/simulation/simulation_encoding.js +32 -0
  253. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_engine_custom_variant.js +288 -0
  254. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_engine_custom_variant_au1_settings.js +118 -0
  255. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_engine_default.js +768 -0
  256. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_engine_survival_variant.js +507 -0
  257. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_engine_traits.js +79 -0
  258. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_game_variant.js +178 -0
  259. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_player_traits.js +440 -0
  260. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/c_string_table.js +255 -0
  261. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/game_engine_enums.js +133 -0
  262. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/c_megalo_game_statistic.js +86 -0
  263. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/c_megalogamengine_map_permissions.js +76 -0
  264. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/c_object_filter.js +117 -0
  265. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/c_trigger.js +142 -0
  266. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/megalogamengine_actions.js +3640 -0
  267. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/megalogamengine_conditions.js +439 -0
  268. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/megalogamengine_references.js +793 -0
  269. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/megalogamengine_text.js +242 -0
  270. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/s_custom_game_engine_definition.js +254 -0
  271. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/s_game_engine_player_rating_parameters.js +182 -0
  272. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/s_user_defined_option.js +200 -0
  273. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/s_variable_metadata.js +160 -0
  274. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/game/megalogamengine/s_variant_variable.js +153 -0
  275. package/dist-cjs/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/saved_games/index.js +1 -0
  276. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_16_1352/saved_games/saved_game_files.js +17 -0
  277. package/dist-cjs/blf_chunk.js +20 -15
  278. package/dist-cjs/chunks/haloreach/v12065_11_08_24_1738_tu1actual/index.js +19 -13
  279. package/dist-cjs/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_content_header.js +7 -7
  280. package/dist-cjs/chunks/haloreach/v12065_11_08_24_1738_tu1actual/s_blf_chunk_map_variant.js +109 -0
  281. package/dist-cjs/chunks/haloreach_mcc/v_untracked_25_08_16_1352/index.js +26 -0
  282. package/dist-cjs/chunks/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/s_blf_chunk_game_variant.js +1 -1
  283. package/dist-cjs/chunks/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/s_blf_chunk_packed_game_variant.js +1 -1
  284. package/dist-cjs/chunks/mcc/s_blf_chunk_fileshare_metadata.js +110 -0
  285. package/dist-cjs/helpers/automap.js +40 -0
  286. package/dist-cjs/helpers/convert_reach_gametype.js +407 -111
  287. package/dist-cjs/helpers/game_variant_json.js +127 -0
  288. package/dist-cjs/helpers/index.js +2 -1
  289. package/dist-cjs/helpers/reach_gametype_automap.js +81 -0
  290. package/dist-cjs/helpers/reach_gametype_automapper.js +13 -0
  291. package/dist-cjs/helpers/reach_gametype_conversion_error.js +14 -0
  292. package/dist-cjs/types/static_array.js +6 -0
  293. package/dist-cjs/versions/haloreach/v12065_11_08_24_1738_tu1actual.js +1 -0
  294. package/dist-cjs/versions/haloreach_mcc/{v_untracked_25_08_19_1352.js → v_untracked_25_08_16_1352.js} +4 -3
  295. package/dist-cjs/versions/mcc/v2025_08_16_178512_1_release.js +20 -0
  296. package/package.json +14 -3
  297. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant.d.ts.map +0 -1
  298. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant.js +0 -125
  299. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant_au1_settings.d.ts.map +0 -1
  300. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant_au1_settings.js +0 -30
  301. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_default.d.ts.map +0 -1
  302. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_default.js +0 -292
  303. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_survival_variant.d.ts.map +0 -1
  304. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_survival_variant.js +0 -184
  305. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_traits.d.ts.map +0 -1
  306. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_traits.js +0 -16
  307. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_variant.d.ts.map +0 -1
  308. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_variant.js +0 -109
  309. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_player_traits.d.ts.map +0 -1
  310. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_player_traits.js +0 -142
  311. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_string_table.d.ts.map +0 -1
  312. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_string_table.js +0 -190
  313. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/game_engine_enums.js +0 -60
  314. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalo_game_statistic.d.ts.map +0 -1
  315. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalo_game_statistic.js +0 -18
  316. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalogamengine_map_permissions.js +0 -18
  317. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_object_filter.d.ts.map +0 -1
  318. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_object_filter.js +0 -39
  319. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_trigger.d.ts.map +0 -1
  320. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_trigger.js +0 -59
  321. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_actions.d.ts.map +0 -1
  322. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_actions.js +0 -1696
  323. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_conditions.d.ts.map +0 -1
  324. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_conditions.js +0 -226
  325. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_references.d.ts.map +0 -1
  326. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_references.js +0 -502
  327. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_text.d.ts.map +0 -1
  328. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_text.js +0 -119
  329. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_custom_game_engine_definition.d.ts.map +0 -1
  330. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_custom_game_engine_definition.js +0 -116
  331. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_game_engine_player_rating_parameters.d.ts.map +0 -1
  332. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_game_engine_player_rating_parameters.js +0 -54
  333. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_user_defined_option.d.ts.map +0 -1
  334. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_user_defined_option.js +0 -82
  335. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variable_metadata.d.ts.map +0 -1
  336. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variable_metadata.js +0 -85
  337. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variant_variable.d.ts.map +0 -1
  338. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variant_variable.js +0 -75
  339. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/index.d.ts +0 -2
  340. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/index.d.ts.map +0 -1
  341. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/index.js +0 -1
  342. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/saved_game_files.d.ts +0 -66
  343. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/saved_game_files.d.ts.map +0 -1
  344. package/dist/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/saved_game_files.js +0 -586
  345. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/index.d.ts +0 -5
  346. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/index.d.ts.map +0 -1
  347. package/dist/chunks/haloreach_mcc/v_untracked_25_08_19_1352/index.js +0 -4
  348. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant.js +0 -129
  349. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_custom_variant_au1_settings.js +0 -34
  350. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_default.js +0 -305
  351. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_survival_variant.js +0 -192
  352. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_engine_traits.js +0 -20
  353. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_game_variant.js +0 -113
  354. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_player_traits.js +0 -151
  355. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/c_string_table.js +0 -195
  356. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/game_engine_enums.js +0 -64
  357. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalo_game_statistic.js +0 -22
  358. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_megalogamengine_map_permissions.js +0 -22
  359. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_object_filter.js +0 -43
  360. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/c_trigger.js +0 -63
  361. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_actions.js +0 -1748
  362. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_conditions.js +0 -234
  363. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_references.js +0 -517
  364. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/megalogamengine_text.js +0 -125
  365. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_custom_game_engine_definition.js +0 -120
  366. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_game_engine_player_rating_parameters.js +0 -58
  367. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_user_defined_option.js +0 -87
  368. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variable_metadata.js +0 -93
  369. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/game/megalogamengine/s_variant_variable.js +0 -79
  370. package/dist-cjs/blam/haloreach_mcc/v_untracked_25_08_19_1352/saved_games/saved_game_files.js +0 -591
  371. package/dist-cjs/chunks/haloreach_mcc/v_untracked_25_08_19_1352/index.js +0 -19
  372. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/c_game_engine_custom_variant.d.ts +0 -0
  373. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/c_game_engine_custom_variant_au1_settings.d.ts +0 -0
  374. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/c_game_engine_survival_variant.d.ts +0 -0
  375. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/c_game_engine_traits.d.ts +0 -0
  376. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/c_player_traits.d.ts +0 -0
  377. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/c_string_table.d.ts +0 -0
  378. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/game_engine_enums.d.ts +0 -0
  379. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/index.d.ts +0 -0
  380. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/index.js +0 -0
  381. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/c_megalo_game_statistic.d.ts +0 -0
  382. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/c_megalogamengine_map_permissions.d.ts +0 -0
  383. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/c_object_filter.d.ts +0 -0
  384. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/c_trigger.d.ts +0 -0
  385. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/index.d.ts +0 -0
  386. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/index.js +0 -0
  387. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_conditions.d.ts +0 -0
  388. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_explicit_object.d.ts +0 -0
  389. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_explicit_object.js +0 -0
  390. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_explicit_player.d.ts +0 -0
  391. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_explicit_player.js +0 -0
  392. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_explicit_team.d.ts +0 -0
  393. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_explicit_team.js +0 -0
  394. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_hud_widgets.d.ts +0 -0
  395. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_hud_widgets.js +0 -0
  396. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_references.d.ts +0 -0
  397. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_text.d.ts +0 -0
  398. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/s_game_engine_player_rating_parameters.d.ts +0 -0
  399. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/s_user_defined_option.d.ts +0 -0
  400. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/s_variable_metadata.d.ts +0 -0
  401. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/s_variant_variable.d.ts +0 -0
  402. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/index.d.ts +0 -0
  403. /package/dist/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/index.js +0 -0
  404. /package/dist-cjs/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/index.js +0 -0
  405. /package/dist-cjs/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/index.js +0 -0
  406. /package/dist-cjs/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_explicit_object.js +0 -0
  407. /package/dist-cjs/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_explicit_player.js +0 -0
  408. /package/dist-cjs/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_explicit_team.js +0 -0
  409. /package/dist-cjs/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/game/megalogamengine/megalogamengine_hud_widgets.js +0 -0
  410. /package/dist-cjs/blam/haloreach_mcc/{v_untracked_25_08_19_1352 → v_untracked_25_08_16_1352}/index.js +0 -0
@@ -0,0 +1,687 @@
1
+ "use strict";
2
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
3
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
4
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
5
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
6
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
7
+ var _, done = false;
8
+ for (var i = decorators.length - 1; i >= 0; i--) {
9
+ var context = {};
10
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
11
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
12
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
13
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
14
+ if (kind === "accessor") {
15
+ if (result === void 0) continue;
16
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
17
+ if (_ = accept(result.get)) descriptor.get = _;
18
+ if (_ = accept(result.set)) descriptor.set = _;
19
+ if (_ = accept(result.init)) initializers.unshift(_);
20
+ }
21
+ else if (_ = accept(result)) {
22
+ if (kind === "field") initializers.unshift(_);
23
+ else descriptor[key] = _;
24
+ }
25
+ }
26
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
27
+ done = true;
28
+ };
29
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
30
+ var useValue = arguments.length > 2;
31
+ for (var i = 0; i < initializers.length; i++) {
32
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
33
+ }
34
+ return useValue ? value : void 0;
35
+ };
36
+ Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.c_map_variant = exports.c_object_identifier = exports.s_variant_object_datum = exports.s_variant_multiplayer_object_properties_definition = exports.s_variant_multiplayer_object_properties_definition_weapon_data = exports.s_variant_multiplayer_object_properties_definition_teleporter_data = exports.s_variant_multiplayer_object_properties_definition_location_data = exports.s_multiplayer_object_boundary = exports.s_variant_quota = exports.e_boundary_shape = exports.k_maximum_variant_quotas = exports.k_maximum_variant_objects = void 0;
38
+ exports.create_default_map_variant = create_default_map_variant;
39
+ exports.map_variant_point_in_bounds = map_variant_point_in_bounds;
40
+ const math_1 = require("../../../../bitstream/math");
41
+ const error_1 = require("../../../../error");
42
+ const automap_1 = require("../../../../helpers/automap");
43
+ const real_types_1 = require("../../../common/math/real_types");
44
+ const c_string_table_1 = require("../game/c_string_table");
45
+ const bitstream_extensions_1 = require("../memory/bitstream_extensions");
46
+ const simulation_encoding_1 = require("../simulation/simulation_encoding");
47
+ const saved_game_files_1 = require("./saved_game_files");
48
+ exports.k_maximum_variant_objects = 651;
49
+ exports.k_maximum_variant_quotas = 256;
50
+ /** Matches `e_boundary_shape` in blf_lib `scenario_map_variant.rs`. */
51
+ var e_boundary_shape;
52
+ (function (e_boundary_shape) {
53
+ e_boundary_shape[e_boundary_shape["unused"] = 0] = "unused";
54
+ e_boundary_shape[e_boundary_shape["sphere"] = 1] = "sphere";
55
+ e_boundary_shape[e_boundary_shape["cylinder"] = 2] = "cylinder";
56
+ e_boundary_shape[e_boundary_shape["box"] = 3] = "box";
57
+ })(e_boundary_shape || (exports.e_boundary_shape = e_boundary_shape = {}));
58
+ let s_variant_quota = (() => {
59
+ let _minimum_count_decorators;
60
+ let _minimum_count_initializers = [];
61
+ let _minimum_count_extraInitializers = [];
62
+ let _maximum_count_decorators;
63
+ let _maximum_count_initializers = [];
64
+ let _maximum_count_extraInitializers = [];
65
+ let _placed_on_map_decorators;
66
+ let _placed_on_map_initializers = [];
67
+ let _placed_on_map_extraInitializers = [];
68
+ return class s_variant_quota {
69
+ static {
70
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
71
+ _minimum_count_decorators = [(0, automap_1.AutoMap)(() => Number)];
72
+ _maximum_count_decorators = [(0, automap_1.AutoMap)(() => Number)];
73
+ _placed_on_map_decorators = [(0, automap_1.AutoMap)(() => Number)];
74
+ __esDecorate(null, null, _minimum_count_decorators, { kind: "field", name: "minimum_count", static: false, private: false, access: { has: obj => "minimum_count" in obj, get: obj => obj.minimum_count, set: (obj, value) => { obj.minimum_count = value; } }, metadata: _metadata }, _minimum_count_initializers, _minimum_count_extraInitializers);
75
+ __esDecorate(null, null, _maximum_count_decorators, { kind: "field", name: "maximum_count", static: false, private: false, access: { has: obj => "maximum_count" in obj, get: obj => obj.maximum_count, set: (obj, value) => { obj.maximum_count = value; } }, metadata: _metadata }, _maximum_count_initializers, _maximum_count_extraInitializers);
76
+ __esDecorate(null, null, _placed_on_map_decorators, { kind: "field", name: "placed_on_map", static: false, private: false, access: { has: obj => "placed_on_map" in obj, get: obj => obj.placed_on_map, set: (obj, value) => { obj.placed_on_map = value; } }, metadata: _metadata }, _placed_on_map_initializers, _placed_on_map_extraInitializers);
77
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
78
+ }
79
+ minimum_count = __runInitializers(this, _minimum_count_initializers, 0);
80
+ maximum_count = (__runInitializers(this, _minimum_count_extraInitializers), __runInitializers(this, _maximum_count_initializers, 0));
81
+ placed_on_map = (__runInitializers(this, _maximum_count_extraInitializers), __runInitializers(this, _placed_on_map_initializers, 0));
82
+ decode(bitstream) {
83
+ this.minimum_count = bitstream.read_integer("minimum-count", 8);
84
+ this.maximum_count = bitstream.read_integer("maximum-count", 8);
85
+ this.placed_on_map = bitstream.read_integer("placed-on-map", 8);
86
+ }
87
+ encode(bitstream) {
88
+ bitstream.write_integer(this.minimum_count, 8);
89
+ bitstream.write_integer(this.maximum_count, 8);
90
+ bitstream.write_integer(this.placed_on_map, 8);
91
+ }
92
+ constructor() {
93
+ __runInitializers(this, _placed_on_map_extraInitializers);
94
+ }
95
+ };
96
+ })();
97
+ exports.s_variant_quota = s_variant_quota;
98
+ let s_multiplayer_object_boundary = (() => {
99
+ let _shape_decorators;
100
+ let _shape_initializers = [];
101
+ let _shape_extraInitializers = [];
102
+ let _size_decorators;
103
+ let _size_initializers = [];
104
+ let _size_extraInitializers = [];
105
+ let _box_length_decorators;
106
+ let _box_length_initializers = [];
107
+ let _box_length_extraInitializers = [];
108
+ let _positive_height_decorators;
109
+ let _positive_height_initializers = [];
110
+ let _positive_height_extraInitializers = [];
111
+ let _negative_height_decorators;
112
+ let _negative_height_initializers = [];
113
+ let _negative_height_extraInitializers = [];
114
+ return class s_multiplayer_object_boundary {
115
+ static {
116
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
117
+ _shape_decorators = [(0, automap_1.AutoMap)(() => e_boundary_shape)];
118
+ _size_decorators = [(0, automap_1.AutoMap)(() => Number)];
119
+ _box_length_decorators = [(0, automap_1.AutoMap)(() => Number)];
120
+ _positive_height_decorators = [(0, automap_1.AutoMap)(() => Number)];
121
+ _negative_height_decorators = [(0, automap_1.AutoMap)(() => Number)];
122
+ __esDecorate(null, null, _shape_decorators, { kind: "field", name: "shape", static: false, private: false, access: { has: obj => "shape" in obj, get: obj => obj.shape, set: (obj, value) => { obj.shape = value; } }, metadata: _metadata }, _shape_initializers, _shape_extraInitializers);
123
+ __esDecorate(null, null, _size_decorators, { kind: "field", name: "size", static: false, private: false, access: { has: obj => "size" in obj, get: obj => obj.size, set: (obj, value) => { obj.size = value; } }, metadata: _metadata }, _size_initializers, _size_extraInitializers);
124
+ __esDecorate(null, null, _box_length_decorators, { kind: "field", name: "box_length", static: false, private: false, access: { has: obj => "box_length" in obj, get: obj => obj.box_length, set: (obj, value) => { obj.box_length = value; } }, metadata: _metadata }, _box_length_initializers, _box_length_extraInitializers);
125
+ __esDecorate(null, null, _positive_height_decorators, { kind: "field", name: "positive_height", static: false, private: false, access: { has: obj => "positive_height" in obj, get: obj => obj.positive_height, set: (obj, value) => { obj.positive_height = value; } }, metadata: _metadata }, _positive_height_initializers, _positive_height_extraInitializers);
126
+ __esDecorate(null, null, _negative_height_decorators, { kind: "field", name: "negative_height", static: false, private: false, access: { has: obj => "negative_height" in obj, get: obj => obj.negative_height, set: (obj, value) => { obj.negative_height = value; } }, metadata: _metadata }, _negative_height_initializers, _negative_height_extraInitializers);
127
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
128
+ }
129
+ shape = __runInitializers(this, _shape_initializers, e_boundary_shape.unused);
130
+ size = (__runInitializers(this, _shape_extraInitializers), __runInitializers(this, _size_initializers, 0));
131
+ box_length = (__runInitializers(this, _size_extraInitializers), __runInitializers(this, _box_length_initializers, 0));
132
+ positive_height = (__runInitializers(this, _box_length_extraInitializers), __runInitializers(this, _positive_height_initializers, 0));
133
+ negative_height = (__runInitializers(this, _positive_height_extraInitializers), __runInitializers(this, _negative_height_initializers, 0));
134
+ static decode(bitstream) {
135
+ const boundary = new s_multiplayer_object_boundary();
136
+ boundary.shape = bitstream.read_enum("shape", 2, e_boundary_shape);
137
+ switch (boundary.shape) {
138
+ case e_boundary_shape.unused:
139
+ return null;
140
+ case e_boundary_shape.sphere:
141
+ boundary.size = bitstream.read_quantized_real(0, 200, 11, false, true);
142
+ break;
143
+ case e_boundary_shape.cylinder:
144
+ boundary.size = bitstream.read_quantized_real(0, 200, 11, false, true);
145
+ boundary.positive_height = bitstream.read_quantized_real(0, 200, 11, false, true);
146
+ boundary.negative_height = bitstream.read_quantized_real(0, 200, 11, false, true);
147
+ break;
148
+ case e_boundary_shape.box:
149
+ boundary.size = bitstream.read_quantized_real(0, 200, 11, false, true);
150
+ boundary.box_length = bitstream.read_quantized_real(0, 200, 11, false, true);
151
+ boundary.positive_height = bitstream.read_quantized_real(0, 200, 11, false, true);
152
+ boundary.negative_height = bitstream.read_quantized_real(0, 200, 11, false, true);
153
+ break;
154
+ }
155
+ return boundary;
156
+ }
157
+ encode(bitstream) {
158
+ bitstream.write_enum(this.shape, 2, e_boundary_shape);
159
+ switch (this.shape) {
160
+ case e_boundary_shape.unused:
161
+ break;
162
+ case e_boundary_shape.sphere:
163
+ bitstream.write_quantized_real(this.size, 0, 200, 11, false, true);
164
+ break;
165
+ case e_boundary_shape.cylinder:
166
+ bitstream.write_quantized_real(this.size, 0, 200, 11, false, true);
167
+ bitstream.write_quantized_real(this.positive_height, 0, 200, 11, false, true);
168
+ bitstream.write_quantized_real(this.negative_height, 0, 200, 11, false, true);
169
+ break;
170
+ case e_boundary_shape.box:
171
+ bitstream.write_quantized_real(this.size, 0, 200, 11, false, true);
172
+ bitstream.write_quantized_real(this.box_length, 0, 200, 11, false, true);
173
+ bitstream.write_quantized_real(this.positive_height, 0, 200, 11, false, true);
174
+ bitstream.write_quantized_real(this.negative_height, 0, 200, 11, false, true);
175
+ break;
176
+ }
177
+ }
178
+ constructor() {
179
+ __runInitializers(this, _negative_height_extraInitializers);
180
+ }
181
+ };
182
+ })();
183
+ exports.s_multiplayer_object_boundary = s_multiplayer_object_boundary;
184
+ let s_variant_multiplayer_object_properties_definition_location_data = (() => {
185
+ let _location_name_index_decorators;
186
+ let _location_name_index_initializers = [];
187
+ let _location_name_index_extraInitializers = [];
188
+ return class s_variant_multiplayer_object_properties_definition_location_data {
189
+ static {
190
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
191
+ _location_name_index_decorators = [(0, automap_1.AutoMap)(() => Number)];
192
+ __esDecorate(null, null, _location_name_index_decorators, { kind: "field", name: "location_name_index", static: false, private: false, access: { has: obj => "location_name_index" in obj, get: obj => obj.location_name_index, set: (obj, value) => { obj.location_name_index = value; } }, metadata: _metadata }, _location_name_index_initializers, _location_name_index_extraInitializers);
193
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
194
+ }
195
+ location_name_index = __runInitializers(this, _location_name_index_initializers, 0);
196
+ constructor() {
197
+ __runInitializers(this, _location_name_index_extraInitializers);
198
+ }
199
+ };
200
+ })();
201
+ exports.s_variant_multiplayer_object_properties_definition_location_data = s_variant_multiplayer_object_properties_definition_location_data;
202
+ let s_variant_multiplayer_object_properties_definition_teleporter_data = (() => {
203
+ let _channel_decorators;
204
+ let _channel_initializers = [];
205
+ let _channel_extraInitializers = [];
206
+ let _passability_decorators;
207
+ let _passability_initializers = [];
208
+ let _passability_extraInitializers = [];
209
+ return class s_variant_multiplayer_object_properties_definition_teleporter_data {
210
+ static {
211
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
212
+ _channel_decorators = [(0, automap_1.AutoMap)(() => Number)];
213
+ _passability_decorators = [(0, automap_1.AutoMap)(() => Number)];
214
+ __esDecorate(null, null, _channel_decorators, { kind: "field", name: "channel", static: false, private: false, access: { has: obj => "channel" in obj, get: obj => obj.channel, set: (obj, value) => { obj.channel = value; } }, metadata: _metadata }, _channel_initializers, _channel_extraInitializers);
215
+ __esDecorate(null, null, _passability_decorators, { kind: "field", name: "passability", static: false, private: false, access: { has: obj => "passability" in obj, get: obj => obj.passability, set: (obj, value) => { obj.passability = value; } }, metadata: _metadata }, _passability_initializers, _passability_extraInitializers);
216
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
217
+ }
218
+ channel = __runInitializers(this, _channel_initializers, 0);
219
+ passability = (__runInitializers(this, _channel_extraInitializers), __runInitializers(this, _passability_initializers, 0));
220
+ constructor() {
221
+ __runInitializers(this, _passability_extraInitializers);
222
+ }
223
+ };
224
+ })();
225
+ exports.s_variant_multiplayer_object_properties_definition_teleporter_data = s_variant_multiplayer_object_properties_definition_teleporter_data;
226
+ let s_variant_multiplayer_object_properties_definition_weapon_data = (() => {
227
+ let _spare_clips_decorators;
228
+ let _spare_clips_initializers = [];
229
+ let _spare_clips_extraInitializers = [];
230
+ return class s_variant_multiplayer_object_properties_definition_weapon_data {
231
+ static {
232
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
233
+ _spare_clips_decorators = [(0, automap_1.AutoMap)(() => Number)];
234
+ __esDecorate(null, null, _spare_clips_decorators, { kind: "field", name: "spare_clips", static: false, private: false, access: { has: obj => "spare_clips" in obj, get: obj => obj.spare_clips, set: (obj, value) => { obj.spare_clips = value; } }, metadata: _metadata }, _spare_clips_initializers, _spare_clips_extraInitializers);
235
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
236
+ }
237
+ spare_clips = __runInitializers(this, _spare_clips_initializers, 0);
238
+ constructor() {
239
+ __runInitializers(this, _spare_clips_extraInitializers);
240
+ }
241
+ };
242
+ })();
243
+ exports.s_variant_multiplayer_object_properties_definition_weapon_data = s_variant_multiplayer_object_properties_definition_weapon_data;
244
+ let s_variant_multiplayer_object_properties_definition = (() => {
245
+ let _boundary_decorators;
246
+ let _boundary_initializers = [];
247
+ let _boundary_extraInitializers = [];
248
+ let _game_engine_flags_decorators;
249
+ let _game_engine_flags_initializers = [];
250
+ let _game_engine_flags_extraInitializers = [];
251
+ let _user_data_decorators;
252
+ let _user_data_initializers = [];
253
+ let _user_data_extraInitializers = [];
254
+ let _spawn_time_decorators;
255
+ let _spawn_time_initializers = [];
256
+ let _spawn_time_extraInitializers = [];
257
+ let _cached_type_decorators;
258
+ let _cached_type_initializers = [];
259
+ let _cached_type_extraInitializers = [];
260
+ let _label_index_decorators;
261
+ let _label_index_initializers = [];
262
+ let _label_index_extraInitializers = [];
263
+ let _placement_flags_decorators;
264
+ let _placement_flags_initializers = [];
265
+ let _placement_flags_extraInitializers = [];
266
+ let _team_decorators;
267
+ let _team_initializers = [];
268
+ let _team_extraInitializers = [];
269
+ let _primary_change_color_index_decorators;
270
+ let _primary_change_color_index_initializers = [];
271
+ let _primary_change_color_index_extraInitializers = [];
272
+ let _location_data_decorators;
273
+ let _location_data_initializers = [];
274
+ let _location_data_extraInitializers = [];
275
+ let _teleporter_data_decorators;
276
+ let _teleporter_data_initializers = [];
277
+ let _teleporter_data_extraInitializers = [];
278
+ let _weapon_data_decorators;
279
+ let _weapon_data_initializers = [];
280
+ let _weapon_data_extraInitializers = [];
281
+ return class s_variant_multiplayer_object_properties_definition {
282
+ static {
283
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
284
+ _boundary_decorators = [(0, automap_1.AutoMap)(() => s_multiplayer_object_boundary)];
285
+ _game_engine_flags_decorators = [(0, automap_1.AutoMap)(() => Number)];
286
+ _user_data_decorators = [(0, automap_1.AutoMap)(() => Number)];
287
+ _spawn_time_decorators = [(0, automap_1.AutoMap)(() => Number)];
288
+ _cached_type_decorators = [(0, automap_1.AutoMap)(() => Number)];
289
+ _label_index_decorators = [(0, automap_1.AutoMap)(() => Number)];
290
+ _placement_flags_decorators = [(0, automap_1.AutoMap)(() => Number)];
291
+ _team_decorators = [(0, automap_1.AutoMap)(() => Number)];
292
+ _primary_change_color_index_decorators = [(0, automap_1.AutoMap)(() => Number)];
293
+ _location_data_decorators = [(0, automap_1.AutoMap)(() => s_variant_multiplayer_object_properties_definition_location_data)];
294
+ _teleporter_data_decorators = [(0, automap_1.AutoMap)(() => s_variant_multiplayer_object_properties_definition_teleporter_data)];
295
+ _weapon_data_decorators = [(0, automap_1.AutoMap)(() => s_variant_multiplayer_object_properties_definition_weapon_data)];
296
+ __esDecorate(null, null, _boundary_decorators, { kind: "field", name: "boundary", static: false, private: false, access: { has: obj => "boundary" in obj, get: obj => obj.boundary, set: (obj, value) => { obj.boundary = value; } }, metadata: _metadata }, _boundary_initializers, _boundary_extraInitializers);
297
+ __esDecorate(null, null, _game_engine_flags_decorators, { kind: "field", name: "game_engine_flags", static: false, private: false, access: { has: obj => "game_engine_flags" in obj, get: obj => obj.game_engine_flags, set: (obj, value) => { obj.game_engine_flags = value; } }, metadata: _metadata }, _game_engine_flags_initializers, _game_engine_flags_extraInitializers);
298
+ __esDecorate(null, null, _user_data_decorators, { kind: "field", name: "user_data", static: false, private: false, access: { has: obj => "user_data" in obj, get: obj => obj.user_data, set: (obj, value) => { obj.user_data = value; } }, metadata: _metadata }, _user_data_initializers, _user_data_extraInitializers);
299
+ __esDecorate(null, null, _spawn_time_decorators, { kind: "field", name: "spawn_time", static: false, private: false, access: { has: obj => "spawn_time" in obj, get: obj => obj.spawn_time, set: (obj, value) => { obj.spawn_time = value; } }, metadata: _metadata }, _spawn_time_initializers, _spawn_time_extraInitializers);
300
+ __esDecorate(null, null, _cached_type_decorators, { kind: "field", name: "cached_type", static: false, private: false, access: { has: obj => "cached_type" in obj, get: obj => obj.cached_type, set: (obj, value) => { obj.cached_type = value; } }, metadata: _metadata }, _cached_type_initializers, _cached_type_extraInitializers);
301
+ __esDecorate(null, null, _label_index_decorators, { kind: "field", name: "label_index", static: false, private: false, access: { has: obj => "label_index" in obj, get: obj => obj.label_index, set: (obj, value) => { obj.label_index = value; } }, metadata: _metadata }, _label_index_initializers, _label_index_extraInitializers);
302
+ __esDecorate(null, null, _placement_flags_decorators, { kind: "field", name: "placement_flags", static: false, private: false, access: { has: obj => "placement_flags" in obj, get: obj => obj.placement_flags, set: (obj, value) => { obj.placement_flags = value; } }, metadata: _metadata }, _placement_flags_initializers, _placement_flags_extraInitializers);
303
+ __esDecorate(null, null, _team_decorators, { kind: "field", name: "team", static: false, private: false, access: { has: obj => "team" in obj, get: obj => obj.team, set: (obj, value) => { obj.team = value; } }, metadata: _metadata }, _team_initializers, _team_extraInitializers);
304
+ __esDecorate(null, null, _primary_change_color_index_decorators, { kind: "field", name: "primary_change_color_index", static: false, private: false, access: { has: obj => "primary_change_color_index" in obj, get: obj => obj.primary_change_color_index, set: (obj, value) => { obj.primary_change_color_index = value; } }, metadata: _metadata }, _primary_change_color_index_initializers, _primary_change_color_index_extraInitializers);
305
+ __esDecorate(null, null, _location_data_decorators, { kind: "field", name: "location_data", static: false, private: false, access: { has: obj => "location_data" in obj, get: obj => obj.location_data, set: (obj, value) => { obj.location_data = value; } }, metadata: _metadata }, _location_data_initializers, _location_data_extraInitializers);
306
+ __esDecorate(null, null, _teleporter_data_decorators, { kind: "field", name: "teleporter_data", static: false, private: false, access: { has: obj => "teleporter_data" in obj, get: obj => obj.teleporter_data, set: (obj, value) => { obj.teleporter_data = value; } }, metadata: _metadata }, _teleporter_data_initializers, _teleporter_data_extraInitializers);
307
+ __esDecorate(null, null, _weapon_data_decorators, { kind: "field", name: "weapon_data", static: false, private: false, access: { has: obj => "weapon_data" in obj, get: obj => obj.weapon_data, set: (obj, value) => { obj.weapon_data = value; } }, metadata: _metadata }, _weapon_data_initializers, _weapon_data_extraInitializers);
308
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
309
+ }
310
+ boundary = __runInitializers(this, _boundary_initializers, void 0);
311
+ game_engine_flags = (__runInitializers(this, _boundary_extraInitializers), __runInitializers(this, _game_engine_flags_initializers, 0));
312
+ user_data = (__runInitializers(this, _game_engine_flags_extraInitializers), __runInitializers(this, _user_data_initializers, 0));
313
+ spawn_time = (__runInitializers(this, _user_data_extraInitializers), __runInitializers(this, _spawn_time_initializers, 0));
314
+ cached_type = (__runInitializers(this, _spawn_time_extraInitializers), __runInitializers(this, _cached_type_initializers, 0));
315
+ label_index = (__runInitializers(this, _cached_type_extraInitializers), __runInitializers(this, _label_index_initializers, 0));
316
+ placement_flags = (__runInitializers(this, _label_index_extraInitializers), __runInitializers(this, _placement_flags_initializers, 0));
317
+ team = (__runInitializers(this, _placement_flags_extraInitializers), __runInitializers(this, _team_initializers, 0));
318
+ primary_change_color_index = (__runInitializers(this, _team_extraInitializers), __runInitializers(this, _primary_change_color_index_initializers, 0));
319
+ location_data = (__runInitializers(this, _primary_change_color_index_extraInitializers), __runInitializers(this, _location_data_initializers, void 0));
320
+ teleporter_data = (__runInitializers(this, _location_data_extraInitializers), __runInitializers(this, _teleporter_data_initializers, void 0));
321
+ weapon_data = (__runInitializers(this, _teleporter_data_extraInitializers), __runInitializers(this, _weapon_data_initializers, void 0));
322
+ decode(bitstream) {
323
+ this.boundary =
324
+ s_multiplayer_object_boundary.decode(bitstream) ?? undefined;
325
+ this.user_data = bitstream.read_integer("user-data", 8);
326
+ this.spawn_time = bitstream.read_integer("spawn-time", 8);
327
+ this.cached_type = bitstream.read_integer("cached-type", 5);
328
+ this.label_index = bitstream.read_index("label-index", 256, 8);
329
+ this.placement_flags = bitstream.read_integer("placement-flags", 8);
330
+ this.team = bitstream.read_integer("team", 4) - 1;
331
+ this.primary_change_color_index = bitstream.read_index("primary-change-color-index", 8, 3);
332
+ this.location_data = undefined;
333
+ this.teleporter_data = undefined;
334
+ this.weapon_data = undefined;
335
+ switch (this.cached_type) {
336
+ case 1:
337
+ this.weapon_data =
338
+ new s_variant_multiplayer_object_properties_definition_weapon_data();
339
+ this.weapon_data.spare_clips = bitstream.read_integer("spare-clips", 8);
340
+ break;
341
+ case 12:
342
+ case 13:
343
+ case 14:
344
+ this.teleporter_data =
345
+ new s_variant_multiplayer_object_properties_definition_teleporter_data();
346
+ this.teleporter_data.channel = bitstream.read_integer("channel", 5);
347
+ this.teleporter_data.passability = bitstream.read_integer("passability", 5);
348
+ break;
349
+ case 19:
350
+ this.location_data =
351
+ new s_variant_multiplayer_object_properties_definition_location_data();
352
+ this.location_data.location_name_index = bitstream.read_index("location-name-index", 255, 8);
353
+ break;
354
+ }
355
+ }
356
+ encode(bitstream) {
357
+ (this.boundary ?? new s_multiplayer_object_boundary()).encode(bitstream);
358
+ bitstream.write_integer(this.user_data, 8);
359
+ bitstream.write_integer(this.spawn_time, 8);
360
+ bitstream.write_integer(this.cached_type, 5);
361
+ bitstream.write_index(this.label_index, 256, 8);
362
+ bitstream.write_integer(this.placement_flags, 8);
363
+ bitstream.write_integer(this.team + 1, 4);
364
+ bitstream.write_index(this.primary_change_color_index, 8, 3);
365
+ switch (this.cached_type) {
366
+ case 1:
367
+ if (!this.weapon_data) {
368
+ throw new error_1.BlfError("Tried to encode a weapon with no weapon data provided.");
369
+ }
370
+ bitstream.write_integer(this.weapon_data.spare_clips, 8);
371
+ break;
372
+ case 12:
373
+ case 13:
374
+ case 14:
375
+ if (!this.teleporter_data) {
376
+ throw new error_1.BlfError("Tried to encode a teleporter with no teleporter data provided.");
377
+ }
378
+ bitstream.write_integer(this.teleporter_data.channel, 5);
379
+ bitstream.write_integer(this.teleporter_data.passability, 5);
380
+ break;
381
+ case 19:
382
+ if (!this.location_data) {
383
+ throw new error_1.BlfError("Tried to encode a location name with no name provided.");
384
+ }
385
+ bitstream.write_index(this.location_data.location_name_index, 255, 8);
386
+ break;
387
+ }
388
+ }
389
+ constructor() {
390
+ __runInitializers(this, _weapon_data_extraInitializers);
391
+ }
392
+ };
393
+ })();
394
+ exports.s_variant_multiplayer_object_properties_definition = s_variant_multiplayer_object_properties_definition;
395
+ let s_variant_object_datum = (() => {
396
+ let _flags_decorators;
397
+ let _flags_initializers = [];
398
+ let _flags_extraInitializers = [];
399
+ let _reuse_timeout_decorators;
400
+ let _reuse_timeout_initializers = [];
401
+ let _reuse_timeout_extraInitializers = [];
402
+ let _object_datum_index_decorators;
403
+ let _object_datum_index_initializers = [];
404
+ let _object_datum_index_extraInitializers = [];
405
+ let _editor_object_index_decorators;
406
+ let _editor_object_index_initializers = [];
407
+ let _editor_object_index_extraInitializers = [];
408
+ let _variant_quota_index_decorators;
409
+ let _variant_quota_index_initializers = [];
410
+ let _variant_quota_index_extraInitializers = [];
411
+ let _variant_index_decorators;
412
+ let _variant_index_initializers = [];
413
+ let _variant_index_extraInitializers = [];
414
+ let _position_decorators;
415
+ let _position_initializers = [];
416
+ let _position_extraInitializers = [];
417
+ let _forward_decorators;
418
+ let _forward_initializers = [];
419
+ let _forward_extraInitializers = [];
420
+ let _up_decorators;
421
+ let _up_initializers = [];
422
+ let _up_extraInitializers = [];
423
+ let _spawn_relative_to_decorators;
424
+ let _spawn_relative_to_initializers = [];
425
+ let _spawn_relative_to_extraInitializers = [];
426
+ let _multiplayer_game_object_properties_decorators;
427
+ let _multiplayer_game_object_properties_initializers = [];
428
+ let _multiplayer_game_object_properties_extraInitializers = [];
429
+ return class s_variant_object_datum {
430
+ static {
431
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
432
+ _flags_decorators = [(0, automap_1.AutoMap)(() => Number)];
433
+ _reuse_timeout_decorators = [(0, automap_1.AutoMap)(() => Number)];
434
+ _object_datum_index_decorators = [(0, automap_1.AutoMap)(() => Number)];
435
+ _editor_object_index_decorators = [(0, automap_1.AutoMap)(() => Number)];
436
+ _variant_quota_index_decorators = [(0, automap_1.AutoMap)(() => Number)];
437
+ _variant_index_decorators = [(0, automap_1.AutoMap)(() => Number)];
438
+ _position_decorators = [(0, automap_1.AutoMap)(() => Object)];
439
+ _forward_decorators = [(0, automap_1.AutoMap)(() => Object)];
440
+ _up_decorators = [(0, automap_1.AutoMap)(() => Object)];
441
+ _spawn_relative_to_decorators = [(0, automap_1.AutoMap)(() => Number)];
442
+ _multiplayer_game_object_properties_decorators = [(0, automap_1.AutoMap)(() => s_variant_multiplayer_object_properties_definition)];
443
+ __esDecorate(null, null, _flags_decorators, { kind: "field", name: "flags", static: false, private: false, access: { has: obj => "flags" in obj, get: obj => obj.flags, set: (obj, value) => { obj.flags = value; } }, metadata: _metadata }, _flags_initializers, _flags_extraInitializers);
444
+ __esDecorate(null, null, _reuse_timeout_decorators, { kind: "field", name: "reuse_timeout", static: false, private: false, access: { has: obj => "reuse_timeout" in obj, get: obj => obj.reuse_timeout, set: (obj, value) => { obj.reuse_timeout = value; } }, metadata: _metadata }, _reuse_timeout_initializers, _reuse_timeout_extraInitializers);
445
+ __esDecorate(null, null, _object_datum_index_decorators, { kind: "field", name: "object_datum_index", static: false, private: false, access: { has: obj => "object_datum_index" in obj, get: obj => obj.object_datum_index, set: (obj, value) => { obj.object_datum_index = value; } }, metadata: _metadata }, _object_datum_index_initializers, _object_datum_index_extraInitializers);
446
+ __esDecorate(null, null, _editor_object_index_decorators, { kind: "field", name: "editor_object_index", static: false, private: false, access: { has: obj => "editor_object_index" in obj, get: obj => obj.editor_object_index, set: (obj, value) => { obj.editor_object_index = value; } }, metadata: _metadata }, _editor_object_index_initializers, _editor_object_index_extraInitializers);
447
+ __esDecorate(null, null, _variant_quota_index_decorators, { kind: "field", name: "variant_quota_index", static: false, private: false, access: { has: obj => "variant_quota_index" in obj, get: obj => obj.variant_quota_index, set: (obj, value) => { obj.variant_quota_index = value; } }, metadata: _metadata }, _variant_quota_index_initializers, _variant_quota_index_extraInitializers);
448
+ __esDecorate(null, null, _variant_index_decorators, { kind: "field", name: "variant_index", static: false, private: false, access: { has: obj => "variant_index" in obj, get: obj => obj.variant_index, set: (obj, value) => { obj.variant_index = value; } }, metadata: _metadata }, _variant_index_initializers, _variant_index_extraInitializers);
449
+ __esDecorate(null, null, _position_decorators, { kind: "field", name: "position", static: false, private: false, access: { has: obj => "position" in obj, get: obj => obj.position, set: (obj, value) => { obj.position = value; } }, metadata: _metadata }, _position_initializers, _position_extraInitializers);
450
+ __esDecorate(null, null, _forward_decorators, { kind: "field", name: "forward", static: false, private: false, access: { has: obj => "forward" in obj, get: obj => obj.forward, set: (obj, value) => { obj.forward = value; } }, metadata: _metadata }, _forward_initializers, _forward_extraInitializers);
451
+ __esDecorate(null, null, _up_decorators, { kind: "field", name: "up", static: false, private: false, access: { has: obj => "up" in obj, get: obj => obj.up, set: (obj, value) => { obj.up = value; } }, metadata: _metadata }, _up_initializers, _up_extraInitializers);
452
+ __esDecorate(null, null, _spawn_relative_to_decorators, { kind: "field", name: "spawn_relative_to", static: false, private: false, access: { has: obj => "spawn_relative_to" in obj, get: obj => obj.spawn_relative_to, set: (obj, value) => { obj.spawn_relative_to = value; } }, metadata: _metadata }, _spawn_relative_to_initializers, _spawn_relative_to_extraInitializers);
453
+ __esDecorate(null, null, _multiplayer_game_object_properties_decorators, { kind: "field", name: "multiplayer_game_object_properties", static: false, private: false, access: { has: obj => "multiplayer_game_object_properties" in obj, get: obj => obj.multiplayer_game_object_properties, set: (obj, value) => { obj.multiplayer_game_object_properties = value; } }, metadata: _metadata }, _multiplayer_game_object_properties_initializers, _multiplayer_game_object_properties_extraInitializers);
454
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
455
+ }
456
+ flags = __runInitializers(this, _flags_initializers, 0);
457
+ reuse_timeout = (__runInitializers(this, _flags_extraInitializers), __runInitializers(this, _reuse_timeout_initializers, 0));
458
+ object_datum_index = (__runInitializers(this, _reuse_timeout_extraInitializers), __runInitializers(this, _object_datum_index_initializers, 0));
459
+ editor_object_index = (__runInitializers(this, _object_datum_index_extraInitializers), __runInitializers(this, _editor_object_index_initializers, 0));
460
+ variant_quota_index = (__runInitializers(this, _editor_object_index_extraInitializers), __runInitializers(this, _variant_quota_index_initializers, 0));
461
+ variant_index = (__runInitializers(this, _variant_quota_index_extraInitializers), __runInitializers(this, _variant_index_initializers, 0));
462
+ position = (__runInitializers(this, _variant_index_extraInitializers), __runInitializers(this, _position_initializers, (0, real_types_1.real_point3d_default)()));
463
+ forward = (__runInitializers(this, _position_extraInitializers), __runInitializers(this, _forward_initializers, (0, math_1.real_vector3d_default)()));
464
+ up = (__runInitializers(this, _forward_extraInitializers), __runInitializers(this, _up_initializers, (0, math_1.real_vector3d_default)()));
465
+ spawn_relative_to = (__runInitializers(this, _up_extraInitializers), __runInitializers(this, _spawn_relative_to_initializers, 0));
466
+ multiplayer_game_object_properties = (__runInitializers(this, _spawn_relative_to_extraInitializers), __runInitializers(this, _multiplayer_game_object_properties_initializers, new s_variant_multiplayer_object_properties_definition()));
467
+ decode(bitstream, world_bounds) {
468
+ if (bitstream.read_bool("variant_object_exists")) {
469
+ this.flags = bitstream.read_integer("flags", 2);
470
+ this.variant_quota_index = bitstream.read_index("variant-quota-index", exports.k_maximum_variant_quotas, 8);
471
+ this.variant_index = bitstream.read_index("variant-index", 32, 5);
472
+ (0, simulation_encoding_1.simulation_read_position)(bitstream, this.position, 21, world_bounds);
473
+ (0, bitstream_extensions_1.read_axes)(bitstream, this.forward, this.up, 14, 20);
474
+ this.spawn_relative_to =
475
+ bitstream.read_integer("spawn-relative-to", 10) - 1;
476
+ this.multiplayer_game_object_properties.decode(bitstream);
477
+ }
478
+ }
479
+ encode(bitstream, world_bounds) {
480
+ if ((this.flags & 0x3ff) === 0) {
481
+ bitstream.write_bool(false);
482
+ return;
483
+ }
484
+ bitstream.write_bool(true);
485
+ bitstream.write_integer(this.flags, 2);
486
+ bitstream.write_index(this.variant_quota_index, exports.k_maximum_variant_quotas, 8);
487
+ bitstream.write_index(this.variant_index, 32, 5);
488
+ (0, simulation_encoding_1.simulation_write_position)(bitstream, this.position, 21, world_bounds);
489
+ (0, bitstream_extensions_1.write_axes)(bitstream, this.forward, this.up, 14, 20);
490
+ bitstream.write_integer(this.spawn_relative_to + 1, 10);
491
+ this.multiplayer_game_object_properties.encode(bitstream);
492
+ }
493
+ constructor() {
494
+ __runInitializers(this, _multiplayer_game_object_properties_extraInitializers);
495
+ }
496
+ };
497
+ })();
498
+ exports.s_variant_object_datum = s_variant_object_datum;
499
+ class c_object_identifier {
500
+ m_unique_id = 0;
501
+ m_origin_bsp_index = 0;
502
+ m_type = 0;
503
+ m_source = 0;
504
+ }
505
+ exports.c_object_identifier = c_object_identifier;
506
+ function read_real_rectangle3d(bitstream) {
507
+ const raw = bitstream.read_raw_data(0xc0);
508
+ const view = new DataView(raw.buffer, raw.byteOffset, raw.byteLength);
509
+ return {
510
+ x: { lower: view.getFloat32(0, false), upper: view.getFloat32(4, false) },
511
+ y: { lower: view.getFloat32(8, false), upper: view.getFloat32(12, false) },
512
+ z: { lower: view.getFloat32(16, false), upper: view.getFloat32(20, false) },
513
+ };
514
+ }
515
+ function write_real_rectangle3d(bitstream, bounds) {
516
+ const raw = new Uint8Array(24);
517
+ const view = new DataView(raw.buffer);
518
+ view.setFloat32(0, bounds.x.lower, false);
519
+ view.setFloat32(4, bounds.x.upper, false);
520
+ view.setFloat32(8, bounds.y.lower, false);
521
+ view.setFloat32(12, bounds.y.upper, false);
522
+ view.setFloat32(16, bounds.z.lower, false);
523
+ view.setFloat32(20, bounds.z.upper, false);
524
+ bitstream.write_raw_data(raw, 0xc0);
525
+ }
526
+ /**
527
+ * Reach map variant packed body.
528
+ * Mirrors `c_map_variant` in blf_lib — not a direct memory layout.
529
+ */
530
+ let c_map_variant = (() => {
531
+ let _m_metadata_decorators;
532
+ let _m_metadata_initializers = [];
533
+ let _m_metadata_extraInitializers = [];
534
+ let _m_map_variant_version_decorators;
535
+ let _m_map_variant_version_initializers = [];
536
+ let _m_map_variant_version_extraInitializers = [];
537
+ let _m_number_of_placeable_object_quotas_decorators;
538
+ let _m_number_of_placeable_object_quotas_initializers = [];
539
+ let _m_number_of_placeable_object_quotas_extraInitializers = [];
540
+ let _m_map_id_decorators;
541
+ let _m_map_id_initializers = [];
542
+ let _m_map_id_extraInitializers = [];
543
+ let _m_world_bounds_decorators;
544
+ let _m_world_bounds_initializers = [];
545
+ let _m_world_bounds_extraInitializers = [];
546
+ let _m_maximum_budget_decorators;
547
+ let _m_maximum_budget_initializers = [];
548
+ let _m_maximum_budget_extraInitializers = [];
549
+ let _m_spent_budget_decorators;
550
+ let _m_spent_budget_initializers = [];
551
+ let _m_spent_budget_extraInitializers = [];
552
+ let _m_helpers_enabled_decorators;
553
+ let _m_helpers_enabled_initializers = [];
554
+ let _m_helpers_enabled_extraInitializers = [];
555
+ let _m_built_in_decorators;
556
+ let _m_built_in_initializers = [];
557
+ let _m_built_in_extraInitializers = [];
558
+ let _m_built_from_xml_decorators;
559
+ let _m_built_from_xml_initializers = [];
560
+ let _m_built_from_xml_extraInitializers = [];
561
+ let _m_original_map_rsa_signature_hash_decorators;
562
+ let _m_original_map_rsa_signature_hash_initializers = [];
563
+ let _m_original_map_rsa_signature_hash_extraInitializers = [];
564
+ let _m_scenario_palette_crc_decorators;
565
+ let _m_scenario_palette_crc_initializers = [];
566
+ let _m_scenario_palette_crc_extraInitializers = [];
567
+ let _m_string_table_decorators;
568
+ let _m_string_table_initializers = [];
569
+ let _m_string_table_extraInitializers = [];
570
+ let _m_variant_objects_decorators;
571
+ let _m_variant_objects_initializers = [];
572
+ let _m_variant_objects_extraInitializers = [];
573
+ let _m_quotas_decorators;
574
+ let _m_quotas_initializers = [];
575
+ let _m_quotas_extraInitializers = [];
576
+ return class c_map_variant {
577
+ static {
578
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
579
+ _m_metadata_decorators = [(0, automap_1.AutoMap)(() => saved_game_files_1.s_content_item_metadata)];
580
+ _m_map_variant_version_decorators = [(0, automap_1.AutoMap)(() => Number)];
581
+ _m_number_of_placeable_object_quotas_decorators = [(0, automap_1.AutoMap)(() => Number)];
582
+ _m_map_id_decorators = [(0, automap_1.AutoMap)(() => Number)];
583
+ _m_world_bounds_decorators = [(0, automap_1.AutoMap)(() => Object)];
584
+ _m_maximum_budget_decorators = [(0, automap_1.AutoMap)(() => Number)];
585
+ _m_spent_budget_decorators = [(0, automap_1.AutoMap)(() => Number)];
586
+ _m_helpers_enabled_decorators = [(0, automap_1.AutoMap)(() => Boolean)];
587
+ _m_built_in_decorators = [(0, automap_1.AutoMap)(() => Boolean)];
588
+ _m_built_from_xml_decorators = [(0, automap_1.AutoMap)(() => Boolean)];
589
+ _m_original_map_rsa_signature_hash_decorators = [(0, automap_1.AutoMap)(() => Number)];
590
+ _m_scenario_palette_crc_decorators = [(0, automap_1.AutoMap)(() => Number)];
591
+ _m_string_table_decorators = [(0, automap_1.AutoMap)(() => c_string_table_1.c_single_language_string_table)];
592
+ _m_variant_objects_decorators = [(0, automap_1.AutoMap)(() => [s_variant_object_datum])];
593
+ _m_quotas_decorators = [(0, automap_1.AutoMap)(() => [s_variant_quota])];
594
+ __esDecorate(null, null, _m_metadata_decorators, { kind: "field", name: "m_metadata", static: false, private: false, access: { has: obj => "m_metadata" in obj, get: obj => obj.m_metadata, set: (obj, value) => { obj.m_metadata = value; } }, metadata: _metadata }, _m_metadata_initializers, _m_metadata_extraInitializers);
595
+ __esDecorate(null, null, _m_map_variant_version_decorators, { kind: "field", name: "m_map_variant_version", static: false, private: false, access: { has: obj => "m_map_variant_version" in obj, get: obj => obj.m_map_variant_version, set: (obj, value) => { obj.m_map_variant_version = value; } }, metadata: _metadata }, _m_map_variant_version_initializers, _m_map_variant_version_extraInitializers);
596
+ __esDecorate(null, null, _m_number_of_placeable_object_quotas_decorators, { kind: "field", name: "m_number_of_placeable_object_quotas", static: false, private: false, access: { has: obj => "m_number_of_placeable_object_quotas" in obj, get: obj => obj.m_number_of_placeable_object_quotas, set: (obj, value) => { obj.m_number_of_placeable_object_quotas = value; } }, metadata: _metadata }, _m_number_of_placeable_object_quotas_initializers, _m_number_of_placeable_object_quotas_extraInitializers);
597
+ __esDecorate(null, null, _m_map_id_decorators, { kind: "field", name: "m_map_id", static: false, private: false, access: { has: obj => "m_map_id" in obj, get: obj => obj.m_map_id, set: (obj, value) => { obj.m_map_id = value; } }, metadata: _metadata }, _m_map_id_initializers, _m_map_id_extraInitializers);
598
+ __esDecorate(null, null, _m_world_bounds_decorators, { kind: "field", name: "m_world_bounds", static: false, private: false, access: { has: obj => "m_world_bounds" in obj, get: obj => obj.m_world_bounds, set: (obj, value) => { obj.m_world_bounds = value; } }, metadata: _metadata }, _m_world_bounds_initializers, _m_world_bounds_extraInitializers);
599
+ __esDecorate(null, null, _m_maximum_budget_decorators, { kind: "field", name: "m_maximum_budget", static: false, private: false, access: { has: obj => "m_maximum_budget" in obj, get: obj => obj.m_maximum_budget, set: (obj, value) => { obj.m_maximum_budget = value; } }, metadata: _metadata }, _m_maximum_budget_initializers, _m_maximum_budget_extraInitializers);
600
+ __esDecorate(null, null, _m_spent_budget_decorators, { kind: "field", name: "m_spent_budget", static: false, private: false, access: { has: obj => "m_spent_budget" in obj, get: obj => obj.m_spent_budget, set: (obj, value) => { obj.m_spent_budget = value; } }, metadata: _metadata }, _m_spent_budget_initializers, _m_spent_budget_extraInitializers);
601
+ __esDecorate(null, null, _m_helpers_enabled_decorators, { kind: "field", name: "m_helpers_enabled", static: false, private: false, access: { has: obj => "m_helpers_enabled" in obj, get: obj => obj.m_helpers_enabled, set: (obj, value) => { obj.m_helpers_enabled = value; } }, metadata: _metadata }, _m_helpers_enabled_initializers, _m_helpers_enabled_extraInitializers);
602
+ __esDecorate(null, null, _m_built_in_decorators, { kind: "field", name: "m_built_in", static: false, private: false, access: { has: obj => "m_built_in" in obj, get: obj => obj.m_built_in, set: (obj, value) => { obj.m_built_in = value; } }, metadata: _metadata }, _m_built_in_initializers, _m_built_in_extraInitializers);
603
+ __esDecorate(null, null, _m_built_from_xml_decorators, { kind: "field", name: "m_built_from_xml", static: false, private: false, access: { has: obj => "m_built_from_xml" in obj, get: obj => obj.m_built_from_xml, set: (obj, value) => { obj.m_built_from_xml = value; } }, metadata: _metadata }, _m_built_from_xml_initializers, _m_built_from_xml_extraInitializers);
604
+ __esDecorate(null, null, _m_original_map_rsa_signature_hash_decorators, { kind: "field", name: "m_original_map_rsa_signature_hash", static: false, private: false, access: { has: obj => "m_original_map_rsa_signature_hash" in obj, get: obj => obj.m_original_map_rsa_signature_hash, set: (obj, value) => { obj.m_original_map_rsa_signature_hash = value; } }, metadata: _metadata }, _m_original_map_rsa_signature_hash_initializers, _m_original_map_rsa_signature_hash_extraInitializers);
605
+ __esDecorate(null, null, _m_scenario_palette_crc_decorators, { kind: "field", name: "m_scenario_palette_crc", static: false, private: false, access: { has: obj => "m_scenario_palette_crc" in obj, get: obj => obj.m_scenario_palette_crc, set: (obj, value) => { obj.m_scenario_palette_crc = value; } }, metadata: _metadata }, _m_scenario_palette_crc_initializers, _m_scenario_palette_crc_extraInitializers);
606
+ __esDecorate(null, null, _m_string_table_decorators, { kind: "field", name: "m_string_table", static: false, private: false, access: { has: obj => "m_string_table" in obj, get: obj => obj.m_string_table, set: (obj, value) => { obj.m_string_table = value; } }, metadata: _metadata }, _m_string_table_initializers, _m_string_table_extraInitializers);
607
+ __esDecorate(null, null, _m_variant_objects_decorators, { kind: "field", name: "m_variant_objects", static: false, private: false, access: { has: obj => "m_variant_objects" in obj, get: obj => obj.m_variant_objects, set: (obj, value) => { obj.m_variant_objects = value; } }, metadata: _metadata }, _m_variant_objects_initializers, _m_variant_objects_extraInitializers);
608
+ __esDecorate(null, null, _m_quotas_decorators, { kind: "field", name: "m_quotas", static: false, private: false, access: { has: obj => "m_quotas" in obj, get: obj => obj.m_quotas, set: (obj, value) => { obj.m_quotas = value; } }, metadata: _metadata }, _m_quotas_initializers, _m_quotas_extraInitializers);
609
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
610
+ }
611
+ m_metadata = __runInitializers(this, _m_metadata_initializers, (() => {
612
+ const metadata = new saved_game_files_1.s_content_item_metadata();
613
+ metadata.general = new saved_game_files_1.s_content_item_general_metadata();
614
+ metadata.display = new saved_game_files_1.s_content_item_display_metadata();
615
+ metadata.creation_history = new saved_game_files_1.s_content_item_history();
616
+ metadata.modification_history = new saved_game_files_1.s_content_item_history();
617
+ return metadata;
618
+ })());
619
+ m_map_variant_version = (__runInitializers(this, _m_metadata_extraInitializers), __runInitializers(this, _m_map_variant_version_initializers, 0));
620
+ m_number_of_placeable_object_quotas = (__runInitializers(this, _m_map_variant_version_extraInitializers), __runInitializers(this, _m_number_of_placeable_object_quotas_initializers, 0));
621
+ m_map_id = (__runInitializers(this, _m_number_of_placeable_object_quotas_extraInitializers), __runInitializers(this, _m_map_id_initializers, 0));
622
+ m_world_bounds = (__runInitializers(this, _m_map_id_extraInitializers), __runInitializers(this, _m_world_bounds_initializers, (0, real_types_1.real_rectangle3d_default)()));
623
+ m_maximum_budget = (__runInitializers(this, _m_world_bounds_extraInitializers), __runInitializers(this, _m_maximum_budget_initializers, 0));
624
+ m_spent_budget = (__runInitializers(this, _m_maximum_budget_extraInitializers), __runInitializers(this, _m_spent_budget_initializers, 0));
625
+ m_helpers_enabled = (__runInitializers(this, _m_spent_budget_extraInitializers), __runInitializers(this, _m_helpers_enabled_initializers, false));
626
+ m_built_in = (__runInitializers(this, _m_helpers_enabled_extraInitializers), __runInitializers(this, _m_built_in_initializers, false));
627
+ m_built_from_xml = (__runInitializers(this, _m_built_in_extraInitializers), __runInitializers(this, _m_built_from_xml_initializers, false));
628
+ m_original_map_rsa_signature_hash = (__runInitializers(this, _m_built_from_xml_extraInitializers), __runInitializers(this, _m_original_map_rsa_signature_hash_initializers, 0));
629
+ m_scenario_palette_crc = (__runInitializers(this, _m_original_map_rsa_signature_hash_extraInitializers), __runInitializers(this, _m_scenario_palette_crc_initializers, 0));
630
+ m_string_table = (__runInitializers(this, _m_scenario_palette_crc_extraInitializers), __runInitializers(this, _m_string_table_initializers, new c_string_table_1.c_single_language_string_table(256, 4096, 12, 13, 9)));
631
+ m_variant_objects = (__runInitializers(this, _m_string_table_extraInitializers), __runInitializers(this, _m_variant_objects_initializers, Array.from({ length: exports.k_maximum_variant_objects }, () => new s_variant_object_datum())));
632
+ m_quotas = (__runInitializers(this, _m_variant_objects_extraInitializers), __runInitializers(this, _m_quotas_initializers, Array.from({ length: exports.k_maximum_variant_quotas }, () => new s_variant_quota())));
633
+ decode(bitstream) {
634
+ (0, saved_game_files_1.content_item_metadata_decode)(bitstream, this.m_metadata);
635
+ this.m_map_variant_version = bitstream.read_integer("map-variant-version", 8);
636
+ this.m_original_map_rsa_signature_hash = bitstream.read_integer("original-map-rsa-signature-hash", 32);
637
+ this.m_scenario_palette_crc = bitstream.read_integer("scenario-palette-crc", 32);
638
+ this.m_number_of_placeable_object_quotas = bitstream.read_integer("number-of-placeable-object-quotas", 9);
639
+ this.m_map_id = bitstream.read_integer("map-id", 32);
640
+ this.m_built_in = bitstream.read_bool("built-in");
641
+ this.m_built_from_xml = bitstream.read_bool("built-from-xml");
642
+ this.m_world_bounds = read_real_rectangle3d(bitstream);
643
+ this.m_maximum_budget = bitstream.read_integer("maximum-budget", 32);
644
+ this.m_spent_budget = bitstream.read_integer("spent-budget", 32);
645
+ this.m_string_table.decode(bitstream);
646
+ for (let i = 0; i < exports.k_maximum_variant_objects; i++) {
647
+ this.m_variant_objects[i].decode(bitstream, this.m_world_bounds);
648
+ }
649
+ const quota_count = Math.min(exports.k_maximum_variant_quotas, this.m_number_of_placeable_object_quotas);
650
+ for (let i = 0; i < quota_count; i++) {
651
+ this.m_quotas[i].decode(bitstream);
652
+ }
653
+ }
654
+ encode(bitstream) {
655
+ (0, saved_game_files_1.content_item_metadata_encode)(bitstream, this.m_metadata);
656
+ bitstream.write_integer(this.m_map_variant_version, 8);
657
+ bitstream.write_integer(this.m_original_map_rsa_signature_hash, 32);
658
+ bitstream.write_integer(this.m_scenario_palette_crc, 32);
659
+ bitstream.write_integer(this.m_number_of_placeable_object_quotas, 9);
660
+ bitstream.write_integer(this.m_map_id, 32);
661
+ bitstream.write_bool(this.m_built_in);
662
+ bitstream.write_bool(this.m_built_from_xml);
663
+ write_real_rectangle3d(bitstream, this.m_world_bounds);
664
+ bitstream.write_integer(this.m_maximum_budget, 32);
665
+ bitstream.write_integer(this.m_spent_budget, 32);
666
+ this.m_string_table.encode(bitstream);
667
+ for (let i = 0; i < exports.k_maximum_variant_objects; i++) {
668
+ this.m_variant_objects[i].encode(bitstream, this.m_world_bounds);
669
+ }
670
+ const quota_count = Math.min(exports.k_maximum_variant_quotas, this.m_number_of_placeable_object_quotas);
671
+ for (let i = 0; i < quota_count; i++) {
672
+ this.m_quotas[i].encode(bitstream);
673
+ }
674
+ }
675
+ constructor() {
676
+ __runInitializers(this, _m_quotas_extraInitializers);
677
+ }
678
+ };
679
+ })();
680
+ exports.c_map_variant = c_map_variant;
681
+ function create_default_map_variant() {
682
+ return new c_map_variant();
683
+ }
684
+ /** Convenience helper used by tests and tooling. */
685
+ function map_variant_point_in_bounds(map_variant, position) {
686
+ return (0, real_types_1.point_in_rectangle3d)(position, map_variant.m_world_bounds);
687
+ }