From 448927ad45c0a9e23cf9a1d3cae9d16ad020ba85 Mon Sep 17 00:00:00 2001 From: LoveEevee Date: Thu, 20 Sep 2018 21:30:49 +0300 Subject: [PATCH] Fix tabbing out before drumrolls on auto play --- public/src/js/game.js | 34 +++++++++++++++++----------------- public/src/js/mekadon.js | 14 ++++++++++---- 2 files changed, 27 insertions(+), 21 deletions(-) diff --git a/public/src/js/game.js b/public/src/js/game.js index b61cd38..0be543e 100644 --- a/public/src/js/game.js +++ b/public/src/js/game.js @@ -18,7 +18,7 @@ class Game{ } this.HPGain = 100 / this.songData.circles.filter(circle => { var type = circle.getType() - return type == "don" || type == "ka" || type == "daiDon" || type == "daiKa" + return type === "don" || type === "ka" || type === "daiDon" || type === "daiKa" }).length this.paused = false this.started = false @@ -89,17 +89,17 @@ class Game{ } } }else if(currentTime > endTime){ - if(drumrollNotes){ - circle.updateStatus(-1) - circle.played(0, false) - this.updateCurrentCircle() - if(this.controller.multiplayer == 1){ - p2.send("drumroll", { - pace: (this.getElapsedTime().ms - circle.getMS()) / circle.timesHit - }) - } - }else{ - if(!this.controller.autoPlayEnabled){ + if(!this.controller.autoPlayEnabled){ + if(drumrollNotes){ + circle.updateStatus(-1) + circle.played(0, false) + this.updateCurrentCircle() + if(this.controller.multiplayer === 1){ + p2.send("drumroll", { + pace: (this.getElapsedTime().ms - circle.getMS()) / circle.timesHit + }) + } + }else{ circle.updateStatus(-1) var currentScore = 0 circle.played(currentScore, type === "daiDon" || type === "daiKa") @@ -107,11 +107,11 @@ class Game{ this.updateCurrentCircle() this.updateCombo(currentScore) this.updateGlobalScore(currentScore, 1) - } - if(this.controller.multiplayer === 1){ - p2.send("note", { - score: -1 - }) + if(this.controller.multiplayer === 1){ + p2.send("note", { + score: -1 + }) + } } } } diff --git a/public/src/js/mekadon.js b/public/src/js/mekadon.js index 5758820..91b319f 100644 --- a/public/src/js/mekadon.js +++ b/public/src/js/mekadon.js @@ -8,9 +8,15 @@ class Mekadon{ } play(circle){ var type = circle.getType() - if(type == "balloon"){ + if((type === "balloon" || type === "drumroll" || type === "daiDrumroll") && this.getMS() > circle.getEndTime()){ + circle.updateStatus(-1) + circle.played(0, false) + this.game.updateCurrentCircle() + } + type = circle.getType() + if(type === "balloon"){ this.playDrumrollAt(circle, 0, 30) - }else if(type == "drumroll" || type == "daiDrumroll"){ + }else if(type === "drumroll" || type === "daiDrumroll"){ this.playDrumrollAt(circle, 0, 60) }else{ this.playAt(circle, 0, 450) @@ -59,12 +65,12 @@ class Mekadon{ this.setKey(this.lr ? kbd["ka_l"] : kbd["ka_r"]) this.lr = !this.lr } - if(type == "balloon"){ + if(type === "balloon"){ if(circle.requiredHits == 1){ assets.sounds["balloon"].play() } this.game.checkBalloon(circle) - }else if(type == "drumroll" || type == "daiDrumroll"){ + }else if(type === "drumroll" || type === "daiDrumroll"){ this.game.checkDrumroll(circle) }else{ if(typeof score == "undefined"){