From 80f154694a5987fa39746c5a57a2e9e188ea90e9 Mon Sep 17 00:00:00 2001 From: unanmed <1319491857@qq.com> Date: Fri, 27 Sep 2024 12:42:07 +0800 Subject: [PATCH] feat: deprecate api --- src/types/control.d.ts | 37 ++++++++++++++++++++++++++++ src/types/core.d.ts | 2 ++ src/types/enemy.d.ts | 2 ++ src/types/event.d.ts | 56 +++++++++++++++++++++++++++++++++++++++++- src/types/item.d.ts | 21 ++++++++++++++++ src/types/map.d.ts | 14 +++++++++++ src/types/status.d.ts | 18 ++++++++++++++ src/types/ui.d.ts | 19 ++++++++++++++ src/types/util.d.ts | 14 +++++++++++ 9 files changed, 182 insertions(+), 1 deletion(-) diff --git a/src/types/control.d.ts b/src/types/control.d.ts index 471d743..bb9a10b 100644 --- a/src/types/control.d.ts +++ b/src/types/control.d.ts @@ -457,6 +457,7 @@ interface Control { ): void; /** + * @deprecated * 获取主角面前第n格的横坐标 * @example core.closeDoor(core.nextX(), core.nextY(), 'yellowDoor', core.turnHero); // 在主角面前关上一扇黄门,然后主角顺时针旋转90° * @param n 目标格与主角的距离,面前为正数,背后为负数,脚下为0,不填视为1 @@ -464,6 +465,7 @@ interface Control { nextX(n?: number): number; /** + * @deprecated * 获取主角面前第n格的纵坐标 * @example core.jumpHero(core.nextX(2), core.nextY(2)); // 主角向前跃过一格,即跳跃靴道具的使用效果 * @param n 目标格与主角的距离,面前为正数,背后为负数,脚下为0,不填视为1 @@ -471,6 +473,7 @@ interface Control { nextY(n?: number): number; /** + * @deprecated * 判定主角是否身处某个点的锯齿领域(取曼哈顿距离) * @example core.nearHero(6, 6, 6); // 判定主角是否身处点(6,6)的半径为6的锯齿领域 * @param x 领域的中心横坐标 @@ -492,6 +495,7 @@ interface Control { updateFollowers(): void; /** + * @deprecated * 检查并执行领域、夹击、阻击事件 */ checkBlock(): void; @@ -664,6 +668,7 @@ interface Control { removeSave(index: number, callback?: () => void): void; /** + * @deprecated * 设置主角的某个属性 * @example core.setStatus('loc', {x : 0, y : 0, direction : 'up'}); // 设置主角位置为地图左上角,脸朝上 * @param name 属性名 @@ -672,6 +677,7 @@ interface Control { setStatus(name: K, value: HeroStatus[K]): void; /** + * @deprecated * 增减主角的某个属性,等价于core.setStatus(name, core.getStatus(name) + value) * @example core.addStatus('name', '酱'); // 在主角的名字后加一个“酱”字 * @param name 属性名 @@ -683,6 +689,7 @@ interface Control { ): void; /** + * @deprecated * 读取主角的某个属性,不包括百分比修正 * @example core.getStatus('loc'); // 读取主角的坐标和朝向 * @param name 属性名 @@ -691,6 +698,7 @@ interface Control { getStatus(name: K): HeroStatus[K]; /** + * @deprecated * 从status中获得属性,如果不存在则从勇士属性中获取 * @param status 要从中获取的属性对象 * @param name 属性名 @@ -701,6 +709,7 @@ interface Control { ): HeroStatus[K]; /** + * @deprecated * 计算主角的某个属性,包括百分比修正 * @example core.getRealStatus('atk'); // 计算主角的攻击力,包括百分比修正。战斗使用的就是这个值 * @param name 属性名,注意只能用于数值类属性 @@ -708,6 +717,7 @@ interface Control { getRealStatus(name: K): number; /** + * @deprecated * 从status中获得增幅后的属性,如果不存在则从勇士属性中获取 * @param status 要从中获取的属性对象 * @param name 属性名 @@ -718,12 +728,14 @@ interface Control { ): number; /** + * @deprecated * 获得勇士原始属性(无装备和衰弱影响) * @param name 获取的属性名 */ getNakedStatus(name?: keyof NumbericHeroStatus): number; /** + * @deprecated * 设置主角某个属性的百分比修正倍率,初始值为1, * 倍率存放在flag: `__${name}_${buff}__` 中 * @example core.setBuff('atk', 0.5); // 主角能发挥出的攻击力减半 @@ -733,6 +745,7 @@ interface Control { setBuff(name: K, value?: number): void; /** + * @deprecated * 增减主角某个属性的百分比修正倍率,加减法叠加和抵消。等价于 core.setBuff(name, core.getBuff(name) + value) * @example core.addBuff('atk', -0.1); // 主角获得一层“攻击力减一成”的负面效果 * @param name 属性名,注意只能用于数值类属性 @@ -741,6 +754,7 @@ interface Control { addBuff(name: K, value: number): void; /** + * @deprecated * 读取主角某个属性的百分比修正倍率,初始值为1 * @example core.getBuff('atk'); // 主角当前能发挥出多大比例的攻击力 * @param name 属性的英文名 @@ -748,6 +762,7 @@ interface Control { getBuff(name: keyof NumbericHeroStatus): number; /** + * @deprecated * 设置勇士位置 * 值得注意的是,这句话虽然会使勇士改变位置,但并不会使界面重新绘制; * 如需立刻重新绘制地图还需调用:core.clearMap('hero'); core.drawHero(); 来对界面进行更新。 @@ -760,6 +775,7 @@ interface Control { setHeroLoc(name: 'direction', value: Dir, noGather?: boolean): void; /** + * @deprecated * 获取主角的位置,朝向 * @example core.getHeroLoc(); // 获取主角的位置和朝向 * @param name 要读取横坐标还是纵坐标还是朝向还是都读取 @@ -768,6 +784,7 @@ interface Control { getHeroLoc(name: K): DiredLoc[K]; /** + * @deprecated * 根据级别的数字获取对应的名称,后者定义在全塔属性 * @example core.getLvName(); // 获取主角当前级别的名称,如“下级佣兵” * @param lv 级别的数字,不填则视为主角当前的级别 @@ -776,6 +793,7 @@ interface Control { getLvName(lv?: number): string; /** + * @deprecated * 获得下次升级需要的经验值。 * 升级扣除模式下会返回经验差值;非扣除模式下会返回总共需要的经验值。 * 如果无法进行下次升级,返回null。 @@ -783,6 +801,7 @@ interface Control { getNextLvUpNeed(): number | null; /** + * @deprecated * 设置一个flag变量 * @example core.setFlag('poison', true); // 令主角中毒 * @param name 变量名,支持中文,这东西用中文就是不规范( @@ -791,6 +810,7 @@ interface Control { setFlag(name: string, value?: any): void; /** + * @deprecated * 增减一个flag变量,等价于 core.setFlag(name, core.getFlag(name, 0) + value) * @example core.addFlag('hatred', 1); // 增加1点仇恨值 * @param name 变量名,支持中文 @@ -799,6 +819,7 @@ interface Control { addFlag(name: string, value: number | string): void; /** + * @deprecated * 获取一个flag变量 * @param name 变量名,支持中文,这东西用中文就是不规范( * @param defaultValue 当变量不存在时的返回值,可选(事件流中默认填0)。 @@ -807,6 +828,7 @@ interface Control { getFlag(name: string, defaultValue?: T): T; /** + * @deprecated * 判定一个flag变量是否不为falsy * @example core.hasFlag('poison'); // 判断主角当前是否中毒 * @param name 变量名,支持中文,这东西用中文就是不规范( @@ -814,12 +836,14 @@ interface Control { hasFlag(name: string): boolean; /** + * @deprecated * 删除某个flag * @param name 要删除的变量名 */ removeFlag(name: string): void; /** + * @deprecated * 设置某个独立开关 * @param x 横坐标 * @param y 纵坐标 @@ -836,6 +860,7 @@ interface Control { ): void; /** + * @deprecated * 获得某个独立开关 * @param x 横坐标 * @param y 纵坐标 @@ -852,6 +877,7 @@ interface Control { ): T; /** + * @deprecated * 增加某个独立开关 * @param x 横坐标 * @param y 纵坐标 @@ -868,6 +894,7 @@ interface Control { ): void; /** + * @deprecated * 是否存在某个独立开关 * @param x 横坐标 * @param y 纵坐标 @@ -882,6 +909,7 @@ interface Control { ): boolean; /** + * @deprecated * 删除某个独立开关 * @param x 横坐标 * @param y 纵坐标 @@ -927,6 +955,7 @@ interface Control { getMappedName(name: K): NameMap[K]; /** + * @deprecated * 设置天气,不计入存档。如需长期生效请使用core.events._action_setWeather()函数 * @example core.setWeather('fog', 10); // 设置十级大雾天 * @param type 新天气的类型,不填视为无天气 @@ -935,6 +964,7 @@ interface Control { setWeather(type?: string, level?: WeatherLevel): void; /** + * @deprecated * 注册一个天气 * @param name 天气的名称 * @param initFunc 初始化函数 @@ -947,6 +977,7 @@ interface Control { ): void; /** + * @deprecated * 注销一个天气 * @param name 要注销的天气名称 */ @@ -1054,17 +1085,20 @@ interface Control { checkBgm(): void; /** + * @deprecated * 设置屏幕放缩 * @param delta 在所有可用放缩数组中增加的下标数 */ setDisplayScale(delta: number): void; /** + * @deprecated * 清空状态栏 */ clearStatusBar(): void; /** + * @deprecated * 更新状态栏和地图显伤,会在下一个动画帧更新 * @param doNotCheckAutoEvents 是否不检查自动事件 * @param immediate 是否立刻刷新,而非延迟到下一动画帧刷新 @@ -1072,17 +1106,20 @@ interface Control { updateStatusBar(doNotCheckAutoEvents?: boolean, immediate?: boolean): void; /** + * @deprecated * 显示状态栏 */ showStatusBar(): void; /** + * @deprecated * 隐藏状态栏 * @param showToolbox 是否显示工具栏 */ hideStatusBar(showToolbox?: boolean): void; /** + * @deprecated * 改变工具栏为按钮1-8 * @param useButton 是否显示为按钮1-8 */ diff --git a/src/types/core.d.ts b/src/types/core.d.ts index 8b595a4..de82f9b 100644 --- a/src/types/core.d.ts +++ b/src/types/core.d.ts @@ -1181,6 +1181,7 @@ interface Main extends MainData { readonly savePages: number; /** + * @deprecated * 循环临界的分界 */ readonly criticalUseLoop: number; @@ -1325,6 +1326,7 @@ interface Main extends MainData { log(e: string | Error, error?: boolean): void; /** + * @deprecated * 生成选择光标的keyframes */ createOnChoiceAnimation(): void; diff --git a/src/types/enemy.d.ts b/src/types/enemy.d.ts index cb98e39..0291243 100644 --- a/src/types/enemy.d.ts +++ b/src/types/enemy.d.ts @@ -216,6 +216,7 @@ interface Enemys { }; /** + * @deprecated * 获得所有怪物原始数据的一个副本 */ getEnemys(): { @@ -223,6 +224,7 @@ interface Enemys { }; /** + * @deprecated * 判定主角当前能否打败某只敌人 * @example core.canBattle('greenSlime',0,0,'MT0') // 能否打败主塔0层左上角的绿头怪(假设有) * @param enemy 敌人id或敌人对象 diff --git a/src/types/event.d.ts b/src/types/event.d.ts index 69577e0..641f484 100644 --- a/src/types/event.d.ts +++ b/src/types/event.d.ts @@ -18,16 +18,19 @@ interface Events extends EventData { eventdata: EventData; /** + * @deprecated * 公共事件信息 */ commonEvent: Record; /** + * @deprecated * 所有的系统事件 */ systemEvent: Record; /** + * @deprecated * 注册的自定义事件 */ actions: Record; @@ -67,6 +70,7 @@ interface Events extends EventData { confirmRestart(): void; /** + * @deprecated * 注册一个系统事件 * @param type 事件名 * @param func 为事件的处理函数,可接受(data,callback)参数 @@ -74,12 +78,14 @@ interface Events extends EventData { registerSystemEvent(type: string, func: SystemEventFunc): void; /** + * @deprecated * 注销一个系统事件 * @param type 事件名 */ unregisterSystemEvent(type: string): void; /** + * @deprecated * 执行一个系统事件 * @param type 执行的事件名 * @param data 数据信息 @@ -115,6 +121,7 @@ interface Events extends EventData { ): void; /** + * @deprecated * 获得道具并提示,如果填写了坐标就会删除该点的该道具 * @example core.getItem('book'); // 获得敌人手册并提示 * @param id 道具id,必填 @@ -132,6 +139,7 @@ interface Events extends EventData { ): void; /** + * @deprecated * 轻按获得面前的物品或周围唯一物品 * @param noRoute 若为true则不计入录像 */ @@ -178,6 +186,7 @@ interface Events extends EventData { onSki(number?: number): boolean; /** + * @deprecated * 注册一个自定义事件 * @param type 事件类型 * @param func 事件的处理函数,可接受(data, x, y, prefix)参数 @@ -186,12 +195,14 @@ interface Events extends EventData { registerEvent(type: string, func: EventFunc): void; /** + * @deprecated * 注销一个自定义事件 * @param type 事件类型 */ unregisterEvent(type: string): void; /** + * @deprecated * 执行一个自定义事件 * @param data 事件信息 * @param x 事件横坐标 @@ -201,6 +212,7 @@ interface Events extends EventData { doEvent(data: any, x?: number, y?: number, prefix?: string): void; /** + * @deprecated * 直接设置事件列表 * @param list 事件信息 * @param x 横坐标 @@ -215,6 +227,7 @@ interface Events extends EventData { ): void; /** + * @deprecated * 开始执行一系列自定义事件 * @param list 事件信息 * @param x 横坐标 @@ -229,6 +242,7 @@ interface Events extends EventData { ): void; /** + * @deprecated * 执行下一个事件指令,常作为回调 * @example * // 事件中的原生脚本,配合勾选“不自动执行下一个事件”来达到此改变色调只持续到下次场景切换的效果 @@ -237,6 +251,7 @@ interface Events extends EventData { doAction(): void; /** + * @deprecated * 插入一段事件;此项不可插入公共事件,请用 core.insertCommonEvent * @example core.insertAction('一段文字'); // 插入一个显示文章 * @param action 单个事件指令,或事件指令数组 @@ -254,6 +269,7 @@ interface Events extends EventData { ): void; /** + * @deprecated * 插入一个公共事件 * @example core.insertCommonEvent('加点事件', [3]); * @param name 公共事件名;如果公共事件不存在则直接忽略 @@ -273,23 +289,27 @@ interface Events extends EventData { ): void; /** + * @deprecated * 获得一个公共事件 * @param name 公共事件名称 */ getCommonEvent(name: EventDeclaration): any; /** + * @deprecated * 恢复一个事件 * @param data 事件信息 */ recoverEvents(data?: any): boolean; /** + * @deprecated * 检测自动事件 */ checkAutoEvents(): void; /** + * @deprecated * 当前是否在执行某个自动事件 * @param symbol 自动事件的标识符 * @param value 不太清楚有什么用 @@ -297,6 +317,7 @@ interface Events extends EventData { autoEventExecuting(symbol?: string, value?: any): boolean; /** + * @deprecated * 当前是否执行过某个自动事件 * @param symbol 自动事件的标识符 * @param value 不太清楚有什么用 @@ -304,94 +325,113 @@ interface Events extends EventData { autoEventExecuted(symbol?: string, value?: any): boolean; /** + * @deprecated * 将当前点坐标入栈 */ pushEventLoc(x: number, y: number, floorId?: FloorIds): void; /** + * @deprecated * 弹出事件坐标点 */ popEventLoc(): void; /** + * @deprecated * 预编辑事件 * @param data 事件信息 */ precompile(data?: any): any; /** + * @deprecated * 点击怪物手册时的打开操作 * @param fromUserAction 是否是用户开启的 */ openBook(fromUserAction?: boolean): void; /** + * @deprecated * 点击楼层传送器时的打开操作 * @param fromUserAction 是否是用户开启的 */ useFly(fromUserAction?: boolean): void; - /** 点击装备栏时的打开操作 */ + /** + * @deprecated + * 点击装备栏时的打开操作 + */ openEquipbox(fromUserAction?: boolean): void; /** + * @deprecated * 点击工具栏时的打开操作 * @param fromUserAction 是否是用户开启的 */ openToolbox(fromUserAction?: boolean): void; /** + * @deprecated * 点击快捷商店按钮时的打开操作 * @param fromUserAction 是否是用户开启的 */ openQuickShop(fromUserAction?: boolean): void; /** + * @deprecated * 点击虚拟键盘时的打开操作 * @param fromUserAction 是否是用户开启的 */ openKeyBoard(fromUserAction?: boolean): void; /** + * @deprecated * 点击存档按钮时的打开操作 * @param fromUserAction 是否是用户开启的 */ save(fromUserAction?: boolean): void; /** + * @deprecated * 点击读档按钮时的打开操作 * @param fromUserAction 是否是用户开启的 */ load(fromUserAction?: boolean): void; /** + * @deprecated * 点击设置按钮时的操作 * @param fromUserAction 是否是用户开启的 */ openSettings(fromUserAction?: boolean): void; /** + * @deprecated * 当前是否有未处理完毕的异步事件(不包含动画和音效) */ hasAsync(): boolean; /** + * @deprecated * 立刻停止所有异步事件 */ stopAsync(): void; /** + * @deprecated * 是否有异步动画 */ hasAsyncAnimate(): boolean; /** + * @deprecated * 跟随 * @param name 要跟随的一个合法的4x4的行走图名称,需要在全塔属性注册 */ follow(name: ImageIds | NameMapIn): void; /** + * @deprecated * 取消跟随 * @param name 取消跟随的行走图,不填则取消全部跟随者 */ @@ -525,6 +565,7 @@ interface Events extends EventData { ): void; /** + * @deprecated * 设置文件别名 * @param name 别名 * @param value 别名对应的文件名 @@ -532,11 +573,13 @@ interface Events extends EventData { setNameMap(name: string, value?: SourceIds): void; /** + * @deprecated * 设置剧情文本的属性 */ setTextAttribute(data: Partial): void; /** + * @deprecated * 移动对话框 * @param code 对话框的代码 * @param loc 目标位置 @@ -555,6 +598,7 @@ interface Events extends EventData { ): void; /** + * @deprecated * 清除对话框 * @param code 对话框的代码 * @param callback 回调函数 @@ -577,6 +621,7 @@ interface Events extends EventData { ): void; /** + * @deprecated * 显示一张图片 * @example * // 裁剪winskin.png的最左边128×128px,放大到铺满整个视野,1秒内淡入到50%透明,编号为1 @@ -600,6 +645,7 @@ interface Events extends EventData { ): void; /** + * @deprecated * 隐藏一张图片 * @example core.hideImage(1, 1000, core.jumpHero); // 1秒内淡出1号图片,然后主角原地跳跃半秒 * @param code 图片编号 @@ -609,6 +655,7 @@ interface Events extends EventData { hideImage(code: number, time?: number, callback?: () => void): void; /** + * @deprecated * 移动一张图片并/或改变其透明度 * @example core.moveImage(1, null, 0.5); // 1秒内把1号图片变为50%透明 * @param code 图片编号 @@ -628,6 +675,7 @@ interface Events extends EventData { ): void; /** + * @deprecated * 旋转一张图片 * @param code 图片编号 * @param center 旋转中心像素(以屏幕为基准);不填视为图片本身中心 @@ -646,6 +694,7 @@ interface Events extends EventData { ): void; /** + * @deprecated * 放缩一张图片 * @param code 图片编号 * @param center 旋转中心像素(以屏幕为基准);不填视为图片本身中心 @@ -664,6 +713,7 @@ interface Events extends EventData { ): void; /** + * @deprecated * 绘制一张动图或擦除所有动图 * @example core.showGif(); // 擦除所有动图 * @param name 动图文件名,可以是全塔属性中映射前的中文名 @@ -679,6 +729,7 @@ interface Events extends EventData { ): void; /** + * @deprecated * 调节bgm的音量 * @example core.setVolume(0, 100, core.jumpHero); // 0.1秒内淡出bgm,然后主角原地跳跃半秒 * @param value 新的音量,为0或不大于1的正数。注意系统设置中是这个值的平方根的十倍 @@ -688,6 +739,7 @@ interface Events extends EventData { setVolume(value: number, time?: number, callback?: () => void): void; /** + * @deprecated * 视野抖动 * @example core.vibrate(); // 视野左右抖动1秒 * @param direction 抖动方向 @@ -705,6 +757,7 @@ interface Events extends EventData { ): void; /** + * @deprecated * 强制移动主角(包括后退),这个函数的作者已经看不懂这个函数了 * @example core.eventMoveHero(['forward'], 125, core.jumpHero); // 主角强制前进一步,用时1/8秒,然后主角原地跳跃半秒 * @param steps 步伐数组,注意后退时跟随者的行为会很难看 @@ -730,6 +783,7 @@ interface Events extends EventData { ): void; /** + * @deprecated * 更改主角行走图 * @example core.setHeroIcon('npc48.png', true); // 把主角从阳光变成样板0层左下角的小姐姐,但不立即刷新 * @param name 新的行走图文件名,可以是全塔属性中映射前的中文名。映射后会被存入core.status.hero.image diff --git a/src/types/item.d.ts b/src/types/item.d.ts index 965db5b..29cc83a 100644 --- a/src/types/item.d.ts +++ b/src/types/item.d.ts @@ -99,6 +99,7 @@ interface Equip extends EquipBase { */ interface Items { /** + * @deprecated * 获得所有道具 */ getItems(): { @@ -106,6 +107,7 @@ interface Items { }; /** + * @deprecated * 执行即捡即用类的道具获得时的效果 * @example core.getItemEffect('redPotion', 10) // 执行获得10瓶红血的效果 * @param itemId 道具id @@ -114,6 +116,7 @@ interface Items { getItemEffect(itemId: AllIdsOf<'items'>, itemNum?: number): void; /** + * @deprecated * 即捡即用类的道具获得时的额外提示 * @example core.getItemEffectTip(redPotion) // (获得 红血瓶)',生命+100' * @param itemId 道具id @@ -122,6 +125,7 @@ interface Items { getItemEffectTip(itemId: AllIdsOf<'items'>): string; /** + * @deprecated * 使用一个道具 * @example core.useItem('pickaxe', true) // 使用破墙镐,不计入录像,无回调 * @param itemId 道具id @@ -135,6 +139,7 @@ interface Items { ): void; /** + * @deprecated * 检查能否使用某种道具 * @example core.canUseItem('pickaxe') // 能否使用破墙镐 * @param itemId 道具id @@ -143,6 +148,7 @@ interface Items { canUseItem(itemId: AllIdsOf<'items'>): boolean; /** + * @deprecated * 统计某种道具的持有量 * @example core.itemCount('yellowKey') // 持有多少把黄钥匙 * @param itemId 道具id @@ -151,6 +157,7 @@ interface Items { itemCount(itemId: AllIdsOf<'items'>): number; /** + * @deprecated * 检查主角是否持有某种道具(不包括已穿戴的装备) * @example core.hasItem('yellowKey') // 主角是否持有黄钥匙 * @param itemId 道具id @@ -159,6 +166,7 @@ interface Items { hasItem(itemId: AllIdsOf<'items'>): boolean; /** + * @deprecated * 检查主角是否穿戴着某件装备 * @example core.hasEquip('sword5') // 主角是否装备了神圣剑 * @param itemId 装备id @@ -167,6 +175,7 @@ interface Items { hasEquip(itemId: ItemIdOf<'equips'>): boolean; /** + * @deprecated * 检查主角某种类型的装备目前是什么 * @example core.getEquip(1) // 主角目前装备了什么盾牌 * @param equipType 装备类型,自然数 @@ -175,6 +184,7 @@ interface Items { getEquip(equipType: number): ItemIdOf<'equips'> | null; /** + * @deprecated * 设置某种道具的持有量 * @example core.setItem('yellowKey', 3) // 设置黄钥匙为3把 * @param itemId 道具id @@ -183,6 +193,7 @@ interface Items { setItem(itemId: AllIdsOf<'items'>, itemNum?: number): void; /** + * @deprecated * 静默增减某种道具的持有量 不会更新游戏画面或是显示提示 * @example core.addItem('yellowKey', -2) // 没收两把黄钥匙 * @param itemId 道具id @@ -199,12 +210,14 @@ interface Items { removeItem(itemId?: AllIdsOf<'items'>, itemNum?: number): void; /** + * @deprecated * 根据类型获得一个可用的装备孔 * @param equipId 道具名称 */ getEquipTypeByName(name?: ItemIdOf<'equips'>): number; /** + * @deprecated * 判定某件装备的类型 * @example core.getEquipTypeById('shield5') // 1(盾牌) * @param equipId 装备id @@ -213,6 +226,7 @@ interface Items { getEquipTypeById(equipId: ItemIdOf<'equips'>): number; /** + * @deprecated * 检查能否穿上某件装备 * @example core.canEquip('sword5', true) // 主角可以装备神圣剑吗,如果不能会有提示 * @param equipId 装备id @@ -222,6 +236,7 @@ interface Items { canEquip(equipId: ItemIdOf<'equips'>, hint?: boolean): boolean; /** + * @deprecated * 尝试穿上某件背包里的装备并提示 * @example core.loadEquip('sword5') // 尝试装备上背包里的神圣剑,无回调 * @param equipId 装备id @@ -230,6 +245,7 @@ interface Items { loadEquip(equipId: ItemIdOf<'equips'>, callback?: () => void): void; /** + * @deprecated * 脱下某个类型的装备 * @example core.unloadEquip(1) // 卸下盾牌,无回调 * @param equipType 装备类型编号,自然数 @@ -238,6 +254,7 @@ interface Items { unloadEquip(equipType: number, callback?: () => void): void; /** + * @deprecated * 比较两件(类型可不同)装备的优劣 * @example core.compareEquipment('sword5', 'shield5') // 比较神圣剑和神圣盾的优劣 * @param compareEquipId 装备甲的id @@ -250,6 +267,7 @@ interface Items { ): EquipBase; /** + * @deprecated * 保存当前套装 * @example core.quickSaveEquip(1) // 将当前套装保存为1号套装 * @param index 套装编号,自然数 @@ -257,6 +275,7 @@ interface Items { quickSaveEquip(index: number): void; /** + * @deprecated * 快速换装 * @example core.quickLoadEquip(1) // 快速换上1号套装 * @param index 套装编号,自然数 @@ -264,6 +283,7 @@ interface Items { quickLoadEquip(index: number): void; /** + * @deprecated * 设置某个装备的属性并计入存档 * @example core.setEquip('sword1', 'value', 'atk', 300, '+='); // 设置铁剑的攻击力数值再加300 * @param equipId 装备id @@ -283,6 +303,7 @@ interface Items { ): void; /** + * @deprecated * 真正的穿脱装备 * @param type 装备孔 * @param loadId 装上的装备 diff --git a/src/types/map.d.ts b/src/types/map.d.ts index a3d8fc7..4dd069a 100644 --- a/src/types/map.d.ts +++ b/src/types/map.d.ts @@ -996,6 +996,7 @@ interface Maps { ): Cls | null; /** + * @deprecated * 获取图块的不透明度 * @param x 横坐标 * @param y 纵坐标 @@ -1010,6 +1011,7 @@ interface Maps { ): number | null; /** + * @deprecated * 获取图块的滤镜 * @param x 横坐标 * @param y 纵坐标 @@ -1123,6 +1125,7 @@ interface Maps { removeBlockByIndexes(indexes: number[], floorId?: FloorIds): void; /** + * @deprecated * 显示前景/背景地图 * @param name 图层名 * @param loc 要显示的坐标列表 @@ -1137,6 +1140,7 @@ interface Maps { ): void; /** + * @deprecated * 隐藏前景/背景地图 * @param name 图层名 * @param loc 要显示的坐标列表 @@ -1151,6 +1155,7 @@ interface Maps { ): void; /** + * @deprecated * 显示一个楼层贴图 * @param loc 楼层贴图的位置 * @param floorId 楼层id @@ -1163,6 +1168,7 @@ interface Maps { ): void; /** + * @deprecated * 隐藏一个楼层贴图 * @param loc 楼层贴图的位置 * @param floorId 楼层id @@ -1192,6 +1198,7 @@ interface Maps { ): void; /** + * @deprecated * 动画形式转变某点图块 * @param number 要转变成的图块的数字或id * @param x 横坐标 @@ -1210,6 +1217,7 @@ interface Maps { ): void; /** + * @deprecated * 动画形式转变若干点图块 * @param number 要转变成的图块的数字或id * @param locs 坐标数组 @@ -1318,6 +1326,7 @@ interface Maps { ): void; /** + * @deprecated * 显示/隐藏某个块时的动画效果 * @param loc 要显示或隐藏的坐标数组 * @param type 显示还是隐藏还是移除,填数字表示设置不透明度 @@ -1332,16 +1341,19 @@ interface Maps { ): void; /** + * @deprecated * 添加一个全局动画 * @param block 图块信息 */ addGlobalAnimate(block?: Block): void; /** + * @deprecated * 删除所有全局动画 */ removeGlobalAnimate(): void; /** + * @deprecated * 删除一个全局动画 * @param x 横坐标 * @param y 纵坐标 @@ -1349,6 +1361,7 @@ interface Maps { removeGlobalAnimate(x?: number, y?: number): void; /** + * @deprecated * 绘制UI层的box动画 */ drawBoxAnimate(): void; @@ -1385,6 +1398,7 @@ interface Maps { ): void; /** + * @deprecated * 获得当前正在播放的所有(指定)动画的id列表 * @param name 指定名称 */ diff --git a/src/types/status.d.ts b/src/types/status.d.ts index 8c18611..0558996 100644 --- a/src/types/status.d.ts +++ b/src/types/status.d.ts @@ -618,6 +618,7 @@ interface InitGameStatus { mapBlockObjs: Record>; /** + * @deprecated * 伤害显示信息 */ damage: DamageStatus; @@ -634,6 +635,7 @@ interface InitGameStatus { heroMoving: number; /** + * @deprecated * 勇士是否停下了 */ heroStop: boolean; @@ -689,11 +691,13 @@ interface InitGameStatus { globalAttribute: GlobalAttribute; /** + * @deprecated * 色调的颜色 */ curtainColor: Color; /** + * @deprecated * 全局动画对象 */ globalAnimateObjs: Block< @@ -701,26 +705,31 @@ interface InitGameStatus { >[]; /** + * @deprecated * 楼层贴图 */ floorAnimateObjs: FloorAnimate[]; /** + * @deprecated * 所有的BoxAnimate信息 */ boxAnimateObjs: (BoxAnimate | BigImageBoxAnimate)[]; /** + * @deprecated * 所有的自动元件动画 */ autotileAnimateObjs: Block]>[]; /** + * @deprecated * 全局动画状态,每经过一个全局动画时间便加一 */ globalAnimateStatus: number; /** + * @deprecated * 所有绘制的动画 */ animateObjs: AnimateObj[]; @@ -731,6 +740,7 @@ interface InitGameStatus { hard: string; /** + * @deprecated * 勇士的中心 */ heroCenter: Record<'px' | 'py', number>; @@ -753,6 +763,7 @@ interface InitGameStatus { }; /** + * @deprecated * 大地图中的拖拽处理 */ preview: ActionsPreview; @@ -778,6 +789,7 @@ interface GameStatus extends InitGameStatus { thisMap: Floor; /** + * @deprecated * 地图伤害 */ checkBlock: Readonly; @@ -947,18 +959,24 @@ interface HeroStatus { loc: DiredLoc; /** + * @deprecated * 当前的变量 */ flags: Flags; /** + * @deprecated * 勇士的跟随者 */ followers: Follower[]; + /** + * @deprecated + */ statistics: HeroStatistics; /** + * @deprecated * 勇士拥有的道具 */ items: { diff --git a/src/types/ui.d.ts b/src/types/ui.d.ts index 4b31dea..ab2042b 100644 --- a/src/types/ui.d.ts +++ b/src/types/ui.d.ts @@ -622,6 +622,7 @@ interface Ui { ): void; /** + * @deprecated * 在某个canvas上绘制一个图标 * @param frame 图标的第几帧 */ @@ -641,11 +642,13 @@ interface Ui { closePanel(): void; /** + * @deprecated * 清空UI层内容 */ clearUI(): void; /** + * @deprecated * 左上角绘制一段提示 * @param text 要提示的文字内容 * @param id 要绘制的图标ID @@ -654,11 +657,13 @@ interface Ui { drawTip(text: string, id?: AllIds, frame?: number): void; /** + * @deprecated * 地图中间绘制一段文字 */ drawText(contents?: string, callback?: () => void): void; /** + * @deprecated * 自绘选择光标 */ drawUIEventSelector( @@ -672,12 +677,14 @@ interface Ui { ): void; /** + * @deprecated * 清除一个或多个选择光标 * @param code 要清除的选择光标,不填表示清除所有 */ clearUIEventSelector(code?: number | number[]): void; /** + * @deprecated * 绘制WindowSkin * @param direction 指向箭头的方向 */ @@ -694,6 +701,7 @@ interface Ui { ): void; /** + * @deprecated * 绘制一个背景图,可绘制winskin或纯色背景;支持小箭头绘制 */ drawBackground( @@ -705,6 +713,7 @@ interface Ui { ): void; /** + * @deprecated * 绘制一段文字到某个画布上面 * @param ctx 要绘制到的画布 * @param content 要绘制的内容;转义字符只允许保留 \n, \r[...], \i[...], \c[...], \d, \e @@ -718,6 +727,7 @@ interface Ui { ): ReturnedTextContentConfig; /** + * @deprecated * 获得某段文字的预计绘制高度 */ getTextContentHeight( @@ -726,11 +736,13 @@ interface Ui { ): number; /** + * @deprecated * 绘制一个对话框 */ drawTextBox(content: string, config?: TextBoxConfig): void; /** + * @deprecated * 绘制滚动字幕 */ drawScrollText( @@ -741,11 +753,13 @@ interface Ui { ): void; /** + * @deprecated * 文本图片化 */ textImage(content: string, lineHeight?: number): HTMLCanvasElement; /** + * @deprecated * 绘制一个选项界面 */ drawChoices( @@ -756,6 +770,7 @@ interface Ui { ): void; /** + * @deprecated * 绘制一个确认框 */ drawConfirmBox( @@ -766,16 +781,19 @@ interface Ui { ): void; /** + * @deprecated * 绘制等待界面 */ drawWaiting(text: string): void; /** + * @deprecated * 绘制分页 */ drawPagination(page: number, totalPage: number, y?: number): void; /** + * @deprecated * 绘制怪物手册 */ drawBook(index: number): void; @@ -860,6 +878,7 @@ interface Ui { deleteAllCanvas(): void; /** + * @deprecated * 绘制浏览地图 */ _drawViewMaps(): void; diff --git a/src/types/util.d.ts b/src/types/util.d.ts index cdd5297..f7c31f1 100644 --- a/src/types/util.d.ts +++ b/src/types/util.d.ts @@ -11,6 +11,7 @@ interface Utils { readonly scan2: DeepReadonly; /** + * @deprecated * 将一段文字中的${}(表达式)进行替换。很多情况下可以用模板字符串替代 * @example * // 把主角的生命值和持有的黄钥匙数量代入这句话 @@ -22,6 +23,7 @@ interface Utils { replaceText(text: string, prefix?: string): string; /** + * @deprecated * 对一个表达式中的特殊规则进行替换,如status:xxx等。 * 其中变量和全局存储会替换中文冒号,其余的不会替换 * @example @@ -33,6 +35,7 @@ interface Utils { replaceValue(value: string): string; /** + * @deprecated * 计算一个表达式的值,支持status:xxx等的计算。 * @example core.calValue('status:hp + status:def'); // 计算主角的生命值加防御力 * @param value 待求值的表达式 @@ -193,6 +196,7 @@ interface Utils { cloneArray(data: T): T; /** + * @deprecated * 等比例切分一张图片 * @example core.splitImage(core.material.images.images['npc48.png'], 32, 48); // 把npc48.png切分成若干32×48px的小人 * @param image 图片名(支持映射前的中文名)或图片对象(参见上面的例子),获取不到时返回[] @@ -265,6 +269,7 @@ interface Utils { applyEasing(mode?: EaseMode): (x: number) => number; /** + * @deprecated * 颜色数组转十六进制 * @example core.arrayToRGB([102, 204, 255]); // "#66ccff",加载画面的宣传色 * @param color 一行三列的数组,各元素必须为不大于255的自然数 @@ -273,6 +278,7 @@ interface Utils { arrayToRGB(color: RGBArray): _RGBA; /** + * @deprecated * 颜色数组转字符串 * @example core.arrayToRGBA([102, 204, 255]); // "rgba(102,204,255,1)" * @param color 一行三列或一行四列的数组,前三个元素必须为不大于255的自然数。 @@ -308,6 +314,7 @@ interface Utils { isset(v?: any): boolean; /** + * @deprecated * 判定一个数组是否为另一个数组的前缀,用于录像接续播放 * @example core.subarray(['ad', '米库', '小精灵', '小破草', '小艾'], ['ad', '米库', '小精灵']); // ['小破草', '小艾'] * @param a 可能的母数组,不填或比b短将返回null @@ -326,6 +333,7 @@ interface Utils { inArray(array?: any, element?: any): boolean; /** + * @deprecated * 将x限定在[a,b]区间内,注意a和b可交换 * @example core.clamp(1200, 1, 1000); // 1000 * @param x 原始值,!x为true时x一律视为0 @@ -364,6 +372,7 @@ interface Utils { strlen(str: string): number; /** + * @deprecated * 计算应当转向某个方向 * @param turn 转向的方向 * @param direction 当前方向,不填视为当前方向 @@ -371,6 +380,7 @@ interface Utils { turnDirection(turn: HeroTurnDir, direction?: Dir): string; /** + * @deprecated * 通配符匹配,用于搜索图块等批量处理。 * @example core.playSound(core.matchWildcard('*Key', itemId) ? 'item.mp3' : 'door.mp3'); // 判断捡到的是钥匙还是别的道具,从而播放不同的音效 * @param pattern 模式串,每个星号表示任意多个(0个起)字符 @@ -380,6 +390,7 @@ interface Utils { matchWildcard(pattern: string, string: string): boolean; /** + * @deprecated * 是否满足正则表达式,一般可以直接用/RegExp/.test(str)代替 * @param pattern 正则表达式 * @param string 要匹配的字符串 @@ -457,6 +468,7 @@ interface Utils { copy(data: string): void; /** + * @deprecated * 显示确认框,类似core.drawConfirmBox() * @example core.myconfirm('重启游戏?', core.restart); // 弹窗询问玩家是否重启游戏 * @param hint 弹窗的内容 @@ -470,6 +482,7 @@ interface Utils { ): void; /** + * @deprecated * 让用户输入一段文字 */ myprompt( @@ -510,6 +523,7 @@ interface Utils { hashCode(obj: any): number; /** + * @deprecated * 判定深层相等, 会逐层比较每个元素 * @example core.same(['1', 2], ['1', 2]); // true */