Dean Herbert
2ba1ebe410
Fix beatmap card progress bar becoming pancake when starting
2024-07-10 19:19:49 +09:00
Dean Herbert
d3c66e2404
Add basic flow for mounting beatmaps for external editing
2024-07-10 18:29:51 +09:00
Bartłomiej Dach
5d5dd0de00
Redesign bottom timeline pieces to match stable better
2024-07-09 09:25:22 +02:00
Bartłomiej Dach
0d22c9a9c6
Pass comparer in all usages for consistency
2024-07-08 15:58:21 +02:00
Salman Ahmed
b33e54d064
Enforce IBeatmap.Breaks
to be sorted chronologically
2024-07-08 16:06:38 +03:00
Dan Balasescu
537e3a1642
Merge pull request #28619 from bdach/fix-tail-volume-not-saving
...
Fix slider tail volume not saving
2024-07-03 16:13:18 +09:00
Dean Herbert
5350945340
Update HasFlag
usages
2024-07-03 00:19:04 +09:00
Bartłomiej Dach
d4a8f6c8b0
Do not add extra sample control point after end of IHasRepeats
objects
2024-07-02 09:13:07 +02:00
Dan Balasescu
04da1209f7
Revert "Change breaks list to IReadOnlyList
"
...
This reverts commit 2c3b411bb5e77696a29abf5fdeb873b1d72c47a7.
2024-07-02 12:16:11 +09:00
Dan Balasescu
db84711214
Revert "Move break cloning back to non-virtual method"
...
This reverts commit f69bc40a4b465a6f6902d2038fcf824fb7b638bb.
2024-07-02 12:16:10 +09:00
Dean Herbert
f69bc40a4b
Move break cloning back to non-virtual method
2024-07-02 12:07:13 +09:00
Dean Herbert
2c3b411bb5
Change breaks list to IReadOnlyList
2024-07-02 11:59:24 +09:00
Dean Herbert
f694ae416e
Fix typo in xmldoc
2024-07-02 11:47:40 +09:00
Dean Herbert
005af280f2
Isolate bindable breaks list to EditorBeatmap
2024-07-02 11:31:55 +09:00
Dan Balasescu
f942595829
Fix ManiaModInvert
permanently messing up the beatmap
2024-07-01 15:02:00 +09:00
Bartłomiej Dach
847946937e
Fix test failures
2024-06-26 16:56:43 +02:00
Bartłomiej Dach
fff27e619d
Fix slider tail volume not saving
...
Closes https://github.com/ppy/osu/issues/28587 .
As outlined in the issue thread, the tail volume wasn't saving because
it wasn't actually attached to a hitobject properly, and as such the
`LegacyBeatmapEncoder` logic, which is based on hitobjects, did not
pick them up on save.
To fix that, switch to using `NodeSamples` for objects that are
`IHasRepeats`. That has one added complication in that having it work
properly requires changes to the decode side too. That is because the
intent is to allow the user to change the sample settings for each node
(which are specified via `NodeSamples`), as well as "the rest of the
object", which generally means ticks or auxiliary samples like
`sliderslide` (which are specified by `Samples`).
However, up until now, `Samples` always queried the control point
which was _active at the end time of the slider_. This obviously can't
work anymore when converting `NodeSamples` to legacy control points,
because the last node's sample is _also_ at the end time of the slider.
To bypass that, add extra sample points after each node (just out of
reach of the 5ms leniency), which are supposed to control volume of
ticks and/or slides.
Upon testing, this *sort of* has the intended effect in stable, with
the exception of `sliderslide`, which seems to either respect or _not_
respect the relevant volume spec dependent on... not sure what, and not
sure I want to be debugging that. It might be frame alignment, or it
might be the phase of the moon.
2024-06-26 15:52:16 +02:00
Dean Herbert
0eb533f2fd
Merge pull request #28444 from bdach/scrolling-ruleset-editor-reloads
...
Reload scrolling hitobject composer on control point changes
2024-06-20 15:15:26 +09:00
Bartłomiej Dach
617c1341d7
Make (Manual)BreakPeriod
a class again
...
CodeFileSanity doesn't like records and it being a record wasn't doing
much anymore anyway.
2024-06-19 14:53:09 +02:00
Bartłomiej Dach
4022a8b06c
Implement automatic break period generation
2024-06-19 10:22:06 +02:00
Bartłomiej Dach
1f692f5fc7
Make BreakPeriod
a struct
2024-06-19 09:01:33 +02:00
Bartłomiej Dach
6a6ccbc09f
Make list of breaks bindable
2024-06-19 07:44:03 +02:00
Dan Balasescu
f86e9c9a4a
Also annotate ControlPointInfo
...
Same deal with this class. Fully qualifying the type names because this
has `#nullable disable` and makes use of `NotNull` which is also present
in the `System.Diagnostics.CodeAnalysis` namespace and AAAAAAARGH
NAMESPACE CONFLICTS.
2024-06-17 17:13:44 +09:00
Dan Balasescu
41446a08b6
Annotate ControlPoint and Mod for AOT trimming support
2024-06-17 16:19:33 +09:00
Bartłomiej Dach
9fbf2872e1
Remove no longer applicable region marking
2024-06-12 14:27:40 +02:00
Bartłomiej Dach
dd50d6fa6e
Move CountdownOffset
out of BeatmapInfo
2024-06-12 14:15:00 +02:00
Bartłomiej Dach
d373f752d6
Move Countdown
out of BeatmapInfo
2024-06-12 14:15:00 +02:00
Bartłomiej Dach
7f2a6f6f5a
Move TimelineZoom
out of BeatmapInfo
2024-06-12 14:15:00 +02:00
Bartłomiej Dach
6685c5ab74
Move GridSize
out of BeatmapInfo
2024-06-12 14:15:00 +02:00
Bartłomiej Dach
3634307d7c
Move DistanceSpacing
out of BeatmapInfo
2024-06-12 14:14:58 +02:00
Bartłomiej Dach
c216283bf4
Move SamplesMatchPlaybackRate
out of BeatmapInfo
2024-06-12 13:32:23 +02:00
Bartłomiej Dach
f64a0624a5
Move EpilepsyWarning
out of BeatmapInfo
2024-06-12 13:28:41 +02:00
Bartłomiej Dach
1ab86ebd24
Move WidescreenStoryboard
out of BeatmapInfo
2024-06-12 13:23:53 +02:00
Bartłomiej Dach
a6b7600bf2
Move LetterboxInBreaks
out of BeatmapInfo
2024-06-12 13:18:44 +02:00
Bartłomiej Dach
011c2e3651
Move SpecialStyle
out of BeatmapInfo
2024-06-12 13:12:30 +02:00
Bartłomiej Dach
0a4560a03e
Move StackLeniency
out of BeatmapInfo
2024-06-12 13:04:33 +02:00
Bartłomiej Dach
4339e2dc4a
Move AudioLeadIn
out of BeatmapInfo
2024-06-12 13:04:28 +02:00
Bartłomiej Dach
694cfd0e25
Expose singular coarse-grained change event on ControlPointInfo
2024-06-11 09:16:45 +02:00
Bartłomiej Dach
b8e0704554
Implement singular change events for ControlPoint
2024-06-11 09:15:45 +02:00
Dean Herbert
dd3f4bcdab
Fix code quality and null handling
2024-06-07 00:01:50 +08:00
Xesquim
860afb8123
Creating method in ModUtils to calculate the rate for the song
2024-06-06 10:06:07 -03:00
Dean Herbert
aad0982e26
Adjust size of play button / progress to match BeatmapCardThumbnail
usage
2024-05-27 20:33:24 +09:00
Dean Herbert
75d961e6f2
Pass the same thing in twice for better maybe
2024-05-27 20:30:01 +09:00
Dean Herbert
b6471f0b9c
Allow previewing audio of playlist items
2024-05-27 17:09:37 +09:00
Dean Herbert
f85a1339d9
Unload daily challenge background less aggressively
2024-05-23 14:23:02 +08:00
Dean Herbert
6c37560842
Merge branch 'master' into daily-challenge-mvp
2024-05-23 10:57:05 +08:00
Dean Herbert
73cb363eba
Make some more methods static
2024-05-22 23:26:23 +08:00
Bartłomiej Dach
f7ca18b52e
Menial cleanups
2024-05-22 15:52:57 +02:00
Aurelian
b25987ffe7
Changed allowed mania keys, and reverted 0af32c5
2024-05-22 11:37:55 +02:00
Aurelian
1127a69359
Moved DIfficulty Clamping to occur after the file has been parsed
...
This is to handle potential issues with the ruleset being parsed after circle size has been parsed.
2024-05-21 10:15:53 +02:00