2022-11-13 18:02:05 +08:00
|
|
|
|
// 这里包含所有插件导出的函数及变量声明,声明的函数会在类型标注中标注到core上
|
|
|
|
|
|
2022-11-14 17:11:23 +08:00
|
|
|
|
type Ref<T> = {
|
|
|
|
|
value: T;
|
|
|
|
|
};
|
|
|
|
|
|
2022-11-19 11:30:14 +08:00
|
|
|
|
type DragFn = (x: number, y: number, e: MouseEvent | TouchEvent) => void;
|
|
|
|
|
|
2022-11-21 20:00:34 +08:00
|
|
|
|
type CanParseCss = keyof {
|
|
|
|
|
[P in keyof CSSStyleDeclaration as CSSStyleDeclaration[P] extends string
|
|
|
|
|
? P extends string
|
|
|
|
|
? P
|
|
|
|
|
: never
|
|
|
|
|
: never]: CSSStyleDeclaration[P];
|
|
|
|
|
};
|
|
|
|
|
|
2022-12-30 23:28:27 +08:00
|
|
|
|
interface PluginDeclaration
|
|
|
|
|
extends PluginUtils,
|
|
|
|
|
PluginUis,
|
|
|
|
|
PluginUse,
|
2023-01-09 23:50:28 +08:00
|
|
|
|
MiniMap,
|
2023-02-23 23:10:57 +08:00
|
|
|
|
PluginAchievement {
|
2023-02-28 17:49:34 +08:00
|
|
|
|
/**
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
utils: GamePluginUtils;
|
|
|
|
|
loopMap: GamePluginLoopMap;
|
|
|
|
|
skillTree: GamePluginSkillTree;
|
|
|
|
|
study: GamePluginStudy;
|
|
|
|
|
hero: GamePluginHeroRealStatus;
|
2023-04-24 20:27:21 +08:00
|
|
|
|
replay: PluginReplay;
|
2023-04-29 11:25:18 +08:00
|
|
|
|
chase: PluginChase;
|
2023-02-28 17:49:34 +08:00
|
|
|
|
|
|
|
|
|
skills: Record<Chapter, Skill[]>;
|
2023-04-22 17:01:35 +08:00
|
|
|
|
skillEffects: SkillEffects;
|
2023-02-28 17:49:34 +08:00
|
|
|
|
|
2022-11-13 18:02:05 +08:00
|
|
|
|
/**
|
|
|
|
|
* 添加函数 例:添加弹出文字,像这个就可以使用core.addPop或core.plugin.addPop调用
|
|
|
|
|
* @param px 弹出的横坐标
|
|
|
|
|
* @param py 弹出的纵坐标
|
|
|
|
|
* @param value 弹出的文字
|
|
|
|
|
*/
|
|
|
|
|
addPop(px: number, py: number, value: string): void;
|
|
|
|
|
|
|
|
|
|
/** 添加变量 例:所有的正在弹出的文字,像这个就可以使用core.plugin.pop获取 */
|
|
|
|
|
pop: any[];
|
2022-11-14 17:11:23 +08:00
|
|
|
|
|
2022-12-29 19:57:31 +08:00
|
|
|
|
/** 状态栏信息,取反后刷新状态栏 */
|
|
|
|
|
readonly statusBarStatus: Ref<boolean>;
|
|
|
|
|
|
|
|
|
|
/** 检查标记的怪物,取反后更新显示信息 */
|
|
|
|
|
readonly checkMarkedStatus: Ref<boolean>;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 添加一个动画
|
|
|
|
|
* @param fn 要添加的函数
|
|
|
|
|
*/
|
|
|
|
|
addAnimate(fn: (time: number) => void);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 移除一个动画
|
|
|
|
|
* @param fn 要移除的函数
|
|
|
|
|
*/
|
|
|
|
|
removeAnimate(fn: (time: number) => void);
|
|
|
|
|
|
|
|
|
|
/**
|
2022-12-29 23:56:35 +08:00
|
|
|
|
* 检查被标记怪物的状态
|
2022-12-29 19:57:31 +08:00
|
|
|
|
*/
|
|
|
|
|
checkMarkedEnemy(): void;
|
|
|
|
|
|
2022-12-30 11:06:46 +08:00
|
|
|
|
/**
|
|
|
|
|
* 标记怪物
|
|
|
|
|
* @param id 怪物id
|
|
|
|
|
*/
|
|
|
|
|
markEnemy(id: EnemyIds): void;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 是否标记过某个怪物
|
|
|
|
|
*/
|
|
|
|
|
hasMarkedEnemy(id: EnemyIds): void;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 取消标记过某个怪物
|
|
|
|
|
*/
|
|
|
|
|
unmarkEnemy(id: EnemyIds): void;
|
|
|
|
|
|
2022-12-29 19:57:31 +08:00
|
|
|
|
/**
|
|
|
|
|
* 重置设置信息
|
|
|
|
|
*/
|
|
|
|
|
resetSettings(): void;
|
2022-12-30 14:14:28 +08:00
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 重置变量的设置信息
|
|
|
|
|
*/
|
|
|
|
|
resetFlagSettings(): void;
|
2023-05-04 16:03:23 +08:00
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 判定一个值是否不是undefined或null
|
|
|
|
|
* @param value 要判断的值
|
|
|
|
|
*/
|
|
|
|
|
has<T>(value: T): value is NonNullable<T>;
|
2023-08-01 11:09:23 +08:00
|
|
|
|
|
|
|
|
|
applyFragWith(
|
|
|
|
|
canvas: HTMLCanvasElement,
|
|
|
|
|
length?: number,
|
|
|
|
|
time?: number
|
|
|
|
|
): {
|
|
|
|
|
canvas: HTMLCanvasElement;
|
|
|
|
|
onEnd: Promise<void>;
|
|
|
|
|
animation: import('mutate-animate').Animation;
|
|
|
|
|
};
|
2022-12-29 19:57:31 +08:00
|
|
|
|
}
|
|
|
|
|
|
2023-02-28 17:49:34 +08:00
|
|
|
|
interface GamePluginUtils {
|
2022-12-29 19:57:31 +08:00
|
|
|
|
/**
|
|
|
|
|
* 判定一个值是否不是undefined或null
|
|
|
|
|
* @param value 要判断的值
|
|
|
|
|
*/
|
|
|
|
|
has<T>(value: T): value is NonNullable<T>;
|
|
|
|
|
|
|
|
|
|
/**
|
2023-02-28 17:49:34 +08:00
|
|
|
|
* 滑动数组
|
|
|
|
|
* @param arr 数组
|
|
|
|
|
* @param delta 偏移量,正数表示向右滑动,负数表示向左滑动
|
2022-12-29 19:57:31 +08:00
|
|
|
|
*/
|
2023-02-28 17:49:34 +08:00
|
|
|
|
slide<T>(arr: T[], delta: number): T[];
|
2022-12-29 19:57:31 +08:00
|
|
|
|
|
|
|
|
|
/**
|
2023-02-28 17:49:34 +08:00
|
|
|
|
* 获取方向的反方向
|
|
|
|
|
* @param dir 方向
|
2022-12-29 19:57:31 +08:00
|
|
|
|
*/
|
2023-02-28 17:49:34 +08:00
|
|
|
|
backDir(dir: Dir): Dir;
|
2022-12-30 11:06:46 +08:00
|
|
|
|
|
|
|
|
|
/**
|
2023-02-28 17:49:34 +08:00
|
|
|
|
* 最大化游戏缩放
|
|
|
|
|
* @param n 最大缩放再少多少个缩放
|
2022-12-30 11:06:46 +08:00
|
|
|
|
*/
|
2023-02-28 17:49:34 +08:00
|
|
|
|
maxGameScale(n?: number): void;
|
|
|
|
|
}
|
2023-01-03 22:24:05 +08:00
|
|
|
|
|
2023-02-28 17:49:34 +08:00
|
|
|
|
interface GamePluginLoopMap {
|
|
|
|
|
checkLoopMap(): void;
|
|
|
|
|
}
|
2023-01-03 22:36:50 +08:00
|
|
|
|
|
2023-02-28 17:49:34 +08:00
|
|
|
|
interface PluginUtils {
|
2023-01-04 16:23:26 +08:00
|
|
|
|
/**
|
2023-02-28 17:49:34 +08:00
|
|
|
|
* 判定一个值是否不是undefined或null
|
|
|
|
|
* @param value 要判断的值
|
2023-01-04 16:23:26 +08:00
|
|
|
|
*/
|
2023-02-28 17:49:34 +08:00
|
|
|
|
has<T>(value: T): value is NonNullable<T>;
|
2023-01-09 23:50:28 +08:00
|
|
|
|
|
|
|
|
|
/**
|
2023-02-28 17:49:34 +08:00
|
|
|
|
* 根据伤害大小获取颜色
|
|
|
|
|
* @param damage 伤害大小
|
2023-01-09 23:50:28 +08:00
|
|
|
|
*/
|
2023-02-28 17:49:34 +08:00
|
|
|
|
getDamageColor(damage: number): string;
|
2023-01-11 11:06:04 +08:00
|
|
|
|
|
|
|
|
|
/**
|
2023-02-28 17:49:34 +08:00
|
|
|
|
* 解析css字符串为CSSStyleDeclaration对象
|
|
|
|
|
* @param css 要解析的css字符串
|
2023-01-11 11:06:04 +08:00
|
|
|
|
*/
|
2023-02-28 17:49:34 +08:00
|
|
|
|
parseCss(css: string): Partial<Record<CanParseCss, string>>;
|
2023-02-22 21:39:44 +08:00
|
|
|
|
|
|
|
|
|
/**
|
2023-02-28 17:49:34 +08:00
|
|
|
|
* 弹出一段提示
|
|
|
|
|
* @param text 提示信息
|
2023-02-22 21:39:44 +08:00
|
|
|
|
*/
|
2023-02-28 17:49:34 +08:00
|
|
|
|
tip(
|
|
|
|
|
type: 'warn' | 'info' | 'success' | 'error' | 'warning' | 'loading',
|
|
|
|
|
text: string
|
|
|
|
|
): void;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 开始一个追逐战
|
|
|
|
|
* @param index 追逐战索引
|
|
|
|
|
*/
|
|
|
|
|
startChase(index: number): Promise<void>;
|
2022-12-29 19:57:31 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
interface PluginUis {
|
2023-01-08 22:59:39 +08:00
|
|
|
|
/** 定点查看的界面,特殊属性还是临界 */
|
|
|
|
|
fixedDetailPanel: 'special' | 'critical';
|
|
|
|
|
|
2023-01-16 22:32:04 +08:00
|
|
|
|
/** 打开的商店id */
|
|
|
|
|
openedShopId: string;
|
|
|
|
|
|
2022-11-21 20:00:34 +08:00
|
|
|
|
/** ui是否使用渐变 */
|
|
|
|
|
readonly transition: Ref<boolean>;
|
|
|
|
|
|
2022-11-14 17:11:23 +08:00
|
|
|
|
/** 手册是否打开 */
|
|
|
|
|
readonly bookOpened: Ref<boolean>;
|
|
|
|
|
|
2022-11-21 20:00:34 +08:00
|
|
|
|
/** 道具栏是否打开 */
|
|
|
|
|
readonly toolOpened: Ref<boolean>;
|
|
|
|
|
|
2022-11-30 16:42:44 +08:00
|
|
|
|
/** 装备栏是否打开 */
|
|
|
|
|
readonly equipOpened: Ref<boolean>;
|
|
|
|
|
|
2022-12-28 20:34:23 +08:00
|
|
|
|
/** 是否显示状态栏 */
|
|
|
|
|
readonly showStatusBar: Ref<boolean>;
|
|
|
|
|
|
2022-12-29 00:26:12 +08:00
|
|
|
|
/** 设置界面是否打开 */
|
|
|
|
|
readonly settingsOpened: Ref<boolean>;
|
|
|
|
|
|
2022-12-29 19:57:31 +08:00
|
|
|
|
/** 是否正在进行章节显示 */
|
|
|
|
|
readonly chapterShowed: Ref<boolean>;
|
|
|
|
|
|
|
|
|
|
/** 章节显示的内容 */
|
|
|
|
|
readonly chapterContent: Ref<boolean>;
|
|
|
|
|
|
2022-12-30 00:55:03 +08:00
|
|
|
|
/** 百科全书是否打开了 */
|
|
|
|
|
readonly descOpened: Ref<boolean>;
|
|
|
|
|
|
2022-12-30 15:25:58 +08:00
|
|
|
|
/** 技能查看界面是否打开 */
|
|
|
|
|
readonly skillOpened: Ref<boolean>;
|
|
|
|
|
|
2022-12-30 23:28:27 +08:00
|
|
|
|
/** 技能树界面是否打开 */
|
|
|
|
|
readonly skillTreeOpened: Ref<boolean>;
|
|
|
|
|
|
2023-01-01 22:02:58 +08:00
|
|
|
|
/** 楼传界面是否打开 */
|
|
|
|
|
readonly flyOpened: Ref<boolean>;
|
|
|
|
|
|
2023-01-04 16:23:26 +08:00
|
|
|
|
/** 是否展示标记的怪物 */
|
|
|
|
|
readonly showMarkedEnemy: Ref<boolean>;
|
|
|
|
|
|
2023-01-06 16:21:17 +08:00
|
|
|
|
/** 是否展示已学习的技能 */
|
|
|
|
|
readonly showStudiedSkill: Ref<boolean>;
|
|
|
|
|
|
2023-01-06 22:18:33 +08:00
|
|
|
|
/** 定点查看是否打开 */
|
|
|
|
|
readonly fixedDetailOpened: Ref<boolean>;
|
|
|
|
|
|
|
|
|
|
/** 是否展示移动鼠标显示怪物信息的盒子 */
|
|
|
|
|
readonly showFixed: Ref<boolean>;
|
|
|
|
|
|
2023-01-16 22:32:04 +08:00
|
|
|
|
/** 商店是否打开 */
|
|
|
|
|
readonly shopOpened: Ref<boolean>;
|
|
|
|
|
|
2023-02-20 20:34:42 +08:00
|
|
|
|
/** 开始界面是否打开 */
|
|
|
|
|
readonly startOpened: Ref<boolean>;
|
|
|
|
|
|
2023-02-22 20:23:37 +08:00
|
|
|
|
/** 成就界面是否打开 */
|
|
|
|
|
readonly achievementOpened: Ref<boolean>;
|
|
|
|
|
|
2023-03-01 22:50:43 +08:00
|
|
|
|
/** bgm界面是否打开 */
|
|
|
|
|
readonly bgmOpened: Ref<boolean>;
|
|
|
|
|
|
2022-11-14 17:11:23 +08:00
|
|
|
|
/** ui栈 */
|
2023-02-20 13:09:04 +08:00
|
|
|
|
readonly uiStack: Ref<any[]>;
|
2022-11-14 17:11:23 +08:00
|
|
|
|
|
2022-12-29 19:57:31 +08:00
|
|
|
|
/**
|
|
|
|
|
* 显示章节
|
|
|
|
|
* @param chapter 显示的文字
|
|
|
|
|
*/
|
|
|
|
|
showChapter(chapter: string): void;
|
2022-12-30 15:25:58 +08:00
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 打开技能查看界面
|
|
|
|
|
*/
|
|
|
|
|
openSkill(): void;
|
2022-12-29 19:57:31 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
interface PluginUse {
|
2022-11-16 23:01:23 +08:00
|
|
|
|
/** 是否是移动设备 */
|
|
|
|
|
readonly isMobile: boolean;
|
|
|
|
|
|
2022-11-14 17:11:23 +08:00
|
|
|
|
/**
|
|
|
|
|
* 向一个元素添加拖拽事件
|
|
|
|
|
* @param ele 目标元素
|
|
|
|
|
* @param fn 推拽时触发的函数,传入x y和鼠标事件或点击事件
|
|
|
|
|
* @param ondown 鼠标按下时执行的函数
|
|
|
|
|
* @param global 是否全局拖拽,即拖拽后鼠标或手指离开元素后是否依然视为正在拖拽
|
|
|
|
|
*/
|
|
|
|
|
useDrag(
|
|
|
|
|
ele: HTMLElement,
|
2022-11-19 11:30:14 +08:00
|
|
|
|
fn: DragFn,
|
|
|
|
|
ondown?: DragFn,
|
|
|
|
|
onUp?: (e: MouseEvent | TouchEvent) => void,
|
2023-02-20 13:09:04 +08:00
|
|
|
|
global?: boolean
|
2022-11-14 17:11:23 +08:00
|
|
|
|
): void;
|
|
|
|
|
|
2022-11-19 11:30:14 +08:00
|
|
|
|
/**
|
|
|
|
|
* 去除一个全局拖拽函数
|
|
|
|
|
* @param fn 要去除的函数
|
|
|
|
|
*/
|
|
|
|
|
cancelGlobalDrag(fn: DragFn): void;
|
|
|
|
|
|
2022-11-14 17:11:23 +08:00
|
|
|
|
/**
|
|
|
|
|
* 当触发滚轮时执行函数
|
|
|
|
|
* @param ele 目标元素
|
|
|
|
|
* @param fn 当滚轮触发时执行的函数
|
|
|
|
|
*/
|
|
|
|
|
useWheel(
|
|
|
|
|
ele: HTMLElement,
|
|
|
|
|
fn: (x: number, y: number, z: number, e: WheelEvent) => void
|
|
|
|
|
): void;
|
2022-11-16 23:01:23 +08:00
|
|
|
|
|
2022-11-19 11:30:14 +08:00
|
|
|
|
/**
|
|
|
|
|
* 当鼠标或手指松开时执行函数
|
|
|
|
|
* @param ele 目标元素
|
|
|
|
|
* @param fn 当鼠标或手指松开时执行的函数
|
|
|
|
|
*/
|
|
|
|
|
useUp(ele: HTMLElement, fn: DragFn): void;
|
2022-11-13 18:02:05 +08:00
|
|
|
|
}
|
|
|
|
|
|
2023-02-28 17:49:34 +08:00
|
|
|
|
interface GamePluginSkillTree {
|
2022-12-30 15:25:58 +08:00
|
|
|
|
/**
|
|
|
|
|
* 获取技能等级
|
|
|
|
|
* @param skill 技能索引
|
|
|
|
|
*/
|
|
|
|
|
getSkillLevel(skill: number): number;
|
2022-12-30 23:28:27 +08:00
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 根据索引获取技能
|
|
|
|
|
* @param index 索引
|
|
|
|
|
*/
|
|
|
|
|
getSkillFromIndex(index: number): Skill;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 获取技能的消耗
|
|
|
|
|
* @param skill 技能
|
|
|
|
|
*/
|
|
|
|
|
getSkillConsume(skill: number): number;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 升级技能
|
|
|
|
|
* @param skill 技能索引
|
|
|
|
|
*/
|
|
|
|
|
upgradeSkill(skill: number): boolean;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 保存技能树等级
|
|
|
|
|
*/
|
|
|
|
|
saveSkillTree(): number[];
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 加载技能树等级
|
|
|
|
|
* @param data 等级信息
|
|
|
|
|
*/
|
|
|
|
|
loadSkillTree(data: number[]): void;
|
|
|
|
|
}
|
|
|
|
|
|
2023-01-01 22:02:58 +08:00
|
|
|
|
interface MiniMap {
|
|
|
|
|
/**
|
|
|
|
|
* 切分区域
|
|
|
|
|
*/
|
|
|
|
|
splitArea(): void;
|
|
|
|
|
}
|
|
|
|
|
|
2023-02-28 17:49:34 +08:00
|
|
|
|
interface GamePluginStudy {
|
2023-01-05 22:21:40 +08:00
|
|
|
|
/**
|
|
|
|
|
* 学习一个怪物技能
|
|
|
|
|
* @param enemy 被学习的怪物
|
|
|
|
|
* @param num 技能的索引
|
|
|
|
|
*/
|
|
|
|
|
studySkill(enemy: Enemy, num: number): void;
|
|
|
|
|
}
|
|
|
|
|
|
2023-02-28 17:49:34 +08:00
|
|
|
|
interface GamePluginHeroRealStatus {
|
2023-01-09 23:50:28 +08:00
|
|
|
|
/**
|
|
|
|
|
* 获取勇士在某一点的属性
|
|
|
|
|
* @param name 要获取的勇士属性
|
|
|
|
|
* @param x 勇士所在横坐标
|
|
|
|
|
* @param y 勇士所在纵坐标
|
|
|
|
|
* @param floorId 勇士所在楼层
|
|
|
|
|
*/
|
|
|
|
|
getHeroStatusOn(
|
|
|
|
|
name: 'all',
|
|
|
|
|
x?: number,
|
|
|
|
|
y?: number,
|
|
|
|
|
floorId?: FloorIds
|
|
|
|
|
): HeroStatus;
|
|
|
|
|
getHeroStatusOn(
|
|
|
|
|
name: (keyof HeroStatus)[],
|
|
|
|
|
x?: number,
|
|
|
|
|
y?: number,
|
|
|
|
|
floorId?: FloorIds
|
|
|
|
|
): Partial<HeroStatus>;
|
|
|
|
|
getHeroStatusOn<K extends keyof HeroStatus>(
|
|
|
|
|
name: K,
|
|
|
|
|
x?: number,
|
|
|
|
|
y?: number,
|
|
|
|
|
floorId?: FloorIds
|
|
|
|
|
): HeroStatus[K];
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 获取一定状态下的勇士在某一点的属性
|
|
|
|
|
* @param status 勇士的状态
|
|
|
|
|
* @param name 要获取的勇士属性
|
|
|
|
|
* @param x 勇士所在横坐标
|
|
|
|
|
* @param y 勇士所在纵坐标
|
|
|
|
|
* @param floorId 勇士所在楼层
|
|
|
|
|
*/
|
|
|
|
|
getHeroStatusOf(
|
|
|
|
|
status: Partial<HeroStatus>,
|
|
|
|
|
name: 'all',
|
|
|
|
|
x?: number,
|
|
|
|
|
y?: number,
|
|
|
|
|
floorId?: FloorIds
|
|
|
|
|
): HeroStatus;
|
|
|
|
|
getHeroStatusOf(
|
|
|
|
|
status: Partial<HeroStatus>,
|
|
|
|
|
name: (keyof HeroStatus)[],
|
|
|
|
|
x?: number,
|
|
|
|
|
y?: number,
|
|
|
|
|
floorId?: FloorIds
|
|
|
|
|
): Partial<HeroStatus>;
|
|
|
|
|
getHeroStatusOf<K extends keyof HeroStatus>(
|
|
|
|
|
status: Partial<HeroStatus>,
|
|
|
|
|
name: K,
|
|
|
|
|
x?: number,
|
|
|
|
|
y?: number,
|
|
|
|
|
floorId?: FloorIds
|
|
|
|
|
): HeroStatus[K];
|
|
|
|
|
}
|
|
|
|
|
|
2023-02-23 23:10:57 +08:00
|
|
|
|
interface PluginAchievement {
|
|
|
|
|
/**
|
|
|
|
|
* 完成一个成就
|
|
|
|
|
* @param type 成就类型
|
|
|
|
|
* @param index 成就索引
|
|
|
|
|
*/
|
|
|
|
|
completeAchievement(type: AchievementType, index: number): void;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 是否完成了某个成就
|
|
|
|
|
* @param type 成就类型
|
|
|
|
|
* @param index 成就索引
|
|
|
|
|
*/
|
|
|
|
|
hasCompletedAchievement(type: AchievementType, index: number): boolean;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 获取当前成就点数
|
|
|
|
|
*/
|
|
|
|
|
getNowPoint(): number;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 检查所有到达过的楼层,用于成就的计算
|
|
|
|
|
*/
|
|
|
|
|
checkVisitedFloor(): void;
|
|
|
|
|
}
|
|
|
|
|
|
2023-04-24 20:27:21 +08:00
|
|
|
|
interface PluginReplay {
|
|
|
|
|
ready(): void;
|
|
|
|
|
readyClip(): number;
|
|
|
|
|
clip(...replace: string[]): void;
|
|
|
|
|
}
|
|
|
|
|
|
2023-04-29 11:25:18 +08:00
|
|
|
|
interface PluginChase {
|
|
|
|
|
chaseInit1(): void;
|
|
|
|
|
}
|
|
|
|
|
|
2023-04-22 17:01:35 +08:00
|
|
|
|
interface SkillEffects {
|
|
|
|
|
jumpIgnoreFloor: FloorIds[];
|
|
|
|
|
}
|
|
|
|
|
|
2023-01-04 22:11:08 +08:00
|
|
|
|
type Chapter = 'chapter1' | 'chapter2';
|
2022-12-30 23:28:27 +08:00
|
|
|
|
|
|
|
|
|
interface Skill {
|
|
|
|
|
index: number;
|
|
|
|
|
title: string;
|
|
|
|
|
desc: string[];
|
|
|
|
|
consume: string;
|
|
|
|
|
front: LocArr[];
|
|
|
|
|
loc: LocArr;
|
|
|
|
|
max: number;
|
|
|
|
|
effect: string[];
|
2022-12-30 15:25:58 +08:00
|
|
|
|
}
|
|
|
|
|
|
2022-11-13 18:02:05 +08:00
|
|
|
|
type Forward<T> = {
|
|
|
|
|
[K in keyof T as T[K] extends Function
|
|
|
|
|
? K extends `_${string}`
|
|
|
|
|
? never
|
|
|
|
|
: K
|
|
|
|
|
: never]: T[K];
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
type ForwardKeys<T> = keyof Forward<T>;
|