Files
SpineParticlesWeb/src/spine/spineTypes.ts
T
2026-10-22 11:16:50 +08:00

51 lines
1.2 KiB
TypeScript

import type { SpineSourceBundle } from './spineSourceBundle'
import type { SupportedSpineVersion } from './spineVersion'
export interface SpineAnimationInfo {
name: string
duration: number
}
export interface SpineBoneInfo {
name: string
parent: string | null
depth: number
}
/** 插槽信息;order 为 setup 姿态下的绘制顺序(Spine drawOrder 可能被动画改变)。 */
export interface SpineSlotInfo {
name: string
order: number
bone: string
attachment: string
}
export interface SpineSceneObject {
id: number
name: string
enabled: boolean
visible: boolean
x: number
y: number
rotation: number
scaleX: number
scaleY: number
timeOffset: number
skeletonFileName: string
atlasFileName: string
textureFileNames: string[]
/** 当前已加载资源的 Spine 主版本。 */
dataVersion: SupportedSpineVersion | ''
/** 保存配置时使用的可移植原始 Spine 文件。 */
sourceBundle: SpineSourceBundle | null
selectedAnimation: string
selectedBone: string
selectedSlot: string
animations: SpineAnimationInfo[]
bones: SpineBoneInfo[]
slots: SpineSlotInfo[]
assetVersion: number
status: 'empty' | 'loading' | 'ready' | 'error'
error: string
}