Compare commits
	
		
			20 Commits
		
	
	
		
			6015934eef
			...
			8d8c2f827d
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 8d8c2f827d | |||
| 3623140558 | |||
| 57a9a96e86 | |||
| 2b8e9d25b0 | |||
| b2801fc1c6 | |||
|   | 56f466db86 | ||
| 7523611b87 | |||
|   | 119570953e | ||
| 9259cb901a | |||
| 8f596865bd | |||
| d8d9809da6 | |||
|   | 63708720dc | ||
|   | f5e5edc9d3 | ||
| 7fb0248f55 | |||
| 254f0ca2a5 | |||
| 23cce9fc15 | |||
| 43c6f610a3 | |||
| 68da490685 | |||
| cfaf64aa63 | |||
|   | c3a342fc7c | 
| @ -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 | ||||||
|  | |||||||
| @ -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]); | ||||||
|  | |||||||
| @ -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, | ||||||
|  | |||||||
| @ -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, | ||||||
|  | |||||||
							
								
								
									
										
											BIN
										
									
								
								project/bgms/Blind_Alley.mp3
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								project/bgms/Crawler.mp3
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @ -34,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", | ||||||
| @ -96,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", | ||||||
| @ -159,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", | ||||||
| @ -220,7 +243,9 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d = | |||||||
| 		"levelChoose": null, | 		"levelChoose": null, | ||||||
| 		"equipName": [ | 		"equipName": [ | ||||||
| 			"武器", | 			"武器", | ||||||
| 			"盾牌" | 			"武器", | ||||||
|  | 			"防具", | ||||||
|  | 			"饰品" | ||||||
| 		], | 		], | ||||||
| 		"startBgm": "theme.mp3", | 		"startBgm": "theme.mp3", | ||||||
| 		"styles": { | 		"styles": { | ||||||
| @ -296,7 +321,14 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d = | |||||||
| 				"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": [ | ||||||
| 			{ | 			{ | ||||||
|  | |||||||
| @ -10,7 +10,7 @@ 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]}, | ||||||
|  | |||||||
							
								
								
									
										2851
									
								
								project/events.js
									
									
									
									
									
								
							
							
						
						| @ -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, | ||||||
|  | |||||||
| @ -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, | ||||||
| @ -26,6 +26,29 @@ main.floors.jiuguan= | |||||||
|                 ], |                 ], | ||||||
|                 "direction": "down" |                 "direction": "down" | ||||||
|             } |             } | ||||||
|  |         ], | ||||||
|  |         "4,10": [ | ||||||
|  |             { | ||||||
|  |                 "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": {}, | ||||||
|  | |||||||
| @ -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(); | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
| }, | }, | ||||||
| @ -491,10 +492,7 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = | |||||||
| 	// 名字和描述可以直接写字符串,也可以写个function将怪物传进去
 | 	// 名字和描述可以直接写字符串,也可以写个function将怪物传进去
 | ||||||
| 	return [ | 	return [ | ||||||
| 		[1, "先攻", "怪物首先攻击", "#ffcc33"], | 		[1, "先攻", "怪物首先攻击", "#ffcc33"], | ||||||
| 				[2, "魔攻", "怪物无视角色的防御", "#bbb0ff"], |  | ||||||
| 		[3, "坚固", "怪物防御不小于角色攻击-1", "#c0b088"], | 		[3, "坚固", "怪物防御不小于角色攻击-1", "#c0b088"], | ||||||
| 				[4, "2连击", "怪物每回合攻击2次", "#ffee77"], |  | ||||||
| 				[5, "3连击", "怪物每回合攻击3次", "#ffee77"], |  | ||||||
| 		[6, function (enemy) { return (enemy.n || '') + "连击"; }, function (enemy) { return "怪物每回合攻击" + (enemy.n || 4) + "次"; }, "#ffee77"], | 		[6, function (enemy) { return (enemy.n || '') + "连击"; }, function (enemy) { return "怪物每回合攻击" + (enemy.n || 4) + "次"; }, "#ffee77"], | ||||||
| 		[7, "破甲", function (enemy) { return "战斗前,怪物附加角色防御的" + Math.floor(100 * (enemy.breakArmor || core.values.breakArmor || 0)) + "%作为伤害"; }, "#88c0ff"], | 		[7, "破甲", function (enemy) { return "战斗前,怪物附加角色防御的" + Math.floor(100 * (enemy.breakArmor || core.values.breakArmor || 0)) + "%作为伤害"; }, "#88c0ff"], | ||||||
| 		[8, "反击", function (enemy) { return "战斗时,怪物每回合附加角色攻击的" + Math.floor(100 * (enemy.counterAttack || core.values.counterAttack || 0)) + "%作为伤害,无视角色防御"; }, "#ffaa44"], | 		[8, "反击", function (enemy) { return "战斗时,怪物每回合附加角色攻击的" + Math.floor(100 * (enemy.counterAttack || core.values.counterAttack || 0)) + "%作为伤害,无视角色防御"; }, "#ffaa44"], | ||||||
| @ -518,7 +516,7 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = | |||||||
| 		[26, "支援", "当周围一圈的怪物受到攻击时将上前支援,并组成小队战斗。", "#77c0b6", 1], | 		[26, "支援", "当周围一圈的怪物受到攻击时将上前支援,并组成小队战斗。", "#77c0b6", 1], | ||||||
| 		[27, "捕捉", function (enemy) { return "当走到怪物周围" + (enemy.zoneSquare ? "九宫格" : "十字") + "时会强制进行战斗。"; }, "#c0ddbb"] | 		[27, "捕捉", function (enemy) { return "当走到怪物周围" + (enemy.zoneSquare ? "九宫格" : "十字") + "时会强制进行战斗。"; }, "#c0ddbb"] | ||||||
| 	]; | 	]; | ||||||
| 		}, | }, | ||||||
|         "getEnemyInfo": function (enemy, hero, x, y, floorId) { |         "getEnemyInfo": function (enemy, hero, x, y, floorId) { | ||||||
| 	// 获得某个怪物变化后的数据;该函数将被伤害计算和怪物手册使用
 | 	// 获得某个怪物变化后的数据;该函数将被伤害计算和怪物手册使用
 | ||||||
| 	// 例如:坚固、模仿、仿攻等等
 | 	// 例如:坚固、模仿、仿攻等等
 | ||||||
| @ -641,7 +639,7 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = | |||||||
| 		"special": mon_special, | 		"special": mon_special, | ||||||
| 		"guards": guards, // 返回支援情况
 | 		"guards": guards, // 返回支援情况
 | ||||||
| 	}; | 	}; | ||||||
| 		}, | }, | ||||||
|         "getDamageInfo": function (enemy, hero, x, y, floorId) { |         "getDamageInfo": function (enemy, hero, x, y, floorId) { | ||||||
| 	// 获得战斗伤害信息(实际伤害计算函数)
 | 	// 获得战斗伤害信息(实际伤害计算函数)
 | ||||||
| 	// 
 | 	// 
 | ||||||
| @ -705,15 +703,12 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = | |||||||
| 
 | 
 | ||||||
| 	// 每回合怪物对勇士造成的战斗伤害
 | 	// 每回合怪物对勇士造成的战斗伤害
 | ||||||
| 	var per_damage = mon_atk - hero_def; | 	var per_damage = mon_atk - hero_def; | ||||||
| 			// 魔攻:战斗伤害就是怪物攻击力
 | 
 | ||||||
| 			if (core.hasSpecial(mon_special, 2)) per_damage = mon_atk; |  | ||||||
| 	// 战斗伤害不能为负值
 | 	// 战斗伤害不能为负值
 | ||||||
| 	if (per_damage < 0) per_damage = 0; | 	if (per_damage < 0) per_damage = 0; | ||||||
| 
 | 
 | ||||||
| 			// 2连击 & 3连击 & N连击
 | 	// 连击
 | ||||||
| 			if (core.hasSpecial(mon_special, 4)) per_damage *= 2; | 	if (core.hasSpecial(mon_special, 6)) per_damage *= (enemy.n || 2); | ||||||
| 			if (core.hasSpecial(mon_special, 5)) per_damage *= 3; |  | ||||||
| 			if (core.hasSpecial(mon_special, 6)) per_damage *= (enemy.n || 4); |  | ||||||
| 
 | 
 | ||||||
| 	// 每回合的反击伤害;反击是按照勇士的攻击次数来计算回合
 | 	// 每回合的反击伤害;反击是按照勇士的攻击次数来计算回合
 | ||||||
| 	var counterDamage = 0; | 	var counterDamage = 0; | ||||||
| @ -799,7 +794,7 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = | |||||||
| 		"turn": Math.floor(turn), | 		"turn": Math.floor(turn), | ||||||
| 		"damage": Math.floor(damage) | 		"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(); | ||||||
| 
 | 
 | ||||||
|  | |||||||
							
								
								
									
										
											BIN
										
									
								
								project/images/bg_3531.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.4 MiB | 
							
								
								
									
										
											BIN
										
									
								
								project/images/bg_3563.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 815 KiB | 
							
								
								
									
										
											BIN
										
									
								
								project/images/bg_3601.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.4 MiB | 
							
								
								
									
										
											BIN
										
									
								
								project/images/bg_6004.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.2 MiB | 
							
								
								
									
										
											BIN
										
									
								
								project/images/cao.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 123 KiB | 
							
								
								
									
										
											BIN
										
									
								
								project/images/lane1.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 2.7 KiB | 
							
								
								
									
										
											BIN
										
									
								
								project/images/other_0001.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 849 KiB | 
							
								
								
									
										
											BIN
										
									
								
								project/images/other_0002.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 643 KiB | 
							
								
								
									
										
											BIN
										
									
								
								project/images/other_0003.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 574 KiB | 
							
								
								
									
										
											BIN
										
									
								
								project/images/other_0004.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.1 MiB | 
| @ -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", | ||||||
|  | |||||||