1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-16 00:37:26 +08:00
Commit Graph

41 Commits

Author SHA1 Message Date
Bartłomiej Dach
f3617eadad
Fix editing juice stream path sometimes changing its duration
I'm not *super* sure why this works, but it appears to, and my educated
guess as to why is that it counteracts the effects of a change in the SV
of the juice stream by artificially increasing or decreasing the
velocity when running the appropriate path conversions and expected
distance calculations. The actual SV change takes effect on the next
default application, which is triggered by the `Update()` call at the
end of the method.
2024-07-22 15:14:45 +02:00
Bartłomiej Dach
56af009e77
Fix EditablePath.UpdateHitObjectFromPath() not automatically updating object
This is important because the editable path conversions heavily depend
on the value of `JuiceStream.Velocity` being correct. The value is only
guaranteed to be correct after an `ApplyDefaults()` call, which is
triggered by updating the object via `EditorBeatmap`.
2024-07-22 14:50:25 +02:00
Bartłomiej Dach
6b3c1f4e47
Unify juice stream piece UX with osu! control point pieces
- Use same hover state
- Use shift-right click for quick delete rather than shift-left click
2024-07-22 13:30:15 +02:00
Bartłomiej Dach
47964f33d7
Fix catch juice stream vertex remove operation not undoing 2024-07-22 13:21:49 +02:00
Bartłomiej Dach
64381d4087
Fix catch juice stream vertex add operation not undoing 2024-07-22 12:18:53 +02:00
Thomas Müller-Höhne
926636cc03 Generalize Bezier curves to BSplines of Nth degree 2023-11-11 13:32:53 +01:00
Dean Herbert
1a37543d28 Rename SliderVelocity to SliderVelocityMultiplier to distinguish from Velocity 2023-09-06 19:01:08 +09:00
OliBomby
d2d81bb82c remove redundant zero check in sv calculation 2023-05-02 12:29:11 +02:00
OliBomby
79f3cfec91 fix 0 velocity juicestream 2023-04-30 16:43:26 +02:00
OliBomby
c44f71a737 remove all regular usage of DifficultyControlPoint 2023-04-26 17:55:38 +02:00
ekrctb
d664a66a37 Remove redundant canBeNull: true 2023-01-15 23:11:59 +09:00
ekrctb
a75fc5108a Remove #nullable disable from Catch.Edit namespace 2023-01-15 17:29:32 +09:00
Dan Balasescu
7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
Dean Herbert
105aa01e7d Update usages of RemoveInternal 2022-08-29 15:57:40 +09:00
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +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
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
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
64102d2972 Add initial implementation of juice stream placement 2021-07-22 15:47:23 +09:00
ekrctb
d93bf5be80 Don't handle mouse down at fixed vertices 2021-07-22 12:58:39 +09:00
ekrctb
cc0110aa52 Add doc comment to VertexState 2021-07-21 13:17:18 +09:00
ekrctb
97fba5df58 Use existing method for the same code 2021-07-21 12:59:42 +09:00
ekrctb
ca3dfb2498 Fix comment 2021-07-21 12:53:48 +09:00
ekrctb
8586458704 Implement vertex deletion in juice stream selection blueprint 2021-07-19 22:53:32 +09:00
ekrctb
08f8d4e65e Implement vertex addition in juice stream selection blueprint 2021-07-19 22:53:32 +09:00
ekrctb
8cc1630655 Add initial juice stream editing 2021-07-19 22:53:32 +09:00
ekrctb
c347584851 Use added utility function 2021-07-19 13:33:46 +09:00
ekrctb
7b21d1ecf9 Fix juice stream outline disappears away when start position is outside the screen. 2021-07-06 19:50:32 +09:00
ekrctb
2ba3003934 Add nested fruit outlines to juice stream selection blueprint 2021-07-06 17:15:51 +09:00
ekrctb
7833a1b09a Allow FruitOutline to be used for nested hit objects 2021-07-06 17:15:27 +09:00
ekrctb
7ef7c5148f Add ScrollingPath for visualization of the real path of a JuiceStream 2021-07-06 16:41:53 +09:00
ekrctb
125e143401 Fix banana shower placement outline initial opacity 2021-06-23 10:27:40 +09:00
ekrctb
5a5cb39c9f Add some comments about logic 2021-06-23 10:27:40 +09:00
ekrctb
e96814bb86 Remove comment about using skin for blueprint
As the current game-wise direction is not using skin elements in blueprints.
The design of the blueprint could be improved somehow, though.
2021-06-23 09:37:30 +09:00
ekrctb
e8907b53a8 Add basic banana shower placement tool 2021-06-22 17:20:13 +09:00
ekrctb
0078d7dc18 Add outline to selected fruit 2021-06-22 17:20:13 +09:00