Dean Herbert
28520414aa
Move KeyCounter
components to HUD
namespace
2023-03-07 16:41:39 +09:00
tsrk
1beec71037
refactor(KeyCounterDisplay): apply suggestions
...
I also took the freedom to add type checking, as we can't limit the
usage of `Add()` since it's a Container. The exception thrown also
advises of using the suggested `AddTrigger()` instead.
2023-02-22 14:58:27 +00:00
tsrk
076eb81b21
refactor: rename trigger classes
...
Makes it better to understand their purpose
2023-02-15 21:46:13 +00:00
tsrk
157bba7830
refactor: rename Trigger
class to InputTrigger
2023-02-15 21:41:36 +00:00
tsrk
74a58fb674
refactor: separate things in KeyCounter
...
To implement different different sources of input for KeyCounter, it
is now possible to create a Trigger class (to inherit) instead of
inheriting KeyCounter. This eases the creation of more input sources
(like for tests) while allowing to implement different UI variants.
That way, if another variant of the key counter needs to implemented
(for whathever reason), this can be done by only inheriting KeyCounter
and changing how things are arranged visually.
2023-02-13 01:24:27 +00:00
Dan Balasescu
7bc8908ca9
Partial everything
2022-11-27 00:00:27 +09:00
Salman Ahmed
2d4f390372
Remove non-smoke key bindings on "Relax" mod instead
2022-10-09 17:14:16 +03:00
Dean Herbert
6729bb3e1a
Change FrameStableClock
to inherit IGameplayClock
2022-09-08 18:24:18 +09:00
Ryuki
5cddc7ed1f
Code cleanup (CPS)
2022-08-24 17:13:23 +02:00
Dean Herbert
f3847b90fd
Tidy up attach logic
2022-08-24 19:36:01 +09:00
Ryuki
2aa3a1b50d
Rename all "KeysPerSecond" usages to "ClicksPerSecond"
2022-08-14 20:12:11 +02:00
Ryuki
9dc806506e
Make ActionListener
and KeysPerSecondCalculator
not rely on events to add timestamps
2022-08-14 19:31:14 +02:00
Ryuki
9b252b1d81
Make KeysPerSecondCalculator
dependency in HUDOverlay
nullable
2022-08-11 11:58:30 +02:00
Ryuki
3c6461b9e4
Remove KPS acronym usage
2022-08-11 10:01:39 +02:00
Ryuki
b52a07c16a
Use DI to provide dependencies for KPS Calculator and improve input
...
gathering
KPS Calculator now uses DI to retrieve the clocks. Using `HUDOverlay` it
is now cached for `KeysPerSecondCounter`s to resolve it. This also
allows to make an "Attach" flow like `KeyCounter`.
2022-08-08 21:54:06 +02:00
Dean Herbert
31a447fda0
Update parameter discards
2022-06-24 21:26:19 +09:00
Dan Balasescu
f8830c6850
Automated #nullable processing
2022-06-17 16:37:17 +09:00
Dan Balasescu
132c94c1b5
Remove Ruleset parameter from ResetFromReplayFrame()
2022-05-31 17:16:23 +09:00
Dan Balasescu
0641264a11
Merge branch 'master' into spectator-consistency-frames
2022-02-01 14:35:30 +09:00
Dan Balasescu
4fb565e15f
Reset ScoreProcessor from statistics replay frames
2022-01-31 21:32:56 +09:00
Dean Herbert
0e764538e0
Retrieve KeyBindingContainer
via DI rather than traversal lookup
2022-01-31 17:05:04 +09:00
Dean Herbert
a84fd2e20c
Merge branch 'master' into master
2022-01-31 16:30:08 +09:00
Dean Herbert
88602ec1b4
Fix mouse button disable not disabling touch input mappings
2022-01-05 18:29:32 +09:00
pikokr
dec1f31749
Make KeyBindingContainer
public
2021-12-28 22:43:07 +09:00
Dean Herbert
cdb2a92f86
Disable key repeat for all ruleset handling cases
2021-11-18 13:13:36 +09:00
smoogipoo
f9d5abff8a
Update with keybinding changes
2021-09-16 18:26:12 +09:00
Dean Herbert
9044a20120
Merge branch 'master' into realm-key-binding-store
2021-06-10 13:58:08 +09:00
Dean Herbert
d444fed46f
Detach gameplay score from replay recorder before importing
...
Closes #13320 .
2021-06-04 02:00:02 +09:00
Dean Herbert
a249bb9e69
Merge branch 'master' into realm-key-binding-store
2021-05-25 17:18:33 +09:00
Dean Herbert
57640810b5
Ignore certain banned InputKey
s for gameplay purposes
2021-05-24 18:40:40 +09:00
ekrctb
936bde28a3
Remove manual handling of IsActive in RulesetInputManager
...
Now it is supported in framework
2021-04-16 14:13:41 +09:00
Dean Herbert
ba325de595
Merge conditionals for readability
2021-04-15 14:19:59 +09:00
ekrctb
6d18b3db00
Avoid empty list allocation
2021-04-12 18:49:38 +09:00
ekrctb
d6d8ea5b6b
Throw when getting a frame of an empty replay
2021-04-12 11:17:56 +09:00
Dean Herbert
ec4b770cba
Remove unused using statement
2021-02-23 14:56:03 +09:00
Dean Herbert
672fd3f9d2
When disable mouse buttons during gameplay is selected, disable more globally
...
Until now the disable setting would only apply to left/right buttons,
and only in gameplay. This change will cause any global actions bound to
mouse buttons to also not work during gameplay.
Closes #11879 .
2021-02-23 14:37:46 +09:00
Bartłomiej Dach
5b96f01564
Fix key counter actions displaying out of order
2020-10-18 19:21:36 +02:00
Dean Herbert
49aa839872
Update RulesetInputManager to use new method
2020-07-01 18:54:11 +09:00
Dean Herbert
617149fb27
Implement in player
2020-03-23 20:06:18 +09:00
Dean Herbert
6d48068061
Move replay recorder to final location
2020-03-23 20:04:15 +09:00
Dean Herbert
232c255986
Basic test scene setup
2020-03-23 17:33:02 +09:00
smoogipoo
7b2f58eb30
Apply OnRelease method signature refactorings
2020-01-22 13:22:34 +09:00
Dean Herbert
b28689c774
Fix key counters appearing negative on intense beatmaps
...
When `FrameStabilityContainer` decides it needs multiple updates on the same frame, it ends up with an elapsed time of zero. This was interacting badly with the condition used in `RulesetInputManager` to govern playback direction.
I have changed this to use `Rate` as exposed by the frame stable clock.
- Closes #6198 .
2019-10-03 15:01:54 +08:00
Dean Herbert
0cdf125c1e
Handle key counter rewinding in a better way
...
Use ElapsedFrameTime rather than storing state data
2019-09-12 15:42:14 +09:00
Dean Herbert
c39c37a18d
Apply more missed cases
2019-04-01 12:44:46 +09:00
Dan Balasescu
bab7d78130
Remove redundant cast
...
Co-Authored-By: peppy <pe@ppy.sh>
2019-03-29 11:36:40 +09:00
Dean Herbert
8658de5108
Rename KeyCounterCollection -> KeyCounterDisplay
...
Also fix not working
2019-03-26 13:52:48 +09:00
Dean Herbert
771d676ba1
Split RulesetInputManager out to FrameStabilityContainer
2019-03-17 13:30:52 +09:00
Dean Herbert
558dbafb71
Use a safer method of setting the clock
2019-03-05 20:14:04 +09:00
Dean Herbert
d5943330b1
Fix potential infinite loop
2019-03-05 20:06:04 +09:00