skinview3d-blockbench
Version:
SkinView3d animation provider for blockbench bedrock minecraft animations
40 lines (39 loc) • 1.63 kB
TypeScript
import { PlayerAnimation, PlayerObject } from 'skinview3d';
import { BlockbenchAnimationProviderProps } from './types';
/** Provider for bedrock .animation.json files */
export declare class SkinViewBlockbench extends PlayerAnimation {
private animations;
/** Function called when looped animation loop ends */
onLoopEnd: BlockbenchAnimationProviderProps['onLoopEnd'];
/** Function call when single-iteration animation ends */
onFinish: BlockbenchAnimationProviderProps['onFinish'];
/**
* Force loop animation, ignoring its settings
* (undefined for using loop setting from animation)
*/
forceLoop?: boolean;
/** Connect cape to body if its not animated */
connectCape: boolean;
/** Currently playing animation name */
animationName: string;
/** Currently playing animation iteration */
animationIteration: number;
/** Player object */
private player;
/** Animation progress in milliseconds */
private _progress;
private clock;
/** Normalize keyframes names by adding explicit lerp mode */
private convertKeyframe;
constructor(params: BlockbenchAnimationProviderProps);
/** Reset animation */
private reset;
/** Prepare single animation */
private processAnimation;
/** Sets the current animation by name from already imported animation set */
setAnimation(animation_name: string, options?: Pick<BlockbenchAnimationProviderProps, 'forceLoop' | 'connectCape'>): void;
private clamp;
private getCurrentKeyframe;
protected animate(player: PlayerObject): void;
private findInsertPosition;
}