Files
i-want-to-heal/src/modes/iwt2/sim/index.ts
T
2026-07-05 22:48:56 -04:00

73 lines
1.3 KiB
TypeScript

export {
createInitialIwt2ArenaState,
tickIwt2Arena,
} from './arena'
export {
circlesOverlap,
circleIntersectsSegment,
distanceToSegment,
separateCircles,
} from './collision'
export {
applyPartyDamageInShape,
createArenaEvent,
createCircleIndicator,
createConeIndicator,
createDonutIndicator,
createLaneIndicator,
createLinearMovementPlan,
indicatorPhaseFromAttack,
isIndicatorActive,
partyMemberIntersectsShape,
} from './mechanics'
export {
castIwt2HealerAbility,
} from './healing'
export {
applyIwt2InfusionLoadout,
selectedInfusionForMember,
} from './infusionLoadout'
export {
addVec2,
clamp,
clampVec2ToArena,
distanceVec2,
dotVec2,
lengthSqVec2,
lengthVec2,
moveToward,
normalizeVec2,
scaleVec2,
subtractVec2,
} from './vector'
export type {
Iwt2ArenaBounds,
Iwt2ArenaEvent,
Iwt2ArenaEventType,
Iwt2ArenaIndicator,
Iwt2ArenaIndicatorPhase,
Iwt2ArenaInput,
Iwt2ArenaState,
Iwt2BossAttackPhase,
Iwt2BossEntityState,
Iwt2Circle,
Iwt2EntityId,
Iwt2EntityKind,
Iwt2GroundHazardState,
Iwt2HotEffectState,
Iwt2HostileAddAttackPhase,
Iwt2HostileAddState,
Iwt2PartyAiRole,
Iwt2PartyEntityId,
Iwt2PartyEntityState,
Iwt2ProjectileEntityState,
Iwt2StatusState,
Iwt2Vec2,
} from './types'