mirror of
https://github.com/vladtrc/iw4L
synced 2026-10-26 02:11:39 -04:00
72b4c08c33
The fine sensitivity slider reused the 1-10 setting, conflating console preset numbers with a continuous speed control. Selecting a preset must leave the player's custom slider value available for later use. Store the selected preset and custom multiplier independently. Add Custom and integer choices 1 through 10 to the Controller menu. Use the IW4x pc_options_gamepad.menu preset table: 0.6, 1.0, 1.4, 1.8, 2.0, 2.2, 2.6, 3.0, 3.5 and 4.0. Custom uses the local controller slider's 0.1-5.0 multiplier range with 0.1 steps. Editing the slider selects Custom; selecting a preset never overwrites the saved custom value. Resolve the active multiplier before applying controller aiming. Persist both settings and migrate the previous pad_sensitivity value to Custom using its old value/3 speed mapping, preserving existing effective speed. The acceleration toggle remains independent. Validation: play build, targeted formatting and diff checks passed. Temporary probes verified all ten preset multipliers, custom-value retention, settings save/reload and legacy migration, and menu inheritance/choices. Aiming probes also passed for acceleration on/off and ADS/FOV scaling at 30, 60 and 144 Hz. Gameplay feel and visual layout were not retested.