UNPKG

arx-convert

Version:

Converts various Arx Fatalis formats to JSON or YAML and back

25 lines (24 loc) 813 B
import type { ArxQuaternion, ArxVector3 } from '../common/types.js'; import { type ArxNewKeyFrame } from './NewKeyFrame.js'; import { type ArxOldKeyFrame } from './OldKeyFrame.js'; import { type ArxTeaHeader } from './TeaHeader.js'; /** * @see https://github.com/arx/ArxLibertatis/blob/1.2.1/src/animation/AnimationFormat.h#L124 */ export type ArxTheaSample = { name: string; size: number; }; export type ArxKeyFrame = (ArxNewKeyFrame | ArxOldKeyFrame) & { translate?: ArxVector3; quat?: ArxQuaternion; sample?: ArxTheaSample; }; export type ArxTEA = { header: Omit<ArxTeaHeader, 'numberOfKeyFrames' | 'numberOfGroups'>; keyframes: ArxKeyFrame[]; }; export declare class TEA { static load(decompressedFile: ArrayBufferLike): ArxTEA; static save(json: ArxTEA): ArrayBuffer; }