51_AstralParty/project/floors/SC40_4.js
2025-09-11 22:30:07 +08:00

868 lines
31 KiB
JavaScript

main.floors.SC40_4=
{
"floorId": "SC40_4",
"title": "御魂庆典:40F",
"name": "第 40 层",
"width": 13,
"height": 13,
"map": [
[330,330,330,330,330,330,330,330,330,330,330,330,330],
[330,402, 21, 1, 0, 0,226, 0, 0, 1, 32,412,330],
[330,402, 21, 85, 0, 0, 0, 0, 0, 85, 32,412,330],
[330,402, 21, 1,227,227,227, 0, 0, 1, 32,412,330],
[330, 1, 1, 1, 0, 0,224,224,224, 1, 1, 1,330],
[330, 1, 1, 1,225,225,225, 0, 0, 1, 1, 1,330],
[330, 1, 1, 1, 0, 0,212,212,212, 1, 1, 1,330],
[330, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1,330],
[330, 1, 1, 1, 1, 1, 83, 1, 1, 1, 1, 1,330],
[330,412, 21, 0, 1,216, 0,216, 1, 31,224, 0,330],
[330, 32, 0, 0, 1, 0, 0, 0, 1,225, 0, 0,330],
[330,402, 0,227, 82, 0, 0, 0, 81, 0, 0, 88,330],
[330,330,330,330,330,330,330,330,330,330,330,330,330]
],
"canFlyTo": true,
"canFlyFrom": true,
"canUseQuickShop": true,
"images": [],
"ratio": 4,
"defaultGround": "ground",
"bgm": "battle.mp3",
"firstArrive": null,
"eachArrive": [],
"parallelDo": "",
"events": {
"6,1": [
{
"type": "if",
"condition": "flag:40F",
"true": [
{
"type": "changeFloor",
"floorId": "SC41_4",
"loc": [
6,
2
],
"direction": "down",
"time": 0
}
],
"false": []
}
]
},
"changeFloor": {
"11,11": {
"floorId": ":before",
"stair": "upFloor"
}
},
"afterBattle": {
"6,1": [
{
"type": "function",
"function": "function(){\nvar bool = true;\nvar loc_arr = [\n\t[4, 3],\n\t[5, 3],\n\t[6, 3],\n\t[6, 4],\n\t[7, 4],\n\t[8, 4],\n\t[4, 5],\n\t[5, 5],\n\t[6, 5],\n\t[6, 6],\n\t[7, 6],\n\t[8, 6],\n\t[6, 1]\n]\nloc_arr.forEach(loc => {\n\tif (core.getBlockCls(loc[0], loc[1]) == \"enemys\") {\n\t\tbool = false;\n\t}\n});\ncore.setFlag(\"open_yes\", bool)\n}"
},
{
"type": "if",
"condition": "flag:open_yes",
"true": [
"\t[骑士队长,yellowKnight]这次先饶了你,下次碰到我会和你正式的决斗,你最好投降。",
{
"type": "playSound",
"name": "door.mp3"
},
{
"type": "openDoor",
"loc": [
3,
2
],
"async": true
},
{
"type": "openDoor",
"loc": [
9,
2
]
},
{
"type": "waitAsync"
},
{
"type": "show",
"loc": [
[
6,
1
]
]
},
{
"type": "setBlock",
"number": "87",
"loc": [
[
6,
1
]
]
},
{
"type": "setValue",
"name": "flag:40F",
"value": "1"
}
]
}
],
"4,3": [
{
"type": "function",
"function": "function(){\nvar bool = true;\nvar loc_arr = [\n\t[4, 3],\n\t[5, 3],\n\t[6, 3],\n\t[6, 4],\n\t[7, 4],\n\t[8, 4],\n\t[4, 5],\n\t[5, 5],\n\t[6, 5],\n\t[6, 6],\n\t[7, 6],\n\t[8, 6],\n\t[6, 1]\n]\nloc_arr.forEach(loc => {\n\tif (core.getBlockCls(loc[0], loc[1]) == \"enemys\") {\n\t\tbool = false;\n\t}\n});\ncore.setFlag(\"open_yes\", bool)\n}"
},
{
"type": "if",
"condition": "flag:open_yes",
"true": [
"\t[骑士队长,yellowKnight]这次先饶了你,下次碰到我会和你正式的决斗,你最好投降。",
{
"type": "playSound",
"name": "door.mp3"
},
{
"type": "openDoor",
"loc": [
3,
2
],
"async": true
},
{
"type": "openDoor",
"loc": [
9,
2
]
},
{
"type": "waitAsync"
},
{
"type": "show",
"loc": [
[
6,
1
]
]
},
{
"type": "setBlock",
"number": "87",
"loc": [
[
6,
1
]
]
},
{
"type": "setValue",
"name": "flag:40F",
"value": "1"
}
]
}
],
"5,3": [
{
"type": "function",
"function": "function(){\nvar bool = true;\nvar loc_arr = [\n\t[4, 3],\n\t[5, 3],\n\t[6, 3],\n\t[6, 4],\n\t[7, 4],\n\t[8, 4],\n\t[4, 5],\n\t[5, 5],\n\t[6, 5],\n\t[6, 6],\n\t[7, 6],\n\t[8, 6],\n\t[6, 1]\n]\nloc_arr.forEach(loc => {\n\tif (core.getBlockCls(loc[0], loc[1]) == \"enemys\") {\n\t\tbool = false;\n\t}\n});\ncore.setFlag(\"open_yes\", bool)\n}"
},
{
"type": "if",
"condition": "flag:open_yes",
"true": [
"\t[骑士队长,yellowKnight]这次先饶了你,下次碰到我会和你正式的决斗,你最好投降。",
{
"type": "playSound",
"name": "door.mp3"
},
{
"type": "openDoor",
"loc": [
3,
2
],
"async": true
},
{
"type": "openDoor",
"loc": [
9,
2
]
},
{
"type": "waitAsync"
},
{
"type": "show",
"loc": [
[
6,
1
]
]
},
{
"type": "setBlock",
"number": "87",
"loc": [
[
6,
1
]
]
},
{
"type": "setValue",
"name": "flag:40F",
"value": "1"
}
]
}
],
"6,3": [
{
"type": "function",
"function": "function(){\nvar bool = true;\nvar loc_arr = [\n\t[4, 3],\n\t[5, 3],\n\t[6, 3],\n\t[6, 4],\n\t[7, 4],\n\t[8, 4],\n\t[4, 5],\n\t[5, 5],\n\t[6, 5],\n\t[6, 6],\n\t[7, 6],\n\t[8, 6],\n\t[6, 1]\n]\nloc_arr.forEach(loc => {\n\tif (core.getBlockCls(loc[0], loc[1]) == \"enemys\") {\n\t\tbool = false;\n\t}\n});\ncore.setFlag(\"open_yes\", bool)\n}"
},
{
"type": "if",
"condition": "flag:open_yes",
"true": [
"\t[骑士队长,yellowKnight]这次先饶了你,下次碰到我会和你正式的决斗,你最好投降。",
{
"type": "playSound",
"name": "door.mp3"
},
{
"type": "openDoor",
"loc": [
3,
2
],
"async": true
},
{
"type": "openDoor",
"loc": [
9,
2
]
},
{
"type": "waitAsync"
},
{
"type": "show",
"loc": [
[
6,
1
]
]
},
{
"type": "setBlock",
"number": "87",
"loc": [
[
6,
1
]
]
},
{
"type": "setValue",
"name": "flag:40F",
"value": "1"
}
]
}
],
"6,4": [
{
"type": "function",
"function": "function(){\nvar bool = true;\nvar loc_arr = [\n\t[4, 3],\n\t[5, 3],\n\t[6, 3],\n\t[6, 4],\n\t[7, 4],\n\t[8, 4],\n\t[4, 5],\n\t[5, 5],\n\t[6, 5],\n\t[6, 6],\n\t[7, 6],\n\t[8, 6],\n\t[6, 1]\n]\nloc_arr.forEach(loc => {\n\tif (core.getBlockCls(loc[0], loc[1]) == \"enemys\") {\n\t\tbool = false;\n\t}\n});\ncore.setFlag(\"open_yes\", bool)\n}"
},
{
"type": "if",
"condition": "flag:open_yes",
"true": [
"\t[骑士队长,yellowKnight]这次先饶了你,下次碰到我会和你正式的决斗,你最好投降。",
{
"type": "playSound",
"name": "door.mp3"
},
{
"type": "openDoor",
"loc": [
3,
2
],
"async": true
},
{
"type": "openDoor",
"loc": [
9,
2
]
},
{
"type": "waitAsync"
},
{
"type": "show",
"loc": [
[
6,
1
]
]
},
{
"type": "setBlock",
"number": "87",
"loc": [
[
6,
1
]
]
},
{
"type": "setValue",
"name": "flag:40F",
"value": "1"
}
]
}
],
"7,4": [
{
"type": "function",
"function": "function(){\nvar bool = true;\nvar loc_arr = [\n\t[4, 3],\n\t[5, 3],\n\t[6, 3],\n\t[6, 4],\n\t[7, 4],\n\t[8, 4],\n\t[4, 5],\n\t[5, 5],\n\t[6, 5],\n\t[6, 6],\n\t[7, 6],\n\t[8, 6],\n\t[6, 1]\n]\nloc_arr.forEach(loc => {\n\tif (core.getBlockCls(loc[0], loc[1]) == \"enemys\") {\n\t\tbool = false;\n\t}\n});\ncore.setFlag(\"open_yes\", bool)\n}"
},
{
"type": "if",
"condition": "flag:open_yes",
"true": [
"\t[骑士队长,yellowKnight]这次先饶了你,下次碰到我会和你正式的决斗,你最好投降。",
{
"type": "playSound",
"name": "door.mp3"
},
{
"type": "openDoor",
"loc": [
3,
2
],
"async": true
},
{
"type": "openDoor",
"loc": [
9,
2
]
},
{
"type": "waitAsync"
},
{
"type": "show",
"loc": [
[
6,
1
]
]
},
{
"type": "setBlock",
"number": "87",
"loc": [
[
6,
1
]
]
},
{
"type": "setValue",
"name": "flag:40F",
"value": "1"
}
]
}
],
"8,4": [
{
"type": "function",
"function": "function(){\nvar bool = true;\nvar loc_arr = [\n\t[4, 3],\n\t[5, 3],\n\t[6, 3],\n\t[6, 4],\n\t[7, 4],\n\t[8, 4],\n\t[4, 5],\n\t[5, 5],\n\t[6, 5],\n\t[6, 6],\n\t[7, 6],\n\t[8, 6],\n\t[6, 1]\n]\nloc_arr.forEach(loc => {\n\tif (core.getBlockCls(loc[0], loc[1]) == \"enemys\") {\n\t\tbool = false;\n\t}\n});\ncore.setFlag(\"open_yes\", bool)\n}"
},
{
"type": "if",
"condition": "flag:open_yes",
"true": [
"\t[骑士队长,yellowKnight]这次先饶了你,下次碰到我会和你正式的决斗,你最好投降。",
{
"type": "playSound",
"name": "door.mp3"
},
{
"type": "openDoor",
"loc": [
3,
2
],
"async": true
},
{
"type": "openDoor",
"loc": [
9,
2
]
},
{
"type": "waitAsync"
},
{
"type": "show",
"loc": [
[
6,
1
]
]
},
{
"type": "setBlock",
"number": "87",
"loc": [
[
6,
1
]
]
},
{
"type": "setValue",
"name": "flag:40F",
"value": "1"
}
]
}
],
"6,5": [
{
"type": "function",
"function": "function(){\nvar bool = true;\nvar loc_arr = [\n\t[4, 3],\n\t[5, 3],\n\t[6, 3],\n\t[6, 4],\n\t[7, 4],\n\t[8, 4],\n\t[4, 5],\n\t[5, 5],\n\t[6, 5],\n\t[6, 6],\n\t[7, 6],\n\t[8, 6],\n\t[6, 1]\n]\nloc_arr.forEach(loc => {\n\tif (core.getBlockCls(loc[0], loc[1]) == \"enemys\") {\n\t\tbool = false;\n\t}\n});\ncore.setFlag(\"open_yes\", bool)\n}"
},
{
"type": "if",
"condition": "flag:open_yes",
"true": [
"\t[骑士队长,yellowKnight]这次先饶了你,下次碰到我会和你正式的决斗,你最好投降。",
{
"type": "playSound",
"name": "door.mp3"
},
{
"type": "openDoor",
"loc": [
3,
2
],
"async": true
},
{
"type": "openDoor",
"loc": [
9,
2
]
},
{
"type": "waitAsync"
},
{
"type": "show",
"loc": [
[
6,
1
]
]
},
{
"type": "setBlock",
"number": "87",
"loc": [
[
6,
1
]
]
},
{
"type": "setValue",
"name": "flag:40F",
"value": "1"
}
]
}
],
"5,5": [
{
"type": "function",
"function": "function(){\nvar bool = true;\nvar loc_arr = [\n\t[4, 3],\n\t[5, 3],\n\t[6, 3],\n\t[6, 4],\n\t[7, 4],\n\t[8, 4],\n\t[4, 5],\n\t[5, 5],\n\t[6, 5],\n\t[6, 6],\n\t[7, 6],\n\t[8, 6],\n\t[6, 1]\n]\nloc_arr.forEach(loc => {\n\tif (core.getBlockCls(loc[0], loc[1]) == \"enemys\") {\n\t\tbool = false;\n\t}\n});\ncore.setFlag(\"open_yes\", bool)\n}"
},
{
"type": "if",
"condition": "flag:open_yes",
"true": [
"\t[骑士队长,yellowKnight]这次先饶了你,下次碰到我会和你正式的决斗,你最好投降。",
{
"type": "playSound",
"name": "door.mp3"
},
{
"type": "openDoor",
"loc": [
3,
2
],
"async": true
},
{
"type": "openDoor",
"loc": [
9,
2
]
},
{
"type": "waitAsync"
},
{
"type": "show",
"loc": [
[
6,
1
]
]
},
{
"type": "setBlock",
"number": "87",
"loc": [
[
6,
1
]
]
},
{
"type": "setValue",
"name": "flag:40F",
"value": "1"
}
]
}
],
"4,5": [
{
"type": "function",
"function": "function(){\nvar bool = true;\nvar loc_arr = [\n\t[4, 3],\n\t[5, 3],\n\t[6, 3],\n\t[6, 4],\n\t[7, 4],\n\t[8, 4],\n\t[4, 5],\n\t[5, 5],\n\t[6, 5],\n\t[6, 6],\n\t[7, 6],\n\t[8, 6],\n\t[6, 1]\n]\nloc_arr.forEach(loc => {\n\tif (core.getBlockCls(loc[0], loc[1]) == \"enemys\") {\n\t\tbool = false;\n\t}\n});\ncore.setFlag(\"open_yes\", bool)\n}"
},
{
"type": "if",
"condition": "flag:open_yes",
"true": [
"\t[骑士队长,yellowKnight]这次先饶了你,下次碰到我会和你正式的决斗,你最好投降。",
{
"type": "playSound",
"name": "door.mp3"
},
{
"type": "openDoor",
"loc": [
3,
2
],
"async": true
},
{
"type": "openDoor",
"loc": [
9,
2
]
},
{
"type": "waitAsync"
},
{
"type": "show",
"loc": [
[
6,
1
]
]
},
{
"type": "setBlock",
"number": "87",
"loc": [
[
6,
1
]
]
},
{
"type": "setValue",
"name": "flag:40F",
"value": "1"
}
]
}
],
"6,6": [
{
"type": "function",
"function": "function(){\nvar bool = true;\nvar loc_arr = [\n\t[4, 3],\n\t[5, 3],\n\t[6, 3],\n\t[6, 4],\n\t[7, 4],\n\t[8, 4],\n\t[4, 5],\n\t[5, 5],\n\t[6, 5],\n\t[6, 6],\n\t[7, 6],\n\t[8, 6],\n\t[6, 1]\n]\nloc_arr.forEach(loc => {\n\tif (core.getBlockCls(loc[0], loc[1]) == \"enemys\") {\n\t\tbool = false;\n\t}\n});\ncore.setFlag(\"open_yes\", bool)\n}"
},
{
"type": "if",
"condition": "flag:open_yes",
"true": [
"\t[骑士队长,yellowKnight]这次先饶了你,下次碰到我会和你正式的决斗,你最好投降。",
{
"type": "playSound",
"name": "door.mp3"
},
{
"type": "openDoor",
"loc": [
3,
2
],
"async": true
},
{
"type": "openDoor",
"loc": [
9,
2
]
},
{
"type": "waitAsync"
},
{
"type": "show",
"loc": [
[
6,
1
]
]
},
{
"type": "setBlock",
"number": "87",
"loc": [
[
6,
1
]
]
},
{
"type": "setValue",
"name": "flag:40F",
"value": "1"
}
]
}
],
"7,6": [
{
"type": "function",
"function": "function(){\nvar bool = true;\nvar loc_arr = [\n\t[4, 3],\n\t[5, 3],\n\t[6, 3],\n\t[6, 4],\n\t[7, 4],\n\t[8, 4],\n\t[4, 5],\n\t[5, 5],\n\t[6, 5],\n\t[6, 6],\n\t[7, 6],\n\t[8, 6],\n\t[6, 1]\n]\nloc_arr.forEach(loc => {\n\tif (core.getBlockCls(loc[0], loc[1]) == \"enemys\") {\n\t\tbool = false;\n\t}\n});\ncore.setFlag(\"open_yes\", bool)\n}"
},
{
"type": "if",
"condition": "flag:open_yes",
"true": [
"\t[骑士队长,yellowKnight]这次先饶了你,下次碰到我会和你正式的决斗,你最好投降。",
{
"type": "playSound",
"name": "door.mp3"
},
{
"type": "openDoor",
"loc": [
3,
2
],
"async": true
},
{
"type": "openDoor",
"loc": [
9,
2
]
},
{
"type": "waitAsync"
},
{
"type": "show",
"loc": [
[
6,
1
]
]
},
{
"type": "setBlock",
"number": "87",
"loc": [
[
6,
1
]
]
},
{
"type": "setValue",
"name": "flag:40F",
"value": "1"
}
]
}
],
"8,6": [
{
"type": "function",
"function": "function(){\nvar bool = true;\nvar loc_arr = [\n\t[4, 3],\n\t[5, 3],\n\t[6, 3],\n\t[6, 4],\n\t[7, 4],\n\t[8, 4],\n\t[4, 5],\n\t[5, 5],\n\t[6, 5],\n\t[6, 6],\n\t[7, 6],\n\t[8, 6],\n\t[6, 1]\n]\nloc_arr.forEach(loc => {\n\tif (core.getBlockCls(loc[0], loc[1]) == \"enemys\") {\n\t\tbool = false;\n\t}\n});\ncore.setFlag(\"open_yes\", bool)\n}"
},
{
"type": "if",
"condition": "flag:open_yes",
"true": [
"\t[骑士队长,yellowKnight]这次先饶了你,下次碰到我会和你正式的决斗,你最好投降。",
{
"type": "playSound",
"name": "door.mp3"
},
{
"type": "openDoor",
"loc": [
3,
2
],
"async": true
},
{
"type": "openDoor",
"loc": [
9,
2
]
},
{
"type": "waitAsync"
},
{
"type": "show",
"loc": [
[
6,
1
]
]
},
{
"type": "setBlock",
"number": "87",
"loc": [
[
6,
1
]
]
},
{
"type": "setValue",
"name": "flag:40F",
"value": "1"
}
]
}
]
},
"afterGetItem": {},
"afterOpenDoor": {},
"cannotMove": {},
"bgmap": [
[ 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17],
[ 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17],
[ 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17],
[ 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17],
[ 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17],
[ 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17],
[ 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17],
[ 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17],
[ 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17],
[ 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17],
[ 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17],
[ 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17],
[ 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17]
],
"fgmap": [
],
"upFloor": [
6,
2
],
"downFloor": [
10,
11
],
"autoEvent": {
"0,7": {
"0": null,
"1": null
}
},
"beforeBattle": {},
"cannotMoveIn": {},
"bg2map": [],
"fg2map": []
}