Compare commits

...

23 Commits

Author SHA1 Message Date
9dc4b8cb8c Merge branch 'status' into story-laodeng 2024-12-24 15:39:52 +08:00
8d8c2f827d Merge branch 'map' into status 2024-12-24 15:07:13 +08:00
3980c9b423 Merge branch 'status' into story-laodeng 2024-12-24 14:54:32 +08:00
3623140558 合并 2024-12-24 14:47:17 +08:00
57a9a96e86 Merge branch 'story' into status 2024-12-24 14:47:02 +08:00
2b8e9d25b0 任务标记,楼传、旁白适配 2024-12-24 14:42:16 +08:00
b2801fc1c6 旁白剧情 2024-12-23 14:23:18 +08:00
egamerainy1022
56f466db86 人声铺设(BUG:按住Ctrl快进时,语音并不会忽略而是一口气全部播放出来) 2024-12-22 22:51:48 +08:00
7523611b87 bug修复 2024-12-22 22:20:00 +08:00
egamerainy1022
119570953e 音效初铺设(BUG:AUTO在播放人声音频段文本时仍会自动播放下一段文本,且在音频播放结束后会自己跳过一段文本) 2024-12-22 21:32:50 +08:00
6015934eef 酒馆外观层,酒馆层小改 2024-12-22 17:41:34 +08:00
9259cb901a 剧情音效 2024-12-22 14:42:00 +08:00
8f596865bd 优化自动剧情 2024-12-21 23:25:40 +08:00
d8d9809da6 自动cg剧情 2024-12-21 22:43:57 +08:00
egamerainy1022
63708720dc 补充背景图 2024-12-20 22:37:10 +08:00
Sh1makazeF3
f5e5edc9d3 增加一点剧情跟部分画面 2024-12-20 21:33:43 +08:00
7fb0248f55 属性映射 2024-12-20 21:21:32 +08:00
254f0ca2a5 增加了一些注释 2024-12-19 09:21:32 +08:00
23cce9fc15 血条试做 2024-12-18 23:15:48 +08:00
egamerainy1022
4c81cf9d77 战斗层地图初步铺设,修改楼层名 2024-12-18 23:07:21 +08:00
43c6f610a3 字体描边 2024-12-14 10:50:28 +08:00
68da490685 快进剧情 2024-12-12 18:49:01 +08:00
cfaf64aa63 Merge branch 'map' into story 2024-12-12 10:16:02 +08:00
52 changed files with 3714 additions and 1526 deletions

View File

@ -1 +1 @@
N4IgZgNg9lBOCSATEAuEBnALrApjzADAEwgA0IAFjrFKqAJYC2AhgOY6qXVQB0ADgDtWZEMwFNmmDijDMI6HOQHNG0kAGFmTERABuqAIzkKfFgA9UATmuXjfQwUfkWy86gC0RkC+aoC5SQBrBwBmckQcMFDnCKiUf28oARwAT1QwkBwze3jyHABHAFd6UxwBTFQAbQBdcnopRnQ6EABjJKwxTCaUUAAjGGCUL0g0oYBfckwYeToJzKKS7uAxuegW5osUDNGAdnD6XBbMeiTOCEiKucg2JZB6nEYAEXwtCFRsQsUQQoUAIXwAO54AQAGXorAoFRQHy+AH1YQocIh4agABxEEJEdGogCs5HhsDEyNhaIxWKxeNEuGY3UqoFcagAOoUACw4Ai9Zk4loskjOZh8WkaLSMChQVQgaoTekqJms9mcwrc3kiFiCqogABW9EKrEKYkl0pADM4zLZHK5PL53gFQoA0gAVABqhtIMolaGZOyIADYiF6iGADKrbRrHU6AGIkKVu42y02Fb1+gNBkPqlCVECsKAQRCBVKu91ypP+xOB4P89OZ3r0Cg/Qq0GNFhMllMVm1VrX0ZhQTBiYRNuMekAB5Nl1OVoXoKhCAS6MUSwcmz1lsfeicdqcUehzhccJfxlet8fttVC7VInuFofF32l9en0MZjDYPCEdtYXD4YgiPX9loUP2hq1JQzCwMguQgPCgHgeoOZwCiaC4Mg+KwvcjAABI7pgiE1Kh5zMLoOAglALSIaA2q6vqAgbKgLLkKMBhEPshzHKcaCIFAAI0XMn5vgQwY9CAmwJKMPosTgRwnDRHFcTx5B8d+JBCZsTEMag4kgIgBySWxMkgLA4KQiAKzkL0gLAgAgpgfYtIEjySL4KACIUEAQKhuj0Og9zEs0lF/jJMIKa+36CUFL5foQykwnMgGvhBBj0RggT0G5fgKSlbkAHKHiOhQ+ji7IiPC2noMwvTnL5QmKe+VSVKi9GokYPqorUNQgTVP4ZpUOx4t6pCWKipAGE4ljiTs/gtW11RSlcObQECsC0h1UjphiXgdMcWD0C0txTH2EAOkw0gGIllhEAQqIhDsPCOKdlghA15AtIUsCwEdHp+j6D08BkJjpSAvSSJg5yoHsiTJKMGRZDkCRAzZ5wOSw7AA3wUBeUkSNsNICRZNgzBYyjkGMFARGPDpRwQKMCTggIcA4AAyqt3QJB0sBQj6nMEDiPA4qZoHgZwaa3J1gmgGqVT+FLpDS/4lSeKQCsK/4StGCrRiq4rGva7Ussy/rBAxhF/HKeLAqSwblvy9rWv68rtvqw7tueLrpDW87Nv217ase1rrt64b/M0IUUicHaUARqw8CsBhACyvyx70DotAAogA4gAmpZKToIE6gAKrqLHTUQE6llpwCGdQI86AZ3aFdpwzLRZbHaeougqKYJZsAYZgmg+nBADqsfqBCTHwCnrB2gC5dp+oEBp2YABSaexwA8ikACKlkABoRpZ6gsqwlkALwiLocifEscxEUt0kJpYOAhIgXK9DiBBeswlgv4UljEB/SpcQsktAQMAzIxoGCiOQPU9AIJaV6CEZgl1LAGFhDgVEYACCwhZDiX0sJmAYNQQQRALIcFIJ9JiPAIhjgegMDsEIIQHpXQmkQX0YwgA N4IgZgNg9lBOCSATEAuEBnALrApjzADAIwgA0IAFjrFKqAJYC2AhgOY6qXVQB0ADgDtWZEMwFNmmDijDMI6HOQHNG0kAGFmTERABuqIuQp8WAD1QBOKxaN8DBB+RbKzqALSGQz5qgLlJANb2fiCIOGDBTmERKCGMUAI4AJ6+5DimdrFpAI4ArvQmOAKYqADaALrk9FKM6HQgAMYJWGKYdSigAEYwQSiekCl9AL7kmDDydCMgOHkF7cBDU9AN9Yj0uA2Y9AmcuXbk5igArOSDFlOQbPMg1TiMACL4WhCo2LmKILkKAEL4AO54AQAGXorAoJRQbw+AH1oQocIhYagAOzIgAsBAAHOiAEwANnIsNgYkR0JR6KxuIJolwzHapVALjUAB1cmicAROqyjg00TiRCw+PSNFpGBQoKoQOURoyVCy2RyubkeXyBcwhWUQAArei5Vi5MRSmUgJmcVnsznc3n8pzq4UAaQAKgA1I2kWWStCs5H4nHenFgEi2jUoUogJ3OgBi/Ol7pNcrNuR9eL9SYDQa8ds1rCgEEQAWSbo98otSpVNszIbDnXoFC+uVoseLiYtzCtquDwp1zCgmDEwib8c9IHNHLbyutaqrGCoQgEunFksHpq9CoI4/LU+F6Ao9Hni44y4Tq+TqZ9ga3mp1CJ7RaH8tP/ovnc1WFw+GIIjfeEIFf1/YaCh+xEf8hEA/sY2NFcRzTFMnwzQVhVMege2Q/tPyPYd/TgtNn0rJCUKgNChAISDKkoZhYGQLIQFhICqPUXM4CRNBcGQQloVuRgAAk90wFiKg4iAcGYXQcCBKAGhYhZyE6f5AQAQUwPsGgCe5JB8FABFyCAIA43R6HQW5SXqb8PxISFYHeKYgOwBFUBxch0ACehdNSDAXN0gA5Y8YLxI4OREWE1nQZhOmEkyOgwOzzLKUoiBxHFKgqaULlzaAAVgelyKwHAQ2pFotiwegGmuMY+wgR0mGkIgjmRPEAGYGosI4iB4Zq8R9CxqQaXJYFgKrPRxDFkR4HFrAmibkVsdzOkkTBhIMJwEkLGj0kyEI5uU4T1JYdh3L4KBDISXa2GkEJ0mwZhTv2mj4jE+51hwTYIEGEJQQEOAcAAZSkEMQhaWAISOHFSJ4c4bMo6iQEvKKzMICzQEFMo/FR0g0Yx9HSFKDxSFx/HDFxvwCbxwmydJ0nKgx1LyBoXIpE4ABRKB7lYeB0HuABZdRsm+TmFNyAhvgaABFABeMWRF0OR3nmKYxKy7YBETCwcAaxBuU6I4CG9ZgLA13ILFInXlUxI40StAgwFZbqiAich9XoaHEE6BrmCxCwiGhHBMTAAhoTREG8WhZhfa9ghEDRQP3canE8BELZPSIZEGrRTE8WIdOGoSoYgA

View File

@ -952,6 +952,7 @@ action
| removeMouse_s | removeMouse_s
| drawWarning_s | drawWarning_s
| addPop_s | addPop_s
| over_s
| playStereo_s | playStereo_s
| moveStereo_s | moveStereo_s
| pass_s | pass_s
@ -1060,8 +1061,23 @@ if (block.isCollapsed() || !block.isEnabled() || pos || Int_0 || Bool_0) {
return code+',\n'; return code+',\n';
*/; */;
over_s
: '旁白文字' ':' EvalString BGNL? Newline
'背景' EvalString? '持续时长' Int? '渐入渐出时长' Int? '音频文件' EvalString? BGNL? Newline
'文字颜色' ColorString? Colour '描边颜色' ColorString? Colour '字体信息' EvalString? Newline
/*over_s
tooltip : over这段话将出现在屏幕中心
helpUrl : /_docs/#/instruction
allImages : ['EvalString_1']
allSounds : ['EvalString_2']
default : ["这段话将在屏幕中心","bg_5043.png",3000,30,"","255,255,255,1",'rgba(255,255,255,1)',"0,0,0,1",'rgba(0,0,0,1)','bold 48px Verdana']
var code = '{"type": "over", "text": "'+EvalString_0+'","image":"'+EvalString_1+'","time":'+Int_0+',"hidetime":'+Int_1+',"sound":"'+EvalString_2+'","textColor": ['+ColorString_0+'], "boldColor": ['+ColorString_1+'], "font": "'+EvalString_3+'"},\n';
return code;
*/;
cgtext_s cgtext_s
: '背景' EvalString? '移除对话框' Bool? '头像' EvalString?'名字' EvalString?'坐标PX' Number'打字间隔' Int? BGNL? Newline : '背景' EvalString? '移除对话框' Bool? '头像' EvalString?'名字' EvalString?'坐标PX' Number'打字间隔' Int? BGNL? Newline
'音频文件(需在全塔属性——使用音效注册)'EvalString? BGNL? Newline
EvalString? BGNL? Newline textcgDrawingList*? Newline EvalString? BGNL? Newline textcgDrawingList*? Newline
@ -1069,10 +1085,11 @@ cgtext_s
tooltip : cgtext显示一段包含cg的文字剧情 tooltip : cgtext显示一段包含cg的文字剧情
helpUrl : /_docs/#/instruction helpUrl : /_docs/#/instruction
allImages : ['EvalString_0','EvalString_1'] allImages : ['EvalString_0','EvalString_1']
default : ["bg_5043.png","face_050445.png",false,"菲奥奈",-300,0,"这句话显示在对话框内",[{ "name":"tati_050145a.png" , "px": 100,"filter":false }]] allSounds : ['EvalString_3']
default : ["bg_5043.png","face_050445.png",false,"菲奥奈",-300,0,"","这句话显示在对话框内",[{ "name":"tati_050145a.png" , "px": 100,"filter":false }]]
var head ='{ "name": "'+EvalString_1+'", "px": '+Number_0+' }' var head ='{ "name": "'+EvalString_1+'", "px": '+Number_0+' }'
var list=',"bodyList": [\n'+textcgDrawingList_0+'\n]' var list=',"bodyList": [\n'+textcgDrawingList_0+'\n]'
var code = '{"type": "cgtext", "bg":"'+EvalString_0+'","WindowSkin":'+Bool_0+',"head":'+head+' ,"name":"'+EvalString_2+'","time":'+Int_0+',"text": "'+EvalString_3+'"'+list+' },\n'; var code = '{"type": "cgtext", "bg":"'+EvalString_0+'","WindowSkin":'+Bool_0+',"head":'+head+' ,"name":"'+EvalString_2+'","time":'+Int_0+',"sound":"'+EvalString_3+'","text": "'+EvalString_4+'"'+list+' },\n';
return code; return code;
*/; */;
textcgDrawingList textcgDrawingList
@ -1285,6 +1302,7 @@ IdString_0 = IdString_0 && (', "icon": "' + IdString_0 + '"');
var code = '{"type": "tip", "text": "'+EvalString_0+'"'+IdString_0+'},\n'; var code = '{"type": "tip", "text": "'+EvalString_0+'"'+IdString_0+'},\n';
return code; return code;
*/; */;
addPop_s addPop_s
: '弹出弹幕' ':' EvalString BGNL? Newline : '弹出弹幕' ':' EvalString BGNL? Newline
'出现像素位置px' Int 'py' Int '文字颜色' ColorString? Colour '描边颜色' ColorString? Colour BGNL? Newline '出现像素位置px' Int 'py' Int '文字颜色' ColorString? Colour '描边颜色' ColorString? Colour BGNL? Newline

View File

@ -315,7 +315,7 @@ ActionParser.prototype.parseAction = function() {
return res; return res;
} }
this.next = MotaActionBlocks['cgtext_s'].xmlText([ this.next = MotaActionBlocks['cgtext_s'].xmlText([
data.bg,data.WindowSkin,data.head.name, data.name||"", data.head.px||-300,data.time, data.text,buildcgDrawing(data.bodyList), this.next]); data.bg,data.WindowSkin,data.head.name, data.name||"", data.head.px||-300,data.time, data.sound,data.text,buildcgDrawing(data.bodyList), this.next]);
break; break;
case "moveTextBox": // 移动对话框 case "moveTextBox": // 移动对话框
@ -352,6 +352,10 @@ ActionParser.prototype.parseAction = function() {
this.next = MotaActionBlocks['addPop_s'].xmlText([ this.next = MotaActionBlocks['addPop_s'].xmlText([
data.value,data.px, data.py, data.color,'rgba('+data.color+')', data.boldColor,'rgba('+data.boldColor+')', data.left, data.jump, data.time, data.show, data.font, data.speed,this.next]); data.value,data.px, data.py, data.color,'rgba('+data.color+')', data.boldColor,'rgba('+data.boldColor+')', data.left, data.jump, data.time, data.show, data.font, data.speed,this.next]);
break; break;
case "over":
this.next = MotaActionBlocks['over_s'].xmlText([
data.text??"",data.image??"", data.time??3000, data.hidetime??100,data.sound??"", data.textColor,'rgba('+data.textColor+')', data.boldColor,'rgba('+data.boldColor+')', data.font??"bold 48px Verdana",this.next]);
break;
case "tip": case "tip":
this.next = MotaActionBlocks['tip_s'].xmlText([ this.next = MotaActionBlocks['tip_s'].xmlText([
data.text,data.icon||"",this.next]); data.text,data.icon||"",this.next]);

File diff suppressed because one or more lines are too long

View File

@ -32,6 +32,23 @@ var comment_c456ea59_6018_45ef_8bcc_211a24c627dc = {
"_docs": "道具类别", "_docs": "道具类别",
"_data": "items(宝石、血瓶) constants(永久物品) tools(消耗道具) equips(装备)" "_data": "items(宝石、血瓶) constants(永久物品) tools(消耗道具) equips(装备)"
}, },
"equipCls": {
"_leaf": true,
"_type": "select",
"_select": {
"values": [
"单手剑",
"法杖",
"双手剑",
"匕首",
"盾牌",
"护具",
"饰品"
]
},
"_docs": "装备类别",
"_data": "单手剑作为副手时主手必须为单手剑,匕首作为副手时主手武器必须为单手剑、法杖、匕首之一,盾牌仅可作为副手使用且主手必须为单手剑、法杖之一"
},
"name": { "name": {
"_leaf": true, "_leaf": true,
"_type": "textarea", "_type": "textarea",
@ -170,7 +187,23 @@ var comment_c456ea59_6018_45ef_8bcc_211a24c627dc = {
"def": { "def": {
"_leaf": true, "_leaf": true,
"_type": "textarea", "_type": "textarea",
"_data": "防御力" "_data": "物理防御力"
},
"mdef": {
"_leaf": true,
"_type": "textarea",
"_data": "魔法防御力"
},
"speed": {
"_leaf": true,
"_type": "textarea",
"_data": "速度"
},
"magic": {
"_leaf": true,
"_type": "checkbox",
"_docs": "是否为魔法攻击",
"_data": "勾选以魔法攻击计算,不勾选以物理攻击计算"
}, },
"money": { "money": {
"_leaf": true, "_leaf": true,

View File

@ -257,17 +257,48 @@ var data_comment_c456ea59_6018_45ef_8bcc_211a24c627dc = {
"atk": { "atk": {
"_leaf": true, "_leaf": true,
"_type": "textarea", "_type": "textarea",
"_data": "初始攻击" "_data": "攻击"
}, },
"def": { "def": {
"_leaf": true, "_leaf": true,
"_type": "textarea", "_type": "textarea",
"_data": "初始防御" "_data": "物理防御"
}, },
"mdef": { "mdef": {
"_leaf": true, "_leaf": true,
"_type": "textarea", "_type": "textarea",
"_data": "初始护盾" "_data": "魔法防御"
},
"speed": {
"_leaf": true,
"_type": "textarea",
"_data": "攻击速度"
},
"str": {
"_leaf": true,
"_type": "textarea",
"_data": "力量"
},
"agi": {
"_leaf": true,
"_type": "textarea",
"_data": "敏捷"
},
"int": {
"_leaf": true,
"_type": "textarea",
"_data": "智力"
},
"con": {
"_leaf": true,
"_type": "textarea",
"_data": "体质"
},
"magic": {
"_leaf": true,
"_type": "checkbox",
"_docs": "攻击类型",
"_data": "攻击类型是否是魔法"
}, },
"money": { "money": {
"_leaf": true, "_leaf": true,

Binary file not shown.

BIN
project/bgms/Crawler.mp3 Normal file

Binary file not shown.

View File

@ -14,7 +14,10 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
"jiedao", "jiedao",
"street01", "street01",
"street02", "street02",
"guangchang" "guangchang",
"guangchang2",
"xiaoxiang01",
"xiaoxiang02"
], ],
"floorPartitions": [], "floorPartitions": [],
"images": [ "images": [
@ -31,13 +34,18 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
"bg_2011.png", "bg_2011.png",
"bg_2521.png", "bg_2521.png",
"bg_3042.png", "bg_3042.png",
"bg_3531.png",
"bg_3551.png", "bg_3551.png",
"bg_3563.png",
"bg_3571.png", "bg_3571.png",
"bg_3601.png",
"bg_3721.png", "bg_3721.png",
"bg_5033.png", "bg_5033.png",
"bg_5043.png", "bg_5043.png",
"bg_5044.png", "bg_5044.png",
"bg_6004.png",
"brave.png", "brave.png",
"cao.png",
"d.png", "d.png",
"dl.png", "dl.png",
"dlr.png", "dlr.png",
@ -93,12 +101,17 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
"h25.png", "h25.png",
"hero.png", "hero.png",
"l.png", "l.png",
"lane1.png",
"light.png", "light.png",
"lock.png", "lock.png",
"lr.png", "lr.png",
"maba.png", "maba.png",
"now.png", "now.png",
"null.png", "null.png",
"other_0001.png",
"other_0002.png",
"other_0003.png",
"other_0004.png",
"r.png", "r.png",
"status.png", "status.png",
"statusBackground.jpg", "statusBackground.jpg",
@ -143,7 +156,8 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
"9.png", "9.png",
"8.png", "8.png",
"7.png", "7.png",
"10.png" "10.png",
"C5.png"
], ],
"animates": [ "animates": [
"hand", "hand",
@ -155,9 +169,22 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
], ],
"bgms": [ "bgms": [
"Asphodelus_Ceui.mp3", "Asphodelus_Ceui.mp3",
"Blind_Alley.mp3",
"Crawler.mp3",
"theme.mp3" "theme.mp3"
], ],
"sounds": [ "sounds": [
"aiy010000010.mp3",
"aiy010000020.mp3",
"aiy010000030.mp3",
"aiy310000010.mp3",
"aiy310000020.mp3",
"aiy710000010.mp3",
"aiy710000020.mp3",
"aiy710000030.mp3",
"aiy710000040.mp3",
"aiy710000050.mp3",
"aiy710000060.mp3",
"attack.mp3", "attack.mp3",
"bomb.mp3", "bomb.mp3",
"cancel.mp3", "cancel.mp3",
@ -216,7 +243,9 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
"levelChoose": null, "levelChoose": null,
"equipName": [ "equipName": [
"武器", "武器",
"盾牌" "武器",
"防具",
"饰品"
], ],
"startBgm": "theme.mp3", "startBgm": "theme.mp3",
"styles": { "styles": {
@ -261,7 +290,7 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
"title": "秽翼的尤斯蒂娅", "title": "秽翼的尤斯蒂娅",
"name": "Eustia", "name": "Eustia",
"version": "鸽子窝造塔小队", "version": "鸽子窝造塔小队",
"floorId": "jiuguan", "floorId": "street01",
"hero": { "hero": {
"image": "hero.png", "image": "hero.png",
"animate": false, "animate": false,
@ -285,14 +314,21 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
"loc": { "loc": {
"direction": "up", "direction": "up",
"x": 5, "x": 5,
"y": 6 "y": 11
}, },
"flags": { "flags": {
"itemDetail": true, "itemDetail": true,
"useBetweenLight": true "useBetweenLight": true
}, },
"followers": [], "followers": [],
"steps": 0 "steps": 0,
"matk": 0,
"speed": 0,
"str": 10,
"agi": 10,
"int": 10,
"con": 10,
"magic": false
}, },
"startCanvas": [ "startCanvas": [
{ {

View File

@ -1,7 +1,7 @@
var enemys_fcae963b_31c9_42b4_b48c_bb48d09f3f80 = var enemys_fcae963b_31c9_42b4_b48c_bb48d09f3f80 =
{ {
"greenSlime": {"name":"绿头怪","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0}, "greenSlime": {"name":"绿头怪","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0},
"redSlime": {"name":"红头怪","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":[16,18],"value":10}, "redSlime": {"name":"红头怪","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":[],"value":10},
"blackSlime": {"name":"青头怪","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0}, "blackSlime": {"name":"青头怪","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0},
"slimelord": {"name":"怪王","hp":100,"atk":120,"def":0,"money":10,"exp":0,"point":0,"special":[1,9]}, "slimelord": {"name":"怪王","hp":100,"atk":120,"def":0,"money":10,"exp":0,"point":0,"special":[1,9]},
"bat": {"name":"小蝙蝠","hp":100,"atk":120,"def":0,"money":2,"exp":0,"point":0,"special":[1]}, "bat": {"name":"小蝙蝠","hp":100,"atk":120,"def":0,"money":2,"exp":0,"point":0,"special":[1]},
@ -10,15 +10,15 @@ var enemys_fcae963b_31c9_42b4_b48c_bb48d09f3f80 =
"vampire": {"name":"冥灵魔王","hp":888,"atk":888,"def":888,"money":888,"exp":888,"point":0,"special":[6],"n":8}, "vampire": {"name":"冥灵魔王","hp":888,"atk":888,"def":888,"money":888,"exp":888,"point":0,"special":[6],"n":8},
"skeleton": {"name":"骷髅人","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0}, "skeleton": {"name":"骷髅人","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0},
"skeletonCaptain": {"name":"骷髅队长","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0}, "skeletonCaptain": {"name":"骷髅队长","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0},
"zombie": {"name":"兽人","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0}, "zombie": {"name":"兽人","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0,"magic":false},
"zombieKnight": {"name":"兽人武士","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0}, "zombieKnight": {"name":"兽人武士","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0},
"rock": {"name":"石头人","hp":50,"atk":50,"def":0,"money":3,"exp":0,"point":0,"special":3}, "rock": {"name":"石头人","hp":50,"atk":50,"def":0,"money":3,"exp":0,"point":0,"special":3},
"bluePriest": {"name":"初级法师","hp":100,"atk":120,"def":0,"money":3,"exp":0,"point":1,"special":[9]}, "bluePriest": {"name":"初级法师","hp":100,"atk":120,"def":0,"money":3,"exp":0,"point":1,"special":[9]},
"redPriest": {"name":"高级法师","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0}, "redPriest": {"name":"高级法师","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0},
"brownWizard": {"name":"初级巫师","hp":100,"atk":120,"def":0,"money":16,"exp":0,"point":0,"special":15,"value":100,"range":2}, "brownWizard": {"name":"初级巫师","hp":100,"atk":120,"def":0,"money":16,"exp":0,"point":0,"special":15,"value":100,"range":2},
"redWizard": {"name":"高级巫师","hp":1000,"atk":1200,"def":0,"money":160,"exp":0,"point":0,"special":15,"value":200,"zoneSquare":true}, "redWizard": {"name":"高级巫师","hp":1000,"atk":1200,"def":0,"money":160,"exp":0,"point":0,"special":15,"value":200,"zoneSquare":true},
"swordsman": {"name":"双手剑士","hp":100,"atk":120,"def":0,"money":6,"exp":0,"point":0,"special":4}, "swordsman": {"name":"双手剑士","hp":100,"atk":120,"def":0,"money":6,"exp":3,"point":0,"special":4},
"soldier": {"name":"冥战士","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0}, "soldier": {"name":"冥战士","hp":120,"atk":50,"def":8,"money":10,"exp":7,"point":0,"special":0},
"yellowKnight": {"name":"金骑士","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0}, "yellowKnight": {"name":"金骑士","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0},
"redKnight": {"name":"红骑士","hp":500,"atk":200,"def":50,"money":0,"exp":0,"point":0,"special":[7]}, "redKnight": {"name":"红骑士","hp":500,"atk":200,"def":50,"money":0,"exp":0,"point":0,"special":[7]},
"darkKnight": {"name":"黑骑士","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0}, "darkKnight": {"name":"黑骑士","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0},
@ -46,8 +46,8 @@ var enemys_fcae963b_31c9_42b4_b48c_bb48d09f3f80 =
"skeletonWarrior": {"name":"骷髅士兵","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0}, "skeletonWarrior": {"name":"骷髅士兵","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0},
"whiteSlimeman": {"name":"水银战士","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0}, "whiteSlimeman": {"name":"水银战士","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0},
"slimeman": {"name":"影子战士","hp":100,"atk":0,"def":0,"money":11,"exp":0,"point":0,"special":[9],"atkValue":2,"defValue":3}, "slimeman": {"name":"影子战士","hp":100,"atk":0,"def":0,"money":11,"exp":0,"point":0,"special":[9],"atkValue":2,"defValue":3},
"yellowGateKeeper": {"name":"初级卫兵","hp":100,"atk":120,"def":0,"money":10,"exp":0,"point":0,"special":0}, "yellowGateKeeper": {"name":"初级卫兵","hp":80,"atk":25,"def":5,"money":3,"exp":1,"point":0,"special":0},
"blueGateKeeper": {"name":"中级卫兵","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0}, "blueGateKeeper": {"name":"中级卫兵","hp":80,"atk":25,"def":5,"money":3,"exp":1,"point":0,"special":0},
"redGateKeeper": {"name":"高级卫兵","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0}, "redGateKeeper": {"name":"高级卫兵","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0},
"magicMaster": {"name":"黑暗大法师","hp":100,"atk":120,"def":0,"money":12,"exp":0,"point":0,"special":11,"value":0.3333333333333333,"add":true,"notBomb":true}, "magicMaster": {"name":"黑暗大法师","hp":100,"atk":120,"def":0,"money":12,"exp":0,"point":0,"special":11,"value":0.3333333333333333,"add":true,"notBomb":true},
"devilWarrior": {"name":"魔神武士","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0}, "devilWarrior": {"name":"魔神武士","hp":0,"atk":0,"def":0,"money":0,"exp":0,"point":0,"special":0},

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
main.floors.Caimhome= main.floors.Caimhome=
{ {
"floorId": "Caimhome", "floorId": "Caimhome",
"title": "主塔 11 层", "title": "主塔11层",
"name": "11", "name": "11",
"width": 13, "width": 13,
"height": 13, "height": 13,

View File

@ -1,7 +1,7 @@
main.floors.bihusuo= main.floors.bihusuo=
{ {
"floorId": "bihusuo", "floorId": "bihusuo",
"title": "牢狱01", "title": "庇护所",
"name": "1", "name": "1",
"width": 13, "width": 13,
"height": 13, "height": 13,
@ -38,7 +38,7 @@ main.floors.bihusuo=
[ 17, 17, 17, 17, 17, 0, 90, 0, 17, 17, 17, 17, 17], [ 17, 17, 17, 17, 17, 0, 90, 0, 17, 17, 17, 17, 17],
[ 17, 17, 17, 17, 17, 0, 0, 0, 17, 17, 17, 17, 17] [ 17, 17, 17, 17, 17, 0, 0, 0, 17, 17, 17, 17, 17]
], ],
"areas": "牢狱", "areas": "下层",
"bgmap": [ "bgmap": [
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 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,7 +1,7 @@
main.floors.guangchang= main.floors.guangchang=
{ {
"floorId": "guangchang", "floorId": "guangchang",
"title": "牢狱01", "title": "广场",
"name": "1", "name": "1",
"width": 13, "width": 13,
"height": 13, "height": 13,
@ -23,6 +23,14 @@ main.floors.guangchang=
6 6
], ],
"direction": "right" "direction": "right"
},
"6,12": {
"floorId": "guangchang2",
"loc": [
6,
0
],
"direction": "down"
} }
}, },
"beforeBattle": {}, "beforeBattle": {},
@ -45,7 +53,7 @@ main.floors.guangchang=
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140,141], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140,141],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140,141], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140,141],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140,141], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140,141],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140,141] [ 0, 0, 0, 0, 0, 0, 93, 0, 0, 0, 0,140,141]
], ],
"areas": "牢狱", "areas": "牢狱",
"bgmap": [ "bgmap": [

View File

@ -0,0 +1,63 @@
main.floors.guangchang2=
{
"floorId": "guangchang2",
"title": "广场",
"name": "1",
"width": 13,
"height": 13,
"canFlyTo": true,
"canFlyFrom": true,
"canUseQuickShop": true,
"images": [],
"ratio": 1,
"defaultGround": "grass2",
"firstArrive": [],
"eachArrive": [],
"parallelDo": "",
"events": {},
"changeFloor": {
"6,0": {
"floorId": "guangchang",
"loc": [
6,
12
],
"direction": "up"
}
},
"beforeBattle": {},
"afterBattle": {},
"afterGetItem": {},
"afterOpenDoor": {},
"autoEvent": {},
"cannotMove": {},
"cannotMoveIn": {},
"map": [
[ 0, 0, 0, 0, 0, 0, 91, 0, 0, 0, 0,140,141],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140,141],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140,141],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140,140],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140],
[ 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,140],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,140]
],
"areas": "牢狱",
"bgmap": [
],
"fgmap": [
],
"bg2map": [
],
"fg2map": [
]
}

View File

@ -1,7 +1,7 @@
main.floors.jiaotang= main.floors.jiaotang=
{ {
"floorId": "jiaotang", "floorId": "jiaotang",
"title": "牢狱01", "title": "教堂",
"name": "1", "name": "1",
"width": 13, "width": 13,
"height": 13, "height": 13,
@ -63,7 +63,7 @@ main.floors.jiaotang=
[356,357,357,357,358, 0, 0, 0,356,357,357,357,358], [356,357,357,357,358, 0, 0, 0,356,357,357,357,358],
[ 0, 0, 0, 0, 0, 0, 90, 0, 0, 0, 0, 0, 0] [ 0, 0, 0, 0, 0, 0, 90, 0, 0, 0, 0, 0, 0]
], ],
"areas": "牢狱", "areas": "上层",
"bgmap": [ "bgmap": [
[ 0,30017,30017,30017, 0,30017,30017,30017, 0,30017,30017,30017, 0], [ 0,30017,30017,30017, 0,30017,30017,30017, 0,30017,30017,30017, 0],
[ 0,30025,30025,30025, 0,30025,30025,30025, 0,30025,30025,30025, 0], [ 0,30025,30025,30025, 0,30025,30025,30025, 0,30025,30025,30025, 0],

View File

@ -1,7 +1,7 @@
main.floors.jiedao= main.floors.jiedao=
{ {
"floorId": "jiedao", "floorId": "jiedao",
"title": "牢狱01", "title": "街道",
"name": "1", "name": "1",
"width": 13, "width": 13,
"height": 13, "height": 13,

View File

@ -1,7 +1,7 @@
main.floors.jiuguan= main.floors.jiuguan=
{ {
"floorId": "jiuguan", "floorId": "jiuguan",
"title": "主塔 11 层", "title": "主塔11层",
"name": "11", "name": "11",
"width": 13, "width": 13,
"height": 13, "height": 13,
@ -16,19 +16,39 @@ main.floors.jiuguan=
"eachArrive": [], "eachArrive": [],
"parallelDo": "", "parallelDo": "",
"events": { "events": {
"4,12": [ "5,12": [
{ {
"type": "changeFloor", "type": "changeFloor",
"floorId": "street01", "floorId": "street01",
"loc": [ "loc": [
8, 5,
4 7
], ],
"direction": "down" "direction": "down"
} }
], ],
"3,6": [ "4,10": [
"\t[小妖精,fairy]\f[fairy.png,0,0]欢迎使用事件编辑器(双击方块可直接预览)" {
"type": "over",
"text": "这段话将在屏幕中心",
"image": "bg_5043.png",
"time": 3000,
"hidetime": 30,
"sound": "",
"textColor": [
255,
255,
255,
1
],
"boldColor": [
0,
0,
0,
1
],
"font": "bold 48px Verdana"
}
] ]
}, },
"changeFloor": {}, "changeFloor": {},
@ -55,18 +75,18 @@ main.floors.jiuguan=
[ 17, 0, 0,50054,342, 0, 0, 0, 0, 0, 0, 0, 17], [ 17, 0, 0,50054,342, 0, 0, 0, 0, 0, 0, 0, 17],
[ 17,20231, 0, 0,336,40054,40054,50054,338, 0,30070,10292, 17], [ 17,20231, 0, 0,336,40054,40054,50054,338, 0,30070,10292, 17],
[ 17,70933, 0, 0, 0, 0, 0, 0, 0, 0, 0,10292, 17], [ 17,70933, 0, 0, 0, 0, 0, 0, 0, 0, 0,10292, 17],
[ 17,70941, 0, 0, 0, 0,50054, 0, 0, 0, 0,20110, 17], [ 17,70941, 0, 0, 0, 0,50054, 0, 0, 0, 0, 0, 17],
[ 17,40054,80004,40054, 0, 0,40040,60042, 0,40040,60042, 0, 17], [ 17,40054,80004,40054, 0, 0,40040,60042, 0,40040,60042, 0, 17],
[ 17, 0, 0, 0, 0, 0,40054,40054, 0,40054,40054, 0, 17], [ 17, 0, 0, 0, 0, 0,40054,40054, 0,40054,40054, 0, 17],
[ 17,40054,80012,40054, 0, 0, 0, 0, 0, 0, 0, 0, 17], [ 17,40054,80012,40054, 0, 0, 0, 0, 0, 0, 0, 0, 17],
[ 17, 0, 0, 0, 0, 17, 17, 17, 17, 0, 17,80041,80042], [ 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20110, 17],
[ 0, 17, 17, 17, 90, 17, 17, 17, 17, 0,80048,80049,80050] [200004,200002,200003,200004, 17, 90, 0,200002,200003,200004,200002,200003,200004]
], ],
"areas": "下层", "areas": "下层",
"bgmap": [ "bgmap": [
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0,40017,40017,50017,40017,40017,50017,40017,40017,40017,40017,50021, 0], [ 0,40017,70325,70325,70325,70325,70325,70325,70325,70325,70325,70326, 0],
[ 0,40025,50021,40025,40025,40029,40025,40025,40025,40025,40025,40025, 0], [ 0,40025,70333,70333,70333,70333,70333,70333,70333,70333,70333,70334, 0],
[ 0,30057,30057,30057,30057,30055,30057,30057,30063,30057,30057,30057, 0], [ 0,30057,30057,30057,30057,30055,30057,30057,30063,30057,30057,30057, 0],
[ 0,30057,30057,30057,30057,30057,30057,30057,30057,30055,30057,30057, 0], [ 0,30057,30057,30057,30057,30057,30057,30057,30057,30055,30057,30057, 0],
[ 0,30057,30055,30057,30063,30057,30057,30057,30057,30057,30063,30057, 0], [ 0,30057,30055,30057,30063,30057,30057,30057,30057,30057,30063,30057, 0],
@ -74,9 +94,9 @@ main.floors.jiuguan=
[ 0,30063,30057,30057,30057,30057,30057,30055,30057,30063,30057,30057, 0], [ 0,30063,30057,30057,30057,30057,30057,30055,30057,30063,30057,30057, 0],
[ 0,30057,30057,30057,30055,30057,30057,30057,30057,30057,30057,30055, 0], [ 0,30057,30057,30057,30055,30057,30057,30057,30057,30057,30057,30055, 0],
[ 0,30055,30057,30057,30057,30057,30057,30057,30057,30057,30063,30057, 0], [ 0,30055,30057,30057,30057,30057,30057,30057,30057,30057,30063,30057, 0],
[ 0,30057,30057,30063,30057, 0, 0, 0, 0, 0, 0, 0, 0], [ 0,30057,30057,30063,30057,30057,30057,30057,30057,30057,30057,30057, 0],
[ 0, 0, 0, 0,30057, 0,40017,40021,50017,40017,40017,40017,50017], [ 0, 0, 0, 0, 0,30057, 0, 0, 0, 0, 0, 0, 0],
[50017,40021,40017, 0,30057, 0,40025,40025,40025,40025,40029,40025,40025] [70325,70325,70325, 0, 0,30057,70325,70325,70325,70325,70325,70325,70325]
], ],
"fgmap": [ "fgmap": [
[142,142,142,142,142,142,142,142,142,142,142,142,142], [142,142,142,142,142,142,142,142,142,142,142,142,142],
@ -85,13 +105,13 @@ main.floors.jiuguan=
[142,20184,20184, 0,60110, 0,20184,20184, 0, 0, 0, 0,142], [142,20184,20184, 0,60110, 0,20184,20184, 0, 0, 0, 0,142],
[142, 0, 0, 0,60166,340,340,340,339, 0, 0, 0,142], [142, 0, 0, 0,60166,340,340,340,339, 0, 0, 0,142],
[142,70933, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,142], [142,70933, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,142],
[142,71353, 0, 0, 0, 0, 0, 0, 0, 0, 0,20102,142], [142,71353, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,142],
[142, 0, 0, 0, 0, 0,40032,40034, 0,40032,40034, 0,142], [142, 0, 0, 0, 0, 0,40032,40034, 0,40032,40034, 0,142],
[142, 0, 0, 0, 0, 0,20182, 0, 0,20190, 0, 0,142], [142, 0, 0, 0, 0, 0,20182, 0, 0,20190, 0, 0,142],
[142, 0, 0, 0, 0, 0,40031,40031,40031,40031,40031, 0,142], [142, 0, 0, 0, 0, 0,40031,40031,40031,40031,40031, 0,142],
[142, 0, 0, 0, 0,142,142,142,142,142,142,142,142], [142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20102,142],
[142,142,142,142, 0,142, 0,71362,71363,71364, 0, 0, 0], [142,142,142,142,142, 0,142,142,142,142,142,142,142],
[20120,20121, 0,142, 0,142,20086,71370,71371,71372, 0, 0, 0] [ 0, 0, 0, 0,142, 0,142, 0, 0, 0, 0, 0, 0]
], ],
"bg2map": [ "bg2map": [
[ 0, 0, 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,7 +1,7 @@
main.floors.shengnvhome= main.floors.shengnvhome=
{ {
"floorId": "shengnvhome", "floorId": "shengnvhome",
"title": "牢狱01", "title": "圣女寝室",
"name": "1", "name": "1",
"width": 13, "width": 13,
"height": 13, "height": 13,
@ -38,7 +38,7 @@ main.floors.shengnvhome=
[ 17, 17, 17, 17, 17, 0, 0, 0, 17, 17, 17, 17, 17], [ 17, 17, 17, 17, 17, 0, 0, 0, 17, 17, 17, 17, 17],
[ 0, 0, 0, 0, 0, 17, 90, 17, 17, 17, 17, 17, 17] [ 0, 0, 0, 0, 0, 17, 90, 17, 17, 17, 17, 17, 17]
], ],
"areas": "牢狱", "areas": "上层",
"bgmap": [ "bgmap": [
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0,30016,360,360,30017,30017,30017,30017,30017,30018, 0, 0], [ 0, 0,30016,360,360,30017,30017,30017,30017,30017,30018, 0, 0],

View File

@ -1,7 +1,7 @@
main.floors.shinvhome= main.floors.shinvhome=
{ {
"floorId": "shinvhome", "floorId": "shinvhome",
"title": "牢狱01", "title": "侍女寝室",
"name": "1", "name": "1",
"width": 13, "width": 13,
"height": 13, "height": 13,
@ -38,7 +38,7 @@ main.floors.shinvhome=
[ 17, 17, 17, 17, 17, 0, 0, 0, 17, 17, 17, 17, 17], [ 17, 17, 17, 17, 17, 0, 0, 0, 17, 17, 17, 17, 17],
[ 17, 17, 17, 17, 17, 17, 90, 17, 17, 17, 17, 17, 17] [ 17, 17, 17, 17, 17, 17, 90, 17, 17, 17, 17, 17, 17]
], ],
"areas": "牢狱", "areas": "上层",
"bgmap": [ "bgmap": [
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0,30016,360,360,30017,30017,30017,30017,30017,30018, 0, 0], [ 0, 0,30016,360,360,30017,30017,30017,30017,30017,30018, 0, 0],

View File

@ -1,7 +1,7 @@
main.floors.street01= main.floors.street01=
{ {
"floorId": "street01", "floorId": "street01",
"title": "牢狱01", "title": "街道",
"name": "1", "name": "1",
"width": 13, "width": 13,
"height": 13, "height": 13,
@ -10,17 +10,17 @@ main.floors.street01=
"canUseQuickShop": true, "canUseQuickShop": true,
"images": [], "images": [],
"ratio": 1, "ratio": 1,
"defaultGround": "grass2", "defaultGround": "X90001",
"firstArrive": [], "firstArrive": [],
"eachArrive": [], "eachArrive": [],
"parallelDo": "", "parallelDo": "",
"events": { "events": {
"8,4": [ "5,7": [
{ {
"type": "changeFloor", "type": "changeFloor",
"floorId": "jiuguan", "floorId": "jiuguan",
"loc": [ "loc": [
4, 5,
12 12
], ],
"direction": "up" "direction": "up"
@ -28,7 +28,7 @@ main.floors.street01=
] ]
}, },
"changeFloor": { "changeFloor": {
"0,6": { "0,8": {
"floorId": "street02", "floorId": "street02",
"loc": [ "loc": [
12, 12,
@ -41,46 +41,92 @@ main.floors.street01=
"afterGetItem": {}, "afterGetItem": {},
"afterOpenDoor": {}, "afterOpenDoor": {},
"autoEvent": {}, "autoEvent": {},
"cannotMove": {}, "cannotMove": {
"cannotMoveIn": {}, "10,6": [
"left",
"right"
]
},
"cannotMoveIn": {
"10,6": [
"left",
"right"
]
},
"map": [ "map": [
[141,141,141,141,141,141,140,140192,140193,140194,140200,140201,140202], [110121,110122,200040,200225,200138,200227,200228,200225,200250,200227,200228,200046,130090],
[141,141,141,141,141,141,140,140200,140201,140202,40016,40017,40017], [110124, 0,200048,200233,200146,200235,200236,200233,200250,200235,200228,200054,130098],
[141,141,141,141,141,141,140,40016,40017,40018,40024,40025,40025], [110124, 0,200056,200153,200154,200155,200244,200272,200154,200276,200228,200054,130060],
[141,141,141,141,141,141,140,40024,50022,40026,40110, 0, 0], [110124, 0,200272,200161,200162,200163,200276,200168,200171,200172, 0,70327,130068],
[140,140,140,140,140,140,140,140, 90,140,140,140,140], [110124, 0,200168,200169,200170,200171,200172,200080,200081,200086, 0,70335,110114],
[ 0, 0, 0, 0, 0,140, 0, 0, 0, 0,140, 0, 0], [110124, 0,200176,200177,200178,200179,71786,90064,90064,90064, 0,90064,110125],
[ 92, 0,140,202,140,140,201,140,140,140,140, 0, 94], [110124, 0,200088,200089,200004,200005,200006,71795, 0, 0, 0, 0,110125],
[ 0, 0,140, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [110118,110118,200096,110116,110020, 0,200014, 0, 0, 0, 0, 0,110125],
[140,140,140,140,140,140,140,140,140,140,140,140,140], [ 92, 0, 0,110124, 0,201, 0, 0,110125,110122,110122,110122,110122],
[141,141,141,141,141,141,141,141,141,141,141,141,141], [ 0, 0, 0,110118,110118,202,110118,110118,110122, 0, 0, 0, 94],
[141,141,141,141,141,141,141,141,141,141,141,141,141], [130170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[141,141,141,141,141,141,141,141,141,141,141,141,141], [130178, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,130168,130169],
[141,141,141,141,141,141,141,141,141,141,141,141,141] [130225,130169,130169,130169,130169,130170,110122,110122,130168,130169,130169,130224,130177]
], ],
"areas": "牢狱", "areas": "牢狱",
"bgmap": [ "bgmap": [
[90001, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,90001],
[90001, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,90001],
[90001, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,90001],
[90001,71818,71819, 0, 0, 0, 0, 0, 0, 0,10036, 0,90001],
[90001,71826,71827, 0, 0, 0, 0, 0, 0, 0, 0, 0,90001],
[90001, 0, 0, 0, 0, 0,71786, 0,60135,60135,60135,60135, 0],
[90001, 0, 0, 0, 0, 0, 0, 0, 0,90001,90001,90001, 0],
[90001,90001,90001, 0, 0, 0, 0, 0,90001, 0, 0, 0, 0],
[70032,70032,70025, 0, 0,90244,90001,90001,90001, 0, 0, 0, 0],
[70025,70025,70025,90001,90001,90244,90001,90001,90001,70025,70025,70025,70025],
[ 0,70025,70025,70025,70025,70025,70025,70025,70025,70025,70025,70025,70025],
[ 0,70025,70025,70025,70025,70025,70025,70025,70025,70025,70025, 0, 0],
[ 0, 0, 0, 0, 0, 0,90001,90001, 0, 0, 0, 0, 0]
], ],
"fgmap": [ "fgmap": [
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,130076],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,90206,80048], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,130084],
[ 0, 0, 0, 0, 0, 0, 0,90202, 0,90201,40102,90214,80056], [ 0, 0,200110,200111, 0,200108,200109, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0,20121, 0, 0, 0, 0,80064], [ 0, 0,200118,200119, 0,200116,200117, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [ 0,20241, 0, 0, 0, 0, 0, 0, 0,70552, 0,70554, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [ 0, 0, 0, 0, 0, 93,200180,71787, 0,70560, 0,70562, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [110114,110114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0,110143,110114,110114,110114,110114],
[ 0, 0, 0,110114,120095, 0,120095,120095,110114, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0,110114,110114, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
],
"bg2map": [
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0,90650,90651, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0,90658,90659, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0,70163,70325,70325,70326, 0,200162, 0],
[ 0, 0, 0, 0, 0, 0,70171,70333,70333,70334,70553,200162, 0],
[ 0,71834,71835, 0, 0, 0,90064, 0, 0, 0,70561, 0,110122],
[ 0,71842,71843,200089,200004,200005,71794, 0,90617,70568,70569,70570, 0],
[ 0, 0, 0,200097,200012,200013,110012, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0,110028,90244, 0,120108,120108,110134,110134,110134,110134],
[ 0, 0, 0, 0,120103,90244,120103,120103, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
],
"bg2map": [
], ],
"fg2map": [ "fg2map": [
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0,393,394,395, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0,110114, 0,110114,110114, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[ 0, 0, 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,7 +1,7 @@
main.floors.street02= main.floors.street02=
{ {
"floorId": "street02", "floorId": "street02",
"title": "牢狱01", "title": "街道",
"name": "1", "name": "1",
"width": 13, "width": 13,
"height": 13, "height": 13,

View File

@ -0,0 +1,54 @@
main.floors.xiaoxiang01=
{
"floorId": "xiaoxiang01",
"title": "小巷子",
"name": "1",
"width": 13,
"height": 13,
"canFlyTo": true,
"canFlyFrom": true,
"canUseQuickShop": true,
"images": [],
"ratio": 1,
"defaultGround": "grass2",
"firstArrive": [],
"eachArrive": [],
"parallelDo": "",
"events": {},
"changeFloor": {},
"beforeBattle": {},
"afterBattle": {},
"afterGetItem": {},
"afterOpenDoor": {},
"autoEvent": {},
"cannotMove": {},
"cannotMoveIn": {},
"map": [
[141,141,141,141,141,141,141,141,141,141,141,141,141],
[141,141,141,141,141,141,141,141,141,141,141,141,141],
[141,141,141,141,141,141,141,141,141,141,141,141,141],
[140,140,140,140,140,140,140,140,140,140,140,140,140],
[140, 30,140, 0, 0, 0,221, 0,224, 0, 28, 27,140],
[140,224,140,225,140, 31,140, 0,140,140,140,224,140],
[140, 0, 32, 0,140, 0,140,225,140,224, 0, 0,140],
[140,225,140,140,140, 81,140, 0, 0, 0,140, 0, 94],
[140, 0,222, 0,221, 0,140, 81,140,225,140,140,140],
[140,140,140, 81,140,140,140, 31,140, 0, 81, 31,140],
[ 92, 0, 0, 0, 32, 32,140, 0,140, 0,140,140,140],
[140, 21, 21, 21, 21, 22,140, 0, 0, 0,222, 29,140],
[140,140,140,140,140,140,140, 93,140,140,140,140,140]
],
"areas": "牢狱",
"bgmap": [
],
"fgmap": [
],
"bg2map": [
],
"fg2map": [
]
}

View File

@ -0,0 +1,54 @@
main.floors.xiaoxiang02=
{
"floorId": "xiaoxiang02",
"title": "小巷",
"name": "1",
"width": 13,
"height": 13,
"canFlyTo": true,
"canFlyFrom": true,
"canUseQuickShop": true,
"images": [],
"ratio": 1,
"defaultGround": "grass2",
"firstArrive": [],
"eachArrive": [],
"parallelDo": "",
"events": {},
"changeFloor": {},
"beforeBattle": {},
"afterBattle": {},
"afterGetItem": {},
"afterOpenDoor": {},
"autoEvent": {},
"cannotMove": {},
"cannotMoveIn": {},
"map": [
[141,141,141,141,141,141,141,141,141,141,141,141,141],
[141,141,141,141,141,141,141,141,141,141,141,141,141],
[141,141,141,141,141,141,141,141,141,141,141,141,141],
[140,140,140,140,140,140,140,140,140,140,140,140,140],
[140, 0, 0, 0,140, 0, 0, 0, 0,140, 0, 0,140],
[140, 0,140, 0,140,140,140,140, 0,140,140, 0,140],
[140, 0,140, 0, 0, 0, 0, 0, 0, 0, 0, 0,140],
[ 92, 0,140,140,140,140, 0,140,140,140, 0,140,140],
[140, 0, 0, 0, 0, 0, 0, 0, 0,140, 0, 0,140],
[140,140,140,140,140, 0,140,140, 0,140,140, 0,140],
[140, 0, 0, 0,140, 0,140, 0, 0, 0,140, 0,140],
[140, 0, 0, 0, 81, 0,140, 0, 0, 0, 0, 0,140],
[140,140,140,140,140,140,140,140,140,140,140,140,140]
],
"areas": "牢狱",
"bgmap": [
],
"fgmap": [
],
"bg2map": [
],
"fg2map": [
]
}

View File

@ -177,6 +177,7 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a =
if (!core.hasVisitedFloor(floorId)) { if (!core.hasVisitedFloor(floorId)) {
core.insertAction(core.floors[floorId].firstArrive); core.insertAction(core.floors[floorId].firstArrive);
core.visitFloor(floorId); core.visitFloor(floorId);
core.plugin.bfs();
} }
} }
}, },
@ -484,322 +485,316 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a =
}, },
"enemys": { "enemys": {
"getSpecials": function () { "getSpecials": function () {
// 获得怪物的特殊属性,每一行定义一个特殊属性。 // 获得怪物的特殊属性,每一行定义一个特殊属性。
// 分为五项,第一项为该特殊属性的数字,第二项为特殊属性的名字,第三项为特殊属性的描述 // 分为五项,第一项为该特殊属性的数字,第二项为特殊属性的名字,第三项为特殊属性的描述
// 第四项为该特殊属性的颜色,可以写十六进制 #RRGGBB 或者 [r,g,b,a] 四元数组 // 第四项为该特殊属性的颜色,可以写十六进制 #RRGGBB 或者 [r,g,b,a] 四元数组
// 第五项为该特殊属性的标记;目前 1 代表是地图类技能(需要进行遍历全图) // 第五项为该特殊属性的标记;目前 1 代表是地图类技能(需要进行遍历全图)
// 名字和描述可以直接写字符串也可以写个function将怪物传进去 // 名字和描述可以直接写字符串也可以写个function将怪物传进去
return [ return [
[1, "先攻", "怪物首先攻击", "#ffcc33"], [1, "先攻", "怪物首先攻击", "#ffcc33"],
[2, "魔攻", "怪物无视角色的防御", "#bbb0ff"], [3, "坚固", "怪物防御不小于角色攻击-1", "#c0b088"],
[3, "坚固", "怪物防御不小于角色攻击-1", "#c0b088"], [6, function (enemy) { return (enemy.n || '') + "连击"; }, function (enemy) { return "怪物每回合攻击" + (enemy.n || 4) + "次"; }, "#ffee77"],
[4, "2连击", "怪物每回合攻击2次", "#ffee77"], [7, "破甲", function (enemy) { return "战斗前,怪物附加角色防御的" + Math.floor(100 * (enemy.breakArmor || core.values.breakArmor || 0)) + "%作为伤害"; }, "#88c0ff"],
[5, "3连击", "怪物每回合攻击3次", "#ffee77"], [8, "反击", function (enemy) { return "战斗时,怪物每回合附加角色攻击的" + Math.floor(100 * (enemy.counterAttack || core.values.counterAttack || 0)) + "%作为伤害,无视角色防御"; }, "#ffaa44"],
[6, function (enemy) { return (enemy.n || '') + "连击"; }, function (enemy) { return "怪物每回合攻击" + (enemy.n || 4) + "次"; }, "#ffee77"], [9, "净化", function (enemy) { return "战斗前,怪物附加角色护盾的" + (enemy.purify || core.values.purify) + "倍作为伤害"; }, "#80eed6"],
[7, "破甲", function (enemy) { return "战斗前,怪物附加角色防御的" + Math.floor(100 * (enemy.breakArmor || core.values.breakArmor || 0)) + "%作为伤害"; }, "#88c0ff"], [10, "模仿", "怪物的攻防和角色攻防相等", "#b0c0dd"],
[8, "反击", function (enemy) { return "战斗时,怪物每回合附加角色攻击的" + Math.floor(100 * (enemy.counterAttack || core.values.counterAttack || 0)) + "%作为伤害,无视角色防御"; }, "#ffaa44"], [11, "吸血", function (enemy) { return "战斗前,怪物首先吸取角色的" + Math.floor(100 * enemy.vampire || 0) + "%生命(约" + Math.floor((enemy.vampire || 0) * core.getStatus('hp')) + "点)作为伤害" + (enemy.add ? ",并把伤害数值加到自身生命上" : ""); }, "#dd4448"],
[9, "净化", function (enemy) { return "战斗前,怪物附加角色护盾的" + (enemy.purify || core.values.purify) + "倍作为伤害"; }, "#80eed6"], [12, "中毒", "战斗后,角色陷入中毒状态,每一步损失生命" + core.values.poisonDamage + "点", "#99ee88"],
[10, "模仿", "怪物的攻防和角色攻防相等", "#b0c0dd"], [13, "衰弱", "战斗后,角色陷入衰弱状态,攻防暂时下降" + (core.values.weakValue >= 1 ? core.values.weakValue + "点" : parseInt(core.values.weakValue * 100) + "%"), "#f0bbcc"],
[11, "吸血", function (enemy) { return "战斗前,怪物首先吸取角色的" + Math.floor(100 * enemy.vampire || 0) + "%生命(约" + Math.floor((enemy.vampire || 0) * core.getStatus('hp')) + "点)作为伤害" + (enemy.add ? ",并把伤害数值加到自身生命上" : ""); }, "#dd4448"], [14, "诅咒", "战斗后,角色陷入诅咒状态,战斗无法获得金币和经验", "#bbeef0"],
[12, "中毒", "战斗后,角色陷入中毒状态,每一步损失生命" + core.values.poisonDamage + "点", "#99ee88"], [15, "领域", function (enemy) { return "经过怪物周围" + (enemy.zoneSquare ? "九宫格" : "十字") + "范围内" + (enemy.range || 1) + "格时自动减生命" + (enemy.zone || 0) + "点"; }, "#c677dd"],
[13, "衰弱", "战斗后,角色陷入衰弱状态,攻防暂时下降" + (core.values.weakValue >= 1 ? core.values.weakValue + "点" : parseInt(core.values.weakValue * 100) + "%"), "#f0bbcc"], [16, "夹击", "经过两只相同的怪物中间,角色生命值变成一半", "#bb99ee"],
[14, "诅咒", "战斗后,角色陷入诅咒状态,战斗无法获得金币和经验", "#bbeef0"], [17, "仇恨", "战斗前,怪物附加之前积累的仇恨值作为伤害;战斗后,释放一半的仇恨值。(每杀死一个怪物获得" + (core.values.hatred || 0) + "点仇恨值)", "#b0b666"],
[15, "领域", function (enemy) { return "经过怪物周围" + (enemy.zoneSquare ? "九宫格" : "十字") + "范围内" + (enemy.range || 1) + "格时自动减生命" + (enemy.zone || 0) + "点"; }, "#c677dd"], [18, "阻击", function (enemy) { return "经过怪物周围" + (enemy.zoneSquare ? "九宫格" : "十字") + "时自动减生命" + (enemy.repulse || 0) + "点,同时怪物后退一格"; }, "#8888e6"],
[16, "夹击", "经过两只相同的怪物中间,角色生命值变成一半", "#bb99ee"], [19, "自爆", "战斗后角色的生命值变成1", "#ff6666"],
[17, "仇恨", "战斗前,怪物附加之前积累的仇恨值作为伤害;战斗后,释放一半的仇恨值。(每杀死一个怪物获得" + (core.values.hatred || 0) + "点仇恨值)", "#b0b666"], [20, "无敌", "角色无法打败怪物,除非拥有十字架", "#aaaaaa"],
[18, "阻击", function (enemy) { return "经过怪物周围" + (enemy.zoneSquare ? "九宫格" : "十字") + "时自动减生命" + (enemy.repulse || 0) + "点,同时怪物后退一格"; }, "#8888e6"], [21, "退化", function (enemy) { return "战斗后角色永久下降" + (enemy.atkValue || 0) + "点攻击和" + (enemy.defValue || 0) + "点防御"; }],
[19, "自爆", "战斗后角色的生命值变成1", "#ff6666"], [22, "固伤", function (enemy) { return "战斗前,怪物对角色造成" + (enemy.damage || 0) + "点固定伤害,未开启负伤时无视角色护盾。"; }, "#ff9977"],
[20, "无敌", "角色无法打败怪物,除非拥有十字架", "#aaaaaa"], [23, "重生", "怪物被击败后,角色转换楼层则怪物将再次出现", "#a0e0ff"],
[21, "退化", function (enemy) { return "战斗后角色永久下降" + (enemy.atkValue || 0) + "点攻击和" + (enemy.defValue || 0) + "点防御"; }], [24, "激光", function (enemy) { return "经过怪物同行或同列时自动减生命" + (enemy.laser || 0) + "点"; }, "#dda0dd"],
[22, "固伤", function (enemy) { return "战斗前,怪物对角色造成" + (enemy.damage || 0) + "点固定伤害,未开启负伤时无视角色护盾。"; }, "#ff9977"], [25, "光环", function (enemy) { return (enemy.range != null ? ((enemy.haloSquare ? "该怪物九宫格" : "该怪物十字") + enemy.haloRange + "格范围内") : "同楼层所有") + "怪物生命提升" + (enemy.hpBuff || 0) + "%,攻击提升" + (enemy.atkBuff || 0) + "%,防御提升" + (enemy.defBuff || 0) + "%" + (enemy.haloAdd ? "可叠加" : "不可叠加"); }, "#e6e099", 1],
[23, "重生", "怪物被击败后,角色转换楼层则怪物将再次出现", "#a0e0ff"], [26, "支援", "当周围一圈的怪物受到攻击时将上前支援,并组成小队战斗。", "#77c0b6", 1],
[24, "激光", function (enemy) { return "经过怪物同行或同列时自动减生命" + (enemy.laser || 0) + "点"; }, "#dda0dd"], [27, "捕捉", function (enemy) { return "当走到怪物周围" + (enemy.zoneSquare ? "九宫格" : "十字") + "时会强制进行战斗。"; }, "#c0ddbb"]
[25, "光环", function (enemy) { return (enemy.range != null ? ((enemy.haloSquare ? "该怪物九宫格" : "该怪物十字") + enemy.haloRange + "格范围内") : "同楼层所有") + "怪物生命提升" + (enemy.hpBuff || 0) + "%,攻击提升" + (enemy.atkBuff || 0) + "%,防御提升" + (enemy.defBuff || 0) + "%" + (enemy.haloAdd ? "可叠加" : "不可叠加"); }, "#e6e099", 1], ];
[26, "支援", "当周围一圈的怪物受到攻击时将上前支援,并组成小队战斗。", "#77c0b6", 1], },
[27, "捕捉", function (enemy) { return "当走到怪物周围" + (enemy.zoneSquare ? "九宫格" : "十字") + "时会强制进行战斗。"; }, "#c0ddbb"]
];
},
"getEnemyInfo": function (enemy, hero, x, y, floorId) { "getEnemyInfo": function (enemy, hero, x, y, floorId) {
// 获得某个怪物变化后的数据;该函数将被伤害计算和怪物手册使用 // 获得某个怪物变化后的数据;该函数将被伤害计算和怪物手册使用
// 例如:坚固、模仿、仿攻等等 // 例如:坚固、模仿、仿攻等等
// //
// 参数说明: // 参数说明:
// enemy该怪物信息 // enemy该怪物信息
// hero_hp,hero_atk,hero_def,hero_mdef勇士的生命攻防护盾数据 // hero_hp,hero_atk,hero_def,hero_mdef勇士的生命攻防护盾数据
// x,y该怪物的坐标查看手册和强制战斗时为undefined // x,y该怪物的坐标查看手册和强制战斗时为undefined
// floorId该怪物所在的楼层 // floorId该怪物所在的楼层
// 后面三个参数主要是可以在光环等效果上可以适用(也可以按需制作部分范围光环效果) // 后面三个参数主要是可以在光环等效果上可以适用(也可以按需制作部分范围光环效果)
floorId = floorId || core.status.floorId; floorId = floorId || core.status.floorId;
var hero_hp = core.getRealStatusOrDefault(hero, 'hp'), var hero_hp = core.getRealStatusOrDefault(hero, 'hp'),
hero_atk = core.getRealStatusOrDefault(hero, 'atk'), hero_atk = core.getRealStatusOrDefault(hero, 'atk'),
hero_def = core.getRealStatusOrDefault(hero, 'def'), hero_def = core.getRealStatusOrDefault(hero, 'def'),
hero_mdef = core.getRealStatusOrDefault(hero, 'mdef'); hero_mdef = core.getRealStatusOrDefault(hero, 'mdef');
var mon_hp = core.getEnemyValue(enemy, 'hp', x, y, floorId), var mon_hp = core.getEnemyValue(enemy, 'hp', x, y, floorId),
mon_atk = core.getEnemyValue(enemy, 'atk', x, y, floorId), mon_atk = core.getEnemyValue(enemy, 'atk', x, y, floorId),
mon_def = core.getEnemyValue(enemy, 'def', x, y, floorId), mon_def = core.getEnemyValue(enemy, 'def', x, y, floorId),
mon_special = core.getEnemyValue(enemy, 'special', x, y, floorId); mon_special = core.getEnemyValue(enemy, 'special', x, y, floorId);
var mon_money = core.getEnemyValue(enemy, 'money', x, y, floorId), var mon_money = core.getEnemyValue(enemy, 'money', x, y, floorId),
mon_exp = core.getEnemyValue(enemy, 'exp', x, y, floorId), mon_exp = core.getEnemyValue(enemy, 'exp', x, y, floorId),
mon_point = core.getEnemyValue(enemy, 'point', x, y, floorId); mon_point = core.getEnemyValue(enemy, 'point', x, y, floorId);
// 模仿 // 模仿
if (core.hasSpecial(mon_special, 10)) { if (core.hasSpecial(mon_special, 10)) {
mon_atk = hero_atk; mon_atk = hero_atk;
mon_def = hero_def; mon_def = hero_def;
} }
// 坚固 // 坚固
if (core.hasSpecial(mon_special, 3) && mon_def < hero_atk - 1) { if (core.hasSpecial(mon_special, 3) && mon_def < hero_atk - 1) {
mon_def = hero_atk - 1; mon_def = hero_atk - 1;
} }
var guards = []; var guards = [];
// 光环和支援检查 // 光环和支援检查
if (!core.status.checkBlock) core.status.checkBlock = {}; if (!core.status.checkBlock) core.status.checkBlock = {};
if (core.status.checkBlock.needCache) { if (core.status.checkBlock.needCache) {
// 从V2.5.4开始,对光环效果增加缓存,以解决多次重复计算的问题,从而大幅提升运行效率。 // 从V2.5.4开始,对光环效果增加缓存,以解决多次重复计算的问题,从而大幅提升运行效率。
var hp_buff = 0, var hp_buff = 0,
atk_buff = 0, atk_buff = 0,
def_buff = 0; def_buff = 0;
// 已经计算过的光环怪ID列表用于判定叠加 // 已经计算过的光环怪ID列表用于判定叠加
var usedEnemyIds = {}; var usedEnemyIds = {};
// 检查光环和支援的缓存 // 检查光环和支援的缓存
var index = x != null && y != null ? (x + "," + y) : floorId; var index = x != null && y != null ? (x + "," + y) : floorId;
if (!core.status.checkBlock.cache) core.status.checkBlock.cache = {}; if (!core.status.checkBlock.cache) core.status.checkBlock.cache = {};
var cache = core.status.checkBlock.cache[index]; var cache = core.status.checkBlock.cache[index];
if (!cache) { if (!cache) {
// 没有该点的缓存,则遍历每个图块 // 没有该点的缓存,则遍历每个图块
core.extractBlocks(floorId); core.extractBlocks(floorId);
core.status.maps[floorId].blocks.forEach(function (block) { core.status.maps[floorId].blocks.forEach(function (block) {
if (!block.disable) { if (!block.disable) {
// 获得该图块的ID // 获得该图块的ID
var id = block.event.id, var id = block.event.id,
enemy = core.material.enemys[id]; enemy = core.material.enemys[id];
// 检查【光环】技能数字25 // 检查【光环】技能数字25
if (enemy && core.hasSpecial(enemy.special, 25)) { if (enemy && core.hasSpecial(enemy.special, 25)) {
// 检查是否是范围光环 // 检查是否是范围光环
var inRange = enemy.haloRange == null; var inRange = enemy.haloRange == null;
if (enemy.haloRange != null && x != null && y != null) { if (enemy.haloRange != null && x != null && y != null) {
var dx = Math.abs(block.x - x), var dx = Math.abs(block.x - x),
dy = Math.abs(block.y - y); dy = Math.abs(block.y - y);
// 检查十字和九宫格光环 // 检查十字和九宫格光环
if (dx + dy <= enemy.haloRange) inRange = true; if (dx + dy <= enemy.haloRange) inRange = true;
if (enemy.haloSquare && dx <= enemy.haloRange && dy <= enemy.haloRange) inRange = true; if (enemy.haloSquare && dx <= enemy.haloRange && dy <= enemy.haloRange) inRange = true;
} }
// 检查是否可叠加 // 检查是否可叠加
if (inRange && (enemy.haloAdd || !usedEnemyIds[enemy.id])) { if (inRange && (enemy.haloAdd || !usedEnemyIds[enemy.id])) {
hp_buff += enemy.hpBuff || 0; hp_buff += enemy.hpBuff || 0;
atk_buff += enemy.atkBuff || 0; atk_buff += enemy.atkBuff || 0;
def_buff += enemy.defBuff || 0; def_buff += enemy.defBuff || 0;
usedEnemyIds[enemy.id] = true; usedEnemyIds[enemy.id] = true;
}
}
// 检查【支援】技能数字26
if (enemy && core.hasSpecial(enemy.special, 26) &&
// 检查支援条件坐标存在距离为1且不能是自己
// 其他类型的支援怪,比如十字之类的话.... 看着做是一样的
x != null && y != null && Math.abs(block.x - x) <= 1 && Math.abs(block.y - y) <= 1 && !(x == block.x && y == block.y)) {
// 记录怪物的x,yID
guards.push([block.x, block.y, id]);
}
// TODO如果有其他类型光环怪物在这里仿照添加检查
// 注新增新的类光环属性需要遍历全图的需要在特殊属性定义那里的第五项写1参见光环和支援的特殊属性定义。
} }
});
core.status.checkBlock.cache[index] = { "hp_buff": hp_buff, "atk_buff": atk_buff, "def_buff": def_buff, "guards": guards };
} else {
// 直接使用缓存数据
hp_buff = cache.hp_buff;
atk_buff = cache.atk_buff;
def_buff = cache.def_buff;
guards = cache.guards;
}
// 增加比例;如果要增加数值可以直接在这里修改
mon_hp *= (1 + hp_buff / 100);
mon_atk *= (1 + atk_buff / 100);
mon_def *= (1 + def_buff / 100);
}
// TODO可以在这里新增其他的怪物数据变化
// 比如仿攻(怪物攻击不低于勇士攻击):
// if (core.hasSpecial(mon_special, 27) && mon_atk < hero_atk) {
// mon_atk = hero_atk;
// }
// 也可以按需增加各种自定义内容
return {
"hp": Math.floor(mon_hp),
"atk": Math.floor(mon_atk),
"def": Math.floor(mon_def),
"money": Math.floor(mon_money),
"exp": Math.floor(mon_exp),
"point": Math.floor(mon_point),
"special": mon_special,
"guards": guards, // 返回支援情况
};
},
"getDamageInfo": function (enemy, hero, x, y, floorId) {
// 获得战斗伤害信息(实际伤害计算函数)
//
// 参数说明:
// enemy该怪物信息
// hero勇士的当前数据如果对应项不存在则会从core.status.hero中取。
// x,y该怪物的坐标查看手册和强制战斗时为undefined
// floorId该怪物所在的楼层
// 后面三个参数主要是可以在光环等效果上可以适用
floorId = floorId || core.status.floorId;
var hero_hp = core.getRealStatusOrDefault(hero, 'hp'),
hero_atk = core.getRealStatusOrDefault(hero, 'atk'),
hero_def = core.getRealStatusOrDefault(hero, 'def'),
hero_mdef = core.getRealStatusOrDefault(hero, 'mdef'),
origin_hero_hp = core.getStatusOrDefault(hero, 'hp'),
origin_hero_atk = core.getStatusOrDefault(hero, 'atk'),
origin_hero_def = core.getStatusOrDefault(hero, 'def');
// 勇士的负属性都按0计算
hero_hp = Math.max(0, hero_hp);
hero_atk = Math.max(0, hero_atk);
hero_def = Math.max(0, hero_def);
hero_mdef = Math.max(0, hero_mdef);
// 怪物的各项数据
// 对坚固模仿等处理扔到了脚本编辑-getEnemyInfo之中
var enemyInfo = core.enemys.getEnemyInfo(enemy, hero, x, y, floorId);
var mon_hp = enemyInfo.hp,
mon_atk = enemyInfo.atk,
mon_def = enemyInfo.def,
mon_special = enemyInfo.special;
// 技能的处理
if (core.getFlag('skill', 0) == 1) { // 开启了技能1二倍斩
hero_atk *= 2; // 计算时攻击力翻倍
}
// 如果是无敌属性,且勇士未持有十字架
if (core.hasSpecial(mon_special, 20) && !core.hasItem("cross"))
return null; // 不可战斗
// 战前造成的额外伤害(可被护盾抵消)
var init_damage = 0;
// 吸血
if (core.hasSpecial(mon_special, 11)) {
var vampire_damage = hero_hp * enemy.vampire;
// 如果有神圣盾免疫吸血等可以在这里写
// 也可以用hasItem和hasEquip来判定装备
// if (core.hasFlag('shield5')) vampire_damage = 0;
vampire_damage = Math.floor(vampire_damage) || 0;
// 加到自身
if (enemy.add) // 如果加到自身
mon_hp += vampire_damage;
init_damage += vampire_damage;
}
// 每回合怪物对勇士造成的战斗伤害
var per_damage = mon_atk - hero_def;
// 魔攻:战斗伤害就是怪物攻击力
if (core.hasSpecial(mon_special, 2)) per_damage = mon_atk;
// 战斗伤害不能为负值
if (per_damage < 0) per_damage = 0;
// 2连击 & 3连击 & N连击
if (core.hasSpecial(mon_special, 4)) per_damage *= 2;
if (core.hasSpecial(mon_special, 5)) per_damage *= 3;
if (core.hasSpecial(mon_special, 6)) per_damage *= (enemy.n || 4);
// 每回合的反击伤害;反击是按照勇士的攻击次数来计算回合
var counterDamage = 0;
if (core.hasSpecial(mon_special, 8))
counterDamage += Math.floor((enemy.counterAttack || core.values.counterAttack) * hero_atk);
// 先攻
if (core.hasSpecial(mon_special, 1)) init_damage += per_damage;
// 破甲
if (core.hasSpecial(mon_special, 7))
init_damage += Math.floor((enemy.breakArmor || core.values.breakArmor) * hero_def);
// 净化
if (core.hasSpecial(mon_special, 9))
init_damage += Math.floor((enemy.purify || core.values.purify) * hero_mdef);
// 勇士每回合对怪物造成的伤害
var hero_per_damage = Math.max(hero_atk - mon_def, 0);
// 如果没有破防,则不可战斗
if (hero_per_damage <= 0) return null;
// 勇士的攻击回合数;为怪物生命除以每回合伤害向上取整
var turn = Math.ceil(mon_hp / hero_per_damage);
// ------ 支援 ----- //
// 这个递归最好想明白为什么flag:__extraTurn__是怎么用的
var guards = core.getFlag("__guards__" + x + "_" + y, enemyInfo.guards);
var guard_before_current_enemy = false; // ------ 支援怪是先打(true)还是后打(false)
turn += core.getFlag("__extraTurn__", 0);
if (guards.length > 0) {
if (!guard_before_current_enemy) { // --- 先打当前怪物,记录当前回合数
core.setFlag("__extraTurn__", turn);
}
// 获得那些怪物组成小队战斗
for (var i = 0; i < guards.length; i++) {
var gx = guards[i][0],
gy = guards[i][1],
gid = guards[i][2];
// 递归计算支援怪伤害信息这里不传x,y保证不会重复调用
// 这里的mdef传0因为护盾应该只会被计算一次
var info = core.enemys.getDamageInfo(core.material.enemys[gid], { hp: origin_hero_hp, atk: origin_hero_atk, def: origin_hero_def, mdef: 0 });
if (info == null) { // 小队中任何一个怪物不可战斗直接返回null
core.removeFlag("__extraTurn__");
return null;
} }
// 已经进行的回合数 // 检查【支援】技能数字26
core.setFlag("__extraTurn__", info.turn); if (enemy && core.hasSpecial(enemy.special, 26) &&
init_damage += info.damage; // 检查支援条件坐标存在距离为1且不能是自己
// 其他类型的支援怪,比如十字之类的话.... 看着做是一样的
x != null && y != null && Math.abs(block.x - x) <= 1 && Math.abs(block.y - y) <= 1 && !(x == block.x && y == block.y)) {
// 记录怪物的x,yID
guards.push([block.x, block.y, id]);
}
// TODO如果有其他类型光环怪物在这里仿照添加检查
// 注新增新的类光环属性需要遍历全图的需要在特殊属性定义那里的第五项写1参见光环和支援的特殊属性定义。
} }
if (guard_before_current_enemy) { // --- 先打支援怪物,增加当前回合数 });
turn += core.getFlag("__extraTurn__", 0);
}
}
core.removeFlag("__extraTurn__");
// ------ 支援END ------ //
// 最终伤害:初始伤害 + 怪物对勇士造成的伤害 + 反击伤害 core.status.checkBlock.cache[index] = { "hp_buff": hp_buff, "atk_buff": atk_buff, "def_buff": def_buff, "guards": guards };
var damage = init_damage + (turn - 1) * per_damage + turn * counterDamage; } else {
// 再扣去护盾 // 直接使用缓存数据
damage -= hero_mdef; hp_buff = cache.hp_buff;
atk_buff = cache.atk_buff;
// 检查是否允许负伤 def_buff = cache.def_buff;
if (!core.flags.enableNegativeDamage) guards = cache.guards;
damage = Math.max(0, damage);
// 最后处理仇恨和固伤(因为这两个不能被护盾减伤)
if (core.hasSpecial(mon_special, 17)) { // 仇恨
damage += core.getFlag('hatred', 0);
}
if (core.hasSpecial(mon_special, 22)) { // 固伤
damage += enemy.damage || 0;
}
return {
"mon_hp": Math.floor(mon_hp),
"mon_atk": Math.floor(mon_atk),
"mon_def": Math.floor(mon_def),
"init_damage": Math.floor(init_damage),
"per_damage": Math.floor(per_damage),
"hero_per_damage": Math.floor(hero_per_damage),
"turn": Math.floor(turn),
"damage": Math.floor(damage)
};
} }
// 增加比例;如果要增加数值可以直接在这里修改
mon_hp *= (1 + hp_buff / 100);
mon_atk *= (1 + atk_buff / 100);
mon_def *= (1 + def_buff / 100);
}
// TODO可以在这里新增其他的怪物数据变化
// 比如仿攻(怪物攻击不低于勇士攻击):
// if (core.hasSpecial(mon_special, 27) && mon_atk < hero_atk) {
// mon_atk = hero_atk;
// }
// 也可以按需增加各种自定义内容
return {
"hp": Math.floor(mon_hp),
"atk": Math.floor(mon_atk),
"def": Math.floor(mon_def),
"money": Math.floor(mon_money),
"exp": Math.floor(mon_exp),
"point": Math.floor(mon_point),
"special": mon_special,
"guards": guards, // 返回支援情况
};
},
"getDamageInfo": function (enemy, hero, x, y, floorId) {
// 获得战斗伤害信息(实际伤害计算函数)
//
// 参数说明:
// enemy该怪物信息
// hero勇士的当前数据如果对应项不存在则会从core.status.hero中取。
// x,y该怪物的坐标查看手册和强制战斗时为undefined
// floorId该怪物所在的楼层
// 后面三个参数主要是可以在光环等效果上可以适用
floorId = floorId || core.status.floorId;
var hero_hp = core.getRealStatusOrDefault(hero, 'hp'),
hero_atk = core.getRealStatusOrDefault(hero, 'atk'),
hero_def = core.getRealStatusOrDefault(hero, 'def'),
hero_mdef = core.getRealStatusOrDefault(hero, 'mdef'),
origin_hero_hp = core.getStatusOrDefault(hero, 'hp'),
origin_hero_atk = core.getStatusOrDefault(hero, 'atk'),
origin_hero_def = core.getStatusOrDefault(hero, 'def');
// 勇士的负属性都按0计算
hero_hp = Math.max(0, hero_hp);
hero_atk = Math.max(0, hero_atk);
hero_def = Math.max(0, hero_def);
hero_mdef = Math.max(0, hero_mdef);
// 怪物的各项数据
// 对坚固模仿等处理扔到了脚本编辑-getEnemyInfo之中
var enemyInfo = core.enemys.getEnemyInfo(enemy, hero, x, y, floorId);
var mon_hp = enemyInfo.hp,
mon_atk = enemyInfo.atk,
mon_def = enemyInfo.def,
mon_special = enemyInfo.special;
// 技能的处理
if (core.getFlag('skill', 0) == 1) { // 开启了技能1二倍斩
hero_atk *= 2; // 计算时攻击力翻倍
}
// 如果是无敌属性,且勇士未持有十字架
if (core.hasSpecial(mon_special, 20) && !core.hasItem("cross"))
return null; // 不可战斗
// 战前造成的额外伤害(可被护盾抵消)
var init_damage = 0;
// 吸血
if (core.hasSpecial(mon_special, 11)) {
var vampire_damage = hero_hp * enemy.vampire;
// 如果有神圣盾免疫吸血等可以在这里写
// 也可以用hasItem和hasEquip来判定装备
// if (core.hasFlag('shield5')) vampire_damage = 0;
vampire_damage = Math.floor(vampire_damage) || 0;
// 加到自身
if (enemy.add) // 如果加到自身
mon_hp += vampire_damage;
init_damage += vampire_damage;
}
// 每回合怪物对勇士造成的战斗伤害
var per_damage = mon_atk - hero_def;
// 战斗伤害不能为负值
if (per_damage < 0) per_damage = 0;
// 连击
if (core.hasSpecial(mon_special, 6)) per_damage *= (enemy.n || 2);
// 每回合的反击伤害;反击是按照勇士的攻击次数来计算回合
var counterDamage = 0;
if (core.hasSpecial(mon_special, 8))
counterDamage += Math.floor((enemy.counterAttack || core.values.counterAttack) * hero_atk);
// 先攻
if (core.hasSpecial(mon_special, 1)) init_damage += per_damage;
// 破甲
if (core.hasSpecial(mon_special, 7))
init_damage += Math.floor((enemy.breakArmor || core.values.breakArmor) * hero_def);
// 净化
if (core.hasSpecial(mon_special, 9))
init_damage += Math.floor((enemy.purify || core.values.purify) * hero_mdef);
// 勇士每回合对怪物造成的伤害
var hero_per_damage = Math.max(hero_atk - mon_def, 0);
// 如果没有破防,则不可战斗
if (hero_per_damage <= 0) return null;
// 勇士的攻击回合数;为怪物生命除以每回合伤害向上取整
var turn = Math.ceil(mon_hp / hero_per_damage);
// ------ 支援 ----- //
// 这个递归最好想明白为什么flag:__extraTurn__是怎么用的
var guards = core.getFlag("__guards__" + x + "_" + y, enemyInfo.guards);
var guard_before_current_enemy = false; // ------ 支援怪是先打(true)还是后打(false)
turn += core.getFlag("__extraTurn__", 0);
if (guards.length > 0) {
if (!guard_before_current_enemy) { // --- 先打当前怪物,记录当前回合数
core.setFlag("__extraTurn__", turn);
}
// 获得那些怪物组成小队战斗
for (var i = 0; i < guards.length; i++) {
var gx = guards[i][0],
gy = guards[i][1],
gid = guards[i][2];
// 递归计算支援怪伤害信息这里不传x,y保证不会重复调用
// 这里的mdef传0因为护盾应该只会被计算一次
var info = core.enemys.getDamageInfo(core.material.enemys[gid], { hp: origin_hero_hp, atk: origin_hero_atk, def: origin_hero_def, mdef: 0 });
if (info == null) { // 小队中任何一个怪物不可战斗直接返回null
core.removeFlag("__extraTurn__");
return null;
}
// 已经进行的回合数
core.setFlag("__extraTurn__", info.turn);
init_damage += info.damage;
}
if (guard_before_current_enemy) { // --- 先打支援怪物,增加当前回合数
turn += core.getFlag("__extraTurn__", 0);
}
}
core.removeFlag("__extraTurn__");
// ------ 支援END ------ //
// 最终伤害:初始伤害 + 怪物对勇士造成的伤害 + 反击伤害
var damage = init_damage + (turn - 1) * per_damage + turn * counterDamage;
// 再扣去护盾
damage -= hero_mdef;
// 检查是否允许负伤
if (!core.flags.enableNegativeDamage)
damage = Math.max(0, damage);
// 最后处理仇恨和固伤(因为这两个不能被护盾减伤)
if (core.hasSpecial(mon_special, 17)) { // 仇恨
damage += core.getFlag('hatred', 0);
}
if (core.hasSpecial(mon_special, 22)) { // 固伤
damage += enemy.damage || 0;
}
return {
"mon_hp": Math.floor(mon_hp),
"mon_atk": Math.floor(mon_atk),
"mon_def": Math.floor(mon_def),
"init_damage": Math.floor(init_damage),
"per_damage": Math.floor(per_damage),
"hero_per_damage": Math.floor(hero_per_damage),
"turn": Math.floor(turn),
"damage": Math.floor(damage)
};
}
}, },
"actions": { "actions": {
"onKeyUp": function (keyCode, altKey) { "onKeyUp": function (keyCode, altKey) {
@ -1167,6 +1162,8 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a =
} }
}, },
"updateStatusBar": function () { "updateStatusBar": function () {
//更新属性映射
core.updateStatus()
// 更新状态栏 // 更新状态栏
core.ui.statusBar.update(); core.ui.statusBar.update();

View File

@ -94,38 +94,26 @@ var icons_4665ee12_3a1f_44a4_bea3_0fccba634dc1 =
"T358": 62, "T358": 62,
"T359": 63, "T359": 63,
"T360": 64, "T360": 64,
"T361": 65, "T376": 65,
"T362": 66, "T377": 66,
"T363": 67, "T378": 67,
"T364": 68, "T379": 68,
"T365": 69, "T380": 69,
"T366": 70, "T381": 70,
"T367": 71, "T382": 71,
"T368": 72, "T383": 72,
"T369": 73, "T384": 73,
"T370": 74, "T385": 74,
"T371": 75, "T386": 75,
"T372": 76, "T387": 76,
"T373": 77, "T388": 77,
"T374": 78, "T389": 78,
"T375": 79, "T390": 79,
"T376": 80, "T391": 80,
"T377": 81, "T392": 81,
"T378": 82, "T393": 82,
"T379": 83, "T394": 83,
"T380": 84, "T395": 84
"T381": 85,
"T382": 86,
"T383": 87,
"T384": 88,
"T385": 89,
"T386": 90,
"T387": 91,
"T388": 92,
"T389": 93,
"T390": 94,
"T391": 95,
"T392": 96
}, },
"animates": { "animates": {
"star": 0, "star": 0,

BIN
project/images/bg_3531.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

BIN
project/images/bg_3563.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 815 KiB

BIN
project/images/bg_3601.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

BIN
project/images/bg_6004.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

BIN
project/images/cao.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 123 KiB

BIN
project/images/lane1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 849 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 643 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 574 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

View File

@ -144,7 +144,7 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a =
"itemEffectTip": ",攻击+0" "itemEffectTip": ",攻击+0"
}, },
"sword1": { "sword1": {
"cls": "items", "cls": "equips",
"name": "铁剑", "name": "铁剑",
"text": "一把很普通的铁剑", "text": "一把很普通的铁剑",
"equip": { "equip": {
@ -152,27 +152,31 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a =
"animate": "sword", "animate": "sword",
"value": { "value": {
"atk": 10 "atk": 10
} },
"percentage": {}
}, },
"itemEffect": "core.status.hero.atk += 10", "itemEffect": "core.status.hero.atk += 10",
"itemEffectTip": ",攻击+10" "itemEffectTip": ",攻击+10",
"equipCls": "双手剑"
}, },
"sword2": { "sword2": {
"cls": "items", "cls": "equips",
"name": "银剑", "name": "银剑",
"text": "一把很普通的银剑", "text": "一把很普通的银剑",
"equip": { "equip": {
"type": 0, "type": "武器",
"animate": "sword", "animate": "sword",
"value": { "value": {
"atk": 20 "atk": 20
} },
"percentage": {}
}, },
"itemEffect": "core.status.hero.atk += 20", "itemEffect": "core.status.hero.atk += 20",
"itemEffectTip": ",攻击+20" "itemEffectTip": ",攻击+20",
"equipCls": "匕首"
}, },
"sword3": { "sword3": {
"cls": "items", "cls": "equips",
"name": "骑士剑", "name": "骑士剑",
"text": "一把很普通的骑士剑", "text": "一把很普通的骑士剑",
"equip": { "equip": {
@ -180,38 +184,44 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a =
"animate": "sword", "animate": "sword",
"value": { "value": {
"atk": 40 "atk": 40
} },
"percentage": {}
}, },
"itemEffect": "core.status.hero.atk += 40", "itemEffect": "core.status.hero.atk += 40",
"itemEffectTip": ",攻击+40" "itemEffectTip": ",攻击+40",
"equipCls": "法杖"
}, },
"sword4": { "sword4": {
"cls": "items", "cls": "equips",
"name": "圣剑", "name": "圣剑",
"text": "一把很普通的圣剑", "text": "一把很普通的圣剑",
"equip": { "equip": {
"type": 0, "type": "武器",
"animate": "sword", "animate": "sword",
"value": { "value": {
"atk": 80 "atk": 80
} },
"percentage": {}
}, },
"itemEffect": "core.status.hero.atk += 80", "itemEffect": "core.status.hero.atk += 80",
"itemEffectTip": ",攻击+80" "itemEffectTip": ",攻击+80",
"equipCls": "单手剑"
}, },
"sword5": { "sword5": {
"cls": "equips", "cls": "equips",
"name": "神圣剑", "name": "神圣剑",
"text": "一把很普通的神圣剑", "text": "一把很普通的神圣剑",
"equip": { "equip": {
"type": 0, "type": "武器",
"animate": "sword", "animate": "sword",
"value": { "value": {
"atk": 160 "atk": 160
} },
"percentage": {}
}, },
"itemEffect": "core.status.hero.atk += 100", "itemEffect": "core.status.hero.atk += 100",
"itemEffectTip": ",攻击+100" "itemEffectTip": ",攻击+100",
"equipCls": "匕首"
}, },
"shield0": { "shield0": {
"cls": "items", "cls": "items",
@ -234,10 +244,12 @@ var items_296f5d02_12fd_4166_a7c1_b5e830c9ee3a =
"type": 1, "type": 1,
"value": { "value": {
"def": 10 "def": 10
} },
"percentage": {}
}, },
"itemEffect": "core.status.hero.def += 10", "itemEffect": "core.status.hero.def += 10",
"itemEffectTip": ",防御+10" "itemEffectTip": ",防御+10",
"equipCls": "盾牌"
}, },
"shield2": { "shield2": {
"cls": "items", "cls": "items",

View File

@ -259,21 +259,6 @@ var maps_90f36752_8815_4be8_b32b_d7fad1d0542e =
"358": {"cls":"terrains","id":"T358"}, "358": {"cls":"terrains","id":"T358"},
"359": {"cls":"terrains","id":"T359"}, "359": {"cls":"terrains","id":"T359"},
"360": {"cls":"terrains","id":"T360"}, "360": {"cls":"terrains","id":"T360"},
"361": {"cls":"terrains","id":"T361"},
"362": {"cls":"terrains","id":"T362"},
"363": {"cls":"terrains","id":"T363"},
"364": {"cls":"terrains","id":"T364"},
"365": {"cls":"terrains","id":"T365"},
"366": {"cls":"terrains","id":"T366"},
"367": {"cls":"terrains","id":"T367"},
"368": {"cls":"terrains","id":"T368"},
"369": {"cls":"terrains","id":"T369"},
"370": {"cls":"terrains","id":"T370"},
"371": {"cls":"terrains","id":"T371"},
"372": {"cls":"terrains","id":"T372"},
"373": {"cls":"terrains","id":"T373"},
"374": {"cls":"terrains","id":"T374"},
"375": {"cls":"terrains","id":"T375"},
"376": {"cls":"terrains","id":"T376"}, "376": {"cls":"terrains","id":"T376"},
"377": {"cls":"terrains","id":"T377"}, "377": {"cls":"terrains","id":"T377"},
"378": {"cls":"terrains","id":"T378"}, "378": {"cls":"terrains","id":"T378"},
@ -291,6 +276,9 @@ var maps_90f36752_8815_4be8_b32b_d7fad1d0542e =
"390": {"cls":"terrains","id":"T390"}, "390": {"cls":"terrains","id":"T390"},
"391": {"cls":"terrains","id":"T391"}, "391": {"cls":"terrains","id":"T391"},
"392": {"cls":"terrains","id":"T392"}, "392": {"cls":"terrains","id":"T392"},
"393": {"cls":"terrains","id":"T393"},
"394": {"cls":"terrains","id":"T394"},
"395": {"cls":"terrains","id":"T395"},
"20034": {"cls":"tileset","id":"X20034","canPass":true}, "20034": {"cls":"tileset","id":"X20034","canPass":true},
"20154": {"cls":"tileset","id":"X20154","canPass":true}, "20154": {"cls":"tileset","id":"X20154","canPass":true},
"20216": {"cls":"tileset","id":"X20216","canPass":true}, "20216": {"cls":"tileset","id":"X20216","canPass":true},

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

After

Width:  |  Height:  |  Size: 48 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
project/tilesets/C5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 418 KiB