Dan Balasescu
f8830c6850
Automated #nullable processing
2022-06-17 16:37:17 +09:00
Dan Balasescu
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
Dean Herbert
c0abce918f
Add enum
to snap method as alternative to mutliple nested invocations
2022-05-12 16:19:07 +09:00
Dean Herbert
c7e9bd7751
Merge branch 'master' into catch-editor-per-object-sv
2022-05-09 19:18:01 +09:00
Dan Balasescu
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
ekrctb
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
ekrctb
483a611c41
Fix BeginPlacement
location.
2022-05-08 23:10:51 +09:00
ekrctb
7daa3d8eb7
Remove now-redundant velocity calculation
...
Velocity is computed from the up-to-date SV now.
2022-05-08 22:36:33 +09:00
ekrctb
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
ekrctb
0e98bb28bd
Fix wrong resampling times are used for juice stream path
2022-05-08 22:36:33 +09:00
ekrctb
9ffa90602b
Automatically set slider velocity from juice stream path
2022-05-08 22:36:33 +09:00
ekrctb
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
ekrctb
125628dd20
Fix hit object not shown in timline while placement is waiting
2022-05-08 15:52:14 +09:00
Dean Herbert
f6fc926f1a
Add xmldoc and rename methods in IPositionSnapProvider
for legibility
2022-05-05 15:58:21 +09:00
Salman Ahmed
b6d2ca7709
Clarify TODO comment
2022-04-28 10:57:14 +03:00
Salman Ahmed
bfc6bfc91b
Let CatchHitObjectComposer
inherit from DistancedHitObjectComposer
and hide control
2022-04-28 06:44:50 +03:00
Salman Ahmed
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
Salman Ahmed
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
Dean Herbert
5c0494f3ba
Remove unnecessary precondition check and disallow vertical catch flips for now
2022-01-06 14:39:29 +09:00
Dean Herbert
6779503e57
Refactor logic to avoid TimelineSelectionHandler
having to block base calls
2022-01-05 16:56:54 +09:00
Dean Herbert
866ae3472b
Add global flip hotkeys
2022-01-05 16:48:07 +09:00
Darius Wattimena
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
Darius Wattimena
bd5caceeb1
Fixed typo in banana shower gap check message
2021-11-10 00:23:14 +01:00
Darius Wattimena
5d8f35f3c9
Code cleanup and added tests for the spinner check
2021-11-10 00:16:29 +01:00
Darius Wattimena
fbfed16756
Started on implementing a spinner gap check for catch
2021-11-09 23:05:25 +01:00
ekrctb
393d118eef
Fix compilation failure overlooked in merge
2021-10-26 20:20:43 +09:00
ekrctb
e5050b90a5
Don't assume catcher dash speed is 2x the walk speed
2021-10-26 20:09:48 +09:00
ekrctb
de7a908be2
Cut distance snap lines at playfield border in catch editor
2021-10-26 14:51:52 +09:00
ekrctb
c5d765029c
Don't compute source object for distance snap grid when it is not enabled
2021-10-26 11:17:04 +09:00
ekrctb
b7a719de71
Rename method
2021-10-26 11:14:12 +09:00
ekrctb
068217557e
Add doc comment on catch distance snap grid
2021-10-26 11:12:10 +09:00
ekrctb
9f49a1df8b
Handle the case of cursor below the start time of distance snap
2021-10-26 11:00:55 +09:00
ekrctb
865be5a10b
Fix distance snap grid rendering inverted when out of bounds
2021-10-26 11:00:44 +09:00
ekrctb
2c92f1a0b7
Use array for fixed-size list
2021-10-26 10:41:17 +09:00
ekrctb
6d1cd0a3a1
Add distance snapping to catch editor
2021-10-25 16:37:44 +09:00
ekrctb
60df0151c0
Add very basic distance snap grid for catch editor
2021-10-25 15:25:59 +09:00
Dean Herbert
b339c149d8
Copy BaseDifficulty
to Beatmap<T>
and move all write operations across
2021-10-06 15:10:45 +09:00
Dean Herbert
a92d499d7a
Convert usages of BeatmapDifficulty
to IBeatmapDifficultyInfo
2021-10-01 16:55:50 +09:00
Dean Herbert
6dcd9427ac
Remove bindable usage in PathControlPoint
...
This is quite a breaking change, but I think it is beneficial due to the large amount of usage of this class.
I originally intended just to remove the allocations of the two delegates handling the `Changed` flow internally, but as nothing was really using the bindables for anything more than a general "point has changed" case, this felt like a better direction.
2021-08-26 12:33:53 +09:00
Dean Herbert
a7d6c682de
Merge pull request #13983 from ekrctb/juice-stream-placement
...
Add initial implementation of juice stream placement
2021-07-23 13:52:25 +09:00
ekrctb
bd3386e770
Fix previously placed vertices in juice stream placement
...
A different UX than not fixing vertices.
2021-07-23 10:18:37 +09:00
ekrctb
4509c8bcfb
Use the more consistent lastVertex
, with a comment
2021-07-23 10:13:55 +09:00
ekrctb
d49d303bae
Call GetContainingInputManager
at LoadComplete
2021-07-23 10:10:55 +09:00
ekrctb
9fff304554
Implement reversing of selected pattern in catch editor
2021-07-22 17:00:08 +09:00
ekrctb
dc90e4d24c
EditorBeatmap.SelectedHitObjects
-> SelectedItems
(same thing)
2021-07-22 16:52:47 +09:00
ekrctb
64102d2972
Add initial implementation of juice stream placement
2021-07-22 15:47:23 +09:00
ekrctb
2beef89c23
Add empty juice stream placement blueprint (no implementation)
2021-07-22 15:47:23 +09:00
Dean Herbert
e8aaf4df16
Merge pull request #13961 from ekrctb/catch-editor-flip
...
Implement horizontal flipping of hit objects in catch editor
2021-07-22 15:27:59 +09:00
Dean Herbert
1d2fdd9841
Merge pull request #13937 from ekrctb/selection-editable-path
...
Add initial implementation of juice stream path editing
2021-07-22 14:48:02 +09:00
Dean Herbert
2151c1863e
Rename variables for catch-specific casting to avoid any confusion
2021-07-22 14:07:32 +09:00