diff --git a/packages/base/src/SpineBase.ts b/packages/base/src/SpineBase.ts index f7e3041a..f23365ce 100644 --- a/packages/base/src/SpineBase.ts +++ b/packages/base/src/SpineBase.ts @@ -18,7 +18,7 @@ import {DRAW_MODES} from '@pixi/constants'; import {Container, DisplayObject} from '@pixi/display'; import {Sprite} from '@pixi/sprite'; import {SimpleMesh} from '@pixi/mesh-extras'; -import {Graphics} from '@pixi/graphics' +import {Graphics} from '@pixi/graphics'; import {Rectangle, Polygon, Transform} from '@pixi/math'; import {hex2rgb, rgb2hex} from '@pixi/utils'; import type {Texture} from '@pixi/core'; @@ -33,26 +33,32 @@ let tempRgb = [0, 0, 0]; export interface ISpineDisplayObject extends DisplayObject { region?: TextureRegion; attachment?: IAttachment; + spineAnimation?: SpineBase; } -/** - * @public - */ -export class SpineSprite extends Sprite implements ISpineDisplayObject { + +export class SpineSprite extends Sprite { region?: TextureRegion = null; attachment?: IAttachment = null; + spineAnimation?: SpineBase = null; } + /** * @public */ export class SpineMesh extends SimpleMesh implements ISpineDisplayObject { region?: TextureRegion = null; attachment?: IAttachment = null; + spineAnimation?: SpineBase = null; +} - constructor(texture: Texture, vertices?: Float32Array, uvs?: Float32Array, indices?: Uint16Array, drawMode?: number) { - super(texture, vertices, uvs, indices, drawMode); - } +export interface SpineSpriteConstructor { + new (texture?: Texture): SpineSprite; +} + +export interface SpineMeshConstructor { + new (texture: Texture, vertices?: Float32Array, uvs?: Float32Array, indices?: Uint16Array, drawMode?: number): SpineMesh; } /** @@ -98,10 +104,12 @@ export abstract class SpineBase