Skip to content

modifier

Anthony Samms edited this page Jun 1, 2026 · 1 revision

ModifierSelector is a panel that lets the player configure gameplay modifiers before starting a song. It appears on the song_select screen when the player selects the Modifier tile in the difficulty selector.

The five modifiers cycle through values with left/right input:

Modifier Options
Auto Off / On
Speed 0.5× – 4.0× (0.1 steps)
Display Normal / Hidden
Inverse Off / On (swaps left and right notes)
Random Off / Kimagure / Detarame

ModifierSelector

ModifierSelector(PlayerNum player_num);

Loads the player's current modifier settings from persistent data, initialises current_mod_index to the first modifier, and creates all text objects for each option value.

Members

Member Type Description
is_finished bool true once the exit animation has completed
is_confirmed bool true after the player confirms all modifier selections
move MoveAnimation* Panel slide-in / slide-out animation, driven externally by SongSelectPlayer

Methods

void update(double current_ms);

Advances all animations and sets is_finished when the exit animation completes after confirmation.

void left();
void right();

Cycle the current modifier's value and start the sideways text slide animation.

void confirm();

Advances to the next modifier. If all five modifiers have been confirmed, saves the settings to persistent data, starts the exit animation, and sets is_confirmed.

void draw();

Draws the panel background, the current modifier name, its current and previous values (animated with the sideways slide), and the blue navigation arrows.

Clone this wiki locally