Bartłomiej Dach
e35201cb99
Don't snap non-head slider nodes to distance grid during placement either
...
1cd69220ef
only disabled snapping the
aforementioned nodes to distance grid for already-placed sliders.
`SliderPlacementBlueprint` has its own logic for placement, so the fix
needs to be mirrored there too.
2023-05-26 19:51:20 +02:00
Dean Herbert
f443cfb93e
Move blueprint validity conditions to allow more correct external usage of EndPlacement
...
Until now, these were haphazardly enforce inline in blueprint
implementations. The only thing stopping complete breakage is that
`EndPlacement` wasn't called (too much) from outside the blueprint,
leaving them responsible for their own placement.
By moving this conditional out of the provided paramters to
`EndPlacement`, it allows more flexible usage of that method externally.
Coming in a future PR.
2023-05-12 16:02:22 +09:00
OliBomby
c44f71a737
remove all regular usage of DifficultyControlPoint
2023-04-26 17:55:38 +02:00
OliBomby
10b5900710
made PathControlPointVisualiser generic
2022-12-07 10:13:40 +01:00
Dan Balasescu
7bc8908ca9
Partial everything
2022-11-27 00:00:27 +09:00
B3nn1
b0a3c9152a
Enable snapping for slider control points in the editor
2022-09-19 21:33:38 +02:00
Dean Herbert
f1d9b225a7
Remove probably pointless comment
2022-09-05 16:40:10 +09:00
Dean Herbert
8af8adf22d
Fix incorrect slider length in timeline when non-default velocity is inherited from previous object
2022-09-05 16:17:26 +09:00
Dean Herbert
06ae30a7d2
Fix slider velocity not using previous value if slider is not adjacent
2022-07-19 22:54:11 +09:00
Dan Balasescu
f8830c6850
Automated #nullable processing
2022-06-17 16:37:17 +09:00
Dean Herbert
977e6d8a80
Add xmldoc for IDistanceSnapProvider
and related properties
2022-05-05 16:25:45 +09:00
Salman Ahmed
59cf3ff50f
Move distancing methods from IPositionSnapProvider
to IDistanceSnapProvider
2022-04-28 05:48:45 +03:00
Susko3
19467e58c1
Remove unused params from BDL methods
2022-01-15 01:06:39 +01:00
Dean Herbert
2114a4729c
Set a sane default for new slider blueprints
2021-09-14 18:28:27 +09:00
Dean Herbert
d4e5a612ea
Update IPositionalSnapProvider
to take a HitObject
as reference, rather than raw time
...
This allows fetching the correct `DifficultyControlPoint` from the
hitobject. Nothing more.
2021-09-03 17:11:12 +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
ec1c336b0a
Fix a couple of inspections
2021-04-27 13:23:14 +09:00
Dean Herbert
d38e294d96
Centralise length validation function
2021-04-16 15:45:24 +09:00
Dean Herbert
965a1ead36
Disallow zero-length slider blueprint placements
2021-04-16 14:38:30 +09:00
Dean Herbert
5c0ef55691
Rename SliderPlacementState
to make way for more generic version
2021-04-16 14:09:35 +09:00
Naxess
067178e537
Maintain path type when dragging/placing
2021-03-22 15:59:06 +01:00
Dean Herbert
9811c46e35
Rename application method to better describe what it actually does
2020-11-26 19:16:18 +09:00
Dean Herbert
a9a1c00cf1
Move responsibility placement blueprint's StartTime set to within
2020-05-21 14:50:33 +09:00
Dean Herbert
82d6549161
Pass down snap result and remove local TimeAt usage
2020-05-20 21:01:29 +09:00
smoogipoo
8d5732aabd
Make placements happen on mouse down
2020-04-23 12:17:11 +09:00
smoogipoo
2c20328a70
Rework control point placement for better progression
2020-04-13 15:31:46 +09:00
smoogipoo
e17d5bdbaf
Improve red slider control point placement logic
2020-04-13 13:57:40 +09:00
Dean Herbert
0fe41fd50a
Fix blueprint showing even when mouse outside of container
2020-02-13 09:03:48 +09:00
Dean Herbert
e31d69c749
Add commit status to EndPlacement; call BeginPlacement on initial movement
2020-02-07 18:02:48 +09:00
smoogipoo
bfb056c612
Apply input method signature refactorings
2020-01-20 18:17:21 +09:00
Huo Yaoyuan
c457571da6
Use index and range expressions
2019-12-15 20:17:35 +08:00
Dean Herbert
f593caf0ea
Remove unused class
2019-12-10 18:08:51 +09:00
smoogipoo
2dbf94f3ab
Make placement blueprint add an initial segment
2019-12-09 18:10:40 +09:00
smoogipoo
53f7c753fb
General cleanups
2019-12-09 16:44:19 +09:00
smoogipoo
4905709ea4
Remove unused usings
2019-12-09 13:19:21 +09:00
smoogipoo
41437242a2
Add initial path type progression support
2019-12-06 19:39:25 +09:00
smoogipoo
b4e1b5fa98
Explose + use the full calculated length of the path
2019-12-06 15:53:19 +09:00
smoogipoo
a89a23fe08
Use linq to simplify some expressions
2019-12-06 13:08:35 +09:00
smoogipoo
247609388f
Clean up unused/unnecessary properties
2019-12-06 12:31:22 +09:00
smoogipoo
3ebbf62b2a
Initial game-wide update with the new SliderPath
2019-12-05 19:53:36 +09:00
Dean Herbert
bcf8a6d514
Fix slider creation regressing with path selection changes
2019-11-03 19:59:37 +09:00
smoogipoo
607b4d874a
Refactor flow of snapping through HitObjectComposer
2019-10-25 16:40:30 +09:00
smoogipoo
a6458fdeab
Re-use slider type
2019-10-24 19:04:24 +09:00
smoogipoo
b7af4acdbf
Allow not having a composer
2019-10-24 19:04:00 +09:00
smoogipoo
0af5706db6
Snap path during control point movement
2019-10-24 19:02:59 +09:00
smoogipoo
f45f17339c
Implement slider path distance snapping
2019-10-24 18:17:30 +09:00
smoogipoo
436941cda3
Add comment
2019-10-23 17:58:44 +09:00
smoogipoo
b903edca45
Don't snap slider control point placement
2019-10-23 16:03:16 +09:00
smoogipoo
79b2c7b480
Make BeginPlacement() set the hitobject start time
2019-10-16 20:04:15 +09:00
Dean Herbert
179cde917b
Merge branch 'master' into rework-selection-updates
2019-10-06 15:00:56 +08:00