feat: deprecate api

This commit is contained in:
unanmed 2024-09-27 12:42:07 +08:00
parent f407b5cb74
commit 80f154694a
9 changed files with 182 additions and 1 deletions

View File

@ -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<K extends keyof HeroStatus>(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<K extends keyof HeroStatus>(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<K extends keyof NumbericHeroStatus>(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<K extends keyof NumbericHeroStatus>(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<K extends keyof NumbericHeroStatus>(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<K extends keyof DiredLoc>(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<T>(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<K extends keyof NameMap>(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
*/

2
src/types/core.d.ts vendored
View File

@ -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;

View File

@ -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或敌人对象

56
src/types/event.d.ts vendored
View File

@ -18,16 +18,19 @@ interface Events extends EventData {
eventdata: EventData;
/**
* @deprecated
* 公共事件信息
*/
commonEvent: Record<EventDeclaration, MotaEvent>;
/**
* @deprecated
* 所有的系统事件
*/
systemEvent: Record<string, SystemEventFunc>;
/**
* @deprecated
* 注册的自定义事件
*/
actions: Record<string, EventFunc>;
@ -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<ImageIds>): 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<TextAttribute>): 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

21
src/types/item.d.ts vendored
View File

@ -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 装上的装备

14
src/types/map.d.ts vendored
View File

@ -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 指定名称
*/

18
src/types/status.d.ts vendored
View File

@ -618,6 +618,7 @@ interface InitGameStatus {
mapBlockObjs: Record<FloorIds, Record<LocString, Block>>;
/**
* @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<IdToNumber[AllIdsOf<'autotile'>]>[];
/**
* @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<CheckBlockStatus>;
@ -947,18 +959,24 @@ interface HeroStatus {
loc: DiredLoc;
/**
* @deprecated
* 当前的变量
*/
flags: Flags;
/**
* @deprecated
* 勇士的跟随者
*/
followers: Follower[];
/**
* @deprecated
*/
statistics: HeroStatistics;
/**
* @deprecated
* 勇士拥有的道具
*/
items: {

19
src/types/ui.d.ts vendored
View File

@ -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;

14
src/types/util.d.ts vendored
View File

@ -11,6 +11,7 @@ interface Utils {
readonly scan2: DeepReadonly<Scan2>;
/**
* @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<T extends any[]>(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
*/