@eva/react-eva-sprite-animation
Version:
React EVA是一个让开发同学能够在React技术体系下,利用EVA JS的游戏研发能力,开发动画、游戏类场景的框架。它可以让开发同学用熟悉的JSX和Hooks语法编写动画、游戏场景的代码。
42 lines (35 loc) • 1.28 kB
TypeScript
import {RefObject} from 'react';
import {
EvaRefObject,
ResourceIdentify,
ResourceItem,
ResourceSchema,
EVAComponentProps
} from '@eva/react-eva';
import {SpriteAnimation as SpriteAnimationComponent, SpriteAnimationParams as SpriteAnimationInitParams} from '@eva/plugin-renderer-sprite-animation';
declare global {
namespace EVA {
interface EvaRefObject {
SpriteAnimation? :SpriteAnimationComponent
}
interface ResourceSchema {
SPRITE_ANIMATION: {
name?: string;
image: string | ResourceItem<'png' | 'jpg' | 'jpeg' | 'webp' | 'svg'>;
json: string | ResourceItem<'json'>;
};
}
}
}
type SpriteAnimationParams = SpriteAnimationInitParams;
export interface SpriteAnimationRefObject extends EvaRefObject {
play(speed: number): void;
stop(): void;
}
interface SpriteAnimationProps extends EVAComponentProps, SpriteAnimationInitParams {
ref?: RefObject<SpriteAnimationRefObject>;
src?: ResourceSchema['SPRITE_ANIMATION'];
}
export function useSpriteAnimationResource(src: ResourceSchema['SPRITE_ANIMATION']): ResourceIdentify;
export function useSpriteAnimation(params: SpriteAnimationParams): SpriteAnimationComponent;
export default function SpriteAnimation(props: SpriteAnimationProps): JSX.Element;