blacktrigram 0.7.2

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 (1853) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +866 -0
  3. package/SECURITY.md +124 -0
  4. package/lib/App.d.ts +4 -0
  5. package/lib/App.d.ts.map +1 -0
  6. package/lib/App2.js +386 -0
  7. package/lib/App2.js.map +1 -0
  8. package/lib/_virtual/_rolldown/runtime.js +13 -0
  9. package/lib/assets/index.css +1146 -0
  10. package/lib/audio/AudioAssetLoader.d.ts +101 -0
  11. package/lib/audio/AudioAssetLoader.d.ts.map +1 -0
  12. package/lib/audio/AudioAssetLoader.js +245 -0
  13. package/lib/audio/AudioAssetLoader.js.map +1 -0
  14. package/lib/audio/AudioAssetRegistry.d.ts +126 -0
  15. package/lib/audio/AudioAssetRegistry.d.ts.map +1 -0
  16. package/lib/audio/AudioAssetRegistry.js +970 -0
  17. package/lib/audio/AudioAssetRegistry.js.map +1 -0
  18. package/lib/audio/AudioCache.d.ts +135 -0
  19. package/lib/audio/AudioCache.d.ts.map +1 -0
  20. package/lib/audio/AudioCache.js +211 -0
  21. package/lib/audio/AudioCache.js.map +1 -0
  22. package/lib/audio/AudioManager.d.ts +162 -0
  23. package/lib/audio/AudioManager.d.ts.map +1 -0
  24. package/lib/audio/AudioManager.js +508 -0
  25. package/lib/audio/AudioManager.js.map +1 -0
  26. package/lib/audio/AudioMonitor.d.ts +122 -0
  27. package/lib/audio/AudioMonitor.d.ts.map +1 -0
  28. package/lib/audio/AudioMonitor.js +215 -0
  29. package/lib/audio/AudioMonitor.js.map +1 -0
  30. package/lib/audio/AudioPool.d.ts +108 -0
  31. package/lib/audio/AudioPool.d.ts.map +1 -0
  32. package/lib/audio/AudioPool.js +206 -0
  33. package/lib/audio/AudioPool.js.map +1 -0
  34. package/lib/audio/AudioProvider.d.ts +28 -0
  35. package/lib/audio/AudioProvider.d.ts.map +1 -0
  36. package/lib/audio/AudioProvider.js +135 -0
  37. package/lib/audio/AudioProvider.js.map +1 -0
  38. package/lib/audio/AudioUtils.d.ts +77 -0
  39. package/lib/audio/AudioUtils.d.ts.map +1 -0
  40. package/lib/audio/AudioUtils.js +164 -0
  41. package/lib/audio/AudioUtils.js.map +1 -0
  42. package/lib/audio/BoneImpactAudioMap.d.ts +64 -0
  43. package/lib/audio/BoneImpactAudioMap.d.ts.map +1 -0
  44. package/lib/audio/BoneImpactAudioMap.js +133 -0
  45. package/lib/audio/BoneImpactAudioMap.js.map +1 -0
  46. package/lib/audio/VariantSelector.d.ts +69 -0
  47. package/lib/audio/VariantSelector.d.ts.map +1 -0
  48. package/lib/audio/VariantSelector.js +177 -0
  49. package/lib/audio/VariantSelector.js.map +1 -0
  50. package/lib/audio/index.d.ts +13 -0
  51. package/lib/audio/index.d.ts.map +1 -0
  52. package/lib/audio/index.js +41 -0
  53. package/lib/audio/index.js.map +1 -0
  54. package/lib/audio/types.d.ts +220 -0
  55. package/lib/audio/types.d.ts.map +1 -0
  56. package/lib/audio/types.js +12 -0
  57. package/lib/audio/types.js.map +1 -0
  58. package/lib/components/effects/WindParticles3D.d.ts +83 -0
  59. package/lib/components/effects/WindParticles3D.d.ts.map +1 -0
  60. package/lib/components/effects/index.d.ts +6 -0
  61. package/lib/components/effects/index.d.ts.map +1 -0
  62. package/lib/components/index.d.ts +5 -0
  63. package/lib/components/index.d.ts.map +1 -0
  64. package/lib/components/index.js +74 -0
  65. package/lib/components/index.js.map +1 -0
  66. package/lib/components/screens/combat/CombatScreen3D.d.ts +74 -0
  67. package/lib/components/screens/combat/CombatScreen3D.d.ts.map +1 -0
  68. package/lib/components/screens/combat/CombatScreen3D.js +1912 -0
  69. package/lib/components/screens/combat/CombatScreen3D.js.map +1 -0
  70. package/lib/components/screens/combat/components/controls/CombatButtons.d.ts +39 -0
  71. package/lib/components/screens/combat/components/controls/CombatButtons.d.ts.map +1 -0
  72. package/lib/components/screens/combat/components/controls/CombatButtons.js +52 -0
  73. package/lib/components/screens/combat/components/controls/CombatButtons.js.map +1 -0
  74. package/lib/components/screens/combat/components/controls/CombatControlsPanel.d.ts +35 -0
  75. package/lib/components/screens/combat/components/controls/CombatControlsPanel.d.ts.map +1 -0
  76. package/lib/components/screens/combat/components/controls/CombatControlsPanel.js +78 -0
  77. package/lib/components/screens/combat/components/controls/CombatControlsPanel.js.map +1 -0
  78. package/lib/components/screens/combat/components/controls/ControlsGuide.d.ts +23 -0
  79. package/lib/components/screens/combat/components/controls/ControlsGuide.d.ts.map +1 -0
  80. package/lib/components/screens/combat/components/controls/ControlsGuide.js +214 -0
  81. package/lib/components/screens/combat/components/controls/ControlsGuide.js.map +1 -0
  82. package/lib/components/screens/combat/components/controls/KeyboardHints.d.ts +54 -0
  83. package/lib/components/screens/combat/components/controls/KeyboardHints.d.ts.map +1 -0
  84. package/lib/components/screens/combat/components/controls/KeyboardHints.js +357 -0
  85. package/lib/components/screens/combat/components/controls/KeyboardHints.js.map +1 -0
  86. package/lib/components/screens/combat/components/controls/PauseMenu.d.ts +32 -0
  87. package/lib/components/screens/combat/components/controls/PauseMenu.d.ts.map +1 -0
  88. package/lib/components/screens/combat/components/controls/PauseMenu.js +254 -0
  89. package/lib/components/screens/combat/components/controls/PauseMenu.js.map +1 -0
  90. package/lib/components/screens/combat/components/controls/PauseMenuButton.d.ts +63 -0
  91. package/lib/components/screens/combat/components/controls/PauseMenuButton.d.ts.map +1 -0
  92. package/lib/components/screens/combat/components/controls/PauseMenuButton.js +108 -0
  93. package/lib/components/screens/combat/components/controls/PauseMenuButton.js.map +1 -0
  94. package/lib/components/screens/combat/components/controls/QuickSettings.d.ts +42 -0
  95. package/lib/components/screens/combat/components/controls/QuickSettings.d.ts.map +1 -0
  96. package/lib/components/screens/combat/components/controls/QuickSettings.js +259 -0
  97. package/lib/components/screens/combat/components/controls/QuickSettings.js.map +1 -0
  98. package/lib/components/screens/combat/components/effects/ArterialSpray3D.d.ts +73 -0
  99. package/lib/components/screens/combat/components/effects/ArterialSpray3D.d.ts.map +1 -0
  100. package/lib/components/screens/combat/components/effects/BloodDecals3D.d.ts +108 -0
  101. package/lib/components/screens/combat/components/effects/BloodDecals3D.d.ts.map +1 -0
  102. package/lib/components/screens/combat/components/effects/BloodDecals3D.js +232 -0
  103. package/lib/components/screens/combat/components/effects/BloodDecals3D.js.map +1 -0
  104. package/lib/components/screens/combat/components/effects/BloodLossOverlayHtml.d.ts +53 -0
  105. package/lib/components/screens/combat/components/effects/BloodLossOverlayHtml.d.ts.map +1 -0
  106. package/lib/components/screens/combat/components/effects/BloodLossOverlayHtml.js +87 -0
  107. package/lib/components/screens/combat/components/effects/BloodLossOverlayHtml.js.map +1 -0
  108. package/lib/components/screens/combat/components/effects/BloodParticles3D.d.ts +80 -0
  109. package/lib/components/screens/combat/components/effects/BloodParticles3D.d.ts.map +1 -0
  110. package/lib/components/screens/combat/components/effects/BloodParticles3D.js +278 -0
  111. package/lib/components/screens/combat/components/effects/BloodParticles3D.js.map +1 -0
  112. package/lib/components/screens/combat/components/effects/BloodViscosity3D.d.ts +64 -0
  113. package/lib/components/screens/combat/components/effects/BloodViscosity3D.d.ts.map +1 -0
  114. package/lib/components/screens/combat/components/effects/BloodViscosity3D.js +248 -0
  115. package/lib/components/screens/combat/components/effects/BloodViscosity3D.js.map +1 -0
  116. package/lib/components/screens/combat/components/effects/BoneCrackParticles3D.d.ts +60 -0
  117. package/lib/components/screens/combat/components/effects/BoneCrackParticles3D.d.ts.map +1 -0
  118. package/lib/components/screens/combat/components/effects/CombatParticleEffects3D.d.ts +37 -0
  119. package/lib/components/screens/combat/components/effects/CombatParticleEffects3D.d.ts.map +1 -0
  120. package/lib/components/screens/combat/components/effects/CombatParticleEffects3D.js +184 -0
  121. package/lib/components/screens/combat/components/effects/CombatParticleEffects3D.js.map +1 -0
  122. package/lib/components/screens/combat/components/effects/ConsciousnessBlur.d.ts +49 -0
  123. package/lib/components/screens/combat/components/effects/ConsciousnessBlur.d.ts.map +1 -0
  124. package/lib/components/screens/combat/components/effects/ConsciousnessBlur.js +66 -0
  125. package/lib/components/screens/combat/components/effects/ConsciousnessBlur.js.map +1 -0
  126. package/lib/components/screens/combat/components/effects/DustClouds3D.d.ts +93 -0
  127. package/lib/components/screens/combat/components/effects/DustClouds3D.d.ts.map +1 -0
  128. package/lib/components/screens/combat/components/effects/EarthCrackEffect3D.d.ts +57 -0
  129. package/lib/components/screens/combat/components/effects/EarthCrackEffect3D.d.ts.map +1 -0
  130. package/lib/components/screens/combat/components/effects/EarthHealingEffect3D.d.ts +88 -0
  131. package/lib/components/screens/combat/components/effects/EarthHealingEffect3D.d.ts.map +1 -0
  132. package/lib/components/screens/combat/components/effects/ImpactSparks3D.d.ts +91 -0
  133. package/lib/components/screens/combat/components/effects/ImpactSparks3D.d.ts.map +1 -0
  134. package/lib/components/screens/combat/components/effects/InternalDamage3D.d.ts +67 -0
  135. package/lib/components/screens/combat/components/effects/InternalDamage3D.d.ts.map +1 -0
  136. package/lib/components/screens/combat/components/effects/InternalDamage3D.js +261 -0
  137. package/lib/components/screens/combat/components/effects/InternalDamage3D.js.map +1 -0
  138. package/lib/components/screens/combat/components/effects/LiPrecisionTargetingOverlay.d.ts +45 -0
  139. package/lib/components/screens/combat/components/effects/LiPrecisionTargetingOverlay.d.ts.map +1 -0
  140. package/lib/components/screens/combat/components/effects/NerveStrikeParticles3D.d.ts +61 -0
  141. package/lib/components/screens/combat/components/effects/NerveStrikeParticles3D.d.ts.map +1 -0
  142. package/lib/components/screens/combat/components/effects/PainVignette.d.ts +47 -0
  143. package/lib/components/screens/combat/components/effects/PainVignette.d.ts.map +1 -0
  144. package/lib/components/screens/combat/components/effects/PainVignette.js +65 -0
  145. package/lib/components/screens/combat/components/effects/PainVignette.js.map +1 -0
  146. package/lib/components/screens/combat/components/effects/ParticleAudio3D.d.ts +52 -0
  147. package/lib/components/screens/combat/components/effects/ParticleAudio3D.d.ts.map +1 -0
  148. package/lib/components/screens/combat/components/effects/ParticleAudio3D.js +103 -0
  149. package/lib/components/screens/combat/components/effects/ParticleAudio3D.js.map +1 -0
  150. package/lib/components/screens/combat/components/effects/TraumaOverlay3D.d.ts +91 -0
  151. package/lib/components/screens/combat/components/effects/TraumaOverlay3D.d.ts.map +1 -0
  152. package/lib/components/screens/combat/components/effects/TraumaOverlay3D.js +296 -0
  153. package/lib/components/screens/combat/components/effects/TraumaOverlay3D.js.map +1 -0
  154. package/lib/components/screens/combat/components/effects/WaterRipple3D.d.ts +64 -0
  155. package/lib/components/screens/combat/components/effects/WaterRipple3D.d.ts.map +1 -0
  156. package/lib/components/screens/combat/components/effects/WaterWave3D.d.ts +72 -0
  157. package/lib/components/screens/combat/components/effects/WaterWave3D.d.ts.map +1 -0
  158. package/lib/components/screens/combat/components/effects/index.d.ts +121 -0
  159. package/lib/components/screens/combat/components/effects/index.d.ts.map +1 -0
  160. package/lib/components/screens/combat/components/feedback/MatchCountdown.d.ts +31 -0
  161. package/lib/components/screens/combat/components/feedback/MatchCountdown.d.ts.map +1 -0
  162. package/lib/components/screens/combat/components/feedback/MatchCountdown.js +242 -0
  163. package/lib/components/screens/combat/components/feedback/MatchCountdown.js.map +1 -0
  164. package/lib/components/screens/combat/components/feedback/RoundAnnouncementOverlayHtml.d.ts +74 -0
  165. package/lib/components/screens/combat/components/feedback/RoundAnnouncementOverlayHtml.d.ts.map +1 -0
  166. package/lib/components/screens/combat/components/feedback/RoundAnnouncementOverlayHtml.js +275 -0
  167. package/lib/components/screens/combat/components/feedback/RoundAnnouncementOverlayHtml.js.map +1 -0
  168. package/lib/components/screens/combat/components/feedback/RoundDisplayStatus.d.ts +25 -0
  169. package/lib/components/screens/combat/components/feedback/RoundDisplayStatus.d.ts.map +1 -0
  170. package/lib/components/screens/combat/components/feedback/RoundDisplayStatus.js +61 -0
  171. package/lib/components/screens/combat/components/feedback/RoundDisplayStatus.js.map +1 -0
  172. package/lib/components/screens/combat/components/feedback/RoundStartAnnouncementOverlayHtml.d.ts +43 -0
  173. package/lib/components/screens/combat/components/feedback/RoundStartAnnouncementOverlayHtml.d.ts.map +1 -0
  174. package/lib/components/screens/combat/components/feedback/RoundStartAnnouncementOverlayHtml.js +139 -0
  175. package/lib/components/screens/combat/components/feedback/RoundStartAnnouncementOverlayHtml.js.map +1 -0
  176. package/lib/components/screens/combat/components/hud/CombatBottomHUD.d.ts +50 -0
  177. package/lib/components/screens/combat/components/hud/CombatBottomHUD.d.ts.map +1 -0
  178. package/lib/components/screens/combat/components/hud/CombatBottomHUD.js +155 -0
  179. package/lib/components/screens/combat/components/hud/CombatBottomHUD.js.map +1 -0
  180. package/lib/components/screens/combat/components/hud/CombatLeftHUD.d.ts +54 -0
  181. package/lib/components/screens/combat/components/hud/CombatLeftHUD.d.ts.map +1 -0
  182. package/lib/components/screens/combat/components/hud/CombatLeftHUD.js +103 -0
  183. package/lib/components/screens/combat/components/hud/CombatLeftHUD.js.map +1 -0
  184. package/lib/components/screens/combat/components/hud/CombatRightHUD.d.ts +54 -0
  185. package/lib/components/screens/combat/components/hud/CombatRightHUD.d.ts.map +1 -0
  186. package/lib/components/screens/combat/components/hud/CombatRightHUD.js +101 -0
  187. package/lib/components/screens/combat/components/hud/CombatRightHUD.js.map +1 -0
  188. package/lib/components/screens/combat/components/hud/CombatTopHUD.d.ts +47 -0
  189. package/lib/components/screens/combat/components/hud/CombatTopHUD.d.ts.map +1 -0
  190. package/lib/components/screens/combat/components/hud/CombatTopHUD.js +141 -0
  191. package/lib/components/screens/combat/components/hud/CombatTopHUD.js.map +1 -0
  192. package/lib/components/screens/combat/components/hud/DifficultyIndicator.d.ts +25 -0
  193. package/lib/components/screens/combat/components/hud/DifficultyIndicator.d.ts.map +1 -0
  194. package/lib/components/screens/combat/components/hud/DifficultyIndicator.js +129 -0
  195. package/lib/components/screens/combat/components/hud/DifficultyIndicator.js.map +1 -0
  196. package/lib/components/screens/combat/components/hud/FPSMonitor.d.ts +48 -0
  197. package/lib/components/screens/combat/components/hud/FPSMonitor.d.ts.map +1 -0
  198. package/lib/components/screens/combat/components/hud/FPSMonitor.js +131 -0
  199. package/lib/components/screens/combat/components/hud/FPSMonitor.js.map +1 -0
  200. package/lib/components/screens/combat/components/hud/MobileControlsWrapper.d.ts +82 -0
  201. package/lib/components/screens/combat/components/hud/MobileControlsWrapper.d.ts.map +1 -0
  202. package/lib/components/screens/combat/components/hud/MobileControlsWrapper.js +73 -0
  203. package/lib/components/screens/combat/components/hud/MobileControlsWrapper.js.map +1 -0
  204. package/lib/components/screens/combat/components/hud/PlayerStateOverlayHtml.d.ts +80 -0
  205. package/lib/components/screens/combat/components/hud/PlayerStateOverlayHtml.d.ts.map +1 -0
  206. package/lib/components/screens/combat/components/hud/PlayerStateOverlayHtml.js +79 -0
  207. package/lib/components/screens/combat/components/hud/PlayerStateOverlayHtml.js.map +1 -0
  208. package/lib/components/screens/combat/components/hud/index.d.ts +22 -0
  209. package/lib/components/screens/combat/components/hud/index.d.ts.map +1 -0
  210. package/lib/components/screens/combat/components/hud/index.js +4 -0
  211. package/lib/components/screens/combat/components/index.d.ts +47 -0
  212. package/lib/components/screens/combat/components/index.d.ts.map +1 -0
  213. package/lib/components/screens/combat/components/index.js +23 -0
  214. package/lib/components/screens/combat/components/indicators/BalanceIndicator.d.ts +52 -0
  215. package/lib/components/screens/combat/components/indicators/BalanceIndicator.d.ts.map +1 -0
  216. package/lib/components/screens/combat/components/indicators/BalanceIndicator.js +113 -0
  217. package/lib/components/screens/combat/components/indicators/BalanceIndicator.js.map +1 -0
  218. package/lib/components/screens/combat/components/indicators/InputBufferDisplay.d.ts +49 -0
  219. package/lib/components/screens/combat/components/indicators/InputBufferDisplay.d.ts.map +1 -0
  220. package/lib/components/screens/combat/components/indicators/InputBufferDisplay.js +150 -0
  221. package/lib/components/screens/combat/components/indicators/InputBufferDisplay.js.map +1 -0
  222. package/lib/components/screens/combat/components/indicators/StaminaWarning.d.ts +44 -0
  223. package/lib/components/screens/combat/components/indicators/StaminaWarning.d.ts.map +1 -0
  224. package/lib/components/screens/combat/components/indicators/StaminaWarning.js +83 -0
  225. package/lib/components/screens/combat/components/indicators/StaminaWarning.js.map +1 -0
  226. package/lib/components/screens/combat/components/indicators/TechniqueNameDisplay.d.ts +83 -0
  227. package/lib/components/screens/combat/components/indicators/TechniqueNameDisplay.d.ts.map +1 -0
  228. package/lib/components/screens/combat/components/indicators/TechniqueNameDisplay.js +161 -0
  229. package/lib/components/screens/combat/components/indicators/TechniqueNameDisplay.js.map +1 -0
  230. package/lib/components/screens/combat/helpers/AnimationUpdater.d.ts +38 -0
  231. package/lib/components/screens/combat/helpers/AnimationUpdater.d.ts.map +1 -0
  232. package/lib/components/screens/combat/helpers/AnimationUpdater.js +37 -0
  233. package/lib/components/screens/combat/helpers/AnimationUpdater.js.map +1 -0
  234. package/lib/components/screens/combat/helpers/combatHelpers.d.ts +37 -0
  235. package/lib/components/screens/combat/helpers/combatHelpers.d.ts.map +1 -0
  236. package/lib/components/screens/combat/helpers/combatHelpers.js +33 -0
  237. package/lib/components/screens/combat/helpers/combatHelpers.js.map +1 -0
  238. package/lib/components/screens/combat/helpers/index.d.ts +8 -0
  239. package/lib/components/screens/combat/helpers/index.d.ts.map +1 -0
  240. package/lib/components/screens/combat/helpers/index.js +2 -0
  241. package/lib/components/screens/combat/hooks/useAICombat.d.ts +108 -0
  242. package/lib/components/screens/combat/hooks/useAICombat.d.ts.map +1 -0
  243. package/lib/components/screens/combat/hooks/useAICombat.js +806 -0
  244. package/lib/components/screens/combat/hooks/useAICombat.js.map +1 -0
  245. package/lib/components/screens/combat/hooks/useCombatActions.d.ts +106 -0
  246. package/lib/components/screens/combat/hooks/useCombatActions.d.ts.map +1 -0
  247. package/lib/components/screens/combat/hooks/useCombatActions.js +766 -0
  248. package/lib/components/screens/combat/hooks/useCombatActions.js.map +1 -0
  249. package/lib/components/screens/combat/hooks/useCombatAttackMovement.d.ts +85 -0
  250. package/lib/components/screens/combat/hooks/useCombatAttackMovement.d.ts.map +1 -0
  251. package/lib/components/screens/combat/hooks/useCombatAttackMovement.js +202 -0
  252. package/lib/components/screens/combat/hooks/useCombatAttackMovement.js.map +1 -0
  253. package/lib/components/screens/combat/hooks/useCombatAudio.d.ts +40 -0
  254. package/lib/components/screens/combat/hooks/useCombatAudio.d.ts.map +1 -0
  255. package/lib/components/screens/combat/hooks/useCombatAudio.js +287 -0
  256. package/lib/components/screens/combat/hooks/useCombatAudio.js.map +1 -0
  257. package/lib/components/screens/combat/hooks/useCombatLayout.d.ts +61 -0
  258. package/lib/components/screens/combat/hooks/useCombatLayout.d.ts.map +1 -0
  259. package/lib/components/screens/combat/hooks/useCombatLayout.js +89 -0
  260. package/lib/components/screens/combat/hooks/useCombatLayout.js.map +1 -0
  261. package/lib/components/screens/combat/hooks/useCombatState.d.ts +75 -0
  262. package/lib/components/screens/combat/hooks/useCombatState.d.ts.map +1 -0
  263. package/lib/components/screens/combat/hooks/useCombatState.js +182 -0
  264. package/lib/components/screens/combat/hooks/useCombatState.js.map +1 -0
  265. package/lib/components/screens/combat/hooks/useGrapplingAudio.d.ts +36 -0
  266. package/lib/components/screens/combat/hooks/useGrapplingAudio.d.ts.map +1 -0
  267. package/lib/components/screens/combat/hooks/usePreloadCombatAudio.d.ts +63 -0
  268. package/lib/components/screens/combat/hooks/usePreloadCombatAudio.d.ts.map +1 -0
  269. package/lib/components/screens/combat/index.d.ts +4 -0
  270. package/lib/components/screens/combat/index.d.ts.map +1 -0
  271. package/lib/components/screens/combat/index.js +25 -0
  272. package/lib/components/screens/controls/ControlsScreen3D.d.ts +12 -0
  273. package/lib/components/screens/controls/ControlsScreen3D.d.ts.map +1 -0
  274. package/lib/components/screens/controls/ControlsScreen3D.js +1248 -0
  275. package/lib/components/screens/controls/ControlsScreen3D.js.map +1 -0
  276. package/lib/components/screens/controls/components/ControlBindingsOverlayHtml.d.ts +35 -0
  277. package/lib/components/screens/controls/components/ControlBindingsOverlayHtml.d.ts.map +1 -0
  278. package/lib/components/screens/controls/components/ControlBindingsOverlayHtml.js +155 -0
  279. package/lib/components/screens/controls/components/ControlBindingsOverlayHtml.js.map +1 -0
  280. package/lib/components/screens/controls/components/ControlCategoryTabsOverlayHtml.d.ts +31 -0
  281. package/lib/components/screens/controls/components/ControlCategoryTabsOverlayHtml.d.ts.map +1 -0
  282. package/lib/components/screens/controls/components/ControlCategoryTabsOverlayHtml.js +100 -0
  283. package/lib/components/screens/controls/components/ControlCategoryTabsOverlayHtml.js.map +1 -0
  284. package/lib/components/screens/controls/components/GamepadVisualization3D.d.ts +32 -0
  285. package/lib/components/screens/controls/components/GamepadVisualization3D.d.ts.map +1 -0
  286. package/lib/components/screens/controls/components/GamepadVisualization3D.js +250 -0
  287. package/lib/components/screens/controls/components/GamepadVisualization3D.js.map +1 -0
  288. package/lib/components/screens/controls/components/InteractiveControlDemoOverlayHtml.d.ts +35 -0
  289. package/lib/components/screens/controls/components/InteractiveControlDemoOverlayHtml.d.ts.map +1 -0
  290. package/lib/components/screens/controls/components/InteractiveControlDemoOverlayHtml.js +222 -0
  291. package/lib/components/screens/controls/components/InteractiveControlDemoOverlayHtml.js.map +1 -0
  292. package/lib/components/screens/controls/components/Key3D.d.ts +36 -0
  293. package/lib/components/screens/controls/components/Key3D.d.ts.map +1 -0
  294. package/lib/components/screens/controls/components/Key3D.js +169 -0
  295. package/lib/components/screens/controls/components/Key3D.js.map +1 -0
  296. package/lib/components/screens/controls/components/VisualKeyboard3D.d.ts +37 -0
  297. package/lib/components/screens/controls/components/VisualKeyboard3D.d.ts.map +1 -0
  298. package/lib/components/screens/controls/components/VisualKeyboard3D.js +120 -0
  299. package/lib/components/screens/controls/components/VisualKeyboard3D.js.map +1 -0
  300. package/lib/components/screens/controls/components/index.d.ts +20 -0
  301. package/lib/components/screens/controls/components/index.d.ts.map +1 -0
  302. package/lib/components/screens/controls/constants/ControlsConstants.d.ts +67 -0
  303. package/lib/components/screens/controls/constants/ControlsConstants.d.ts.map +1 -0
  304. package/lib/components/screens/controls/constants/ControlsConstants.js +504 -0
  305. package/lib/components/screens/controls/constants/ControlsConstants.js.map +1 -0
  306. package/lib/components/screens/controls/hooks/useControlsState.d.ts +46 -0
  307. package/lib/components/screens/controls/hooks/useControlsState.d.ts.map +1 -0
  308. package/lib/components/screens/controls/hooks/useControlsState.js +71 -0
  309. package/lib/components/screens/controls/hooks/useControlsState.js.map +1 -0
  310. package/lib/components/screens/endscreen/EndScreen3D.d.ts +18 -0
  311. package/lib/components/screens/endscreen/EndScreen3D.d.ts.map +1 -0
  312. package/lib/components/screens/endscreen/EndScreen3D.js +367 -0
  313. package/lib/components/screens/endscreen/EndScreen3D.js.map +1 -0
  314. package/lib/components/screens/endscreen/components/DefeatAnimation3D.d.ts +9 -0
  315. package/lib/components/screens/endscreen/components/DefeatAnimation3D.d.ts.map +1 -0
  316. package/lib/components/screens/endscreen/components/DefeatAnimation3D.js +205 -0
  317. package/lib/components/screens/endscreen/components/DefeatAnimation3D.js.map +1 -0
  318. package/lib/components/screens/endscreen/components/MatchStatisticsDisplayOverlayHtml.d.ts +13 -0
  319. package/lib/components/screens/endscreen/components/MatchStatisticsDisplayOverlayHtml.d.ts.map +1 -0
  320. package/lib/components/screens/endscreen/components/MatchStatisticsDisplayOverlayHtml.js +321 -0
  321. package/lib/components/screens/endscreen/components/MatchStatisticsDisplayOverlayHtml.js.map +1 -0
  322. package/lib/components/screens/endscreen/components/NavigationButtonsOverlayHtml.d.ts +28 -0
  323. package/lib/components/screens/endscreen/components/NavigationButtonsOverlayHtml.d.ts.map +1 -0
  324. package/lib/components/screens/endscreen/components/NavigationButtonsOverlayHtml.js +93 -0
  325. package/lib/components/screens/endscreen/components/NavigationButtonsOverlayHtml.js.map +1 -0
  326. package/lib/components/screens/endscreen/components/PerformanceBreakdownOverlayHtml.d.ts +13 -0
  327. package/lib/components/screens/endscreen/components/PerformanceBreakdownOverlayHtml.d.ts.map +1 -0
  328. package/lib/components/screens/endscreen/components/PerformanceBreakdownOverlayHtml.js +294 -0
  329. package/lib/components/screens/endscreen/components/PerformanceBreakdownOverlayHtml.js.map +1 -0
  330. package/lib/components/screens/endscreen/components/PerformanceRatingOverlayHtml.d.ts +13 -0
  331. package/lib/components/screens/endscreen/components/PerformanceRatingOverlayHtml.d.ts.map +1 -0
  332. package/lib/components/screens/endscreen/components/PerformanceRatingOverlayHtml.js +210 -0
  333. package/lib/components/screens/endscreen/components/PerformanceRatingOverlayHtml.js.map +1 -0
  334. package/lib/components/screens/endscreen/components/VictoryAnimation3D.d.ts +9 -0
  335. package/lib/components/screens/endscreen/components/VictoryAnimation3D.d.ts.map +1 -0
  336. package/lib/components/screens/endscreen/components/VictoryAnimation3D.js +299 -0
  337. package/lib/components/screens/endscreen/components/VictoryAnimation3D.js.map +1 -0
  338. package/lib/components/screens/endscreen/components/WinnerDisplayOverlayHtml.d.ts +14 -0
  339. package/lib/components/screens/endscreen/components/WinnerDisplayOverlayHtml.d.ts.map +1 -0
  340. package/lib/components/screens/endscreen/components/WinnerDisplayOverlayHtml.js +170 -0
  341. package/lib/components/screens/endscreen/components/WinnerDisplayOverlayHtml.js.map +1 -0
  342. package/lib/components/screens/endscreen/components/animations.d.ts +25 -0
  343. package/lib/components/screens/endscreen/components/animations.d.ts.map +1 -0
  344. package/lib/components/screens/endscreen/components/animations.js +71 -0
  345. package/lib/components/screens/endscreen/components/animations.js.map +1 -0
  346. package/lib/components/screens/endscreen/components/index.d.ts +19 -0
  347. package/lib/components/screens/endscreen/components/index.d.ts.map +1 -0
  348. package/lib/components/screens/endscreen/components/index.js +8 -0
  349. package/lib/components/screens/endscreen/index.d.ts +9 -0
  350. package/lib/components/screens/endscreen/index.d.ts.map +1 -0
  351. package/lib/components/screens/endscreen/index.js +10 -0
  352. package/lib/components/screens/intro/IntroScreen3D.d.ts +16 -0
  353. package/lib/components/screens/intro/IntroScreen3D.d.ts.map +1 -0
  354. package/lib/components/screens/intro/IntroScreen3D.js +488 -0
  355. package/lib/components/screens/intro/IntroScreen3D.js.map +1 -0
  356. package/lib/components/screens/intro/components/AbilityListOverlayHtml.d.ts +53 -0
  357. package/lib/components/screens/intro/components/AbilityListOverlayHtml.d.ts.map +1 -0
  358. package/lib/components/screens/intro/components/AbilityListOverlayHtml.js +146 -0
  359. package/lib/components/screens/intro/components/AbilityListOverlayHtml.js.map +1 -0
  360. package/lib/components/screens/intro/components/ArchetypeCardGridOverlayHtml.d.ts +20 -0
  361. package/lib/components/screens/intro/components/ArchetypeCardGridOverlayHtml.d.ts.map +1 -0
  362. package/lib/components/screens/intro/components/ArchetypeCardGridOverlayHtml.js +154 -0
  363. package/lib/components/screens/intro/components/ArchetypeCardGridOverlayHtml.js.map +1 -0
  364. package/lib/components/screens/intro/components/ArchetypeCardOverlayHtml.d.ts +38 -0
  365. package/lib/components/screens/intro/components/ArchetypeCardOverlayHtml.d.ts.map +1 -0
  366. package/lib/components/screens/intro/components/ArchetypeCardOverlayHtml.js +235 -0
  367. package/lib/components/screens/intro/components/ArchetypeCardOverlayHtml.js.map +1 -0
  368. package/lib/components/screens/intro/components/ArchetypeDisplayOverlayHtml.d.ts +35 -0
  369. package/lib/components/screens/intro/components/ArchetypeDisplayOverlayHtml.d.ts.map +1 -0
  370. package/lib/components/screens/intro/components/ArchetypeDisplayOverlayHtml.js +325 -0
  371. package/lib/components/screens/intro/components/ArchetypeDisplayOverlayHtml.js.map +1 -0
  372. package/lib/components/screens/intro/components/EnhancedArchetypeDisplayOverlayHtml.d.ts +19 -0
  373. package/lib/components/screens/intro/components/EnhancedArchetypeDisplayOverlayHtml.d.ts.map +1 -0
  374. package/lib/components/screens/intro/components/EnhancedArchetypeDisplayOverlayHtml.js +88 -0
  375. package/lib/components/screens/intro/components/EnhancedArchetypeDisplayOverlayHtml.js.map +1 -0
  376. package/lib/components/screens/intro/components/MenuButtonsOverlayHtml.d.ts +65 -0
  377. package/lib/components/screens/intro/components/MenuButtonsOverlayHtml.d.ts.map +1 -0
  378. package/lib/components/screens/intro/components/MenuButtonsOverlayHtml.js +143 -0
  379. package/lib/components/screens/intro/components/MenuButtonsOverlayHtml.js.map +1 -0
  380. package/lib/components/screens/intro/components/MenuSectionOverlayHtml.d.ts +27 -0
  381. package/lib/components/screens/intro/components/MenuSectionOverlayHtml.d.ts.map +1 -0
  382. package/lib/components/screens/intro/components/MenuSectionOverlayHtml.js +153 -0
  383. package/lib/components/screens/intro/components/MenuSectionOverlayHtml.js.map +1 -0
  384. package/lib/components/screens/intro/components/StatBarOverlayHtml.d.ts +47 -0
  385. package/lib/components/screens/intro/components/StatBarOverlayHtml.d.ts.map +1 -0
  386. package/lib/components/screens/intro/components/StatBarOverlayHtml.js +128 -0
  387. package/lib/components/screens/intro/components/StatBarOverlayHtml.js.map +1 -0
  388. package/lib/components/screens/philosophy/PhilosophyScreen3D.d.ts +12 -0
  389. package/lib/components/screens/philosophy/PhilosophyScreen3D.d.ts.map +1 -0
  390. package/lib/components/screens/philosophy/PhilosophyScreen3D.js +561 -0
  391. package/lib/components/screens/philosophy/PhilosophyScreen3D.js.map +1 -0
  392. package/lib/components/screens/philosophy/components/InteractiveTrigramGridOverlayHtml.d.ts +40 -0
  393. package/lib/components/screens/philosophy/components/InteractiveTrigramGridOverlayHtml.d.ts.map +1 -0
  394. package/lib/components/screens/philosophy/components/PhilosophyNavigationOverlayHtml.d.ts +40 -0
  395. package/lib/components/screens/philosophy/components/PhilosophyNavigationOverlayHtml.d.ts.map +1 -0
  396. package/lib/components/screens/philosophy/components/PhilosophySectionOverlayHtml.d.ts +46 -0
  397. package/lib/components/screens/philosophy/components/PhilosophySectionOverlayHtml.d.ts.map +1 -0
  398. package/lib/components/screens/philosophy/components/PhilosophyTextOverlayHtml.d.ts +42 -0
  399. package/lib/components/screens/philosophy/components/PhilosophyTextOverlayHtml.d.ts.map +1 -0
  400. package/lib/components/screens/philosophy/components/TrigramSymbol3D.d.ts +49 -0
  401. package/lib/components/screens/philosophy/components/TrigramSymbol3D.d.ts.map +1 -0
  402. package/lib/components/screens/philosophy/components/TrigramVisualization3D.d.ts +43 -0
  403. package/lib/components/screens/philosophy/components/TrigramVisualization3D.d.ts.map +1 -0
  404. package/lib/components/screens/philosophy/components/index.d.ts +23 -0
  405. package/lib/components/screens/philosophy/components/index.d.ts.map +1 -0
  406. package/lib/components/screens/philosophy/hooks/index.d.ts +10 -0
  407. package/lib/components/screens/philosophy/hooks/index.d.ts.map +1 -0
  408. package/lib/components/screens/philosophy/hooks/usePhilosophyState.d.ts +50 -0
  409. package/lib/components/screens/philosophy/hooks/usePhilosophyState.d.ts.map +1 -0
  410. package/lib/components/screens/training/TrainingScreen3D.d.ts +51 -0
  411. package/lib/components/screens/training/TrainingScreen3D.d.ts.map +1 -0
  412. package/lib/components/screens/training/TrainingScreen3D.js +947 -0
  413. package/lib/components/screens/training/TrainingScreen3D.js.map +1 -0
  414. package/lib/components/screens/training/components/AnatomyControlsOverlayHtml.d.ts +31 -0
  415. package/lib/components/screens/training/components/AnatomyControlsOverlayHtml.d.ts.map +1 -0
  416. package/lib/components/screens/training/components/AnatomyControlsOverlayHtml.js +189 -0
  417. package/lib/components/screens/training/components/AnatomyControlsOverlayHtml.js.map +1 -0
  418. package/lib/components/screens/training/components/AnatomyOverlay3D.d.ts +31 -0
  419. package/lib/components/screens/training/components/AnatomyOverlay3D.d.ts.map +1 -0
  420. package/lib/components/screens/training/components/AnatomyOverlay3D.js +679 -0
  421. package/lib/components/screens/training/components/AnatomyOverlay3D.js.map +1 -0
  422. package/lib/components/screens/training/components/DamageNumber3D.d.ts +28 -0
  423. package/lib/components/screens/training/components/DamageNumber3D.d.ts.map +1 -0
  424. package/lib/components/screens/training/components/DamageNumber3D.js +6 -0
  425. package/lib/components/screens/training/components/FootPlacementMarkers3D.d.ts +47 -0
  426. package/lib/components/screens/training/components/FootPlacementMarkers3D.d.ts.map +1 -0
  427. package/lib/components/screens/training/components/FootPlacementMarkers3D.js +380 -0
  428. package/lib/components/screens/training/components/FootPlacementMarkers3D.js.map +1 -0
  429. package/lib/components/screens/training/components/FootworkDrillsOverlayHtml.d.ts +47 -0
  430. package/lib/components/screens/training/components/FootworkDrillsOverlayHtml.d.ts.map +1 -0
  431. package/lib/components/screens/training/components/FootworkDrillsOverlayHtml.js +292 -0
  432. package/lib/components/screens/training/components/FootworkDrillsOverlayHtml.js.map +1 -0
  433. package/lib/components/screens/training/components/HitFeedbackEffect3D.d.ts +32 -0
  434. package/lib/components/screens/training/components/HitFeedbackEffect3D.d.ts.map +1 -0
  435. package/lib/components/screens/training/components/HitFeedbackEffect3D.js +258 -0
  436. package/lib/components/screens/training/components/HitFeedbackEffect3D.js.map +1 -0
  437. package/lib/components/screens/training/components/TrainingAICharacter3D.d.ts +36 -0
  438. package/lib/components/screens/training/components/TrainingAICharacter3D.d.ts.map +1 -0
  439. package/lib/components/screens/training/components/TrainingAICharacter3D.js +6 -0
  440. package/lib/components/screens/training/components/TrainingArena3D.d.ts +22 -0
  441. package/lib/components/screens/training/components/TrainingArena3D.d.ts.map +1 -0
  442. package/lib/components/screens/training/components/TrainingArena3D.js +5 -0
  443. package/lib/components/screens/training/components/TrainingButtonsOverlayHtml.d.ts +73 -0
  444. package/lib/components/screens/training/components/TrainingButtonsOverlayHtml.d.ts.map +1 -0
  445. package/lib/components/screens/training/components/TrainingButtonsOverlayHtml.js +107 -0
  446. package/lib/components/screens/training/components/TrainingButtonsOverlayHtml.js.map +1 -0
  447. package/lib/components/screens/training/components/TrainingControlsOverlayHtml.d.ts +50 -0
  448. package/lib/components/screens/training/components/TrainingControlsOverlayHtml.d.ts.map +1 -0
  449. package/lib/components/screens/training/components/TrainingControlsOverlayHtml.js +129 -0
  450. package/lib/components/screens/training/components/TrainingControlsOverlayHtml.js.map +1 -0
  451. package/lib/components/screens/training/components/TrainingDummy3D.d.ts +72 -0
  452. package/lib/components/screens/training/components/TrainingDummy3D.d.ts.map +1 -0
  453. package/lib/components/screens/training/components/TrainingDummy3D.js +298 -0
  454. package/lib/components/screens/training/components/TrainingDummy3D.js.map +1 -0
  455. package/lib/components/screens/training/components/TrainingFeedbackOverlayHtml.d.ts +30 -0
  456. package/lib/components/screens/training/components/TrainingFeedbackOverlayHtml.d.ts.map +1 -0
  457. package/lib/components/screens/training/components/TrainingFeedbackOverlayHtml.js +44 -0
  458. package/lib/components/screens/training/components/TrainingFeedbackOverlayHtml.js.map +1 -0
  459. package/lib/components/screens/training/components/TrainingHitEffects3D.d.ts +27 -0
  460. package/lib/components/screens/training/components/TrainingHitEffects3D.d.ts.map +1 -0
  461. package/lib/components/screens/training/components/TrainingHitEffects3D.js +6 -0
  462. package/lib/components/screens/training/components/TrainingModeSelectorOverlayHtml.d.ts +51 -0
  463. package/lib/components/screens/training/components/TrainingModeSelectorOverlayHtml.d.ts.map +1 -0
  464. package/lib/components/screens/training/components/TrainingModeSelectorOverlayHtml.js +188 -0
  465. package/lib/components/screens/training/components/TrainingModeSelectorOverlayHtml.js.map +1 -0
  466. package/lib/components/screens/training/components/TrainingStatsOverlayHtml.d.ts +63 -0
  467. package/lib/components/screens/training/components/TrainingStatsOverlayHtml.d.ts.map +1 -0
  468. package/lib/components/screens/training/components/TrainingStatsOverlayHtml.js +253 -0
  469. package/lib/components/screens/training/components/TrainingStatsOverlayHtml.js.map +1 -0
  470. package/lib/components/screens/training/components/VitalPointMarker3D.d.ts +37 -0
  471. package/lib/components/screens/training/components/VitalPointMarker3D.d.ts.map +1 -0
  472. package/lib/components/screens/training/components/VitalPointMarker3D.js +210 -0
  473. package/lib/components/screens/training/components/VitalPointMarker3D.js.map +1 -0
  474. package/lib/components/screens/training/components/VitalPointTrainingOverlayHtml.d.ts +29 -0
  475. package/lib/components/screens/training/components/VitalPointTrainingOverlayHtml.d.ts.map +1 -0
  476. package/lib/components/screens/training/components/VitalPointTrainingOverlayHtml.js +195 -0
  477. package/lib/components/screens/training/components/VitalPointTrainingOverlayHtml.js.map +1 -0
  478. package/lib/components/screens/training/components/hud/TrainingBottomHUD.d.ts +59 -0
  479. package/lib/components/screens/training/components/hud/TrainingBottomHUD.d.ts.map +1 -0
  480. package/lib/components/screens/training/components/hud/TrainingBottomHUD.js +145 -0
  481. package/lib/components/screens/training/components/hud/TrainingBottomHUD.js.map +1 -0
  482. package/lib/components/screens/training/components/hud/TrainingLeftHUD.d.ts +47 -0
  483. package/lib/components/screens/training/components/hud/TrainingLeftHUD.d.ts.map +1 -0
  484. package/lib/components/screens/training/components/hud/TrainingLeftHUD.js +59 -0
  485. package/lib/components/screens/training/components/hud/TrainingLeftHUD.js.map +1 -0
  486. package/lib/components/screens/training/components/hud/TrainingRightHUD.d.ts +68 -0
  487. package/lib/components/screens/training/components/hud/TrainingRightHUD.d.ts.map +1 -0
  488. package/lib/components/screens/training/components/hud/TrainingRightHUD.js +93 -0
  489. package/lib/components/screens/training/components/hud/TrainingRightHUD.js.map +1 -0
  490. package/lib/components/screens/training/components/hud/TrainingTopHUD.d.ts +55 -0
  491. package/lib/components/screens/training/components/hud/TrainingTopHUD.d.ts.map +1 -0
  492. package/lib/components/screens/training/components/hud/TrainingTopHUD.js +184 -0
  493. package/lib/components/screens/training/components/hud/TrainingTopHUD.js.map +1 -0
  494. package/lib/components/screens/training/components/hud/index.d.ts +13 -0
  495. package/lib/components/screens/training/components/hud/index.d.ts.map +1 -0
  496. package/lib/components/screens/training/components/hud/index.js +4 -0
  497. package/lib/components/screens/training/components/index.d.ts +22 -0
  498. package/lib/components/screens/training/components/index.d.ts.map +1 -0
  499. package/lib/components/screens/training/components/index.js +19 -0
  500. package/lib/components/screens/training/hooks/useAttackMovement.d.ts +69 -0
  501. package/lib/components/screens/training/hooks/useAttackMovement.d.ts.map +1 -0
  502. package/lib/components/screens/training/hooks/useAttackMovement.js +118 -0
  503. package/lib/components/screens/training/hooks/useAttackMovement.js.map +1 -0
  504. package/lib/components/screens/training/hooks/useTrainingActions.d.ts +82 -0
  505. package/lib/components/screens/training/hooks/useTrainingActions.d.ts.map +1 -0
  506. package/lib/components/screens/training/hooks/useTrainingActions.js +284 -0
  507. package/lib/components/screens/training/hooks/useTrainingActions.js.map +1 -0
  508. package/lib/components/screens/training/hooks/useTrainingLayout.d.ts +62 -0
  509. package/lib/components/screens/training/hooks/useTrainingLayout.d.ts.map +1 -0
  510. package/lib/components/screens/training/hooks/useTrainingLayout.js +96 -0
  511. package/lib/components/screens/training/hooks/useTrainingLayout.js.map +1 -0
  512. package/lib/components/screens/training/hooks/useTrainingState.d.ts +100 -0
  513. package/lib/components/screens/training/hooks/useTrainingState.d.ts.map +1 -0
  514. package/lib/components/screens/training/hooks/useTrainingState.js +344 -0
  515. package/lib/components/screens/training/hooks/useTrainingState.js.map +1 -0
  516. package/lib/components/screens/training/index.d.ts +4 -0
  517. package/lib/components/screens/training/index.d.ts.map +1 -0
  518. package/lib/components/screens/training/index.js +16 -0
  519. package/lib/components/shared/base/AccessibilityProvider.d.ts +51 -0
  520. package/lib/components/shared/base/AccessibilityProvider.d.ts.map +1 -0
  521. package/lib/components/shared/base/AccessibilityProvider.js +71 -0
  522. package/lib/components/shared/base/AccessibilityProvider.js.map +1 -0
  523. package/lib/components/shared/base/BaseButton.d.ts +42 -0
  524. package/lib/components/shared/base/BaseButton.d.ts.map +1 -0
  525. package/lib/components/shared/base/BaseButton.js +214 -0
  526. package/lib/components/shared/base/BaseButton.js.map +1 -0
  527. package/lib/components/shared/base/BaseButtonOverlayHtml.d.ts +52 -0
  528. package/lib/components/shared/base/BaseButtonOverlayHtml.d.ts.map +1 -0
  529. package/lib/components/shared/base/BaseButtonOverlayHtml.js +130 -0
  530. package/lib/components/shared/base/BaseButtonOverlayHtml.js.map +1 -0
  531. package/lib/components/shared/base/BasePanel.d.ts +30 -0
  532. package/lib/components/shared/base/BasePanel.d.ts.map +1 -0
  533. package/lib/components/shared/base/BasePanel.js +83 -0
  534. package/lib/components/shared/base/BasePanel.js.map +1 -0
  535. package/lib/components/shared/base/BaseText.d.ts +40 -0
  536. package/lib/components/shared/base/BaseText.d.ts.map +1 -0
  537. package/lib/components/shared/base/BaseText.js +157 -0
  538. package/lib/components/shared/base/BaseText.js.map +1 -0
  539. package/lib/components/shared/base/ResponsiveContainer.d.ts +126 -0
  540. package/lib/components/shared/base/ResponsiveContainer.d.ts.map +1 -0
  541. package/lib/components/shared/base/index.d.ts +23 -0
  542. package/lib/components/shared/base/index.d.ts.map +1 -0
  543. package/lib/components/shared/base/index.js +6 -0
  544. package/lib/components/shared/base/layoutUtils.d.ts +102 -0
  545. package/lib/components/shared/base/layoutUtils.d.ts.map +1 -0
  546. package/lib/components/shared/base/useKoreanTheme.d.ts +206 -0
  547. package/lib/components/shared/base/useKoreanTheme.d.ts.map +1 -0
  548. package/lib/components/shared/base/useKoreanTheme.js +169 -0
  549. package/lib/components/shared/base/useKoreanTheme.js.map +1 -0
  550. package/lib/components/shared/debug/PerformanceDebugOverlayHtml.d.ts +32 -0
  551. package/lib/components/shared/debug/PerformanceDebugOverlayHtml.d.ts.map +1 -0
  552. package/lib/components/shared/debug/PerformanceDebugOverlayHtml.js +69 -0
  553. package/lib/components/shared/debug/PerformanceDebugOverlayHtml.js.map +1 -0
  554. package/lib/components/shared/effects/ScreenFlash.d.ts +98 -0
  555. package/lib/components/shared/effects/ScreenFlash.d.ts.map +1 -0
  556. package/lib/components/shared/mobile/ActionButtons.d.ts +44 -0
  557. package/lib/components/shared/mobile/ActionButtons.d.ts.map +1 -0
  558. package/lib/components/shared/mobile/ActionButtons.js +324 -0
  559. package/lib/components/shared/mobile/ActionButtons.js.map +1 -0
  560. package/lib/components/shared/mobile/GestureRecognizerPure.d.ts +64 -0
  561. package/lib/components/shared/mobile/GestureRecognizerPure.d.ts.map +1 -0
  562. package/lib/components/shared/mobile/GestureRecognizerPure.js +231 -0
  563. package/lib/components/shared/mobile/GestureRecognizerPure.js.map +1 -0
  564. package/lib/components/shared/mobile/HapticController.d.ts +253 -0
  565. package/lib/components/shared/mobile/HapticController.d.ts.map +1 -0
  566. package/lib/components/shared/mobile/HapticController.js +280 -0
  567. package/lib/components/shared/mobile/HapticController.js.map +1 -0
  568. package/lib/components/shared/mobile/MobileControlsPure.d.ts +43 -0
  569. package/lib/components/shared/mobile/MobileControlsPure.d.ts.map +1 -0
  570. package/lib/components/shared/mobile/MobileControlsPure.js +294 -0
  571. package/lib/components/shared/mobile/MobileControlsPure.js.map +1 -0
  572. package/lib/components/shared/mobile/PerformanceMonitor.d.ts +249 -0
  573. package/lib/components/shared/mobile/PerformanceMonitor.d.ts.map +1 -0
  574. package/lib/components/shared/mobile/StanceWheelPure.d.ts +78 -0
  575. package/lib/components/shared/mobile/StanceWheelPure.d.ts.map +1 -0
  576. package/lib/components/shared/mobile/StanceWheelPure.js +386 -0
  577. package/lib/components/shared/mobile/StanceWheelPure.js.map +1 -0
  578. package/lib/components/shared/mobile/TouchOptimizer.d.ts +154 -0
  579. package/lib/components/shared/mobile/TouchOptimizer.d.ts.map +1 -0
  580. package/lib/components/shared/mobile/TouchOptimizer.js +83 -0
  581. package/lib/components/shared/mobile/TouchOptimizer.js.map +1 -0
  582. package/lib/components/shared/mobile/VirtualDPad.d.ts +49 -0
  583. package/lib/components/shared/mobile/VirtualDPad.d.ts.map +1 -0
  584. package/lib/components/shared/mobile/VirtualDPad.js +289 -0
  585. package/lib/components/shared/mobile/VirtualDPad.js.map +1 -0
  586. package/lib/components/shared/mobile/index.d.ts +31 -0
  587. package/lib/components/shared/mobile/index.d.ts.map +1 -0
  588. package/lib/components/shared/mobile/index.js +7 -0
  589. package/lib/components/shared/three/anatomy/BodySurface.d.ts +78 -0
  590. package/lib/components/shared/three/anatomy/BodySurface.d.ts.map +1 -0
  591. package/lib/components/shared/three/anatomy/BodySurface.js +393 -0
  592. package/lib/components/shared/three/anatomy/BodySurface.js.map +1 -0
  593. package/lib/components/shared/three/anatomy/BoneAttachedMuscles.d.ts +147 -0
  594. package/lib/components/shared/three/anatomy/BoneAttachedMuscles.d.ts.map +1 -0
  595. package/lib/components/shared/three/anatomy/BoneAttachedMuscles.js +541 -0
  596. package/lib/components/shared/three/anatomy/BoneAttachedMuscles.js.map +1 -0
  597. package/lib/components/shared/three/anatomy/BoneClothing.d.ts +89 -0
  598. package/lib/components/shared/three/anatomy/BoneClothing.d.ts.map +1 -0
  599. package/lib/components/shared/three/anatomy/BoneClothing.js +345 -0
  600. package/lib/components/shared/three/anatomy/BoneClothing.js.map +1 -0
  601. package/lib/components/shared/three/anatomy/BoneRenderer.d.ts +129 -0
  602. package/lib/components/shared/three/anatomy/BoneRenderer.d.ts.map +1 -0
  603. package/lib/components/shared/three/anatomy/BoneRenderer.js +266 -0
  604. package/lib/components/shared/three/anatomy/BoneRenderer.js.map +1 -0
  605. package/lib/components/shared/three/anatomy/Face3D.d.ts +40 -0
  606. package/lib/components/shared/three/anatomy/Face3D.d.ts.map +1 -0
  607. package/lib/components/shared/three/anatomy/Face3D.js +426 -0
  608. package/lib/components/shared/three/anatomy/Face3D.js.map +1 -0
  609. package/lib/components/shared/three/anatomy/Foot3D.d.ts +71 -0
  610. package/lib/components/shared/three/anatomy/Foot3D.d.ts.map +1 -0
  611. package/lib/components/shared/three/anatomy/Foot3D.js +178 -0
  612. package/lib/components/shared/three/anatomy/Foot3D.js.map +1 -0
  613. package/lib/components/shared/three/anatomy/Hand3D.d.ts +101 -0
  614. package/lib/components/shared/three/anatomy/Hand3D.d.ts.map +1 -0
  615. package/lib/components/shared/three/anatomy/Hand3D.js +376 -0
  616. package/lib/components/shared/three/anatomy/Hand3D.js.map +1 -0
  617. package/lib/components/shared/three/effects/ActionFeedback.d.ts +78 -0
  618. package/lib/components/shared/three/effects/ActionFeedback.d.ts.map +1 -0
  619. package/lib/components/shared/three/effects/ActionFeedback.js +236 -0
  620. package/lib/components/shared/three/effects/ActionFeedback.js.map +1 -0
  621. package/lib/components/shared/three/effects/DamageNumbers.d.ts +36 -0
  622. package/lib/components/shared/three/effects/DamageNumbers.d.ts.map +1 -0
  623. package/lib/components/shared/three/effects/DamageNumbers.js +148 -0
  624. package/lib/components/shared/three/effects/DamageNumbers.js.map +1 -0
  625. package/lib/components/shared/three/effects/ExplosiveBurstEffect3D.d.ts +41 -0
  626. package/lib/components/shared/three/effects/ExplosiveBurstEffect3D.d.ts.map +1 -0
  627. package/lib/components/shared/three/effects/GrapplingIndicator3D.d.ts +49 -0
  628. package/lib/components/shared/three/effects/GrapplingIndicator3D.d.ts.map +1 -0
  629. package/lib/components/shared/three/effects/HitEffects3D.d.ts +28 -0
  630. package/lib/components/shared/three/effects/HitEffects3D.d.ts.map +1 -0
  631. package/lib/components/shared/three/effects/HitEffects3D.js +427 -0
  632. package/lib/components/shared/three/effects/HitEffects3D.js.map +1 -0
  633. package/lib/components/shared/three/effects/LimbExposureIndicator3D.d.ts +67 -0
  634. package/lib/components/shared/three/effects/LimbExposureIndicator3D.d.ts.map +1 -0
  635. package/lib/components/shared/three/effects/NerveDisruptionEffect3D.d.ts +63 -0
  636. package/lib/components/shared/three/effects/NerveDisruptionEffect3D.d.ts.map +1 -0
  637. package/lib/components/shared/three/effects/PlayerStateIndicators.d.ts +36 -0
  638. package/lib/components/shared/three/effects/PlayerStateIndicators.d.ts.map +1 -0
  639. package/lib/components/shared/three/effects/PlayerStateIndicators.js +237 -0
  640. package/lib/components/shared/three/effects/PlayerStateIndicators.js.map +1 -0
  641. package/lib/components/shared/three/effects/StanceSymbol3D.d.ts +52 -0
  642. package/lib/components/shared/three/effects/StanceSymbol3D.d.ts.map +1 -0
  643. package/lib/components/shared/three/effects/StanceSymbol3D.js +128 -0
  644. package/lib/components/shared/three/effects/StanceSymbol3D.js.map +1 -0
  645. package/lib/components/shared/three/effects/StanceTransitionEffect.d.ts +56 -0
  646. package/lib/components/shared/three/effects/StanceTransitionEffect.d.ts.map +1 -0
  647. package/lib/components/shared/three/effects/StanceTransitionEffect.js +174 -0
  648. package/lib/components/shared/three/effects/StanceTransitionEffect.js.map +1 -0
  649. package/lib/components/shared/three/effects/ThunderEffect3D.d.ts +39 -0
  650. package/lib/components/shared/three/effects/ThunderEffect3D.d.ts.map +1 -0
  651. package/lib/components/shared/three/effects/VitalPointMarkers3D.d.ts +48 -0
  652. package/lib/components/shared/three/effects/VitalPointMarkers3D.d.ts.map +1 -0
  653. package/lib/components/shared/three/effects/VitalPointMarkers3D.js +249 -0
  654. package/lib/components/shared/three/effects/VitalPointMarkers3D.js.map +1 -0
  655. package/lib/components/shared/three/index.d.ts +30 -0
  656. package/lib/components/shared/three/index.d.ts.map +1 -0
  657. package/lib/components/shared/three/index.js +9 -0
  658. package/lib/components/shared/three/indicators/ElementalColorSystem.d.ts +184 -0
  659. package/lib/components/shared/three/indicators/ElementalColorSystem.d.ts.map +1 -0
  660. package/lib/components/shared/three/indicators/ElementalColorSystem.js +147 -0
  661. package/lib/components/shared/three/indicators/ElementalColorSystem.js.map +1 -0
  662. package/lib/components/shared/three/indicators/GuardIndicator.d.ts +58 -0
  663. package/lib/components/shared/three/indicators/GuardIndicator.d.ts.map +1 -0
  664. package/lib/components/shared/three/indicators/GuardIndicator.js +259 -0
  665. package/lib/components/shared/three/indicators/GuardIndicator.js.map +1 -0
  666. package/lib/components/shared/three/indicators/HapticFeedback.d.ts +184 -0
  667. package/lib/components/shared/three/indicators/HapticFeedback.d.ts.map +1 -0
  668. package/lib/components/shared/three/indicators/HapticFeedback.js +46 -0
  669. package/lib/components/shared/three/indicators/HapticFeedback.js.map +1 -0
  670. package/lib/components/shared/three/indicators/StanceChangeIndicator.d.ts +53 -0
  671. package/lib/components/shared/three/indicators/StanceChangeIndicator.d.ts.map +1 -0
  672. package/lib/components/shared/three/indicators/StanceChangeIndicator.js +222 -0
  673. package/lib/components/shared/three/indicators/StanceChangeIndicator.js.map +1 -0
  674. package/lib/components/shared/three/indicators/TrigramSymbol3D.d.ts +82 -0
  675. package/lib/components/shared/three/indicators/TrigramSymbol3D.d.ts.map +1 -0
  676. package/lib/components/shared/three/models/Player3DWithTransitions.d.ts +77 -0
  677. package/lib/components/shared/three/models/Player3DWithTransitions.d.ts.map +1 -0
  678. package/lib/components/shared/three/models/Player3DWithTransitions.js +118 -0
  679. package/lib/components/shared/three/models/Player3DWithTransitions.js.map +1 -0
  680. package/lib/components/shared/three/models/SkeletalPlayer3D.d.ts +44 -0
  681. package/lib/components/shared/three/models/SkeletalPlayer3D.d.ts.map +1 -0
  682. package/lib/components/shared/three/models/SkeletalPlayer3D.js +358 -0
  683. package/lib/components/shared/three/models/SkeletalPlayer3D.js.map +1 -0
  684. package/lib/components/shared/three/optimization/AdaptiveQuality.d.ts +107 -0
  685. package/lib/components/shared/three/optimization/AdaptiveQuality.d.ts.map +1 -0
  686. package/lib/components/shared/three/optimization/AdaptiveQuality.js +197 -0
  687. package/lib/components/shared/three/optimization/AdaptiveQuality.js.map +1 -0
  688. package/lib/components/shared/three/optimization/InstancedGeometry.d.ts +189 -0
  689. package/lib/components/shared/three/optimization/InstancedGeometry.d.ts.map +1 -0
  690. package/lib/components/shared/three/optimization/InstancedGeometry.js +3 -0
  691. package/lib/components/shared/three/optimization/LODSystem.d.ts +126 -0
  692. package/lib/components/shared/three/optimization/LODSystem.d.ts.map +1 -0
  693. package/lib/components/shared/three/optimization/LODSystem.js +3 -0
  694. package/lib/components/shared/three/optimization/index.d.ts +14 -0
  695. package/lib/components/shared/three/optimization/index.d.ts.map +1 -0
  696. package/lib/components/shared/three/optimization/index.js +3 -0
  697. package/lib/components/shared/three/scene/AtmosphericParticles3D.d.ts +31 -0
  698. package/lib/components/shared/three/scene/AtmosphericParticles3D.d.ts.map +1 -0
  699. package/lib/components/shared/three/scene/AtmosphericParticles3D.js +84 -0
  700. package/lib/components/shared/three/scene/AtmosphericParticles3D.js.map +1 -0
  701. package/lib/components/shared/three/scene/BackgroundScene3D.d.ts +76 -0
  702. package/lib/components/shared/three/scene/BackgroundScene3D.d.ts.map +1 -0
  703. package/lib/components/shared/three/scene/BackgroundScene3D.js +124 -0
  704. package/lib/components/shared/three/scene/BackgroundScene3D.js.map +1 -0
  705. package/lib/components/shared/three/scene/CombatArena3D.d.ts +38 -0
  706. package/lib/components/shared/three/scene/CombatArena3D.d.ts.map +1 -0
  707. package/lib/components/shared/three/scene/CombatArena3D.js +256 -0
  708. package/lib/components/shared/three/scene/CombatArena3D.js.map +1 -0
  709. package/lib/components/shared/three/scene/DebugCollision.d.ts +64 -0
  710. package/lib/components/shared/three/scene/DebugCollision.d.ts.map +1 -0
  711. package/lib/components/shared/three/scene/KoreanSignage3D.d.ts +29 -0
  712. package/lib/components/shared/three/scene/KoreanSignage3D.d.ts.map +1 -0
  713. package/lib/components/shared/three/scene/KoreanSignage3D.js +122 -0
  714. package/lib/components/shared/three/scene/KoreanSignage3D.js.map +1 -0
  715. package/lib/components/shared/three/ui/ArchetypeCard.d.ts +38 -0
  716. package/lib/components/shared/three/ui/ArchetypeCard.d.ts.map +1 -0
  717. package/lib/components/shared/three/ui/ArchetypeCard.js +213 -0
  718. package/lib/components/shared/three/ui/ArchetypeCard.js.map +1 -0
  719. package/lib/components/shared/three/ui/BodyPartHealthDisplay.d.ts +45 -0
  720. package/lib/components/shared/three/ui/BodyPartHealthDisplay.d.ts.map +1 -0
  721. package/lib/components/shared/three/ui/BodyPartHealthDisplay.js +206 -0
  722. package/lib/components/shared/three/ui/BodyPartHealthDisplay.js.map +1 -0
  723. package/lib/components/shared/three/ui/BreathingIndicator.d.ts +25 -0
  724. package/lib/components/shared/three/ui/BreathingIndicator.d.ts.map +1 -0
  725. package/lib/components/shared/three/ui/BreathingIndicator2.js +104 -0
  726. package/lib/components/shared/three/ui/BreathingIndicator2.js.map +1 -0
  727. package/lib/components/shared/three/ui/CombatReadinessBar.d.ts +43 -0
  728. package/lib/components/shared/three/ui/CombatReadinessBar.d.ts.map +1 -0
  729. package/lib/components/shared/three/ui/CombatReadinessBar.js +135 -0
  730. package/lib/components/shared/three/ui/CombatReadinessBar.js.map +1 -0
  731. package/lib/components/shared/three/ui/ComboCounter.d.ts +42 -0
  732. package/lib/components/shared/three/ui/ComboCounter.d.ts.map +1 -0
  733. package/lib/components/shared/three/ui/ComboCounter.js +222 -0
  734. package/lib/components/shared/three/ui/ComboCounter.js.map +1 -0
  735. package/lib/components/shared/three/ui/HealthBar.d.ts +37 -0
  736. package/lib/components/shared/three/ui/HealthBar.d.ts.map +1 -0
  737. package/lib/components/shared/three/ui/HealthBar.js +112 -0
  738. package/lib/components/shared/three/ui/HealthBar.js.map +1 -0
  739. package/lib/components/shared/three/ui/KoreanButton.d.ts +37 -0
  740. package/lib/components/shared/three/ui/KoreanButton.d.ts.map +1 -0
  741. package/lib/components/shared/three/ui/KoreanButton.js +33 -0
  742. package/lib/components/shared/three/ui/KoreanButton.js.map +1 -0
  743. package/lib/components/shared/three/ui/KoreanPanel.d.ts +32 -0
  744. package/lib/components/shared/three/ui/KoreanPanel.d.ts.map +1 -0
  745. package/lib/components/shared/three/ui/KoreanPanel.js +29 -0
  746. package/lib/components/shared/three/ui/KoreanPanel.js.map +1 -0
  747. package/lib/components/shared/three/ui/KoreanText.d.ts +35 -0
  748. package/lib/components/shared/three/ui/KoreanText.d.ts.map +1 -0
  749. package/lib/components/shared/three/ui/KoreanText.js +32 -0
  750. package/lib/components/shared/three/ui/KoreanText.js.map +1 -0
  751. package/lib/components/shared/three/ui/MenuList.d.ts +47 -0
  752. package/lib/components/shared/three/ui/MenuList.d.ts.map +1 -0
  753. package/lib/components/shared/three/ui/MenuList.js +123 -0
  754. package/lib/components/shared/three/ui/MenuList.js.map +1 -0
  755. package/lib/components/shared/three/ui/PlayerHUD.d.ts +34 -0
  756. package/lib/components/shared/three/ui/PlayerHUD.d.ts.map +1 -0
  757. package/lib/components/shared/three/ui/PlayerHUD.js +231 -0
  758. package/lib/components/shared/three/ui/PlayerHUD.js.map +1 -0
  759. package/lib/components/shared/three/ui/ProgressBar.d.ts +48 -0
  760. package/lib/components/shared/three/ui/ProgressBar.d.ts.map +1 -0
  761. package/lib/components/shared/three/ui/ProgressBar.js +173 -0
  762. package/lib/components/shared/three/ui/ProgressBar.js.map +1 -0
  763. package/lib/components/shared/three/ui/SpeedIndicatorHUD.d.ts +62 -0
  764. package/lib/components/shared/three/ui/SpeedIndicatorHUD.d.ts.map +1 -0
  765. package/lib/components/shared/three/ui/SpeedIndicatorHUD.js +185 -0
  766. package/lib/components/shared/three/ui/SpeedIndicatorHUD.js.map +1 -0
  767. package/lib/components/shared/three/ui/StaminaBar.d.ts +37 -0
  768. package/lib/components/shared/three/ui/StaminaBar.d.ts.map +1 -0
  769. package/lib/components/shared/three/ui/StaminaBar.js +103 -0
  770. package/lib/components/shared/three/ui/StaminaBar.js.map +1 -0
  771. package/lib/components/shared/three/ui/TechniqueBar.d.ts +52 -0
  772. package/lib/components/shared/three/ui/TechniqueBar.d.ts.map +1 -0
  773. package/lib/components/shared/three/ui/TechniqueBar.js +128 -0
  774. package/lib/components/shared/three/ui/TechniqueBar.js.map +1 -0
  775. package/lib/components/shared/three/ui/TechniqueBarContainer.d.ts +49 -0
  776. package/lib/components/shared/three/ui/TechniqueBarContainer.d.ts.map +1 -0
  777. package/lib/components/shared/three/ui/TechniqueCard.d.ts +64 -0
  778. package/lib/components/shared/three/ui/TechniqueCard.d.ts.map +1 -0
  779. package/lib/components/shared/three/ui/TechniqueCard.js +333 -0
  780. package/lib/components/shared/three/ui/TechniqueCard.js.map +1 -0
  781. package/lib/components/shared/three/ui/VitalPointOverlayControlsHtml.d.ts +76 -0
  782. package/lib/components/shared/three/ui/VitalPointOverlayControlsHtml.d.ts.map +1 -0
  783. package/lib/components/shared/three/ui/VitalPointOverlayControlsHtml.js +551 -0
  784. package/lib/components/shared/three/ui/VitalPointOverlayControlsHtml.js.map +1 -0
  785. package/lib/components/shared/three/ui/VulnerabilityWindowHUD.d.ts +63 -0
  786. package/lib/components/shared/three/ui/VulnerabilityWindowHUD.d.ts.map +1 -0
  787. package/lib/components/shared/ui/BackButton.d.ts +82 -0
  788. package/lib/components/shared/ui/BackButton.d.ts.map +1 -0
  789. package/lib/components/shared/ui/BackButton.js +67 -0
  790. package/lib/components/shared/ui/BackButton.js.map +1 -0
  791. package/lib/components/shared/ui/BaseHUDContainer.d.ts +71 -0
  792. package/lib/components/shared/ui/BaseHUDContainer.d.ts.map +1 -0
  793. package/lib/components/shared/ui/BaseHUDContainer.js +126 -0
  794. package/lib/components/shared/ui/BaseHUDContainer.js.map +1 -0
  795. package/lib/components/shared/ui/CombatTimer.d.ts +60 -0
  796. package/lib/components/shared/ui/CombatTimer.d.ts.map +1 -0
  797. package/lib/components/shared/ui/CombatTimer.js +145 -0
  798. package/lib/components/shared/ui/CombatTimer.js.map +1 -0
  799. package/lib/components/shared/ui/ErrorBoundary.d.ts +44 -0
  800. package/lib/components/shared/ui/ErrorBoundary.d.ts.map +1 -0
  801. package/lib/components/shared/ui/ErrorModal.d.ts +21 -0
  802. package/lib/components/shared/ui/ErrorModal.d.ts.map +1 -0
  803. package/lib/components/shared/ui/ErrorModal.js +133 -0
  804. package/lib/components/shared/ui/ErrorModal.js.map +1 -0
  805. package/lib/components/shared/ui/HUDSection.d.ts +65 -0
  806. package/lib/components/shared/ui/HUDSection.d.ts.map +1 -0
  807. package/lib/components/shared/ui/LoadingState.d.ts +50 -0
  808. package/lib/components/shared/ui/LoadingState.d.ts.map +1 -0
  809. package/lib/components/shared/ui/LoadingState.js +92 -0
  810. package/lib/components/shared/ui/LoadingState.js.map +1 -0
  811. package/lib/components/shared/ui/MobileHUDLayout.d.ts +70 -0
  812. package/lib/components/shared/ui/MobileHUDLayout.d.ts.map +1 -0
  813. package/lib/components/shared/ui/ResponsiveContainer.d.ts +69 -0
  814. package/lib/components/shared/ui/ResponsiveContainer.d.ts.map +1 -0
  815. package/lib/components/shared/ui/SplashScreen.d.ts +13 -0
  816. package/lib/components/shared/ui/SplashScreen.d.ts.map +1 -0
  817. package/lib/components/shared/ui/SplashScreen.js +204 -0
  818. package/lib/components/shared/ui/SplashScreen.js.map +1 -0
  819. package/lib/components/shared/ui/StyledHUDPanel.d.ts +56 -0
  820. package/lib/components/shared/ui/StyledHUDPanel.d.ts.map +1 -0
  821. package/lib/components/shared/ui/VitalPointOverlayControlsPure.d.ts +79 -0
  822. package/lib/components/shared/ui/VitalPointOverlayControlsPure.d.ts.map +1 -0
  823. package/lib/components/shared/ui/VitalPointOverlayControlsPure.js +550 -0
  824. package/lib/components/shared/ui/VitalPointOverlayControlsPure.js.map +1 -0
  825. package/lib/components/shared/ui/VolumeControl.d.ts +20 -0
  826. package/lib/components/shared/ui/VolumeControl.d.ts.map +1 -0
  827. package/lib/components/shared/ui/VolumeControl.js +292 -0
  828. package/lib/components/shared/ui/VolumeControl.js.map +1 -0
  829. package/lib/components/shared/ui/shared/ConfirmDialog.d.ts +29 -0
  830. package/lib/components/shared/ui/shared/ConfirmDialog.d.ts.map +1 -0
  831. package/lib/components/shared/ui/shared/ConfirmDialog.js +149 -0
  832. package/lib/components/shared/ui/shared/ConfirmDialog.js.map +1 -0
  833. package/lib/components/test/Hello3D.d.ts +36 -0
  834. package/lib/components/test/Hello3D.d.ts.map +1 -0
  835. package/lib/components/ui/combat/BalanceIndicatorOverlayHtml.d.ts +63 -0
  836. package/lib/components/ui/combat/BalanceIndicatorOverlayHtml.d.ts.map +1 -0
  837. package/lib/components/ui/combat/BalanceIndicatorOverlayHtml.js +179 -0
  838. package/lib/components/ui/combat/BalanceIndicatorOverlayHtml.js.map +1 -0
  839. package/lib/components/ui/combat/ComboCounter.d.ts +85 -0
  840. package/lib/components/ui/combat/ComboCounter.d.ts.map +1 -0
  841. package/lib/components/ui/combat/PressureMeter.d.ts +60 -0
  842. package/lib/components/ui/combat/PressureMeter.d.ts.map +1 -0
  843. package/lib/components/ui/combat/index.d.ts +8 -0
  844. package/lib/components/ui/combat/index.d.ts.map +1 -0
  845. package/lib/constants/bodyDimensions.d.ts +241 -0
  846. package/lib/constants/bodyDimensions.d.ts.map +1 -0
  847. package/lib/constants/bodyDimensions.js +213 -0
  848. package/lib/constants/bodyDimensions.js.map +1 -0
  849. package/lib/constants/bodyRenderingConstants.d.ts +295 -0
  850. package/lib/constants/bodyRenderingConstants.d.ts.map +1 -0
  851. package/lib/constants/bodyRenderingConstants.js +128 -0
  852. package/lib/constants/bodyRenderingConstants.js.map +1 -0
  853. package/lib/data/archetypeClothing.d.ts +40 -0
  854. package/lib/data/archetypeClothing.d.ts.map +1 -0
  855. package/lib/data/archetypeClothing.js +584 -0
  856. package/lib/data/archetypeClothing.js.map +1 -0
  857. package/lib/data/archetypePhysicalAttributes.d.ts +279 -0
  858. package/lib/data/archetypePhysicalAttributes.d.ts.map +1 -0
  859. package/lib/data/archetypePhysicalAttributes.js +227 -0
  860. package/lib/data/archetypePhysicalAttributes.js.map +1 -0
  861. package/lib/data/techniqueMappings.d.ts +64 -0
  862. package/lib/data/techniqueMappings.d.ts.map +1 -0
  863. package/lib/data/techniqueMappings.js +56 -0
  864. package/lib/data/techniqueMappings.js.map +1 -0
  865. package/lib/data/techniques.d.ts +84 -0
  866. package/lib/data/techniques.d.ts.map +1 -0
  867. package/lib/data/techniques.js +739 -0
  868. package/lib/data/techniques.js.map +1 -0
  869. package/lib/hooks/useActionFeedback.d.ts +114 -0
  870. package/lib/hooks/useActionFeedback.d.ts.map +1 -0
  871. package/lib/hooks/useActionFeedback.js +158 -0
  872. package/lib/hooks/useActionFeedback.js.map +1 -0
  873. package/lib/hooks/useBalanceAnimations.d.ts +62 -0
  874. package/lib/hooks/useBalanceAnimations.d.ts.map +1 -0
  875. package/lib/hooks/useBalanceAnimations.js +133 -0
  876. package/lib/hooks/useBalanceAnimations.js.map +1 -0
  877. package/lib/hooks/useCombatTimer.d.ts +77 -0
  878. package/lib/hooks/useCombatTimer.d.ts.map +1 -0
  879. package/lib/hooks/useCombatTimer.js +139 -0
  880. package/lib/hooks/useCombatTimer.js.map +1 -0
  881. package/lib/hooks/useDebounce.d.ts +30 -0
  882. package/lib/hooks/useDebounce.d.ts.map +1 -0
  883. package/lib/hooks/useHUDLayout.d.ts +67 -0
  884. package/lib/hooks/useHUDLayout.d.ts.map +1 -0
  885. package/lib/hooks/useHUDLayout.js +92 -0
  886. package/lib/hooks/useHUDLayout.js.map +1 -0
  887. package/lib/hooks/useHandPoseTransitions.d.ts +65 -0
  888. package/lib/hooks/useHandPoseTransitions.d.ts.map +1 -0
  889. package/lib/hooks/useHandPoseTransitions.js +127 -0
  890. package/lib/hooks/useHandPoseTransitions.js.map +1 -0
  891. package/lib/hooks/useKeyboardControls.d.ts +73 -0
  892. package/lib/hooks/useKeyboardControls.d.ts.map +1 -0
  893. package/lib/hooks/useKeyboardControls.js +311 -0
  894. package/lib/hooks/useKeyboardControls.js.map +1 -0
  895. package/lib/hooks/useMatchCountdown.d.ts +87 -0
  896. package/lib/hooks/useMatchCountdown.d.ts.map +1 -0
  897. package/lib/hooks/useMatchCountdown.js +162 -0
  898. package/lib/hooks/useMatchCountdown.js.map +1 -0
  899. package/lib/hooks/useMuscleActivation.d.ts +76 -0
  900. package/lib/hooks/useMuscleActivation.d.ts.map +1 -0
  901. package/lib/hooks/useMuscleActivation.js +99 -0
  902. package/lib/hooks/useMuscleActivation.js.map +1 -0
  903. package/lib/hooks/usePauseMenu.d.ts +32 -0
  904. package/lib/hooks/usePauseMenu.d.ts.map +1 -0
  905. package/lib/hooks/usePlayerAnimation.d.ts +188 -0
  906. package/lib/hooks/usePlayerAnimation.d.ts.map +1 -0
  907. package/lib/hooks/usePlayerAnimation.js +145 -0
  908. package/lib/hooks/usePlayerAnimation.js.map +1 -0
  909. package/lib/hooks/useResponsiveLayout.d.ts +184 -0
  910. package/lib/hooks/useResponsiveLayout.d.ts.map +1 -0
  911. package/lib/hooks/useRoundTransition.d.ts +87 -0
  912. package/lib/hooks/useRoundTransition.d.ts.map +1 -0
  913. package/lib/hooks/useRoundTransition.js +158 -0
  914. package/lib/hooks/useRoundTransition.js.map +1 -0
  915. package/lib/hooks/useSkeletalAnimation.d.ts +88 -0
  916. package/lib/hooks/useSkeletalAnimation.d.ts.map +1 -0
  917. package/lib/hooks/useSkeletalAnimation.js +176 -0
  918. package/lib/hooks/useSkeletalAnimation.js.map +1 -0
  919. package/lib/hooks/useTechniqueSelection.d.ts +73 -0
  920. package/lib/hooks/useTechniqueSelection.d.ts.map +1 -0
  921. package/lib/hooks/useTechniqueSelection.js +190 -0
  922. package/lib/hooks/useTechniqueSelection.js.map +1 -0
  923. package/lib/hooks/useThrottle.d.ts +30 -0
  924. package/lib/hooks/useThrottle.d.ts.map +1 -0
  925. package/lib/hooks/useThrottle.js +61 -0
  926. package/lib/hooks/useThrottle.js.map +1 -0
  927. package/lib/hooks/useTouchControls.d.ts +107 -0
  928. package/lib/hooks/useTouchControls.d.ts.map +1 -0
  929. package/lib/hooks/useTouchControls.js +260 -0
  930. package/lib/hooks/useTouchControls.js.map +1 -0
  931. package/lib/hooks/useWebGLContextLossHandler.d.ts +77 -0
  932. package/lib/hooks/useWebGLContextLossHandler.d.ts.map +1 -0
  933. package/lib/hooks/useWebGLContextLossHandler.js +119 -0
  934. package/lib/hooks/useWebGLContextLossHandler.js.map +1 -0
  935. package/lib/hooks/useWindowSize.d.ts +60 -0
  936. package/lib/hooks/useWindowSize.d.ts.map +1 -0
  937. package/lib/hooks/useWindowSize.js +62 -0
  938. package/lib/hooks/useWindowSize.js.map +1 -0
  939. package/lib/index.d.ts +21 -0
  940. package/lib/index.d.ts.map +1 -0
  941. package/lib/index.js +114 -0
  942. package/lib/systems/CombatSystem.d.ts +348 -0
  943. package/lib/systems/CombatSystem.d.ts.map +1 -0
  944. package/lib/systems/CombatSystem.js +877 -0
  945. package/lib/systems/CombatSystem.js.map +1 -0
  946. package/lib/systems/EffectCalculator.d.ts +176 -0
  947. package/lib/systems/EffectCalculator.d.ts.map +1 -0
  948. package/lib/systems/EffectCalculator.js +251 -0
  949. package/lib/systems/EffectCalculator.js.map +1 -0
  950. package/lib/systems/LayoutSystem.d.ts +250 -0
  951. package/lib/systems/LayoutSystem.d.ts.map +1 -0
  952. package/lib/systems/LayoutSystem.js +337 -0
  953. package/lib/systems/LayoutSystem.js.map +1 -0
  954. package/lib/systems/PlayerEffectManager.d.ts +210 -0
  955. package/lib/systems/PlayerEffectManager.d.ts.map +1 -0
  956. package/lib/systems/PlayerEffectManager.js +178 -0
  957. package/lib/systems/PlayerEffectManager.js.map +1 -0
  958. package/lib/systems/ResponsiveScaling.d.ts +298 -0
  959. package/lib/systems/ResponsiveScaling.d.ts.map +1 -0
  960. package/lib/systems/ResponsiveScaling.js +376 -0
  961. package/lib/systems/ResponsiveScaling.js.map +1 -0
  962. package/lib/systems/TrigramSystem.d.ts +388 -0
  963. package/lib/systems/TrigramSystem.d.ts.map +1 -0
  964. package/lib/systems/TrigramSystem.js +512 -0
  965. package/lib/systems/TrigramSystem.js.map +1 -0
  966. package/lib/systems/VitalPointSystem.d.ts +330 -0
  967. package/lib/systems/VitalPointSystem.d.ts.map +1 -0
  968. package/lib/systems/VitalPointSystem.js +455 -0
  969. package/lib/systems/VitalPointSystem.js.map +1 -0
  970. package/lib/systems/ai/AIPersonality.d.ts +133 -0
  971. package/lib/systems/ai/AIPersonality.d.ts.map +1 -0
  972. package/lib/systems/ai/AIPersonality.js +245 -0
  973. package/lib/systems/ai/AIPersonality.js.map +1 -0
  974. package/lib/systems/ai/AdaptiveDifficulty.d.ts +159 -0
  975. package/lib/systems/ai/AdaptiveDifficulty.d.ts.map +1 -0
  976. package/lib/systems/ai/AdaptiveDifficulty.js +297 -0
  977. package/lib/systems/ai/AdaptiveDifficulty.js.map +1 -0
  978. package/lib/systems/ai/ArchetypeEnforcer.d.ts +132 -0
  979. package/lib/systems/ai/ArchetypeEnforcer.d.ts.map +1 -0
  980. package/lib/systems/ai/ArchetypeEnforcer.js +279 -0
  981. package/lib/systems/ai/ArchetypeEnforcer.js.map +1 -0
  982. package/lib/systems/ai/ComboSystem.d.ts +136 -0
  983. package/lib/systems/ai/ComboSystem.d.ts.map +1 -0
  984. package/lib/systems/ai/ComboSystem.js +384 -0
  985. package/lib/systems/ai/ComboSystem.js.map +1 -0
  986. package/lib/systems/ai/DecisionTree.d.ts +563 -0
  987. package/lib/systems/ai/DecisionTree.d.ts.map +1 -0
  988. package/lib/systems/ai/DecisionTree.js +1516 -0
  989. package/lib/systems/ai/DecisionTree.js.map +1 -0
  990. package/lib/systems/ai/TrainingAI.d.ts +132 -0
  991. package/lib/systems/ai/TrainingAI.d.ts.map +1 -0
  992. package/lib/systems/ai/TrainingAI.js +265 -0
  993. package/lib/systems/ai/TrainingAI.js.map +1 -0
  994. package/lib/systems/ai/__tests__/AI-Performance.bench.d.ts +19 -0
  995. package/lib/systems/ai/__tests__/AI-Performance.bench.d.ts.map +1 -0
  996. package/lib/systems/ai/index.d.ts +12 -0
  997. package/lib/systems/ai/index.d.ts.map +1 -0
  998. package/lib/systems/ai/index.js +7 -0
  999. package/lib/systems/ai/types.d.ts +111 -0
  1000. package/lib/systems/ai/types.d.ts.map +1 -0
  1001. package/lib/systems/ai/types.js +24 -0
  1002. package/lib/systems/ai/types.js.map +1 -0
  1003. package/lib/systems/animation/AnimationCategory.d.ts +64 -0
  1004. package/lib/systems/animation/AnimationCategory.d.ts.map +1 -0
  1005. package/lib/systems/animation/builders/AnimationBuilder.d.ts +288 -0
  1006. package/lib/systems/animation/builders/AnimationBuilder.d.ts.map +1 -0
  1007. package/lib/systems/animation/builders/AnimationBuilder.js +261 -0
  1008. package/lib/systems/animation/builders/AnimationBuilder.js.map +1 -0
  1009. package/lib/systems/animation/builders/AnimationFactoryPresets.d.ts +280 -0
  1010. package/lib/systems/animation/builders/AnimationFactoryPresets.d.ts.map +1 -0
  1011. package/lib/systems/animation/builders/AnimationFactoryPresets.js +234 -0
  1012. package/lib/systems/animation/builders/AnimationFactoryPresets.js.map +1 -0
  1013. package/lib/systems/animation/builders/HandPoseApplicator.d.ts +56 -0
  1014. package/lib/systems/animation/builders/HandPoseApplicator.d.ts.map +1 -0
  1015. package/lib/systems/animation/builders/HandPoseApplicator.js +130 -0
  1016. package/lib/systems/animation/builders/HandPoseApplicator.js.map +1 -0
  1017. package/lib/systems/animation/builders/HandPoses.d.ts +186 -0
  1018. package/lib/systems/animation/builders/HandPoses.d.ts.map +1 -0
  1019. package/lib/systems/animation/builders/HandPoses.js +509 -0
  1020. package/lib/systems/animation/builders/HandPoses.js.map +1 -0
  1021. package/lib/systems/animation/builders/KeyframeConfig.d.ts +207 -0
  1022. package/lib/systems/animation/builders/KeyframeConfig.d.ts.map +1 -0
  1023. package/lib/systems/animation/builders/KeyframeConfig.js +264 -0
  1024. package/lib/systems/animation/builders/KeyframeConfig.js.map +1 -0
  1025. package/lib/systems/animation/builders/KeyframeInterpolation.d.ts +491 -0
  1026. package/lib/systems/animation/builders/KeyframeInterpolation.d.ts.map +1 -0
  1027. package/lib/systems/animation/builders/KeyframeInterpolation.js +252 -0
  1028. package/lib/systems/animation/builders/KeyframeInterpolation.js.map +1 -0
  1029. package/lib/systems/animation/builders/KickPhaseApplicator.d.ts +119 -0
  1030. package/lib/systems/animation/builders/KickPhaseApplicator.d.ts.map +1 -0
  1031. package/lib/systems/animation/builders/KickPhaseApplicator.js +119 -0
  1032. package/lib/systems/animation/builders/KickPhaseApplicator.js.map +1 -0
  1033. package/lib/systems/animation/builders/KoreanGuardPositions.d.ts +208 -0
  1034. package/lib/systems/animation/builders/KoreanGuardPositions.d.ts.map +1 -0
  1035. package/lib/systems/animation/builders/KoreanGuardPositions.js +267 -0
  1036. package/lib/systems/animation/builders/KoreanGuardPositions.js.map +1 -0
  1037. package/lib/systems/animation/builders/MartialArtsAnimationBuilder.d.ts +1310 -0
  1038. package/lib/systems/animation/builders/MartialArtsAnimationBuilder.d.ts.map +1 -0
  1039. package/lib/systems/animation/builders/MartialArtsAnimationBuilder.js +2857 -0
  1040. package/lib/systems/animation/builders/MartialArtsAnimationBuilder.js.map +1 -0
  1041. package/lib/systems/animation/builders/MartialArtsConstants.d.ts +1034 -0
  1042. package/lib/systems/animation/builders/MartialArtsConstants.d.ts.map +1 -0
  1043. package/lib/systems/animation/builders/MartialArtsConstants.js +1644 -0
  1044. package/lib/systems/animation/builders/MartialArtsConstants.js.map +1 -0
  1045. package/lib/systems/animation/builders/MartialPoseApplicator.d.ts +54 -0
  1046. package/lib/systems/animation/builders/MartialPoseApplicator.d.ts.map +1 -0
  1047. package/lib/systems/animation/builders/MartialPoseApplicator.js +54 -0
  1048. package/lib/systems/animation/builders/MartialPoseApplicator.js.map +1 -0
  1049. package/lib/systems/animation/builders/PunchPhaseApplicator.d.ts +73 -0
  1050. package/lib/systems/animation/builders/PunchPhaseApplicator.d.ts.map +1 -0
  1051. package/lib/systems/animation/builders/PunchPhaseApplicator.js +68 -0
  1052. package/lib/systems/animation/builders/PunchPhaseApplicator.js.map +1 -0
  1053. package/lib/systems/animation/builders/SkeletonRig.d.ts +321 -0
  1054. package/lib/systems/animation/builders/SkeletonRig.d.ts.map +1 -0
  1055. package/lib/systems/animation/builders/SkeletonRig.js +330 -0
  1056. package/lib/systems/animation/builders/SkeletonRig.js.map +1 -0
  1057. package/lib/systems/animation/builders/TrigramGuardApplicator.d.ts +99 -0
  1058. package/lib/systems/animation/builders/TrigramGuardApplicator.d.ts.map +1 -0
  1059. package/lib/systems/animation/builders/TrigramGuardApplicator.js +185 -0
  1060. package/lib/systems/animation/builders/TrigramGuardApplicator.js.map +1 -0
  1061. package/lib/systems/animation/builders/index.d.ts +23 -0
  1062. package/lib/systems/animation/builders/index.d.ts.map +1 -0
  1063. package/lib/systems/animation/builders/index.js +13 -0
  1064. package/lib/systems/animation/catalogs/AttackAnimations.d.ts +523 -0
  1065. package/lib/systems/animation/catalogs/AttackAnimations.d.ts.map +1 -0
  1066. package/lib/systems/animation/catalogs/AttackAnimations.js +537 -0
  1067. package/lib/systems/animation/catalogs/AttackAnimations.js.map +1 -0
  1068. package/lib/systems/animation/catalogs/BasicAnimations.d.ts +84 -0
  1069. package/lib/systems/animation/catalogs/BasicAnimations.d.ts.map +1 -0
  1070. package/lib/systems/animation/catalogs/BasicAnimations.js +92 -0
  1071. package/lib/systems/animation/catalogs/BasicAnimations.js.map +1 -0
  1072. package/lib/systems/animation/catalogs/ComboAnimations.d.ts +370 -0
  1073. package/lib/systems/animation/catalogs/ComboAnimations.d.ts.map +1 -0
  1074. package/lib/systems/animation/catalogs/ComboAnimations.js +400 -0
  1075. package/lib/systems/animation/catalogs/ComboAnimations.js.map +1 -0
  1076. package/lib/systems/animation/catalogs/DarkOpsAnimations.d.ts +301 -0
  1077. package/lib/systems/animation/catalogs/DarkOpsAnimations.d.ts.map +1 -0
  1078. package/lib/systems/animation/catalogs/DarkOpsAnimations.js +322 -0
  1079. package/lib/systems/animation/catalogs/DarkOpsAnimations.js.map +1 -0
  1080. package/lib/systems/animation/catalogs/DefensiveAnimations.d.ts +134 -0
  1081. package/lib/systems/animation/catalogs/DefensiveAnimations.d.ts.map +1 -0
  1082. package/lib/systems/animation/catalogs/DefensiveAnimations.js +142 -0
  1083. package/lib/systems/animation/catalogs/DefensiveAnimations.js.map +1 -0
  1084. package/lib/systems/animation/catalogs/ElbowKneeAnimations.d.ts +437 -0
  1085. package/lib/systems/animation/catalogs/ElbowKneeAnimations.d.ts.map +1 -0
  1086. package/lib/systems/animation/catalogs/ElbowKneeAnimations.js +452 -0
  1087. package/lib/systems/animation/catalogs/ElbowKneeAnimations.js.map +1 -0
  1088. package/lib/systems/animation/catalogs/EnhancedAttackAnimations.d.ts +146 -0
  1089. package/lib/systems/animation/catalogs/EnhancedAttackAnimations.d.ts.map +1 -0
  1090. package/lib/systems/animation/catalogs/EnhancedAttackAnimations.js +100 -0
  1091. package/lib/systems/animation/catalogs/EnhancedAttackAnimations.js.map +1 -0
  1092. package/lib/systems/animation/catalogs/EnhancedElbowKneeAnimations.d.ts +81 -0
  1093. package/lib/systems/animation/catalogs/EnhancedElbowKneeAnimations.d.ts.map +1 -0
  1094. package/lib/systems/animation/catalogs/EnhancedElbowKneeAnimations.js +94 -0
  1095. package/lib/systems/animation/catalogs/EnhancedElbowKneeAnimations.js.map +1 -0
  1096. package/lib/systems/animation/catalogs/FootworkSkeletalAnimations.d.ts +268 -0
  1097. package/lib/systems/animation/catalogs/FootworkSkeletalAnimations.d.ts.map +1 -0
  1098. package/lib/systems/animation/catalogs/FootworkSkeletalAnimations.js +196 -0
  1099. package/lib/systems/animation/catalogs/FootworkSkeletalAnimations.js.map +1 -0
  1100. package/lib/systems/animation/catalogs/GamRedirectionAnimations.d.ts +64 -0
  1101. package/lib/systems/animation/catalogs/GamRedirectionAnimations.d.ts.map +1 -0
  1102. package/lib/systems/animation/catalogs/GamRedirectionAnimations.js +68 -0
  1103. package/lib/systems/animation/catalogs/GamRedirectionAnimations.js.map +1 -0
  1104. package/lib/systems/animation/catalogs/GamStanceAnimations.d.ts +111 -0
  1105. package/lib/systems/animation/catalogs/GamStanceAnimations.d.ts.map +1 -0
  1106. package/lib/systems/animation/catalogs/GamStanceAnimations.js +9 -0
  1107. package/lib/systems/animation/catalogs/GamStanceAnimations.js.map +1 -0
  1108. package/lib/systems/animation/catalogs/GamTechniqueAnimations.d.ts +82 -0
  1109. package/lib/systems/animation/catalogs/GamTechniqueAnimations.d.ts.map +1 -0
  1110. package/lib/systems/animation/catalogs/GamTechniqueAnimations.js +55 -0
  1111. package/lib/systems/animation/catalogs/GamTechniqueAnimations.js.map +1 -0
  1112. package/lib/systems/animation/catalogs/GanStanceAnimations.d.ts +122 -0
  1113. package/lib/systems/animation/catalogs/GanStanceAnimations.d.ts.map +1 -0
  1114. package/lib/systems/animation/catalogs/GanStanceAnimations.js +135 -0
  1115. package/lib/systems/animation/catalogs/GanStanceAnimations.js.map +1 -0
  1116. package/lib/systems/animation/catalogs/GanTechniqueAnimations.d.ts +78 -0
  1117. package/lib/systems/animation/catalogs/GanTechniqueAnimations.d.ts.map +1 -0
  1118. package/lib/systems/animation/catalogs/GanTechniqueAnimations.js +83 -0
  1119. package/lib/systems/animation/catalogs/GanTechniqueAnimations.js.map +1 -0
  1120. package/lib/systems/animation/catalogs/GeonStanceAnimations.d.ts +323 -0
  1121. package/lib/systems/animation/catalogs/GeonStanceAnimations.d.ts.map +1 -0
  1122. package/lib/systems/animation/catalogs/GeonStanceAnimations.js +341 -0
  1123. package/lib/systems/animation/catalogs/GeonStanceAnimations.js.map +1 -0
  1124. package/lib/systems/animation/catalogs/GonGuardPoses.d.ts +84 -0
  1125. package/lib/systems/animation/catalogs/GonGuardPoses.d.ts.map +1 -0
  1126. package/lib/systems/animation/catalogs/GonGuardPoses.js +6 -0
  1127. package/lib/systems/animation/catalogs/GonGuardPoses.js.map +1 -0
  1128. package/lib/systems/animation/catalogs/GonStanceAnimations.d.ts +134 -0
  1129. package/lib/systems/animation/catalogs/GonStanceAnimations.d.ts.map +1 -0
  1130. package/lib/systems/animation/catalogs/GonStanceAnimations.js +9 -0
  1131. package/lib/systems/animation/catalogs/GonStanceAnimations.js.map +1 -0
  1132. package/lib/systems/animation/catalogs/GonTechniqueAnimations.d.ts +265 -0
  1133. package/lib/systems/animation/catalogs/GonTechniqueAnimations.d.ts.map +1 -0
  1134. package/lib/systems/animation/catalogs/GonTechniqueAnimations.js +13 -0
  1135. package/lib/systems/animation/catalogs/GonTechniqueAnimations.js.map +1 -0
  1136. package/lib/systems/animation/catalogs/GrapplingAnimations.d.ts +452 -0
  1137. package/lib/systems/animation/catalogs/GrapplingAnimations.d.ts.map +1 -0
  1138. package/lib/systems/animation/catalogs/GrapplingAnimations.js +475 -0
  1139. package/lib/systems/animation/catalogs/GrapplingAnimations.js.map +1 -0
  1140. package/lib/systems/animation/catalogs/JinStanceAnimations.d.ts +98 -0
  1141. package/lib/systems/animation/catalogs/JinStanceAnimations.d.ts.map +1 -0
  1142. package/lib/systems/animation/catalogs/JinStanceAnimations.js +111 -0
  1143. package/lib/systems/animation/catalogs/JinStanceAnimations.js.map +1 -0
  1144. package/lib/systems/animation/catalogs/JinTechniqueAnimations.d.ts +80 -0
  1145. package/lib/systems/animation/catalogs/JinTechniqueAnimations.d.ts.map +1 -0
  1146. package/lib/systems/animation/catalogs/JinTechniqueAnimations.js +89 -0
  1147. package/lib/systems/animation/catalogs/JinTechniqueAnimations.js.map +1 -0
  1148. package/lib/systems/animation/catalogs/KickAnimations.d.ts +916 -0
  1149. package/lib/systems/animation/catalogs/KickAnimations.d.ts.map +1 -0
  1150. package/lib/systems/animation/catalogs/KickAnimations.js +929 -0
  1151. package/lib/systems/animation/catalogs/KickAnimations.js.map +1 -0
  1152. package/lib/systems/animation/catalogs/LiStanceAnimations.d.ts +140 -0
  1153. package/lib/systems/animation/catalogs/LiStanceAnimations.d.ts.map +1 -0
  1154. package/lib/systems/animation/catalogs/LiStanceAnimations.js +122 -0
  1155. package/lib/systems/animation/catalogs/LiStanceAnimations.js.map +1 -0
  1156. package/lib/systems/animation/catalogs/LiTechniqueAnimations.d.ts +104 -0
  1157. package/lib/systems/animation/catalogs/LiTechniqueAnimations.d.ts.map +1 -0
  1158. package/lib/systems/animation/catalogs/LiTechniqueAnimations.js +90 -0
  1159. package/lib/systems/animation/catalogs/LiTechniqueAnimations.js.map +1 -0
  1160. package/lib/systems/animation/catalogs/MovementAnimations.d.ts +344 -0
  1161. package/lib/systems/animation/catalogs/MovementAnimations.d.ts.map +1 -0
  1162. package/lib/systems/animation/catalogs/MovementAnimations.js +371 -0
  1163. package/lib/systems/animation/catalogs/MovementAnimations.js.map +1 -0
  1164. package/lib/systems/animation/catalogs/PunchAnimations.d.ts +496 -0
  1165. package/lib/systems/animation/catalogs/PunchAnimations.d.ts.map +1 -0
  1166. package/lib/systems/animation/catalogs/PunchAnimations.js +498 -0
  1167. package/lib/systems/animation/catalogs/PunchAnimations.js.map +1 -0
  1168. package/lib/systems/animation/catalogs/RecoveryAnimations.d.ts +184 -0
  1169. package/lib/systems/animation/catalogs/RecoveryAnimations.d.ts.map +1 -0
  1170. package/lib/systems/animation/catalogs/RecoveryAnimations.js +465 -0
  1171. package/lib/systems/animation/catalogs/RecoveryAnimations.js.map +1 -0
  1172. package/lib/systems/animation/catalogs/SonStanceAnimations.d.ts +149 -0
  1173. package/lib/systems/animation/catalogs/SonStanceAnimations.d.ts.map +1 -0
  1174. package/lib/systems/animation/catalogs/SonStanceAnimations.js +131 -0
  1175. package/lib/systems/animation/catalogs/SonStanceAnimations.js.map +1 -0
  1176. package/lib/systems/animation/catalogs/SonTechniqueAnimations.d.ts +90 -0
  1177. package/lib/systems/animation/catalogs/SonTechniqueAnimations.d.ts.map +1 -0
  1178. package/lib/systems/animation/catalogs/SonTechniqueAnimations.js +95 -0
  1179. package/lib/systems/animation/catalogs/SonTechniqueAnimations.js.map +1 -0
  1180. package/lib/systems/animation/catalogs/SpecializedPunchAnimations.d.ts +178 -0
  1181. package/lib/systems/animation/catalogs/SpecializedPunchAnimations.d.ts.map +1 -0
  1182. package/lib/systems/animation/catalogs/SpecializedPunchAnimations.js +188 -0
  1183. package/lib/systems/animation/catalogs/SpecializedPunchAnimations.js.map +1 -0
  1184. package/lib/systems/animation/catalogs/StanceAnimations.d.ts +687 -0
  1185. package/lib/systems/animation/catalogs/StanceAnimations.d.ts.map +1 -0
  1186. package/lib/systems/animation/catalogs/StanceAnimations.js +840 -0
  1187. package/lib/systems/animation/catalogs/StanceAnimations.js.map +1 -0
  1188. package/lib/systems/animation/catalogs/StanceAttackAnimations.d.ts +483 -0
  1189. package/lib/systems/animation/catalogs/StanceAttackAnimations.d.ts.map +1 -0
  1190. package/lib/systems/animation/catalogs/StanceAttackAnimations.js +2369 -0
  1191. package/lib/systems/animation/catalogs/StanceAttackAnimations.js.map +1 -0
  1192. package/lib/systems/animation/catalogs/StanceGuardPoses.d.ts +327 -0
  1193. package/lib/systems/animation/catalogs/StanceGuardPoses.d.ts.map +1 -0
  1194. package/lib/systems/animation/catalogs/StanceGuardPoses.js +655 -0
  1195. package/lib/systems/animation/catalogs/StanceGuardPoses.js.map +1 -0
  1196. package/lib/systems/animation/catalogs/StanceIdleAnimations.d.ts +255 -0
  1197. package/lib/systems/animation/catalogs/StanceIdleAnimations.d.ts.map +1 -0
  1198. package/lib/systems/animation/catalogs/StanceIdleAnimations.js +446 -0
  1199. package/lib/systems/animation/catalogs/StanceIdleAnimations.js.map +1 -0
  1200. package/lib/systems/animation/catalogs/StanceLocomotionAnimations.d.ts +207 -0
  1201. package/lib/systems/animation/catalogs/StanceLocomotionAnimations.d.ts.map +1 -0
  1202. package/lib/systems/animation/catalogs/StanceLocomotionAnimations.js +309 -0
  1203. package/lib/systems/animation/catalogs/StanceLocomotionAnimations.js.map +1 -0
  1204. package/lib/systems/animation/catalogs/StepAnimations.d.ts +274 -0
  1205. package/lib/systems/animation/catalogs/StepAnimations.d.ts.map +1 -0
  1206. package/lib/systems/animation/catalogs/StepAnimations.js +73 -0
  1207. package/lib/systems/animation/catalogs/StepAnimations.js.map +1 -0
  1208. package/lib/systems/animation/catalogs/StepSkeletalAnimations.d.ts +100 -0
  1209. package/lib/systems/animation/catalogs/StepSkeletalAnimations.d.ts.map +1 -0
  1210. package/lib/systems/animation/catalogs/StepSkeletalAnimations.js +99 -0
  1211. package/lib/systems/animation/catalogs/StepSkeletalAnimations.js.map +1 -0
  1212. package/lib/systems/animation/catalogs/TaeJointLockAnimations.d.ts +170 -0
  1213. package/lib/systems/animation/catalogs/TaeJointLockAnimations.d.ts.map +1 -0
  1214. package/lib/systems/animation/catalogs/TaeJointLockAnimations.js +141 -0
  1215. package/lib/systems/animation/catalogs/TaeJointLockAnimations.js.map +1 -0
  1216. package/lib/systems/animation/catalogs/TaeStanceAnimations.d.ts +120 -0
  1217. package/lib/systems/animation/catalogs/TaeStanceAnimations.d.ts.map +1 -0
  1218. package/lib/systems/animation/catalogs/TaeStanceAnimations.js +139 -0
  1219. package/lib/systems/animation/catalogs/TaeStanceAnimations.js.map +1 -0
  1220. package/lib/systems/animation/catalogs/index.d.ts +43 -0
  1221. package/lib/systems/animation/catalogs/index.d.ts.map +1 -0
  1222. package/lib/systems/animation/catalogs/index.js +36 -0
  1223. package/lib/systems/animation/constants/AnatomicalLimits.d.ts +234 -0
  1224. package/lib/systems/animation/constants/AnatomicalLimits.d.ts.map +1 -0
  1225. package/lib/systems/animation/constants/AnatomicalLimits.js +61 -0
  1226. package/lib/systems/animation/constants/AnatomicalLimits.js.map +1 -0
  1227. package/lib/systems/animation/constants/index.d.ts +13 -0
  1228. package/lib/systems/animation/constants/index.d.ts.map +1 -0
  1229. package/lib/systems/animation/core/AnimationHitTiming.d.ts +184 -0
  1230. package/lib/systems/animation/core/AnimationHitTiming.d.ts.map +1 -0
  1231. package/lib/systems/animation/core/AnimationHitTiming.js +766 -0
  1232. package/lib/systems/animation/core/AnimationHitTiming.js.map +1 -0
  1233. package/lib/systems/animation/core/AnimationOptimizations.d.ts +221 -0
  1234. package/lib/systems/animation/core/AnimationOptimizations.d.ts.map +1 -0
  1235. package/lib/systems/animation/core/AnimationOptimizations.js +322 -0
  1236. package/lib/systems/animation/core/AnimationOptimizations.js.map +1 -0
  1237. package/lib/systems/animation/core/AnimationPriority.d.ts +391 -0
  1238. package/lib/systems/animation/core/AnimationPriority.d.ts.map +1 -0
  1239. package/lib/systems/animation/core/AnimationPriority.js +349 -0
  1240. package/lib/systems/animation/core/AnimationPriority.js.map +1 -0
  1241. package/lib/systems/animation/core/AnimationRegistry.d.ts +220 -0
  1242. package/lib/systems/animation/core/AnimationRegistry.d.ts.map +1 -0
  1243. package/lib/systems/animation/core/AnimationRegistry.js +416 -0
  1244. package/lib/systems/animation/core/AnimationRegistry.js.map +1 -0
  1245. package/lib/systems/animation/core/AnimationStateMachine.d.ts +701 -0
  1246. package/lib/systems/animation/core/AnimationStateMachine.d.ts.map +1 -0
  1247. package/lib/systems/animation/core/AnimationStateMachine.js +1458 -0
  1248. package/lib/systems/animation/core/AnimationStateMachine.js.map +1 -0
  1249. package/lib/systems/animation/core/AnimationTransitions.d.ts +275 -0
  1250. package/lib/systems/animation/core/AnimationTransitions.d.ts.map +1 -0
  1251. package/lib/systems/animation/core/AnimationTransitions.js +920 -0
  1252. package/lib/systems/animation/core/AnimationTransitions.js.map +1 -0
  1253. package/lib/systems/animation/core/LateralityTransform.d.ts +120 -0
  1254. package/lib/systems/animation/core/LateralityTransform.d.ts.map +1 -0
  1255. package/lib/systems/animation/core/LateralityTransform.js +204 -0
  1256. package/lib/systems/animation/core/LateralityTransform.js.map +1 -0
  1257. package/lib/systems/animation/core/RecoveryPhaseEnhancer.d.ts +171 -0
  1258. package/lib/systems/animation/core/RecoveryPhaseEnhancer.d.ts.map +1 -0
  1259. package/lib/systems/animation/core/RecoveryPhaseEnhancer.js +122 -0
  1260. package/lib/systems/animation/core/RecoveryPhaseEnhancer.js.map +1 -0
  1261. package/lib/systems/animation/core/TechniqueAnimationMapper.d.ts +303 -0
  1262. package/lib/systems/animation/core/TechniqueAnimationMapper.d.ts.map +1 -0
  1263. package/lib/systems/animation/core/TechniqueAnimationMapper.js +770 -0
  1264. package/lib/systems/animation/core/TechniqueAnimationMapper.js.map +1 -0
  1265. package/lib/systems/animation/core/TechniqueAnimationMapping.d.ts +74 -0
  1266. package/lib/systems/animation/core/TechniqueAnimationMapping.d.ts.map +1 -0
  1267. package/lib/systems/animation/core/TechniqueAnimationMapping.js +1313 -0
  1268. package/lib/systems/animation/core/TechniqueAnimationMapping.js.map +1 -0
  1269. package/lib/systems/animation/core/TrigramAnimationMapping.d.ts +286 -0
  1270. package/lib/systems/animation/core/TrigramAnimationMapping.d.ts.map +1 -0
  1271. package/lib/systems/animation/core/TrigramAnimationMapping.js +6 -0
  1272. package/lib/systems/animation/core/TrigramStanceTransitions.d.ts +186 -0
  1273. package/lib/systems/animation/core/TrigramStanceTransitions.d.ts.map +1 -0
  1274. package/lib/systems/animation/core/TrigramStanceTransitions.js +8 -0
  1275. package/lib/systems/animation/core/TrigramStanceTransitions.js.map +1 -0
  1276. package/lib/systems/animation/core/index.d.ts +23 -0
  1277. package/lib/systems/animation/core/index.d.ts.map +1 -0
  1278. package/lib/systems/animation/core/index.js +16 -0
  1279. package/lib/systems/animation/core/types.d.ts +1360 -0
  1280. package/lib/systems/animation/core/types.d.ts.map +1 -0
  1281. package/lib/systems/animation/core/types.js +539 -0
  1282. package/lib/systems/animation/core/types.js.map +1 -0
  1283. package/lib/systems/animation/index.d.ts +16 -0
  1284. package/lib/systems/animation/index.d.ts.map +1 -0
  1285. package/lib/systems/animation/index.js +63 -0
  1286. package/lib/systems/animation/systems/AdvancedJointMovements.d.ts +614 -0
  1287. package/lib/systems/animation/systems/AdvancedJointMovements.d.ts.map +1 -0
  1288. package/lib/systems/animation/systems/AdvancedJointMovements.js +95 -0
  1289. package/lib/systems/animation/systems/AdvancedJointMovements.js.map +1 -0
  1290. package/lib/systems/animation/systems/BodyFacingSystem.d.ts +331 -0
  1291. package/lib/systems/animation/systems/BodyFacingSystem.d.ts.map +1 -0
  1292. package/lib/systems/animation/systems/BodyFacingSystem.js +327 -0
  1293. package/lib/systems/animation/systems/BodyFacingSystem.js.map +1 -0
  1294. package/lib/systems/animation/systems/FacialExpressions.d.ts +167 -0
  1295. package/lib/systems/animation/systems/FacialExpressions.d.ts.map +1 -0
  1296. package/lib/systems/animation/systems/FacialExpressions.js +76 -0
  1297. package/lib/systems/animation/systems/FacialExpressions.js.map +1 -0
  1298. package/lib/systems/animation/systems/FallAnimations.d.ts +174 -0
  1299. package/lib/systems/animation/systems/FallAnimations.d.ts.map +1 -0
  1300. package/lib/systems/animation/systems/FallAnimations.js +104 -0
  1301. package/lib/systems/animation/systems/FallAnimations.js.map +1 -0
  1302. package/lib/systems/animation/systems/HeadMovements.d.ts +152 -0
  1303. package/lib/systems/animation/systems/HeadMovements.d.ts.map +1 -0
  1304. package/lib/systems/animation/systems/HeadMovements.js +2 -0
  1305. package/lib/systems/animation/systems/MuscleActivation.d.ts +163 -0
  1306. package/lib/systems/animation/systems/MuscleActivation.d.ts.map +1 -0
  1307. package/lib/systems/animation/systems/MuscleActivation.js +427 -0
  1308. package/lib/systems/animation/systems/MuscleActivation.js.map +1 -0
  1309. package/lib/systems/animation/systems/RecoveryVisualization.d.ts +142 -0
  1310. package/lib/systems/animation/systems/RecoveryVisualization.d.ts.map +1 -0
  1311. package/lib/systems/animation/systems/RecoveryVisualization.js +1 -0
  1312. package/lib/systems/animation/systems/index.d.ts +17 -0
  1313. package/lib/systems/animation/systems/index.d.ts.map +1 -0
  1314. package/lib/systems/animation/systems/index.js +7 -0
  1315. package/lib/systems/animation/utils/AnimationMirror.d.ts +157 -0
  1316. package/lib/systems/animation/utils/AnimationMirror.d.ts.map +1 -0
  1317. package/lib/systems/animation/utils/AnimationMirror.js +30 -0
  1318. package/lib/systems/animation/utils/AnimationMirror.js.map +1 -0
  1319. package/lib/systems/audio/BoneImpactAudioSystem.d.ts +182 -0
  1320. package/lib/systems/audio/BoneImpactAudioSystem.d.ts.map +1 -0
  1321. package/lib/systems/audio/index.d.ts +7 -0
  1322. package/lib/systems/audio/index.d.ts.map +1 -0
  1323. package/lib/systems/bodypart/BodyPartDamageIntegration.d.ts +149 -0
  1324. package/lib/systems/bodypart/BodyPartDamageIntegration.d.ts.map +1 -0
  1325. package/lib/systems/bodypart/BodyPartDamageIntegration.js +38 -0
  1326. package/lib/systems/bodypart/BodyPartDamageIntegration.js.map +1 -0
  1327. package/lib/systems/bodypart/BodyPartHealthSystem.d.ts +233 -0
  1328. package/lib/systems/bodypart/BodyPartHealthSystem.d.ts.map +1 -0
  1329. package/lib/systems/bodypart/BodyPartHealthSystem.js +476 -0
  1330. package/lib/systems/bodypart/BodyPartHealthSystem.js.map +1 -0
  1331. package/lib/systems/bodypart/BodyPartPositionMapping.d.ts +116 -0
  1332. package/lib/systems/bodypart/BodyPartPositionMapping.d.ts.map +1 -0
  1333. package/lib/systems/bodypart/BodyPartPositionMapping.js +122 -0
  1334. package/lib/systems/bodypart/BodyPartPositionMapping.js.map +1 -0
  1335. package/lib/systems/bodypart/CombatInjuryIntegration.d.ts +191 -0
  1336. package/lib/systems/bodypart/CombatInjuryIntegration.d.ts.map +1 -0
  1337. package/lib/systems/bodypart/CombatInjuryIntegration.js +169 -0
  1338. package/lib/systems/bodypart/CombatInjuryIntegration.js.map +1 -0
  1339. package/lib/systems/bodypart/InjuryIntegration.d.ts +39 -0
  1340. package/lib/systems/bodypart/InjuryIntegration.d.ts.map +1 -0
  1341. package/lib/systems/bodypart/InjuryTracker.d.ts +256 -0
  1342. package/lib/systems/bodypart/InjuryTracker.d.ts.map +1 -0
  1343. package/lib/systems/bodypart/InjuryTracker.js +240 -0
  1344. package/lib/systems/bodypart/InjuryTracker.js.map +1 -0
  1345. package/lib/systems/bodypart/MovementPenaltySystem.d.ts +191 -0
  1346. package/lib/systems/bodypart/MovementPenaltySystem.d.ts.map +1 -0
  1347. package/lib/systems/bodypart/MovementPenaltySystem.js +255 -0
  1348. package/lib/systems/bodypart/MovementPenaltySystem.js.map +1 -0
  1349. package/lib/systems/bodypart/PlayerInjuryTrackingManager.d.ts +137 -0
  1350. package/lib/systems/bodypart/PlayerInjuryTrackingManager.d.ts.map +1 -0
  1351. package/lib/systems/bodypart/PlayerInjuryTrackingManager.js +175 -0
  1352. package/lib/systems/bodypart/PlayerInjuryTrackingManager.js.map +1 -0
  1353. package/lib/systems/bodypart/index.d.ts +22 -0
  1354. package/lib/systems/bodypart/index.d.ts.map +1 -0
  1355. package/lib/systems/bodypart/index.js +8 -0
  1356. package/lib/systems/bodypart/types.d.ts +453 -0
  1357. package/lib/systems/bodypart/types.d.ts.map +1 -0
  1358. package/lib/systems/bodypart/types.js +157 -0
  1359. package/lib/systems/bodypart/types.js.map +1 -0
  1360. package/lib/systems/breathing/BreathingDisruptionSystem.d.ts +289 -0
  1361. package/lib/systems/breathing/BreathingDisruptionSystem.d.ts.map +1 -0
  1362. package/lib/systems/breathing/BreathingDisruptionSystem.js +388 -0
  1363. package/lib/systems/breathing/BreathingDisruptionSystem.js.map +1 -0
  1364. package/lib/systems/breathing/feedback.d.ts +131 -0
  1365. package/lib/systems/breathing/feedback.d.ts.map +1 -0
  1366. package/lib/systems/breathing/feedback.js +80 -0
  1367. package/lib/systems/breathing/feedback.js.map +1 -0
  1368. package/lib/systems/breathing/index.d.ts +12 -0
  1369. package/lib/systems/breathing/index.d.ts.map +1 -0
  1370. package/lib/systems/breathing/index.js +3 -0
  1371. package/lib/systems/breathing/integration.d.ts +140 -0
  1372. package/lib/systems/breathing/integration.d.ts.map +1 -0
  1373. package/lib/systems/breathing/integration.js +194 -0
  1374. package/lib/systems/breathing/integration.js.map +1 -0
  1375. package/lib/systems/combat/AICounterAttackIntegration.d.ts +223 -0
  1376. package/lib/systems/combat/AICounterAttackIntegration.d.ts.map +1 -0
  1377. package/lib/systems/combat/BalanceSystem.d.ts +667 -0
  1378. package/lib/systems/combat/BalanceSystem.d.ts.map +1 -0
  1379. package/lib/systems/combat/BalanceSystem.js +811 -0
  1380. package/lib/systems/combat/BalanceSystem.js.map +1 -0
  1381. package/lib/systems/combat/BreakingStatusEffects.d.ts +96 -0
  1382. package/lib/systems/combat/BreakingStatusEffects.d.ts.map +1 -0
  1383. package/lib/systems/combat/BreakingStatusEffects.js +60 -0
  1384. package/lib/systems/combat/BreakingStatusEffects.js.map +1 -0
  1385. package/lib/systems/combat/CombatStateSystem.d.ts +264 -0
  1386. package/lib/systems/combat/CombatStateSystem.d.ts.map +1 -0
  1387. package/lib/systems/combat/CombatStateSystem.js +353 -0
  1388. package/lib/systems/combat/CombatStateSystem.js.map +1 -0
  1389. package/lib/systems/combat/ConsciousnessSystem.d.ts +402 -0
  1390. package/lib/systems/combat/ConsciousnessSystem.d.ts.map +1 -0
  1391. package/lib/systems/combat/ConsciousnessSystem.js +529 -0
  1392. package/lib/systems/combat/ConsciousnessSystem.js.map +1 -0
  1393. package/lib/systems/combat/FallIntegration.d.ts +82 -0
  1394. package/lib/systems/combat/FallIntegration.d.ts.map +1 -0
  1395. package/lib/systems/combat/FallIntegration.js +100 -0
  1396. package/lib/systems/combat/FallIntegration.js.map +1 -0
  1397. package/lib/systems/combat/GrappleSystem.d.ts +264 -0
  1398. package/lib/systems/combat/GrappleSystem.d.ts.map +1 -0
  1399. package/lib/systems/combat/GrappleSystem.js +393 -0
  1400. package/lib/systems/combat/GrappleSystem.js.map +1 -0
  1401. package/lib/systems/combat/LimbExposureSystem.d.ts +150 -0
  1402. package/lib/systems/combat/LimbExposureSystem.d.ts.map +1 -0
  1403. package/lib/systems/combat/LimbExposureSystem.js +308 -0
  1404. package/lib/systems/combat/LimbExposureSystem.js.map +1 -0
  1405. package/lib/systems/combat/PainResponseSystem.d.ts +299 -0
  1406. package/lib/systems/combat/PainResponseSystem.d.ts.map +1 -0
  1407. package/lib/systems/combat/PainResponseSystem.js +401 -0
  1408. package/lib/systems/combat/PainResponseSystem.js.map +1 -0
  1409. package/lib/systems/combat/SlowMotionController.d.ts +123 -0
  1410. package/lib/systems/combat/SlowMotionController.d.ts.map +1 -0
  1411. package/lib/systems/combat/TrainingCombatSystem.d.ts +89 -0
  1412. package/lib/systems/combat/TrainingCombatSystem.d.ts.map +1 -0
  1413. package/lib/systems/combat/TrainingCombatSystem.js +224 -0
  1414. package/lib/systems/combat/TrainingCombatSystem.js.map +1 -0
  1415. package/lib/systems/combat/index.d.ts +16 -0
  1416. package/lib/systems/combat/index.d.ts.map +1 -0
  1417. package/lib/systems/combat/index.js +10 -0
  1418. package/lib/systems/combat/painConsciousnessUtils.d.ts +147 -0
  1419. package/lib/systems/combat/painConsciousnessUtils.d.ts.map +1 -0
  1420. package/lib/systems/combat/painConsciousnessUtils.js +185 -0
  1421. package/lib/systems/combat/painConsciousnessUtils.js.map +1 -0
  1422. package/lib/systems/combat/typeGuards.d.ts +25 -0
  1423. package/lib/systems/combat/typeGuards.d.ts.map +1 -0
  1424. package/lib/systems/combat/typeGuards.js +39 -0
  1425. package/lib/systems/combat/typeGuards.js.map +1 -0
  1426. package/lib/systems/combat/types.d.ts +197 -0
  1427. package/lib/systems/combat/types.d.ts.map +1 -0
  1428. package/lib/systems/effects.d.ts +40 -0
  1429. package/lib/systems/effects.d.ts.map +1 -0
  1430. package/lib/systems/effects.js +44 -0
  1431. package/lib/systems/effects.js.map +1 -0
  1432. package/lib/systems/game.d.ts +77 -0
  1433. package/lib/systems/game.d.ts.map +1 -0
  1434. package/lib/systems/game.js +20 -0
  1435. package/lib/systems/game.js.map +1 -0
  1436. package/lib/systems/index.d.ts +24 -0
  1437. package/lib/systems/index.d.ts.map +1 -0
  1438. package/lib/systems/index.js +281 -0
  1439. package/lib/systems/index.js.map +1 -0
  1440. package/lib/systems/movement/InjuryMovementModifier.d.ts +275 -0
  1441. package/lib/systems/movement/InjuryMovementModifier.d.ts.map +1 -0
  1442. package/lib/systems/movement/InjuryMovementModifier.js +281 -0
  1443. package/lib/systems/movement/InjuryMovementModifier.js.map +1 -0
  1444. package/lib/systems/movement/helpers/AccelerationUpdater.d.ts +61 -0
  1445. package/lib/systems/movement/helpers/AccelerationUpdater.d.ts.map +1 -0
  1446. package/lib/systems/movement/helpers/AccelerationUpdater.js +75 -0
  1447. package/lib/systems/movement/helpers/AccelerationUpdater.js.map +1 -0
  1448. package/lib/systems/movement/helpers/accelerationUtils.d.ts +85 -0
  1449. package/lib/systems/movement/helpers/accelerationUtils.d.ts.map +1 -0
  1450. package/lib/systems/movement/helpers/accelerationUtils.js +86 -0
  1451. package/lib/systems/movement/helpers/accelerationUtils.js.map +1 -0
  1452. package/lib/systems/movement/index.d.ts +16 -0
  1453. package/lib/systems/movement/index.d.ts.map +1 -0
  1454. package/lib/systems/movement/integration.d.ts +91 -0
  1455. package/lib/systems/movement/integration.d.ts.map +1 -0
  1456. package/lib/systems/physics/AttackMovementPhysics.d.ts +283 -0
  1457. package/lib/systems/physics/AttackMovementPhysics.d.ts.map +1 -0
  1458. package/lib/systems/physics/AttackMovementPhysics.js +272 -0
  1459. package/lib/systems/physics/AttackMovementPhysics.js.map +1 -0
  1460. package/lib/systems/physics/CollisionDetection.d.ts +323 -0
  1461. package/lib/systems/physics/CollisionDetection.d.ts.map +1 -0
  1462. package/lib/systems/physics/CollisionDetection.js +543 -0
  1463. package/lib/systems/physics/CollisionDetection.js.map +1 -0
  1464. package/lib/systems/physics/CoordinateMapper.d.ts +203 -0
  1465. package/lib/systems/physics/CoordinateMapper.d.ts.map +1 -0
  1466. package/lib/systems/physics/CoordinateMapper.js +242 -0
  1467. package/lib/systems/physics/CoordinateMapper.js.map +1 -0
  1468. package/lib/systems/physics/KnockbackPhysics.d.ts +367 -0
  1469. package/lib/systems/physics/KnockbackPhysics.d.ts.map +1 -0
  1470. package/lib/systems/physics/KnockbackPhysics.js +338 -0
  1471. package/lib/systems/physics/KnockbackPhysics.js.map +1 -0
  1472. package/lib/systems/physics/MovementPhysics.d.ts +428 -0
  1473. package/lib/systems/physics/MovementPhysics.d.ts.map +1 -0
  1474. package/lib/systems/physics/MovementPhysics.js +488 -0
  1475. package/lib/systems/physics/MovementPhysics.js.map +1 -0
  1476. package/lib/systems/physics/PhysicalReachCalculator.d.ts +261 -0
  1477. package/lib/systems/physics/PhysicalReachCalculator.d.ts.map +1 -0
  1478. package/lib/systems/physics/PhysicalReachCalculator.js +226 -0
  1479. package/lib/systems/physics/PhysicalReachCalculator.js.map +1 -0
  1480. package/lib/systems/physics/SpeedModifierSystem.d.ts +302 -0
  1481. package/lib/systems/physics/SpeedModifierSystem.d.ts.map +1 -0
  1482. package/lib/systems/physics/SpeedModifierSystem.js +301 -0
  1483. package/lib/systems/physics/SpeedModifierSystem.js.map +1 -0
  1484. package/lib/systems/physics/__tests__/PhysicsPerformance.bench.d.ts +16 -0
  1485. package/lib/systems/physics/__tests__/PhysicsPerformance.bench.d.ts.map +1 -0
  1486. package/lib/systems/physics/index.d.ts +21 -0
  1487. package/lib/systems/physics/index.d.ts.map +1 -0
  1488. package/lib/systems/physics/index.js +7 -0
  1489. package/lib/systems/player.d.ts +386 -0
  1490. package/lib/systems/player.d.ts.map +1 -0
  1491. package/lib/systems/trigram/KoreanCulture.d.ts +127 -0
  1492. package/lib/systems/trigram/KoreanCulture.d.ts.map +1 -0
  1493. package/lib/systems/trigram/KoreanCulture.js +194 -0
  1494. package/lib/systems/trigram/KoreanCulture.js.map +1 -0
  1495. package/lib/systems/trigram/KoreanTechniques.d.ts +59 -0
  1496. package/lib/systems/trigram/KoreanTechniques.d.ts.map +1 -0
  1497. package/lib/systems/trigram/KoreanTechniques.js +140 -0
  1498. package/lib/systems/trigram/KoreanTechniques.js.map +1 -0
  1499. package/lib/systems/trigram/StanceManager.d.ts +90 -0
  1500. package/lib/systems/trigram/StanceManager.d.ts.map +1 -0
  1501. package/lib/systems/trigram/StanceManager.js +192 -0
  1502. package/lib/systems/trigram/StanceManager.js.map +1 -0
  1503. package/lib/systems/trigram/TransitionCalculator.d.ts +132 -0
  1504. package/lib/systems/trigram/TransitionCalculator.d.ts.map +1 -0
  1505. package/lib/systems/trigram/TransitionCalculator.js +233 -0
  1506. package/lib/systems/trigram/TransitionCalculator.js.map +1 -0
  1507. package/lib/systems/trigram/TrigramCalculator.d.ts +63 -0
  1508. package/lib/systems/trigram/TrigramCalculator.d.ts.map +1 -0
  1509. package/lib/systems/trigram/TrigramCalculator.js +148 -0
  1510. package/lib/systems/trigram/TrigramCalculator.js.map +1 -0
  1511. package/lib/systems/trigram/index.d.ts +12 -0
  1512. package/lib/systems/trigram/index.d.ts.map +1 -0
  1513. package/lib/systems/trigram/index.js +17 -0
  1514. package/lib/systems/trigram/techniques/DarkOpsTechniques.d.ts +118 -0
  1515. package/lib/systems/trigram/techniques/DarkOpsTechniques.d.ts.map +1 -0
  1516. package/lib/systems/trigram/techniques/DarkOpsTechniques.js +683 -0
  1517. package/lib/systems/trigram/techniques/DarkOpsTechniques.js.map +1 -0
  1518. package/lib/systems/trigram/techniques/GamTechniques.d.ts +44 -0
  1519. package/lib/systems/trigram/techniques/GamTechniques.d.ts.map +1 -0
  1520. package/lib/systems/trigram/techniques/GamTechniques.js +293 -0
  1521. package/lib/systems/trigram/techniques/GamTechniques.js.map +1 -0
  1522. package/lib/systems/trigram/techniques/GanTechniques.d.ts +58 -0
  1523. package/lib/systems/trigram/techniques/GanTechniques.d.ts.map +1 -0
  1524. package/lib/systems/trigram/techniques/GanTechniques.js +323 -0
  1525. package/lib/systems/trigram/techniques/GanTechniques.js.map +1 -0
  1526. package/lib/systems/trigram/techniques/GeonTechniques.d.ts +23 -0
  1527. package/lib/systems/trigram/techniques/GeonTechniques.d.ts.map +1 -0
  1528. package/lib/systems/trigram/techniques/GeonTechniques.js +299 -0
  1529. package/lib/systems/trigram/techniques/GeonTechniques.js.map +1 -0
  1530. package/lib/systems/trigram/techniques/GonTechniques.d.ts +51 -0
  1531. package/lib/systems/trigram/techniques/GonTechniques.d.ts.map +1 -0
  1532. package/lib/systems/trigram/techniques/GonTechniques.js +399 -0
  1533. package/lib/systems/trigram/techniques/GonTechniques.js.map +1 -0
  1534. package/lib/systems/trigram/techniques/JinTechniques.d.ts +23 -0
  1535. package/lib/systems/trigram/techniques/JinTechniques.d.ts.map +1 -0
  1536. package/lib/systems/trigram/techniques/JinTechniques.js +253 -0
  1537. package/lib/systems/trigram/techniques/JinTechniques.js.map +1 -0
  1538. package/lib/systems/trigram/techniques/LiTechniques.d.ts +23 -0
  1539. package/lib/systems/trigram/techniques/LiTechniques.d.ts.map +1 -0
  1540. package/lib/systems/trigram/techniques/LiTechniques.js +253 -0
  1541. package/lib/systems/trigram/techniques/LiTechniques.js.map +1 -0
  1542. package/lib/systems/trigram/techniques/SonTechniques.d.ts +43 -0
  1543. package/lib/systems/trigram/techniques/SonTechniques.d.ts.map +1 -0
  1544. package/lib/systems/trigram/techniques/SonTechniques.js +293 -0
  1545. package/lib/systems/trigram/techniques/SonTechniques.js.map +1 -0
  1546. package/lib/systems/trigram/techniques/TaeTechniques.d.ts +23 -0
  1547. package/lib/systems/trigram/techniques/TaeTechniques.d.ts.map +1 -0
  1548. package/lib/systems/trigram/techniques/TaeTechniques.js +292 -0
  1549. package/lib/systems/trigram/techniques/TaeTechniques.js.map +1 -0
  1550. package/lib/systems/trigram/techniques/TechniqueConfig.d.ts +403 -0
  1551. package/lib/systems/trigram/techniques/TechniqueConfig.d.ts.map +1 -0
  1552. package/lib/systems/trigram/techniques/TechniqueConfig.js +493 -0
  1553. package/lib/systems/trigram/techniques/TechniqueConfig.js.map +1 -0
  1554. package/lib/systems/trigram/techniques/index.d.ts +54 -0
  1555. package/lib/systems/trigram/techniques/index.d.ts.map +1 -0
  1556. package/lib/systems/trigram/techniques/index.js +88 -0
  1557. package/lib/systems/trigram/techniques/index.js.map +1 -0
  1558. package/lib/systems/trigram/types/GonTechniqueExtensions.d.ts +506 -0
  1559. package/lib/systems/trigram/types/GonTechniqueExtensions.d.ts.map +1 -0
  1560. package/lib/systems/trigram/types/GonTechniqueExtensions.js +37 -0
  1561. package/lib/systems/trigram/types/GonTechniqueExtensions.js.map +1 -0
  1562. package/lib/systems/trigram/types.d.ts +288 -0
  1563. package/lib/systems/trigram/types.d.ts.map +1 -0
  1564. package/lib/systems/trigram/types.js +459 -0
  1565. package/lib/systems/trigram/types.js.map +1 -0
  1566. package/lib/systems/types.d.ts +1038 -0
  1567. package/lib/systems/types.d.ts.map +1 -0
  1568. package/lib/systems/types.js +872 -0
  1569. package/lib/systems/types.js.map +1 -0
  1570. package/lib/systems/vitalpoint/DamageCalculator.d.ts +255 -0
  1571. package/lib/systems/vitalpoint/DamageCalculator.d.ts.map +1 -0
  1572. package/lib/systems/vitalpoint/DamageCalculator.js +435 -0
  1573. package/lib/systems/vitalpoint/DamageCalculator.js.map +1 -0
  1574. package/lib/systems/vitalpoint/HitDetection.d.ts +11 -0
  1575. package/lib/systems/vitalpoint/HitDetection.d.ts.map +1 -0
  1576. package/lib/systems/vitalpoint/HitDetection.js +69 -0
  1577. package/lib/systems/vitalpoint/HitDetection.js.map +1 -0
  1578. package/lib/systems/vitalpoint/KoreanAnatomy.d.ts +361 -0
  1579. package/lib/systems/vitalpoint/KoreanAnatomy.d.ts.map +1 -0
  1580. package/lib/systems/vitalpoint/KoreanAnatomy.js +1709 -0
  1581. package/lib/systems/vitalpoint/KoreanAnatomy.js.map +1 -0
  1582. package/lib/systems/vitalpoint/KoreanVitalPoints.d.ts +133 -0
  1583. package/lib/systems/vitalpoint/KoreanVitalPoints.d.ts.map +1 -0
  1584. package/lib/systems/vitalpoint/KoreanVitalPoints.js +150 -0
  1585. package/lib/systems/vitalpoint/KoreanVitalPoints.js.map +1 -0
  1586. package/lib/systems/vitalpoint/MeridianVitalPointMapping.d.ts +92 -0
  1587. package/lib/systems/vitalpoint/MeridianVitalPointMapping.d.ts.map +1 -0
  1588. package/lib/systems/vitalpoint/MeridianVitalPointMapping.js +227 -0
  1589. package/lib/systems/vitalpoint/MeridianVitalPointMapping.js.map +1 -0
  1590. package/lib/systems/vitalpoint/VitalPointsData.d.ts +51 -0
  1591. package/lib/systems/vitalpoint/VitalPointsData.d.ts.map +1 -0
  1592. package/lib/systems/vitalpoint/VitalPointsData.js +1917 -0
  1593. package/lib/systems/vitalpoint/VitalPointsData.js.map +1 -0
  1594. package/lib/systems/vitalpoint/index.d.ts +12 -0
  1595. package/lib/systems/vitalpoint/index.d.ts.map +1 -0
  1596. package/lib/systems/vitalpoint/index.js +5 -0
  1597. package/lib/systems/vitalpoint/types.d.ts +417 -0
  1598. package/lib/systems/vitalpoint/types.d.ts.map +1 -0
  1599. package/lib/test/test-utils.d.ts +46 -0
  1600. package/lib/test/test-utils.d.ts.map +1 -0
  1601. package/lib/types/AccessibilityTypes.d.ts +232 -0
  1602. package/lib/types/AccessibilityTypes.d.ts.map +1 -0
  1603. package/lib/types/AccessibilityTypes.js +13 -0
  1604. package/lib/types/AccessibilityTypes.js.map +1 -0
  1605. package/lib/types/HtmlOverlayTypes.d.ts +161 -0
  1606. package/lib/types/HtmlOverlayTypes.d.ts.map +1 -0
  1607. package/lib/types/LayoutTypes.d.ts +330 -0
  1608. package/lib/types/LayoutTypes.d.ts.map +1 -0
  1609. package/lib/types/LayoutTypes.js +118 -0
  1610. package/lib/types/LayoutTypes.js.map +1 -0
  1611. package/lib/types/PhysicsTypes.d.ts +327 -0
  1612. package/lib/types/PhysicsTypes.d.ts.map +1 -0
  1613. package/lib/types/PhysicsTypes.js +105 -0
  1614. package/lib/types/PhysicsTypes.js.map +1 -0
  1615. package/lib/types/ResponsiveTypes.d.ts +210 -0
  1616. package/lib/types/ResponsiveTypes.d.ts.map +1 -0
  1617. package/lib/types/clothing.d.ts +298 -0
  1618. package/lib/types/clothing.d.ts.map +1 -0
  1619. package/lib/types/common.d.ts +1247 -0
  1620. package/lib/types/common.d.ts.map +1 -0
  1621. package/lib/types/common.js +622 -0
  1622. package/lib/types/common.js.map +1 -0
  1623. package/lib/types/constants/animations.d.ts +93 -0
  1624. package/lib/types/constants/animations.d.ts.map +1 -0
  1625. package/lib/types/constants/animations.js +26 -0
  1626. package/lib/types/constants/animations.js.map +1 -0
  1627. package/lib/types/constants/colors.d.ts +151 -0
  1628. package/lib/types/constants/colors.d.ts.map +1 -0
  1629. package/lib/types/constants/colors.js +155 -0
  1630. package/lib/types/constants/colors.js.map +1 -0
  1631. package/lib/types/constants/designSystem.d.ts +469 -0
  1632. package/lib/types/constants/designSystem.d.ts.map +1 -0
  1633. package/lib/types/constants/designSystem.js +406 -0
  1634. package/lib/types/constants/designSystem.js.map +1 -0
  1635. package/lib/types/constants/index.d.ts +181 -0
  1636. package/lib/types/constants/index.d.ts.map +1 -0
  1637. package/lib/types/constants/index.js +176 -0
  1638. package/lib/types/constants/index.js.map +1 -0
  1639. package/lib/types/constants/layout.d.ts +76 -0
  1640. package/lib/types/constants/layout.d.ts.map +1 -0
  1641. package/lib/types/constants/layout.js +37 -0
  1642. package/lib/types/constants/layout.js.map +1 -0
  1643. package/lib/types/constants/performance.d.ts +183 -0
  1644. package/lib/types/constants/performance.d.ts.map +1 -0
  1645. package/lib/types/constants/performance.js +134 -0
  1646. package/lib/types/constants/performance.js.map +1 -0
  1647. package/lib/types/constants/typography.d.ts +85 -0
  1648. package/lib/types/constants/typography.d.ts.map +1 -0
  1649. package/lib/types/constants/typography.js +110 -0
  1650. package/lib/types/constants/typography.js.map +1 -0
  1651. package/lib/types/constants/ui.d.ts +187 -0
  1652. package/lib/types/constants/ui.d.ts.map +1 -0
  1653. package/lib/types/constants/ui.js +113 -0
  1654. package/lib/types/constants/ui.js.map +1 -0
  1655. package/lib/types/facial.d.ts +266 -0
  1656. package/lib/types/facial.d.ts.map +1 -0
  1657. package/lib/types/facial.js +92 -0
  1658. package/lib/types/facial.js.map +1 -0
  1659. package/lib/types/hand-animation.d.ts +370 -0
  1660. package/lib/types/hand-animation.d.ts.map +1 -0
  1661. package/lib/types/hand-animation.js +55 -0
  1662. package/lib/types/hand-animation.js.map +1 -0
  1663. package/lib/types/index.d.ts +14 -0
  1664. package/lib/types/index.d.ts.map +1 -0
  1665. package/lib/types/index.js +112 -0
  1666. package/lib/types/index.js.map +1 -0
  1667. package/lib/types/injury.d.ts +58 -0
  1668. package/lib/types/injury.d.ts.map +1 -0
  1669. package/lib/types/injury.js +23 -0
  1670. package/lib/types/injury.js.map +1 -0
  1671. package/lib/types/muscle.d.ts +146 -0
  1672. package/lib/types/muscle.d.ts.map +1 -0
  1673. package/lib/types/muscle.js +22 -0
  1674. package/lib/types/muscle.js.map +1 -0
  1675. package/lib/types/physics.d.ts +606 -0
  1676. package/lib/types/physics.d.ts.map +1 -0
  1677. package/lib/types/physics.js +162 -0
  1678. package/lib/types/physics.js.map +1 -0
  1679. package/lib/types/physicsConstants.d.ts +270 -0
  1680. package/lib/types/physicsConstants.d.ts.map +1 -0
  1681. package/lib/types/physicsConstants.js +71 -0
  1682. package/lib/types/physicsConstants.js.map +1 -0
  1683. package/lib/types/player-visual.d.ts +299 -0
  1684. package/lib/types/player-visual.d.ts.map +1 -0
  1685. package/lib/types/skeletal.d.ts +693 -0
  1686. package/lib/types/skeletal.d.ts.map +1 -0
  1687. package/lib/types/skeletal.js +189 -0
  1688. package/lib/types/skeletal.js.map +1 -0
  1689. package/lib/types/technique.d.ts +175 -0
  1690. package/lib/types/technique.d.ts.map +1 -0
  1691. package/lib/types/techniqueId.d.ts +51 -0
  1692. package/lib/types/techniqueId.d.ts.map +1 -0
  1693. package/lib/types/techniqueId.js +55 -0
  1694. package/lib/types/techniqueId.js.map +1 -0
  1695. package/lib/utils/EventManager.d.ts +133 -0
  1696. package/lib/utils/EventManager.d.ts.map +1 -0
  1697. package/lib/utils/EventManager.js +1 -0
  1698. package/lib/utils/accessibility.d.ts +218 -0
  1699. package/lib/utils/accessibility.d.ts.map +1 -0
  1700. package/lib/utils/accessibility.js +167 -0
  1701. package/lib/utils/accessibility.js.map +1 -0
  1702. package/lib/utils/arenaWorldDimensions.d.ts +219 -0
  1703. package/lib/utils/arenaWorldDimensions.d.ts.map +1 -0
  1704. package/lib/utils/arenaWorldDimensions.js +154 -0
  1705. package/lib/utils/arenaWorldDimensions.js.map +1 -0
  1706. package/lib/utils/assetConfig.d.ts +39 -0
  1707. package/lib/utils/assetConfig.d.ts.map +1 -0
  1708. package/lib/utils/assetConfig.js +52 -0
  1709. package/lib/utils/assetConfig.js.map +1 -0
  1710. package/lib/utils/cameraShake.d.ts +115 -0
  1711. package/lib/utils/cameraShake.d.ts.map +1 -0
  1712. package/lib/utils/characterScaling.d.ts +305 -0
  1713. package/lib/utils/characterScaling.d.ts.map +1 -0
  1714. package/lib/utils/characterScaling.js +105 -0
  1715. package/lib/utils/characterScaling.js.map +1 -0
  1716. package/lib/utils/clothingColors.d.ts +120 -0
  1717. package/lib/utils/clothingColors.d.ts.map +1 -0
  1718. package/lib/utils/clothingMaterials.d.ts +65 -0
  1719. package/lib/utils/clothingMaterials.d.ts.map +1 -0
  1720. package/lib/utils/colorHelpers.d.ts +67 -0
  1721. package/lib/utils/colorHelpers.d.ts.map +1 -0
  1722. package/lib/utils/colorHelpers.js +81 -0
  1723. package/lib/utils/colorHelpers.js.map +1 -0
  1724. package/lib/utils/colorUtils.d.ts +113 -0
  1725. package/lib/utils/colorUtils.d.ts.map +1 -0
  1726. package/lib/utils/colorUtils.js +225 -0
  1727. package/lib/utils/colorUtils.js.map +1 -0
  1728. package/lib/utils/combatReadiness.d.ts +132 -0
  1729. package/lib/utils/combatReadiness.d.ts.map +1 -0
  1730. package/lib/utils/combatReadiness.js +176 -0
  1731. package/lib/utils/combatReadiness.js.map +1 -0
  1732. package/lib/utils/controlMapping.d.ts +171 -0
  1733. package/lib/utils/controlMapping.d.ts.map +1 -0
  1734. package/lib/utils/controlMapping.js +288 -0
  1735. package/lib/utils/controlMapping.js.map +1 -0
  1736. package/lib/utils/deviceDetection.d.ts +159 -0
  1737. package/lib/utils/deviceDetection.d.ts.map +1 -0
  1738. package/lib/utils/deviceDetection.js +337 -0
  1739. package/lib/utils/deviceDetection.js.map +1 -0
  1740. package/lib/utils/effectUtils.d.ts +63 -0
  1741. package/lib/utils/effectUtils.d.ts.map +1 -0
  1742. package/lib/utils/effectUtils.js +737 -0
  1743. package/lib/utils/effectUtils.js.map +1 -0
  1744. package/lib/utils/eventConstants.d.ts +25 -0
  1745. package/lib/utils/eventConstants.d.ts.map +1 -0
  1746. package/lib/utils/eventConstants.js +3 -0
  1747. package/lib/utils/eventConstants.js.map +1 -0
  1748. package/lib/utils/fabricTextures.d.ts +136 -0
  1749. package/lib/utils/fabricTextures.d.ts.map +1 -0
  1750. package/lib/utils/fabricTextures.js +301 -0
  1751. package/lib/utils/fabricTextures.js.map +1 -0
  1752. package/lib/utils/hapticFeedback.d.ts +224 -0
  1753. package/lib/utils/hapticFeedback.d.ts.map +1 -0
  1754. package/lib/utils/hapticFeedback.js +143 -0
  1755. package/lib/utils/hapticFeedback.js.map +1 -0
  1756. package/lib/utils/haptics.d.ts +139 -0
  1757. package/lib/utils/haptics.d.ts.map +1 -0
  1758. package/lib/utils/haptics.js +66 -0
  1759. package/lib/utils/haptics.js.map +1 -0
  1760. package/lib/utils/htmlOverlayHelpers.d.ts +168 -0
  1761. package/lib/utils/htmlOverlayHelpers.d.ts.map +1 -0
  1762. package/lib/utils/htmlOverlayHelpers.js +279 -0
  1763. package/lib/utils/htmlOverlayHelpers.js.map +1 -0
  1764. package/lib/utils/index.d.ts +15 -0
  1765. package/lib/utils/index.d.ts.map +1 -0
  1766. package/lib/utils/index.js +92 -0
  1767. package/lib/utils/index.js.map +1 -0
  1768. package/lib/utils/inputSystem.d.ts +154 -0
  1769. package/lib/utils/inputSystem.d.ts.map +1 -0
  1770. package/lib/utils/inputSystem.js +324 -0
  1771. package/lib/utils/inputSystem.js.map +1 -0
  1772. package/lib/utils/koreanThemeHelpers.d.ts +328 -0
  1773. package/lib/utils/koreanThemeHelpers.d.ts.map +1 -0
  1774. package/lib/utils/koreanThemeHelpers.js +348 -0
  1775. package/lib/utils/koreanThemeHelpers.js.map +1 -0
  1776. package/lib/utils/math.d.ts +80 -0
  1777. package/lib/utils/math.d.ts.map +1 -0
  1778. package/lib/utils/math.js +70 -0
  1779. package/lib/utils/math.js.map +1 -0
  1780. package/lib/utils/mobileLayoutHelpers.d.ts +52 -0
  1781. package/lib/utils/mobileLayoutHelpers.d.ts.map +1 -0
  1782. package/lib/utils/mobileLayoutHelpers.js +66 -0
  1783. package/lib/utils/mobileLayoutHelpers.js.map +1 -0
  1784. package/lib/utils/mobileUIUtils.d.ts +266 -0
  1785. package/lib/utils/mobileUIUtils.d.ts.map +1 -0
  1786. package/lib/utils/mobileUIUtils.js +33 -0
  1787. package/lib/utils/mobileUIUtils.js.map +1 -0
  1788. package/lib/utils/objectPool.d.ts +92 -0
  1789. package/lib/utils/objectPool.d.ts.map +1 -0
  1790. package/lib/utils/particlePool.d.ts +138 -0
  1791. package/lib/utils/particlePool.d.ts.map +1 -0
  1792. package/lib/utils/performance/PerformanceMonitor.d.ts +93 -0
  1793. package/lib/utils/performance/PerformanceMonitor.d.ts.map +1 -0
  1794. package/lib/utils/performance/PerformanceMonitor.js +155 -0
  1795. package/lib/utils/performance/PerformanceMonitor.js.map +1 -0
  1796. package/lib/utils/performance/PerformanceOverlay3D.d.ts +20 -0
  1797. package/lib/utils/performance/PerformanceOverlay3D.d.ts.map +1 -0
  1798. package/lib/utils/performance/PerformanceOverlay3D.js +200 -0
  1799. package/lib/utils/performance/PerformanceOverlay3D.js.map +1 -0
  1800. package/lib/utils/performance/index.d.ts +12 -0
  1801. package/lib/utils/performance/index.d.ts.map +1 -0
  1802. package/lib/utils/performance/index.js +3 -0
  1803. package/lib/utils/performance/usePerformanceMonitor.d.ts +46 -0
  1804. package/lib/utils/performance/usePerformanceMonitor.d.ts.map +1 -0
  1805. package/lib/utils/performance/usePerformanceMonitor.js +71 -0
  1806. package/lib/utils/performance/usePerformanceMonitor.js.map +1 -0
  1807. package/lib/utils/performanceOptimization.d.ts +142 -0
  1808. package/lib/utils/performanceOptimization.d.ts.map +1 -0
  1809. package/lib/utils/performanceOptimization.js +27 -0
  1810. package/lib/utils/performanceOptimization.js.map +1 -0
  1811. package/lib/utils/physicalAttributeValidation.d.ts +197 -0
  1812. package/lib/utils/physicalAttributeValidation.d.ts.map +1 -0
  1813. package/lib/utils/player3DHelpers.d.ts +82 -0
  1814. package/lib/utils/player3DHelpers.d.ts.map +1 -0
  1815. package/lib/utils/player3DHelpers.js +176 -0
  1816. package/lib/utils/player3DHelpers.js.map +1 -0
  1817. package/lib/utils/playerUtils.d.ts +137 -0
  1818. package/lib/utils/playerUtils.d.ts.map +1 -0
  1819. package/lib/utils/playerUtils.js +296 -0
  1820. package/lib/utils/playerUtils.js.map +1 -0
  1821. package/lib/utils/responsiveLayout.d.ts +207 -0
  1822. package/lib/utils/responsiveLayout.d.ts.map +1 -0
  1823. package/lib/utils/responsiveLayout.js +114 -0
  1824. package/lib/utils/responsiveLayout.js.map +1 -0
  1825. package/lib/utils/responsiveLayoutHelpers.d.ts +156 -0
  1826. package/lib/utils/responsiveLayoutHelpers.d.ts.map +1 -0
  1827. package/lib/utils/responsiveLayoutHelpers.js +253 -0
  1828. package/lib/utils/responsiveLayoutHelpers.js.map +1 -0
  1829. package/lib/utils/safeAreaUtils.d.ts +133 -0
  1830. package/lib/utils/safeAreaUtils.d.ts.map +1 -0
  1831. package/lib/utils/safeAreaUtils.js +65 -0
  1832. package/lib/utils/safeAreaUtils.js.map +1 -0
  1833. package/lib/utils/sharedPhysicsConfig.d.ts +125 -0
  1834. package/lib/utils/sharedPhysicsConfig.d.ts.map +1 -0
  1835. package/lib/utils/sharedPhysicsConfig.js +119 -0
  1836. package/lib/utils/sharedPhysicsConfig.js.map +1 -0
  1837. package/lib/utils/skeletonScaling.d.ts +285 -0
  1838. package/lib/utils/skeletonScaling.d.ts.map +1 -0
  1839. package/lib/utils/skeletonScaling.js +46 -0
  1840. package/lib/utils/skeletonScaling.js.map +1 -0
  1841. package/lib/utils/stanceHelpers.d.ts +85 -0
  1842. package/lib/utils/stanceHelpers.d.ts.map +1 -0
  1843. package/lib/utils/stanceHelpers.js +132 -0
  1844. package/lib/utils/stanceHelpers.js.map +1 -0
  1845. package/lib/utils/threeObjectPool.d.ts +323 -0
  1846. package/lib/utils/threeObjectPool.d.ts.map +1 -0
  1847. package/lib/utils/threeObjectPool.js +345 -0
  1848. package/lib/utils/threeObjectPool.js.map +1 -0
  1849. package/lib/utils/visualEffects.d.ts +358 -0
  1850. package/lib/utils/visualEffects.d.ts.map +1 -0
  1851. package/lib/utils/visualEffects.js +423 -0
  1852. package/lib/utils/visualEffects.js.map +1 -0
  1853. package/package.json +222 -0
@@ -0,0 +1,1516 @@
1
+ import { PlayerArchetype, TrigramStance } from "../../types/common.js";
2
+ import "../../types/index.js";
3
+ import { AI_MOVEMENT_METERS } from "../../types/physicsConstants.js";
4
+ import { getArchetypePhysicalAttributes } from "../../data/archetypePhysicalAttributes.js";
5
+ import TrigramSystem from "../TrigramSystem.js";
6
+ import { getArchetypeBehavior } from "./AIPersonality.js";
7
+ import KOREAN_VITAL_POINTS, { getVitalPointById } from "../vitalpoint/KoreanVitalPoints.js";
8
+ import { AIActionType } from "./types.js";
9
+ import { enforceArchetypeBehavior } from "./ArchetypeEnforcer.js";
10
+ //#region src/systems/ai/DecisionTree.ts
11
+ /**
12
+ * AI Decision Tree for Korean Martial Arts Combat
13
+ * Strategic decision-making system with multiple tactical options
14
+ *
15
+ * **Korean Philosophy Integration (한국 무술 철학)**:
16
+ * - 지피지기백전불태 (知彼知己百戰不殆) - Know the enemy, know yourself, and victory is certain
17
+ * - 이순응변 (以柔應變) - Adapt with flexibility and flow like water
18
+ * - 급소공격 (急所攻擊) - Strike vital points with precision and timing
19
+ */
20
+ /**
21
+ * Body pivot contributions for reach calculations (meters)
22
+ *
23
+ * These values represent additional reach gained from body mechanics:
24
+ * - Hip rotation and torso lean for kicks
25
+ * - Shoulder offset and torso rotation for punches
26
+ *
27
+ * Heuristically aligned with PhysicalReachCalculator.ts but intentionally
28
+ * simplified for AI decision-making (e.g., omits stance/animation modifiers).
29
+ *
30
+ * **NOTE ON BODY RADIUS**: The body pivot values approximate the body radius
31
+ * effect for AI range calculations. For precise hit detection in CombatSystem,
32
+ * use calculateBodyRadius() which accounts for individual archetype differences.
33
+ *
34
+ * AI decision-making trade-off:
35
+ * - Punch body pivot (shoulder offset + torso rotation): ~0.3-0.35m
36
+ * - Actual body radius (shoulder width * 0.5 / 100): ~0.215-0.27m
37
+ * - Difference: AI slightly overestimates close-range effectiveness
38
+ * - Impact: AI may attempt attacks at marginally longer range than optimal
39
+ * - Benefit: Simplified calculations, acceptable gameplay behavior
40
+ *
41
+ * @korean 신체 회전 도달 거리 증가 (AI 의사결정을 위한 근사치)
42
+ */
43
+ var BODY_PIVOT_METERS = {
44
+ KICK: .25,
45
+ TORSO_ROTATION: .1
46
+ };
47
+ /**
48
+ * Average technique extension multipliers
49
+ *
50
+ * Based on analysis of technique baseExtension values:
51
+ * - Punches: 0.9-0.95 (average 0.95)
52
+ * - Kicks: 1.0-1.05 (average 1.05)
53
+ *
54
+ * TODO: Consider implementing technique-specific lookup based on actual
55
+ * technique data for more precise range calculations. Current averages
56
+ * are sufficient for AI decision-making but may need refinement.
57
+ *
58
+ * @korean 기술 연장 배수
59
+ */
60
+ var TECHNIQUE_EXTENSION = {
61
+ PUNCH: .95,
62
+ KICK: 1.05
63
+ };
64
+ /**
65
+ * Distance-based stance preferences for tactical positioning
66
+ *
67
+ * Stances are categorized by optimal combat range based on actual technique
68
+ * reach configurations (baseExtension values from technique definitions):
69
+ *
70
+ * **CLOSE (≤0.6m)** - Grappling/clinch range:
71
+ * - TAE (☱ Lake) - Joint manipulation, grapples (0.9 baseExtension, needs contact)
72
+ * - GAM (☵ Water) - Throws, counters (0.7-0.9 baseExtension)
73
+ * - GON (☷ Earth) - Ground techniques, Ssireum throws (0.9 baseExtension)
74
+ * - GAN (☶ Mountain) - Immovable defense, blocks (0.9 baseExtension)
75
+ *
76
+ * **MID (0.6-1.0m)** - Striking range:
77
+ * - GEON (☰ Heaven) - Direct force, power strikes (0.95-1.05 baseExtension)
78
+ * - LI (☲ Fire) - Precision nerve strikes (0.92-0.95 baseExtension)
79
+ * - SON (☴ Wind) - Continuous pressure, Taekyon (0.95-1.05 baseExtension)
80
+ *
81
+ * **FAR (>1.0m)** - Long range kicks/closing distance:
82
+ * - JIN (☳ Thunder) - Explosive jumping kicks (1.15 baseExtension)
83
+ * - SON (☴ Wind) - Closing footwork pressure
84
+ * - GAN (☶ Mountain) - Patient defensive waiting
85
+ *
86
+ * @korean 거리별 자세 선호도 (기술 도달 거리 기반)
87
+ */
88
+ var DISTANCE_BASED_STANCES = {
89
+ CLOSE: [
90
+ TrigramStance.TAE,
91
+ TrigramStance.GAM,
92
+ TrigramStance.GON,
93
+ TrigramStance.GAN
94
+ ],
95
+ MID: [
96
+ TrigramStance.GEON,
97
+ TrigramStance.LI,
98
+ TrigramStance.SON
99
+ ],
100
+ FAR: [
101
+ TrigramStance.JIN,
102
+ TrigramStance.SON,
103
+ TrigramStance.GAN
104
+ ]
105
+ };
106
+ /**
107
+ * Hacker observation phase duration in milliseconds
108
+ *
109
+ * Hacker archetype observes opponents for this duration before attacking,
110
+ * collecting combat data for analysis-based tactics.
111
+ *
112
+ * @korean 해커 관찰 단계 지속 시간 (밀리초)
113
+ */
114
+ var HACKER_OBSERVATION_DURATION_MS = 1e4;
115
+ /**
116
+ * Hacker observation phase actions
117
+ *
118
+ * During the observation phase, Hacker only uses non-aggressive
119
+ * positioning actions to collect combat data.
120
+ *
121
+ * @korean 해커 관찰 단계 행동
122
+ */
123
+ var HACKER_OBSERVATION_ACTIONS = [
124
+ AIActionType.WAIT,
125
+ AIActionType.CIRCLE,
126
+ AIActionType.APPROACH
127
+ ];
128
+ /**
129
+ * Assess opponent vulnerability for exploitation tactics
130
+ *
131
+ * Analyzes multiple vulnerability factors to create comprehensive assessment:
132
+ * - Balance states (HELPLESS/VULNERABLE/SHAKEN)
133
+ * - Stamina depletion (< 20%)
134
+ * - Ki depletion (< 10%)
135
+ * - Composite vulnerability score (weighted average)
136
+ *
137
+ * **Korean Philosophy (취약성 평가)**:
138
+ * Traditional Korean martial arts teach reading opponent's weakness:
139
+ * - 기회 포착 (Gihoei Pochak) - Seizing opportunities
140
+ * - 약점 공격 (Yakjeom Gonggyeok) - Exploiting weaknesses
141
+ * - 결정타 (Gyeoljeongta) - Delivering decisive strikes
142
+ *
143
+ * @korean 상대 취약성 평가
144
+ *
145
+ * @param context - Current combat context with opponent state
146
+ * @returns Vulnerability assessment with boolean flags and composite score
147
+ */
148
+ function assessVulnerability(context) {
149
+ const isHelpless = context.opponentBalance === "HELPLESS";
150
+ const isVulnerable = context.opponentBalance === "VULNERABLE" || context.opponentBalance === "HELPLESS";
151
+ const isShaken = context.opponentBalance === "SHAKEN" || context.opponentBalance === "VULNERABLE" || context.opponentBalance === "HELPLESS";
152
+ const staminaPercent = context.opponentStamina && context.opponentMaxStamina ? context.opponentStamina / context.opponentMaxStamina : 1;
153
+ const kiPercent = context.opponentKi && context.opponentMaxKi ? context.opponentKi / context.opponentMaxKi : 1;
154
+ const hasLowStamina = staminaPercent < .2;
155
+ const hasNoKi = kiPercent < .1;
156
+ let balanceVulnerability = 0;
157
+ if (isHelpless) balanceVulnerability = 1;
158
+ else if (isVulnerable) balanceVulnerability = .7;
159
+ else if (isShaken) balanceVulnerability = .5;
160
+ return {
161
+ isHelpless,
162
+ isVulnerable,
163
+ isShaken,
164
+ hasLowStamina,
165
+ hasNoKi,
166
+ overallVulnerability: balanceVulnerability * .4 + (1 - staminaPercent) * .3 + (1 - kiPercent) * .3
167
+ };
168
+ }
169
+ /**
170
+ * AI Decision Tree System
171
+ *
172
+ * **Korean Combat Philosophy (한국 무술 철학)**:
173
+ * This system embodies traditional Korean martial arts principles:
174
+ *
175
+ * - **팔괘 응용** (Trigram Application): Uses Eight Trigram system for stance transitions
176
+ * - **급소 타격** (Vital Point Strikes): Targets anatomical weak points with precision
177
+ * - **상황 판단** (Situational Awareness): Adapts tactics based on combat context
178
+ * - **기술 조합** (Technique Combinations): Chains attacks into flowing combos
179
+ * - **방어 우선** (Defense First): Prioritizes survival and tactical retreat when needed
180
+ * - **취약성 공략** (Vulnerability Exploitation): Exploits defenseless states with precision (Issue #enhance-intelligence-operative-ai)
181
+ */
182
+ var AIDecisionTree = class AIDecisionTree {
183
+ lastDecisionTime = 0;
184
+ decisionCooldown = 50;
185
+ consecutiveAttacks = 0;
186
+ lastStanceChange = 0;
187
+ stanceChangeCooldown = 3e3;
188
+ psychologicalPressure = 0;
189
+ lastPressureActionTime = 0;
190
+ trigramSystem;
191
+ difficultyLevel = .5;
192
+ difficultyParams;
193
+ currentReactionDelay = 50;
194
+ /**
195
+ * Scaling factor for fatigue override probability calculation.
196
+ * Used to convert fatigue modifier to override chance in non-linear manner.
197
+ * Value of 0.5 provides gradual scaling: 1.2x fatigue → ~10% override, 1.5x → ~25%.
198
+ *
199
+ * @korean 피로도 우선순위 무시 배율
200
+ */
201
+ static FATIGUE_OVERRIDE_SCALING_FACTOR = .5;
202
+ constructor() {
203
+ this.trigramSystem = new TrigramSystem();
204
+ }
205
+ /**
206
+ * Calculate kick reach for an archetype based on physical attributes.
207
+ *
208
+ * **Physics-First**: Returns reach in METERS based on leg length.
209
+ * Includes realistic kick reach calculation:
210
+ * - Leg length converted from cm to meters
211
+ * - Body pivot contribution (hip rotation + torso lean)
212
+ * - Average baseExtension for kicks (1.05x multiplier)
213
+ *
214
+ * Formula: (legLength/100 + BODY_PIVOT_METERS.KICK) × TECHNIQUE_EXTENSION.KICK
215
+ *
216
+ * @param archetype - Player archetype to calculate reach for
217
+ * @returns Kick reach in meters
218
+ * @korean 발차기 도달 거리 (미터)
219
+ */
220
+ getKickReachMeters(archetype) {
221
+ return (getArchetypePhysicalAttributes(archetype).legLength / 100 + BODY_PIVOT_METERS.KICK) * TECHNIQUE_EXTENSION.KICK;
222
+ }
223
+ /**
224
+ * Calculate punch reach for an archetype based on physical attributes.
225
+ *
226
+ * **Physics-First**: Returns reach in METERS based on arm length.
227
+ * Includes realistic punch reach calculation:
228
+ * - Arm length converted from cm to meters
229
+ * - Body pivot (shoulder offset + torso rotation)
230
+ * - Average baseExtension for punches (0.95x multiplier)
231
+ *
232
+ * Formula: (armLength/100 + shoulderOffset + torsoRotation) × TECHNIQUE_EXTENSION.PUNCH
233
+ *
234
+ * @param archetype - Player archetype to calculate reach for
235
+ * @returns Punch reach in meters
236
+ * @korean 주먹 도달 거리 (미터)
237
+ */
238
+ getPunchReachMeters(archetype) {
239
+ const physical = getArchetypePhysicalAttributes(archetype);
240
+ const bodyPivot = physical.shoulderWidth / 2 / 100 + BODY_PIVOT_METERS.TORSO_ROTATION;
241
+ return (physical.armLength / 100 + bodyPivot) * TECHNIQUE_EXTENSION.PUNCH;
242
+ }
243
+ /**
244
+ * Calculate maximum combat reach for an archetype based on physical attributes.
245
+ *
246
+ * **Physics-First**: Returns reach in METERS based on leg length.
247
+ * Kicks have the longest reach (~1.0-1.3m with body pivot contribution).
248
+ *
249
+ * Note: This is a heuristic approximation. Actual reach also depends on
250
+ * stance modifiers and animation timing not included in AI range calculations.
251
+ *
252
+ * @param archetype - Player archetype to calculate reach for
253
+ * @returns Maximum combat reach in meters
254
+ * @korean 원형별 최대 도달 거리 (미터)
255
+ */
256
+ getArchetypeMaxReach(archetype) {
257
+ return this.getKickReachMeters(archetype);
258
+ }
259
+ /**
260
+ * Get close range threshold for an archetype (punching/elbow distance).
261
+ * Based on arm length from physical attributes.
262
+ *
263
+ * Uses the shared punch reach calculation helper for consistency.
264
+ *
265
+ * TODO: Extract to shared utility function with PhysicalReachCalculator.ts
266
+ * to maintain consistency between AI range calculations and actual hit detection.
267
+ * Consider handling elbow techniques separately with different body pivot values.
268
+ *
269
+ * @param archetype - Player archetype
270
+ * @returns Close range threshold in meters
271
+ * @korean 근접 범위 (미터)
272
+ */
273
+ getArchetypeCloseRange(archetype) {
274
+ return this.getPunchReachMeters(archetype);
275
+ }
276
+ /**
277
+ * Get medium range threshold for an archetype (kicking distance).
278
+ * Based on leg length from physical attributes.
279
+ *
280
+ * Includes realistic kick reach calculation:
281
+ * - Leg length converted from cm to meters
282
+ * - Body pivot contribution (hip rotation + torso lean)
283
+ * - Average baseExtension for kicks
284
+ *
285
+ * @param archetype - Player archetype
286
+ * @returns Medium range threshold in meters
287
+ * @korean 중거리 범위 (미터)
288
+ */
289
+ getArchetypeMediumRange(archetype) {
290
+ return this.getKickReachMeters(archetype);
291
+ }
292
+ /**
293
+ * Set AI difficulty level for vital point targeting accuracy
294
+ * @param level - 0.0 (beginner) to 1.0 (master)
295
+ */
296
+ setDifficultyLevel(level) {
297
+ this.difficultyLevel = Math.max(0, Math.min(1, level));
298
+ }
299
+ /**
300
+ * Set difficulty parameters for AI behavior
301
+ * Affects reaction time, accuracy, decision quality, etc.
302
+ *
303
+ * Calculates a randomized reaction delay (within parameter range) once when
304
+ * parameters change. This provides varied AI timing while maintaining consistent
305
+ * behavior throughout the current parameter set.
306
+ *
307
+ * @korean 난이도 매개변수 설정
308
+ * @param params - Difficulty parameters to apply
309
+ */
310
+ setDifficultyParameters(params) {
311
+ this.difficultyParams = params;
312
+ if (params) this.currentReactionDelay = params.reactionTimeMs.min + Math.random() * (params.reactionTimeMs.max - params.reactionTimeMs.min);
313
+ }
314
+ /**
315
+ * Check if kill mode should be activated based on archetype behavior
316
+ *
317
+ * Kill mode activates when:
318
+ * - Opponent health is low (<30%)
319
+ * - Opponent is in vulnerable balance state (HELPLESS/VULNERABLE)
320
+ *
321
+ * **Korean Philosophy (결정타 모드)**:
322
+ * Each archetype activates kill mode differently based on combat philosophy:
323
+ * - **Musa**: Honor demands finishing the fight decisively
324
+ * - **Amsalja**: Opportunity for instant takedown with precision
325
+ * - **Hacker**: Analytical window for calculated strike
326
+ * - **Jeongbo Yowon**: Strategic opportunity for submission
327
+ * - **Jojik Pokryeokbae**: Pragmatic moment to finish brutally
328
+ *
329
+ * @korean 결정타 모드 활성화 확인
330
+ *
331
+ * @param context - Current combat context
332
+ * @param personality - AI personality archetype
333
+ * @returns True if kill mode should be active
334
+ */
335
+ isKillModeActive(context, personality) {
336
+ const opponentHealthPercent = context.opponentHealth / context.playerMaxHealth;
337
+ const isOpponentVulnerable = context.opponentBalance != null && (context.opponentBalance === "HELPLESS" || context.opponentBalance === "VULNERABLE");
338
+ let healthThreshold = .3;
339
+ switch (personality.archetype) {
340
+ case PlayerArchetype.MUSA:
341
+ healthThreshold = .3;
342
+ break;
343
+ case PlayerArchetype.AMSALJA:
344
+ healthThreshold = .3;
345
+ break;
346
+ case PlayerArchetype.HACKER:
347
+ healthThreshold = .25;
348
+ break;
349
+ case PlayerArchetype.JEONGBO_YOWON:
350
+ healthThreshold = .28;
351
+ break;
352
+ case PlayerArchetype.JOJIK_POKRYEOKBAE:
353
+ healthThreshold = .35;
354
+ break;
355
+ }
356
+ return opponentHealthPercent < healthThreshold || isOpponentVulnerable;
357
+ }
358
+ /**
359
+ * Apply kill mode modifiers to action weights for finishing behavior
360
+ *
361
+ * **Kill Mode Behavior (결정타 행동)**:
362
+ * Each archetype has unique finishing behavior based on combat philosophy:
363
+ * - **Musa**: All-in overwhelming force (2.5x attack, 0x retreat)
364
+ * - **Amsalja**: Instant takedown focus (3.0x technique, feints disabled)
365
+ * - **Hacker**: Analytical precision (2.0x technique, counter focus)
366
+ * - **Jeongbo Yowon**: Strategic control (1.8x technique, balanced approach)
367
+ * - **Jojik Pokryeokbae**: Brutal pragmatism (2.2x attack, dirty tactics)
368
+ *
369
+ * @korean 결정타 모드 가중치 적용
370
+ *
371
+ * @param baseWeights - Base action weight multipliers
372
+ * @param personality - AI personality archetype
373
+ * @param isKillMode - Whether kill mode is active
374
+ * @returns Modified action weights for kill mode
375
+ */
376
+ applyKillModeModifiers(baseWeights, personality, isKillMode) {
377
+ if (!isKillMode) return baseWeights;
378
+ const modified = { ...baseWeights };
379
+ switch (personality.archetype) {
380
+ case PlayerArchetype.MUSA:
381
+ modified.attack *= 2.5;
382
+ modified.technique *= 2;
383
+ modified.defend *= .2;
384
+ modified.retreat = 0;
385
+ break;
386
+ case PlayerArchetype.AMSALJA:
387
+ modified.technique *= 3;
388
+ modified.attack *= 1.5;
389
+ modified.defend *= .3;
390
+ break;
391
+ case PlayerArchetype.HACKER:
392
+ modified.technique *= 2;
393
+ modified.attack *= 1.3;
394
+ modified.defend *= .7;
395
+ break;
396
+ case PlayerArchetype.JEONGBO_YOWON:
397
+ modified.technique *= 1.8;
398
+ modified.attack *= 1.6;
399
+ modified.defend *= .6;
400
+ modified.retreat *= .5;
401
+ break;
402
+ case PlayerArchetype.JOJIK_POKRYEOKBAE:
403
+ modified.attack *= 2.2;
404
+ modified.technique *= 1.7;
405
+ modified.defend *= .4;
406
+ modified.retreat *= 1.2;
407
+ break;
408
+ }
409
+ return modified;
410
+ }
411
+ /**
412
+ * Apply Intelligence Operative (Jeongbo Yowon) vulnerability exploitation
413
+ *
414
+ * Enhances decision weights to exploit opponent's defenseless states with precision:
415
+ * - **HELPLESS (balance === HELPLESS)**: 90% takedown priority - Execute precision takedown
416
+ * - **VULNERABLE (balance === VULNERABLE)**: 70% aggressive attack - Sustained pressure tactics
417
+ * - **SHAKEN (balance === SHAKEN)**: 50% pressure increase - Psychological warfare
418
+ * - **Low Stamina (< 20%)**: 60% exploitation - Force defensive positions
419
+ * - **No Ki (< 10%)**: 50% technique spam - Prevent powerful techniques
420
+ *
421
+ * **Multiplier Stacking Behavior**:
422
+ * When multiple vulnerabilities are present, multipliers stack multiplicatively:
423
+ * - VULNERABLE (2.0x attack) + low stamina (1.5x attack) = 3.0x total attack multiplier
424
+ * - VULNERABLE (1.8x technique) + low ki (1.4x technique) = 2.52x total technique multiplier
425
+ * This creates increasingly aggressive exploitation as opponent becomes more vulnerable.
426
+ * Note: HELPLESS state uses exclusive else-if, so it doesn't stack with VULNERABLE/SHAKEN.
427
+ *
428
+ * **Jeongbo Philosophy (정보요원 전략)**:
429
+ * - Knowledge through observation (관찰을 통한 지식)
430
+ * - Psychological manipulation (심리적 조작)
431
+ * - Precise timing (정확한 타이밍)
432
+ * - Strategic exploitation (전략적 공략)
433
+ *
434
+ * This function provides 3x higher vulnerability exploitation rate than Musa,
435
+ * 2x higher psychological warfare usage than Amsalja, and 5x higher takedown
436
+ * success rate when opponent is HELPLESS.
437
+ *
438
+ * @korean 정보요원 취약성 공략
439
+ *
440
+ * @param weights - Base action weight multipliers
441
+ * @param vulnerability - Vulnerability assessment context
442
+ * @param personality - AI personality archetype
443
+ * @returns Modified action weights for Jeongbo exploitation
444
+ */
445
+ applyJeongboExploitation(weights, vulnerability, personality) {
446
+ if (personality.archetype !== PlayerArchetype.JEONGBO_YOWON) return weights;
447
+ const modified = { ...weights };
448
+ if (this.shouldExecutePressureStrike(vulnerability)) {
449
+ modified.technique *= 3;
450
+ modified.attack *= .3;
451
+ return modified;
452
+ }
453
+ if (vulnerability.isHelpless) {
454
+ modified.technique *= 5;
455
+ modified.attack *= .2;
456
+ modified.defend *= .1;
457
+ modified.feint *= .1;
458
+ } else if (vulnerability.isVulnerable) {
459
+ modified.attack *= 2;
460
+ modified.technique *= 1.8;
461
+ modified.feint *= .5;
462
+ modified.defend *= .5;
463
+ } else if (vulnerability.isShaken) {
464
+ modified.feint *= 2;
465
+ modified.circle *= 1.5;
466
+ modified.technique *= 1.3;
467
+ }
468
+ if (vulnerability.hasLowStamina) {
469
+ modified.attack *= 1.5;
470
+ modified.approach *= 1.3;
471
+ }
472
+ if (vulnerability.hasNoKi) {
473
+ modified.technique *= 1.4;
474
+ modified.attack *= 1.3;
475
+ }
476
+ return modified;
477
+ }
478
+ /**
479
+ * Build psychological pressure through intimidation tactics
480
+ *
481
+ * Intelligence Operative uses feints, circling, and approach/retreat patterns
482
+ * to build cumulative psychological pressure on opponent. When pressure reaches
483
+ * 50+ and opponent is VULNERABLE, triggers decisive strike.
484
+ *
485
+ * **Psychological Tactics (심리전 전술)**:
486
+ * - Feints: +10 pressure (fake attacks create hesitation)
487
+ * - Circling: +5 pressure (predator circling prey)
488
+ * - Approach: +3 pressure (aggressive positioning)
489
+ * - Decay: -3 pressure per second (pressure fades without action)
490
+ *
491
+ * @korean 심리적 압박 증가
492
+ *
493
+ * @param actionType - Type of action taken (FEINT, CIRCLE, APPROACH, etc.)
494
+ * @param now - Current timestamp for decay calculation
495
+ */
496
+ buildPsychologicalPressure(actionType, now) {
497
+ if (this.lastPressureActionTime > 0) {
498
+ const decayAmount = (now - this.lastPressureActionTime) / 1e3 * 3;
499
+ this.psychologicalPressure = Math.max(0, this.psychologicalPressure - decayAmount);
500
+ }
501
+ switch (actionType) {
502
+ case AIActionType.FEINT:
503
+ this.psychologicalPressure = Math.min(100, this.psychologicalPressure + 10);
504
+ this.lastPressureActionTime = now;
505
+ break;
506
+ case AIActionType.CIRCLE:
507
+ this.psychologicalPressure = Math.min(100, this.psychologicalPressure + 5);
508
+ this.lastPressureActionTime = now;
509
+ break;
510
+ case AIActionType.APPROACH:
511
+ this.psychologicalPressure = Math.min(100, this.psychologicalPressure + 3);
512
+ this.lastPressureActionTime = now;
513
+ break;
514
+ case AIActionType.ATTACK:
515
+ case AIActionType.TECHNIQUE:
516
+ this.psychologicalPressure = Math.max(0, this.psychologicalPressure * .5);
517
+ break;
518
+ }
519
+ }
520
+ /**
521
+ * Check if psychological pressure should trigger decisive strike
522
+ *
523
+ * Jeongbo executes decisive technique when:
524
+ * - Psychological pressure ≥ 50 (sustained intimidation)
525
+ * - Opponent is VULNERABLE or worse (balance < 30)
526
+ * - Returns true to boost technique priority
527
+ *
528
+ * @korean 심리적 압박 결정타 확인
529
+ *
530
+ * @param vulnerability - Vulnerability assessment context
531
+ * @returns True if pressure warrants decisive strike
532
+ */
533
+ shouldExecutePressureStrike(vulnerability) {
534
+ return this.psychologicalPressure >= 50 && (vulnerability.isVulnerable || vulnerability.isHelpless);
535
+ }
536
+ /**
537
+ * Analyze counter-attack opportunity from opponent's limb exposure.
538
+ *
539
+ * **Korean**: 반격 기회 분석 (Counter Opportunity Analysis)
540
+ *
541
+ * Detects when the opponent has exposed limbs during technique execution,
542
+ * enabling defensive counter-attacks and breaking techniques.
543
+ *
544
+ * This integrates the LimbExposureSystem with AI decision-making by:
545
+ * 1. Detecting exposed limbs from opponent's current technique
546
+ * 2. Calculating vulnerability windows and multipliers
547
+ * 3. Providing counter opportunity data for decision prioritization
548
+ *
549
+ * @param context - Combat context with opponent technique data
550
+ * @returns Enhanced context with counter opportunity analysis, or undefined if no opportunity
551
+ *
552
+ * @remarks
553
+ * Returns undefined if:
554
+ * - Opponent is not executing a technique
555
+ * - Technique has no exposure window defined
556
+ * - Current time is outside the exposure window
557
+ *
558
+ * @korean 반격기회분석
559
+ */
560
+ analyzeCounterOpportunity(context) {
561
+ const counterOpportunity = context.counterOpportunity;
562
+ return {
563
+ counterOpportunity,
564
+ opponentVulnerability: counterOpportunity?.vulnerabilityMultiplier ?? 1
565
+ };
566
+ }
567
+ /**
568
+ * Make strategic decision based on combat context
569
+ *
570
+ * Applies difficulty-based reaction time delays if difficulty parameters are set
571
+ */
572
+ makeDecision(context, personality, comboSystem) {
573
+ const now = Date.now();
574
+ const reactionDelay = this.difficultyParams ? this.currentReactionDelay : this.decisionCooldown;
575
+ const effectiveCooldown = Math.max(this.decisionCooldown, reactionDelay);
576
+ if (now - this.lastDecisionTime < effectiveCooldown) return {
577
+ action: AIActionType.WAIT,
578
+ priority: 0,
579
+ reason: this.difficultyParams ? `Reaction time delay: ${effectiveCooldown.toFixed(0)}ms` : "Decision cooldown active"
580
+ };
581
+ this.lastDecisionTime = now;
582
+ const isBelowRetreatThreshold = context.playerHealth / context.playerMaxHealth < personality.tacticalRetreatThreshold;
583
+ const opponentMaxHealth = context.opponentMaxHealth ?? context.playerMaxHealth;
584
+ const isKillOpportunity = context.opponentHealth / opponentMaxHealth < .3;
585
+ const isOpponentVulnerable = context.opponentBalance === "VULNERABLE" || context.opponentBalance === "HELPLESS";
586
+ if (personality.archetype === PlayerArchetype.HACKER && context.timeInMatch < HACKER_OBSERVATION_DURATION_MS && !isBelowRetreatThreshold && !isKillOpportunity && !isOpponentVulnerable) return {
587
+ action: HACKER_OBSERVATION_ACTIONS[Math.floor(Math.random() * HACKER_OBSERVATION_ACTIONS.length)],
588
+ priority: 10,
589
+ reason: `Hacker observation phase: collecting data (${(context.timeInMatch / 1e3).toFixed(1)}s / ${HACKER_OBSERVATION_DURATION_MS / 1e3}s) (해커 관찰 단계)`
590
+ };
591
+ const killModeActive = this.isKillModeActive(context, personality);
592
+ const vulnerability = assessVulnerability(context);
593
+ const counterAnalysis = this.analyzeCounterOpportunity(context);
594
+ if (comboSystem.isComboActive()) return this.decideComboAction(context, personality);
595
+ const decisions = [];
596
+ const optimalRange = this.getOptimalRange(personality, context);
597
+ const distance = context.distanceToOpponent;
598
+ decisions.push(this.evaluateSurvival(context, personality));
599
+ if (counterAnalysis.counterOpportunity) decisions.push(this.evaluateLimbExposureCounter(context, personality, counterAnalysis.counterOpportunity, counterAnalysis.opponentVulnerability));
600
+ if (context.isOpponentAttacking) decisions.push(this.evaluateCounter(context, personality, killModeActive));
601
+ if (distance < optimalRange * 1.5) decisions.push(this.evaluateComboStart(context, personality, comboSystem));
602
+ decisions.push(this.evaluateStanceChange(context, personality, now));
603
+ if (distance < optimalRange * 1.8 && !killModeActive) decisions.push(this.evaluateFeint(context, personality));
604
+ if (distance <= optimalRange * 2) decisions.push(this.evaluateCloseRange(context, personality, killModeActive));
605
+ else if (distance > optimalRange * 2.5) decisions.push(this.evaluateApproach(context, personality, killModeActive));
606
+ else decisions.push(this.evaluateMidRange(context, personality));
607
+ if (!killModeActive || personality.archetype !== PlayerArchetype.MUSA) decisions.push(this.evaluateDefense(context, personality));
608
+ let modifiedDecisions = decisions;
609
+ if (personality.archetype === PlayerArchetype.JEONGBO_YOWON) modifiedDecisions = decisions.map((decision) => {
610
+ const SURVIVAL_REASON_KEYWORDS = [
611
+ "critical health",
612
+ "high pain",
613
+ "survival retreat",
614
+ "emergency retreat",
615
+ "위급 상황",
616
+ "고통 회피"
617
+ ];
618
+ const reasonLower = decision.reason.toLowerCase();
619
+ const hasSurvivalKeyword = SURVIVAL_REASON_KEYWORDS.some((keyword) => reasonLower.includes(keyword));
620
+ if (decision.action === AIActionType.RETREAT && (decision.priority === 20 || hasSurvivalKeyword)) return decision;
621
+ if (![
622
+ AIActionType.ATTACK,
623
+ AIActionType.TECHNIQUE,
624
+ AIActionType.DEFEND,
625
+ AIActionType.FEINT,
626
+ AIActionType.APPROACH,
627
+ AIActionType.CIRCLE
628
+ ].includes(decision.action)) return decision;
629
+ const weights = {
630
+ attack: decision.action === AIActionType.ATTACK ? 1 : 0,
631
+ technique: decision.action === AIActionType.TECHNIQUE ? 1 : 0,
632
+ defend: decision.action === AIActionType.DEFEND ? 1 : 0,
633
+ feint: decision.action === AIActionType.FEINT ? 1 : 0,
634
+ approach: decision.action === AIActionType.APPROACH ? 1 : 0,
635
+ circle: decision.action === AIActionType.CIRCLE ? 1 : 0
636
+ };
637
+ const modifiedWeights = this.applyJeongboExploitation(weights, vulnerability, personality);
638
+ let newPriority = decision.priority;
639
+ if (decision.action === AIActionType.ATTACK) newPriority = decision.priority * modifiedWeights.attack;
640
+ else if (decision.action === AIActionType.TECHNIQUE) newPriority = decision.priority * modifiedWeights.technique;
641
+ else if (decision.action === AIActionType.DEFEND) newPriority = decision.priority * modifiedWeights.defend;
642
+ else if (decision.action === AIActionType.FEINT) newPriority = decision.priority * modifiedWeights.feint;
643
+ else if (decision.action === AIActionType.APPROACH) newPriority = decision.priority * modifiedWeights.approach;
644
+ else if (decision.action === AIActionType.CIRCLE) newPriority = decision.priority * modifiedWeights.circle;
645
+ return {
646
+ ...decision,
647
+ priority: newPriority
648
+ };
649
+ });
650
+ if (killModeActive) {
651
+ modifiedDecisions = modifiedDecisions.map((decision) => {
652
+ const SURVIVAL_REASON_KEYWORDS = [
653
+ "critical health",
654
+ "high pain",
655
+ "survival retreat",
656
+ "emergency retreat",
657
+ "위급 상황",
658
+ "고통 회피"
659
+ ];
660
+ const reasonLower = decision.reason.toLowerCase();
661
+ const hasSurvivalKeyword = SURVIVAL_REASON_KEYWORDS.some((keyword) => reasonLower.includes(keyword));
662
+ if (decision.action === AIActionType.RETREAT && (decision.priority === 20 || hasSurvivalKeyword)) return decision;
663
+ const weights = {
664
+ attack: decision.action === AIActionType.ATTACK ? 1 : 0,
665
+ technique: decision.action === AIActionType.TECHNIQUE ? 1 : 0,
666
+ defend: decision.action === AIActionType.DEFEND ? 1 : 0,
667
+ retreat: decision.action === AIActionType.RETREAT ? 1 : 0
668
+ };
669
+ const modifiedWeights = this.applyKillModeModifiers(weights, personality, true);
670
+ let newPriority = decision.priority;
671
+ if (decision.action === AIActionType.ATTACK) newPriority = decision.priority * modifiedWeights.attack;
672
+ else if (decision.action === AIActionType.TECHNIQUE) newPriority = decision.priority * modifiedWeights.technique;
673
+ else if (decision.action === AIActionType.DEFEND) newPriority = decision.priority * modifiedWeights.defend;
674
+ else if (decision.action === AIActionType.RETREAT) newPriority = decision.priority * modifiedWeights.retreat;
675
+ return {
676
+ ...decision,
677
+ priority: newPriority
678
+ };
679
+ });
680
+ const bestDecision = modifiedDecisions.reduce((best, current) => current.priority > best.priority ? current : best);
681
+ if (personality.archetype === PlayerArchetype.JEONGBO_YOWON) this.buildPsychologicalPressure(bestDecision.action, now);
682
+ if (bestDecision.action === AIActionType.ATTACK || bestDecision.action === AIActionType.TECHNIQUE) this.consecutiveAttacks++;
683
+ else this.consecutiveAttacks = 0;
684
+ return enforceArchetypeBehavior(bestDecision, personality.archetype, context);
685
+ }
686
+ const bestDecision = modifiedDecisions.reduce((best, current) => current.priority > best.priority ? current : best);
687
+ if (personality.archetype === PlayerArchetype.JEONGBO_YOWON) this.buildPsychologicalPressure(bestDecision.action, now);
688
+ if (bestDecision.action === AIActionType.ATTACK || bestDecision.action === AIActionType.TECHNIQUE) this.consecutiveAttacks++;
689
+ else this.consecutiveAttacks = 0;
690
+ return enforceArchetypeBehavior(bestDecision, personality.archetype, context);
691
+ }
692
+ /**
693
+ * Evaluate survival tactics when critically low health
694
+ *
695
+ * **Korean Philosophy (생존 전략)**:
696
+ * - Consider both health and pain levels
697
+ * - Archetype affects retreat threshold and behavior
698
+ * - Honor code (Musa) prevents retreat above threshold
699
+ */
700
+ evaluateSurvival(context, personality) {
701
+ const healthPercent = context.playerHealth / context.playerMaxHealth;
702
+ const painLevel = context.recentDamageTaken;
703
+ const behavior = getArchetypeBehavior(personality.archetype);
704
+ const isCritical = healthPercent < personality.tacticalRetreatThreshold;
705
+ if (isCritical || healthPercent < .5 && painLevel > 50) {
706
+ if (behavior.honorCode && healthPercent > behavior.retreatThreshold / 100) return {
707
+ action: AIActionType.WAIT,
708
+ priority: 0,
709
+ reason: `Honor code prevents retreat: ${(healthPercent * 100).toFixed(1)}% (명예 규범)`
710
+ };
711
+ const retreatVector = this.calculateRetreatPosition(context);
712
+ return {
713
+ action: AIActionType.RETREAT,
714
+ targetPosition: retreatVector,
715
+ priority: 20,
716
+ reason: isCritical ? `Critical health: ${(healthPercent * 100).toFixed(1)}% (위급 상황)` : `High pain: ${painLevel.toFixed(0)} (고통 회피)`
717
+ };
718
+ }
719
+ return {
720
+ action: AIActionType.WAIT,
721
+ priority: 0,
722
+ reason: "Health stable"
723
+ };
724
+ }
725
+ /**
726
+ * Evaluate counter-attack opportunity
727
+ *
728
+ * **Kill Mode Enhancement (결정타 반격)**:
729
+ * All archetypes enhance counter behavior during kill mode based on philosophy:
730
+ * - **Musa**: Increased counter frequency (honor demands swift response)
731
+ * - **Amsalja**: Enhanced counter timing with precision strikes
732
+ * - **Hacker**: Calculated counter-attacks (analytical opportunity)
733
+ * - **Jeongbo Yowon**: Strategic counters (psychological advantage)
734
+ * - **Jojik Pokryeokbae**: Opportunistic counters (dirty tactics)
735
+ *
736
+ * @param context - Combat context
737
+ * @param personality - AI personality
738
+ * @param killModeActive - Whether kill mode is active
739
+ */
740
+ evaluateCounter(context, personality, killModeActive = false) {
741
+ let counterChance = personality.defensePreference * .8;
742
+ let counterPriority = 8;
743
+ if (killModeActive) switch (personality.archetype) {
744
+ case PlayerArchetype.MUSA:
745
+ counterChance = Math.min(.95, counterChance + .3);
746
+ counterPriority = 9;
747
+ break;
748
+ case PlayerArchetype.AMSALJA:
749
+ counterChance = Math.min(.9, counterChance + .25);
750
+ counterPriority = 9;
751
+ break;
752
+ case PlayerArchetype.HACKER:
753
+ counterChance = Math.min(.85, counterChance + .15);
754
+ counterPriority = 9;
755
+ break;
756
+ case PlayerArchetype.JEONGBO_YOWON:
757
+ counterChance = Math.min(.8, counterChance + .2);
758
+ counterPriority = 8;
759
+ break;
760
+ case PlayerArchetype.JOJIK_POKRYEOKBAE:
761
+ counterChance = Math.min(.85, counterChance + .25);
762
+ counterPriority = 8;
763
+ break;
764
+ }
765
+ const maxReach = this.getArchetypeMaxReach(personality.archetype);
766
+ if (Math.random() < counterChance && context.distanceToOpponent < maxReach) {
767
+ let killModeReason = "";
768
+ if (killModeActive) switch (personality.archetype) {
769
+ case PlayerArchetype.MUSA:
770
+ killModeReason = " - 명예 반격 (honor counter)";
771
+ break;
772
+ case PlayerArchetype.AMSALJA:
773
+ killModeReason = " - 정밀 반격 (precision counter)";
774
+ break;
775
+ case PlayerArchetype.HACKER:
776
+ killModeReason = " - 분석 반격 (analytical counter)";
777
+ break;
778
+ case PlayerArchetype.JEONGBO_YOWON:
779
+ killModeReason = " - 전략 반격 (strategic counter)";
780
+ break;
781
+ case PlayerArchetype.JOJIK_POKRYEOKBAE:
782
+ killModeReason = " - 기습 반격 (opportunistic counter)";
783
+ break;
784
+ }
785
+ return {
786
+ action: AIActionType.COUNTER,
787
+ priority: counterPriority,
788
+ reason: `Opponent attacking - counter opportunity${killModeReason}`
789
+ };
790
+ }
791
+ return {
792
+ action: AIActionType.DEFEND,
793
+ priority: 6,
794
+ reason: "Opponent attacking - defensive stance"
795
+ };
796
+ }
797
+ /**
798
+ * Evaluate counter-attack opportunity from limb exposure.
799
+ *
800
+ * **Korean**: 사지 노출 반격 평가 (Limb Exposure Counter Evaluation)
801
+ *
802
+ * Analyzes opportunities to exploit opponent's exposed limbs during technique
803
+ * execution. This is higher priority than standard counters because it targets
804
+ * specific anatomical vulnerabilities.
805
+ *
806
+ * **Defensive Archetype Priority**:
807
+ * Defensive archetypes (high defensiveness) strongly favor counter-attacks:
808
+ * - **Musa**: Honorable defense with precise counters (defensiveness ~0.7)
809
+ * - **Amsalja**: Patient assassin waiting for openings (defensiveness ~0.6)
810
+ * - **Jeongbo Yowon**: Analytical exploitation of weaknesses (defensiveness ~0.5)
811
+ *
812
+ * **Breaking Techniques**:
813
+ * When allowsBreaking is true, AI can execute joint locks and limb breaks
814
+ * for severe damage and mobility reduction.
815
+ *
816
+ * @param context - Combat context with positioning
817
+ * @param personality - AI personality with archetype and defensiveness
818
+ * @param counterOpportunity - Detected limb exposure opportunity
819
+ * @param opponentVulnerability - Opponent's vulnerability multiplier
820
+ * @returns Counter-attack decision with priority based on archetype
821
+ *
822
+ * @korean 사지노출반격평가
823
+ */
824
+ evaluateLimbExposureCounter(context, personality, counterOpportunity, opponentVulnerability) {
825
+ let counterPriority = 9;
826
+ const defensivenessBonus = personality.defensePreference * 3;
827
+ counterPriority += defensivenessBonus;
828
+ if (counterOpportunity.allowsBreaking) counterPriority += 2;
829
+ if (opponentVulnerability > 2) counterPriority += 1;
830
+ else if (opponentVulnerability > 1.5) counterPriority += .5;
831
+ if (!(context.playerStamina > context.playerMaxStamina * .2)) counterPriority -= 3;
832
+ const maxCounterRange = 1;
833
+ if (context.distanceToOpponent > maxCounterRange) return {
834
+ action: AIActionType.WAIT,
835
+ priority: 0,
836
+ reason: `Limb exposed but too far: ${context.distanceToOpponent.toFixed(2)}m > ${maxCounterRange}m`
837
+ };
838
+ const exposedLimbKorean = this.translateExposedLimb(counterOpportunity.exposedLimb);
839
+ const breakingNote = counterOpportunity.allowsBreaking ? " - 파쇄 가능 (breaking possible)" : "";
840
+ const vulnerabilityNote = ` (취약성: ${opponentVulnerability.toFixed(1)}x)`;
841
+ return {
842
+ action: AIActionType.COUNTER,
843
+ priority: counterPriority,
844
+ reason: `Exposed limb counter: ${counterOpportunity.exposedLimb} (${exposedLimbKorean})${breakingNote}${vulnerabilityNote}`
845
+ };
846
+ }
847
+ /**
848
+ * Translate exposed limb type to Korean.
849
+ *
850
+ * **Korean**: 노출 사지 번역 (Exposed Limb Translation)
851
+ *
852
+ * @param exposedLimb - English limb type identifier
853
+ * @returns Korean translation
854
+ *
855
+ * @korean 노출사지번역
856
+ */
857
+ translateExposedLimb(exposedLimb) {
858
+ return {
859
+ left_arm: "왼팔",
860
+ right_arm: "오른팔",
861
+ left_elbow: "왼팔꿈치",
862
+ right_elbow: "오른팔꿈치",
863
+ left_wrist: "왼손목",
864
+ right_wrist: "오른손목",
865
+ left_leg: "왼다리",
866
+ right_leg: "오른다리",
867
+ left_knee: "왼무릎",
868
+ right_knee: "오른무릎",
869
+ left_ankle: "왼발목",
870
+ right_ankle: "오른발목"
871
+ }[exposedLimb];
872
+ }
873
+ /**
874
+ * Evaluate combo initiation (fix for issue #2529467014)
875
+ */
876
+ evaluateComboStart(context, personality, comboSystem) {
877
+ if (comboSystem.isComboActive()) return {
878
+ action: AIActionType.WAIT,
879
+ priority: 0,
880
+ reason: "Combo already active"
881
+ };
882
+ if (this.consecutiveAttacks > 0) return {
883
+ action: AIActionType.WAIT,
884
+ priority: 0,
885
+ reason: "Combo cooldown"
886
+ };
887
+ const hasResources = context.playerKi > context.playerMaxKi * .3 && context.playerStamina > context.playerMaxStamina * .3;
888
+ const mediumRange = this.getArchetypeMediumRange(personality.archetype);
889
+ const goodDistance = context.distanceToOpponent < mediumRange;
890
+ const comboChance = Math.random() < personality.comboTendency;
891
+ if (hasResources && goodDistance && comboChance) return {
892
+ action: AIActionType.COMBO,
893
+ priority: 7,
894
+ reason: "Initiating combo sequence"
895
+ };
896
+ return {
897
+ action: AIActionType.WAIT,
898
+ priority: 0,
899
+ reason: "Combo conditions not met"
900
+ };
901
+ }
902
+ /**
903
+ * Select stance based on distance to opponent
904
+ *
905
+ * Chooses optimal stance for current combat range, prioritizing:
906
+ * 1. Overlap between distance-optimal stances and archetype preferred stances
907
+ * 2. Any distance-optimal stance if no overlap exists (expands tactical repertoire)
908
+ * 3. Avoids switching to current stance
909
+ *
910
+ * **Distance Categories**:
911
+ * - CLOSE (≤2 cells / 80px): GEON, JIN, LI, SON - Aggressive close-quarters stances
912
+ * - MID (3-4 cells / 120-160px): GAM, TAE, GAN - Adaptive mid-range stances
913
+ * - FAR (≥5 cells / 200px+): GAN, GON - Defensive distance stances
914
+ *
915
+ * @korean 거리별 자세 선택
916
+ *
917
+ * **Physics-First**: Distance parameter is in METERS.
918
+ *
919
+ * @param distance - Distance to opponent in meters
920
+ * @param preferredStances - Archetype's preferred stances
921
+ * @param currentStance - Current stance (to avoid redundant switches)
922
+ * @returns Optimal stance for distance, or undefined if no valid options
923
+ */
924
+ selectStanceForDistance(distance, preferredStances, currentStance, archetype) {
925
+ const closeRange = this.getArchetypeCloseRange(archetype);
926
+ const mediumRange = this.getArchetypeMediumRange(archetype);
927
+ let distanceCategory;
928
+ if (distance <= closeRange) distanceCategory = "CLOSE";
929
+ else if (distance <= mediumRange) distanceCategory = "MID";
930
+ else distanceCategory = "FAR";
931
+ const optimalStances = DISTANCE_BASED_STANCES[distanceCategory];
932
+ const candidates = optimalStances.filter((s) => preferredStances.includes(s));
933
+ const filtered = (candidates.length > 0 ? candidates : optimalStances).filter((s) => s !== currentStance);
934
+ if (filtered.length === 0) return;
935
+ return filtered[Math.floor(Math.random() * filtered.length)];
936
+ }
937
+ /**
938
+ * Evaluate stance change using TrigramSystem and distance-based selection
939
+ *
940
+ * **Korean Philosophy (자세 전환)**:
941
+ * Uses I Ching-based trigram system to find optimal stance transitions.
942
+ * Considers resource costs, counter-stance effectiveness, archetype preferences,
943
+ * and distance-based tactical positioning.
944
+ *
945
+ * **Dynamic Stance Rotation (Issue #dynamic-ai-stance-rotation)**:
946
+ * - Integrates distance-based stance selection for tactical variety
947
+ * - Prioritizes counter-stances for opponent matchup advantage
948
+ * - Expands tactical repertoire beyond archetype preferences when needed
949
+ */
950
+ evaluateStanceChange(context, personality, now) {
951
+ if (now - this.lastStanceChange < this.stanceChangeCooldown) return {
952
+ action: AIActionType.WAIT,
953
+ priority: 0,
954
+ reason: "Stance change on cooldown"
955
+ };
956
+ const behavior = getArchetypeBehavior(personality.archetype);
957
+ const timeInStance = Math.max(0, context.stanceFatigue?.timeInStance ?? 0);
958
+ const fatigueModifier = this.getStanceFatigueModifier(timeInStance);
959
+ const adjustedSwitchFrequency = Math.min(.95, personality.stanceSwitchFrequency * fatigueModifier);
960
+ if (!(Math.random() < adjustedSwitchFrequency)) return {
961
+ action: AIActionType.WAIT,
962
+ priority: 0,
963
+ reason: fatigueModifier > 1 ? `Stance change deferred (fatigue: ${fatigueModifier.toFixed(2)}x, probability: ${(adjustedSwitchFrequency * 100).toFixed(1)}%)` : "No stance change needed"
964
+ };
965
+ if (behavior.preferredStances.includes(context.playerStance) && !context.isOpponentAttacking && Math.random() < .6) {
966
+ const fatigueOverrideProbability = fatigueModifier > 1 ? Math.min(.8, (fatigueModifier - 1) * AIDecisionTree.FATIGUE_OVERRIDE_SCALING_FACTOR) : 0;
967
+ if (!(fatigueModifier > 1.2 && Math.random() < fatigueOverrideProbability)) return {
968
+ action: AIActionType.WAIT,
969
+ priority: 0,
970
+ reason: "Already in preferred stance (선호 자세 유지)"
971
+ };
972
+ }
973
+ const playerState = {
974
+ currentStance: context.playerStance,
975
+ ki: context.playerKi,
976
+ stamina: context.playerStamina,
977
+ archetype: personality.archetype
978
+ };
979
+ const distanceStance = this.selectStanceForDistance(context.distanceToOpponent, behavior.preferredStances, context.playerStance, personality.archetype);
980
+ if (distanceStance && this.trigramSystem.canTransitionTo(context.playerStance, distanceStance, playerState)) {
981
+ this.lastStanceChange = now;
982
+ return {
983
+ action: AIActionType.STANCE_CHANGE,
984
+ targetStance: distanceStance,
985
+ priority: 5,
986
+ reason: `Distance-optimal stance (거리 최적 자세: ${distanceStance})`
987
+ };
988
+ }
989
+ const counterStance = this.trigramSystem.getCounterStance(context.opponentStance);
990
+ if (counterStance !== context.playerStance && this.trigramSystem.canTransitionTo(context.playerStance, counterStance, playerState)) {
991
+ this.lastStanceChange = now;
992
+ return {
993
+ action: AIActionType.STANCE_CHANGE,
994
+ targetStance: counterStance,
995
+ priority: 5,
996
+ reason: `Counter stance to ${context.opponentStance} (상극 대응)`
997
+ };
998
+ }
999
+ const recommendedStance = this.trigramSystem.recommendStance(playerState);
1000
+ if (this.trigramSystem.canTransitionTo(context.playerStance, recommendedStance, playerState)) {
1001
+ this.lastStanceChange = now;
1002
+ return {
1003
+ action: AIActionType.STANCE_CHANGE,
1004
+ targetStance: recommendedStance,
1005
+ priority: 4,
1006
+ reason: `Optimal stance transition via TrigramSystem (팔괘 전환)`
1007
+ };
1008
+ }
1009
+ const preferredAvailable = behavior.preferredStances.find((stance) => stance !== context.playerStance && this.trigramSystem.canTransitionTo(context.playerStance, stance, playerState));
1010
+ if (preferredAvailable) {
1011
+ this.lastStanceChange = now;
1012
+ return {
1013
+ action: AIActionType.STANCE_CHANGE,
1014
+ targetStance: preferredAvailable,
1015
+ priority: 4,
1016
+ reason: `Switching to preferred stance (선호 자세 전환: ${preferredAvailable})`
1017
+ };
1018
+ }
1019
+ return {
1020
+ action: AIActionType.WAIT,
1021
+ priority: 0,
1022
+ reason: "No viable stance transition"
1023
+ };
1024
+ }
1025
+ /**
1026
+ * Evaluate feint attack
1027
+ */
1028
+ evaluateFeint(context, personality) {
1029
+ const maxReach = this.getArchetypeMaxReach(personality.archetype);
1030
+ if (Math.random() < personality.feintChance && context.distanceToOpponent < maxReach) return {
1031
+ action: AIActionType.FEINT,
1032
+ priority: 4,
1033
+ reason: "Feinting to bait opponent"
1034
+ };
1035
+ return {
1036
+ action: AIActionType.WAIT,
1037
+ priority: 0,
1038
+ reason: "No feint opportunity"
1039
+ };
1040
+ }
1041
+ /**
1042
+ * Evaluate close range tactics with vital point targeting
1043
+ *
1044
+ * **Korean Philosophy (급소 공격)**:
1045
+ * At close range, AI targets specific vital points based on difficulty level.
1046
+ * Higher difficulty = more precise targeting of critical points.
1047
+ *
1048
+ * **Kill Mode Enhancement (결정타)**:
1049
+ * When kill mode is active, AI prioritizes finishing techniques with boosted priority.
1050
+ *
1051
+ * @param context - Combat context
1052
+ * @param personality - AI personality
1053
+ * @param killModeActive - Whether kill mode is active (opponent <30% health or vulnerable)
1054
+ */
1055
+ evaluateCloseRange(context, personality, killModeActive = false) {
1056
+ const hasResources = context.playerKi > 10 && context.playerStamina > 15;
1057
+ const aggression = personality.aggressionLevel;
1058
+ const targetVitalPoint = this.selectVitalPointTarget(context, personality);
1059
+ const vitalPointName = targetVitalPoint ? getVitalPointById(targetVitalPoint)?.names.korean ?? targetVitalPoint : void 0;
1060
+ if (killModeActive) {
1061
+ const killModeSuffix = personality.archetype === PlayerArchetype.MUSA ? " (결정타 - 압도적 공격)" : " (결정타 - 즉사 기술)";
1062
+ if (hasResources) return {
1063
+ action: AIActionType.TECHNIQUE,
1064
+ targetVitalPoint,
1065
+ priority: targetVitalPoint ? 10 : 9,
1066
+ reason: targetVitalPoint ? `Kill mode - finishing technique on vital point (급소 결정타: ${vitalPointName})${killModeSuffix}` : `Kill mode - finishing technique${killModeSuffix}`
1067
+ };
1068
+ else return {
1069
+ action: AIActionType.ATTACK,
1070
+ targetVitalPoint,
1071
+ priority: targetVitalPoint ? 9 : 8,
1072
+ reason: targetVitalPoint ? `Kill mode - finishing attack (결정타 급소: ${vitalPointName})${killModeSuffix}` : `Kill mode - finishing attack${killModeSuffix}`
1073
+ };
1074
+ }
1075
+ const actionRoll = Math.random();
1076
+ const attackThreshold = aggression * .95;
1077
+ const techniqueThreshold = hasResources ? aggression * .5 : 0;
1078
+ if (actionRoll < attackThreshold) return {
1079
+ action: AIActionType.ATTACK,
1080
+ targetVitalPoint,
1081
+ priority: targetVitalPoint ? 8 : 7,
1082
+ reason: targetVitalPoint ? `Close range - vital point attack (급소 타격: ${vitalPointName})` : "Close range - aggressive strike"
1083
+ };
1084
+ else if (actionRoll < attackThreshold + techniqueThreshold && hasResources) return {
1085
+ action: AIActionType.TECHNIQUE,
1086
+ targetVitalPoint,
1087
+ priority: targetVitalPoint ? 8 : 7,
1088
+ reason: targetVitalPoint ? `Close range - technique on vital point (급소 기술: ${vitalPointName})` : "Close range - technique execution"
1089
+ };
1090
+ else return {
1091
+ action: AIActionType.DEFEND,
1092
+ priority: 4,
1093
+ reason: "Close range - defensive posture (방어 자세)"
1094
+ };
1095
+ }
1096
+ /**
1097
+ * Select vital point to target based on difficulty and stance
1098
+ *
1099
+ * **Korean Philosophy (급소 선택)**:
1100
+ * - Beginner AI: Random targeting or no specific target
1101
+ * - Intermediate AI: Favors easier vital points
1102
+ * - Advanced AI: Targets appropriate points for current stance
1103
+ * - Master AI: Targets critical points with high precision
1104
+ */
1105
+ selectVitalPointTarget(context, personality) {
1106
+ if (KOREAN_VITAL_POINTS.length === 0) return;
1107
+ const targetChance = this.difficultyLevel * personality.aggressionLevel;
1108
+ if (Math.random() > targetChance) return;
1109
+ const effectivePoints = KOREAN_VITAL_POINTS.filter((point) => point.effectiveStances?.includes(context.playerStance));
1110
+ if (effectivePoints.length === 0) return KOREAN_VITAL_POINTS[Math.floor(Math.random() * KOREAN_VITAL_POINTS.length)].id;
1111
+ if (this.difficultyLevel < .3) return effectivePoints[Math.floor(Math.random() * effectivePoints.length)].id;
1112
+ else if (this.difficultyLevel < .6) {
1113
+ const easierPoints = effectivePoints.filter((p) => p.targetingDifficulty < .7);
1114
+ if (easierPoints.length > 0) return [...easierPoints].sort((a, b) => a.targetingDifficulty - b.targetingDifficulty)[0].id;
1115
+ return effectivePoints[0].id;
1116
+ } else {
1117
+ const criticalPoints = effectivePoints.filter((p) => p.severity === "critical" || p.severity === "major");
1118
+ if (criticalPoints.length > 0) return [...criticalPoints].sort((a, b) => (b.baseDamage ?? 0) - (a.baseDamage ?? 0))[0].id;
1119
+ return [...effectivePoints].sort((a, b) => (b.baseDamage ?? 0) - (a.baseDamage ?? 0))[0]?.id ?? effectivePoints[0].id;
1120
+ }
1121
+ }
1122
+ /**
1123
+ * Calculate stance fatigue modifier for increased switching probability
1124
+ *
1125
+ * Applies time-based modifiers to encourage dynamic stance rotation:
1126
+ * - 0-10 seconds: No modifier (1.0x)
1127
+ * - 10-20 seconds: +20% increase (1.2x multiplier)
1128
+ * - 20+ seconds: +50% increase (1.5x multiplier)
1129
+ *
1130
+ * This ensures AI doesn't stay locked in one stance for extended periods,
1131
+ * promoting the use of all 8 trigram stances throughout combat.
1132
+ *
1133
+ * **Korean Philosophy (자세 피로도)**:
1134
+ * Remaining in one stance too long reduces tactical flexibility and
1135
+ * makes the fighter predictable. The Eight Trigram system requires
1136
+ * constant adaptation and flow between stances.
1137
+ *
1138
+ * @korean 자세 피로도 배율 계산
1139
+ *
1140
+ * @param timeInStance - Time in current stance in milliseconds
1141
+ * @returns Stance switch frequency multiplier (1.0 = no change, >1.0 = increased probability)
1142
+ */
1143
+ getStanceFatigueModifier(timeInStance) {
1144
+ if (timeInStance > 2e4) return 1.5;
1145
+ if (timeInStance > 1e4) return 1.2;
1146
+ return 1;
1147
+ }
1148
+ /**
1149
+ * Get optimal combat range based on AI personality archetype
1150
+ *
1151
+ * Uses archetype behavior profiles to determine preferred combat distance.
1152
+ * **Physics-First**: Returns distance in METERS directly.
1153
+ *
1154
+ * @param personality - AI personality with archetype behavior
1155
+ * @param _context - Combat context (unused, kept for API compatibility)
1156
+ * @returns Optimal range in meters
1157
+ * @korean 최적 전투 거리 - 원형별 선호 거리 (미터)
1158
+ */
1159
+ getOptimalRange(personality, _context) {
1160
+ return getArchetypeBehavior(personality.archetype).optimalRange * .4;
1161
+ }
1162
+ /**
1163
+ * Evaluate approach tactics with archetype-specific behavior
1164
+ *
1165
+ * **Korean Philosophy (접근 전략)**:
1166
+ * - Musa charges directly (70% direct path)
1167
+ * - Amsalja uses flanking movements (40% diagonal approach)
1168
+ * - Hacker maintains optimal distance (prefers not to close too much)
1169
+ *
1170
+ * **Kill Mode Enhancement (결정타 접근)**:
1171
+ * All archetypes enhance movement speed in kill mode based on combat philosophy:
1172
+ * - **Musa**: Direct charging with leg shifts for maximum speed (40% faster)
1173
+ * - **Amsalja**: Swift stepping patterns for rapid positioning (30% faster)
1174
+ * - **Hacker**: Calculated approach for optimal strike position (20% faster)
1175
+ * - **Jeongbo Yowon**: Strategic positioning for control (25% faster)
1176
+ * - **Jojik Pokryeokbae**: Unpredictable rush for brutal finish (35% faster)
1177
+ *
1178
+ * @param context - Combat context
1179
+ * @param personality - AI personality
1180
+ * @param killModeActive - Whether kill mode is active
1181
+ */
1182
+ evaluateApproach(context, personality, killModeActive = false) {
1183
+ const optimalRange = this.getOptimalRange(personality, context);
1184
+ const distance = context.distanceToOpponent;
1185
+ if (distance <= optimalRange * 1.2) return {
1186
+ action: AIActionType.WAIT,
1187
+ priority: 0,
1188
+ reason: "Already at optimal range"
1189
+ };
1190
+ let movementBias = this.getArchetypeMovementBias(personality.archetype);
1191
+ if (killModeActive) switch (personality.archetype) {
1192
+ case PlayerArchetype.MUSA:
1193
+ movementBias *= 1.4;
1194
+ break;
1195
+ case PlayerArchetype.AMSALJA:
1196
+ movementBias *= 1.3;
1197
+ break;
1198
+ case PlayerArchetype.HACKER:
1199
+ movementBias *= 1.2;
1200
+ break;
1201
+ case PlayerArchetype.JEONGBO_YOWON:
1202
+ movementBias *= 1.25;
1203
+ break;
1204
+ case PlayerArchetype.JOJIK_POKRYEOKBAE:
1205
+ movementBias *= 1.35;
1206
+ break;
1207
+ }
1208
+ let approachPos;
1209
+ if (personality.archetype === PlayerArchetype.MUSA && Math.random() < .7) approachPos = this.calculateDirectApproach(context, killModeActive);
1210
+ else if (personality.archetype === PlayerArchetype.AMSALJA && Math.random() < .4) approachPos = this.calculateFlankingApproach(context, killModeActive);
1211
+ else approachPos = this.calculateApproachPosition(context);
1212
+ let basePriority = 4;
1213
+ if (killModeActive && distance > optimalRange * 1.5) switch (personality.archetype) {
1214
+ case PlayerArchetype.MUSA:
1215
+ case PlayerArchetype.JOJIK_POKRYEOKBAE:
1216
+ basePriority = 6;
1217
+ break;
1218
+ case PlayerArchetype.AMSALJA:
1219
+ basePriority = 6;
1220
+ break;
1221
+ case PlayerArchetype.HACKER:
1222
+ case PlayerArchetype.JEONGBO_YOWON:
1223
+ basePriority = 5;
1224
+ break;
1225
+ }
1226
+ const priorityBoost = Math.min(2, (distance - optimalRange) / optimalRange) * movementBias * .8;
1227
+ const finalPriority = basePriority + priorityBoost;
1228
+ let killModeReason = "";
1229
+ if (killModeActive) switch (personality.archetype) {
1230
+ case PlayerArchetype.MUSA:
1231
+ killModeReason = " - 돌격 (charging)";
1232
+ break;
1233
+ case PlayerArchetype.AMSALJA:
1234
+ killModeReason = " - 신속 접근 (swift approach)";
1235
+ break;
1236
+ case PlayerArchetype.HACKER:
1237
+ killModeReason = " - 분석 접근 (calculated approach)";
1238
+ break;
1239
+ case PlayerArchetype.JEONGBO_YOWON:
1240
+ killModeReason = " - 전략 접근 (strategic approach)";
1241
+ break;
1242
+ case PlayerArchetype.JOJIK_POKRYEOKBAE:
1243
+ killModeReason = " - 돌진 (rush)";
1244
+ break;
1245
+ }
1246
+ return {
1247
+ action: AIActionType.APPROACH,
1248
+ targetPosition: approachPos,
1249
+ priority: Math.min(9, finalPriority),
1250
+ reason: `Moving closer (distance: ${Math.round(distance)}, optimal: ${optimalRange})${killModeReason}`
1251
+ };
1252
+ }
1253
+ /**
1254
+ * Get archetype-specific movement bias multipliers
1255
+ *
1256
+ * Applies movement pattern modifiers based on archetype behavior profiles:
1257
+ * - Aggressive: High forward pressure (2.0x)
1258
+ * - Evasive: Moderate mobility (1.5x)
1259
+ * - Analytical: Conservative approach (0.8x-1.0x)
1260
+ * - Unpredictable: Variable movement (1.3x)
1261
+ *
1262
+ * @korean 원형별 이동 성향
1263
+ */
1264
+ getArchetypeMovementBias(archetype) {
1265
+ switch (getArchetypeBehavior(archetype).movementPattern) {
1266
+ case "aggressive": return 2;
1267
+ case "evasive": return 1.5;
1268
+ case "analytical": return archetype === PlayerArchetype.HACKER ? .8 : 1;
1269
+ case "unpredictable": return 1.3;
1270
+ default: return 1;
1271
+ }
1272
+ }
1273
+ /**
1274
+ * Calculate direct approach position (straight line to opponent)
1275
+ * Used primarily by Musa archetype for charging attacks
1276
+ *
1277
+ * **Kill Mode Enhancement (결정타 돌격)**:
1278
+ * - Larger step size for faster closing with leg shifts
1279
+ * - Aggressive stride pattern for maximum forward momentum
1280
+ *
1281
+ * **Physics-First**: All calculations in METERS.
1282
+ *
1283
+ * @param context - Combat context
1284
+ * @param killModeActive - Whether kill mode is active
1285
+ */
1286
+ calculateDirectApproach(context, killModeActive = false) {
1287
+ const dx = context.opponentPosition.x - context.playerPosition.x;
1288
+ const dy = context.opponentPosition.y - context.playerPosition.y;
1289
+ const distance = Math.sqrt(dx * dx + dy * dy);
1290
+ if (distance < AI_MOVEMENT_METERS.MIN_DISTANCE_THRESHOLD) return this.clampToArenaBoundsMeters(context.playerPosition, context);
1291
+ const baseStepSize = AI_MOVEMENT_METERS.STEP_SIZE;
1292
+ const stepSize = killModeActive ? Math.min(baseStepSize * 1.5, distance) : Math.min(baseStepSize, distance);
1293
+ return this.clampToArenaBoundsMeters({
1294
+ x: context.playerPosition.x + dx / distance * stepSize,
1295
+ y: context.playerPosition.y + dy / distance * stepSize
1296
+ }, context);
1297
+ }
1298
+ /**
1299
+ * Calculate flanking approach position (diagonal/side approach)
1300
+ * Used primarily by Amsalja archetype for stealth positioning
1301
+ *
1302
+ * **Kill Mode Enhancement (결정타 측면 공격)**:
1303
+ * - Tighter flanking angle for more aggressive positioning
1304
+ * - Swift stepping pattern for rapid side movement
1305
+ *
1306
+ * **Physics-First**: All calculations in METERS.
1307
+ *
1308
+ * @param context - Combat context
1309
+ * @param killModeActive - Whether kill mode is active
1310
+ */
1311
+ calculateFlankingApproach(context, killModeActive = false) {
1312
+ const dx = context.opponentPosition.x - context.playerPosition.x;
1313
+ const dy = context.opponentPosition.y - context.playerPosition.y;
1314
+ const distance = Math.sqrt(dx * dx + dy * dy);
1315
+ if (distance < AI_MOVEMENT_METERS.MIN_DISTANCE_THRESHOLD) return this.clampToArenaBoundsMeters(context.playerPosition, context);
1316
+ const baseFlankOffset = AI_MOVEMENT_METERS.FLANK_OFFSET_BASE + Math.random() * AI_MOVEMENT_METERS.FLANK_OFFSET_RANDOM;
1317
+ const flankOffset = killModeActive ? baseFlankOffset * .7 : baseFlankOffset;
1318
+ const perpX = -dy / distance;
1319
+ const perpY = dx / distance;
1320
+ const flankSide = Math.random() < .5 ? 1 : -1;
1321
+ return this.clampToArenaBoundsMeters({
1322
+ x: context.opponentPosition.x + perpX * flankOffset * flankSide,
1323
+ y: context.opponentPosition.y + perpY * flankOffset * flankSide
1324
+ }, context);
1325
+ }
1326
+ /**
1327
+ * Clamp position to arena boundaries with proper margins
1328
+ * Centralizes boundary validation logic for all movement calculations
1329
+ *
1330
+ * **Physics-First**: Works entirely in METERS using worldWidthMeters/worldDepthMeters.
1331
+ * Arena is centered at origin (0,0), so bounds are -halfWidth to +halfWidth.
1332
+ *
1333
+ * @param position - Position to clamp (in meters)
1334
+ * @param context - Combat context with arena dimensions in meters
1335
+ */
1336
+ clampToArenaBoundsMeters(position, context) {
1337
+ const halfWidth = context.arenaBounds.worldWidthMeters / 2;
1338
+ const halfDepth = context.arenaBounds.worldDepthMeters / 2;
1339
+ const marginX = AI_MOVEMENT_METERS.ARENA_MARGIN_X;
1340
+ const marginY = AI_MOVEMENT_METERS.ARENA_MARGIN_Y;
1341
+ return {
1342
+ x: Math.max(-halfWidth + marginX, Math.min(halfWidth - marginX, position.x)),
1343
+ y: Math.max(-halfDepth + marginY, Math.min(halfDepth - marginY, position.y))
1344
+ };
1345
+ }
1346
+ /**
1347
+ * Evaluate mid-range tactics with distance awareness
1348
+ *
1349
+ * **Korean Philosophy (중거리 전술)**:
1350
+ * - Considers optimal range for archetype
1351
+ * - Hacker prefers to maintain this range (analytical pattern)
1352
+ * - Jeongbo uses strategic timing and analysis
1353
+ * - Others may close or open distance based on situation
1354
+ */
1355
+ evaluateMidRange(context, personality) {
1356
+ const hasResources = context.playerKi > context.playerMaxKi * .3;
1357
+ const optimalRange = this.getOptimalRange(personality, context);
1358
+ const distance = context.distanceToOpponent;
1359
+ const tacticRoll = Math.random();
1360
+ const behavior = getArchetypeBehavior(personality.archetype);
1361
+ if (behavior.movementPattern === "analytical" && Math.abs(distance - optimalRange) < .5) {
1362
+ const circlePos = this.calculateCirclePosition(context);
1363
+ const archetypeName = personality.archetype === PlayerArchetype.HACKER ? "사이버" : "정보";
1364
+ return {
1365
+ action: AIActionType.CIRCLE,
1366
+ targetPosition: circlePos,
1367
+ priority: 6,
1368
+ reason: `${archetypeName} maintaining optimal mid-range (${archetypeName} 위치 유지)`
1369
+ };
1370
+ }
1371
+ if (distance > optimalRange * 1.5) {
1372
+ const approachPos = this.calculateApproachPosition(context);
1373
+ return {
1374
+ action: AIActionType.APPROACH,
1375
+ targetPosition: approachPos,
1376
+ priority: 5,
1377
+ reason: "Moving to optimal range (최적 거리로 이동)"
1378
+ };
1379
+ }
1380
+ if (distance < optimalRange * .7 && behavior.movementPattern === "analytical") {
1381
+ const retreatPos = this.calculateRetreatPosition(context);
1382
+ return {
1383
+ action: AIActionType.RETREAT,
1384
+ targetPosition: retreatPos,
1385
+ priority: 5,
1386
+ reason: "Creating tactical space (거리 확보)"
1387
+ };
1388
+ }
1389
+ if (behavior.movementPattern === "unpredictable") {
1390
+ const randomAction = tacticRoll < .33 ? "attack" : tacticRoll < .66 ? "circle" : "approach";
1391
+ if (randomAction === "attack" && hasResources) return {
1392
+ action: AIActionType.TECHNIQUE,
1393
+ priority: 5,
1394
+ reason: "Unpredictable attack (예측불가 공격)"
1395
+ };
1396
+ else if (randomAction === "circle") {
1397
+ const circlePos = this.calculateCirclePosition(context);
1398
+ return {
1399
+ action: AIActionType.CIRCLE,
1400
+ targetPosition: circlePos,
1401
+ priority: 4,
1402
+ reason: "Unpredictable movement (예측불가 이동)"
1403
+ };
1404
+ }
1405
+ }
1406
+ if (tacticRoll < .3 && hasResources) return {
1407
+ action: AIActionType.TECHNIQUE,
1408
+ priority: 5,
1409
+ reason: "Mid-range technique (중거리 기술)"
1410
+ };
1411
+ else if (tacticRoll < .6) {
1412
+ const circlePos = this.calculateCirclePosition(context);
1413
+ return {
1414
+ action: AIActionType.CIRCLE,
1415
+ targetPosition: circlePos,
1416
+ priority: 4,
1417
+ reason: "Tactical repositioning (전술적 이동)"
1418
+ };
1419
+ } else {
1420
+ const approachPos = this.calculateApproachPosition(context);
1421
+ return {
1422
+ action: AIActionType.APPROACH,
1423
+ targetPosition: approachPos,
1424
+ priority: 4,
1425
+ reason: "Moving to optimal range (최적 거리로 이동)"
1426
+ };
1427
+ }
1428
+ }
1429
+ /**
1430
+ * Evaluate defensive tactics
1431
+ */
1432
+ evaluateDefense(context, personality) {
1433
+ if (Math.random() < personality.defensePreference && context.recentDamageTaken > 20) return {
1434
+ action: AIActionType.DEFEND,
1435
+ priority: 6,
1436
+ reason: "Defensive response to damage"
1437
+ };
1438
+ return {
1439
+ action: AIActionType.WAIT,
1440
+ priority: 0,
1441
+ reason: "No defensive need"
1442
+ };
1443
+ }
1444
+ /**
1445
+ * Decide combo action
1446
+ */
1447
+ decideComboAction(_context, _personality) {
1448
+ return {
1449
+ action: AIActionType.COMBO,
1450
+ priority: 9,
1451
+ reason: "Continuing active combo"
1452
+ };
1453
+ }
1454
+ /**
1455
+ * Calculate retreat position
1456
+ *
1457
+ * **Physics-First**: All calculations in METERS.
1458
+ */
1459
+ calculateRetreatPosition(context) {
1460
+ const dx = context.playerPosition.x - context.opponentPosition.x;
1461
+ const dy = context.playerPosition.y - context.opponentPosition.y;
1462
+ const distance = Math.sqrt(dx * dx + dy * dy);
1463
+ const minDistance = AI_MOVEMENT_METERS.MIN_DISTANCE_THRESHOLD;
1464
+ const retreatDistance = 1.5;
1465
+ if (distance < minDistance) return this.clampToArenaBoundsMeters({
1466
+ x: context.playerPosition.x + retreatDistance,
1467
+ y: context.playerPosition.y
1468
+ }, context);
1469
+ const nx = dx / distance;
1470
+ const ny = dy / distance;
1471
+ return this.clampToArenaBoundsMeters({
1472
+ x: context.playerPosition.x + nx * retreatDistance,
1473
+ y: context.playerPosition.y + ny * retreatDistance
1474
+ }, context);
1475
+ }
1476
+ /**
1477
+ * Calculate approach position
1478
+ *
1479
+ * **Physics-First**: All calculations in METERS.
1480
+ */
1481
+ calculateApproachPosition(context) {
1482
+ const offsetX = (Math.random() - .5) * .8;
1483
+ const offsetY = (Math.random() - .5) * .6;
1484
+ return this.clampToArenaBoundsMeters({
1485
+ x: context.opponentPosition.x + offsetX,
1486
+ y: context.opponentPosition.y + offsetY
1487
+ }, context);
1488
+ }
1489
+ /**
1490
+ * Calculate circle position
1491
+ *
1492
+ * **Physics-First**: All calculations in METERS.
1493
+ */
1494
+ calculateCirclePosition(context) {
1495
+ const angle = Math.atan2(context.opponentPosition.y - context.playerPosition.y, context.opponentPosition.x - context.playerPosition.x);
1496
+ const circleRadius = 1.5 + Math.random() * .5;
1497
+ return this.clampToArenaBoundsMeters({
1498
+ x: context.opponentPosition.x + Math.cos(angle + Math.PI / 2) * circleRadius,
1499
+ y: context.opponentPosition.y + Math.sin(angle + Math.PI / 2) * circleRadius
1500
+ }, context);
1501
+ }
1502
+ /**
1503
+ * Reset decision state
1504
+ */
1505
+ reset() {
1506
+ this.lastDecisionTime = 0;
1507
+ this.consecutiveAttacks = 0;
1508
+ this.lastStanceChange = 0;
1509
+ this.psychologicalPressure = 0;
1510
+ this.lastPressureActionTime = 0;
1511
+ }
1512
+ };
1513
+ //#endregion
1514
+ export { AIDecisionTree };
1515
+
1516
+ //# sourceMappingURL=DecisionTree.js.map