import { Collision } from './collision'; export interface EntityAnimation { readonly sequence: ReadonlyArray<[number, number]>; } export interface EntityDataInput { readonly sprite: string; readonly anchor?: [number, number]; readonly collision?: Collision[]; readonly frames?: number; readonly animation?: EntityAnimation; } export class EntityData { public readonly sprite: string; public readonly anchor: [number, number]; public readonly collision: Collision[]; public readonly frames: number; public readonly animation?: EntityAnimation; constructor(input: EntityDataInput) { this.sprite = input.sprite; this.anchor = input.anchor || [0.5, 0.5]; this.collision = input.collision || []; this.frames = input.frames || 1; this.animation = input.animation; } }