From c21d62fb3762cf9ad7841bea76635cfff9b3d925 Mon Sep 17 00:00:00 2001 From: ckcz123 Date: Wed, 27 Dec 2017 17:25:14 +0800 Subject: [PATCH] Disable Battle Animate --- libs/data.js | 1 + libs/events.js | 19 ++++++++++++++++--- libs/ui.js | 2 ++ 更新说明.txt | 3 ++- 4 files changed, 21 insertions(+), 4 deletions(-) diff --git a/libs/data.js b/libs/data.js index fab64b02..f63ec3d6 100644 --- a/libs/data.js +++ b/libs/data.js @@ -128,6 +128,7 @@ data.prototype.init = function() { "bigKeyIsBox": false, // 如果此项为true,则视为钥匙盒,红黄蓝钥匙+1;若为false,则视为大黄门钥匙 /****** 系统相关 ******/ "startDirectly": false, // 点击“开始游戏”后是否立刻开始游戏而不显示难度选择界面 + "canOpenBattleAnimate": false, // 是否允许用户开启战斗过程;如果此项为false,则下面两项均强制视为false "showBattleAnimateConfirm": true, // 是否在游戏开始时提供“是否开启战斗动画”的选项 "battleAnimate": true, // 是否默认显示战斗动画;用户可以手动在菜单栏中开关 "displayEnemyDamage": true, // 是否地图怪物显伤;用户可以手动在菜单栏中开关 diff --git a/libs/events.js b/libs/events.js index 91091425..59ac6553 100644 --- a/libs/events.js +++ b/libs/events.js @@ -66,6 +66,14 @@ events.prototype.startGame = function (hard) { core.hideStartAnimate(function() { core.drawText(core.clone(core.firstData.startText), function() { + + // 强制关闭战斗过程? + if (!core.flags.canOpenBattleAnimate) { + core.flags.showBattleAnimateConfirm=false; + core.flags.battleAnimate=false; + core.setLocalStorage('battleAnimate', false); + } + if (core.flags.showBattleAnimateConfirm) { // 是否提供“开启战斗动画”的选择项 core.status.event.selection = core.flags.battleAnimate ? 0 : 1; core.ui.drawConfirmBox("你想开启战斗动画吗?\n之后可以在菜单栏中开启或关闭。\n(强烈建议新手开启此项)", function () { @@ -1125,9 +1133,14 @@ events.prototype.clickSwitchs = function (x,y) { core.ui.drawSwitchs(); break; case 1: - core.flags.battleAnimate=!core.flags.battleAnimate; - core.setLocalStorage('battleAnimate', core.flags.battleAnimate); - core.ui.drawSwitchs(); + if (!core.flags.canOpenBattleAnimate) { + core.drawTip("本塔不能开启战斗动画!"); + } + else { + core.flags.battleAnimate=!core.flags.battleAnimate; + core.setLocalStorage('battleAnimate', core.flags.battleAnimate); + core.ui.drawSwitchs(); + } break; case 2: core.flags.displayEnemyDamage=!core.flags.displayEnemyDamage; diff --git a/libs/ui.js b/libs/ui.js index 97e9b6df..d712d134 100644 --- a/libs/ui.js +++ b/libs/ui.js @@ -443,6 +443,8 @@ ui.prototype.drawBattleAnimate = function(monsterId, callback) { core.setAlpha('ui', 1); core.strokeRect('ui', left - 1, top - 1, right + 1, bottom + 1, '#FFFFFF', 2); core.clearMap('data',0,0,416,416); + + clearInterval(core.interval.tipAnimate); core.setAlpha('data', 1); core.setOpacity('data', 1); core.status.boxAnimateObjs = []; diff --git a/更新说明.txt b/更新说明.txt index b0e69a89..8f51d1ae 100644 --- a/更新说明.txt +++ b/更新说明.txt @@ -1,6 +1,7 @@ 全键盘操作 √ Ctrl快速跳过对话 √ 支持不同层使用不同的地面素材 √ -直接内嵌了诸多默认的terrains素材 +支持多个Autotile同时存在 √ +直接内嵌了诸多默认的terrains素材 √ 自动定位到上次存/读档位置 √ 设置储存 √