From 87e39fee52936af98424764cf54052607a3deca8 Mon Sep 17 00:00:00 2001 From: oc Date: Sun, 28 Oct 2018 22:18:35 +0800 Subject: [PATCH] Move Directly --- _server/data.comment.js | 12 ------------ libs/actions.js | 30 +++++------------------------- libs/control.js | 2 +- libs/core.js | 1 - libs/maps.js | 10 ++++++++-- libs/ui.js | 1 - project/data.js | 2 -- 7 files changed, 14 insertions(+), 44 deletions(-) diff --git a/_server/data.comment.js b/_server/data.comment.js index a149b17b..7b102057 100644 --- a/_server/data.comment.js +++ b/_server/data.comment.js @@ -551,12 +551,6 @@ data_comment_c456ea59_6018_45ef_8bcc_211a24c627dc = "_bool": "bool", "_data": "寻路算法是否经过血瓶;如果该项为false,则寻路算法会自动尽量绕过血瓶" }, - "enableViewMaps": { - "_leaf": true, - "_type": "checkbox", - "_bool": "bool", - "_data": "是否支持在菜单栏中查看所有楼层的地图" - }, "portalWithoutTrigger": { "_leaf": true, "_type": "checkbox", @@ -575,12 +569,6 @@ data_comment_c456ea59_6018_45ef_8bcc_211a24c627dc = "_bool": "bool", "_data": "是否允许瞬间移动" }, - "clickMoveDirectly": { - "_leaf": true, - "_type": "checkbox", - "_bool": "bool", - "_data": "是否默认开启单击瞬移,用户可在菜单栏手动开关" - } } } } diff --git a/libs/actions.js b/libs/actions.js index 2b17376d..937fb7ec 100644 --- a/libs/actions.js +++ b/libs/actions.js @@ -357,12 +357,7 @@ actions.prototype.keyUp = function(keyCode) { break; case 33: case 34: // PAGEUP/PAGEDOWN if (core.status.heroStop) { - if (core.flags.enableViewMaps) { - core.ui.drawMaps(); - } - else { - core.drawTip("本塔不允许浏览地图!"); - } + core.ui.drawMaps(); } break; case 37: // UP @@ -1848,22 +1843,17 @@ actions.prototype.clickSwitchs = function (x,y) { core.ui.drawSwitchs(); break; case 6: - core.flags.clickMoveDirectly=!core.flags.clickMoveDirectly; - core.setLocalStorage('clickMoveDirectly', core.flags.clickMoveDirectly); - core.ui.drawSwitchs(); - break; - case 7: core.platform.useLocalForage=!core.platform.useLocalForage; core.setLocalStorage('useLocalForage', core.platform.useLocalForage); core.ui.drawSwitchs(); break; - case 8: + case 7: window.open(core.platform.isPC?"editor.html":"editor-mobile.html", "_blank"); break; - case 9: + case 8: window.open(core.firstData.name+".zip", "_blank"); break; - case 10: + case 9: core.status.event.selection=0; core.ui.drawSettings(); break; @@ -1916,17 +1906,7 @@ actions.prototype.clickSettings = function (x,y) { core.ui.drawQuickShop(); break; case 2: - if (!core.flags.enableViewMaps) { - core.drawTip("本塔不允许浏览地图!"); - } - else { - /* - core.drawText("\t[系统提示]即将进入浏览地图模式。\n\n点击地图上半部分,或按[↑]键可查看前一张地图\n点击地图下半部分,或按[↓]键可查看后一张地图\n点击地图中间,或按[ESC]键可离开浏览地图模式\n此模式下可以打开怪物手册以查看某层楼的怪物属性", function () { - core.ui.drawMaps(core.floorIds.indexOf(core.status.floorId)); - }) - */ - core.ui.drawMaps(); - } + core.ui.drawMaps(); break; case 3: core.status.event.selection=0; diff --git a/libs/control.js b/libs/control.js index 9054d2dd..92fa9d9a 100644 --- a/libs/control.js +++ b/libs/control.js @@ -471,7 +471,7 @@ control.prototype.setAutomaticRoute = function (destX, destY, stepPostfix) { if (core.timeout.turnHeroTimeout!=null) return; // 单击瞬间移动 - if (core.flags.clickMoveDirectly && core.status.heroStop) { + if (core.status.heroStop) { if (core.control.tryMoveDirectly(destX, destY)) return; } diff --git a/libs/core.js b/libs/core.js index e7b2084c..2cbbb589 100644 --- a/libs/core.js +++ b/libs/core.js @@ -293,7 +293,6 @@ core.prototype.init = function (coreData, callback) { core.flags.displayEnemyDamage = core.getLocalStorage('enemyDamage', core.flags.displayEnemyDamage); core.flags.displayCritical = core.getLocalStorage('critical', core.flags.displayCritical); core.flags.displayExtraDamage = core.getLocalStorage('extraDamage', core.flags.displayExtraDamage); - core.flags.clickMoveDirectly = core.getLocalStorage('clickMoveDirectly', core.flags.clickMoveDirectly); core.material.ground = new Image(); core.material.ground.src = "project/images/ground.png"; diff --git a/libs/maps.js b/libs/maps.js index 7e4c36f9..f3119d2d 100644 --- a/libs/maps.js +++ b/libs/maps.js @@ -306,7 +306,7 @@ maps.prototype.canMoveHero = function(x,y,direction,floorId) { ////// 能否瞬间移动 ////// maps.prototype.canMoveDirectly = function (destX,destY) { - // 不可瞬间移动请返回0 + // 不可瞬间移动请返回-1 if (!core.flags.enableMoveDirectly) return -1; // 中毒状态:不能 @@ -315,7 +315,13 @@ maps.prototype.canMoveDirectly = function (destX,destY) { var fromX = core.getHeroLoc('x'), fromY = core.getHeroLoc('y'); if (fromX==destX&&fromY==destY) return 0; - // 可以无视起点事件 + // 大地图且会改变左上角坐标,不能 + var sx = core.clamp(fromX-6,0,core.bigmap.width-13), sy = core.clamp(fromY-6,0,core.bigmap.width-13), + ex = core.clamp(destX-6,0,core.bigmap.height-13), ey = core.clamp(destY-6,0,core.bigmap.height-13); + + if (sx!=ex || sy!=ey) return -1; + + // 无视起点事件 var nowBlockId = core.getBlockId(fromX, fromY); if ((nowBlockId!=null&&nowBlockId!='upFloor'&&nowBlockId!='downFloor'&&nowBlockId!='portal' &&nowBlockId!='upPortal'&&nowBlockId!='leftPortal'&&nowBlockId!='downPortal'&&nowBlockId!='rightPortal') diff --git a/libs/ui.js b/libs/ui.js index ea7a305b..eb4836c9 100644 --- a/libs/ui.js +++ b/libs/ui.js @@ -821,7 +821,6 @@ ui.prototype.drawSwitchs = function() { "怪物显伤: "+(core.flags.displayEnemyDamage ? "[ON]" : "[OFF]"), "临界显伤: "+(core.flags.displayCritical ? "[ON]" : "[OFF]"), "领域显伤: "+(core.flags.displayExtraDamage ? "[ON]" : "[OFF]"), - "单击瞬移: "+(core.flags.clickMoveDirectly ? "[ON]" : "[OFF]"), "新版存档: "+(core.platform.useLocalForage ? "[ON]":"[OFF]"), "查看工程", "下载离线版本", diff --git a/project/data.js b/project/data.js index 2a73e455..3a651825 100644 --- a/project/data.js +++ b/project/data.js @@ -219,10 +219,8 @@ data_a1e2fb4a_e986_4524_b0da_9b7ba7c0874d = "displayExtraDamage": true, "enableGentleClick": true, "potionWhileRouting": false, - "enableViewMaps": true, "portalWithoutTrigger": true, "canGoDeadZone": false, "enableMoveDirectly": true, - "clickMoveDirectly": true } } \ No newline at end of file