diff --git a/.gitignore b/.gitignore index 381632a..f8f07cb 100644 --- a/.gitignore +++ b/.gitignore @@ -27,4 +27,5 @@ dist-ssr *.sw? dist.zip -story.md \ No newline at end of file +story.md +dist.rar \ No newline at end of file diff --git a/package.json b/package.json index 8668511..c11412c 100644 --- a/package.json +++ b/package.json @@ -7,6 +7,7 @@ "dev": "vite", "build": "vue-tsc && vite build && ts-node-esm script/compress.ts", "build-gh": "vue-tsc && vite build --base=/HumanBreak/ && ts-node-esm script/compress.ts", + "build-local": "vue-tsc && vite build --base=/ && ts-node-esm script/compress.ts", "preview": "vite preview", "preview-node": "cd dist && node server.cjs", "update": "ts-node-esm script/update.ts", diff --git a/public/project/data.js b/public/project/data.js index 3d03910..6340c7d 100644 --- a/public/project/data.js +++ b/public/project/data.js @@ -31,7 +31,15 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d = "tower5", "tower6", "tower7", - "MT22" + "MT22", + "MT23", + "MT24", + "MT25", + "MT26", + "MT27", + "MT28", + "MT29", + "MT30" ], "floorPartitions": [ [ @@ -59,12 +67,19 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d = "skill.png", "skill0.png", "skill1.png", + "skill10.png", + "skill11.png", + "skill12.png", + "skill13.png", + "skill14.png", "skill2.png", "skill3.png", "skill4.png", "skill5.png", "skill6.png", "skill7.png", + "skill8.png", + "skill9.png", "title.jpg", "tower.jpg", "tower7.jpeg", diff --git a/public/project/floors/MT21.js b/public/project/floors/MT21.js index 48ba21e..6bc32fd 100644 --- a/public/project/floors/MT21.js +++ b/public/project/floors/MT21.js @@ -133,7 +133,11 @@ main.floors.MT21= "\t[初级智人]\b[up,hero]智慧又是什么呢?", "\t[初级智人]\b[up,hero]智慧之神说它可以掌控万物,真的这么神奇吗...", "\t[初级智人]\b[up,hero]完全摸不到头脑。", - "\t[初级智人]\b[up,hero]或许智慧结晶会告诉我答案吧。" + "\t[初级智人]\b[up,hero]或许智慧结晶会告诉我答案吧。", + { + "type": "function", + "function": "function(){\ncore.showChapter('第二章 智慧')\n}" + } ], "false": [ { diff --git a/public/project/floors/MT22.js b/public/project/floors/MT22.js index 7070f61..b9e4461 100644 --- a/public/project/floors/MT22.js +++ b/public/project/floors/MT22.js @@ -26,9 +26,21 @@ main.floors.MT22= 8 ] } + ], + "3,9": [ + "第二章的加点已开启,可以在技能树的前置技能下方选择", + "如果你玩过上个版本,直接跳到了本章,记得查看背包里面的各种道具,尤其是百科全书" ] }, - "changeFloor": {}, + "changeFloor": { + "14,4": { + "floorId": "MT23", + "loc": [ + 0, + 4 + ] + } + }, "beforeBattle": {}, "afterBattle": {}, "afterGetItem": {}, @@ -39,17 +51,17 @@ main.floors.MT22= "map": [ [142,142,142,142,142,142,142,142,142, 91,143,143,143,143,143], [142,142,142,142,142,142,142,142,142, 0,143,143,143,143,143], - [142,142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], - [142,142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], - [142,142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94], - [142,142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], - [142,142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], - [142,142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], - [ 92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], - [143,143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], - [143,143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], - [143,143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], - [143,143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], + [142,142,482,482,492, 0, 0, 0, 0, 0,143,491,491,143,143], + [142,142,142,142,142, 0, 0, 0, 0, 0,143,143,494,143,143], + [142,142,482,482,492, 0, 0,484, 0,441, 0, 0, 0, 0, 94], + [142,142,142,142,142, 0, 0, 0, 0,143,143,143,143,143,143], + [142,142,482,482,492, 0, 0,484, 0,494,484,491,484,143,143], + [142,142,142,142,142, 0, 0, 0, 0,143,143,143,143,143,143], + [ 92, 0, 0, 0,441, 0, 0,484, 0, 0, 0, 0, 0,143,143], + [143,143, 0,129, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], + [143,143,492,143,492,143,492,143,492,143,492,143,492,143,143], + [143,143,482,143,482,143,482,143,482,143,482,143,482,143,143], + [143,143,482,143,482,143,482,143,482,143,482,143,482,143,143], [143,143,143,143,143,143,143,143,143,143,143,143,143,143,143], [143,143,143,143,143,143,143,143,143,143,143,143,143,143,143] ], diff --git a/public/project/floors/MT23.js b/public/project/floors/MT23.js index 4707b72..7ff713f 100644 --- a/public/project/floors/MT23.js +++ b/public/project/floors/MT23.js @@ -1,43 +1,65 @@ main.floors.MT23= { -"floorId": "MT23", -"title": "勇气之路", -"name": "23", -"width": 15, -"height": 15, -"canFlyTo": true, -"canFlyFrom": true, -"canUseQuickShop": true, -"cannotViewMap": false, -"images": [], -"ratio": 2, -"defaultGround": "grass", -"bgm": "plot1.mp3", -"firstArrive": [], -"eachArrive": [], -"parallelDo": "", -"events": {}, -"changeFloor": {}, -"afterBattle": {}, -"afterGetItem": {}, -"afterOpenDoor": {}, -"autoEvent": {}, -"cannotMove": {}, -"map": [ - [ 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, 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, 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, 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, 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, 0, 0, 0, 0, 0], - [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] + "floorId": "MT23", + "title": "智慧小径", + "name": "智慧小径", + "width": 15, + "height": 15, + "canFlyTo": true, + "canFlyFrom": true, + "canUseQuickShop": true, + "cannotViewMap": false, + "images": [], + "ratio": 2, + "defaultGround": "grass", + "bgm": "road.mp3", + "firstArrive": [], + "eachArrive": [], + "parallelDo": "", + "events": {}, + "changeFloor": { + "0,4": { + "floorId": "MT22", + "loc": [ + 14, + 4 + ] + } + }, + "beforeBattle": {}, + "afterBattle": {}, + "afterGetItem": {}, + "afterOpenDoor": {}, + "autoEvent": {}, + "cannotMove": {}, + "cannotMoveIn": {}, + "map": [ + [143,143,143,143,143,143,143,143,143,143,143,143, 91,143,143], + [143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143], + [143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94], + [143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143], + [ 92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143], + [143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143], + [143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143], + [143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143], + [143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143], + [143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143], + [143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143], + [143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143], + [143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143], + [143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143], + [143,143,143,143,143,143,143,143,143,143,143,143,143,143,143] ], + "bgmap": [ + +], + "fgmap": [ + +], + "bg2map": [ + +], + "fg2map": [ + +] } \ No newline at end of file diff --git a/public/project/floors/MT24.js b/public/project/floors/MT24.js index 61984bd..daed1a1 100644 --- a/public/project/floors/MT24.js +++ b/public/project/floors/MT24.js @@ -1,8 +1,8 @@ main.floors.MT24= { "floorId": "MT24", -"title": "勇气之路", -"name": "24", +"title": "智慧小径", +"name": "智慧小径", "width": 15, "height": 15, "canFlyTo": true, @@ -12,17 +12,19 @@ main.floors.MT24= "images": [], "ratio": 2, "defaultGround": "grass", -"bgm": "plot1.mp3", +"bgm": "road.mp3", "firstArrive": [], "eachArrive": [], "parallelDo": "", "events": {}, "changeFloor": {}, +"beforeBattle": {}, "afterBattle": {}, "afterGetItem": {}, "afterOpenDoor": {}, "autoEvent": {}, "cannotMove": {}, +"cannotMoveIn": {}, "map": [ [ 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], diff --git a/public/project/floors/MT25.js b/public/project/floors/MT25.js index 8e39e48..6b5448a 100644 --- a/public/project/floors/MT25.js +++ b/public/project/floors/MT25.js @@ -1,29 +1,31 @@ main.floors.MT25= { - "floorId": "MT25", - "title": "勇气之路", - "name": "25", - "width": 15, - "height": 15, - "canFlyTo": true, - "canFlyFrom": true, - "canUseQuickShop": true, - "cannotViewMap": false, - "images": [], - "ratio": 2, - "defaultGround": "grass", - "bgm": "plot1.mp3", - "firstArrive": [], - "eachArrive": [], - "parallelDo": "", - "events": {}, - "changeFloor": {}, - "afterBattle": {}, - "afterGetItem": {}, - "afterOpenDoor": {}, - "autoEvent": {}, - "cannotMove": {}, - "map": [ +"floorId": "MT25", +"title": "智慧小径", +"name": "智慧小径", +"width": 15, +"height": 15, +"canFlyTo": true, +"canFlyFrom": true, +"canUseQuickShop": true, +"cannotViewMap": false, +"images": [], +"ratio": 2, +"defaultGround": "grass", +"bgm": "road.mp3", +"firstArrive": [], +"eachArrive": [], +"parallelDo": "", +"events": {}, +"changeFloor": {}, +"beforeBattle": {}, +"afterBattle": {}, +"afterGetItem": {}, +"afterOpenDoor": {}, +"autoEvent": {}, +"cannotMove": {}, +"cannotMoveIn": {}, +"map": [ [ 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, 0, 0, 0, 0], @@ -40,11 +42,4 @@ main.floors.MT25= [ 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] ], - "beforeBattle": {}, - "bgmap": [ - -], - "fgmap": [ - -] } \ No newline at end of file diff --git a/public/project/floors/MT26.js b/public/project/floors/MT26.js new file mode 100644 index 0000000..feba81f --- /dev/null +++ b/public/project/floors/MT26.js @@ -0,0 +1,45 @@ +main.floors.MT26= +{ +"floorId": "MT26", +"title": "智慧小径", +"name": "智慧小径", +"width": 15, +"height": 15, +"canFlyTo": true, +"canFlyFrom": true, +"canUseQuickShop": true, +"cannotViewMap": false, +"images": [], +"ratio": 2, +"defaultGround": "grass", +"bgm": "road.mp3", +"firstArrive": [], +"eachArrive": [], +"parallelDo": "", +"events": {}, +"changeFloor": {}, +"beforeBattle": {}, +"afterBattle": {}, +"afterGetItem": {}, +"afterOpenDoor": {}, +"autoEvent": {}, +"cannotMove": {}, +"cannotMoveIn": {}, +"map": [ + [ 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, 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, 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, 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, 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, 0, 0, 0, 0, 0], + [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] +], +} \ No newline at end of file diff --git a/public/project/floors/MT27.js b/public/project/floors/MT27.js new file mode 100644 index 0000000..89f6bb0 --- /dev/null +++ b/public/project/floors/MT27.js @@ -0,0 +1,45 @@ +main.floors.MT27= +{ +"floorId": "MT27", +"title": "智慧小径", +"name": "智慧小径", +"width": 15, +"height": 15, +"canFlyTo": true, +"canFlyFrom": true, +"canUseQuickShop": true, +"cannotViewMap": false, +"images": [], +"ratio": 2, +"defaultGround": "grass", +"bgm": "road.mp3", +"firstArrive": [], +"eachArrive": [], +"parallelDo": "", +"events": {}, +"changeFloor": {}, +"beforeBattle": {}, +"afterBattle": {}, +"afterGetItem": {}, +"afterOpenDoor": {}, +"autoEvent": {}, +"cannotMove": {}, +"cannotMoveIn": {}, +"map": [ + [ 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, 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, 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, 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, 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, 0, 0, 0, 0, 0], + [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] +], +} \ No newline at end of file diff --git a/public/project/floors/MT28.js b/public/project/floors/MT28.js new file mode 100644 index 0000000..41fb38c --- /dev/null +++ b/public/project/floors/MT28.js @@ -0,0 +1,45 @@ +main.floors.MT28= +{ +"floorId": "MT28", +"title": "智慧小径", +"name": "智慧小径", +"width": 15, +"height": 15, +"canFlyTo": true, +"canFlyFrom": true, +"canUseQuickShop": true, +"cannotViewMap": false, +"images": [], +"ratio": 2, +"defaultGround": "grass", +"bgm": "road.mp3", +"firstArrive": [], +"eachArrive": [], +"parallelDo": "", +"events": {}, +"changeFloor": {}, +"beforeBattle": {}, +"afterBattle": {}, +"afterGetItem": {}, +"afterOpenDoor": {}, +"autoEvent": {}, +"cannotMove": {}, +"cannotMoveIn": {}, +"map": [ + [ 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, 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, 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, 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, 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, 0, 0, 0, 0, 0], + [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] +], +} \ No newline at end of file diff --git a/public/project/floors/MT29.js b/public/project/floors/MT29.js new file mode 100644 index 0000000..37bd785 --- /dev/null +++ b/public/project/floors/MT29.js @@ -0,0 +1,45 @@ +main.floors.MT29= +{ +"floorId": "MT29", +"title": "智慧小径", +"name": "智慧小径", +"width": 15, +"height": 15, +"canFlyTo": true, +"canFlyFrom": true, +"canUseQuickShop": true, +"cannotViewMap": false, +"images": [], +"ratio": 2, +"defaultGround": "grass", +"bgm": "road.mp3", +"firstArrive": [], +"eachArrive": [], +"parallelDo": "", +"events": {}, +"changeFloor": {}, +"beforeBattle": {}, +"afterBattle": {}, +"afterGetItem": {}, +"afterOpenDoor": {}, +"autoEvent": {}, +"cannotMove": {}, +"cannotMoveIn": {}, +"map": [ + [ 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, 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, 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, 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, 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, 0, 0, 0, 0, 0], + [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] +], +} \ No newline at end of file diff --git a/public/project/floors/MT30.js b/public/project/floors/MT30.js new file mode 100644 index 0000000..6712ea3 --- /dev/null +++ b/public/project/floors/MT30.js @@ -0,0 +1,45 @@ +main.floors.MT30= +{ +"floorId": "MT30", +"title": "智慧小径", +"name": "智慧小径", +"width": 15, +"height": 15, +"canFlyTo": true, +"canFlyFrom": true, +"canUseQuickShop": true, +"cannotViewMap": false, +"images": [], +"ratio": 2, +"defaultGround": "grass", +"bgm": "road.mp3", +"firstArrive": [], +"eachArrive": [], +"parallelDo": "", +"events": {}, +"changeFloor": {}, +"beforeBattle": {}, +"afterBattle": {}, +"afterGetItem": {}, +"afterOpenDoor": {}, +"autoEvent": {}, +"cannotMove": {}, +"cannotMoveIn": {}, +"map": [ + [ 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, 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, 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, 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, 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, 0, 0, 0, 0, 0], + [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] +], +} \ No newline at end of file diff --git a/public/project/functions.js b/public/project/functions.js index 3daf826..48358f7 100644 --- a/public/project/functions.js +++ b/public/project/functions.js @@ -966,6 +966,11 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = { hero_atk *= 1 + 0.1 * level; hero_def *= 1 - 0.1 * level; } + if (flags.shield && flags.shieldOn) { + const level = core.getSkillLevel(10); + hero_def *= 1 + 0.1 * level; + hero_atk *= 1 - 0.1 * level; + } // 饥渴 if (core.hasSpecial(mon_special, 7)) { hero_atk *= 1 - (enemy.hungry || 0) / 100; @@ -1244,6 +1249,15 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = { } } break; + case 51: // 3: 铸剑为盾 + if (!flags.shieldOn || flags.autoSkill) break; + console.log(1); + core.status.route.push('key:51'); // 将按键记在录像中 + core.playSound('光标移动'); + if (flags.shield) flags.shield = false; + else flags.shield = true; + core.updateStatusBar(); + break; case 53: // 5:读取自动存档(回退),方便手机版操作 core.doSL('autoSave', 'load'); break; diff --git a/public/project/images/skill10.png b/public/project/images/skill10.png new file mode 100644 index 0000000..711c0df Binary files /dev/null and b/public/project/images/skill10.png differ diff --git a/public/project/images/skill11.png b/public/project/images/skill11.png new file mode 100644 index 0000000..43549d1 Binary files /dev/null and b/public/project/images/skill11.png differ diff --git a/public/project/images/skill12.png b/public/project/images/skill12.png new file mode 100644 index 0000000..657eea6 Binary files /dev/null and b/public/project/images/skill12.png differ diff --git a/public/project/images/skill13.png b/public/project/images/skill13.png new file mode 100644 index 0000000..7e22e5a Binary files /dev/null and b/public/project/images/skill13.png differ diff --git a/public/project/images/skill14.png b/public/project/images/skill14.png new file mode 100644 index 0000000..faf8849 Binary files /dev/null and b/public/project/images/skill14.png differ diff --git a/public/project/images/skill8.png b/public/project/images/skill8.png new file mode 100644 index 0000000..2cb650f Binary files /dev/null and b/public/project/images/skill8.png differ diff --git a/public/project/images/skill9.png b/public/project/images/skill9.png new file mode 100644 index 0000000..b34d4d8 Binary files /dev/null and b/public/project/images/skill9.png differ diff --git a/public/project/items.js b/public/project/items.js index 20ccb96..35600dd 100644 --- a/public/project/items.js +++ b/public/project/items.js @@ -40,8 +40,8 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a = "cls": "items", "name": "小绿宝石", "text": ",护盾+${core.values.greenGem}", - "itemEffect": "core.status.hero.mdef += 20 * core.status.thisMap.ratio / core.getFlag(\"hard\")", - "itemEffectTip": ",智慧+${20 * core.status.thisMap.ratio / core.getFlag(\"hard\")}", + "itemEffect": "core.status.hero.mdef += 20 * core.status.thisMap.ratio / core.getFlag(\"hard\") * (core.getSkillLevel(11) / 20 + 1)", + "itemEffectTip": ",智慧+${20 * core.status.thisMap.ratio / core.getFlag(\"hard\") * (core.getSkillLevel(11) / 20 + 1)}", "useItemEffect": "core.status.hero.mdef += core.values.greenGem", "canUseItemEffect": "true" }, @@ -751,8 +751,8 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a = "cls": "items", "name": "中绿宝石", "text": ",护盾+${core.values.greenGem}", - "itemEffect": "core.status.hero.mdef += 40 * core.status.thisMap.ratio / core.getFlag(\"hard\")", - "itemEffectTip": ",智慧+${40 * core.status.thisMap.ratio / core.getFlag(\"hard\")}", + "itemEffect": "core.status.hero.mdef += 40 * core.status.thisMap.ratio / core.getFlag(\"hard\") * (core.getSkillLevel(11) / 20 + 1)", + "itemEffectTip": ",智慧+${40 * core.status.thisMap.ratio / core.getFlag(\"hard\") * (core.getSkillLevel(11) / 20 + 1)}", "useItemEffect": "core.status.hero.mdef += core.values.greenGem", "canUseItemEffect": "true" }, @@ -854,8 +854,8 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a = "cls": "items", "name": "大绿宝石", "text": ",护盾+${core.values.greenGem}", - "itemEffect": "core.status.hero.mdef += 80 * core.status.thisMap.ratio / core.getFlag(\"hard\")", - "itemEffectTip": ",智慧+${80 * core.status.thisMap.ratio / core.getFlag(\"hard\")}", + "itemEffect": "core.status.hero.mdef += 80 * core.status.thisMap.ratio / core.getFlag(\"hard\") * (core.getSkillLevel(11) / 20 + 1)", + "itemEffectTip": ",智慧+${80 * core.status.thisMap.ratio / core.getFlag(\"hard\") * (core.getSkillLevel(11) / 20 + 1)", "useItemEffect": "core.status.hero.mdef += core.values.greenGem", "canUseItemEffect": "true" }, @@ -1011,8 +1011,8 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a = "cls": "items", "name": "超大绿宝石", "text": ",护盾+${core.values.greenGem}", - "itemEffect": "core.status.hero.mdef += 160 * core.status.thisMap.ratio / core.getFlag(\"hard\")", - "itemEffectTip": ",智慧+${160 * core.status.thisMap.ratio / core.getFlag(\"hard\")}", + "itemEffect": "core.status.hero.mdef += 160 * core.status.thisMap.ratio / core.getFlag(\"hard\") * (core.getSkillLevel(11) / 20 + 1)", + "itemEffectTip": ",智慧+${160 * core.status.thisMap.ratio / core.getFlag(\"hard\") * (core.getSkillLevel(11) / 20 + 1)}", "useItemEffect": "core.status.hero.mdef += core.values.greenGem", "canUseItemEffect": "true" }, diff --git a/public/project/plugins.js b/public/project/plugins.js index d734148..2417f95 100644 --- a/public/project/plugins.js +++ b/public/project/plugins.js @@ -3931,6 +3931,105 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 = { max: 1, effect: ['战斗时智慧会充当护盾'] } + ], + chapter2: [ + { + index: 8, + title: '锋利', + desc: ['让剑变得更加锋利!每级使攻击增加1%(buff式增加)'], + consume: 'level > 5 ? 50 * level ** 2 : 250 * level + 250', + front: [], + loc: [1, 2], + max: 15, + effect: ['攻击增加${level}%'] + }, + { + index: 9, + title: '坚硬', + desc: [ + '让盾牌变得更加坚固!每级使防御增加1%(buff式增加)' + ], + consume: 'level > 5 ? 50 * level ** 2 : 250 * level + 250', + front: [], + loc: [1, 4], + max: 15, + effect: ['防御增加${level}%'] + }, + { + index: 10, + title: '铸剑为盾', + desc: [ + '主动技能,快捷键3,', + '减少一定的攻击,增加一定的防御' + ], + consume: '500 * level + 1000', + front: [[9, 5]], + loc: [2, 5], + max: 5, + effect: [ + '增加${level * 10}%的防御,减少${level * 10}%的攻击' + ] + }, + { + index: 11, + title: '学习', + desc: [ + '主动技能,可以消耗500智慧学习一个怪物的技能,', + '持续5场战斗,每学习一次消耗的智慧点增加200,每次升级使持续的战斗次数增加3次。更多信息可在学习后在百科全书查看。' + ], + consume: '2500 * level ** 2 + 2500', + front: [ + [8, 10], + [12, 5] + ], + loc: [4, 1], + max: 6, + effect: ['学习怪物技能,持续${level * 3 + 2}场战斗'] + }, + { + index: 12, + title: '聪慧', + desc: [ + '使主角变得更加聪明,每级使绿宝石增加的智慧点上升5%' + ], + consume: + 'level > 5 ? 100 * level ** 2 : 250 * level + 1250', + front: [ + [8, 10], + [9, 10] + ], + loc: [3, 3], + max: 20, + effect: ['增加${level * 5}%绿宝石效果'] + }, + { + index: 13, + title: '治愈', + desc: ['每级使血瓶的加血量增加2%'], + consume: + 'level > 5 ? 100 * level ** 2 : 250 * level + 1250', + front: [[10, 3]], + loc: [4, 5], + max: 20, + effect: ['增加${level * 2}%的血瓶回血量'] + }, + { + index: 14, + title: '胜利之号', + desc: [ + '第二章终极技能,', + '每打一个怪物,勇士在本楼层对怪物造成的伤害便增加1%' + ], + consume: '15000', + front: [ + [13, 10], + [12, 10], + [11, 3] + ], + loc: [5, 3], + max: 1, + effect: ['每打一个怪,勇士造成的伤害增加1%'] + } ] }; @@ -4016,6 +4115,15 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 = { case 7: // 无上之盾 core.setFlag('superSheild', true); break; + case 8: // 锋利 +1%攻击 + core.addBuff('atk', 0.01); + break; + case 9: // 锋利 +1%防御 + core.addBuff('def', 0.01); + break; + case 10: // 铸剑为盾 + core.setFlag('shieldOn', true); + break; } const consume = core.getSkillConsume(skill); core.status.hero.mdef -= consume; diff --git a/src/data/skill.json b/src/data/skill.json index 7c93ffd..149df80 100644 --- a/src/data/skill.json +++ b/src/data/skill.json @@ -25,5 +25,16 @@ "如果前方为可通行的地面,则不能使用该技能,如果前方为怪物,则将怪物移至勇士视线上第一个不能通行的方块后", "如果前方为障碍物,则直接跳到该障碍物的后方。" ] + }, + "shield": { + "text": "3:铸剑为盾", + "opened": "core.getSkillLevel(10) > 0", + "desc": [ + "快捷键3,开启后勇士防御增加${level:10 * 10}%,", + "同时攻击减少${level:10 * 10}%。", + "
", + "
", + "当前等级:${level:10}" + ] } } \ No newline at end of file diff --git a/src/plugin/ui/fly.ts b/src/plugin/ui/fly.ts index 323fea9..84af182 100644 --- a/src/plugin/ui/fly.ts +++ b/src/plugin/ui/fly.ts @@ -38,6 +38,7 @@ const arrow: Partial> = { * 切分地图区域 */ export function splitArea() { + area = {}; const used: FloorIds[] = []; for (const id of core.floorIds) { if (used.includes(id) || core.status.maps[id].deleted) continue; diff --git a/src/source/data.d.ts b/src/source/data.d.ts index 714d0d5..d14ee37 100644 --- a/src/source/data.d.ts +++ b/src/source/data.d.ts @@ -30,6 +30,14 @@ type FloorIds = | 'tower6' | 'tower7' | 'MT22' + | 'MT23' + | 'MT24' + | 'MT25' + | 'MT26' + | 'MT27' + | 'MT28' + | 'MT29' + | 'MT30' type ImageIds = | 'IQ.png' @@ -48,12 +56,19 @@ type ImageIds = | 'skill.png' | 'skill0.png' | 'skill1.png' + | 'skill10.png' + | 'skill11.png' + | 'skill12.png' + | 'skill13.png' + | 'skill14.png' | 'skill2.png' | 'skill3.png' | 'skill4.png' | 'skill5.png' | 'skill6.png' | 'skill7.png' + | 'skill8.png' + | 'skill9.png' | 'title.jpg' | 'tower.jpg' | 'tower7.jpeg' diff --git a/src/types/plugin.d.ts b/src/types/plugin.d.ts index aa137d9..9912074 100644 --- a/src/types/plugin.d.ts +++ b/src/types/plugin.d.ts @@ -279,7 +279,7 @@ interface MiniMap { splitArea(): void; } -type Chapter = 'chapter1'; +type Chapter = 'chapter1' | 'chapter2'; interface Skill { index: number; diff --git a/src/ui/fly.vue b/src/ui/fly.vue index 0130c44..c62d8b7 100644 --- a/src/ui/fly.vue +++ b/src/ui/fly.vue @@ -475,13 +475,14 @@ function changeFloorByDir(dir: Dir) { function locateMap(id: FloorIds) { const data = getMapDrawData( id, - noBorder.value ? 5 : 0, + noBorder.value ? 0 : 5, // 可恶的0和5,写反了找一个多小时 noBorder.value ? 0.5 : 1 ); if (!data.locs[id]) return; + const [x, y] = data.locs[id]!; - ox = (-x + data.width / 2) * scale; - oy = (-y + data.height / 2) * scale; + ox = (-x + data.width / 2 - 5) * scale; + oy = (-y + data.height / 2 - 5) * scale; } // -------------------- 键盘事件 diff --git a/src/ui/skillTree.vue b/src/ui/skillTree.vue index 5839f30..5c86c71 100644 --- a/src/ui/skillTree.vue +++ b/src/ui/skillTree.vue @@ -30,7 +30,9 @@ id="divider-vertical" >
- 当前等级:{{ level }} + 当前等级:{{ level }} / {{ skill.max }} ('chapter1'); const update = ref(false); const chapterDict = { - chapter1: '第一章' + chapter1: '第一章', + chapter2: '第二章' }; +flags.skillTree ??= 0; + const chapterList = Object.keys(core.plugin.skills) as Chapter[]; +selected.value = core.plugin.skills[chapterList[flags.skillTree]][0].index; +chapter.value = chapterList[flags.skillTree]; + watch(selected, draw); watch(update, () => (mdef.value = core.status.hero.mdef)); @@ -276,8 +284,13 @@ onUnmounted(() => { function selectChapter(delta: number) { const now = chapterList.indexOf(chapter.value); const to = now + delta; - if (has(chapterList[to])) { + + if (has(chapterList[to]) && flags.chapter > to) { + selected.value = core.plugin.skills[chapterList[to]][0].index; chapter.value = chapterList[to]; + update.value = !update.value; + flags.skillTree = to; + draw(); } } diff --git a/src/ui/statusBar.vue b/src/ui/statusBar.vue index 53b7b72..e4b77e1 100644 --- a/src/ui/statusBar.vue +++ b/src/ui/statusBar.vue @@ -167,6 +167,12 @@ function update() { lvName.value = core.getLvName(hero.lv); if (flags.blade && flags.bladeOn) { skill.value = '断灭之刃'; + hero.atk! *= 1 + core.getSkillLevel(2) / 10; + hero.def! *= 1 - core.getSkillLevel(2) / 10; + } else if (flags.shield && flags.shieldOn) { + skill.value = '铸剑为盾'; + hero.def! *= 1 + core.getSkillLevel(10) / 10; + hero.atk! *= 1 - core.getSkillLevel(10) / 10; } else { skill.value = '无'; }