/** * HitboxSystem.ts * * Hitbox/hurtbox management: active frame windows, * hit registration with deduplication, and knockback vectors. * * @module combat */ export interface Hitbox { id: string; ownerId: string; x: number; y: number; z: number; width: number; height: number; depth: number; damage: number; knockbackX: number; knockbackY: number; activeStart: number; activeEnd: number; group: string; } export interface Hurtbox { id: string; entityId: string; x: number; y: number; z: number; width: number; height: number; depth: number; } export interface HitEvent { hitboxId: string; hurtboxId: string; attackerId: string; defenderId: string; damage: number; knockbackX: number; knockbackY: number; } export declare class HitboxSystem { private hitboxes; private hurtboxes; private currentFrame; private hitLog; private events; addHitbox(hb: Hitbox): void; addHurtbox(hb: Hurtbox): void; removeHitbox(id: string): void; removeHurtbox(id: string): void; update(frame: number): HitEvent[]; private overlaps; clearHitLog(): void; getHitCount(): number; getLastEvents(): HitEvent[]; } //# sourceMappingURL=HitboxSystem.d.ts.map