From e362232d5fda3df224e3b5aa6b344de261fac5d7 Mon Sep 17 00:00:00 2001 From: Jeffrey Han Date: Tue, 17 Mar 2015 16:03:49 -0400 Subject: [PATCH] Fixed some game mod inverse checks. - Fixed issues with Auto and Spun Out/No Fail. - Added checks for Half Time and Double Time. Signed-off-by: Jeffrey Han --- src/itdelatrisu/opsu/GameMod.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/itdelatrisu/opsu/GameMod.java b/src/itdelatrisu/opsu/GameMod.java index d29ac60a..6536864b 100644 --- a/src/itdelatrisu/opsu/GameMod.java +++ b/src/itdelatrisu/opsu/GameMod.java @@ -355,17 +355,16 @@ public enum GameMod { scoreMultiplier = -1f; if (checkInverse) { - boolean b = (this == SUDDEN_DEATH || this == NO_FAIL || this == RELAX || this == AUTOPILOT); if (AUTO.isActive()) { if (this == AUTO) { SPUN_OUT.active = false; SUDDEN_DEATH.active = false; RELAX.active = false; AUTOPILOT.active = false; - } else if (b) + } else if (this == SPUN_OUT || this == SUDDEN_DEATH || this == RELAX || this == AUTOPILOT) this.active = false; } - if (active && b) { + if (active && (this == SUDDEN_DEATH || this == NO_FAIL || this == RELAX || this == AUTOPILOT)) { SUDDEN_DEATH.active = false; NO_FAIL.active = false; RELAX.active = false; @@ -384,6 +383,12 @@ public enum GameMod { else EASY.active = false; } + if (HALF_TIME.isActive() && DOUBLE_TIME.isActive()) { + if (this == HALF_TIME) + DOUBLE_TIME.active = false; + else + HALF_TIME.active = false; + } } }