暂存更改的同步
@ -64,6 +64,7 @@
 | 
				
			|||||||
                <div id='startButtons'>
 | 
					                <div id='startButtons'>
 | 
				
			||||||
                    <span class='startButton' id='playGame'>START GAME</span>
 | 
					                    <span class='startButton' id='playGame'>START GAME</span>
 | 
				
			||||||
                    <span class='startButton' id='loadGame'>LOAD GAME</span>
 | 
					                    <span class='startButton' id='loadGame'>LOAD GAME</span>
 | 
				
			||||||
 | 
					                    <span class='startButton' id='CGMode'>CG MODE</span>
 | 
				
			||||||
                    <span class='startButton' id='replayGame'>REPLAY MODE</span>
 | 
					                    <span class='startButton' id='replayGame'>REPLAY MODE</span>
 | 
				
			||||||
                </div>
 | 
					                </div>
 | 
				
			||||||
                <div id='levelChooseButtons'></div>
 | 
					                <div id='levelChooseButtons'></div>
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										1
									
								
								main.js
									
									
									
									
									
								
							
							
						
						@ -48,6 +48,7 @@ function main() {
 | 
				
			|||||||
        startButtons: document.getElementById('startButtons'),
 | 
					        startButtons: document.getElementById('startButtons'),
 | 
				
			||||||
        playGame: document.getElementById('playGame'),
 | 
					        playGame: document.getElementById('playGame'),
 | 
				
			||||||
        loadGame: document.getElementById('loadGame'),
 | 
					        loadGame: document.getElementById('loadGame'),
 | 
				
			||||||
 | 
					        CGMode: document.getElementById('CGMode'),
 | 
				
			||||||
        replayGame: document.getElementById('replayGame'),
 | 
					        replayGame: document.getElementById('replayGame'),
 | 
				
			||||||
        levelChooseButtons: document.getElementById('levelChooseButtons'),
 | 
					        levelChooseButtons: document.getElementById('levelChooseButtons'),
 | 
				
			||||||
        data: document.getElementById('data'),
 | 
					        data: document.getElementById('data'),
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										
											BIN
										
									
								
								project/bgms/Asphodelus_Ceui.mp3
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								project/bgms/theme.mp3
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -43,6 +43,7 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
 | 
				
			|||||||
			"now.png",
 | 
								"now.png",
 | 
				
			||||||
			"null.png",
 | 
								"null.png",
 | 
				
			||||||
			"r.png",
 | 
								"r.png",
 | 
				
			||||||
 | 
								"shengnvxizao.png",
 | 
				
			||||||
			"status.png",
 | 
								"status.png",
 | 
				
			||||||
			"statusBackground.jpg",
 | 
								"statusBackground.jpg",
 | 
				
			||||||
			"statusBackground.png",
 | 
								"statusBackground.png",
 | 
				
			||||||
@ -67,6 +68,7 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
 | 
				
			|||||||
		],
 | 
							],
 | 
				
			||||||
		"tilesets": [
 | 
							"tilesets": [
 | 
				
			||||||
			"magictower.png",
 | 
								"magictower.png",
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
			"5.png",
 | 
								"5.png",
 | 
				
			||||||
			"4.png",
 | 
								"4.png",
 | 
				
			||||||
			"3.png",
 | 
								"3.png",
 | 
				
			||||||
@ -75,6 +77,13 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
 | 
				
			|||||||
			"11.png",
 | 
								"11.png",
 | 
				
			||||||
			"6.png",
 | 
								"6.png",
 | 
				
			||||||
			"12.png"
 | 
								"12.png"
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
								"Outside_B.png",
 | 
				
			||||||
 | 
								"C4.png",
 | 
				
			||||||
 | 
								"C3.png",
 | 
				
			||||||
 | 
								"C2.png",
 | 
				
			||||||
 | 
								"C1.png"
 | 
				
			||||||
 | 
					>>>>>>> c231be42bfd5ed9860a83961156fbd923e2a2434
 | 
				
			||||||
		],
 | 
							],
 | 
				
			||||||
		"animates": [
 | 
							"animates": [
 | 
				
			||||||
			"hand",
 | 
								"hand",
 | 
				
			||||||
 | 
				
			|||||||
@ -280,8 +280,12 @@ var icons_4665ee12_3a1f_44a4_bea3_0fccba634dc1 =
 | 
				
			|||||||
		"autotile2": 0,
 | 
							"autotile2": 0,
 | 
				
			||||||
		"autotile3": 0,
 | 
							"autotile3": 0,
 | 
				
			||||||
		"autotile4": 0,
 | 
							"autotile4": 0,
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
		"autotile8": 0,
 | 
							"autotile8": 0,
 | 
				
			||||||
		"autotile9": 0,
 | 
							"autotile9": 0,
 | 
				
			||||||
		"autotile10": 0
 | 
							"autotile10": 0
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
							"autotile5": 0
 | 
				
			||||||
 | 
					>>>>>>> c231be42bfd5ed9860a83961156fbd923e2a2434
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
		 Before Width: | Height: | Size: 5.3 KiB After Width: | Height: | Size: 8.6 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								project/images/shengnvxizao.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 816 KiB  | 
@ -106,9 +106,13 @@ var maps_90f36752_8815_4be8_b32b_d7fad1d0542e =
 | 
				
			|||||||
	"137": {"cls":"npcs","id":"greenMan"},
 | 
						"137": {"cls":"npcs","id":"greenMan"},
 | 
				
			||||||
	"138": {"cls":"npcs","id":"blueTrader"},
 | 
						"138": {"cls":"npcs","id":"blueTrader"},
 | 
				
			||||||
	"140": {"cls":"autotile","id":"autotile4"},
 | 
						"140": {"cls":"autotile","id":"autotile4"},
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
	"141": {"cls":"autotile","id":"autotile8"},
 | 
						"141": {"cls":"autotile","id":"autotile8"},
 | 
				
			||||||
	"142": {"cls":"autotile","id":"autotile9"},
 | 
						"142": {"cls":"autotile","id":"autotile9"},
 | 
				
			||||||
	"143": {"cls":"autotile","id":"autotile10"},
 | 
						"143": {"cls":"autotile","id":"autotile10"},
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
						"141": {"cls":"autotile","id":"autotile5"},
 | 
				
			||||||
 | 
					>>>>>>> c231be42bfd5ed9860a83961156fbd923e2a2434
 | 
				
			||||||
	"151": {"cls":"autotile","id":"autotile1"},
 | 
						"151": {"cls":"autotile","id":"autotile1"},
 | 
				
			||||||
	"152": {"cls":"autotile","id":"autotile2"},
 | 
						"152": {"cls":"autotile","id":"autotile2"},
 | 
				
			||||||
	"153": {"cls":"autotile","id":"autotile3"},
 | 
						"153": {"cls":"autotile","id":"autotile3"},
 | 
				
			||||||
 | 
				
			|||||||
@ -350,159 +350,159 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
 | 
				
			|||||||
		}
 | 
							}
 | 
				
			||||||
	},
 | 
						},
 | 
				
			||||||
    "fiveLayers": function () {
 | 
					    "fiveLayers": function () {
 | 
				
			||||||
		// 是否启用五图层(增加背景2层和前景2层) 将__enable置为true即会启用;启用后请保存后刷新编辑器
 | 
						// 是否启用五图层(增加背景2层和前景2层) 将__enable置为true即会启用;启用后请保存后刷新编辑器
 | 
				
			||||||
		// 背景层2将会覆盖背景层 被事件层覆盖 前景层2将会覆盖前景层
 | 
						// 背景层2将会覆盖背景层 被事件层覆盖 前景层2将会覆盖前景层
 | 
				
			||||||
		// 另外 请注意加入两个新图层 会让大地图的性能降低一些
 | 
						// 另外 请注意加入两个新图层 会让大地图的性能降低一些
 | 
				
			||||||
		// 插件作者:ad
 | 
						// 插件作者:ad
 | 
				
			||||||
		var __enable = false;
 | 
						var __enable = true;
 | 
				
			||||||
		if (!__enable) return;
 | 
						if (!__enable) return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		// 创建新图层
 | 
						// 创建新图层
 | 
				
			||||||
		function createCanvas (name, zIndex) {
 | 
						function createCanvas(name, zIndex) {
 | 
				
			||||||
			if (!name) return;
 | 
							if (!name) return;
 | 
				
			||||||
			var canvas = document.createElement('canvas');
 | 
							var canvas = document.createElement('canvas');
 | 
				
			||||||
			canvas.id = name;
 | 
							canvas.id = name;
 | 
				
			||||||
			canvas.className = 'gameCanvas anti-aliasing';
 | 
							canvas.className = 'gameCanvas anti-aliasing';
 | 
				
			||||||
			// 编辑器模式下设置zIndex会导致加入的图层覆盖优先级过高
 | 
							// 编辑器模式下设置zIndex会导致加入的图层覆盖优先级过高
 | 
				
			||||||
			if (main.mode != "editor") canvas.style.zIndex = zIndex || 0;
 | 
							if (main.mode != "editor") canvas.style.zIndex = zIndex || 0;
 | 
				
			||||||
			// 将图层插入进游戏内容
 | 
							// 将图层插入进游戏内容
 | 
				
			||||||
			document.getElementById('gameDraw').appendChild(canvas);
 | 
							document.getElementById('gameDraw').appendChild(canvas);
 | 
				
			||||||
			var ctx = canvas.getContext('2d');
 | 
							var ctx = canvas.getContext('2d');
 | 
				
			||||||
			core.canvas[name] = ctx;
 | 
							core.canvas[name] = ctx;
 | 
				
			||||||
			canvas.width = core._PX_ || core.__PIXELS__;
 | 
							canvas.width = core._PX_ || core.__PIXELS__;
 | 
				
			||||||
			canvas.height = core._PY_ || core.__PIXELS__;
 | 
							canvas.height = core._PY_ || core.__PIXELS__;
 | 
				
			||||||
			return canvas;
 | 
							return canvas;
 | 
				
			||||||
		}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		var bg2Canvas = createCanvas('bg2', 20);
 | 
						var bg2Canvas = createCanvas('bg2', 20);
 | 
				
			||||||
		var fg2Canvas = createCanvas('fg2', 63);
 | 
						var fg2Canvas = createCanvas('fg2', 63);
 | 
				
			||||||
		// 大地图适配
 | 
						// 大地图适配
 | 
				
			||||||
		core.bigmap.canvas = ["bg2", "fg2", "bg", "event", "event2", "fg", "damage"];
 | 
						core.bigmap.canvas = ["bg2", "fg2", "bg", "event", "event2", "fg", "damage"];
 | 
				
			||||||
		core.initStatus.bg2maps = {};
 | 
						core.initStatus.bg2maps = {};
 | 
				
			||||||
		core.initStatus.fg2maps = {};
 | 
						core.initStatus.fg2maps = {};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		if (main.mode == 'editor') {
 | 
						if (main.mode == 'editor') {
 | 
				
			||||||
			/*插入编辑器的图层 不做此步新增图层无法在编辑器显示*/
 | 
							/*插入编辑器的图层 不做此步新增图层无法在编辑器显示*/
 | 
				
			||||||
			// 编辑器图层覆盖优先级 eui > efg > fg(前景层) > event2(48*32图块的事件层) > event(事件层) > bg(背景层)
 | 
							// 编辑器图层覆盖优先级 eui > efg > fg(前景层) > event2(48*32图块的事件层) > event(事件层) > bg(背景层)
 | 
				
			||||||
			// 背景层2(bg2) 插入事件层(event)之前(即bg与event之间)
 | 
							// 背景层2(bg2) 插入事件层(event)之前(即bg与event之间)
 | 
				
			||||||
			document.getElementById('mapEdit').insertBefore(bg2Canvas, document.getElementById('event'));
 | 
							document.getElementById('mapEdit').insertBefore(bg2Canvas, document.getElementById('event'));
 | 
				
			||||||
			// 前景层2(fg2) 插入编辑器前景(efg)之前(即fg之后)
 | 
							// 前景层2(fg2) 插入编辑器前景(efg)之前(即fg之后)
 | 
				
			||||||
			document.getElementById('mapEdit').insertBefore(fg2Canvas, document.getElementById('ebm'));
 | 
							document.getElementById('mapEdit').insertBefore(fg2Canvas, document.getElementById('ebm'));
 | 
				
			||||||
			// 原本有三个图层 从4开始添加
 | 
							// 原本有三个图层 从4开始添加
 | 
				
			||||||
			var num = 4;
 | 
							var num = 4;
 | 
				
			||||||
			// 新增图层存入editor.dom中
 | 
							// 新增图层存入editor.dom中
 | 
				
			||||||
			editor.dom.bg2c = core.canvas.bg2.canvas;
 | 
							editor.dom.bg2c = core.canvas.bg2.canvas;
 | 
				
			||||||
			editor.dom.bg2Ctx = core.canvas.bg2;
 | 
							editor.dom.bg2Ctx = core.canvas.bg2;
 | 
				
			||||||
			editor.dom.fg2c = core.canvas.fg2.canvas;
 | 
							editor.dom.fg2c = core.canvas.fg2.canvas;
 | 
				
			||||||
			editor.dom.fg2Ctx = core.canvas.fg2;
 | 
							editor.dom.fg2Ctx = core.canvas.fg2;
 | 
				
			||||||
			editor.dom.maps.push('bg2map', 'fg2map');
 | 
							editor.dom.maps.push('bg2map', 'fg2map');
 | 
				
			||||||
			editor.dom.canvas.push('bg2', 'fg2');
 | 
							editor.dom.canvas.push('bg2', 'fg2');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			// 创建编辑器上的按钮
 | 
							// 创建编辑器上的按钮
 | 
				
			||||||
			var createCanvasBtn = function (name) {
 | 
							var createCanvasBtn = function (name) {
 | 
				
			||||||
				// 电脑端创建按钮
 | 
								// 电脑端创建按钮
 | 
				
			||||||
				var input = document.createElement('input');
 | 
								var input = document.createElement('input');
 | 
				
			||||||
				// layerMod4/layerMod5
 | 
								// layerMod4/layerMod5
 | 
				
			||||||
				var id = 'layerMod' + num++;
 | 
								var id = 'layerMod' + num++;
 | 
				
			||||||
				// bg2map/fg2map
 | 
								// bg2map/fg2map
 | 
				
			||||||
				var value = name + 'map';
 | 
								var value = name + 'map';
 | 
				
			||||||
				input.type = 'radio';
 | 
								input.type = 'radio';
 | 
				
			||||||
				input.name = 'layerMod';
 | 
								input.name = 'layerMod';
 | 
				
			||||||
				input.id = id;
 | 
								input.id = id;
 | 
				
			||||||
				input.value = value;
 | 
								input.value = value;
 | 
				
			||||||
				editor.dom[id] = input;
 | 
								editor.dom[id] = input;
 | 
				
			||||||
				input.onchange = function () {
 | 
								input.onchange = function () {
 | 
				
			||||||
					editor.uifunctions.setLayerMod(value);
 | 
									editor.uifunctions.setLayerMod(value);
 | 
				
			||||||
				}
 | 
					 | 
				
			||||||
				return input;
 | 
					 | 
				
			||||||
			};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
			var createCanvasBtn_mobile = function (name) {
 | 
					 | 
				
			||||||
				// 手机端往选择列表中添加子选项
 | 
					 | 
				
			||||||
				var input = document.createElement('option');
 | 
					 | 
				
			||||||
				var id = 'layerMod' + num++;
 | 
					 | 
				
			||||||
				var value = name + 'map';
 | 
					 | 
				
			||||||
				input.name = 'layerMod';
 | 
					 | 
				
			||||||
				input.value = value;
 | 
					 | 
				
			||||||
				editor.dom[id] = input;
 | 
					 | 
				
			||||||
				return input;
 | 
					 | 
				
			||||||
			};
 | 
					 | 
				
			||||||
			if (!editor.isMobile) {
 | 
					 | 
				
			||||||
				var input = createCanvasBtn('bg2');
 | 
					 | 
				
			||||||
				var input2 = createCanvasBtn('fg2');
 | 
					 | 
				
			||||||
				// 获取事件层及其父节点
 | 
					 | 
				
			||||||
				var child = document.getElementById('layerMod'),
 | 
					 | 
				
			||||||
					parent = child.parentNode;
 | 
					 | 
				
			||||||
				// 背景层2插入事件层前
 | 
					 | 
				
			||||||
				parent.insertBefore(input, child);
 | 
					 | 
				
			||||||
				// 不能直接更改背景层2的innerText 所以创建文本节点
 | 
					 | 
				
			||||||
				var txt = document.createTextNode('bg2');
 | 
					 | 
				
			||||||
				// 插入事件层前(即新插入的背景层2前)
 | 
					 | 
				
			||||||
				parent.insertBefore(txt, child);
 | 
					 | 
				
			||||||
				// 向最后插入前景层2(即插入前景层后)
 | 
					 | 
				
			||||||
				parent.appendChild(input2);
 | 
					 | 
				
			||||||
				var txt2 = document.createTextNode('fg2');
 | 
					 | 
				
			||||||
				parent.appendChild(txt2);
 | 
					 | 
				
			||||||
				parent.childNodes[2].replaceWith("bg");
 | 
					 | 
				
			||||||
				parent.childNodes[6].replaceWith("事件");
 | 
					 | 
				
			||||||
				parent.childNodes[8].replaceWith("fg");
 | 
					 | 
				
			||||||
			} else {
 | 
					 | 
				
			||||||
				var input = createCanvasBtn_mobile('bg2');
 | 
					 | 
				
			||||||
				var input2 = createCanvasBtn_mobile('fg2');
 | 
					 | 
				
			||||||
				// 手机端因为是选项 所以可以直接改innerText
 | 
					 | 
				
			||||||
				input.innerText = '背景层2';
 | 
					 | 
				
			||||||
				input2.innerText = '前景层2';
 | 
					 | 
				
			||||||
				var parent = document.getElementById('layerMod');
 | 
					 | 
				
			||||||
				parent.insertBefore(input, parent.children[1]);
 | 
					 | 
				
			||||||
				parent.appendChild(input2);
 | 
					 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
		}
 | 
								return input;
 | 
				
			||||||
 | 
							};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		var _loadFloor_doNotCopy = core.maps._loadFloor_doNotCopy;
 | 
							var createCanvasBtn_mobile = function (name) {
 | 
				
			||||||
		core.maps._loadFloor_doNotCopy = function () {
 | 
								// 手机端往选择列表中添加子选项
 | 
				
			||||||
			return ["bg2map", "fg2map"].concat(_loadFloor_doNotCopy());
 | 
								var input = document.createElement('option');
 | 
				
			||||||
 | 
								var id = 'layerMod' + num++;
 | 
				
			||||||
 | 
								var value = name + 'map';
 | 
				
			||||||
 | 
								input.name = 'layerMod';
 | 
				
			||||||
 | 
								input.value = value;
 | 
				
			||||||
 | 
								editor.dom[id] = input;
 | 
				
			||||||
 | 
								return input;
 | 
				
			||||||
 | 
							};
 | 
				
			||||||
 | 
							if (!editor.isMobile) {
 | 
				
			||||||
 | 
								var input = createCanvasBtn('bg2');
 | 
				
			||||||
 | 
								var input2 = createCanvasBtn('fg2');
 | 
				
			||||||
 | 
								// 获取事件层及其父节点
 | 
				
			||||||
 | 
								var child = document.getElementById('layerMod'),
 | 
				
			||||||
 | 
									parent = child.parentNode;
 | 
				
			||||||
 | 
								// 背景层2插入事件层前
 | 
				
			||||||
 | 
								parent.insertBefore(input, child);
 | 
				
			||||||
 | 
								// 不能直接更改背景层2的innerText 所以创建文本节点
 | 
				
			||||||
 | 
								var txt = document.createTextNode('bg2');
 | 
				
			||||||
 | 
								// 插入事件层前(即新插入的背景层2前)
 | 
				
			||||||
 | 
								parent.insertBefore(txt, child);
 | 
				
			||||||
 | 
								// 向最后插入前景层2(即插入前景层后)
 | 
				
			||||||
 | 
								parent.appendChild(input2);
 | 
				
			||||||
 | 
								var txt2 = document.createTextNode('fg2');
 | 
				
			||||||
 | 
								parent.appendChild(txt2);
 | 
				
			||||||
 | 
								parent.childNodes[2].replaceWith("bg");
 | 
				
			||||||
 | 
								parent.childNodes[6].replaceWith("事件");
 | 
				
			||||||
 | 
								parent.childNodes[8].replaceWith("fg");
 | 
				
			||||||
 | 
							} else {
 | 
				
			||||||
 | 
								var input = createCanvasBtn_mobile('bg2');
 | 
				
			||||||
 | 
								var input2 = createCanvasBtn_mobile('fg2');
 | 
				
			||||||
 | 
								// 手机端因为是选项 所以可以直接改innerText
 | 
				
			||||||
 | 
								input.innerText = '背景层2';
 | 
				
			||||||
 | 
								input2.innerText = '前景层2';
 | 
				
			||||||
 | 
								var parent = document.getElementById('layerMod');
 | 
				
			||||||
 | 
								parent.insertBefore(input, parent.children[1]);
 | 
				
			||||||
 | 
								parent.appendChild(input2);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		////// 绘制背景和前景层 //////
 | 
						}
 | 
				
			||||||
		core.maps._drawBg_draw = function (floorId, toDrawCtx, cacheCtx, config) {
 | 
					
 | 
				
			||||||
			config.ctx = cacheCtx;
 | 
						var _loadFloor_doNotCopy = core.maps._loadFloor_doNotCopy;
 | 
				
			||||||
			core.maps._drawBg_drawBackground(floorId, config);
 | 
						core.maps._loadFloor_doNotCopy = function () {
 | 
				
			||||||
			// ------ 调整这两行的顺序来控制是先绘制贴图还是先绘制背景图块;后绘制的覆盖先绘制的。
 | 
							return ["bg2map", "fg2map"].concat(_loadFloor_doNotCopy());
 | 
				
			||||||
			core.maps._drawFloorImages(floorId, config.ctx, 'bg', null, null, config.onMap);
 | 
						}
 | 
				
			||||||
			core.maps._drawBgFgMap(floorId, 'bg', config);
 | 
						////// 绘制背景和前景层 //////
 | 
				
			||||||
			if (config.onMap) {
 | 
						core.maps._drawBg_draw = function (floorId, toDrawCtx, cacheCtx, config) {
 | 
				
			||||||
				core.drawImage(toDrawCtx, cacheCtx.canvas, core.bigmap.v2 ? -32 : 0, core.bigmap.v2 ? -32 : 0);
 | 
							config.ctx = cacheCtx;
 | 
				
			||||||
				core.clearMap('bg2');
 | 
							core.maps._drawBg_drawBackground(floorId, config);
 | 
				
			||||||
				core.clearMap(cacheCtx);
 | 
							// ------ 调整这两行的顺序来控制是先绘制贴图还是先绘制背景图块;后绘制的覆盖先绘制的。
 | 
				
			||||||
			}
 | 
							core.maps._drawFloorImages(floorId, config.ctx, 'bg', null, null, config.onMap);
 | 
				
			||||||
			core.maps._drawBgFgMap(floorId, 'bg2', config);
 | 
							core.maps._drawBgFgMap(floorId, 'bg', config);
 | 
				
			||||||
			if (config.onMap) core.drawImage('bg2', cacheCtx.canvas, core.bigmap.v2 ? -32 : 0, core.bigmap.v2 ? -32 : 0);
 | 
							if (config.onMap) {
 | 
				
			||||||
			config.ctx = toDrawCtx;
 | 
								core.drawImage(toDrawCtx, cacheCtx.canvas, core.bigmap.v2 ? -32 : 0, core.bigmap.v2 ? -32 : 0);
 | 
				
			||||||
 | 
								core.clearMap('bg2');
 | 
				
			||||||
 | 
								core.clearMap(cacheCtx);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		core.maps._drawFg_draw = function (floorId, toDrawCtx, cacheCtx, config) {
 | 
							core.maps._drawBgFgMap(floorId, 'bg2', config);
 | 
				
			||||||
			config.ctx = cacheCtx;
 | 
							if (config.onMap) core.drawImage('bg2', cacheCtx.canvas, core.bigmap.v2 ? -32 : 0, core.bigmap.v2 ? -32 : 0);
 | 
				
			||||||
			// ------ 调整这两行的顺序来控制是先绘制贴图还是先绘制前景图块;后绘制的覆盖先绘制的。
 | 
							config.ctx = toDrawCtx;
 | 
				
			||||||
			core.maps._drawFloorImages(floorId, config.ctx, 'fg', null, null, config.onMap);
 | 
						}
 | 
				
			||||||
			core.maps._drawBgFgMap(floorId, 'fg', config);
 | 
						core.maps._drawFg_draw = function (floorId, toDrawCtx, cacheCtx, config) {
 | 
				
			||||||
			if (config.onMap) {
 | 
							config.ctx = cacheCtx;
 | 
				
			||||||
				core.drawImage(toDrawCtx, cacheCtx.canvas, core.bigmap.v2 ? -32 : 0, core.bigmap.v2 ? -32 : 0);
 | 
							// ------ 调整这两行的顺序来控制是先绘制贴图还是先绘制前景图块;后绘制的覆盖先绘制的。
 | 
				
			||||||
				core.clearMap('fg2');
 | 
							core.maps._drawFloorImages(floorId, config.ctx, 'fg', null, null, config.onMap);
 | 
				
			||||||
				core.clearMap(cacheCtx);
 | 
							core.maps._drawBgFgMap(floorId, 'fg', config);
 | 
				
			||||||
			}
 | 
							if (config.onMap) {
 | 
				
			||||||
			core.maps._drawBgFgMap(floorId, 'fg2', config);
 | 
								core.drawImage(toDrawCtx, cacheCtx.canvas, core.bigmap.v2 ? -32 : 0, core.bigmap.v2 ? -32 : 0);
 | 
				
			||||||
			if (config.onMap) core.drawImage('fg2', cacheCtx.canvas, core.bigmap.v2 ? -32 : 0, core.bigmap.v2 ? -32 : 0);
 | 
								core.clearMap('fg2');
 | 
				
			||||||
			config.ctx = toDrawCtx;
 | 
								core.clearMap(cacheCtx);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		////// 移动判定 //////
 | 
							core.maps._drawBgFgMap(floorId, 'fg2', config);
 | 
				
			||||||
		core.maps._generateMovableArray_arrays = function (floorId) {
 | 
							if (config.onMap) core.drawImage('fg2', cacheCtx.canvas, core.bigmap.v2 ? -32 : 0, core.bigmap.v2 ? -32 : 0);
 | 
				
			||||||
			return {
 | 
							config.ctx = toDrawCtx;
 | 
				
			||||||
				bgArray: this.getBgMapArray(floorId),
 | 
						}
 | 
				
			||||||
				fgArray: this.getFgMapArray(floorId),
 | 
						////// 移动判定 //////
 | 
				
			||||||
				eventArray: this.getMapArray(floorId),
 | 
						core.maps._generateMovableArray_arrays = function (floorId) {
 | 
				
			||||||
				bg2Array: this._getBgFgMapArray('bg2', floorId),
 | 
							return {
 | 
				
			||||||
				fg2Array: this._getBgFgMapArray('fg2', floorId)
 | 
								bgArray: this.getBgMapArray(floorId),
 | 
				
			||||||
			};
 | 
								fgArray: this.getFgMapArray(floorId),
 | 
				
			||||||
		}
 | 
								eventArray: this.getMapArray(floorId),
 | 
				
			||||||
	},
 | 
								bg2Array: this._getBgFgMapArray('bg2', floorId),
 | 
				
			||||||
 | 
								fg2Array: this._getBgFgMapArray('fg2', floorId)
 | 
				
			||||||
 | 
							};
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					},
 | 
				
			||||||
    "itemShop": function () {
 | 
					    "itemShop": function () {
 | 
				
			||||||
	// 道具商店相关的插件
 | 
						// 道具商店相关的插件
 | 
				
			||||||
	// 可在全塔属性-全局商店中使用「道具商店」事件块进行编辑(如果找不到可以在入口方块中找)
 | 
						// 可在全塔属性-全局商店中使用「道具商店」事件块进行编辑(如果找不到可以在入口方块中找)
 | 
				
			||||||
@ -1939,6 +1939,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
		core.dom.playGame.style.fontSize = font + "px"
 | 
							core.dom.playGame.style.fontSize = font + "px"
 | 
				
			||||||
		core.dom.loadGame.style.fontSize = font + "px"
 | 
							core.dom.loadGame.style.fontSize = font + "px"
 | 
				
			||||||
 | 
							core.dom.CGMode.style.fontSize = font + "px"
 | 
				
			||||||
		core.dom.replayGame.style.fontSize = font + "px"
 | 
							core.dom.replayGame.style.fontSize = font + "px"
 | 
				
			||||||
		core.dom.startButtonGroup.style.padding = font * 0.3 + "px 25px"
 | 
							core.dom.startButtonGroup.style.padding = font * 0.3 + "px 25px"
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
@ -1947,6 +1948,8 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
 | 
				
			|||||||
		main.dom.outerBackground.style.height = obj.totalHeight + 'px';
 | 
							main.dom.outerBackground.style.height = obj.totalHeight + 'px';
 | 
				
			||||||
		main.dom.outerUI.style.width = obj.totalWidth + 'px';
 | 
							main.dom.outerUI.style.width = obj.totalWidth + 'px';
 | 
				
			||||||
		main.dom.outerUI.style.height = obj.totalHeight + 'px';
 | 
							main.dom.outerUI.style.height = obj.totalHeight + 'px';
 | 
				
			||||||
 | 
							main.dom.CGUI.style.width = obj.totalWidth + 'px';
 | 
				
			||||||
 | 
							main.dom.CGUI.style.height = obj.totalHeight + 'px';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		const innerSize = (obj.canvasWidth * core.domStyle.scale) + "px";
 | 
							const innerSize = (obj.canvasWidth * core.domStyle.scale) + "px";
 | 
				
			||||||
		for (let i = 0; i < core.dom.gameCanvas.length; ++i)
 | 
							for (let i = 0; i < core.dom.gameCanvas.length; ++i)
 | 
				
			||||||
@ -1972,6 +1975,7 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
 | 
				
			|||||||
			canvas.style.left = parseFloat(canvas.getAttribute("_left")) * core.domStyle.scale + "px";
 | 
								canvas.style.left = parseFloat(canvas.getAttribute("_left")) * core.domStyle.scale + "px";
 | 
				
			||||||
			canvas.style.top = parseFloat(canvas.getAttribute("_top")) * core.domStyle.scale + "px";
 | 
								canvas.style.top = parseFloat(canvas.getAttribute("_top")) * core.domStyle.scale + "px";
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		// resize next
 | 
							// resize next
 | 
				
			||||||
		main.dom.next.style.width = main.dom.next.style.height = 5 * core.domStyle.scale + "px";
 | 
							main.dom.next.style.width = main.dom.next.style.height = 5 * core.domStyle.scale + "px";
 | 
				
			||||||
		main.dom.next.style.borderBottomWidth = main.dom.next.style.borderRightWidth = 4 * core.domStyle.scale + "px";
 | 
							main.dom.next.style.borderBottomWidth = main.dom.next.style.borderRightWidth = 4 * core.domStyle.scale + "px";
 | 
				
			||||||
@ -2060,6 +2064,8 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
		if (core.status.automaticRoute == null) core.status.automaticRoute = {};
 | 
							if (core.status.automaticRoute == null) core.status.automaticRoute = {};
 | 
				
			||||||
		core.updateStatusBar();
 | 
							core.updateStatusBar();
 | 
				
			||||||
 | 
							core.ui.CG.update()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	class StatusBar {
 | 
						class StatusBar {
 | 
				
			||||||
@ -8628,5 +8634,182 @@ core.plugin.animate = {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	core.registerAction('onmousewheel', '_sys_onmousewheel', actions.prototype._sys_onmousewheel, 0);
 | 
						core.registerAction('onmousewheel', '_sys_onmousewheel', actions.prototype._sys_onmousewheel, 0);
 | 
				
			||||||
 | 
					},
 | 
				
			||||||
 | 
					    "CG回廊": function () {
 | 
				
			||||||
 | 
						// 在此增加新插件
 | 
				
			||||||
 | 
						const CGUI = document.createElement('canvas'); //CGui画布设置
 | 
				
			||||||
 | 
						CGUI.style.position = 'absolute';
 | 
				
			||||||
 | 
						CGUI.style.zIndex = 0;
 | 
				
			||||||
 | 
						CGUI.id = 'CGUI';
 | 
				
			||||||
 | 
						main.dom.gameGroup.insertAdjacentElement('afterend', CGUI)
 | 
				
			||||||
 | 
						CGUI.style.top = "50%"
 | 
				
			||||||
 | 
						CGUI.style.left = "50%"
 | 
				
			||||||
 | 
						CGUI.style.transform = "translate(-50%,-50%)"
 | 
				
			||||||
 | 
						const ctx = CGUI.getContext("2d");
 | 
				
			||||||
 | 
						main.dom.CGUI = CGUI;
 | 
				
			||||||
 | 
						CGUI.onclick = function (e) {
 | 
				
			||||||
 | 
							try {
 | 
				
			||||||
 | 
								e.preventDefault();
 | 
				
			||||||
 | 
								if (core.isPlaying()) return false;
 | 
				
			||||||
 | 
								const left = core.dom.gameGroup.offsetLeft;
 | 
				
			||||||
 | 
								const top = core.dom.gameGroup.offsetTop;
 | 
				
			||||||
 | 
								const px = Math.floor((e.clientX - left) / core.domStyle.scale),
 | 
				
			||||||
 | 
									py = Math.floor((e.clientY - top) / core.domStyle.scale);
 | 
				
			||||||
 | 
								core.ui.CG.onclick(px * 3, py * 3);
 | 
				
			||||||
 | 
							} catch (ee) {
 | 
				
			||||||
 | 
								main.log(ee);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						function drawImage(name, image, x, y, w, h, x1, y1, w1, h1, angle, reverse) {
 | 
				
			||||||
 | 
							// 检测文件名以 :x, :y, :o 结尾,表示左右翻转,上下翻转和中心翻转
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							image = core.material.images.images[image];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							var scale = {
 | 
				
			||||||
 | 
								'x': [-1, 1],
 | 
				
			||||||
 | 
								'y': [1, -1],
 | 
				
			||||||
 | 
								'o': [-1, -1]
 | 
				
			||||||
 | 
							};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							// 只能接受2, 4, 8个参数
 | 
				
			||||||
 | 
							if (x != null && y != null) {
 | 
				
			||||||
 | 
								if (w == null || h == null) {
 | 
				
			||||||
 | 
									// 两个参数变成四个参数
 | 
				
			||||||
 | 
									w = image.width;
 | 
				
			||||||
 | 
									h = image.height;
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								if (x1 != null && y1 != null && w1 != null && h1 != null) {
 | 
				
			||||||
 | 
									if (!reverse && !angle) {
 | 
				
			||||||
 | 
										name.drawImage(image, x, y, w, h, x1, y1, w1, h1);
 | 
				
			||||||
 | 
									} else {
 | 
				
			||||||
 | 
										name.save();
 | 
				
			||||||
 | 
										name.translate(x1 + w1 / 2, y1 + h1 / 2);
 | 
				
			||||||
 | 
										if (reverse) name.scale(scale[reverse][0], scale[reverse][1]);
 | 
				
			||||||
 | 
										if (angle) name.rotate(angle);
 | 
				
			||||||
 | 
										name.drawImage(image, x, y, w, h, -w1 / 2, -h1 / 2, w1, h1);
 | 
				
			||||||
 | 
										name.restore();
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									return;
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								if (!reverse && !angle) {
 | 
				
			||||||
 | 
									name.drawImage(image, x, y, w, h);
 | 
				
			||||||
 | 
								} else {
 | 
				
			||||||
 | 
									name.save();
 | 
				
			||||||
 | 
									name.translate(x + w / 2, y + h / 2);
 | 
				
			||||||
 | 
									if (reverse) name.scale(scale[reverse][0], scale[reverse][1]);
 | 
				
			||||||
 | 
									if (angle) name.rotate(angle);
 | 
				
			||||||
 | 
									name.drawImage(image, -w / 2, -h / 2, w, h);
 | 
				
			||||||
 | 
									name.restore();
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								return;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						function drawWindow(background, ctx, x, y, w, h, direction, px, py) {
 | 
				
			||||||
 | 
							// 仿RM窗口皮肤 ↓
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							drawImage(ctx, background, 0, 0, 128, 128, x + 2, y + 2, w - 4, h - 4);
 | 
				
			||||||
 | 
							// 绘制边框
 | 
				
			||||||
 | 
							// 上方
 | 
				
			||||||
 | 
							drawImage(ctx, background, 128, 0, 16, 16, x, y, 16, 16);
 | 
				
			||||||
 | 
							for (var dx = 0; dx < w - 64; dx += 32) {
 | 
				
			||||||
 | 
								drawImage(ctx, background, 144, 0, 32, 16, x + dx + 16, y, 32, 16);
 | 
				
			||||||
 | 
								drawImage(ctx, background, 144, 48, 32, 16, x + dx + 16, y + h - 16, 32, 16);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							drawImage(ctx, background, 144, 0, w - dx - 32, 16, x + dx + 16, y, w - dx - 32, 16);
 | 
				
			||||||
 | 
							drawImage(ctx, background, 144, 48, w - dx - 32, 16, x + dx + 16, y + h - 16, w - dx - 32, 16);
 | 
				
			||||||
 | 
							drawImage(ctx, background, 176, 0, 16, 16, x + w - 16, y, 16, 16);
 | 
				
			||||||
 | 
							// 左右
 | 
				
			||||||
 | 
							for (var dy = 0; dy < h - 64; dy += 32) {
 | 
				
			||||||
 | 
								drawImage(ctx, background, 128, 16, 16, 32, x, y + dy + 16, 16, 32);
 | 
				
			||||||
 | 
								drawImage(ctx, background, 176, 16, 16, 32, x + w - 16, y + dy + 16, 16, 32);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							drawImage(ctx, background, 128, 16, 16, h - dy - 32, x, y + dy + 16, 16, h - dy - 32);
 | 
				
			||||||
 | 
							drawImage(ctx, background, 176, 16, 16, h - dy - 32, x + w - 16, y + dy + 16, 16, h - dy - 32);
 | 
				
			||||||
 | 
							// 下方
 | 
				
			||||||
 | 
							drawImage(ctx, background, 128, 48, 16, 16, x, y + h - 16, 16, 16);
 | 
				
			||||||
 | 
							drawImage(ctx, background, 176, 48, 16, 16, x + w - 16, y + h - 16, 16, 16);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							// arrow
 | 
				
			||||||
 | 
							if (px != null && py != null) {
 | 
				
			||||||
 | 
								if (direction == 'up') {
 | 
				
			||||||
 | 
									drawImage(ctx, background, 128, 96, 32, 32, px, y + h - 3, 32, 32);
 | 
				
			||||||
 | 
								} else if (direction == 'down') {
 | 
				
			||||||
 | 
									drawImage(ctx, background, 160, 96, 32, 32, px, y - 29, 32, 32);
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							// 仿RM窗口皮肤 ↑
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						class CG {
 | 
				
			||||||
 | 
							constructor() {
 | 
				
			||||||
 | 
								//cg列表
 | 
				
			||||||
 | 
								this.UIMx = [ //空位用‘none’填充,当前ui至多4列6行
 | 
				
			||||||
 | 
									["none", "none", 'none'],
 | 
				
			||||||
 | 
									["none", "none", "none"],
 | 
				
			||||||
 | 
									["none", "none", "none"],
 | 
				
			||||||
 | 
								];
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							//更新
 | 
				
			||||||
 | 
							update() {
 | 
				
			||||||
 | 
								this.background()
 | 
				
			||||||
 | 
								this.drawUI()
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							background() {
 | 
				
			||||||
 | 
								if (core.domStyle.isVertical) {
 | 
				
			||||||
 | 
									ctx.canvas.width = 1248;
 | 
				
			||||||
 | 
									ctx.canvas.height = 2028;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									core.setTextAlign(ctx, 'center');
 | 
				
			||||||
 | 
								} else {
 | 
				
			||||||
 | 
									ctx.canvas.width = 2028;
 | 
				
			||||||
 | 
									ctx.canvas.height = 1248;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									core.setTextAlign(ctx, 'center');
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							onclick(px, py) { //点击
 | 
				
			||||||
 | 
								console.log([px, py])
 | 
				
			||||||
 | 
								if (px >= 33 && px <= 177 && py >= 33 && py <= 177) { //离开按钮是一致的,其余的记区分横竖屏
 | 
				
			||||||
 | 
									CGUI.style.zIndex = 0
 | 
				
			||||||
 | 
									core.clearMap(ctx)
 | 
				
			||||||
 | 
									core.restart();
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							drawUI() {
 | 
				
			||||||
 | 
								core.clearMap(CGUI)
 | 
				
			||||||
 | 
								if (!core?.material?.images?.images['winskin1.png']) return
 | 
				
			||||||
 | 
								if (core.domStyle.isVertical) { //竖屏
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									core.drawWindowSkin('winskin1.png', ctx, 0, 0, 1248, 2028)
 | 
				
			||||||
 | 
									core.setTextAlign(ctx, 'center');
 | 
				
			||||||
 | 
									core.fillRoundRect(ctx, 45 - 6, 45 - 6, 120 + 12, 120 + 12, 6, '#444444');
 | 
				
			||||||
 | 
									core.strokeRoundRect(ctx, 45 - 12, 45 - 12, 120 + 24, 120 + 24, 12, "#444444", 3)
 | 
				
			||||||
 | 
									core.fillText(ctx, '离开', 100, 110, '#FFFFFF', core.ui._buildFont(33, true))
 | 
				
			||||||
 | 
								} else { //横屏
 | 
				
			||||||
 | 
									ctx.canvas.width = 2028;
 | 
				
			||||||
 | 
									ctx.canvas.height = 1248;
 | 
				
			||||||
 | 
									core.drawWindowSkin('winskin1.png', ctx, 0, 0, 2028, 1248)
 | 
				
			||||||
 | 
									core.setTextAlign(ctx, 'center');
 | 
				
			||||||
 | 
									core.fillRoundRect(ctx, 45 - 6, 45 - 6, 120 + 12, 120 + 12, 6, '#444444');
 | 
				
			||||||
 | 
									core.strokeRoundRect(ctx, 45 - 12, 45 - 12, 120 + 24, 120 + 24, 12, "#444444", 3)
 | 
				
			||||||
 | 
									core.fillText(ctx, '离开', 100, 110, '#FFFFFF', core.ui._buildFont(33, true))
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						core.ui.CG = new CG();
 | 
				
			||||||
 | 
						main.dom.CGMode.onclick = function () {
 | 
				
			||||||
 | 
							main.core.control.checkBgm();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							CGUI.style.zIndex = 10000
 | 
				
			||||||
 | 
							main.core.ui.CG.update()
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
							
								
								
									
										
											BIN
										
									
								
								project/tilesets/C1.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 47 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								project/tilesets/C2.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 47 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								project/tilesets/C3.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 38 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								project/tilesets/C4.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 110 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								project/tilesets/Outside_B.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 619 KiB  |