Add specific charge button option
Some checks are pending
GenerateBuilds / generate-port-otr (push) Waiting to run
GenerateBuilds / build-windows (push) Blocked by required conditions
GenerateBuilds / build-macos (push) Blocked by required conditions
GenerateBuilds / build-linux (push) Blocked by required conditions

This commit is contained in:
Kiloku 2025-01-04 23:57:13 -03:00 committed by Alejandro Asenjo Nitti
parent 76dab3e20d
commit 0deeddf8cb
3 changed files with 21 additions and 3 deletions

View File

@ -3325,7 +3325,18 @@ bool Player_UpdateLockOn(Player* player) {
s32 i; s32 i;
bool rapidFire = CVarGetInteger("gRapidFire", 0) == 1; bool rapidFire = CVarGetInteger("gRapidFire", 0) == 1;
if (rapidFire ? !(gInputHold->button & A_BUTTON) : (gInputHold->button & A_BUTTON)) { bool charging;
if (rapidFire) {
if (CVarGetInteger("gLtoCharge", 0) == 1) {
charging = (gInputHold->button & L_TRIG) && !(gInputHold->button & A_BUTTON);
}
else {
charging = !(gInputHold->button & A_BUTTON);
}
} else {
charging = (gInputHold->button & A_BUTTON);
}
if (charging) {
gChargeTimers[player->num]++; gChargeTimers[player->num]++;
if (gChargeTimers[player->num] > 21) { if (gChargeTimers[player->num] > 21) {
gChargeTimers[player->num] = 21; gChargeTimers[player->num] = 21;

View File

@ -1336,7 +1336,7 @@ void Aquas_BlueMarineShoot(Player* player) {
if (player-> shotTimer > 0) { if (player-> shotTimer > 0) {
player->shotTimer--; player->shotTimer--;
} }
if (player->shotTimer <= 0){ if (player->shotTimer <= 0) {
Aquas_BlueMarineLaser(player); Aquas_BlueMarineLaser(player);
player->shotTimer = 3; player->shotTimer = 3;
} }

View File

@ -501,6 +501,13 @@ void DrawCheatsMenu() {
UIWidgets::CVarCheckbox("Rapid-fire mode", "gRapidFire", { UIWidgets::CVarCheckbox("Rapid-fire mode", "gRapidFire", {
.tooltip = "Hold A to keep firing. Release A to start charging a shot." .tooltip = "Hold A to keep firing. Release A to start charging a shot."
}); });
if (CVarGetInteger("gRapidFire", 0) == 1) {
ImGui::Dummy(ImVec2(22.0f, 0.0f));
ImGui::SameLine();
UIWidgets::CVarCheckbox("Hold L to Charge", "gLtoCharge", {
.tooltip = "If you prefer to not have auto-charge."
});
}
UIWidgets::CVarCheckbox("Self destruct button", "gHit64SelfDestruct", { UIWidgets::CVarCheckbox("Self destruct button", "gHit64SelfDestruct", {
.tooltip = "Press Down on the D-PAD to instantly self destruct." .tooltip = "Press Down on the D-PAD to instantly self destruct."
}); });