HumanBreak/src/types/action.d.ts

75 lines
2.2 KiB
TypeScript
Raw Normal View History

2022-11-13 18:02:05 +08:00
/** @file actions.js 定义了玩家的操作控制 */
declare class actions {
/**
*
* @param action ondown, onclick, keyDown
* @param name 使
* @param func
* func返回true
* @param priority 0
*/
registerAction(
action: string,
name: string,
func: string | ((...params: any) => void),
priority?: number
): void;
/** 注销一个用户交互行为 */
unregisterAction(action: string, name: string): void;
/** 执行一个用户交互行为 */
doRegisteredAction(action: string, ...params: any): void;
/** 按下某个键时 */
onkeyDown(e: KeyboardEvent): void;
/** 放开某个键时 */
onkeyUp(e: KeyboardEvent): void;
/** 按住某个键时 */
pressKey(keyCode: number): void;
/** 根据按下键的code来执行一系列操作 */
keyDown(keyCode: number): void;
/** 根据放开键的code来执行一系列操作 */
keyUp(keyCode: number, altKey?: boolean, fromReplay?: boolean): void;
/** 点击(触摸)事件按下时 */
ondown(loc: number[]): void;
/** 当在触摸屏上滑动时 */
onmove(loc: number[]): void;
/** 当点击(触摸)事件放开时 */
onup(loc: number[]): void;
/** 具体点击屏幕上(x,y)点时,执行的操作 */
onclick(
x: number,
y: number,
px: number,
py: number,
stepPostfix?: any
): void;
/** 滑动鼠标滚轮时的操作 */
onmousewheel(direct: 1 | -1): void;
/** 长按Ctrl键时 */
keyDownCtrl(): void;
/** 长按 */
longClick(
x: number,
y: number,
px: number,
py: number,
fromEvent?: boolean
): void;
/** 点击自绘状态栏时 */
onStatusBarClick(e?: MouseEvent): void;
}