From 2ea95671a5725069823ef90f910b904e7beced19 Mon Sep 17 00:00:00 2001 From: unanmed <1319491857@qq.com> Date: Thu, 23 Feb 2023 23:10:57 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E5=BA=A6=E6=88=90=E5=B0=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/main.js | 36 +--------- public/project/floors/MT0.js | 2 +- public/project/floors/MT14.js | 12 +++- public/project/floors/MT15.js | 28 +++++--- public/project/functions.js | 1 + public/project/icons.js | 3 +- public/project/items.js | 6 ++ public/project/maps.js | 1 + public/project/materials/items.png | Bin 44540 -> 46771 bytes src/data/achievement.json | 6 +- src/data/settings.json | 5 +- src/initPlugin.ts | 13 +++- src/plugin/completion.ts | 108 +++++++++++++++++++++++++++++ src/plugin/ui/achievement.ts | 57 ++++++++++++--- src/plugin/uiController.ts | 3 +- src/plugin/utils.ts | 18 ++++- src/source/cls.d.ts | 1 + src/source/items.d.ts | 1 + src/source/maps.d.ts | 2 + src/types/plugin.d.ts | 29 +++++++- src/ui/achievement.vue | 9 ++- src/ui/settings.vue | 4 +- 22 files changed, 279 insertions(+), 66 deletions(-) create mode 100644 src/plugin/completion.ts diff --git a/public/main.js b/public/main.js index 491e7f8..d15c554 100644 --- a/public/main.js +++ b/public/main.js @@ -504,6 +504,7 @@ main.prototype.listen = function () { main.dom.body.onkeydown = function (e) { if (main.editorOpened) return; try { + if (e.keyCode === 27) e.preventDefault(); if (main.dom.inputDiv.style.display == 'block') return; if ( main.core && @@ -539,6 +540,7 @@ main.prototype.listen = function () { ) { // ESC main.core.showStartAnimate(true); + e.preventDefault(); } e.stopPropagation(); return; @@ -873,40 +875,6 @@ main.prototype.listen = function () { } }; - ////// 点击“开始游戏”时 ////// - // main.dom.playGame.onclick = function () { - // main.dom.startButtons.style.display = 'none'; - // main.core.control.checkBgm(); - - // if (main.levelChoose.length == 0) { - // core.events.startGame(''); - // } else { - // main.dom.levelChooseButtons.style.display = 'block'; - // main.selectedButton = null; - // main.selectButton(0); - // } - // }; - - // ////// 点击“载入游戏”时 ////// - // main.dom.loadGame.onclick = function () { - // main.core.control.checkBgm(); - // main.core.load(); - // }; - - // ////// 点击“录像回放”时 ////// - // main.dom.replayGame.onclick = function () { - // main.core.control.checkBgm(); - // main.core.chooseReplayFile(); - // }; - - // main.dom.musicBtn.onclick = function () { - // try { - // if (main.core) main.core.triggerBgm(); - // } catch (ee) { - // console.error(ee); - // } - // }; - window.onblur = function () { if (main.core && main.core.control) { try { diff --git a/public/project/floors/MT0.js b/public/project/floors/MT0.js index 19596ea..85d318b 100644 --- a/public/project/floors/MT0.js +++ b/public/project/floors/MT0.js @@ -20,7 +20,7 @@ main.floors.MT0= [141, 34, 34,141, 0,141, 0, 0, 0,141, 0,141,141,141,20040], [141,141,141,141, 0, 0, 0,141, 0, 0, 0,141, 33, 33,20040], [141, 34, 34,141, 0,141, 0, 0, 0,141, 0,494,482,482,20040], - [141, 33, 33,492, 0,141, 0, 0, 0,141, 0,141, 33, 33,20040], + [141, 33, 33,492, 0,141, 0,642, 0,141, 0,141, 33, 33,20040], [141, 34, 34,141, 0,141, 45,559, 46,141, 0,141,141,141,20040], [141,141,141,141, 0, 0,558, 0,560, 0, 0,141, 33, 33,20040], [141, 33, 33,141, 0,141,367, 0,129,141, 0,494,482,482,20040], diff --git a/public/project/floors/MT14.js b/public/project/floors/MT14.js index 6272456..4605be8 100644 --- a/public/project/floors/MT14.js +++ b/public/project/floors/MT14.js @@ -212,10 +212,18 @@ main.floors.MT14= } ], "127,1": [ - "你是怎么办到的?!" + "你是怎么办到的?!", + { + "type": "function", + "function": "function(){\nif (!core.isReplaying()) {\n\tcore.addMountSign(2);\n}\n}" + } ], "26,14": [ - "不作死就不会死" + "不作死就不会死", + { + "type": "function", + "function": "function(){\nif (!core.isReplaying()) {\n\tcore.addMountSign(1);\n}\n}" + } ], "8,2": [ "这一层有一个必须使用跳跃的地方,需要1个跳跃次数,你一共有3个跳跃次数,请规划好", diff --git a/public/project/floors/MT15.js b/public/project/floors/MT15.js index a91ddc1..c7e14e7 100644 --- a/public/project/floors/MT15.js +++ b/public/project/floors/MT15.js @@ -34,13 +34,25 @@ main.floors.MT15= "parallelDo": "", "events": { "44,0": [ - "不愧是你!!!" + "不愧是你!!!", + { + "type": "function", + "function": "function(){\nif (!core.isReplaying()) {\n\tcore.addMountSign(4);\n}\n}" + } ], "62,0": [ - "卧槽!你连这都到了?!" + "卧槽!你连这都到了?!", + { + "type": "function", + "function": "function(){\nif (!core.isReplaying()) {\n\tcore.addMountSign(5);\n}\n}" + } ], "9,0": [ - "这边没有彩蛋,往右边走→_→" + "这边没有彩蛋,往右边走→_→", + { + "type": "function", + "function": "function(){\nif (!core.isReplaying()) {\n\tcore.addMountSign(3);\n}\n}" + } ], "13,7": [ "看到下面那个绝对防御怪了吗?", @@ -72,9 +84,9 @@ main.floors.MT15= "autoEvent": {}, "cannotMove": {}, "map": [ - [30144,30145,30146,30147,30144,30145,30146,30147, 0,129, 0, 0, 0, 0, 0, 0, 0, 0, 0,20075, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,129,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,129,20055], - [30152,30153,30154,30155,30152,30153,30154,30155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20045, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20058], - [30160,30161,30162,30163,30160,30161,30162,30163, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,336,141,141,141,141,141,141,141,141,141,141,20007,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20074], + [30144,30145,30146,30147,30144,30145,30146,30147, 0,129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,129,20055], + [30152,30153,30154,30155,30152,30153,30154,30155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20057,20057,20057,20057, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20058], + [30160,30161,30162,30163,30160,30161,30162,30163, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,336,141,141,141,141,141,141,141,141,141,141,20007,20065,20065,20065,20065, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20074], [ 0, 0, 0, 0, 0, 0, 0, 0, 0,390,403,378, 21,484,492, 0, 27, 0, 0, 0, 28, 32,492,396,376,484,403,492,378,492,376,30152,30153,30154,30155, 34,511,484,376,403,378, 0,499, 0, 28,381, 28, 33,511,141,484, 0,269, 0,336,378, 0,512,336,482, 27,381, 0,20007], [ 0, 0, 0, 0, 0, 0, 0, 0, 0,141,141,141,141,512,141, 33, 0, 28, 0,503,141,141,141, 0,336,336,336,340, 0,141, 0,30160,30161,30162,30163, 28,336,336,336,336,336,494,484,390,403,403,396, 0, 0,492, 0,336, 0,482,492,482,336, 0,336,336,336,492,244, 94], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 33,378,492, 0,381, 0,503,141,141,141, 0, 27, 0,141,512, 0, 32,403,340,403,141,403, 0,244, 34, 27,381,492,403, 0,482, 0,378,336,336,336,512,336,492,376,403,378, 28, 0, 0,511, 0,492,390, 0,403, 0,484, 0, 0], @@ -90,8 +102,8 @@ main.floors.MT15= ], "bgmap": [ [ 0, 0, 0, 0, 0, 0, 0, 0,20076,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20075, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20076,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20054,20055], - [ 0, 0, 0, 0, 0, 0, 0, 0,20047,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20045, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20047, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], - [ 0, 0, 0, 0, 0, 0, 0, 0,20047,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20045, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20047, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], + [ 0, 0, 0, 0, 0, 0, 0, 0,20047,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20045, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20047, 0, 0, 0, 0,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057,20057, 0], + [ 0, 0, 0, 0, 0, 0, 0, 0,20047,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20045, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20047, 0, 0, 0, 0,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065,20065, 0], [20054,20054,20054,20054,20054,20054,20054,20054,20055, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20045, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20047, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [20057,20057,20057,20057,20057,20057,20057,20057,20058, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20045, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20047, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20037,20038,20038,20038,20038,20039, 0, 0, 0,20045,20047, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [20065,20065,20065,20065,20065,20065,20065,20065,20074, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20045, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20047, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20045, 0, 0, 0, 0,20047, 0, 0, 0,20045,20047, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20037], diff --git a/public/project/functions.js b/public/project/functions.js index 82e87bb..a15807c 100644 --- a/public/project/functions.js +++ b/public/project/functions.js @@ -206,6 +206,7 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = { core.visitFloor(floorId); } } + core.checkVisitedFloor(); }, flyTo: function (toId, callback) { // 楼层传送器的使用,从当前楼层飞往toId diff --git a/public/project/icons.js b/public/project/icons.js index 8943749..73d5e92 100644 --- a/public/project/icons.js +++ b/public/project/icons.js @@ -598,7 +598,8 @@ var icons_4665ee12_3a1f_44a4_bea3_0fccba634dc1 = "I574": 99, "I575": 100, "I589": 101, - "I641": 102 + "I641": 102, + "I642": 103 }, "autotile": { "autotile": 0, diff --git a/public/project/items.js b/public/project/items.js index 42a829b..17912b6 100644 --- a/public/project/items.js +++ b/public/project/items.js @@ -1357,5 +1357,11 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a = "mana": 5 } } + }, + "I642": { + "cls": "constants", + "name": "成就", + "canUseItemEffect": "true", + "useItemEffect": "core.plugin.achievementOpened.value = true;" } } \ No newline at end of file diff --git a/public/project/maps.js b/public/project/maps.js index d7589f0..e08cc1d 100644 --- a/public/project/maps.js +++ b/public/project/maps.js @@ -570,6 +570,7 @@ var maps_90f36752_8815_4be8_b32b_d7fad1d0542e = "639": {"cls":"npc48","id":"N639"}, "640": {"cls":"terrains","id":"T640","canPass":true}, "641": {"cls":"items","id":"I641"}, + "642": {"cls":"items","id":"I642"}, "20032": {"cls":"tileset","id":"X20032","cannotOut":["up","left"],"cannotIn":["up","left"]}, "20033": {"cls":"tileset","id":"X20033","cannotOut":["up"],"cannotIn":["up"]}, "20034": {"cls":"tileset","id":"X20034","cannotOut":["up","right"],"cannotIn":["up","right"]}, diff --git a/public/project/materials/items.png b/public/project/materials/items.png index ae61e62c91a897afcee5e3a719e73f26b6ff819a..860669c5e47cf57a68fe37c795772af981e76b74 100644 GIT binary patch delta 44288 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 RBhLT;002ovPDHLkV1kFAS114g delta 42143 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

Ngr}gK0Ygg~x$WfU?7%shg{N@4XDTe? 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 diff --git a/src/data/achievement.json b/src/data/achievement.json index 801a232..09b9015 100644 --- a/src/data/achievement.json +++ b/src/data/achievement.json @@ -37,7 +37,7 @@ "text": [ "第一章完成度达到100%" ], - "progress": "100 / 100", + "progress": "${core.getChapterCompletion(1)} / 100", "percent": true, "point": 50 }, @@ -46,7 +46,7 @@ "text": [ "与山路上的若干个神秘木牌对话" ], - "progress": "5 / 5", + "progress": "${core.getLocalStorage('mountSign', 0)} / 5", "hide": "该探索成就需要你自己探索如何达成", "point": 25 }, @@ -55,7 +55,7 @@ "text": [ "第二章完成度达到100%" ], - "progress": "100 / 100", + "progress": "${core.getChapterCompletion(2)} / 100", "percent": true, "point": 50 }, diff --git a/src/data/settings.json b/src/data/settings.json index bf8667d..b9a8f39 100644 --- a/src/data/settings.json +++ b/src/data/settings.json @@ -1,7 +1,10 @@ { "fullscreen": { "text": "全屏游戏", - "desc": ["是否全屏进行游戏"] + "desc": [ + "是否全屏进行游戏,全屏后按ESC退出全屏,不能开启系统设置菜单,请按下方的按钮打开。", + "进入或退出全屏后请存读档一下,以解决一部分绘制问题。" + ] }, "transition": { "text": "界面动画", diff --git a/src/initPlugin.ts b/src/initPlugin.ts index 30b72c9..806f57b 100644 --- a/src/initPlugin.ts +++ b/src/initPlugin.ts @@ -13,6 +13,8 @@ import fixed from './plugin/ui/fixed'; import webglUtils from './plugin/webgl/utils'; import shadow from './plugin/shadow/shadow'; import gameShadow from './plugin/shadow/gameShadow'; +import achievement from './plugin/ui/achievement'; +import completion, { floors } from './plugin/completion'; function forward() { const toForward: any[] = [ @@ -30,7 +32,9 @@ function forward() { fixed(), webglUtils(), shadow(), - gameShadow() + gameShadow(), + achievement(), + completion() ]; // 初始化所有插件,并转发到core上 @@ -52,6 +56,13 @@ function forward() { console.log('插件转发完成!'); })(); + + Object.values(floors).forEach((v, i) => { + const from = core.floorIds.indexOf(v[0]); + const to = core.floorIds.indexOf(v[1]); + const all = core.floorIds.slice(from, to + 1); + floors[i + 1] = all; + }); } main.forward = forward; diff --git a/src/plugin/completion.ts b/src/plugin/completion.ts new file mode 100644 index 0000000..7b1e3a0 --- /dev/null +++ b/src/plugin/completion.ts @@ -0,0 +1,108 @@ +import { + AchievementType, + completeAchievement, + hasCompletedAchievement +} from './ui/achievement'; +import { changeLocalStorage } from './utils'; +import list from '../data/achievement.json'; + +export default function init() { + return { getChapterCompletion, checkVisitedFloor }; +} + +export const floors: Record = { + 1: ['MT0', 'tower7'] +}; +const achis: Record> = { + 1: { + normal: [0, 1], + challenge: [0], + explore: [1] + } +}; + +export const achiDict: Record = { + 1: 0 +}; + +/** + * 检查所有到达过的楼层,用于成就的计算 + */ +export function checkVisitedFloor() { + changeLocalStorage>>( + 'visitedFloor', + data => { + let needUpdate = false; + core.floorIds.forEach(v => { + if (core.hasVisitedFloor(v)) { + data[v] = true; + needUpdate = true; + } + }); + if (needUpdate) { + checkCompletionAchievement(); + } + + return data; + }, + {} + ); +} + +/** + * 获取一个章节的完成度 + * @param num 章节 + */ +export function getChapterCompletion(num: number) { + if (!achis[num]) return 0; + let res = 0; + const all = floors[num]; + const achiNum = Object.values(achis[num]).reduce( + (pre, cur) => pre + cur.length, + 0 + ); + + // 计算到达过的楼层 + let visitedFloor = 0; + const visited = core.getLocalStorage>>( + 'visitedFloor', + {} + ); + all.forEach(v => { + if (visited[v]) visitedFloor++; + }); + const floorRatio = all.length / (all.length + achiNum); + const floorPoint = (floorRatio * visitedFloor) / all.length; + + let completedPoint = 0; + let totalPoint = 0; + + // 计算成就,占比按成就点走 + for (const [type, achi] of Object.entries(achis[num]) as [ + AchievementType, + number[] + ][]) { + achi.forEach(v => { + totalPoint += list[type][v].point; + if (hasCompletedAchievement(type, v)) { + completedPoint += list[type][v].point; + } + }); + } + const achiPoint = (completedPoint / totalPoint) * (1 - floorRatio); + + res = floorPoint + achiPoint; + + return Math.floor(res * 100); +} + +/** + * 检查完成度成就是否完成 + */ +export function checkCompletionAchievement() { + [1].forEach(v => { + if (getChapterCompletion(v) >= 100) { + completeAchievement('explore', achiDict[v]); + } + }); +} diff --git a/src/plugin/ui/achievement.ts b/src/plugin/ui/achievement.ts index 3de6769..ae4ef8c 100644 --- a/src/plugin/ui/achievement.ts +++ b/src/plugin/ui/achievement.ts @@ -1,6 +1,7 @@ import { ref } from 'vue'; import list from '../../data/achievement.json'; -import { has } from '../utils'; +import { achiDict, checkCompletionAchievement } from '../completion'; +import { changeLocalStorage, has } from '../utils'; type AchievementList = typeof list; export type AchievementType = keyof AchievementList; @@ -17,7 +18,7 @@ export interface Achievement { } export default function init() { - return {}; + return { completeAchievement, hasCompletedAchievement, addMountSign }; } export const showComplete = ref(false); @@ -37,13 +38,22 @@ export const totalPoint = Object.values(list) * @param index 成就索引 */ export function completeAchievement(type: AchievementType, index: number) { - const now = core.getLocalStorage('achievement', { - normal: [], - challenge: [], - explore: [] - }); - now[type][index] = true; - core.setLocalStorage('achievement', now); + if (flags.debug) return; + changeLocalStorage( + 'achievement', + data => { + data[type][index] = true; + return data; + }, + { + normal: [], + challenge: [], + explore: [] + } + ); + if (type === 'explore' && !Object.values(achiDict).includes(index)) { + checkCompletionAchievement(); + } completeAchi.value = `${type},${index}`; showComplete.value = true; } @@ -81,3 +91,32 @@ export function getNowPoint() { } return res; } + +// ----- 各个成就相关的函数 + +/** + * 山路木牌 + * @param id 木牌id + */ +export function addMountSign(id: number) { + if (flags.debug) return; + if ( + !core.getLocalStorage(`mountSign_${id}`, false) && + !hasCompletedAchievement('explore', 1) + ) { + changeLocalStorage( + 'mountSign', + n => { + if (n + 1 >= 5) { + completeAchievement('explore', 1); + for (const i of [1, 2, 3, 4, 5]) { + core.removeLocalStorage(`mountSign_${i}`); + } + } + return n + 1; + }, + 0 + ); + core.setLocalStorage(`mountSign_${id}`, true); + } +} diff --git a/src/plugin/uiController.ts b/src/plugin/uiController.ts index c4ea368..e08d2df 100644 --- a/src/plugin/uiController.ts +++ b/src/plugin/uiController.ts @@ -95,7 +95,8 @@ export default function init() { shopOpened, startOpened, startAnimationEnded, - loaded + loaded, + achievementOpened }; } diff --git a/src/plugin/utils.ts b/src/plugin/utils.ts index ea5d7fe..b19ef2f 100644 --- a/src/plugin/utils.ts +++ b/src/plugin/utils.ts @@ -15,7 +15,7 @@ type CanParseCss = keyof { }; export default function init() { - return { has, getDamageColor, parseCss, tip }; + return { has, getDamageColor, parseCss, tip, changeLocalStorage }; } /** @@ -212,3 +212,19 @@ export async function doByInterval( } } } + +/** + * 更改一个本地存储 + * @param name 要更改的信息 + * @param fn 更改时执行的函数 + * @param defaultValue 如果不存在时获取的默认值 + */ +export function changeLocalStorage( + name: string, + fn: (data: T) => T, + defaultValue?: T +) { + const now = core.getLocalStorage(name, defaultValue); + const to = fn(now); + core.setLocalStorage(name, to); +} diff --git a/src/source/cls.d.ts b/src/source/cls.d.ts index 17047bf..6760e0d 100644 --- a/src/source/cls.d.ts +++ b/src/source/cls.d.ts @@ -569,6 +569,7 @@ interface IdToCls { N639: 'npc48'; T640: 'terrains'; I641: 'items'; + I642: 'items'; X20032: 'tileset'; X20033: 'tileset'; X20034: 'tileset'; diff --git a/src/source/items.d.ts b/src/source/items.d.ts index 741685e..307232e 100644 --- a/src/source/items.d.ts +++ b/src/source/items.d.ts @@ -186,4 +186,5 @@ interface ItemDeclaration { I575: 'equips'; I589: 'equips'; I641: 'equips'; + I642: 'constants'; } \ No newline at end of file diff --git a/src/source/maps.d.ts b/src/source/maps.d.ts index 8da6bfe..e50b440 100644 --- a/src/source/maps.d.ts +++ b/src/source/maps.d.ts @@ -569,6 +569,7 @@ interface IdToNumber { N639: 639; T640: 640; I641: 641; + I642: 642; X20032: 20032; X20033: 20033; X20034: 20034; @@ -1221,6 +1222,7 @@ interface NumberToId { 639: 'N639'; 640: 'T640'; 641: 'I641'; + 642: 'I642'; 20032: 'X20032'; 20033: 'X20033'; 20034: 'X20034'; diff --git a/src/types/plugin.d.ts b/src/types/plugin.d.ts index cdd0487..37a9945 100644 --- a/src/types/plugin.d.ts +++ b/src/types/plugin.d.ts @@ -20,7 +20,8 @@ interface PluginDeclaration PluginUse, SkillTree, MiniMap, - HeroRealStatus { + HeroRealStatus, + PluginAchievement { /** * 添加函数 例:添加弹出文字,像这个就可以使用core.addPop或core.plugin.addPop调用 * @param px 弹出的横坐标 @@ -389,6 +390,32 @@ interface HeroRealStatus { ): HeroStatus[K]; } +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; +} + type Chapter = 'chapter1' | 'chapter2'; interface Skill { diff --git a/src/ui/achievement.vue b/src/ui/achievement.vue index 66d868b..2664df0 100644 --- a/src/ui/achievement.vue +++ b/src/ui/achievement.vue @@ -19,7 +19,7 @@

- +
diff --git a/src/ui/settings.vue b/src/ui/settings.vue index 9363ffb..cbed829 100644 --- a/src/ui/settings.vue +++ b/src/ui/settings.vue @@ -112,7 +112,9 @@ type Settings = typeof settingInfo; const core = window.core; -const selected = ref('transition'); +const selected = ref('fullscreen'); + +fullscreen.value = !!document.fullscreenElement; const descText = computed(() => { return splitText(settingInfo[selected.value].desc);