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

580 Commits

Author SHA1 Message Date
Dan Balasescu
5d09aaae27
Merge pull request #29446 from OliBomby/last-anchor
Fix path control points losing curve type on save/reload or undo
2024-09-02 18:40:19 +09:00
Bartłomiej Dach
c2dd2ad978
Clamp beat divisor to sane range when decoding
In my view this is a nice change, but do note that on its own it does
nothing to fix https://github.com/ppy/osu/issues/29492, because of
`BeatmapInfo` reference management foibles when opening the editor. See
also: https://github.com/ppy/osu/issues/20883#issuecomment-1288149271,
https://github.com/ppy/osu/pull/28473.
2024-08-20 13:52:29 +02:00
OliBomby
4cc38cea63 fix last anchor converting to implicit segment 2024-08-16 14:24:03 +02:00
Dean Herbert
d072c6a743
Fix hit object coordinates being truncated to int values
Closes https://github.com/ppy/osu/issues/29340.
2024-08-09 16:34:39 +09:00
Bartłomiej Dach
3c28c116ca
Simplify input overlay text colour decode (and fix incorrect default) 2024-07-24 14:53:01 +02:00
normalid
b24be96d04 Fix code quality 2024-07-24 12:57:30 +08:00
normalid
c52a993607 Support custom input overlay color 2024-07-23 23:35:25 +08: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
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
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
Aurelian
db8b72eb37 Clamped Difficulty Ranges to [0,10] 2024-05-20 16:23:16 +02:00
Salman Ahmed
895c09d4d1 Merge branch 'master' into storyboard-loops-v2 2024-05-01 23:46:38 +03:00
Bartłomiej Dach
f0eef32913
Fix code quality inspection 2024-05-01 15:21:39 +02:00
Dean Herbert
44091b1f35
Fix some lines still getting forgotten about 2024-05-01 17:33:03 +08:00
Dean Herbert
ba9f4e4baf
Don't skip lines in beatmap decoding
Was added in cc76c58f5f without any
specific reasoning. Likely not required (and will fix some storyboard
elements inside `.osu` files from not being correctly saved).
2024-04-30 16:42:15 +08:00
Dean Herbert
fd3f4a9e7b
Preserve storyboard events when saving a beatmap in the editor
Until we have full encoding support for storyboards, this stop-gap
measure ensures that storyboards don't just disappear from existence.
2024-04-30 00:01:56 +08:00
Dean Herbert
4ae9f81c73
Apply transforms to storyboard videos
This requires that they are a `StoryboardSprite` for simplicity. Luckily
this works just fine.
2024-04-22 18:43:15 +08:00
Salman Ahmed
c1649b76d6 Reorder command properties to match general format
I had them shuffled around in the middle of the refactor.
2024-03-08 21:33:53 +03:00
Salman Ahmed
8d3e502262 Merge branch 'master' into storyboard-loops-v2 2024-03-08 20:22:19 +03:00
Salman Ahmed
fa9b2f0cd5 Add generics to ApplyInitialValue/ApplyTransforms for ability to return custom transform sequences
*sigh*
2024-03-08 03:07:39 +03:00
Salman Ahmed
585ab59768 Apply major refactor to the storyboard commands flow structrure 2024-03-08 01:10:09 +03:00
Dean Herbert
b53b752e54
Update usage of MathUtils 2024-03-06 12:13:12 +08:00
Andrei Zavatski
8b03acd27b Implement StoryboardElementWithDuration 2024-03-06 00:16:06 +03:00
Andrei Zavatski
c05007804f Use more direct way to apply transforms 2024-03-03 20:50:28 +03:00
Dan Balasescu
b44f77cee1
Update R# + fix inspections 2024-02-02 21:00:28 +09:00
Dean Herbert
1b50d1011a
Move constant local to taiko 2023-12-06 15:59:34 +09:00
Dean Herbert
b5bae566c2
Fix incorrect slider velocity being written on export for osu!taiko beatmaps 2023-12-06 15:59:34 +09:00
Dan Balasescu
7bc2d6e6cd
Merge branch 'master' into fix-combo-handling 2023-11-23 16:22:01 +09:00
Dan Balasescu
cb4568c4a1
Fix first object after break not starting a new combo 2023-11-22 17:22:48 +09:00
cs
fa976a5aa0 Fix code style/quality issues 2023-11-13 08:25:27 +01:00
cs
54b8244a18 CI Fixup 2023-11-11 15:02:06 +01:00
Thomas Müller-Höhne
926636cc03 Generalize Bezier curves to BSplines of Nth degree 2023-11-11 13:32:53 +01:00
Bartłomiej Dach
c89081589c
Fix insufficient leniency when querying sample points 2023-10-20 10:26:16 +02:00
Dean Herbert
2781846147
Fix beatmaps with no preview point set getting incorrect default
Note that this will require a re-import to fix existing beatmaps
becuse.. it's stored to realm. Probably not worth worrying about for
now.
2023-10-10 19:13:16 +09:00
Bartłomiej Dach
2bb869732e
Delete outdated warning disables 2023-09-07 18:47:01 +02:00
Dean Herbert
b34a36f6ce Remove all usage of LegacyDifficultyControlPoint 2023-09-07 17:41:57 +09:00
Dean Herbert
1a37543d28 Rename SliderVelocity to SliderVelocityMultiplier to distinguish from Velocity 2023-09-06 19:01:08 +09:00
Dean Herbert
49fc9655d2 Apply NRT to osu.Game.Betamaps.Formats namespace 2023-08-16 19:37:24 +09:00
Bartłomiej Dach
e3a89a6273
Fix remaining obvious CI inspections 2023-06-24 16:07:01 +02:00
Dean Herbert
0ab0c52ad5 Automated pass 2023-06-24 01:00:03 +09:00
Dean Herbert
298989ffd2 Merge branch 'master' into sample-set-controls 2023-05-24 14:03:04 +09:00
Dean Herbert
83dcd78826 Make HitSampleInfo.Bank non-nullable 2023-05-16 18:12:56 +09:00
Dean Herbert
ca5e8b290f Add clamping to SliderMultiplier and SliderTickRate at parsing time 2023-05-09 20:53:20 +09:00
Dean Herbert
944da06c10 Rename slider multiplier variable back for now 2023-05-09 16:58:19 +09:00