Commit Graph

120 Commits

Author SHA1 Message Date
d664a66a37 Remove redundant canBeNull: true 2023-01-15 23:11:59 +09:00
a75fc5108a Remove #nullable disable from Catch.Edit namespace 2023-01-15 17:29:32 +09:00
6028abff39 Code Quality 2023-01-13 10:16:52 -05:00
5dd0aaccef Merge branch 'master' of https://github.com/ppy/osu into 18469 2023-01-13 09:54:29 -05:00
e38075c4ef Use PlacementState to check juice stream placement 2023-01-13 09:37:23 -05:00
4a7d7c6ed9 Use MaxBy in all locations that can and update inspection level to match dotnet-build 2022-12-19 16:47:10 +09:00
4ab7ef9af9 Show distance snap for first juice stream object. Fixes #18469 2022-12-05 15:12:50 -05:00
7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
4d4d7cf863 Remove nullable disable annotation in the cache ruleset. 2022-11-05 16:49:55 +08:00
f8a4af5e0e Add osu!catch read-distance-spacing implementation 2022-10-26 13:45:06 +09:00
7d59bc6e2f Merge branch 'grid-momentary-shortcuts' into read-current-distance-snap 2022-10-26 13:28:04 +09:00
54ae16badc Move distance snap toggle button implementation to DistancedHitObjectComposer 2022-10-26 13:27:23 +09:00
2f0283e4d4 Simplify logic with new multi-grid snap support 2022-10-25 14:22:30 +09:00
645a84b1d6 Display current distance snap and add button to update to use it 2022-10-21 22:58:36 +09:00
1e09a21279 Remove unused using statement 2022-10-21 19:55:58 +09:00
16f5c2a7c6 Apply same fix to osu!catch composer 2022-10-21 17:15:36 +09:00
830b92d3ae Add momentary shortcuts to toggle grid/distance snap
Matching osu!stable. I use these quite a lot while mapping and I'm sure
others do as well.

Hold `Shift` = invert grid snap
Hold `Alt` = invert distance snap
2022-10-19 20:06:41 +09:00
ccbac08985 Merge pull request #20593 from ekrctb/catch-editor-height
Allow arbitrary height catch editor
2022-10-18 12:10:49 +09:00
1778120f3e Add inline comment mentioning binding issues 2022-10-18 12:10:30 +09:00
f41b79688f Avoid casting by accepting all Playfields but throwing on a bad choice 2022-10-11 16:54:41 +09:00
6ab29a62d0 Anchor drag box on time (catch, mania)
Not done for taiko because I cannot figure out how it should work with the overlapping scroll algorithm.
2022-10-11 14:23:17 +09:00
9247ff3e0a Allow changing scrolling speed in catch editor
Scroll speed is not saved and doesn't affect gameplay.
It is purely a feature for a better visualization.
It is currently bind to scroll speed increase/decrease.
Default F3/F4 crashes with editor shortcuts so it has to be changed.
2022-10-06 18:06:16 +09:00
e8cd9a5d11 Allow arbitrary height catch editor
Useful because can see more notes at once.
2022-10-06 17:26:03 +09:00
105aa01e7d Update usages of RemoveInternal 2022-08-29 15:57:40 +09:00
31a447fda0 Update parameter discards 2022-06-24 21:26:19 +09:00
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
64a371638e Merge pull request #18236 from peppy/snap-unification
Add `enum` to snap method as alternative to multiple nested invocations
2022-05-20 11:35:05 +09:00
c0abce918f Add enum to snap method as alternative to mutliple nested invocations 2022-05-12 16:19:07 +09:00
c7e9bd7751 Merge branch 'master' into catch-editor-per-object-sv 2022-05-09 19:18:01 +09:00
45c6f5edef Merge pull request #18158 from ekrctb/fix-banana-shower-placement-negative-duration
Fix duration is negative while placing banana shower in catch editor
2022-05-09 11:26:06 +09:00
158f134260 Fix duration is negative while placing banana shower in catch editor.
Timeline blueprint is glitched when the hit object has negative duration.
Negative duration is unwanted anyways so placement implementation is fixed instead of supporting it in timline blueprint.
2022-05-09 00:01:05 +09:00
483a611c41 Fix BeginPlacement location. 2022-05-08 23:10:51 +09:00
7daa3d8eb7 Remove now-redundant velocity calculation
Velocity is computed from the up-to-date SV now.
2022-05-08 22:36:33 +09:00
37c9aac49f Make ScrollingPath use time instead of distance.
This is consistent as other components now use time instead of distance.
2022-05-08 22:36:33 +09:00
0e98bb28bd Fix wrong resampling times are used for juice stream path 2022-05-08 22:36:33 +09:00
9ffa90602b Automatically set slider velocity from juice stream path 2022-05-08 22:36:33 +09:00
4e0155fa4b Make JuiceStreamPath time based instead of distance based.
And remove the "slope limit" feature.
TODO: for a juice stream with a large slope, the slider velocity of the hit object should be changed.
2022-05-08 22:36:33 +09:00
125628dd20 Fix hit object not shown in timline while placement is waiting 2022-05-08 15:52:14 +09:00
f6fc926f1a Add xmldoc and rename methods in IPositionSnapProvider for legibility 2022-05-05 15:58:21 +09:00
b6d2ca7709 Clarify TODO comment 2022-04-28 10:57:14 +03:00
bfc6bfc91b Let CatchHitObjectComposer inherit from DistancedHitObjectComposer and hide control 2022-04-28 06:44:50 +03:00
8ed39009fd Encapsulate distance spacing control handling to a "distance toolbox composite"
Encapsulated in a way which can allow further extensibility for the
right-side area of toolboxes.
2022-04-24 08:33:03 +03:00
19ee05c232 Add "distance spacing" multiplier for osu! ruleset
While osu!catch also implements a distance snap grid, it doesn't rely on
`GetBeatSnapDistanceAt` (unlike osu!), therefore it can't have the
"distance spacing" multiplier yet.
2022-02-15 02:21:53 +03:00
5c0494f3ba Remove unnecessary precondition check and disallow vertical catch flips for now 2022-01-06 14:39:29 +09:00
6779503e57 Refactor logic to avoid TimelineSelectionHandler having to block base calls 2022-01-05 16:56:54 +09:00
866ae3472b Add global flip hotkeys 2022-01-05 16:48:07 +09:00
d370f64ac3 Changed finding the spinner gaps via a dictionary instead of getting the thresholds via an array 2021-11-10 19:58:36 +01:00
bd5caceeb1 Fixed typo in banana shower gap check message 2021-11-10 00:23:14 +01:00
5d8f35f3c9 Code cleanup and added tests for the spinner check 2021-11-10 00:16:29 +01:00
fbfed16756 Started on implementing a spinner gap check for catch 2021-11-09 23:05:25 +01:00