第二章技能树,修复小地图的bug

This commit is contained in:
unanmed 2023-01-04 22:11:08 +08:00
parent 14486f970f
commit 0b9360e55a
30 changed files with 549 additions and 103 deletions

3
.gitignore vendored
View File

@ -27,4 +27,5 @@ dist-ssr
*.sw? *.sw?
dist.zip dist.zip
story.md story.md
dist.rar

View File

@ -7,6 +7,7 @@
"dev": "vite", "dev": "vite",
"build": "vue-tsc && vite build && ts-node-esm script/compress.ts", "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-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": "vite preview",
"preview-node": "cd dist && node server.cjs", "preview-node": "cd dist && node server.cjs",
"update": "ts-node-esm script/update.ts", "update": "ts-node-esm script/update.ts",

View File

@ -31,7 +31,15 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
"tower5", "tower5",
"tower6", "tower6",
"tower7", "tower7",
"MT22" "MT22",
"MT23",
"MT24",
"MT25",
"MT26",
"MT27",
"MT28",
"MT29",
"MT30"
], ],
"floorPartitions": [ "floorPartitions": [
[ [
@ -59,12 +67,19 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
"skill.png", "skill.png",
"skill0.png", "skill0.png",
"skill1.png", "skill1.png",
"skill10.png",
"skill11.png",
"skill12.png",
"skill13.png",
"skill14.png",
"skill2.png", "skill2.png",
"skill3.png", "skill3.png",
"skill4.png", "skill4.png",
"skill5.png", "skill5.png",
"skill6.png", "skill6.png",
"skill7.png", "skill7.png",
"skill8.png",
"skill9.png",
"title.jpg", "title.jpg",
"tower.jpg", "tower.jpg",
"tower7.jpeg", "tower7.jpeg",

View File

@ -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]完全摸不到头脑。", "\t[初级智人]\b[up,hero]完全摸不到头脑。",
"\t[初级智人]\b[up,hero]或许智慧结晶会告诉我答案吧。" "\t[初级智人]\b[up,hero]或许智慧结晶会告诉我答案吧。",
{
"type": "function",
"function": "function(){\ncore.showChapter('第二章 智慧')\n}"
}
], ],
"false": [ "false": [
{ {

View File

@ -26,9 +26,21 @@ main.floors.MT22=
8 8
] ]
} }
],
"3,9": [
"第二章的加点已开启,可以在技能树的前置技能下方选择",
"如果你玩过上个版本,直接跳到了本章,记得查看背包里面的各种道具,尤其是百科全书"
] ]
}, },
"changeFloor": {}, "changeFloor": {
"14,4": {
"floorId": "MT23",
"loc": [
0,
4
]
}
},
"beforeBattle": {}, "beforeBattle": {},
"afterBattle": {}, "afterBattle": {},
"afterGetItem": {}, "afterGetItem": {},
@ -39,17 +51,17 @@ main.floors.MT22=
"map": [ "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, 91,143,143,143,143,143],
[142,142,142,142,142,142,142,142,142, 0,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,482,482,492, 0, 0, 0, 0, 0,143,491,491,143,143],
[142,142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], [142,142,142,142,142, 0, 0, 0, 0, 0,143,143,494,143,143],
[142,142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94], [142,142,482,482,492, 0, 0,484, 0,441, 0, 0, 0, 0, 94],
[142,142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], [142,142,142,142,142, 0, 0, 0, 0,143,143,143,143,143,143],
[142,142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], [142,142,482,482,492, 0, 0,484, 0,494,484,491,484,143,143],
[142,142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], [142,142,142,142,142, 0, 0, 0, 0,143,143,143,143,143,143],
[ 92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], [ 92, 0, 0, 0,441, 0, 0,484, 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,129, 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,492,143,492,143,492,143,492,143,492,143,492,143,143],
[143,143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143,143], [143,143,482,143,482,143,482,143,482,143,482,143,482,143,143],
[143,143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,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],
[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]
], ],

View File

@ -1,43 +1,65 @@
main.floors.MT23= main.floors.MT23=
{ {
"floorId": "MT23", "floorId": "MT23",
"title": "勇气之路", "title": "智慧小径",
"name": "23", "name": "智慧小径",
"width": 15, "width": 15,
"height": 15, "height": 15,
"canFlyTo": true, "canFlyTo": true,
"canFlyFrom": true, "canFlyFrom": true,
"canUseQuickShop": true, "canUseQuickShop": true,
"cannotViewMap": false, "cannotViewMap": false,
"images": [], "images": [],
"ratio": 2, "ratio": 2,
"defaultGround": "grass", "defaultGround": "grass",
"bgm": "plot1.mp3", "bgm": "road.mp3",
"firstArrive": [], "firstArrive": [],
"eachArrive": [], "eachArrive": [],
"parallelDo": "", "parallelDo": "",
"events": {}, "events": {},
"changeFloor": {}, "changeFloor": {
"afterBattle": {}, "0,4": {
"afterGetItem": {}, "floorId": "MT22",
"afterOpenDoor": {}, "loc": [
"autoEvent": {}, 14,
"cannotMove": {}, 4
"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], "beforeBattle": {},
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], "afterBattle": {},
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], "afterGetItem": {},
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], "afterOpenDoor": {},
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], "autoEvent": {},
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], "cannotMove": {},
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], "cannotMoveIn": {},
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], "map": [
[ 0, 0, 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, 91,143,143],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,143],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [ 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": [
]
} }

View File

@ -1,8 +1,8 @@
main.floors.MT24= main.floors.MT24=
{ {
"floorId": "MT24", "floorId": "MT24",
"title": "勇气之路", "title": "智慧小径",
"name": "24", "name": "智慧小径",
"width": 15, "width": 15,
"height": 15, "height": 15,
"canFlyTo": true, "canFlyTo": true,
@ -12,17 +12,19 @@ main.floors.MT24=
"images": [], "images": [],
"ratio": 2, "ratio": 2,
"defaultGround": "grass", "defaultGround": "grass",
"bgm": "plot1.mp3", "bgm": "road.mp3",
"firstArrive": [], "firstArrive": [],
"eachArrive": [], "eachArrive": [],
"parallelDo": "", "parallelDo": "",
"events": {}, "events": {},
"changeFloor": {}, "changeFloor": {},
"beforeBattle": {},
"afterBattle": {}, "afterBattle": {},
"afterGetItem": {}, "afterGetItem": {},
"afterOpenDoor": {}, "afterOpenDoor": {},
"autoEvent": {}, "autoEvent": {},
"cannotMove": {}, "cannotMove": {},
"cannotMoveIn": {},
"map": [ "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],

View File

@ -1,29 +1,31 @@
main.floors.MT25= main.floors.MT25=
{ {
"floorId": "MT25", "floorId": "MT25",
"title": "勇气之路", "title": "智慧小径",
"name": "25", "name": "智慧小径",
"width": 15, "width": 15,
"height": 15, "height": 15,
"canFlyTo": true, "canFlyTo": true,
"canFlyFrom": true, "canFlyFrom": true,
"canUseQuickShop": true, "canUseQuickShop": true,
"cannotViewMap": false, "cannotViewMap": false,
"images": [], "images": [],
"ratio": 2, "ratio": 2,
"defaultGround": "grass", "defaultGround": "grass",
"bgm": "plot1.mp3", "bgm": "road.mp3",
"firstArrive": [], "firstArrive": [],
"eachArrive": [], "eachArrive": [],
"parallelDo": "", "parallelDo": "",
"events": {}, "events": {},
"changeFloor": {}, "changeFloor": {},
"afterBattle": {}, "beforeBattle": {},
"afterGetItem": {}, "afterBattle": {},
"afterOpenDoor": {}, "afterGetItem": {},
"autoEvent": {}, "afterOpenDoor": {},
"cannotMove": {}, "autoEvent": {},
"map": [ "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],
@ -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],
[ 0, 0, 0, 0, 0, 0, 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": [
]
} }

View File

@ -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]
],
}

View File

@ -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]
],
}

View File

@ -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]
],
}

View File

@ -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]
],
}

View File

@ -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]
],
}

View File

@ -966,6 +966,11 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = {
hero_atk *= 1 + 0.1 * level; hero_atk *= 1 + 0.1 * level;
hero_def *= 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)) { if (core.hasSpecial(mon_special, 7)) {
hero_atk *= 1 - (enemy.hungry || 0) / 100; hero_atk *= 1 - (enemy.hungry || 0) / 100;
@ -1244,6 +1249,15 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = {
} }
} }
break; 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读取自动存档回退方便手机版操作 case 53: // 5读取自动存档回退方便手机版操作
core.doSL('autoSave', 'load'); core.doSL('autoSave', 'load');
break; break;

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

View File

@ -40,8 +40,8 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a =
"cls": "items", "cls": "items",
"name": "小绿宝石", "name": "小绿宝石",
"text": ",护盾+${core.values.greenGem}", "text": ",护盾+${core.values.greenGem}",
"itemEffect": "core.status.hero.mdef += 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\")}", "itemEffectTip": ",智慧+${20 * core.status.thisMap.ratio / core.getFlag(\"hard\") * (core.getSkillLevel(11) / 20 + 1)}",
"useItemEffect": "core.status.hero.mdef += core.values.greenGem", "useItemEffect": "core.status.hero.mdef += core.values.greenGem",
"canUseItemEffect": "true" "canUseItemEffect": "true"
}, },
@ -751,8 +751,8 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a =
"cls": "items", "cls": "items",
"name": "中绿宝石", "name": "中绿宝石",
"text": ",护盾+${core.values.greenGem}", "text": ",护盾+${core.values.greenGem}",
"itemEffect": "core.status.hero.mdef += 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\")}", "itemEffectTip": ",智慧+${40 * core.status.thisMap.ratio / core.getFlag(\"hard\") * (core.getSkillLevel(11) / 20 + 1)}",
"useItemEffect": "core.status.hero.mdef += core.values.greenGem", "useItemEffect": "core.status.hero.mdef += core.values.greenGem",
"canUseItemEffect": "true" "canUseItemEffect": "true"
}, },
@ -854,8 +854,8 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a =
"cls": "items", "cls": "items",
"name": "大绿宝石", "name": "大绿宝石",
"text": ",护盾+${core.values.greenGem}", "text": ",护盾+${core.values.greenGem}",
"itemEffect": "core.status.hero.mdef += 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\")}", "itemEffectTip": ",智慧+${80 * core.status.thisMap.ratio / core.getFlag(\"hard\") * (core.getSkillLevel(11) / 20 + 1)",
"useItemEffect": "core.status.hero.mdef += core.values.greenGem", "useItemEffect": "core.status.hero.mdef += core.values.greenGem",
"canUseItemEffect": "true" "canUseItemEffect": "true"
}, },
@ -1011,8 +1011,8 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a =
"cls": "items", "cls": "items",
"name": "超大绿宝石", "name": "超大绿宝石",
"text": ",护盾+${core.values.greenGem}", "text": ",护盾+${core.values.greenGem}",
"itemEffect": "core.status.hero.mdef += 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\")}", "itemEffectTip": ",智慧+${160 * core.status.thisMap.ratio / core.getFlag(\"hard\") * (core.getSkillLevel(11) / 20 + 1)}",
"useItemEffect": "core.status.hero.mdef += core.values.greenGem", "useItemEffect": "core.status.hero.mdef += core.values.greenGem",
"canUseItemEffect": "true" "canUseItemEffect": "true"
}, },

View File

@ -3931,6 +3931,105 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 = {
max: 1, max: 1,
effect: ['战斗时智慧会充当护盾'] 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: [
'<span style="color: gold">主动技能快捷键3</span>',
'减少一定的攻击,增加一定的防御'
],
consume: '500 * level + 1000',
front: [[9, 5]],
loc: [2, 5],
max: 5,
effect: [
'增加${level * 10}%的防御,减少${level * 10}%的攻击'
]
},
{
index: 11,
title: '学习',
desc: [
'<span style="color: gold">主动技能</span>可以消耗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: [
'<span style="color: #dd4">第二章终极技能</span>',
'每打一个怪物勇士在本楼层对怪物造成的伤害便增加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: // 无上之盾 case 7: // 无上之盾
core.setFlag('superSheild', true); core.setFlag('superSheild', true);
break; 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); const consume = core.getSkillConsume(skill);
core.status.hero.mdef -= consume; core.status.hero.mdef -= consume;

View File

@ -25,5 +25,16 @@
"如果前方为可通行的地面,则不能使用该技能,如果前方为怪物,则将怪物移至勇士视线上第一个不能通行的方块后", "如果前方为可通行的地面,则不能使用该技能,如果前方为怪物,则将怪物移至勇士视线上第一个不能通行的方块后",
"如果前方为障碍物,则直接跳到该障碍物的后方。" "如果前方为障碍物,则直接跳到该障碍物的后方。"
] ]
},
"shield": {
"text": "3铸剑为盾",
"opened": "core.getSkillLevel(10) > 0",
"desc": [
"<span style=\"color: gold\">快捷键3</span>,开启后勇士防御增加${level:10 * 10}%",
"同时攻击减少${level:10 * 10}%。",
"<br>",
"<br>",
"当前等级:${level:10}"
]
} }
} }

View File

@ -38,6 +38,7 @@ const arrow: Partial<Record<AllIds, Dir>> = {
* *
*/ */
export function splitArea() { export function splitArea() {
area = {};
const used: FloorIds[] = []; const used: FloorIds[] = [];
for (const id of core.floorIds) { for (const id of core.floorIds) {
if (used.includes(id) || core.status.maps[id].deleted) continue; if (used.includes(id) || core.status.maps[id].deleted) continue;

15
src/source/data.d.ts vendored
View File

@ -30,6 +30,14 @@ type FloorIds =
| 'tower6' | 'tower6'
| 'tower7' | 'tower7'
| 'MT22' | 'MT22'
| 'MT23'
| 'MT24'
| 'MT25'
| 'MT26'
| 'MT27'
| 'MT28'
| 'MT29'
| 'MT30'
type ImageIds = type ImageIds =
| 'IQ.png' | 'IQ.png'
@ -48,12 +56,19 @@ type ImageIds =
| 'skill.png' | 'skill.png'
| 'skill0.png' | 'skill0.png'
| 'skill1.png' | 'skill1.png'
| 'skill10.png'
| 'skill11.png'
| 'skill12.png'
| 'skill13.png'
| 'skill14.png'
| 'skill2.png' | 'skill2.png'
| 'skill3.png' | 'skill3.png'
| 'skill4.png' | 'skill4.png'
| 'skill5.png' | 'skill5.png'
| 'skill6.png' | 'skill6.png'
| 'skill7.png' | 'skill7.png'
| 'skill8.png'
| 'skill9.png'
| 'title.jpg' | 'title.jpg'
| 'tower.jpg' | 'tower.jpg'
| 'tower7.jpeg' | 'tower7.jpeg'

View File

@ -279,7 +279,7 @@ interface MiniMap {
splitArea(): void; splitArea(): void;
} }
type Chapter = 'chapter1'; type Chapter = 'chapter1' | 'chapter2';
interface Skill { interface Skill {
index: number; index: number;

View File

@ -475,13 +475,14 @@ function changeFloorByDir(dir: Dir) {
function locateMap(id: FloorIds) { function locateMap(id: FloorIds) {
const data = getMapDrawData( const data = getMapDrawData(
id, id,
noBorder.value ? 5 : 0, noBorder.value ? 0 : 5, // 05
noBorder.value ? 0.5 : 1 noBorder.value ? 0.5 : 1
); );
if (!data.locs[id]) return; if (!data.locs[id]) return;
const [x, y] = data.locs[id]!; const [x, y] = data.locs[id]!;
ox = (-x + data.width / 2) * scale; ox = (-x + data.width / 2 - 5) * scale;
oy = (-y + data.height / 2) * scale; oy = (-y + data.height / 2 - 5) * scale;
} }
// -------------------- // --------------------

View File

@ -30,7 +30,9 @@
id="divider-vertical" id="divider-vertical"
></a-divider> ></a-divider>
<div id="skill-upgrade-info"> <div id="skill-upgrade-info">
<span id="skill-level">当前等级{{ level }}</span> <span id="skill-level"
>当前等级{{ level }} / {{ skill.max }}</span
>
<a-divider dashed class="upgrade-divider"></a-divider> <a-divider dashed class="upgrade-divider"></a-divider>
<span <span
v-if="level < skill.max" v-if="level < skill.max"
@ -88,11 +90,17 @@ const chapter = ref<Chapter>('chapter1');
const update = ref(false); const update = ref(false);
const chapterDict = { const chapterDict = {
chapter1: '第一章' chapter1: '第一章',
chapter2: '第二章'
}; };
flags.skillTree ??= 0;
const chapterList = Object.keys(core.plugin.skills) as Chapter[]; 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(selected, draw);
watch(update, () => (mdef.value = core.status.hero.mdef)); watch(update, () => (mdef.value = core.status.hero.mdef));
@ -276,8 +284,13 @@ onUnmounted(() => {
function selectChapter(delta: number) { function selectChapter(delta: number) {
const now = chapterList.indexOf(chapter.value); const now = chapterList.indexOf(chapter.value);
const to = now + delta; 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]; chapter.value = chapterList[to];
update.value = !update.value;
flags.skillTree = to;
draw();
} }
} }
</script> </script>

View File

@ -167,6 +167,12 @@ function update() {
lvName.value = core.getLvName(hero.lv); lvName.value = core.getLvName(hero.lv);
if (flags.blade && flags.bladeOn) { if (flags.blade && flags.bladeOn) {
skill.value = '断灭之刃'; 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 { } else {
skill.value = '无'; skill.value = '无';
} }