UNPKG

retrolib

Version:

Render low-res scenes to the canvas in a retro 8-bit era style. Aseprite exported animation wrapper, scene management, sound and image management, particle support.

112 lines (111 loc) 2.44 kB
/** * Animation header section. */ export interface Animation { frames: { [key: string]: FrameValue; }; meta: Meta; } /** * Animation frame value object. */ export interface FrameValue { frame: SpriteSourceSizeClass; rotated: boolean; trimmed: boolean; spriteSourceSize: SpriteSourceSizeClass; sourceSize: Size; duration: number; } /** * Animation source rect. */ export interface SpriteSourceSizeClass { x: number; y: number; w: number; h: number; } /** * Size object. */ export interface Size { w: number; h: number; } /** * Sprite metadata. */ export interface Meta { app: string; version: string; image: string; format: string; size: Size; scale: string; frameTags: FrameTag[]; layers: Layer[]; slices: any[]; } /** * Sprite frame tags. */ export interface FrameTag { name: string; from: number; to: number; direction: string; } /** * Sprite layers. */ export interface Layer { name: string; opacity: number; blendMode: string; } export interface SpriteEvent { (sprite: Aseprite): void; } export interface Listener { name: string; frameNumber: number; fnEvent: SpriteEvent; } /** * Sprite controller, a wrapper for Aseprite JSON export format. */ export declare class Aseprite { name: string; animation: Animation; frames: { [key: string]: FrameValue; }; meta: Meta; frameNumber: number; elapsed: number; frameElapsed: number; direction: number; flipX: boolean; listeners: Listener[]; lastListenerExecuted: Listener; constructor(name: string, animation: Animation); CallListener(name: string, frameNumber: number): void; GetListener(name: string, frameNumber: number): Listener; AddListener(name: string, frameNumber: number, callback: SpriteEvent): void; HasListener(name: string, frameNumber: number): boolean; ClearListener(name: string, frameNumber: number): void; Play(): void; PlayFromStart(frameTag: string): void; Pause(): void; FrameId(frameNumber: number): string; Frame(frameNumber: number): FrameValue; FrameCount(): number; CurrentFrameId(): string; CurrentFrame(): FrameValue; FrameMetaTag(frameNumber: number): FrameTag; MetaTag(frameTag: string): FrameTag[]; Update(delta: number): void; Draw(x: number, y: number): void; }