51 lines
1.2 KiB
TypeScript
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
|
|
}
|