mirror of
https://github.com/spice2x/spice2x.github.io.git
synced 2026-08-01 22:30:42 -07:00
gitadora: option for guitar picking algorithm (#528)
## Link to GitHub Issue, if one exists n/a ## Description of change Adds an option to pick from four algorithms for guitar picking input. The default behavior is being switched from legacy (rising edge only, always 1 frame of input) to SOCD "prefer recent" algorithm. This makes it slightly easier to navigate the menu with the guitar. ## Testing Validated gw, gwdelta, and sdvx just in case.
This commit is contained in:
@@ -595,6 +595,16 @@ int main_implementation(int argc, char *argv[]) {
|
||||
if (options[launcher::Options::GitaDoraWailHold].is_active()) {
|
||||
socd::TILT_HOLD_MS = options[launcher::Options::GitaDoraWailHold].value_uint32();
|
||||
}
|
||||
if (options[launcher::Options::GitaDoraPickAlgo].is_active()) {
|
||||
const auto text = options[launcher::Options::GitaDoraPickAlgo].value_text();
|
||||
if (text == "legacy") {
|
||||
games::gitadora::PICK_ALGO.reset();
|
||||
} else if (text == "neutral") {
|
||||
games::gitadora::PICK_ALGO = socd::SocdAlgorithm::Neutral;
|
||||
} else if (text == "raw") {
|
||||
games::gitadora::PICK_ALGO = socd::SocdAlgorithm::None;
|
||||
}
|
||||
}
|
||||
if (options[launcher::Options::GitaDoraSubOverlaySize].is_active()) {
|
||||
games::gitadora::SUBSCREEN_OVERLAY_SIZE = options[launcher::Options::GitaDoraSubOverlaySize].value_text();
|
||||
}
|
||||
|
||||
@@ -1020,6 +1020,25 @@ static const std::vector<OptionDefinition> OPTION_DEFINITIONS = {
|
||||
.game_name = "GitaDora",
|
||||
.category = "Game Options",
|
||||
},
|
||||
{
|
||||
// GitaDoraPickAlgo
|
||||
.title = "GitaDora Picking Algorithm",
|
||||
.name = "gdpickalgo",
|
||||
.desc = "Select picking algorithm for guitar.\n\n"
|
||||
"recent (default): use SOCD cleaner algorithm that prioritizes recent input\n\n"
|
||||
"legacy: only the rising edge of the pick input is considered; cannot hold pick for menu navigation\n\n"
|
||||
"neutral: if both up and down are pressed, they cancel out\n\n"
|
||||
"raw: no filtering done by spice; game receives both input as-is, possible to input both up and down at the same time",
|
||||
.type = OptionType::Enum,
|
||||
.game_name = "GitaDora",
|
||||
.category = "Game Options",
|
||||
.elements = {
|
||||
{"recent", ""},
|
||||
{"legacy", ""},
|
||||
{"neutral", ""},
|
||||
{"raw", ""}
|
||||
},
|
||||
},
|
||||
{
|
||||
// GitaDoraSubOverlaySize
|
||||
.title = "GitaDora Subscreen Overlay Size",
|
||||
|
||||
@@ -103,6 +103,7 @@ namespace launcher {
|
||||
GitaDoraArenaSingleWindow,
|
||||
GitaDoraLefty,
|
||||
GitaDoraWailHold,
|
||||
GitaDoraPickAlgo,
|
||||
GitaDoraSubOverlaySize,
|
||||
LoadJubeatModule,
|
||||
LoadReflecBeatModule,
|
||||
|
||||
Reference in New Issue
Block a user