mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-12-16 23:05:23 +01:00
[Bug] Fix speedup/slowdown buttons not working properly (#6393)
Fix speedup button resetting to minimum speed
This commit is contained in:
parent
0f8b1f63b5
commit
efaf7760e4
@ -13,7 +13,7 @@ import { SettingsGamepadUiHandler } from "#ui/settings-gamepad-ui-handler";
|
|||||||
import { SettingsKeyboardUiHandler } from "#ui/settings-keyboard-ui-handler";
|
import { SettingsKeyboardUiHandler } from "#ui/settings-keyboard-ui-handler";
|
||||||
import { SettingsUiHandler } from "#ui/settings-ui-handler";
|
import { SettingsUiHandler } from "#ui/settings-ui-handler";
|
||||||
import { StarterSelectUiHandler } from "#ui/starter-select-ui-handler";
|
import { StarterSelectUiHandler } from "#ui/starter-select-ui-handler";
|
||||||
import type Phaser from "phaser";
|
import Phaser from "phaser";
|
||||||
|
|
||||||
type ActionKeys = Record<Button, () => void>;
|
type ActionKeys = Record<Button, () => void>;
|
||||||
|
|
||||||
@ -224,25 +224,26 @@ export class UiInputs {
|
|||||||
|
|
||||||
buttonSpeedChange(up = true): void {
|
buttonSpeedChange(up = true): void {
|
||||||
const settingGameSpeed = settingIndex(SettingKeys.Game_Speed);
|
const settingGameSpeed = settingIndex(SettingKeys.Game_Speed);
|
||||||
|
const settingOptions = Setting[settingGameSpeed].options;
|
||||||
|
let currentSetting = settingOptions.findIndex(item => item.value === globalScene.gameSpeed.toString());
|
||||||
|
// if current setting is -1, then the current game speed is not a valid option, so default to index 5 (3x)
|
||||||
|
if (currentSetting === -1) {
|
||||||
|
currentSetting = 5;
|
||||||
|
}
|
||||||
|
let direction: number;
|
||||||
if (up && globalScene.gameSpeed < 5) {
|
if (up && globalScene.gameSpeed < 5) {
|
||||||
globalScene.gameData.saveSetting(
|
direction = 1;
|
||||||
SettingKeys.Game_Speed,
|
|
||||||
Setting[settingGameSpeed].options.findIndex(item => item.label === `${globalScene.gameSpeed}x`) + 1,
|
|
||||||
);
|
|
||||||
if (globalScene.ui?.getMode() === UiMode.SETTINGS) {
|
|
||||||
(globalScene.ui.getHandler() as SettingsUiHandler).show([]);
|
|
||||||
}
|
|
||||||
} else if (!up && globalScene.gameSpeed > 1) {
|
} else if (!up && globalScene.gameSpeed > 1) {
|
||||||
globalScene.gameData.saveSetting(
|
direction = -1;
|
||||||
SettingKeys.Game_Speed,
|
} else {
|
||||||
Math.max(
|
return;
|
||||||
Setting[settingGameSpeed].options.findIndex(item => item.label === `${globalScene.gameSpeed}x`) - 1,
|
}
|
||||||
0,
|
globalScene.gameData.saveSetting(
|
||||||
),
|
SettingKeys.Game_Speed,
|
||||||
);
|
Phaser.Math.Clamp(currentSetting + direction, 0, settingOptions.length - 1),
|
||||||
if (globalScene.ui?.getMode() === UiMode.SETTINGS) {
|
);
|
||||||
(globalScene.ui.getHandler() as SettingsUiHandler).show([]);
|
if (globalScene.ui?.getMode() === UiMode.SETTINGS) {
|
||||||
}
|
(globalScene.ui.getHandler() as SettingsUiHandler).show([]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user