add options for slider styles and make it all work

This commit is contained in:
yugecin
2016-12-04 17:35:55 +01:00
parent 33f018bf0f
commit 00fcf0ebc1
7 changed files with 62 additions and 22 deletions

View File

@@ -1455,15 +1455,17 @@ public class Game extends BasicGameState {
this.leadInTime += epiImgTime;
SoundController.mute(false);
// let's create knorkesliders
List<Vec2f> curvepoints = new ArrayList<>();
for (GameObject gameObject : gameObjects) {
if (gameObject.isSlider()) {
((Slider) gameObject).baseSliderFrom = curvepoints.size();
curvepoints.addAll(Arrays.asList(((Slider) gameObject).getCurve().getCurvePoints()));
if (Options.isMergingSliders()) {
// let's create knorkesliders
List<Vec2f> curvepoints = new ArrayList<>();
for (GameObject gameObject : gameObjects) {
if (gameObject.isSlider()) {
((Slider) gameObject).baseSliderFrom = curvepoints.size();
curvepoints.addAll(Arrays.asList(((Slider) gameObject).getCurve().getCurvePoints()));
}
}
knorkesliders = new FakeCombinedCurve(curvepoints.toArray(new Vec2f[curvepoints.size()]));
}
knorkesliders = new FakeCombinedCurve(curvepoints.toArray(new Vec2f[curvepoints.size()]));
}
slidercurveFrom = 0;
@@ -1527,7 +1529,9 @@ public class Game extends BasicGameState {
* @param trackPosition the track position
*/
private void drawHitObjects(Graphics g, int trackPosition) {
knorkesliders.draw(Color.white, this.slidercurveFrom, this.slidercurveTo);
if (Options.isMergingSliders()) {
knorkesliders.draw(Color.white, this.slidercurveFrom, this.slidercurveTo);
}
// include previous object in follow points
int lastObjectIndex = -1;
if (objectIndex > 0 && objectIndex < beatmap.objects.length &&

View File

@@ -82,7 +82,9 @@ public class OptionsMenu extends BasicGameState {
GameOption.FORCE_DEFAULT_PLAYFIELD,
GameOption.IGNORE_BEATMAP_SKINS,
GameOption.SNAKING_SLIDERS,
GameOption.SHRINKING_SLIDERS,
GameOption.FALLBACK_SLIDERS,
GameOption.MERGING_SLIDERS,
GameOption.SHOW_HIT_LIGHTING,
GameOption.SHOW_COMBO_BURSTS,
GameOption.SHOW_PERFECT_HIT,