From feb7d1173d4a120edbfb9a348441fd2ebea7b9aa Mon Sep 17 00:00:00 2001 From: Florrie Date: Sun, 12 Aug 2018 11:33:02 -0300 Subject: Cleanup, don't open target menu if there aren't any queued actions --- index.js | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/index.js b/index.js index e312d32..02d5d9f 100644 --- a/index.js +++ b/index.js @@ -137,14 +137,7 @@ class ATBBar { activate() { if (this.queuedActions.length) { // Cut off the actions that we don't have enough ATB charge for - let cutoff = 0, segment = 0 - while (cutoff < this.queuedActions.length) { - segment += this.queuedActions[cutoff].size - if (segment > this.progress * this.segmentCount) { - break - } - cutoff++ - } + const cutoff = this.getCutoff() if (cutoff === 0) { // If we don't have enough charge to execute even one action, just don't do anything return @@ -155,6 +148,19 @@ class ATBBar { this.battleCharacter.isExecutingChain = true } } + + getCutoff() { + // Cutoff point in the action queue where ATB does not fill the action + let cutoff = 0, segment = 0 + while (cutoff < this.queuedActions.length) { + segment += this.queuedActions[cutoff].size + if (segment > this.progress * this.segmentCount) { + break + } + cutoff++ + } + return cutoff + } } class HPBar { @@ -622,8 +628,10 @@ canvas.addEventListener('keypress', evt => { } else if (evt.keyCode === 8) { atbBar.dequeue() } else if (evt.keyCode === 13 || evt.key.toLowerCase() === 'e') { - battle.currentMenu = targetMenu - targetMenu.buildOptions(battle) + if (battle.playerCharacter.atbBar.queuedActions.length) { + battle.currentMenu = targetMenu + targetMenu.buildOptions(battle) + } } } else if (currentMenu === targetMenu) { if (evt.keyCode === 13 || evt.key.toLowerCase() === 'e' || evt.which === 32) { -- cgit 1.3.0-6-gf8a5