From de64c8e2bdb227cf70853a3cbd6cabf393280e64 Mon Sep 17 00:00:00 2001 From: unanmed <1319491857@qq.com> Date: Sat, 2 Mar 2024 10:30:36 +0800 Subject: [PATCH] fix: bugs & deprecate --- public/editor.html | 9 ++++----- public/libs/actions.js | 12 +++++++++--- src/types/control.d.ts | 21 ++++++++++++++++++++- src/types/core.d.ts | 1 + src/types/event.d.ts | 4 ++++ src/types/function.d.ts | 1 + src/types/util.d.ts | 6 ++++++ 7 files changed, 45 insertions(+), 9 deletions(-) diff --git a/public/editor.html b/public/editor.html index 6aebc60..b6d7a32 100644 --- a/public/editor.html +++ b/public/editor.html @@ -400,10 +400,9 @@ - - - + + +
@@ -512,7 +511,7 @@ editor.mode_listen(); editor.mobile_listen(); }); - //main.listen(); + //main.listen(); diff --git a/public/libs/actions.js b/public/libs/actions.js index c81ee4e..9d0b323 100644 --- a/public/libs/actions.js +++ b/public/libs/actions.js @@ -1684,7 +1684,9 @@ actions.prototype._clickSL = function (x, y) { if (x >= this.LAST - 2 && y === core._HEIGHT_ - 1) { core.playSound('取消'); if (core.events.recoverEvents(core.status.event.interval)) return; - core.ui.closePanel(); + setTimeout(() => { + core.ui.closePanel(); + }, 0); delete core.status.tempRoute; if (!core.isPlaying()) document.getElementById('start').style.top = '0'; return; @@ -2345,7 +2347,9 @@ actions.prototype._clickSettings = function (x, y) { return core.confirmRestart(); case 7: core.playSound('取消'); - core.ui.closePanel(); + setTimeout(() => { + core.ui.closePanel(); + }, 0); break; } } @@ -2356,7 +2360,9 @@ actions.prototype._clickSettings = function (x, y) { actions.prototype._keyUpSettings = function (keycode) { if (keycode == 27 || keycode == 88) { core.playSound('取消'); - core.ui.closePanel(); + setTimeout(() => { + core.ui.closePanel(); + }, 0); return; } this._selectChoices( diff --git a/src/types/control.d.ts b/src/types/control.d.ts index 2ae13d4..f570e2c 100644 --- a/src/types/control.d.ts +++ b/src/types/control.d.ts @@ -388,7 +388,7 @@ interface Control { /** * 设置游戏系统画布的偏移量 - * @param canvasId 字符串或数字,根据ts的说法应该只能填数字,但是浏览器会提高字符串的方式。 + * @param canvasId 字符串或数字,根据ts的说法应该只能填数字,但是浏览器会提供字符串的方式。 * 但是还是建议填数字,排列顺序一般是纵深从低到高排列 * @param x 偏移横坐标 * @param y 偏移纵坐标 @@ -407,11 +407,13 @@ interface Control { addGameCanvasTranslate(x: number, y: number): void; /** + * @deprecated 下一个大版本会添加新的视角控制 * 更新大地图的可见区域 */ updateViewport(): void; /** + * @deprecated 下一个大版本会添加新的视角控制 * 设置视野范围 * @param px 相对大地图左上角的偏移横坐标,单位像素 * @param py 相对大地图左上角的偏移纵坐标,单位像素 @@ -419,6 +421,7 @@ interface Control { setViewport(px?: number, py?: number): void; /** + * @deprecated 下一个大版本会添加新的视角控制 * 移动视野范围,这东西真的有人用吗...高级动画 + setViewport就完事了( * @param x 移动的横坐标,单位格子 * @param y 移动的纵坐标,单位格子 @@ -639,6 +642,7 @@ interface Control { removeSave(index: number, callback?: () => void): void; /** + * @deprecated * 设置主角的某个属性 * @example core.setStatus('loc', {x : 0, y : 0, direction : 'up'}); // 设置主角位置为地图左上角,脸朝上 * @param name 属性名 @@ -647,6 +651,7 @@ interface Control { setStatus(name: K, value: HeroStatus[K]): void; /** + * @deprecated * 增减主角的某个属性,等价于core.setStatus(name, core.getStatus(name) + value) * @example core.addStatus('name', '酱'); // 在主角的名字后加一个“酱”字 * @param name 属性名 @@ -658,6 +663,7 @@ interface Control { ): void; /** + * @deprecated * 读取主角的某个属性,不包括百分比修正 * @example core.getStatus('loc'); // 读取主角的坐标和朝向 * @param name 属性名 @@ -666,6 +672,7 @@ interface Control { getStatus(name: K): HeroStatus[K]; /** + * @deprecated * 从status中获得属性,如果不存在则从勇士属性中获取 * @param status 要从中获取的属性对象 * @param name 属性名 @@ -676,6 +683,7 @@ interface Control { ): HeroStatus[K]; /** + * @deprecated * 计算主角的某个属性,包括百分比修正 * @example core.getRealStatus('atk'); // 计算主角的攻击力,包括百分比修正。战斗使用的就是这个值 * @param name 属性名,注意只能用于数值类属性 @@ -683,6 +691,7 @@ interface Control { getRealStatus(name: K): number; /** + * @deprecated * 从status中获得增幅后的属性,如果不存在则从勇士属性中获取 * @param status 要从中获取的属性对象 * @param name 属性名 @@ -693,6 +702,7 @@ interface Control { ): number; /** + * @deprecated * 获得勇士原始属性(无装备和衰弱影响) * @param name 获取的属性名 */ @@ -960,6 +970,7 @@ interface Control { ): void; /** + * @deprecated * 播放背景音乐,中途开播但不计入存档且只会持续到下次场景切换。如需长期生效请将背景音乐的文件名赋值给flags.__bgm__ * @example core.playBgm('bgm.mp3', 30); // 播放bgm.mp3,并跳过前半分钟 * @param bgm 背景音乐的文件名,支持全塔属性中映射前的中文名 @@ -968,26 +979,31 @@ interface Control { playBgm(bgm: BgmIds | NameMapIn, startTime?: number): void; /** + * @deprecated * 暂停背景音乐的播放 */ pauseBgm(): void; /** + * @deprecated * 恢复背景音乐的播放 */ resumeBgm(resumeTime?: number): void; /** + * @deprecated * 设置音乐图标的开启关闭状态 */ setMusicBtn(): void; /** + * @deprecated * 开启或关闭背景音乐的播放 */ triggerBgm(): void; /** + * @deprecated * 播放一个音效 * @param sound 音效名 * @param pitch 音调,同时会修改播放速度,100为原速 @@ -1001,18 +1017,21 @@ interface Control { ): number; /** + * @deprecated * 停止音频 * @param id 停止的音频标识符,不填则停止所有 */ stopSound(id?: number): void; /** + * @deprecated * 获得正在播放的所有音效的id列表 * @param name 要获得的音效名 */ getPlayingSounds(name?: SoundIds | NameMapIn): number[]; /** + * @deprecated * 检查bgm状态,没有播放的话就播放 */ checkBgm(): void; diff --git a/src/types/core.d.ts b/src/types/core.d.ts index e96bccb..beee4d7 100644 --- a/src/types/core.d.ts +++ b/src/types/core.d.ts @@ -948,6 +948,7 @@ interface Core extends Pick { readonly animateFrame: AnimateFrame; /** + * @deprecated * 音乐状态 */ readonly musicStatus: Readonly; diff --git a/src/types/event.d.ts b/src/types/event.d.ts index 3e9ad36..382eebe 100644 --- a/src/types/event.d.ts +++ b/src/types/event.d.ts @@ -428,6 +428,7 @@ interface Events extends EventData { ): void; /** + * @deprecated 已失效(大概 * 设置一项敌人属性并计入存档 * @example core.setEnemy('greenSlime', 'def', 0); // 把绿头怪的防御设为0 * @param id 敌人id @@ -447,6 +448,7 @@ interface Events extends EventData { ): void; /** + * @deprecated 已失效(大概 * 设置某个点的敌人属性 * @param x 横坐标 * @param y 纵坐标 @@ -469,6 +471,7 @@ interface Events extends EventData { ): void; /** + * @deprecated 已失效(大概 * 重置某个点的敌人属性 * @param x 横坐标 * @param y 纵坐标 @@ -483,6 +486,7 @@ interface Events extends EventData { ): void; /** + * @deprecated 已失效(大概 * 将某个点已经设置的敌人属性移动到其他点 * @param fromX 起始横坐标 * @param fromY 起始纵坐标 diff --git a/src/types/function.d.ts b/src/types/function.d.ts index 43548fa..e24bbdf 100644 --- a/src/types/function.d.ts +++ b/src/types/function.d.ts @@ -1,5 +1,6 @@ interface ActionData { /** + * @deprecated * 当按键弹起时 * @param keyCode 按键的keyCode * @param altKey 当前是否按下了alt键 diff --git a/src/types/util.d.ts b/src/types/util.d.ts index 2cf0231..3793852 100644 --- a/src/types/util.d.ts +++ b/src/types/util.d.ts @@ -68,6 +68,7 @@ interface Utils { decompress(value: string): any; /** + * @deprecated * 设置本地存储 * @param key 本地存储的名称 * @param value 本地存储的值,不填代表删除 @@ -75,6 +76,7 @@ interface Utils { setLocalStorage(key: string, value?: any): void; /** + * @deprecated * 获得本地存储 * @param key 获取的本地存储的名称 * @param defaultValue 当不存在的时候的默认值 @@ -82,6 +84,7 @@ interface Utils { getLocalStorage(key: string, defaultValue?: T): T; /** + * @deprecated * 移除本地存储 * @param key 要移除的本地存储的值 */ @@ -151,6 +154,7 @@ interface Utils { ): void; /** + * @deprecated * 设置一个全局存储,适用于global:xxx,录像播放时将忽略此函数。 * @example core.setBlobal('一周目已通关', true); // 设置全局存储“一周目已通关”为true,方便二周目游戏中的新要素。 * @param key 全局变量名称,支持中文 @@ -159,6 +163,7 @@ interface Utils { setGlobal(key: string, value?: any): void; /** + * @deprecated * 读取一个全局存储,适用于global:xxx,支持录像。 * @example if (core.getGlobal('一周目已通关', false) === true) core.getItem('dagger'); // 二周目游戏进行到此处时会获得一把屠龙匕首 * @param key 全局变量名称,支持中文 @@ -334,6 +339,7 @@ interface Utils { getCookie(name: string): string; /** + * @deprecated 已失效(大概 * 填写非自绘状态栏 * @example * // 更新状态栏中的主角生命,使用加载画面的宣传色