Skip to content

# 函数 API ​

此处列出所有的单个函数的 API，函数 API 使用 `Mota.requireAll('fn')` 获取

## getHeroStatusOn() ​

ts

    declare function getHeroStatusOn(name: 'all', floorId?: string): HeroStatus
    declare function getHeroStatusOn(name: string, floorId?: string): any
    declare function getHeroStatusOn(name: string[], floorId?: string): Partial<HeroStatus>

- 第一种用法

  获取勇士的所有真实属性

- 第二种用法

  获取勇士的单个真实属性

- 第三种用法

  获取勇士的指定真实属性

## getHeroStatusOf() ​

ts

    declare function getHeroStatusOf(
        status: Partial<HeroStatus>,
        name: 'all',
        floorId?: string
    ): HeroStatus
    declare function getHeroStatusOf(
        status: Partial<HeroStatus>,
        name: string,
        floorId?: string
    ): any
    declare function getHeroStatusOf(
        status: Partial<HeroStatus>,
        name: string[],
        floorId?: string
    ): Partial<HeroStatus>

三种用法与 `getHeroStatusOn` 类似，只不过多了一个部分指定勇士原始属性的参数

## getEnemy() ​

ts

    declare function getEnemy(
        x: number,
        y: number,
        floorId: string = core.status.floorId
    ): DamageEnemy

- 函数说明

  获取到指定楼层指定位置的怪物实例

## m() ​

ts

    declare function m(): MComponent

- 函数说明

  构造一个 `MComponent` 实例，等价于 `new MComponent()`

## unwrapBinary() ​

ts

    declare function unwrapBinary(bin: number): AssistHotkey

- 函数说明

  将一个三位二进制解析为辅助按键对象信息，表示三个辅助按键是否都被按下

- 接口 `AssistHotkey` 参考 类 Hotkey

- 示例

  ts

      unwrapBinary(0b111); // { ctrl: true, shift: true, alt: true }

## checkAssist() ​

ts

    declare function checkAssist(bin: number, key: KeyCode): boolean

- 函数说明

  判断一个三位二进制数据中指定按键是否被按下

- 示例

  ts

      checkAssist(0b000, KeyCode.Ctrl); // false

## isAssist() ​

ts

    declare function isAssist(key: KeyCode): boolean

- 函数说明

  判断一个按键是否是辅助按键

- 示例

  ts

      isAssist(KeyCode.KeyX); // false

## generateKeyboardEvent() ​

ts

    declare function generateKeyboardEvent(key: KeyCode, assist: number): KeyboardEvent

- 参数说明

  - `key`: 占位参数，目前无用
  - `assist`: 按下了哪些辅助按键

- 函数说明

  生成拟真的 `KeyboardEvent` 事件

## addAnimate() ​

ts

    declare function addAnimate(fn: (time: number) => void): void

- 参数说明

  - `fn`: 每个动画帧（即怪物或者动画图块动一次）执行的函数

- 函数说明

  添加一个在每个动画帧，也就是每个怪物或者动画图块动一次的时候，执行的函数

## removeAnimate() ​

ts

    declare function removeAnimate(fn: (time: number) => void): void

- 函数说明

  删除一个由 `addAnimate` 添加的动画帧函数，注意要传入函数的引用