option to hide approach circles

This commit is contained in:
yugecin 2016-09-29 23:34:11 +02:00
parent 7f908db6e7
commit fa57e63a2f
5 changed files with 20 additions and 2 deletions

View File

@ -652,6 +652,20 @@ public class Options {
} }
}, },
DANCE_DRAW_APPROACH ("Draw approach circles", "DrawApproach", "Can get a bit busy when using mirror collage", true) {
@Override
public void click(GameContainer container) {
bool = !bool;
Dancer.drawApproach = bool;
}
@Override
public void read(String s) {
super.read(s);
Dancer.drawApproach = bool;
}
},
PIPPI_ENABLE ("Pippi", "Pippi", "Move in circles like dancing pippi (osu! april fools joke 2016)", false) { PIPPI_ENABLE ("Pippi", "Pippi", "Move in circles like dancing pippi (osu! april fools joke 2016)", false) {
// TODO // TODO
}, },

View File

@ -32,6 +32,7 @@ import itdelatrisu.opsu.ui.Colors;
import org.newdawn.slick.Color; import org.newdawn.slick.Color;
import org.newdawn.slick.GameContainer; import org.newdawn.slick.GameContainer;
import org.newdawn.slick.Graphics; import org.newdawn.slick.Graphics;
import yugecin.opsudance.Dancer;
/** /**
* Data type representing a circle object. * Data type representing a circle object.
@ -120,7 +121,7 @@ public class Circle extends GameObject {
float oldAlpha = Colors.WHITE_FADE.a; float oldAlpha = Colors.WHITE_FADE.a;
Colors.WHITE_FADE.a = color.a = alpha; Colors.WHITE_FADE.a = color.a = alpha;
if (timeDiff >= 0 && !GameMod.HIDDEN.isActive()) if (timeDiff >= 0 && !GameMod.HIDDEN.isActive() && Dancer.drawApproach)
GameImage.APPROACHCIRCLE.getImage().getScaledCopy(approachScale).drawCentered(x, y, color); GameImage.APPROACHCIRCLE.getImage().getScaledCopy(approachScale).drawCentered(x, y, color);
GameImage.HITCIRCLE.getImage().drawCentered(x, y, color); GameImage.HITCIRCLE.getImage().drawCentered(x, y, color);
boolean overlayAboveNumber = Options.getSkin().isHitCircleOverlayAboveNumber(); boolean overlayAboveNumber = Options.getSkin().isHitCircleOverlayAboveNumber();

View File

@ -37,6 +37,7 @@ import org.newdawn.slick.Color;
import org.newdawn.slick.GameContainer; import org.newdawn.slick.GameContainer;
import org.newdawn.slick.Graphics; import org.newdawn.slick.Graphics;
import org.newdawn.slick.Image; import org.newdawn.slick.Image;
import yugecin.opsudance.Dancer;
/** /**
* Data type representing a slider object. * Data type representing a slider object.
@ -296,7 +297,7 @@ public class Slider extends GameObject {
if (mirror) { if (mirror) {
g.rotate(x, y, -180f); g.rotate(x, y, -180f);
} }
if (!GameMod.HIDDEN.isActive()) { if (!GameMod.HIDDEN.isActive() && Dancer.drawApproach) {
GameImage.APPROACHCIRCLE.getImage().getScaledCopy(approachScale).drawCentered(x, y, color); GameImage.APPROACHCIRCLE.getImage().getScaledCopy(approachScale).drawCentered(x, y, color);
} }
g.popTransform(); g.popTransform();

View File

@ -111,6 +111,7 @@ public class OptionsMenu extends BasicGameState {
GameOption.DANCE_CIRCLE_STREAMS, GameOption.DANCE_CIRCLE_STREAMS,
GameOption.DANCE_ONLY_CIRCLE_STACKS, GameOption.DANCE_ONLY_CIRCLE_STACKS,
GameOption.DANCE_MIRROR, GameOption.DANCE_MIRROR,
GameOption.DANCE_DRAW_APPROACH,
}), }),
PIPPI ("Pippi", new GameOption[] { PIPPI ("Pippi", new GameOption[] {
GameOption.PIPPI_ENABLE, GameOption.PIPPI_ENABLE,

View File

@ -51,6 +51,7 @@ public class Dancer {
public static Dancer instance = new Dancer(); public static Dancer instance = new Dancer();
public static boolean mirror; // this should really get its own place somewhere... public static boolean mirror; // this should really get its own place somewhere...
public static boolean drawApproach; // this should really get its own place somewhere...
private int dir; private int dir;
private GameObject p; private GameObject p;