API reference
Every public class, method, and event in @codexo/exojs. Generated from source.
classAnimatedSprite
A Sprite that advances through a sequence of texture-frame Rectangles over time to produce frame-based animation. Multiple named clips can be registered via defineClip or the constructor. Call play to start a clip; call update each frame with the elapsed delta (seconds or a `Time` object) to advance playback. The `onFrame` signal fires on every frame advance and `onComplete` fires when a non-looping clip reaches its last frame. Use AnimatedSprite.fromSpritesheet to create an instance directly from a Spritesheet's named animations.
import { AnimatedSprite } from '@codexo/exojs' A Sprite that advances through a sequence of texture-frame Rectangles over time to produce frame-based animation.
Multiple named clips can be registered via defineClip or the constructor. Call play to start a clip; call update each frame with the elapsed delta (seconds or a `Time` object) to advance playback. The `onFrame` signal fires on every frame advance and `onComplete` fires when a non-looping clip reaches its last frame.
Use AnimatedSprite.fromSpritesheet to create an instance directly from a Spritesheet's named animations.
new(texture: RenderTexture | Texture | null, clips?: Readonly<Record<string, AnimatedSpriteClipDefinition>>): AnimatedSprite _invalidateChildrenTransform(): void addFilter(filter: Filter): this clearFilters(): this collidesWith(target: Collidable): CollisionResponse | null contains(x: number, y: number): boolean defineClip(name: string, clip: AnimatedSpriteClipDefinition): this destroy(): void getBounds(): Rectangle getGlobalTransform(): Matrix getLocalBounds(): Rectangle getNormals(): Vector[] getTransform(): Matrix intersectsWith(target: Collidable): boolean invalidateCache(): this inView(view: View): boolean move(x: number, y: number): this pause(): this play(name: string, options: AnimatedSpritePlayOptions): this project(axis: Vector, result: Interval): Interval removeClip(name: string): this removeFilter(filter: Filter): this render(backend: RenderBackend): this resetTextureFrame(): this resume(): this rotate(degrees: number): this setAnchor(x: number, y: number): this setBlendMode(blendMode: BlendModes): this setClips(clips: Readonly<Record<string, AnimatedSpriteClipDefinition>>): this setOrigin(x: number, y: number): this setPosition(x: number, y: number): this setRotation(degrees: number): this setScale(x: number, y: number): this setSkew(x: number, y: number): this setTexture(texture: RenderTexture | Texture | null): this setTextureFrame(frame: Rectangle, resetSize: boolean): this setTint(color: Color): this stop(): this update(delta: number | Time): this updateBounds(): this updateParentTransform(): this updateTexture(): this updateTransform(): this fromSpritesheet(spritesheet: Spritesheet): AnimatedSprite setInternalSpriteFactory(factory: object | null): void clip: boolean clipShape: Rectangle | Geometry | null collisionType: CollisionType cursor: string | null draggable: boolean flags: Flags<SceneNodeTransformFlags> preserveDrawOrder: boolean anchor: ObservableVector blendMode: BlendModes cacheAsBitmap: boolean cullable: boolean currentClip: string | null currentFrame: number filters: readonly Filter[] height: number interactive: boolean isAlignedBox: boolean loop: boolean mask: MaskSource material: SpriteMaterial | null origin: ObservableVector parent: Container | null pixelSnapMode: PixelSnapMode playing: boolean position: ObservableVector rotation: number scale: ObservableVector skewX: number skewY: number texCoords: Uint32Array texture: RenderTexture | Texture | null textureFrame: Rectangle tint: Color vertices: Float32Array visible: boolean width: number x: number y: number zIndex: number onComplete: Signal<[clip]> onDrag: Signal<[InteractionEvent]> onDragEnd: Signal<[InteractionEvent]> onDragStart: Signal<[InteractionEvent]> onFrame: Signal<[clip, frame]> onPointerDown: Signal<[InteractionEvent]> onPointerMove: Signal<[InteractionEvent]> onPointerOut: Signal<[InteractionEvent]> onPointerOver: Signal<[InteractionEvent]> onPointerTap: Signal<[InteractionEvent]> onPointerUp: Signal<[InteractionEvent]>