1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-30 07:12:58 +08:00
Commit Graph

55 Commits

Author SHA1 Message Date
Bartłomiej Dach
22e9c4a3b5
Use private interface rather than weird inheritance 2024-02-13 10:20:06 +01:00
James Wilson
5101979ac0
only use LegacyReplayPressHandler on legacy replays 2024-02-13 00:34:06 +00:00
tsunyoku
cc733ea809 add inline comment for supposedly backwards ternary 2024-02-12 18:00:05 +00:00
tsunyoku
2a02566283 refactor down and wasLeft management into respective PressHandler classes 2024-02-12 17:45:00 +00:00
tsunyoku
581ae2f679 handle key presses when watching legacy relax replays 2024-02-12 12:51:35 +00:00
Salman Ahmed
ee4fe1c068 Fix relax mod not handling objects close to a previous slider's follow area 2024-01-28 23:11:42 +03:00
Bartłomiej Dach
7e557152fb
Fix relax mod not considering full follow area radius when automatically holding sliders
Closes https://github.com/ppy/osu/issues/25947.

Regressed in https://github.com/ppy/osu/pull/25776 with the changes to
`DrawableSliderBall`.

I would have liked to include tests, but relax mod is a bit untestable,
because it disengages completely in the presence of a replay:

	7e09164d70/osu.Game.Rulesets.Osu/Mods/OsuModRelax.cs (L49-L58)

Additionally, `RulesetInputManager` disengages completely from parent
inputs when there is a replay active:

	7e09164d70/osu.Game/Rulesets/UI/RulesetInputManager.cs (L116)

which means there is really no easy way to control positional input
while still having relax logic work. So I'm hoping the fix could be
considered obvious enough to not require test coverage.
2023-12-22 12:50:42 +01:00
Dean Herbert
247fa088db Add IHasNoTimedInputs interface to scope change further 2023-06-06 22:22:42 +09:00
Dean Herbert
c540d78fbc Expose the actual KeyBindingInputManager
Turns out that `CreateInputManager` is called more than once, and some
mods (ie. `InputBlockingMod`) rely on consuming the "main" one. So let's
go back to accessing and exposing in `DrawableOsuRuleset` rather than
storing out own reference.
2023-02-14 18:10:26 +09:00
Dean Herbert
5ec5222d8a Expose and consume OsuInputManager explicitly 2023-02-14 17:36:07 +09:00
Dean Herbert
5a5f3af27d Rename property and add xmldoc 2022-10-10 15:42:08 +09:00
naoei
3e38baca3c Change ruleset mod description types 2022-08-10 16:09:11 -04:00
andy840119
632577389d Mark the property as non-nullable. 2022-07-31 21:43:16 +08:00
為什麼
9134525111 Mark the property as nullable and add some assert check. 2022-07-26 23:58:50 +08:00
為什麼
deb39bd330 Mark the property as nullable or non-nullable. 2022-07-26 23:52:08 +08:00
為什麼
e28584da89 Remove nullable disable annotation in the Osu ruleset. 2022-07-26 23:25:28 +08:00
James
20d2b86193 make Single Tap incompatible with Autoplay, Cinema and Relax 2022-07-12 23:18:20 +01:00
Gabe Livengood
b96734e31a
fix mod incompatibility between repel and relax 2022-07-12 08:43:48 -04:00
Dean Herbert
fa626a82b3 Add missed incompatilibity rules 2022-07-12 15:19:06 +09:00
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Supersonicboss1
81b4622620 fixed autoplay not showing compat, + relax compat 2022-05-04 22:25:34 +01:00
Dean Herbert
a987cda30d Rename "Aim Assist" to "Magnetised" to better suit the mod's behaviour
As proposed in https://github.com/ppy/osu/discussions/17375.
2022-04-01 12:15:52 +09:00
Noah M
78869c462a
Use .Concat() instead of chained Append
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-03-18 14:24:36 -05:00
Noah M
b4a8defe1a Make Relax and Aim assist mods incompatible 2022-03-18 14:12:36 -05:00
PercyDan
639d813d06
Don't override previous value
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-02-12 11:15:03 +08:00
PercyDan54
053f41d755
Simplify code 2022-02-12 10:06:43 +08:00
PercyDan54
2ed3d58531
Ignore short spinners for relax mod 2022-02-12 09:28:50 +08:00
Dean Herbert
cbd563e80b Rename to IHasDuration 2020-05-27 12:38:39 +09:00
Dean Herbert
1f0b7465e2 Add back missing line 2020-04-21 16:06:40 +09:00
Dean Herbert
5e3fad86cf Fix relax replays playing back incorrectly 2020-04-21 15:28:25 +09:00
Dean Herbert
8a998d600d Fix relax mod pressing too many keys 2020-03-31 15:17:27 +09:00
Dean Herbert
61a7f04efb Add a sane key up delay to relax mod 2020-02-14 17:13:50 +09:00
Dean Herbert
4ce687d608 Move public methods up 2020-02-14 17:03:23 +09:00
Dean Herbert
cd2d1b0669 Fix 2B maps not playing correctly with relax mod enabled 2020-02-14 17:00:55 +09:00
Dean Herbert
9ea6912520 Improve overall readability of OsuModeRelax 2020-02-14 16:58:56 +09:00
smoogipoo
8302658186 Fix other potential nullref cases that rider missed 2019-09-02 18:31:33 +09:00
Salman Ahmed
a8e8650ddd Move blocking fail logic into a base class 2019-07-02 01:47:39 +03:00
iiSaLMaN
9c9334a8ba Hide health bar in relax mod 2019-06-29 04:26:24 +03:00
Arphox
07e17518e9 Fix all "Maintainability" CodeFactor issues 2019-06-11 10:28:16 +02:00
Dean Herbert
3b7a76aa4e Fix typo 2019-03-20 11:22:34 +09:00
Dean Herbert
baea7230bc Rename RulesetContainer to DrawableRuleset 2019-03-19 23:47:31 +09:00
Dean Herbert
8617aaa2a7 Update licence header (and remove year) 2019-01-24 17:43:03 +09:00
ekrctb
a3e6973b41 Replace usage of now removed TriggerKeyPress and similar methods. 2018-09-19 11:36:55 +09:00
Dean Herbert
68a79f895a Fix mania throwing an exception on start of map 2018-08-30 14:58:00 +09:00
Dean Herbert
442f6795bc Block user input 2018-08-17 19:33:14 +09:00
Dean Herbert
bc22a28fef Clean up logic and variables 2018-08-16 18:18:15 +09:00
Dean Herbert
870f6bea47 Only process alive objects 2018-08-16 18:18:08 +09:00
tgi74000
924bf9174c Fix overclick in certain situations 2018-08-05 09:58:15 +02:00
tgi74000
b1d1a2400b Remove IUpdatableByHitObject completely 2018-08-05 09:52:19 +02:00
tgi74000
07d6a75e23 Rename variables to be human readable 2018-08-04 00:18:09 +02:00