diff --git a/_server/config.json b/_server/config.json
new file mode 100644
index 0000000..c910945
--- /dev/null
+++ b/_server/config.json
@@ -0,0 +1 @@
+{"viewportLoc":[0,0],"editorLastFloorId":"sample2"}
\ No newline at end of file
diff --git a/index.html b/index.html
index 4cf2e0c..6068066 100644
--- a/index.html
+++ b/index.html
@@ -142,7 +142,8 @@
-
+
+
![]()
@@ -171,6 +172,7 @@
+
diff --git a/libs/core.js b/libs/core.js
index 89a8bb1..55d0bd2 100644
--- a/libs/core.js
+++ b/libs/core.js
@@ -11,8 +11,8 @@
// const core = (() => {
function core () {
- this._WIDTH_ = 13;
- this._HEIGHT_ = 13;
+ this._WIDTH_ = 15;
+ this._HEIGHT_ = 15;
this._PX_ = this._WIDTH_ * 32;
this._PY_ = this._HEIGHT_ * 32;
this._HALF_WIDTH_ = Math.floor(this._WIDTH_ / 2);
diff --git a/main.js b/main.js
index ff6da6a..96e1a2a 100644
--- a/main.js
+++ b/main.js
@@ -73,6 +73,8 @@ function main () {
'hard': document.getElementById('hard'),
'statusCanvas': document.getElementById('statusCanvas'),
'statusCanvasCtx': document.getElementById('statusCanvas').getContext('2d'),
+ 'caidan1': document.getElementById('caidan1'),
+ 'caidan1Ctx': document.getElementById('caidan1').getContext('2d'),
'inputDiv': document.getElementById('inputDiv'),
'inputMessage': document.getElementById('inputMessage'),
'inputBox': document.getElementById('inputBox'),
diff --git a/project/data.js b/project/data.js
index b7dd682..99609d2 100644
--- a/project/data.js
+++ b/project/data.js
@@ -11,6 +11,7 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
"images": [
"bear.png",
"bg.jpg",
+ "caidan.png",
"dragon.png",
"hero.png",
"winskin.png"
@@ -76,49 +77,7 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
"商店": "shop.mp3",
"领域": "zone"
},
- "levelChoose": [
- {
- "title": "简单",
- "name": "Easy",
- "hard": 1,
- "color": [
- 64,
- 255,
- 85,
- 1
- ],
- "action": [
- {
- "type": "comment",
- "text": "在这里写该难度需执行的事件"
- }
- ]
- },
- {
- "title": "普通",
- "name": "Normal",
- "hard": 2,
- "color": [
- 255,
- 221,
- 32,
- 1
- ],
- "action": []
- },
- {
- "title": "困难",
- "name": "Hard",
- "hard": 3,
- "color": [
- 255,
- 68,
- 64,
- 1
- ],
- "action": []
- }
- ],
+ "levelChoose": [],
"equipName": [
"武器",
"盾牌"
@@ -763,7 +722,7 @@ var data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d =
"betweenAttackMax": false,
"useLoop": false,
"startUsingCanvas": false,
- "statusCanvas": false,
+ "statusCanvas": true,
"enableEnemyPoint": true,
"enableGentleClick": true,
"ignoreChangeFloor": true,
diff --git a/project/functions.js b/project/functions.js
index 1ceccc8..216d221 100644
--- a/project/functions.js
+++ b/project/functions.js
@@ -1592,6 +1592,8 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a =
.sort( /*function (id1, id2) { return core.material.items[id1].name <= core.material.items[id2].name ? -1 : 1 }*/);
},
"drawStatusBar": function () {
+ core.dom.caidan1Ctx.drawImage(core.material.images.images['caidan.png'],0,0)
+ core.drawImage('caidan','caidan.png',-161,0)
var ctx, fill = function (text, x, y, style) {
core.ui.setFont(ctx, (/\w+/.test(text) ? 'italic ' : '') + 'bold 18px Verdana');
core.ui.fillBoldText(ctx, text, x, y, style);
diff --git a/project/images/caidan.png b/project/images/caidan.png
new file mode 100644
index 0000000..b45f9c2
Binary files /dev/null and b/project/images/caidan.png differ
diff --git a/project/plugins.js b/project/plugins.js
index 2d0001b..514e678 100644
--- a/project/plugins.js
+++ b/project/plugins.js
@@ -5,6 +5,118 @@ var plugins_bb40132b_638b_4a9f_b028_d3fe47acc8d1 =
this._afterLoadResources = function () {
// 本函数将在所有资源加载完毕后,游戏开启前被执行
}
+ core.control.resize = function () {
+ if (main.mode == 'editor') return;
+ var clientWidth = main.dom.body.clientWidth, clientHeight = main.dom.body.clientHeight;
+ var BORDER = 0;
+ var extendToolbar = core.flags.extendToolbar;
+ var BAR_WIDTH = extendToolbar ? 0 : Math.round(core._PY_ / 3);
+
+ var horizontalMaxRatio = (clientHeight - 2 * BORDER - (extendToolbar ? BORDER : 0)) / (core._PY_ + (extendToolbar ? 38 : 0));
+
+ if (clientWidth - 3 * BORDER >= core._PX_ + BAR_WIDTH || (clientWidth > clientHeight && horizontalMaxRatio < 1)) {
+ // 横屏
+ core.domStyle.isVertical = false;
+
+ core.domStyle.availableScale = [];
+ [1, 1.25, 1.5, 1.75, 2, 2.25, 2.5].forEach(function (v) {
+ if (clientWidth - 3 * BORDER >= v * (core._PX_ + BAR_WIDTH) && horizontalMaxRatio >= v) {
+ core.domStyle.availableScale.push(v);
+ }
+ });
+ if (core.domStyle.availableScale.indexOf(core.domStyle.scale) < 0) {
+ core.domStyle.scale = Math.min(1, horizontalMaxRatio);
+ }
+ }
+ else {
+ // 竖屏
+ core.domStyle.isVertical = true;
+ core.domStyle.scale = Math.min((clientWidth - 2 * BORDER) / core._PX_);
+ core.domStyle.availableScale = [];
+ extendToolbar = false;
+ BAR_WIDTH = Math.round(core._PX_ * 0.3);
+ }
+
+ var statusDisplayArr = this._shouldDisplayStatus(), count = statusDisplayArr.length;
+ var statusCanvas = core.flags.statusCanvas, statusCanvasRows = core.values.statusCanvasRowsOnMobile || 3;
+ var col = statusCanvas ? statusCanvasRows : Math.ceil(count / 3);
+ if (col > 5) {
+ if (statusCanvas) alert("自绘状态栏的在竖屏下的行数应不超过5!");
+ else alert("当前状态栏数目(" + count + ")大于15,请调整到不超过15以避免手机端出现显示问题。");
+ }
+ var globalAttribute = core.status.globalAttribute || core.initStatus.globalAttribute;
+
+ var obj = {
+ clientWidth: clientWidth,
+ clientHeight: clientHeight,
+ BORDER: BORDER,
+ BAR_WIDTH: BAR_WIDTH,
+ TOOLBAR_HEIGHT: 38,
+ outerWidth: core._PX_ * core.domStyle.scale + 2 * BORDER,
+ outerHeight: core._PY_ * core.domStyle.scale + 2 * BORDER,
+ globalAttribute: globalAttribute,
+ border: '0px ' + core.arrayToRGBA(globalAttribute.borderColor) + ' solid',
+ statusDisplayArr: statusDisplayArr,
+ count: count,
+ col: col,
+ statusBarHeightInVertical: core.domStyle.isVertical ? (32 * col + 6) * core.domStyle.scale + 2 * BORDER : 0,
+ toolbarHeightInVertical: core.domStyle.isVertical ? 38 * core.domStyle.scale + 2 * BORDER : 0,
+ extendToolbar: extendToolbar,
+ is15x15: false
+ };
+
+ this._doResize(obj);
+ this.setToolbarButton();
+ core.updateStatusBar();
+ }
+
+ core.control._resize_statusBar = function (obj) {
+ // statusBar
+ var statusBar = core.dom.statusBar;
+ if (core.domStyle.isVertical) {
+ statusBar.style.width = obj.outerWidth + "px";
+ statusBar.style.height = obj.statusBarHeightInVertical + "px";
+ statusBar.style.background = obj.globalAttribute.statusTopBackground;
+ statusBar.style.fontSize = 16 * core.domStyle.scale + "px";
+ }
+ else {
+ statusBar.style.width = (obj.BAR_WIDTH * core.domStyle.scale + obj.BORDER) + "px";
+ statusBar.style.height = obj.outerHeight + (obj.extendToolbar ? obj.TOOLBAR_HEIGHT * core.domStyle.scale + obj.BORDER : 0) + "px";
+ statusBar.style.background = obj.globalAttribute.statusLeftBackground;
+ // --- 计算文字大小
+ if (obj.extendToolbar) {
+ statusBar.style.fontSize = 16 * core.domStyle.scale + "px";
+ } else {
+ statusBar.style.fontSize = 16 * Math.min(1, (core._HEIGHT_ - 4) / obj.count) * core.domStyle.scale + "px";
+ }
+ }
+ statusBar.style.display = obj.extendToolbar ? 'none' : 'block';
+ statusBar.style.borderTop = statusBar.style.borderLeft = obj.border;
+ statusBar.style.borderRight = core.domStyle.isVertical ? obj.border : '';
+ statusBar.style.borderBottom = core.domStyle.isVertical ? '' : obj.border;
+ // 自绘状态栏
+ if (core.domStyle.isVertical) {
+ core.dom.statusCanvas.style.width = core._PX_ * core.domStyle.scale + "px";
+ core.dom.statusCanvas.style.height = obj.statusBarHeightInVertical - 3 + "px";
+ core.maps._setHDCanvasSize(core.dom.statusCanvasCtx, core._PX_, obj.col * 32 + 9);
+ }
+ else {
+ core.dom.statusCanvas.style.width = obj.BAR_WIDTH * core.domStyle.scale + "px";
+ core.dom.statusCanvas.style.height = obj.outerHeight - 2 * obj.BORDER + (obj.extendToolbar ? obj.TOOLBAR_HEIGHT * core.domStyle.scale + obj.BORDER : 0) + "px";
+ core.maps._setHDCanvasSize(core.dom.statusCanvasCtx, obj.BAR_WIDTH, core._PY_ + (obj.extendToolbar ? obj.TOOLBAR_HEIGHT + obj.BORDER : 0));
+ }
+ if (core.domStyle.isVertical) {
+ core.dom.caidan1.style.width = core._PX_ * core.domStyle.scale + "px";
+ core.dom.caidan1.style.height = obj.statusBarHeightInVertical - 3 + "px";
+ core.maps._setHDCanvasSize(core.dom.caidan1Ctx, core._PX_, obj.col * 32 + 9);
+ }
+ else {
+ core.dom.caidan1.style.width = obj.BAR_WIDTH * core.domStyle.scale + "px";
+ core.dom.caidan1.style.height = obj.outerHeight - 2 * obj.BORDER + (obj.extendToolbar ? obj.TOOLBAR_HEIGHT * core.domStyle.scale + obj.BORDER : 0) + "px";
+ core.maps._setHDCanvasSize(core.dom.caidan1Ctx, obj.BAR_WIDTH, core._PY_ + (obj.extendToolbar ? obj.TOOLBAR_HEIGHT + obj.BORDER : 0));
+ }
+ core.dom.statusCanvas.style.display = core.flags.statusCanvas && !obj.extendToolbar ? "block" : "none";
+ }
},
"drawLight": function () {
diff --git a/styles.css b/styles.css
index 5958386..40d8957 100644
--- a/styles.css
+++ b/styles.css
@@ -166,8 +166,8 @@
}
#floorMsgGroup {
- top: 3px;
- right: 3px;
+ top: 0px;
+ right: 0px;
position: absolute;
text-align: center;
display: none;
@@ -319,6 +319,10 @@ p#name {
z-index: 60;
}
+#caidan {
+ z-index: 62;
+}
+
#damage {
z-index: 65;
}