import Layer, { ILayerEvent, ILayerState } from './Layer'; import { ISketchUtils } from './Sketch'; import { IJobAlias } from './alias/job'; export interface IPlayerProps { /** * 职业名称 * * 支持 中英文官方名称 * * 英文名称支持的是没有连接符号的小写全称 * * 可通过 [[Player.setAlias]] 设置别名 */ job: IJobAlias; /** * 显示尺寸 */ size: number; } export interface IPlayerEvent extends ILayerEvent { job: (job: IPlayerProps['job']) => void; size: (size: IPlayerProps['size']) => void; } /** * 绘制 职业图标 */ export default class Player extends Layer { props: IPlayerProps; private img; private circle; constructor(state?: Partial, props?: Partial); /** * 设置职业 */ job(value: IPlayerProps['job']): this; /** * 设置尺寸 */ size(value: IPlayerProps['size']): this; /** * 为职业名称设别名 * * 通过 `Player.setAlias('吟游诗人', '诗人')` 设置别名 * * 之后则可以使用 `new Player('诗人')` 获得与`吟游诗人`同样的图标 * * @param name 中英文官方名称 / 已设置成功的别名 * @param alias 别名 */ static setAlias(name: IJobAlias, alias: string): void; protected _clone(): Player; protected _render(ctx: CanvasRenderingContext2D, utils: ISketchUtils): void; }