@zylem/behaviors 0.8.9 → 0.8.11

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 (168) hide show
  1. package/dist/acrobatics-2d.d.ts +25 -0
  2. package/dist/acrobatics-2d.js +37 -0
  3. package/dist/action-rpg.d.ts +21 -0
  4. package/dist/action-rpg.js +39 -0
  5. package/dist/adventure-tools.d.ts +22 -0
  6. package/dist/adventure-tools.js +39 -0
  7. package/dist/behavior-descriptor-NS_qnzzp.d.ts +4527 -0
  8. package/dist/behavior-metadata-Drm1zxI2.d.ts +13 -0
  9. package/dist/catalog.d.ts +2143 -0
  10. package/dist/catalog.js +9 -0
  11. package/dist/chunk-2BE5BW7D.js +130 -0
  12. package/dist/{chunk-CTSYM56P.js → chunk-2QCCLHJC.js} +10 -6
  13. package/dist/chunk-2UGT4MIF.js +94 -0
  14. package/dist/chunk-3J3ISPFQ.js +99 -0
  15. package/dist/chunk-3LBGEWT6.js +124 -0
  16. package/dist/{chunk-UUMH3DC3.js → chunk-3QBNWT7B.js} +5 -1
  17. package/dist/chunk-3T44EDXU.js +114 -0
  18. package/dist/chunk-5AJJ44QK.js +129 -0
  19. package/dist/{chunk-YDLO5M7S.js → chunk-5SMXQ6AU.js} +1 -0
  20. package/dist/chunk-5VJIP535.js +71 -0
  21. package/dist/chunk-6DTIJB7B.js +166 -0
  22. package/dist/chunk-73MHJY6R.js +78 -0
  23. package/dist/chunk-73YASAYS.js +137 -0
  24. package/dist/{chunk-LLDLVVG4.js → chunk-7HGDADLB.js} +25 -9
  25. package/dist/chunk-7IOQEXYR.js +92 -0
  26. package/dist/{chunk-OU2SW4U5.js → chunk-APAM55J3.js} +10 -6
  27. package/dist/chunk-BLTBZJPG.js +126 -0
  28. package/dist/chunk-BN6QZDR5.js +90 -0
  29. package/dist/chunk-BR33KT4Z.js +3186 -0
  30. package/dist/chunk-C5AYL42A.js +138 -0
  31. package/dist/{chunk-OBF6BIA2.js → chunk-CBQSC6W3.js} +2 -2
  32. package/dist/chunk-DDLZLJ7W.js +8 -0
  33. package/dist/chunk-DRIXFB4C.js +132 -0
  34. package/dist/{chunk-7CE6OHLW.js → chunk-DTLUKSX2.js} +6 -2
  35. package/dist/{chunk-TK3AXXXI.js → chunk-EMEA45JQ.js} +10 -6
  36. package/dist/chunk-EQFLPRF7.js +130 -0
  37. package/dist/{chunk-M25QJBDN.js → chunk-GNRMH7D3.js} +18 -6
  38. package/dist/chunk-GYEKT5AY.js +102 -0
  39. package/dist/{chunk-SHZZ2QRV.js → chunk-HCWLIPXP.js} +5 -1
  40. package/dist/{chunk-WHKPWIQO.js → chunk-HMVEQB2T.js} +1 -0
  41. package/dist/chunk-HQ2UFI3S.js +116 -0
  42. package/dist/chunk-I52PC5IU.js +128 -0
  43. package/dist/{chunk-CB3C7CRD.js → chunk-IAIJG2PB.js} +10 -6
  44. package/dist/{chunk-NDJO56BB.js → chunk-IJILTFEL.js} +5 -1
  45. package/dist/{chunk-7GGR26YA.js → chunk-IRNU4JGV.js} +10 -6
  46. package/dist/chunk-IRPBFVAK.js +141 -0
  47. package/dist/chunk-JFBR4FNX.js +140 -0
  48. package/dist/{chunk-ERS6SNA5.js → chunk-K34N2CBL.js} +5 -1
  49. package/dist/chunk-LMMF7KXF.js +178 -0
  50. package/dist/chunk-LWGJ3QQZ.js +107 -0
  51. package/dist/chunk-MPNGQLHZ.js +132 -0
  52. package/dist/chunk-OH5LJAEJ.js +135 -0
  53. package/dist/{chunk-57GLKGEX.js → chunk-P6TMZSWF.js} +32 -7
  54. package/dist/chunk-PDHHOVVQ.js +126 -0
  55. package/dist/{chunk-7TIIRJKF.js → chunk-RUBKGAPS.js} +5 -1
  56. package/dist/chunk-S44ZHYE6.js +1912 -0
  57. package/dist/chunk-SFMJNAW3.js +128 -0
  58. package/dist/{chunk-E2MOFIDH.js → chunk-SKKVOH6D.js} +13 -7
  59. package/dist/{chunk-RR3XNDKG.js → chunk-T2LAQQDS.js} +1 -1
  60. package/dist/chunk-TSYXRRS4.js +125 -0
  61. package/dist/chunk-TZHO6P22.js +150 -0
  62. package/dist/chunk-V26L6MY6.js +127 -0
  63. package/dist/chunk-V4M46BF6.js +105 -0
  64. package/dist/chunk-VSFWETXS.js +127 -0
  65. package/dist/chunk-VU4LTE2X.js +147 -0
  66. package/dist/chunk-WF6HC5U3.js +8 -0
  67. package/dist/chunk-WG5NCDS4.js +99 -0
  68. package/dist/{chunk-7LHXAEOZ.js → chunk-WUYHS6JZ.js} +6 -2
  69. package/dist/chunk-XNRY6NOC.js +120 -0
  70. package/dist/{chunk-55CFXXZH.js → chunk-XT47QZQ6.js} +32 -7
  71. package/dist/chunk-Y5CCNMJI.js +58 -0
  72. package/dist/chunk-YVVB6YMG.js +133 -0
  73. package/dist/chunk-ZZXTGVGN.js +131 -0
  74. package/dist/combat-ai.d.ts +21 -0
  75. package/dist/combat-ai.js +41 -0
  76. package/dist/{components--RTwuT4S.d.ts → components-ClmBORMP.d.ts} +1 -1
  77. package/dist/cooldown.d.ts +2 -8
  78. package/dist/cooldown.js +3 -2
  79. package/dist/coordinators/boundary-ricochet-3d.d.ts +3 -2
  80. package/dist/coordinators/boundary-ricochet-3d.js +2 -2
  81. package/dist/coordinators/boundary-ricochet.d.ts +3 -2
  82. package/dist/coordinators/boundary-ricochet.js +2 -2
  83. package/dist/coordinators/multidirectional-space-shooter.d.ts +3 -2
  84. package/dist/coordinators/multidirectional-space-shooter.js +2 -2
  85. package/dist/coordinators/top-down-shooter.d.ts +3 -2
  86. package/dist/coordinators/top-down-shooter.js +2 -2
  87. package/dist/core.d.ts +387 -26
  88. package/dist/core.js +1583 -6
  89. package/dist/destructible-3d.d.ts +3 -2
  90. package/dist/destructible-3d.js +3 -2
  91. package/dist/destructible-prebake.d.ts +1 -1
  92. package/dist/environmental-locomotion.d.ts +23 -0
  93. package/dist/environmental-locomotion.js +35 -0
  94. package/dist/first-person.d.ts +3 -2
  95. package/dist/first-person.js +25 -4
  96. package/dist/golf-racket.d.ts +21 -0
  97. package/dist/golf-racket.js +37 -0
  98. package/dist/index.d.ts +28 -6
  99. package/dist/index.js +766 -82
  100. package/dist/jumper-2d.d.ts +2 -1
  101. package/dist/jumper-2d.js +25 -4
  102. package/dist/jumper-3d.d.ts +2 -1
  103. package/dist/jumper-3d.js +25 -4
  104. package/dist/lane-defense.d.ts +21 -0
  105. package/dist/lane-defense.js +39 -0
  106. package/dist/life-simulation.d.ts +21 -0
  107. package/dist/life-simulation.js +39 -0
  108. package/dist/matching-pinball.d.ts +21 -0
  109. package/dist/matching-pinball.js +39 -0
  110. package/dist/melee-combat.d.ts +22 -0
  111. package/dist/melee-combat.js +45 -0
  112. package/dist/{moveable-CFOHmblC.d.ts → moveable-CXK2wEZL.d.ts} +2 -2
  113. package/dist/particle-emitter/presets.d.ts +1 -1
  114. package/dist/particle-emitter.d.ts +5 -4
  115. package/dist/particle-emitter.js +3 -2
  116. package/dist/{payload-BQzu-oY_.d.ts → payload-WEzfgjSL.d.ts} +1 -1
  117. package/dist/platformer-2d.d.ts +2 -1
  118. package/dist/platformer-2d.js +25 -4
  119. package/dist/platformer-3d.d.ts +2 -1
  120. package/dist/platformer-3d.js +25 -4
  121. package/dist/racing-vehicles.d.ts +21 -0
  122. package/dist/racing-vehicles.js +37 -0
  123. package/dist/rhythm-performance.d.ts +21 -0
  124. package/dist/rhythm-performance.js +39 -0
  125. package/dist/ricochet-2d.d.ts +2 -1
  126. package/dist/ricochet-2d.js +25 -4
  127. package/dist/ricochet-3d.d.ts +2 -1
  128. package/dist/ricochet-3d.js +25 -4
  129. package/dist/runtime-2d.d.ts +2 -1
  130. package/dist/runtime-2d.js +10 -1
  131. package/dist/screen-visibility.d.ts +2 -1
  132. package/dist/screen-visibility.js +3 -2
  133. package/dist/screen-wrap.d.ts +2 -7
  134. package/dist/screen-wrap.js +4 -3
  135. package/dist/shooter-2d.d.ts +3 -2
  136. package/dist/shooter-2d.js +3 -2
  137. package/dist/skate-snowboard.d.ts +21 -0
  138. package/dist/skate-snowboard.js +37 -0
  139. package/dist/{spark-C4Tp-52_.d.ts → spark-VoQoemz_.d.ts} +1 -1
  140. package/dist/spatial-puzzles.d.ts +21 -0
  141. package/dist/spatial-puzzles.js +35 -0
  142. package/dist/squad-rts.d.ts +21 -0
  143. package/dist/squad-rts.js +39 -0
  144. package/dist/stealth-city.d.ts +21 -0
  145. package/dist/stealth-city.js +41 -0
  146. package/dist/survival-resources.d.ts +21 -0
  147. package/dist/survival-resources.js +37 -0
  148. package/dist/tactical-grid.d.ts +21 -0
  149. package/dist/tactical-grid.js +39 -0
  150. package/dist/thruster.d.ts +2 -1
  151. package/dist/thruster.js +4 -3
  152. package/dist/top-down-movement.d.ts +2 -1
  153. package/dist/top-down-movement.js +24 -3
  154. package/dist/turn-based-rpg.d.ts +21 -0
  155. package/dist/turn-based-rpg.js +39 -0
  156. package/dist/{vector-DjhLUrak.d.ts → vector-s7GbCrVn.d.ts} +1 -1
  157. package/dist/weapon-systems.d.ts +22 -0
  158. package/dist/weapon-systems.js +45 -0
  159. package/dist/world-boundary-2d.d.ts +2 -1
  160. package/dist/world-boundary-2d.js +25 -4
  161. package/dist/world-boundary-3d.d.ts +2 -1
  162. package/dist/world-boundary-3d.js +26 -5
  163. package/package.json +90 -5
  164. package/dist/behavior-system-DkFAwLb_.d.ts +0 -914
  165. package/dist/chunk-GZ3DQIIZ.js +0 -888
  166. package/dist/{chunk-OSPQFWQF.js → chunk-4K37UL53.js} +3 -3
  167. package/dist/{chunk-DD4U42FG.js → chunk-AQB246W5.js} +3 -3
  168. package/dist/{chunk-UKGBQTHL.js → chunk-CXDNR4R4.js} +3 -3
package/dist/core.js CHANGED
@@ -15,10 +15,6 @@ import {
15
15
  toThreeVector2,
16
16
  toThreeVector3
17
17
  } from "./chunk-LWM346FW.js";
18
- import {
19
- SyncStateMachine,
20
- import_typescript_fsm
21
- } from "./chunk-OBF6BIA2.js";
22
18
  import {
23
19
  STAGE_EVENT_STRIDE,
24
20
  STAGE_INPUT_BUTTON_JUMP,
@@ -38,10 +34,332 @@ import {
38
34
  createWasmStageRuntime,
39
35
  readBehaviorSnapshot,
40
36
  readStageRenderSlot
41
- } from "./chunk-GZ3DQIIZ.js";
37
+ } from "./chunk-BR33KT4Z.js";
38
+ import {
39
+ SyncStateMachine,
40
+ import_typescript_fsm
41
+ } from "./chunk-CBQSC6W3.js";
42
+ import {
43
+ PUZZLE_ABILITIES,
44
+ puzzleCommandData,
45
+ puzzleData
46
+ } from "./chunk-XNRY6NOC.js";
47
+ import {
48
+ ADVENTURE_ABILITIES,
49
+ ADVENTURE_BUTTONS,
50
+ ADVENTURE_EVENT_KINDS,
51
+ ADVENTURE_FLAGS
52
+ } from "./chunk-Y5CCNMJI.js";
53
+ import {
54
+ ENVIRONMENT_ABILITIES,
55
+ ENVIRONMENT_MODES
56
+ } from "./chunk-DDLZLJ7W.js";
57
+ import {
58
+ ACROBATICS_ACTIONS,
59
+ TRAVERSAL_ABILITIES
60
+ } from "./chunk-WF6HC5U3.js";
61
+ import {
62
+ ClubShotProfileBehavior,
63
+ GolfRacketBehavior,
64
+ LandingSpinTransferBehavior,
65
+ LobAndDropPlacementBehavior,
66
+ RacketContactTimingBehavior,
67
+ RacketSpinShotBehavior,
68
+ RallyPointAdjudicationBehavior,
69
+ ServeAndFaultSequenceBehavior,
70
+ SlopeAwarePuttingBehavior,
71
+ SwingPowerAccuracyBehavior,
72
+ WindDragBallFlightBehavior
73
+ } from "./chunk-BLTBZJPG.js";
74
+ import {
75
+ SPORTS_ABILITIES,
76
+ sportsData,
77
+ sportsOperation
78
+ } from "./chunk-7IOQEXYR.js";
79
+ import {
80
+ AirGrabTrickBehavior,
81
+ LandingAlignmentBailBehavior,
82
+ ManualBalanceBehavior,
83
+ PrewoundSpinBehavior,
84
+ RailGrindBalanceBehavior,
85
+ RampLipLaunchBehavior,
86
+ RepeatedTrickDevaluationBehavior,
87
+ SkateSnowboardBehavior,
88
+ TrickEarnedBoostMeterBehavior,
89
+ UnbankedTrickComboBehavior,
90
+ WallRideBehavior
91
+ } from "./chunk-HQ2UFI3S.js";
92
+ import {
93
+ SKATE_ABILITIES,
94
+ skateData,
95
+ skateOperation
96
+ } from "./chunk-3J3ISPFQ.js";
97
+ import {
98
+ DriftChargeBoostBehavior,
99
+ EnergyFundedRaceBoostBehavior,
100
+ HoverTrackSuspensionBehavior,
101
+ OrderedLapCheckpointsBehavior,
102
+ PositionWeightedRaceItemsBehavior,
103
+ RacingVehiclesBehavior,
104
+ SlipstreamDraftingBehavior,
105
+ TrackFollowingHomingItemBehavior,
106
+ VehicleDamageProgressionBehavior,
107
+ VehicleSeatEntryExitBehavior,
108
+ VehicleSideAttackBehavior
109
+ } from "./chunk-C5AYL42A.js";
110
+ import {
111
+ RACING_ABILITIES,
112
+ racingData,
113
+ racingOperation
114
+ } from "./chunk-2UGT4MIF.js";
115
+ import {
116
+ AdaptiveEncounterPressureBehavior,
117
+ CompanionAbductionObjectiveBehavior,
118
+ EncounterClearLockBehavior,
119
+ EnvironmentalVaultActionBehavior,
120
+ EscortFollowWaitBehavior,
121
+ IngredientCombinationBehavior,
122
+ SavePointCheckpointBehavior,
123
+ SpatialInventoryPackingBehavior,
124
+ StaggerFinisherOpportunityBehavior,
125
+ SurvivalResourcesBehavior,
126
+ WeaponUpgradeTrackBehavior
127
+ } from "./chunk-73YASAYS.js";
128
+ import {
129
+ SURVIVAL_ABILITIES,
130
+ survivalData,
131
+ survivalOperation
132
+ } from "./chunk-PDHHOVVQ.js";
133
+ import {
134
+ AlarmCommunicationNetworkBehavior,
135
+ ContextualDisguiseBehavior,
136
+ FootprintTrailFollowingBehavior,
137
+ LastSeenSearchBehavior,
138
+ NoiseInvestigationBehavior,
139
+ PedestrianPanicPropagationBehavior,
140
+ PursuitEvasionDecayBehavior,
141
+ StealthCityBehavior,
142
+ TrafficJunctionYieldBehavior,
143
+ VisionConeAwarenessBehavior,
144
+ WantedLevelEscalationBehavior
145
+ } from "./chunk-YVVB6YMG.js";
146
+ import {
147
+ CITY_ABILITIES,
148
+ CITY_EVENTS,
149
+ CITY_INTENTS,
150
+ CITY_LINKS,
151
+ cityData
152
+ } from "./chunk-5VJIP535.js";
153
+ import {
154
+ BossPhaseControllerBehavior,
155
+ CombatAIBehavior,
156
+ CoverPeekCycleBehavior,
157
+ GrenadeDangerEvasionBehavior,
158
+ LatentAmbushActivationBehavior,
159
+ LeaderLossMoraleBehavior,
160
+ LocalizedWeakPointDamageBehavior,
161
+ ShootableProjectileInterceptionBehavior,
162
+ SquadFlankAssignmentBehavior,
163
+ TacticalBurstSelectionBehavior,
164
+ ThreatTargetSelectionBehavior
165
+ } from "./chunk-OH5LJAEJ.js";
166
+ import {
167
+ ENCOUNTER_ABILITIES,
168
+ ENCOUNTER_EVENTS,
169
+ ENCOUNTER_INTENTS,
170
+ ENCOUNTER_LINKS,
171
+ encounterData
172
+ } from "./chunk-73MHJY6R.js";
173
+ import {
174
+ AlternateWeaponModeBehavior,
175
+ BeamMissileCombinationBehavior,
176
+ ChargeAndReleaseShotBehavior,
177
+ DelayedShieldRegenerationBehavior,
178
+ InterruptibleMagazineReloadBehavior,
179
+ MaterialPenetratingShotBehavior,
180
+ RemoteGuidedProjectileBehavior,
181
+ StationaryAimModeBehavior,
182
+ StickyGrenadeAttachmentBehavior,
183
+ WeaponHeatAndVentBehavior,
184
+ WeaponSystemsBehavior
185
+ } from "./chunk-JFBR4FNX.js";
186
+ import {
187
+ WEAPON_ABILITIES,
188
+ WEAPON_EVENTS,
189
+ WEAPON_PHASES,
190
+ weaponButtons,
191
+ weaponData,
192
+ weaponModeData,
193
+ weaponProjectileData
194
+ } from "./chunk-GYEKT5AY.js";
195
+ import {
196
+ COMBAT_ABILITIES,
197
+ COMBAT_EVENTS,
198
+ COMBAT_PHASES,
199
+ combatAttackData,
200
+ combatButtons,
201
+ combatData,
202
+ combatHitData
203
+ } from "./chunk-V4M46BF6.js";
204
+ import {
205
+ CallAndResponsePatternBehavior,
206
+ FretChordStrumBehavior,
207
+ HammerOnPullOffChainBehavior,
208
+ HoldReleaseRhythmBehavior,
209
+ PerformanceFailureMeterBehavior,
210
+ PhraseEarnedScorePowerBehavior,
211
+ RhythmPerformanceBehavior,
212
+ RhythmSceneRemixBehavior,
213
+ SustainNoteTrackingBehavior,
214
+ TempoMapChartPlayerBehavior,
215
+ TimestampedRhythmJudgmentBehavior
216
+ } from "./chunk-V26L6MY6.js";
217
+ import {
218
+ RHYTHM_ABILITIES,
219
+ RHYTHM_EVENTS,
220
+ rhythmData,
221
+ rhythmOperation
222
+ } from "./chunk-LWGJ3QQZ.js";
223
+ import {
224
+ ActiveBumperKickBehavior,
225
+ AdjacentPanelSwapBehavior,
226
+ CascadeChainCreditBehavior,
227
+ ColumnCollapseBehavior,
228
+ GarbageBlockConversionBehavior,
229
+ MatchingPinballBehavior,
230
+ PinballModeObjectivesBehavior,
231
+ PoweredPinballFlipperBehavior,
232
+ RisingStackPressureBehavior,
233
+ SimultaneousMatchClearBehavior,
234
+ SpringPlungerLaunchBehavior
235
+ } from "./chunk-EQFLPRF7.js";
236
+ import {
237
+ MATCHING_ABILITIES,
238
+ MATCHING_EVENTS,
239
+ matchingData,
240
+ matchingOperation
241
+ } from "./chunk-5AJJ44QK.js";
242
+ import {
243
+ CalendarNpcRoutineBehavior,
244
+ CropGrowthStagesBehavior,
245
+ ExertionAndFatigueBehavior,
246
+ FishingBiteAndHookBehavior,
247
+ HarvestableFruitRegrowthBehavior,
248
+ LifeSimulationBehavior,
249
+ LivestockDailyCareBehavior,
250
+ RelationshipEventMemoryBehavior,
251
+ RoomFurniturePlacementBehavior,
252
+ SeasonalCropEligibilityBehavior,
253
+ SoilMoistureCycleBehavior
254
+ } from "./chunk-I52PC5IU.js";
255
+ import {
256
+ LIFE_ABILITIES,
257
+ LIFE_EVENTS,
258
+ lifeData,
259
+ lifeOperation
260
+ } from "./chunk-TZHO6P22.js";
261
+ import {
262
+ ArmingProximityMineBehavior,
263
+ BlockerChewTransitionBehavior,
264
+ BudgetedWaveSchedulerBehavior,
265
+ BurrowToBacklineBehavior,
266
+ CostedGridDeploymentBehavior,
267
+ LaneDefenseBehavior,
268
+ LaneTargetAcquisitionBehavior,
269
+ LastChanceLaneSweeperBehavior,
270
+ LayeredBreakawayArmorBehavior,
271
+ PeriodicResourceProductionBehavior,
272
+ SingleUseObstacleVaultBehavior
273
+ } from "./chunk-DRIXFB4C.js";
274
+ import {
275
+ DEFENSE_ABILITIES,
276
+ DEFENSE_EVENTS,
277
+ defenseData,
278
+ defenseOperation
279
+ } from "./chunk-SFMJNAW3.js";
280
+ import {
281
+ CooperativeConstructionWorkBehavior,
282
+ CooperativeObjectTransportBehavior,
283
+ DayEndUnitRecallBehavior,
284
+ DeliveredResourceConversionBehavior,
285
+ GrowthStageMobilityBehavior,
286
+ SpeciesHazardAffinityBehavior,
287
+ SquadFormationFollowBehavior,
288
+ SquadRtsBehavior,
289
+ SurfaceLatchAttackBehavior,
290
+ ThrownWorkerDeploymentBehavior,
291
+ WhistleRecallBehavior
292
+ } from "./chunk-VSFWETXS.js";
293
+ import {
294
+ SQUAD_ABILITIES,
295
+ SQUAD_EVENTS,
296
+ squadData,
297
+ squadOperation
298
+ } from "./chunk-TSYXRRS4.js";
299
+ import {
300
+ CommanderPowerWindowBehavior,
301
+ CounterattackAndFollowUpBehavior,
302
+ FuelAmmunitionResupplyBehavior,
303
+ MinMaxAttackRangeBehavior,
304
+ PersistentUnitLossBehavior,
305
+ ProgressiveBuildingCaptureBehavior,
306
+ TacticalGridBehavior,
307
+ TerrainDefenseModifierBehavior,
308
+ TerrainMovementBudgetBehavior,
309
+ TransportLoadUnloadBehavior,
310
+ WeaponAdvantageCycleBehavior
311
+ } from "./chunk-ZZXTGVGN.js";
312
+ import {
313
+ TACTICS_ABILITIES,
314
+ TACTICS_EVENTS,
315
+ tacticsData,
316
+ tacticsOperation
317
+ } from "./chunk-6DTIJB7B.js";
318
+ import {
319
+ ActivePartnerSwapBehavior,
320
+ BudgetedPassiveLoadoutBehavior,
321
+ CaptureAttemptResolutionBehavior,
322
+ ConditionalEvolutionBehavior,
323
+ EscapeAttemptBehavior,
324
+ FieldFirstStrikeBehavior,
325
+ PrioritySpeedTurnOrderBehavior,
326
+ TimedBattleActionCommandBehavior,
327
+ TurnBasedRpgBehavior,
328
+ TurnDurationStatusBehavior,
329
+ TypeEffectivenessMatrixBehavior
330
+ } from "./chunk-2BE5BW7D.js";
331
+ import {
332
+ BATTLE_ABILITIES,
333
+ BATTLE_EVENTS,
334
+ battleData,
335
+ battleOperation
336
+ } from "./chunk-LMMF7KXF.js";
337
+ import {
338
+ ActionRpgBehavior,
339
+ AffixBudgetGenerationBehavior,
340
+ AutonomousFamiliarBehavior,
341
+ ConsumableBeltSlotsBehavior,
342
+ DamageToResourceLeechBehavior,
343
+ DeathDropOwnershipBehavior,
344
+ DurabilityAndRepairBehavior,
345
+ EquipmentStatAggregationBehavior,
346
+ ResourceDrainingTransformationBehavior,
347
+ SeededLootTableBehavior,
348
+ TypedResistanceResolutionBehavior
349
+ } from "./chunk-3LBGEWT6.js";
350
+ import {
351
+ RPG_ABILITIES,
352
+ RPG_EVENTS,
353
+ rpgData,
354
+ rpgOperation
355
+ } from "./chunk-VU4LTE2X.js";
42
356
  import {
43
357
  defineBehavior
44
- } from "./chunk-YDLO5M7S.js";
358
+ } from "./chunk-5SMXQ6AU.js";
359
+ import {
360
+ BUILTIN_BEHAVIORS,
361
+ getRequiredRuntimeBehaviors
362
+ } from "./chunk-S44ZHYE6.js";
45
363
  import "./chunk-JSBRDJBE.js";
46
364
 
47
365
  // src/lib/capabilities/transform-store.ts
@@ -234,6 +552,401 @@ function freshSlot() {
234
552
  };
235
553
  }
236
554
  var MockBehaviorRuntime = class {
555
+ attachRhythm(slot, abilities, options = {}) {
556
+ this.slot(slot).attachments.set("rhythm", { abilities, options });
557
+ return true;
558
+ }
559
+ detachRhythm(slot) {
560
+ return this.slot(slot).attachments.delete("rhythm");
561
+ }
562
+ queryRhythm(_slot) {
563
+ return null;
564
+ }
565
+ rhythmAction(slot, action) {
566
+ this.slot(slot).inputs.push({ kind: "rhythm", args: [action] });
567
+ return true;
568
+ }
569
+ attachMatching(slot, abilities, options = {}) {
570
+ this.slot(slot).attachments.set("matching", { abilities, options });
571
+ return true;
572
+ }
573
+ detachMatching(slot) {
574
+ return this.slot(slot).attachments.delete("matching");
575
+ }
576
+ queryMatching(_slot) {
577
+ return null;
578
+ }
579
+ matchingAction(slot, action) {
580
+ this.slot(slot).inputs.push({ kind: "matching", args: [action] });
581
+ return true;
582
+ }
583
+ attachLife(slot, abilities, options = {}) {
584
+ this.slot(slot).attachments.set("life", { abilities, options });
585
+ return true;
586
+ }
587
+ detachLife(slot) {
588
+ return this.slot(slot).attachments.delete("life");
589
+ }
590
+ queryLife(_slot) {
591
+ return null;
592
+ }
593
+ lifeAction(slot, action) {
594
+ this.slot(slot).inputs.push({ kind: "life", args: [action] });
595
+ return true;
596
+ }
597
+ attachDefense(slot, abilities, options = {}) {
598
+ this.slot(slot).attachments.set("defense", { abilities, options });
599
+ return true;
600
+ }
601
+ detachDefense(slot) {
602
+ return this.slot(slot).attachments.delete("defense");
603
+ }
604
+ queryDefense(_slot) {
605
+ return null;
606
+ }
607
+ defenseAction(slot, action) {
608
+ this.slot(slot).inputs.push({ kind: "defense", args: [action] });
609
+ return true;
610
+ }
611
+ attachSquad(slot, abilities, options = {}) {
612
+ this.slot(slot).attachments.set("squad", { abilities, options });
613
+ return true;
614
+ }
615
+ detachSquad(slot) {
616
+ return this.slot(slot).attachments.delete("squad");
617
+ }
618
+ querySquad(_slot) {
619
+ return null;
620
+ }
621
+ squadAction(slot, action) {
622
+ this.slot(slot).inputs.push({ kind: "squad", args: [action] });
623
+ return true;
624
+ }
625
+ attachTactics(slot, abilities, options = {}) {
626
+ this.slot(slot).attachments.set("tactics", { abilities, options });
627
+ return true;
628
+ }
629
+ detachTactics(slot) {
630
+ return this.slot(slot).attachments.delete("tactics");
631
+ }
632
+ queryTactics(_slot) {
633
+ return null;
634
+ }
635
+ tacticsAction(slot, action) {
636
+ this.slot(slot).inputs.push({ kind: "tactics", args: [action] });
637
+ return true;
638
+ }
639
+ attachBattle(slot, abilities, options = {}) {
640
+ this.slot(slot).attachments.set("battle", { abilities, options });
641
+ return true;
642
+ }
643
+ detachBattle(slot) {
644
+ return this.slot(slot).attachments.delete("battle");
645
+ }
646
+ queryBattle(_slot) {
647
+ return null;
648
+ }
649
+ battleAction(slot, action) {
650
+ this.slot(slot).inputs.push({ kind: "battle", args: [action] });
651
+ return true;
652
+ }
653
+ attachRpg(slot, abilities, options = {}) {
654
+ this.slot(slot).attachments.set("rpg", { abilities, options });
655
+ return true;
656
+ }
657
+ detachRpg(slot) {
658
+ return this.slot(slot).attachments.delete("rpg");
659
+ }
660
+ queryRpg(_slot) {
661
+ return null;
662
+ }
663
+ rpgAction(slot, action) {
664
+ this.slot(slot).inputs.push({ kind: "rpg", args: [action] });
665
+ return true;
666
+ }
667
+ attachSports(slot, abilities, options = {}) {
668
+ this.slot(slot).attachments.set("sports", { abilities, options });
669
+ return true;
670
+ }
671
+ detachSports(slot) {
672
+ return this.slot(slot).attachments.delete("sports");
673
+ }
674
+ querySports(_slot) {
675
+ return null;
676
+ }
677
+ sportsAction(slot, action) {
678
+ this.slot(slot).inputs.push({ kind: "sports", args: [action] });
679
+ return true;
680
+ }
681
+ attachSkate(slot, abilities, options = {}) {
682
+ this.slot(slot).attachments.set("skate", { abilities, options });
683
+ return true;
684
+ }
685
+ detachSkate(slot) {
686
+ return this.slot(slot).attachments.delete("skate");
687
+ }
688
+ querySkate(_slot) {
689
+ return null;
690
+ }
691
+ skateAction(slot, action) {
692
+ this.slot(slot).inputs.push({ kind: "skate", args: [action] });
693
+ return true;
694
+ }
695
+ attachRacing(slot, abilities, options = {}) {
696
+ this.slot(slot).attachments.set("racing", { abilities, options });
697
+ return true;
698
+ }
699
+ detachRacing(slot) {
700
+ return this.slot(slot).attachments.delete("racing");
701
+ }
702
+ queryRacing(_slot) {
703
+ return null;
704
+ }
705
+ racingAction(slot, action) {
706
+ this.slot(slot).inputs.push({ kind: "racing", args: [action] });
707
+ return true;
708
+ }
709
+ attachSurvival(slot, abilities, options = {}) {
710
+ this.slot(slot).attachments.set("survival", { abilities, options });
711
+ return true;
712
+ }
713
+ detachSurvival(slot) {
714
+ return this.slot(slot).attachments.delete("survival");
715
+ }
716
+ querySurvival(_slot) {
717
+ return null;
718
+ }
719
+ survivalAction(slot, action) {
720
+ this.slot(slot).inputs.push({ kind: "survival", args: [action] });
721
+ return true;
722
+ }
723
+ attachCity(slot, abilities, options = {}) {
724
+ this.slot(slot).attachments.set("city", { abilities, options });
725
+ return true;
726
+ }
727
+ detachCity(slot) {
728
+ return this.slot(slot).attachments.delete("city");
729
+ }
730
+ queryCity(slot) {
731
+ return null;
732
+ }
733
+ cityLink(slot, other, kind, data) {
734
+ this.slot(slot).inputs.push({
735
+ kind: "city",
736
+ args: [slot, other, kind, data]
737
+ });
738
+ return true;
739
+ }
740
+ cityUnlink(slot, other, kind) {
741
+ this.slot(slot).inputs.push({
742
+ kind: "city",
743
+ args: [slot, other, kind]
744
+ });
745
+ return true;
746
+ }
747
+ cityCommand(slot, kind, data) {
748
+ this.slot(slot).inputs.push({ kind: "city", args: [slot, kind, data] });
749
+ return true;
750
+ }
751
+ citySignal(slot, source, kind, sequence, data) {
752
+ this.slot(slot).inputs.push({
753
+ kind: "city",
754
+ args: [slot, source, kind, sequence, data]
755
+ });
756
+ return true;
757
+ }
758
+ attachEncounters(slot, abilities, options = {}) {
759
+ this.slot(slot).attachments.set("encounter", { abilities, options });
760
+ return true;
761
+ }
762
+ detachEncounters(slot) {
763
+ return this.slot(slot).attachments.delete("encounter");
764
+ }
765
+ queryEncounters(slot) {
766
+ return null;
767
+ }
768
+ encounterLink(slot, other, kind, data) {
769
+ this.slot(slot).inputs.push({
770
+ kind: "encounter",
771
+ args: [slot, other, kind, data]
772
+ });
773
+ return true;
774
+ }
775
+ encounterUnlink(slot, other, kind) {
776
+ this.slot(slot).inputs.push({
777
+ kind: "encounter",
778
+ args: [slot, other, kind]
779
+ });
780
+ return true;
781
+ }
782
+ encounterCommand(slot, kind, value, data = []) {
783
+ this.slot(slot).inputs.push({
784
+ kind: "encounter",
785
+ args: [slot, kind, value, data]
786
+ });
787
+ return true;
788
+ }
789
+ encounterHit(slot, source, region, hit) {
790
+ this.slot(slot).inputs.push({
791
+ kind: "encounter",
792
+ args: [slot, source, region, hit]
793
+ });
794
+ return true;
795
+ }
796
+ attachWeapons(slot, abilities, options = {}) {
797
+ this.slot(slot).attachments.set("weapon", { abilities, options });
798
+ return true;
799
+ }
800
+ detachWeapons(slot) {
801
+ return this.slot(slot).attachments.delete("weapon");
802
+ }
803
+ queryWeapons(_slot) {
804
+ return null;
805
+ }
806
+ weaponInput(slot, input) {
807
+ this.slot(slot).inputs.push({ kind: "weapon", args: [input] });
808
+ return true;
809
+ }
810
+ weaponMode(slot, index, mode) {
811
+ this.slot(slot).attachments.set("weapon-mode-" + index, mode);
812
+ return true;
813
+ }
814
+ weaponDamage(slot, amount, source) {
815
+ this.slot(slot).inputs.push({ kind: "weapon-damage", args: [amount, source] });
816
+ return true;
817
+ }
818
+ weaponSurface(slot, surface) {
819
+ this.slot(slot).attachments.set("weapon-surface", surface);
820
+ return true;
821
+ }
822
+ launchWeaponProjectile(owner, slot, kind, options = {}) {
823
+ this.slot(slot).attachments.set("weapon-projectile", { owner, kind, options });
824
+ return true;
825
+ }
826
+ queryWeaponProjectile(_slot) {
827
+ return null;
828
+ }
829
+ weaponCameraIntent(_slot) {
830
+ return null;
831
+ }
832
+ attachCombat(slot, abilities, options = {}) {
833
+ this.slot(slot).attachments.set("combat", { abilities, options });
834
+ return true;
835
+ }
836
+ detachCombat(slot) {
837
+ return this.slot(slot).attachments.delete("combat");
838
+ }
839
+ queryCombat(_slot) {
840
+ return null;
841
+ }
842
+ combatInput(slot, input) {
843
+ this.slot(slot).inputs.push({ kind: "combat", args: [input] });
844
+ return true;
845
+ }
846
+ combatAttack(slot, index, attack) {
847
+ this.slot(slot).attachments.set("combat-attack-" + index, attack);
848
+ return true;
849
+ }
850
+ combatHit(slot, hit, source) {
851
+ this.slot(slot).inputs.push({ kind: "combat-hit", args: [hit, source] });
852
+ return true;
853
+ }
854
+ attachPuzzle(slot, ability, options = {}) {
855
+ this.slot(slot).attachments.set("puzzle", { ability, options });
856
+ return true;
857
+ }
858
+ detachPuzzle(slot) {
859
+ return this.slot(slot).attachments.delete("puzzle");
860
+ }
861
+ queryPuzzle(_slot) {
862
+ return null;
863
+ }
864
+ puzzleCommand(slot, command) {
865
+ this.slot(slot).inputs.push({ kind: "puzzle", args: [command] });
866
+ return true;
867
+ }
868
+ puzzleLink(_slot, _other) {
869
+ return true;
870
+ }
871
+ puzzleSegments(_slot) {
872
+ return [];
873
+ }
874
+ attachAdventure(slot, abilities, options = {}) {
875
+ if (this.slot(slot).attachments.has("adventure")) return false;
876
+ this.slot(slot).attachments.set("adventure", { abilities, ...options });
877
+ return true;
878
+ }
879
+ detachAdventure(slot) {
880
+ return this.slot(slot).attachments.delete("adventure");
881
+ }
882
+ queryAdventure(_slot) {
883
+ return null;
884
+ }
885
+ writeAdventureInput(slot, input) {
886
+ this.slot(slot).attachments.set("adventure-input", input);
887
+ }
888
+ setAdventureObject(slot, object) {
889
+ this.slot(slot).attachments.set("adventure-object", object);
890
+ return true;
891
+ }
892
+ queryAdventureObject(_slot) {
893
+ return null;
894
+ }
895
+ adventureProgress(_slot, _kind, _key, _value = 0) {
896
+ return 0;
897
+ }
898
+ attachEnvironment(slot, abilities, options = {}) {
899
+ if (this.slot(slot).attachments.has("environment")) return false;
900
+ this.slot(slot).attachments.set("environment", { abilities, ...options });
901
+ return true;
902
+ }
903
+ detachEnvironment(slot) {
904
+ return this.slot(slot).attachments.delete("environment");
905
+ }
906
+ queryEnvironment(_slot) {
907
+ return null;
908
+ }
909
+ writeEnvironmentInput(slot, input) {
910
+ this.writeInputAxes(slot, input.moveX ?? 0, input.moveY ?? 0);
911
+ this.writeInputLook(slot, input.moveZ ?? 0, input.sailTrim ?? 0);
912
+ [input.stroke, input.breach, input.glide, input.sail, input.ride, input.release].forEach((v, i) => this.writeInputButton(slot, 1 << i, !!v));
913
+ }
914
+ setEnvironmentVolume(slot, volume) {
915
+ this.slot(slot).attachments.set("environment-volume", volume);
916
+ return true;
917
+ }
918
+ setTubeRail(slot, rail) {
919
+ this.slot(slot).attachments.set("tube-rail", rail);
920
+ return true;
921
+ }
922
+ attachAcrobatics(slot, abilities, options = {}) {
923
+ if (this.slot(slot).attachments.has("acrobatics")) return false;
924
+ this.slot(slot).attachments.set("acrobatics", { abilities, ...options });
925
+ return true;
926
+ }
927
+ setTraversalSurface(slot, kind) {
928
+ this.slot(slot).attachments.set("traversal-surface", kind);
929
+ return true;
930
+ }
931
+ setPossessable(slot, enabled) {
932
+ this.slot(slot).attachments.set("possessable", enabled);
933
+ return true;
934
+ }
935
+ startPossession(_owner, _target, _seconds = 5) {
936
+ return false;
937
+ }
938
+ endPossession(_owner) {
939
+ return false;
940
+ }
941
+ queryPossession(_owner) {
942
+ return null;
943
+ }
944
+ queryAcrobatics(_slot) {
945
+ return null;
946
+ }
947
+ detachAcrobatics(slot) {
948
+ return this.slot(slot).attachments.delete("acrobatics");
949
+ }
237
950
  slots = /* @__PURE__ */ new Map();
238
951
  slot(handle) {
239
952
  let state = this.slots.get(handle);
@@ -600,6 +1313,66 @@ var Simulation = class {
600
1313
  case StageEventType.Wrapped:
601
1314
  out.push({ type: "wrapped", entity: primary, axes: event.payload[0] | 0 });
602
1315
  break;
1316
+ case StageEventType.Rhythm:
1317
+ out.push({ type: "rhythm", entity: primary, target: secondary, kind: RHYTHM_EVENTS[event.payload[0] - 1], value: event.payload[1] });
1318
+ break;
1319
+ case StageEventType.Matching:
1320
+ out.push({ type: "matching", entity: primary, target: secondary, kind: MATCHING_EVENTS[event.payload[0] - 1], value: event.payload[1] });
1321
+ break;
1322
+ case StageEventType.Life:
1323
+ out.push({ type: "life", entity: primary, target: secondary, kind: LIFE_EVENTS[event.payload[0] - 1], value: event.payload[1] });
1324
+ break;
1325
+ case StageEventType.Defense:
1326
+ out.push({ type: "defense", entity: primary, target: secondary, kind: DEFENSE_EVENTS[event.payload[0] - 1], value: event.payload[1] });
1327
+ break;
1328
+ case StageEventType.Squad:
1329
+ out.push({ type: "squad", entity: primary, target: secondary, kind: SQUAD_EVENTS[event.payload[0] - 1], value: event.payload[1] });
1330
+ break;
1331
+ case StageEventType.Tactics:
1332
+ out.push({ type: "tactics", entity: primary, target: secondary, kind: TACTICS_EVENTS[event.payload[0] - 1], value: event.payload[1] });
1333
+ break;
1334
+ case StageEventType.Battle:
1335
+ out.push({ type: "battle", entity: primary, target: secondary, kind: BATTLE_EVENTS[event.payload[0] - 1], value: event.payload[1] });
1336
+ break;
1337
+ case StageEventType.Rpg:
1338
+ out.push({ type: "rpg", entity: primary, target: secondary, kind: RPG_EVENTS[event.payload[0] - 1], value: event.payload[1] });
1339
+ break;
1340
+ case StageEventType.Sports:
1341
+ out.push({ type: "sports", entity: primary, target: secondary, kind: SPORTS_ABILITIES[event.payload[0] - 1], value: event.payload[1] });
1342
+ break;
1343
+ case StageEventType.Skate:
1344
+ out.push({ type: "skate", entity: primary, target: secondary, kind: SKATE_ABILITIES[event.payload[0] - 1], value: event.payload[1] });
1345
+ break;
1346
+ case StageEventType.Racing:
1347
+ out.push({ type: "racing", entity: primary, target: secondary, kind: RACING_ABILITIES[event.payload[0] - 1], value: event.payload[1] });
1348
+ break;
1349
+ case StageEventType.Survival:
1350
+ out.push({ type: "survival", entity: primary, target: secondary, kind: SURVIVAL_ABILITIES[event.payload[0] - 1], value: event.payload[1] });
1351
+ break;
1352
+ case StageEventType.City:
1353
+ out.push({ type: "city", entity: primary, target: secondary, kind: CITY_EVENTS[event.payload[0]] ?? "none", value: event.payload[1] });
1354
+ break;
1355
+ case StageEventType.Encounter:
1356
+ out.push({ type: "encounter", entity: primary, target: secondary, kind: ENCOUNTER_EVENTS[event.payload[0]] ?? "none", value: event.payload[1] });
1357
+ break;
1358
+ case StageEventType.Weapon:
1359
+ out.push({ type: "weapon", entity: primary, target: secondary, kind: WEAPON_EVENTS[event.payload[0]] ?? "none", value: event.payload[1] });
1360
+ break;
1361
+ case StageEventType.Combat:
1362
+ out.push({ type: "combat", entity: primary, target: secondary, kind: COMBAT_EVENTS[event.payload[0]] ?? "none", value: event.payload[1] });
1363
+ break;
1364
+ case StageEventType.Puzzle:
1365
+ out.push({ type: "puzzle", entity: primary, ability: PUZZLE_ABILITIES[event.payload[0] - 1], active: event.payload[1] === 1, value: event.payload[2] });
1366
+ break;
1367
+ case StageEventType.Adventure:
1368
+ out.push({ type: "adventure", entity: primary, target: secondary, kind: ADVENTURE_EVENT_KINDS[event.payload[0]] ?? "unknown", value: event.payload[1] });
1369
+ break;
1370
+ case StageEventType.DrowningDamage:
1371
+ out.push({ type: "drowningDamage", entity: primary, amount: event.payload[0], total: event.payload[1], severity: event.payload[2] });
1372
+ break;
1373
+ case StageEventType.GroundPoundImpact:
1374
+ out.push({ type: "groundPoundImpact", entity: primary, speed: event.payload[0], count: event.payload[1] });
1375
+ break;
603
1376
  case StageEventType.CooldownFired:
604
1377
  out.push({ type: "cooldownFired", entity: primary, cooldownId: event.payload[0] | 0 });
605
1378
  break;
@@ -612,6 +1385,564 @@ var Simulation = class {
612
1385
  getPose(handle, out) {
613
1386
  return this.adapter.getPose(handle.slot, out);
614
1387
  }
1388
+ /** These ownership APIs require live handles from this Simulation. */
1389
+ live(handle) {
1390
+ return !this.disposed && this.idToHandle.get(handle.id) === handle;
1391
+ }
1392
+ attachRhythm(handle, abilities, options = {}) {
1393
+ return this.live(handle) && this.adapter.attachRhythm(handle.slot, abilities, options);
1394
+ }
1395
+ detachRhythm(handle) {
1396
+ return this.live(handle) && this.adapter.detachRhythm(handle.slot);
1397
+ }
1398
+ getRhythmState(handle) {
1399
+ return this.live(handle) ? this.adapter.queryRhythm(handle.slot) : null;
1400
+ }
1401
+ rhythmAction(handle, action) {
1402
+ if (!this.live(handle)) return false;
1403
+ return this.adapter.rhythmAction(handle.slot, action);
1404
+ }
1405
+ attachMatching(handle, abilities, options = {}) {
1406
+ return this.live(handle) && this.adapter.attachMatching(handle.slot, abilities, options);
1407
+ }
1408
+ detachMatching(handle) {
1409
+ return this.live(handle) && this.adapter.detachMatching(handle.slot);
1410
+ }
1411
+ getMatchingState(handle) {
1412
+ return this.live(handle) ? this.adapter.queryMatching(handle.slot) : null;
1413
+ }
1414
+ matchingAction(handle, action) {
1415
+ if (!this.live(handle)) return false;
1416
+ if ("target" in action) {
1417
+ if (!this.live(action.target)) return false;
1418
+ return this.adapter.matchingAction(handle.slot, {
1419
+ ...action,
1420
+ target: action.target.slot
1421
+ });
1422
+ }
1423
+ return this.adapter.matchingAction(handle.slot, action);
1424
+ }
1425
+ attachLife(handle, abilities, options = {}) {
1426
+ return this.live(handle) && this.adapter.attachLife(handle.slot, abilities, options);
1427
+ }
1428
+ detachLife(handle) {
1429
+ return this.live(handle) && this.adapter.detachLife(handle.slot);
1430
+ }
1431
+ getLifeState(handle) {
1432
+ return this.live(handle) ? this.adapter.queryLife(handle.slot) : null;
1433
+ }
1434
+ lifeAction(handle, action) {
1435
+ if (!this.live(handle)) return false;
1436
+ if ("target" in action) {
1437
+ if (!this.live(action.target)) return false;
1438
+ return this.adapter.lifeAction(handle.slot, {
1439
+ ...action,
1440
+ target: action.target.slot
1441
+ });
1442
+ }
1443
+ return this.adapter.lifeAction(handle.slot, action);
1444
+ }
1445
+ attachDefense(handle, abilities, options = {}) {
1446
+ return this.live(handle) && this.adapter.attachDefense(handle.slot, abilities, options);
1447
+ }
1448
+ detachDefense(handle) {
1449
+ return this.live(handle) && this.adapter.detachDefense(handle.slot);
1450
+ }
1451
+ getDefenseState(handle) {
1452
+ return this.live(handle) ? this.adapter.queryDefense(handle.slot) : null;
1453
+ }
1454
+ defenseAction(handle, action) {
1455
+ if (!this.live(handle)) return false;
1456
+ if ("target" in action) {
1457
+ if (!this.live(action.target)) return false;
1458
+ return this.adapter.defenseAction(handle.slot, {
1459
+ ...action,
1460
+ target: action.target.slot
1461
+ });
1462
+ }
1463
+ return this.adapter.defenseAction(handle.slot, action);
1464
+ }
1465
+ attachSquad(handle, abilities, options = {}) {
1466
+ return this.live(handle) && this.adapter.attachSquad(handle.slot, abilities, options);
1467
+ }
1468
+ detachSquad(handle) {
1469
+ return this.live(handle) && this.adapter.detachSquad(handle.slot);
1470
+ }
1471
+ getSquadState(handle) {
1472
+ return this.live(handle) ? this.adapter.querySquad(handle.slot) : null;
1473
+ }
1474
+ squadAction(handle, action) {
1475
+ if (!this.live(handle)) return false;
1476
+ if ("target" in action) {
1477
+ if (!this.live(action.target)) return false;
1478
+ return this.adapter.squadAction(handle.slot, {
1479
+ ...action,
1480
+ target: action.target.slot
1481
+ });
1482
+ }
1483
+ return this.adapter.squadAction(handle.slot, action);
1484
+ }
1485
+ attachTactics(handle, abilities, options = {}) {
1486
+ return this.live(handle) && this.adapter.attachTactics(handle.slot, abilities, options);
1487
+ }
1488
+ detachTactics(handle) {
1489
+ return this.live(handle) && this.adapter.detachTactics(handle.slot);
1490
+ }
1491
+ getTacticsState(handle) {
1492
+ return this.live(handle) ? this.adapter.queryTactics(handle.slot) : null;
1493
+ }
1494
+ tacticsAction(handle, action) {
1495
+ if (!this.live(handle)) return false;
1496
+ if ("target" in action) {
1497
+ if (!this.live(action.target)) return false;
1498
+ return this.adapter.tacticsAction(handle.slot, {
1499
+ ...action,
1500
+ target: action.target.slot
1501
+ });
1502
+ }
1503
+ return this.adapter.tacticsAction(handle.slot, action);
1504
+ }
1505
+ attachBattle(handle, abilities, options = {}) {
1506
+ return this.live(handle) && this.adapter.attachBattle(handle.slot, abilities, options);
1507
+ }
1508
+ detachBattle(handle) {
1509
+ return this.live(handle) && this.adapter.detachBattle(handle.slot);
1510
+ }
1511
+ getBattleState(handle) {
1512
+ return this.live(handle) ? this.adapter.queryBattle(handle.slot) : null;
1513
+ }
1514
+ battleAction(handle, action) {
1515
+ if (!this.live(handle)) return false;
1516
+ if ("target" in action) {
1517
+ if (!this.live(action.target)) return false;
1518
+ return this.adapter.battleAction(handle.slot, {
1519
+ ...action,
1520
+ target: action.target.slot
1521
+ });
1522
+ }
1523
+ return this.adapter.battleAction(handle.slot, action);
1524
+ }
1525
+ attachRpg(handle, abilities, options = {}) {
1526
+ return this.live(handle) && this.adapter.attachRpg(handle.slot, abilities, options);
1527
+ }
1528
+ detachRpg(handle) {
1529
+ return this.live(handle) && this.adapter.detachRpg(handle.slot);
1530
+ }
1531
+ getRpgState(handle) {
1532
+ return this.live(handle) ? this.adapter.queryRpg(handle.slot) : null;
1533
+ }
1534
+ rpgAction(handle, action) {
1535
+ if (!this.live(handle)) return false;
1536
+ if ("target" in action) {
1537
+ if (!this.live(action.target)) return false;
1538
+ return this.adapter.rpgAction(handle.slot, {
1539
+ ...action,
1540
+ target: action.target.slot
1541
+ });
1542
+ }
1543
+ return this.adapter.rpgAction(handle.slot, action);
1544
+ }
1545
+ attachSports(handle, abilities, options = {}) {
1546
+ return this.live(handle) && this.adapter.attachSports(handle.slot, abilities, options);
1547
+ }
1548
+ detachSports(handle) {
1549
+ return this.live(handle) && this.adapter.detachSports(handle.slot);
1550
+ }
1551
+ getSportsState(handle) {
1552
+ return this.live(handle) ? this.adapter.querySports(handle.slot) : null;
1553
+ }
1554
+ sportsAction(handle, action) {
1555
+ if (!this.live(handle)) return false;
1556
+ if ("target" in action) {
1557
+ if (!this.live(action.target)) return false;
1558
+ return this.adapter.sportsAction(handle.slot, {
1559
+ ...action,
1560
+ target: action.target.slot
1561
+ });
1562
+ }
1563
+ return this.adapter.sportsAction(handle.slot, action);
1564
+ }
1565
+ attachSkate(handle, abilities, options = {}) {
1566
+ return this.live(handle) && this.adapter.attachSkate(handle.slot, abilities, options);
1567
+ }
1568
+ detachSkate(handle) {
1569
+ return this.live(handle) && this.adapter.detachSkate(handle.slot);
1570
+ }
1571
+ getSkateState(handle) {
1572
+ return this.live(handle) ? this.adapter.querySkate(handle.slot) : null;
1573
+ }
1574
+ skateAction(handle, action) {
1575
+ if (!this.live(handle)) return false;
1576
+ if ("target" in action) {
1577
+ if (!this.live(action.target)) return false;
1578
+ return this.adapter.skateAction(handle.slot, {
1579
+ ...action,
1580
+ target: action.target.slot
1581
+ });
1582
+ }
1583
+ return this.adapter.skateAction(handle.slot, action);
1584
+ }
1585
+ attachRacing(handle, abilities, options = {}) {
1586
+ return this.live(handle) && this.adapter.attachRacing(handle.slot, abilities, options);
1587
+ }
1588
+ detachRacing(handle) {
1589
+ return this.live(handle) && this.adapter.detachRacing(handle.slot);
1590
+ }
1591
+ getRacingState(handle) {
1592
+ return this.live(handle) ? this.adapter.queryRacing(handle.slot) : null;
1593
+ }
1594
+ racingAction(handle, action) {
1595
+ if (!this.live(handle)) return false;
1596
+ if ("target" in action) {
1597
+ if (!this.live(action.target)) return false;
1598
+ return this.adapter.racingAction(handle.slot, {
1599
+ ...action,
1600
+ target: action.target.slot
1601
+ });
1602
+ }
1603
+ return this.adapter.racingAction(handle.slot, action);
1604
+ }
1605
+ attachSurvival(handle, abilities, options = {}) {
1606
+ return this.live(handle) && this.adapter.attachSurvival(handle.slot, abilities, options);
1607
+ }
1608
+ detachSurvival(handle) {
1609
+ return this.live(handle) && this.adapter.detachSurvival(handle.slot);
1610
+ }
1611
+ getSurvivalState(handle) {
1612
+ return this.live(handle) ? this.adapter.querySurvival(handle.slot) : null;
1613
+ }
1614
+ survivalAction(handle, action) {
1615
+ if (!this.live(handle)) return false;
1616
+ if ("target" in action) {
1617
+ if (!this.live(action.target)) return false;
1618
+ return this.adapter.survivalAction(handle.slot, {
1619
+ ...action,
1620
+ target: action.target.slot
1621
+ });
1622
+ }
1623
+ return this.adapter.survivalAction(handle.slot, action);
1624
+ }
1625
+ attachCity(handle, abilities, options = {}) {
1626
+ return this.live(handle) && this.adapter.attachCity(handle.slot, abilities, options);
1627
+ }
1628
+ detachCity(handle) {
1629
+ return this.live(handle) && this.adapter.detachCity(handle.slot);
1630
+ }
1631
+ getCityState(handle) {
1632
+ return this.live(handle) ? this.adapter.queryCity(handle.slot) : null;
1633
+ }
1634
+ cityLink(handle, other, kind, data) {
1635
+ return this.live(handle) && this.live(other) && this.adapter.cityLink(handle.slot, other.slot, kind, data);
1636
+ }
1637
+ setCityTarget(handle, target, o = {}) {
1638
+ return this.cityLink(handle, target, 0, [
1639
+ o.exposure ?? 1,
1640
+ o.crouched ? 1 : 0,
1641
+ o.zone ?? 0,
1642
+ o.disguiseZone ?? 0,
1643
+ o.disguised ? 1 : 0,
1644
+ o.actions ?? 0,
1645
+ o.recognized ? 1 : 0
1646
+ ]);
1647
+ }
1648
+ connectCityRadio(handle, receiver, channel = 0) {
1649
+ return this.cityLink(handle, receiver, 1, [channel]);
1650
+ }
1651
+ addCityNeighbor(handle, neighbor) {
1652
+ return this.cityLink(handle, neighbor, 2, []);
1653
+ }
1654
+ setCityJunction(handle, junction, exit, priority = 0) {
1655
+ return this.cityLink(handle, junction, 3, [...exit, priority]);
1656
+ }
1657
+ addCityObserver(handle, observer) {
1658
+ return this.cityLink(handle, observer, 4, []);
1659
+ }
1660
+ removeCityLink(handle, other, kind) {
1661
+ return this.live(handle) && this.live(other) && this.adapter.cityUnlink(
1662
+ handle.slot,
1663
+ other.slot,
1664
+ CITY_LINKS.indexOf(kind)
1665
+ );
1666
+ }
1667
+ cityCommand(handle, kind, data) {
1668
+ return this.live(handle) && this.adapter.cityCommand(handle.slot, kind, data);
1669
+ }
1670
+ setCityFacing(handle, direction) {
1671
+ return this.cityCommand(handle, 0, direction);
1672
+ }
1673
+ interruptCityReport(handle) {
1674
+ return this.cityCommand(handle, 1, []);
1675
+ }
1676
+ setCityPursuitConditions(handle, observed, inSearchZone) {
1677
+ return this.cityCommand(handle, 2, [
1678
+ observed ? 1 : 0,
1679
+ inSearchZone ? 1 : 0
1680
+ ]);
1681
+ }
1682
+ /** Initialization only: seed B078 without needing B077. */
1683
+ setCityPursuitScore(handle, score) {
1684
+ return this.cityCommand(handle, 3, [score]);
1685
+ }
1686
+ setCityTraffic(handle, input) {
1687
+ return this.cityCommand(handle, 4, [
1688
+ input.green ? 1 : 0,
1689
+ input.exitOpen ? 1 : 0,
1690
+ input.request ? 1 : 0,
1691
+ input.inside ? 1 : 0
1692
+ ]);
1693
+ }
1694
+ setCityHearingMask(handle, mask) {
1695
+ return this.cityCommand(handle, 5, [mask]);
1696
+ }
1697
+ /** Initialization only, six strictly ascending thresholds, zero-based index. */
1698
+ setCityResponseTier(handle, index, threshold, responseMask) {
1699
+ return this.cityCommand(handle, 6, [index, threshold, responseMask]);
1700
+ }
1701
+ citySignal(handle, source, kind, sequence, data) {
1702
+ return this.live(handle) && this.live(source) && this.adapter.citySignal(
1703
+ handle.slot,
1704
+ source.slot,
1705
+ kind,
1706
+ sequence,
1707
+ data
1708
+ );
1709
+ }
1710
+ emitCityNoise(handle, source, o) {
1711
+ return this.citySignal(handle, source, 0, o.sequence, [
1712
+ ...o.position,
1713
+ o.loudness ?? 1,
1714
+ ["footstep", "impact", "gunshot"].indexOf(o.category ?? "footstep"),
1715
+ o.age ?? 0
1716
+ ]);
1717
+ }
1718
+ addCityFootprint(handle, source, o) {
1719
+ return this.citySignal(handle, source, 1, o.sequence, [
1720
+ ...o.position,
1721
+ o.age ?? 0,
1722
+ o.eligible === false ? 0 : 1
1723
+ ]);
1724
+ }
1725
+ startCityReport(handle, sequence, channel = 0) {
1726
+ return this.citySignal(handle, handle, 2, sequence, [channel]);
1727
+ }
1728
+ reportCityOffense(handle, witness, sequence, severity) {
1729
+ return this.citySignal(handle, witness, 3, sequence, [severity]);
1730
+ }
1731
+ emitCityDanger(handle, source, o) {
1732
+ return this.citySignal(handle, source, 4, o.sequence, [
1733
+ ...o.position,
1734
+ o.radius ?? 10,
1735
+ o.age ?? 0
1736
+ ]);
1737
+ }
1738
+ attachEncounters(handle, abilities, options = {}) {
1739
+ return this.live(handle) && this.adapter.attachEncounters(handle.slot, abilities, options);
1740
+ }
1741
+ detachEncounters(handle) {
1742
+ return this.live(handle) && this.adapter.detachEncounters(handle.slot);
1743
+ }
1744
+ getEncounterState(handle) {
1745
+ return this.live(handle) ? this.adapter.queryEncounters(handle.slot) : null;
1746
+ }
1747
+ encounterLink(handle, other, kind, data) {
1748
+ return this.live(handle) && this.live(other) && this.adapter.encounterLink(handle.slot, other.slot, kind, data);
1749
+ }
1750
+ setEncounterCandidate(handle, other, options = {}) {
1751
+ return this.encounterLink(handle, other, 0, [
1752
+ options.team ?? 2,
1753
+ options.priority ?? 0,
1754
+ options.recentDamage ?? 0
1755
+ ]);
1756
+ }
1757
+ setEncounterLeader(handle, leader) {
1758
+ return this.encounterLink(handle, leader, 1, []);
1759
+ }
1760
+ addEncounterAlly(handle, ally) {
1761
+ return this.encounterLink(handle, ally, 2, []);
1762
+ }
1763
+ setEncounterCover(handle, anchor, options) {
1764
+ return this.encounterLink(handle, anchor, 3, [
1765
+ ...options.hide,
1766
+ ...options.peek
1767
+ ]);
1768
+ }
1769
+ setEncounterHazard(handle, source, options) {
1770
+ return this.encounterLink(handle, source, 4, [
1771
+ options.radius,
1772
+ options.fuse,
1773
+ ...options.velocity ?? [0, 0, 0]
1774
+ ]);
1775
+ }
1776
+ setEncounterRegion(handle, region, options = {}) {
1777
+ return this.encounterLink(handle, region, 5, [
1778
+ options.multiplier ?? 2,
1779
+ options.staggerThreshold ?? 20
1780
+ ]);
1781
+ }
1782
+ removeEncounterLink(handle, other, kind) {
1783
+ return this.live(handle) && this.live(other) && this.adapter.encounterUnlink(
1784
+ handle.slot,
1785
+ other.slot,
1786
+ ENCOUNTER_LINKS.indexOf(kind)
1787
+ );
1788
+ }
1789
+ triggerEncounter(handle) {
1790
+ return this.live(handle) && this.adapter.encounterCommand(handle.slot, 0, 1);
1791
+ }
1792
+ advanceEncounterPhase(handle, phase) {
1793
+ return this.live(handle) && this.adapter.encounterCommand(handle.slot, 1, phase);
1794
+ }
1795
+ setEncounterShotBudget(handle, count) {
1796
+ return this.live(handle) && this.adapter.encounterCommand(handle.slot, 2, count);
1797
+ }
1798
+ setEncounterPhase(handle, index, phase) {
1799
+ return this.live(handle) && this.adapter.encounterCommand(handle.slot, 3, index, [
1800
+ phase.healthFraction,
1801
+ phase.attackMask,
1802
+ phase.vulnerability ?? 1
1803
+ ]);
1804
+ }
1805
+ applyEncounterHit(handle, source, hit, region = null) {
1806
+ return this.live(handle) && this.live(source) && (region === null || this.live(region)) && this.adapter.encounterHit(
1807
+ handle.slot,
1808
+ source.slot,
1809
+ region?.slot ?? null,
1810
+ hit
1811
+ );
1812
+ }
1813
+ attachWeapons(handle, abilities, options = {}) {
1814
+ return this.live(handle) && this.adapter.attachWeapons(handle.slot, abilities, options);
1815
+ }
1816
+ detachWeapons(handle) {
1817
+ return this.live(handle) && this.adapter.detachWeapons(handle.slot);
1818
+ }
1819
+ setWeaponInput(handle, input) {
1820
+ return this.live(handle) && this.adapter.weaponInput(handle.slot, input);
1821
+ }
1822
+ setWeaponMode(handle, index, mode) {
1823
+ return this.live(handle) && this.adapter.weaponMode(handle.slot, index, mode);
1824
+ }
1825
+ applyWeaponDamage(handle, amount, source = null) {
1826
+ return this.live(handle) && (source === null || this.live(source)) && this.adapter.weaponDamage(handle.slot, amount, source?.slot ?? null);
1827
+ }
1828
+ setWeaponSurface(handle, surface) {
1829
+ return this.live(handle) && this.adapter.weaponSurface(handle.slot, surface);
1830
+ }
1831
+ launchWeaponProjectile(owner, projectile, kind, options = {}) {
1832
+ return this.live(owner) && this.live(projectile) && this.adapter.launchWeaponProjectile(owner.slot, projectile.slot, kind, options);
1833
+ }
1834
+ getWeaponState(handle) {
1835
+ return this.live(handle) ? this.adapter.queryWeapons(handle.slot) : null;
1836
+ }
1837
+ getWeaponProjectileState(handle) {
1838
+ return this.live(handle) ? this.adapter.queryWeaponProjectile(handle.slot) : null;
1839
+ }
1840
+ getWeaponCameraIntent(handle) {
1841
+ return this.live(handle) ? this.adapter.weaponCameraIntent(handle.slot) : null;
1842
+ }
1843
+ attachCombat(handle, abilities, options = {}) {
1844
+ return this.live(handle) && this.adapter.attachCombat(handle.slot, abilities, options);
1845
+ }
1846
+ detachCombat(handle) {
1847
+ return this.live(handle) && this.adapter.detachCombat(handle.slot);
1848
+ }
1849
+ setCombatInput(handle, input) {
1850
+ return this.live(handle) && this.adapter.combatInput(handle.slot, input);
1851
+ }
1852
+ setCombatAttack(handle, index, attack) {
1853
+ return this.live(handle) && this.adapter.combatAttack(handle.slot, index, attack);
1854
+ }
1855
+ applyCombatHit(handle, hit = {}, source = null) {
1856
+ return this.live(handle) && (source === null || this.live(source)) && this.adapter.combatHit(handle.slot, hit, source?.slot ?? null);
1857
+ }
1858
+ getCombatState(handle) {
1859
+ return this.live(handle) ? this.adapter.queryCombat(handle.slot) : null;
1860
+ }
1861
+ attachPuzzle(handle, ability, options = {}) {
1862
+ return this.live(handle) && this.adapter.attachPuzzle(handle.slot, ability, options);
1863
+ }
1864
+ detachPuzzle(handle) {
1865
+ return this.live(handle) && this.adapter.detachPuzzle(handle.slot);
1866
+ }
1867
+ getPuzzleState(handle) {
1868
+ return this.live(handle) ? this.adapter.queryPuzzle(handle.slot) : null;
1869
+ }
1870
+ sendPuzzleCommand(handle, command) {
1871
+ return this.live(handle) && this.adapter.puzzleCommand(handle.slot, command);
1872
+ }
1873
+ setPuzzleLink(handle, other) {
1874
+ return this.live(handle) && (other === null || this.live(other)) && this.adapter.puzzleLink(handle.slot, other?.slot ?? null);
1875
+ }
1876
+ getPuzzleSegments(handle) {
1877
+ return this.live(handle) ? this.adapter.puzzleSegments(handle.slot) : [];
1878
+ }
1879
+ attachAdventure(handle, abilities, options = {}) {
1880
+ return this.live(handle) && this.adapter.attachAdventure(handle.slot, abilities, options);
1881
+ }
1882
+ detachAdventure(handle) {
1883
+ return this.live(handle) && this.adapter.detachAdventure(handle.slot);
1884
+ }
1885
+ getAdventureState(handle) {
1886
+ return this.live(handle) ? this.adapter.queryAdventure(handle.slot) : null;
1887
+ }
1888
+ setAdventureInput(handle, input) {
1889
+ if (!this.live(handle)) return false;
1890
+ this.adapter.writeAdventureInput(handle.slot, input);
1891
+ return true;
1892
+ }
1893
+ setAdventureObject(handle, object) {
1894
+ return this.live(handle) && this.adapter.setAdventureObject(handle.slot, object);
1895
+ }
1896
+ getAdventureObjectState(handle) {
1897
+ return this.live(handle) ? this.adapter.queryAdventureObject(handle.slot) : null;
1898
+ }
1899
+ grantAdventureToken(handle, key, count = 1) {
1900
+ return this.live(handle) ? this.adapter.adventureProgress(handle.slot, 1, key, count) : 0;
1901
+ }
1902
+ getAdventureToken(handle, key) {
1903
+ return this.live(handle) ? this.adapter.adventureProgress(handle.slot, 0, key) : 0;
1904
+ }
1905
+ hasAdventureDiscovery(handle, key) {
1906
+ return this.live(handle) && this.adapter.adventureProgress(handle.slot, 2, key) === 1;
1907
+ }
1908
+ attachEnvironment(handle, abilities, options = {}) {
1909
+ return this.live(handle) && this.adapter.attachEnvironment(handle.slot, abilities, options);
1910
+ }
1911
+ detachEnvironment(handle) {
1912
+ return this.live(handle) && this.adapter.detachEnvironment(handle.slot);
1913
+ }
1914
+ getEnvironmentState(handle) {
1915
+ return this.live(handle) ? this.adapter.queryEnvironment(handle.slot) : null;
1916
+ }
1917
+ setEnvironmentInput(handle, input) {
1918
+ if (!this.live(handle)) return false;
1919
+ this.adapter.writeEnvironmentInput(handle.slot, input);
1920
+ return true;
1921
+ }
1922
+ setEnvironmentVolume(handle, volume) {
1923
+ return this.live(handle) && this.adapter.setEnvironmentVolume(handle.slot, volume);
1924
+ }
1925
+ setTubeRail(handle, rail) {
1926
+ return this.live(handle) && this.adapter.setTubeRail(handle.slot, rail);
1927
+ }
1928
+ setTraversalSurface(handle, kind) {
1929
+ return this.live(handle) && this.adapter.setTraversalSurface(handle.slot, kind);
1930
+ }
1931
+ setPossessable(handle, enabled) {
1932
+ return this.live(handle) && this.adapter.setPossessable(handle.slot, enabled);
1933
+ }
1934
+ startPossession(owner, target, seconds = 5) {
1935
+ return this.live(owner) && this.live(target) && this.adapter.startPossession(owner.slot, target.slot, seconds);
1936
+ }
1937
+ endPossession(owner) {
1938
+ return this.live(owner) && this.adapter.endPossession(owner.slot);
1939
+ }
1940
+ getPossession(owner) {
1941
+ if (!this.live(owner)) return null;
1942
+ const session = this.adapter.queryPossession(owner.slot);
1943
+ const target = session && this.slotToHandle.get(session.targetSlot);
1944
+ return session && target ? { target, remaining: session.remaining } : null;
1945
+ }
615
1946
  setPosition(handle, x, y, z) {
616
1947
  return this.adapter.setPosition(handle.slot, x, y, z);
617
1948
  }
@@ -754,8 +2085,155 @@ var GameEntity = class {
754
2085
  };
755
2086
  var export_t = import_typescript_fsm.t;
756
2087
  export {
2088
+ ACROBATICS_ACTIONS,
2089
+ ADVENTURE_ABILITIES,
2090
+ ADVENTURE_BUTTONS,
2091
+ ADVENTURE_EVENT_KINDS,
2092
+ ADVENTURE_FLAGS,
2093
+ ActionRpgBehavior,
2094
+ ActiveBumperKickBehavior,
2095
+ ActivePartnerSwapBehavior,
2096
+ AdaptiveEncounterPressureBehavior,
2097
+ AdjacentPanelSwapBehavior,
2098
+ AffixBudgetGenerationBehavior,
2099
+ AirGrabTrickBehavior,
2100
+ AlarmCommunicationNetworkBehavior,
2101
+ AlternateWeaponModeBehavior,
2102
+ ArmingProximityMineBehavior,
2103
+ AutonomousFamiliarBehavior,
2104
+ BATTLE_ABILITIES,
2105
+ BATTLE_EVENTS,
2106
+ BUILTIN_BEHAVIORS,
2107
+ BeamMissileCombinationBehavior,
2108
+ BlockerChewTransitionBehavior,
2109
+ BossPhaseControllerBehavior,
2110
+ BudgetedPassiveLoadoutBehavior,
2111
+ BudgetedWaveSchedulerBehavior,
2112
+ BurrowToBacklineBehavior,
2113
+ CITY_ABILITIES,
2114
+ CITY_EVENTS,
2115
+ CITY_INTENTS,
2116
+ CITY_LINKS,
2117
+ COMBAT_ABILITIES,
2118
+ COMBAT_EVENTS,
2119
+ COMBAT_PHASES,
2120
+ CalendarNpcRoutineBehavior,
2121
+ CallAndResponsePatternBehavior,
2122
+ CaptureAttemptResolutionBehavior,
2123
+ CascadeChainCreditBehavior,
2124
+ ChargeAndReleaseShotBehavior,
2125
+ ClubShotProfileBehavior,
2126
+ ColumnCollapseBehavior,
2127
+ CombatAIBehavior,
2128
+ CommanderPowerWindowBehavior,
2129
+ CompanionAbductionObjectiveBehavior,
2130
+ ConditionalEvolutionBehavior,
2131
+ ConsumableBeltSlotsBehavior,
2132
+ ContextualDisguiseBehavior,
2133
+ CooperativeConstructionWorkBehavior,
2134
+ CooperativeObjectTransportBehavior,
2135
+ CostedGridDeploymentBehavior,
2136
+ CounterattackAndFollowUpBehavior,
2137
+ CoverPeekCycleBehavior,
2138
+ CropGrowthStagesBehavior,
2139
+ DEFENSE_ABILITIES,
2140
+ DEFENSE_EVENTS,
2141
+ DamageToResourceLeechBehavior,
2142
+ DayEndUnitRecallBehavior,
2143
+ DeathDropOwnershipBehavior,
2144
+ DelayedShieldRegenerationBehavior,
2145
+ DeliveredResourceConversionBehavior,
2146
+ DriftChargeBoostBehavior,
2147
+ DurabilityAndRepairBehavior,
2148
+ ENCOUNTER_ABILITIES,
2149
+ ENCOUNTER_EVENTS,
2150
+ ENCOUNTER_INTENTS,
2151
+ ENCOUNTER_LINKS,
2152
+ ENVIRONMENT_ABILITIES,
2153
+ ENVIRONMENT_MODES,
2154
+ EncounterClearLockBehavior,
2155
+ EnergyFundedRaceBoostBehavior,
2156
+ EnvironmentalVaultActionBehavior,
2157
+ EquipmentStatAggregationBehavior,
2158
+ EscapeAttemptBehavior,
2159
+ EscortFollowWaitBehavior,
2160
+ ExertionAndFatigueBehavior,
2161
+ FieldFirstStrikeBehavior,
2162
+ FishingBiteAndHookBehavior,
2163
+ FootprintTrailFollowingBehavior,
2164
+ FretChordStrumBehavior,
2165
+ FuelAmmunitionResupplyBehavior,
757
2166
  GameEntity,
2167
+ GarbageBlockConversionBehavior,
2168
+ GolfRacketBehavior,
2169
+ GrenadeDangerEvasionBehavior,
2170
+ GrowthStageMobilityBehavior,
2171
+ HammerOnPullOffChainBehavior,
2172
+ HarvestableFruitRegrowthBehavior,
2173
+ HoldReleaseRhythmBehavior,
2174
+ HoverTrackSuspensionBehavior,
2175
+ IngredientCombinationBehavior,
2176
+ InterruptibleMagazineReloadBehavior,
2177
+ LIFE_ABILITIES,
2178
+ LIFE_EVENTS,
2179
+ LandingAlignmentBailBehavior,
2180
+ LandingSpinTransferBehavior,
2181
+ LaneDefenseBehavior,
2182
+ LaneTargetAcquisitionBehavior,
2183
+ LastChanceLaneSweeperBehavior,
2184
+ LastSeenSearchBehavior,
2185
+ LatentAmbushActivationBehavior,
2186
+ LayeredBreakawayArmorBehavior,
2187
+ LeaderLossMoraleBehavior,
2188
+ LifeSimulationBehavior,
2189
+ LivestockDailyCareBehavior,
2190
+ LobAndDropPlacementBehavior,
2191
+ LocalizedWeakPointDamageBehavior,
2192
+ MATCHING_ABILITIES,
2193
+ MATCHING_EVENTS,
2194
+ ManualBalanceBehavior,
2195
+ MatchingPinballBehavior,
2196
+ MaterialPenetratingShotBehavior,
2197
+ MinMaxAttackRangeBehavior,
758
2198
  MockBehaviorRuntime,
2199
+ NoiseInvestigationBehavior,
2200
+ OrderedLapCheckpointsBehavior,
2201
+ PUZZLE_ABILITIES,
2202
+ PedestrianPanicPropagationBehavior,
2203
+ PerformanceFailureMeterBehavior,
2204
+ PeriodicResourceProductionBehavior,
2205
+ PersistentUnitLossBehavior,
2206
+ PhraseEarnedScorePowerBehavior,
2207
+ PinballModeObjectivesBehavior,
2208
+ PositionWeightedRaceItemsBehavior,
2209
+ PoweredPinballFlipperBehavior,
2210
+ PrewoundSpinBehavior,
2211
+ PrioritySpeedTurnOrderBehavior,
2212
+ ProgressiveBuildingCaptureBehavior,
2213
+ PursuitEvasionDecayBehavior,
2214
+ RACING_ABILITIES,
2215
+ RHYTHM_ABILITIES,
2216
+ RHYTHM_EVENTS,
2217
+ RPG_ABILITIES,
2218
+ RPG_EVENTS,
2219
+ RacingVehiclesBehavior,
2220
+ RacketContactTimingBehavior,
2221
+ RacketSpinShotBehavior,
2222
+ RailGrindBalanceBehavior,
2223
+ RallyPointAdjudicationBehavior,
2224
+ RampLipLaunchBehavior,
2225
+ RelationshipEventMemoryBehavior,
2226
+ RemoteGuidedProjectileBehavior,
2227
+ RepeatedTrickDevaluationBehavior,
2228
+ ResourceDrainingTransformationBehavior,
2229
+ RhythmPerformanceBehavior,
2230
+ RhythmSceneRemixBehavior,
2231
+ RisingStackPressureBehavior,
2232
+ RoomFurniturePlacementBehavior,
2233
+ SKATE_ABILITIES,
2234
+ SPORTS_ABILITIES,
2235
+ SQUAD_ABILITIES,
2236
+ SQUAD_EVENTS,
759
2237
  STAGE_EVENT_STRIDE,
760
2238
  STAGE_INPUT_BUTTON_JUMP,
761
2239
  STAGE_INPUT_BUTTON_RUN,
@@ -763,7 +2241,25 @@ export {
763
2241
  STAGE_INVALID_SLOT,
764
2242
  STAGE_RENDER_STRIDE,
765
2243
  STAGE_SNAPSHOT_STRIDE,
2244
+ SURVIVAL_ABILITIES,
2245
+ SavePointCheckpointBehavior,
2246
+ SeasonalCropEligibilityBehavior,
2247
+ SeededLootTableBehavior,
2248
+ ServeAndFaultSequenceBehavior,
2249
+ ShootableProjectileInterceptionBehavior,
766
2250
  Simulation,
2251
+ SimultaneousMatchClearBehavior,
2252
+ SingleUseObstacleVaultBehavior,
2253
+ SkateSnowboardBehavior,
2254
+ SlipstreamDraftingBehavior,
2255
+ SlopeAwarePuttingBehavior,
2256
+ SoilMoistureCycleBehavior,
2257
+ SpatialInventoryPackingBehavior,
2258
+ SpeciesHazardAffinityBehavior,
2259
+ SpringPlungerLaunchBehavior,
2260
+ SquadFlankAssignmentBehavior,
2261
+ SquadFormationFollowBehavior,
2262
+ SquadRtsBehavior,
767
2263
  StageBodyKind,
768
2264
  StageBoundaryDim,
769
2265
  StageEventType,
@@ -771,24 +2267,83 @@ export {
771
2267
  StageRicochetDim,
772
2268
  StageRicochetReflection,
773
2269
  StageTopDownPlane,
2270
+ StaggerFinisherOpportunityBehavior,
2271
+ StationaryAimModeBehavior,
2272
+ StealthCityBehavior,
2273
+ StickyGrenadeAttachmentBehavior,
2274
+ SurfaceLatchAttackBehavior,
2275
+ SurvivalResourcesBehavior,
2276
+ SustainNoteTrackingBehavior,
2277
+ SwingPowerAccuracyBehavior,
774
2278
  SyncStateMachine,
2279
+ TACTICS_ABILITIES,
2280
+ TACTICS_EVENTS,
2281
+ TRAVERSAL_ABILITIES,
2282
+ TacticalBurstSelectionBehavior,
2283
+ TacticalGridBehavior,
2284
+ TempoMapChartPlayerBehavior,
2285
+ TerrainDefenseModifierBehavior,
2286
+ TerrainMovementBudgetBehavior,
2287
+ ThreatTargetSelectionBehavior,
2288
+ ThrownWorkerDeploymentBehavior,
2289
+ TimedBattleActionCommandBehavior,
2290
+ TimestampedRhythmJudgmentBehavior,
2291
+ TrackFollowingHomingItemBehavior,
2292
+ TrafficJunctionYieldBehavior,
2293
+ TransportLoadUnloadBehavior,
2294
+ TrickEarnedBoostMeterBehavior,
2295
+ TurnBasedRpgBehavior,
2296
+ TurnDurationStatusBehavior,
2297
+ TypeEffectivenessMatrixBehavior,
2298
+ TypedResistanceResolutionBehavior,
2299
+ UnbankedTrickComboBehavior,
775
2300
  VEC2_ONE,
776
2301
  VEC2_ZERO,
777
2302
  VEC3_ONE,
778
2303
  VEC3_ZERO,
2304
+ VehicleDamageProgressionBehavior,
2305
+ VehicleSeatEntryExitBehavior,
2306
+ VehicleSideAttackBehavior,
2307
+ VisionConeAwarenessBehavior,
2308
+ WEAPON_ABILITIES,
2309
+ WEAPON_EVENTS,
2310
+ WEAPON_PHASES,
2311
+ WallRideBehavior,
2312
+ WantedLevelEscalationBehavior,
779
2313
  WasmStageRuntime,
2314
+ WeaponAdvantageCycleBehavior,
2315
+ WeaponHeatAndVentBehavior,
2316
+ WeaponSystemsBehavior,
2317
+ WeaponUpgradeTrackBehavior,
2318
+ WhistleRecallBehavior,
2319
+ WindDragBallFlightBehavior,
2320
+ battleData,
2321
+ battleOperation,
2322
+ cityData,
780
2323
  clearVelocityIntent,
2324
+ combatAttackData,
2325
+ combatButtons,
2326
+ combatData,
2327
+ combatHitData,
781
2328
  createPhysicsBodyComponent,
782
2329
  createSimulation,
783
2330
  createTransformComponent,
784
2331
  createTransformStore,
785
2332
  createWasmStageRuntime,
2333
+ defenseData,
2334
+ defenseOperation,
786
2335
  defineBehavior,
2336
+ encounterData,
787
2337
  getPosition,
2338
+ getRequiredRuntimeBehaviors,
788
2339
  getVelocity,
789
2340
  isVec2Input,
790
2341
  isVec3Input,
2342
+ lifeData,
2343
+ lifeOperation,
791
2344
  makeMoveable,
2345
+ matchingData,
2346
+ matchingOperation,
792
2347
  move,
793
2348
  moveForwardXY,
794
2349
  moveX,
@@ -798,18 +2353,40 @@ export {
798
2353
  moveZ,
799
2354
  normalizeVec2,
800
2355
  normalizeVec3,
2356
+ puzzleCommandData,
2357
+ puzzleData,
2358
+ racingData,
2359
+ racingOperation,
801
2360
  readBehaviorSnapshot,
802
2361
  readStageRenderSlot,
803
2362
  resetVelocity,
2363
+ rhythmData,
2364
+ rhythmOperation,
2365
+ rpgData,
2366
+ rpgOperation,
804
2367
  setPosition,
805
2368
  setPositionX,
806
2369
  setPositionY,
807
2370
  setPositionZ,
808
2371
  setVelocityIntent,
2372
+ skateData,
2373
+ skateOperation,
2374
+ sportsData,
2375
+ sportsOperation,
2376
+ squadData,
2377
+ squadOperation,
2378
+ survivalData,
2379
+ survivalOperation,
809
2380
  export_t as t,
2381
+ tacticsData,
2382
+ tacticsOperation,
810
2383
  toThreeVector2,
811
2384
  toThreeVector3,
812
2385
  useBehavior,
2386
+ weaponButtons,
2387
+ weaponData,
2388
+ weaponModeData,
2389
+ weaponProjectileData,
813
2390
  wrapAround3D,
814
2391
  wrapAroundXY
815
2392
  };