Dean Herbert
d0b1ebff5a
Revert "Temporary rollback of framework / SDL3"
...
This reverts commit d7d569cf4e
.
2024-05-22 16:29:39 +08:00
Dean Herbert
d7d569cf4e
Temporary rollback of framework / SDL3
2024-05-21 14:36:16 +08:00
Dan Balasescu
3b8b56cbcb
Apply required changes after framework masking updates
2024-05-09 20:18:53 +09:00
Bartłomiej Dach
e5e345712e
Fix resume overlay not appearing after pausing inside window but outside of actual playfield area
...
Related to https://github.com/ppy/osu/discussions/27871 (although does
not actually fix the issue with the pause button, _if_ it is to be
considered an issue - the problem there is that the gameplay cursor
gets hidden, so the other condition in the modified check takes over).
Regressed in
bce3bd55e5
.
Reasoning for breakage is silent change in `this` when moving the
`Contains()` check (`DrawableRuleset` will encompass screen bounds,
while `OsuResumeOverlay` is only as big as the actual playfield).
2024-04-16 13:45:09 +02:00
Bartłomiej Dach
f9873968a5
Apply NRT in OsuResumeOverlay
2024-04-16 13:39:06 +02:00
Dan Balasescu
0beaa8e8c5
Merge branch 'master' into tcm-resume
2024-03-14 12:22:46 +09:00
Dan Balasescu
e0f1f70b82
Adjust NRT to prevent future issues
...
This way, it will yet at us if the setter is ever moved out of the ctor.
2024-03-11 15:52:40 +09:00
Dean Herbert
091425db30
Fix nullability hint
2024-03-11 14:43:58 +08:00
Dean Herbert
f3d154a995
Add inline comment explaining optimisation
2024-03-11 11:28:15 +08:00
Dean Herbert
2be6d1f1c6
Apply NRT to OsuPlayfield
2024-03-11 11:26:03 +08:00
Andrei Zavatski
6ff4b1d7e3
Don't update SubTreeMasking in OsuPlayfield
2024-03-10 15:42:03 +03:00
Dan Balasescu
bce3bd55e5
Fix catch by moving cursor-specific handling local
2024-03-04 16:08:17 +09:00
Sheepposu
7687ab63ed
fix code formatting
2024-02-27 22:03:45 -05:00
Sheepposu
29e5f409ba
remove skinnable
...
better to add skinnable elements later
2024-02-27 21:51:54 -05:00
Sheepposu
822ecb7106
remove unnecessary changes
2024-02-23 23:52:17 -05:00
Sheepposu
8cdd9c9ddc
skinning changes
...
improve default design
2024-02-23 23:46:50 -05:00
Sheepposu
c95e85368f
remove old files
2024-02-23 23:45:58 -05:00
Sheepposu
4d669c56a2
implement pooling
...
Uses pooling for all analysis objects and creates the lifetime entries from replay data when the analysis container is constructed.
2024-02-23 23:32:35 -05:00
Sheepposu
2a1fa8ccac
fix OsuAnalysisSettings text not updating
2024-02-22 22:34:38 -05:00
Sheepposu
45444b39d4
fix formatting issues
2024-02-22 19:01:52 -05:00
Sheepposu
35b89966bc
revert mod visibility toggle
2024-02-21 23:23:40 -05:00
Salman Ahmed
ce903987e7
Fix cursor ripples being added on release positions in replays
2024-02-17 00:53:53 +03:00
Sheepposu
288eed53df
new features + improvements
...
Hit & aim markers are skinnable. Hidden can be toggled off. Aim line with skinnable color was added. The fadeout time is based on the approach rate. Cursor hide fixed.
2024-02-10 02:02:26 -05:00
Sheepposu
b5dbf24d27
early replay analysis settings version
...
committing early version for others in the discussion to do their own testing with it
2024-02-01 10:19:09 -05:00
Dean Herbert
c45daa373e
Fix cursor scale animation not matching stable on classic skins
2024-01-16 17:15:25 +09:00
Bartłomiej Dach
71d0543213
Merge pull request #26545 from frenzibyte/fix-resume-cursor-transition-abused
...
Fix pop-in scale transition in resume overlay affecting input area
2024-01-15 20:06:16 +01:00
Dean Herbert
23815b2045
Merge pull request #26547 from bdach/cursor-ripple-pool-wrong
...
Fix cursor ripple pool not loading pooled drawables ahead of time
2024-01-15 22:56:50 +09:00
Bartłomiej Dach
399fc8195a
Fix cursor ripple pool not loading pooled drawables ahead of time
...
Increment the counter over at
https://github.com/ppy/osu-framework/pull/6136 .
2024-01-15 13:22:22 +01:00
Dean Herbert
6b844ed8b6
Split out judgement pooling concepts from OsuPlayfield
for reuse
2024-01-15 20:50:09 +09:00
Salman Ahmed
13517869f6
Apply scale transitions in resume overlay cursor to local container
2024-01-15 14:03:23 +03:00
rushiiMachine
c087578e01
Force minimum cursor size for OsuResumeOverlay
...
On cursor sizes below 0.3x it becomes exceedingly difficult to quickly locate and then accurately click the resume cursor on the pause overlay as it could as big as a handful of pixels. This clamps the minimum cursor size to 1x for the resume overlay, which is way more comfortable and more closely resembles stable.
2023-12-26 10:07:21 -08:00
Dean Herbert
fcf47267fd
Revert change to OsuHitWindows
and move logic local to pooling initialisation
2023-12-21 00:48:46 +09:00
Dean Herbert
9b383e3276
Add support for showing tick misses
2023-12-20 20:23:19 +09:00
Dan Balasescu
b56a78c6ec
Adjust with framework changes
2023-12-04 08:51:21 +09:00
Dean Herbert
c00a1d948a
Merge branch 'master' into better-touch-settings
2023-11-07 23:21:59 +09:00
Dean Herbert
7bedf7cf16
Move static method to end of file
2023-11-07 21:08:49 +09:00
Dean Herbert
38c9a98e67
Add failing test coverage
2023-11-07 19:54:21 +09:00
Susko3
05d9418718
Rename setting to TouchDisableGameplayTaps
for better visibility when searching
2023-11-07 00:13:46 +01:00
Susko3
ea357bafdd
Fix tests by using the correct setting for touch input
2023-11-06 20:53:22 +01:00
Salman Ahmed
75fbbb35ad
Move cursor scale application within OsuCursor
...
Doing so takes down two birds with one stone.
1. `ResumeOverlay` having to manually apply cursor scale to its "resume
cursor".
2. Resume cursor input handling scaling up with the gameplay setting. Now, only the sprite itself gets scaled.
2023-11-06 18:30:55 +03:00
Salman Ahmed
915feeffb0
Revert gameplay cursor scale changes
2023-11-06 17:37:32 +03:00
Salman Ahmed
9cb331641c
Rename container
2023-11-05 06:34:09 +03:00
Salman Ahmed
48a75f6152
Fix resume cursor following gameplay cursor scale setting
2023-11-05 06:28:10 +03:00
Dean Herbert
5341a335a6
Bypass Parent
nullability checks for now
2023-10-17 17:48:45 +09:00
Dean Herbert
990c54519b
Merge branch 'master' into limit-gameplay-sprite-dimensions
2023-09-26 16:40:32 +09:00
Dean Herbert
8e16b1d507
Simplify some maximum size specs
2023-09-20 12:48:15 +09:00
Dan Balasescu
753c1c877c
Revert masking SSBO changes
2023-09-13 23:10:13 +09:00
Dean Herbert
c75b14c729
Apply NRT to new LegacyHitPolicy
class (and other implementations)
2023-09-01 16:56:34 +09:00
Bartłomiej Dach
7f215f163f
Use reduced hittable range with autopilot active
2023-08-24 08:52:49 +02:00
Bartłomiej Dach
ed2b1a0754
Contain entirety of legacy notelock badness inside the hit policy
2023-08-24 08:52:49 +02:00
Bartłomiej Dach
a045cb71fc
Add assertions checking action type taken by legacy hit policy
2023-08-24 08:52:49 +02:00
Bartłomiej Dach
b777b34cc0
Merge branch 'master' into stable-notelock
2023-08-24 08:43:59 +02:00
Dan Balasescu
e8337c592a
Update framework and apply changes to support masking SSBO
2023-08-22 12:50:13 +09:00
Liam DeVoe
6a81230298
rename ObjectOrderedHitPolicy to LegacyHitPolicy
2023-07-19 14:44:28 -04:00
Liam DeVoe
2c97ac7410
convert AliveObjects to list in hit policy instead of globally
2023-07-19 14:28:04 -04:00
Liam DeVoe
768d7b5e1c
correct implementation of stable notelock
2023-07-17 23:31:21 -04:00
Dean Herbert
0ab0c52ad5
Automated pass
2023-06-24 01:00:03 +09:00
Bartłomiej Dach
808a44ac0c
Resolve code quality inspection
2023-05-06 16:23:00 +02:00
Dean Herbert
0a70734331
Adjust ripple size with cursor scale (including CS)
2023-05-01 14:43:49 +09:00
Dean Herbert
5cbfefbcb4
Adjust metrics of default ripple to match stable default better
2023-05-01 13:29:50 +09:00
Dean Herbert
b8ae508639
Fix incorrect starting scale for ripples
2023-05-01 13:09:00 +09:00
Dean Herbert
72b472a756
Change default scaling and add note about legacy cursor-ripple
scale
2023-04-30 14:48:03 +09:00
Dean Herbert
6a62949fcd
Fix positioning and rewinding support for ripples
2023-04-30 14:48:03 +09:00
Dean Herbert
c994adfc22
Add pooling support for ripples
2023-04-30 14:48:03 +09:00
Dean Herbert
a4ae9e409b
Implement ripples (legacy and default)
2023-04-30 14:48:03 +09:00
Dean Herbert
b39a9d816e
Add basic structural requirements for cursor ripples
2023-04-30 14:48:03 +09:00
Dean Herbert
c056d5a6fb
Reduce distance requirement for lock-in behaviour
2023-03-20 15:36:58 +09:00
Dean Herbert
13a32b5246
Move lock-in variable to const
and document better
2023-03-20 15:36:27 +09:00
Dean Herbert
42359a9754
Fix previous touch action not being released when it's not a direct touch
2023-03-15 16:43:20 +09:00
Dean Herbert
6c4f596a9a
Make osu! touch input aware of the distance travelled of a non-direct touch
2023-03-15 16:43:20 +09:00
Dean Herbert
969c0e9c9d
Merge branch 'master' into veldrid-renderer
2023-03-14 17:35:38 +09:00
Dan Balasescu
dd9748a25c
Adjust DrawNodes to use UBOs
2023-02-25 01:42:55 +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
Dan Balasescu
9ed0b8ccfa
Merge pull request #22375 from peppy/osu-ruleset-touch-support
...
Add empty space tap-streaming support for osu! ruleset on touchscreen devices
2023-01-26 08:12:12 +09:00
Dean Herbert
5bfd4e47a1
Refactor position tracking touch handling (and comments) to read better
2023-01-25 14:59:54 +09:00
Dean Herbert
72cfe2ba5a
Move private
field up with others
2023-01-24 12:30:11 +09:00
Dean Herbert
949610c8a4
Add commentary as to why ReceivePositionalInputAt
override is required
2023-01-24 11:06:54 +09:00
Susko3
a992682276
Fix OsuTouchInputMapper
not handling all touches when using screen scaling
2023-01-23 21:46:01 +01:00
Dean Herbert
c4d5957ac3
Add empty space tap-streaming support for osu! ruleset on touchscreen devices
2023-01-23 17:07:27 +09:00
Dean Herbert
24a626a9cd
Fix incorrect touch handling in autopilot and relax mods
2023-01-17 15:07:05 +09:00
Dean Herbert
3b95691d53
Add note about mouse button disable tracking
2023-01-17 14:54:52 +09:00
Dean Herbert
45b34f5306
Remove pointless xmldoc
2023-01-17 14:53:24 +09:00
Dean Herbert
34120b6131
Use linq Single
instead of First
for guaranteed singular match
2023-01-17 14:52:45 +09:00
Dean Herbert
9b5d6b391b
Remove nullability allowance from BackgroundDependencyLoader
2023-01-17 14:52:15 +09:00
Dean Herbert
c6d33df147
Only track TouchSource
for now
2023-01-17 14:51:46 +09:00
Dean Herbert
b3860c6d52
Only use positional input from most recent touch
2023-01-16 21:21:00 +09:00
Dean Herbert
606e374d94
Don't handle touch down events if "mouse" buttons are disabled
...
Maintains compatibility with existing logic.
2023-01-16 21:21:00 +09:00
Dean Herbert
355bec2058
Handle movement locally as we are blocking events from touch->mouse mapping
2023-01-16 21:21:00 +09:00
Dean Herbert
b265888f18
Add bare minimum touch support to osu! ruleset
2023-01-16 21:21:00 +09:00
ansel
9ce7c51b14
Localise osu! settings
2023-01-15 23:29:58 +03:00
Berkan Diler
c7ca4bbba5
Use generic Enum methods
2022-12-26 20:36:39 +01:00
Dan Balasescu
7bc8908ca9
Partial everything
2022-11-27 00:00:27 +09:00
Dean Herbert
1aa0e40f2f
Add "Component" prefix to lookup naming
2022-11-09 17:46:43 +09:00
Dean Herbert
c908969d9b
Rename ISkinComponent
to ISkinLookup
2022-11-09 17:46:43 +09:00
Salman Ahmed
b1b97505ac
Fix smoke displayed in "No scope" mod
2022-10-14 22:16:14 +03:00
Alden Wu
9d54467145
Make smoke skinnable lifetime more robust
2022-10-05 19:13:06 -07:00
Alden Wu
49e023f861
Rename OsuSkinComponents.SmokeTrail
to CursorSmoke
2022-10-05 19:11:38 -07:00
Dean Herbert
71edd314b1
Simplify SmokeContainer
lifetime logic
2022-10-05 18:51:02 +09:00
Dean Herbert
6628ab5190
Refactor to avoid DI / event flow
...
There's always one active smoke segment and it's the direct child of
`SmokeContainer`. This can be simplified as such.
2022-10-05 18:37:14 +09:00