diff --git a/src/yugecin/opsudance/options/OptionGroups.java b/src/yugecin/opsudance/options/OptionGroups.java index 0df29f34..7883f7d3 100644 --- a/src/yugecin/opsudance/options/OptionGroups.java +++ b/src/yugecin/opsudance/options/OptionGroups.java @@ -181,7 +181,8 @@ public class OptionGroups { }; public static final OptionTab[] storyboardOptions = new OptionTab[] { - new OptionTab("Gameplay", new Option[] { + new OptionTab("Gameplay", GameImage.MENU_NAV_GAMEPLAY), + new OptionTab("GENERAL", new Option[] { OPTION_BACKGROUND_DIM, OPTION_DANCE_REMOVE_BG, OPTION_SNAKING_SLIDERS, @@ -192,12 +193,14 @@ public class OptionGroups { OPTION_SHOW_PERFECT_HIT, OPTION_SHOW_FOLLOW_POINTS, }), - new OptionTab("Input", new Option[] { + new OptionTab("Input", GameImage.MENU_NAV_INPUT), + new OptionTab("INPUT", new Option[] { OPTION_CURSOR_SIZE, OPTION_NEW_CURSOR, OPTION_DISABLE_CURSOR }), - new OptionTab("Dance", new Option[] { + new OptionTab("Dance", GameImage.MENU_NAV_DANCE), + new OptionTab("MOVER", new Option[]{ OPTION_DANCE_MOVER, OPTION_DANCE_EXGON_DELAY, OPTION_DANCE_QUAD_BEZ_AGGRESSIVENESS, @@ -206,36 +209,56 @@ public class OptionGroups { OPTION_DANCE_QUAD_BEZ_CUBIC_AGGRESSIVENESS_FACTOR, OPTION_DANCE_MOVER_DIRECTION, OPTION_DANCE_SLIDER_MOVER_TYPE, + }), + new OptionTab("SPINNER", new Option[]{ OPTION_DANCE_SPINNER, OPTION_DANCE_SPINNER_DELAY, + }), + new OptionTab("SLIDER OPTIONS", new Option[]{ OPTION_DANCE_LAZY_SLIDERS, - OPTION_DANCE_CIRCLE_STREAMS, - OPTION_DANCE_ONLY_CIRCLE_STACKS, OPTION_DANCE_CIRLCE_IN_SLOW_SLIDERS, OPTION_DANCE_CIRLCE_IN_LAZY_SLIDERS, + }), + new OptionTab("CIRCLE MOVEMENTS", new Option[]{ + OPTION_DANCE_CIRCLE_STREAMS, + OPTION_DANCE_ONLY_CIRCLE_STACKS, + }), + new OptionTab("MIRROR", new Option[] { OPTION_DANCE_MIRROR, }), - new OptionTab("Dance display", new Option[] { + new OptionTab("Advanced Display", GameImage.MENU_NAV_ADVANCED), + new OptionTab("OBJECTS", new Option[]{ OPTION_DANCE_DRAW_APPROACH, OPTION_DANCE_OBJECT_COLOR_OVERRIDE, OPTION_DANCE_OBJECT_COLOR_OVERRIDE_MIRRORED, OPTION_DANCE_RGB_OBJECT_INC, + OPTION_DANCE_HIDE_OBJECTS, + }), + new OptionTab("CURSOR", new Option[]{ OPTION_DANCE_CURSOR_COLOR_OVERRIDE, OPTION_DANCE_CURSOR_MIRROR_COLOR_OVERRIDE, OPTION_DANCE_CURSOR_ONLY_COLOR_TRAIL, OPTION_DANCE_RGB_CURSOR_INC, OPTION_DANCE_CURSOR_TRAIL_OVERRIDE, - OPTION_DANCE_HIDE_OBJECTS, - OPTION_DANCE_HIDE_UI, }), - new OptionTab ("Pippi", new Option[] { + new OptionTab("MISC", new Option[] { + OPTION_DANCE_HIDE_UI, + OPTION_DANCE_REMOVE_BG, + OPTION_DANCE_ENABLE_SB, + }), + new OptionTab ("Pippi", GameImage.MENU_NAV_PIPPI), + new OptionTab ("GENERAL", new Option[]{ OPTION_PIPPI_ENABLE, OPTION_PIPPI_RADIUS_PERCENT, + }), + new OptionTab ("ANGLE MULTIPLIERS", new Option[]{ OPTION_PIPPI_ANGLE_INC_MUL, OPTION_PIPPI_ANGLE_INC_MUL_SLIDER, + }), + new OptionTab ("MISC", new Option[] { OPTION_PIPPI_SLIDER_FOLLOW_EXPAND, OPTION_PIPPI_PREVENT_WOBBLY_STREAMS, - }) + }), }; } diff --git a/src/yugecin/opsudance/ui/StoryboardOverlay.java b/src/yugecin/opsudance/ui/StoryboardOverlay.java index 8100fdd4..a62f79ec 100644 --- a/src/yugecin/opsudance/ui/StoryboardOverlay.java +++ b/src/yugecin/opsudance/ui/StoryboardOverlay.java @@ -1,6 +1,6 @@ /* * opsu!dance - fork of opsu! with cursordance auto - * Copyright (C) 2016 yugecin + * Copyright (C) 2016-2018 yugecin * * opsu!dance is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -55,7 +55,9 @@ public class StoryboardOverlay extends OverlayOpsuState implements OptionsOverla static { for (OptionTab tab : OptionGroups.storyboardOptions) { - optionList.addAll(Arrays.asList(tab.options)); + if (tab.options != null) { + optionList.addAll(Arrays.asList(tab.options)); + } } }