1
0
mirror of https://github.com/ppy/osu.git synced 2025-02-07 16:22:56 +08:00
Commit Graph

57 Commits

Author SHA1 Message Date
Bartłomiej Dach
48196949e0
Add combo colour override control to editor
Closes https://github.com/ppy/osu/issues/25608.

Logic mostly matching stable. All operations are done on `ComboOffset`
which still makes overridden combo colours weirdly relatively dependent
on each other rather than them be an "absolute" choice, but alas...

As per stable, two consecutive new combos can use the same colour only
if they are separated by a break:

    52f3f75ed7/osu!/GameModes/Edit/Modes/EditorModeCompose.cs#L4564-L4571

This control is only available once the user has changed the combo
colours from defaults; additionally, only a single new combo object
must be selected for the colour selector to show up.
2025-01-10 13:40:56 +01:00
Bartłomiej Dach
5c8ae6f851
Simplify editor "ternary button" structure
As I look into re-implementing the ability to choose combo colour for an
object (also known as "colourhax") from the editor UI, I stumble upon
these wretched ternary items again and sigh a deep sigh of annoyance.

The structure is overly rigid. `TernaryItem` does nothing that
`DrawableTernaryItem` couldn't, except make it more annoying to add
specific sub-variants of `DrawableTernaryItem` that could do more
things.

Yes you could sprinkle more levels of virtuals to
`CreateDrawableButton()` or something, but after all, as Saint Exupéry
says, "perfection is finally attained not when there is no longer
anything to add, but when there is no longer anything to take away."
So I'm leaning for taking one step towards perfection.
2025-01-09 13:41:22 +01:00
Darius Wattimena
111f029ead Added a custom hitobject inspector for catch additionally show the x value of prev and next 2024-11-18 23:53:01 +01:00
Dean Herbert
c46d787f1e
Merge pull request #29949 from minetoblend/feature/scale-around-center
Support scaling around center when scaling with select box
2024-09-28 21:37:39 +09:00
OliBomby
d26e677bb7 fix warnings 2024-09-24 20:32:08 +02:00
OliBomby
e3b4483872 Refactor PlacementBlueprint to not be hitobject specific 2024-09-24 20:31:00 +02:00
Marvin Schürz
3180468db1 Prevent the distance snap grid from being activated by alt key while dragging select box handle 2024-09-21 14:22:17 +02:00
Dean Herbert
5350945340
Update HasFlag usages 2024-07-03 00:19:04 +09:00
Bartłomiej Dach
359ae31204
Fix catch distance snap grid not moving
Regressed in https://github.com/ppy/osu/pull/25154.
Specifically, in 013b5fa916
and 74b86349d5.

A simple case of too-much-code-deleted-itis.
2023-10-26 15:42:50 +02:00
Dean Herbert
74b86349d5
Tidy up CatchHitObjectComposer 2023-10-19 23:57:36 +09:00
Dean Herbert
013b5fa916
Move beat snap grid implementation details to ScrollingHitObjectComposer 2023-10-19 23:54:34 +09:00
Dean Herbert
52c2eb93de
Merge branch 'master' into taiko-beat-snap-grid 2023-10-19 23:53:01 +09:00
Bartłomiej Dach
0c4e74c82d
Inherit ScrollingHitObjectComposer in catch 2023-10-19 11:58:25 +02:00
Bartłomiej Dach
31849192c3
Remove DistancedHitObjectComposer inheritance from catch composer 2023-10-19 11:46:30 +02:00
Dean Herbert
4381169a3f
Combine selection and input handling logic for beat snap grids across all rulesets 2023-10-17 17:09:42 +09:00
Bartłomiej Dach
f2791d4f3e
Move comment a bit to fix formatting
Would otherwise trigger IDE0055, but that isn't resolveable without
an inspection cycle with resharper, so just move in a more sane place.
2023-09-20 12:22:05 +02:00
Dean Herbert
41a8239e49 Remvoe null default for mods which can't be null 2023-09-20 15:27:50 +09:00
Dean Herbert
37c2b330a2 Move toggle implementation to work on all scrolling rulesets automatically 2023-09-01 19:53:10 +09:00
Dean Herbert
c1f23ef211 Add beat snap grid for osu!catch editor
As discussed in https://github.com/ppy/osu/discussions/23462.
2023-06-06 17:52:29 +09:00
Dean Herbert
3c69956b55 Fix incorrect catch grid specification 2023-05-26 10:41:29 +09:00
Dean Herbert
804671ca74 Split out grid snapping modes into "relative" and "global" types 2023-05-25 21:41:19 +09:00
Dean Herbert
f9ebdadfe8 Move right-side editor toolbox to base HitObjectComposer
Move right-side editor toolbox to base `HitObjectComposer`
2023-04-04 19:00:56 +09:00
ekrctb
a75fc5108a Remove #nullable disable from Catch.Edit namespace 2023-01-15 17:29:32 +09:00
Dylan Nantz
6028abff39 Code Quality 2023-01-13 10:16:52 -05:00
Dylan Nantz
e38075c4ef Use PlacementState to check juice stream placement 2023-01-13 09:37:23 -05:00
Dylan Nantz
4ab7ef9af9 Show distance snap for first juice stream object. Fixes #18469 2022-12-05 15:12:50 -05:00
Dan Balasescu
7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
Dean Herbert
f8a4af5e0e Add osu!catch read-distance-spacing implementation 2022-10-26 13:45:06 +09:00
Dean Herbert
7d59bc6e2f Merge branch 'grid-momentary-shortcuts' into read-current-distance-snap 2022-10-26 13:28:04 +09:00
Dean Herbert
54ae16badc Move distance snap toggle button implementation to DistancedHitObjectComposer 2022-10-26 13:27:23 +09:00
Dean Herbert
2f0283e4d4 Simplify logic with new multi-grid snap support 2022-10-25 14:22:30 +09:00
Dean Herbert
645a84b1d6 Display current distance snap and add button to update to use it 2022-10-21 22:58:36 +09:00
Dean Herbert
1e09a21279 Remove unused using statement 2022-10-21 19:55:58 +09:00
Dean Herbert
16f5c2a7c6 Apply same fix to osu!catch composer 2022-10-21 17:15:36 +09:00
Dean Herbert
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
Dean Herbert
1778120f3e Add inline comment mentioning binding issues 2022-10-18 12:10:30 +09:00
ekrctb
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
ekrctb
e8cd9a5d11 Allow arbitrary height catch editor
Useful because can see more notes at once.
2022-10-06 17:26:03 +09:00
Dean Herbert
31a447fda0 Update parameter discards 2022-06-24 21:26:19 +09:00
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +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
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
ekrctb
e5050b90a5 Don't assume catcher dash speed is 2x the walk speed 2021-10-26 20:09:48 +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
6d1cd0a3a1 Add distance snapping to catch editor 2021-10-25 16:37:44 +09:00