Dean Herbert
15c770e155
Remove no longer used Section.None
2021-11-02 14:01:41 +09:00
Dean Herbert
ab28948744
Default legacy decoder to General
section, rather than none
...
This is mainly to reach parity with how stable handles such cases for
skins specifically. It was brought to our attention after finding a skin
with a malformed `\[General]` tag which did not break further parsing of
the file on stable, but did on lazer.
Note that stable defaults to an "unknown" section for beatmaps, but
functionally I can't think of a regression case from changing this to a
"general" default.
2021-11-02 13:59:13 +09:00
Dean Herbert
6944151486
Apply batch fixing of built-in types using var
2021-10-27 13:04:41 +09:00
Dean Herbert
e92def0ba2
Fix LegacyBeatmapEncoder
using incorrect path length value
2021-10-26 17:34:52 +09:00
smoogipoo
bc37cb6f43
Merge branch 'master' into no-more-difficulty-control-points-info
2021-10-08 18:41:17 +09:00
Dean Herbert
b339c149d8
Copy BaseDifficulty
to Beatmap<T>
and move all write operations across
2021-10-06 15:10:45 +09:00
Dean Herbert
4c28749d73
Fix incorrect legacy decoder usage
2021-10-01 19:05:08 +09:00
Dean Herbert
3faafd7200
Rename parameter to repeatCount
and add guards
2021-10-01 18:26:29 +09:00
Dean Herbert
46bafb6252
Merge branch 'master' into no-more-difficulty-control-points-info
2021-09-28 13:53:56 +09:00
Bartłomiej Dach
80197bae48
Revert not decoding legacy difficulty points on scrolling rulesets for now
2021-09-18 15:32:08 +02:00
Bartłomiej Dach
76ccdd1340
Collect and sort points from nested objects before extracting
2021-09-18 14:38:38 +02:00
Bartłomiej Dach
8026968939
Move difficulty -> effect point conversion back to decoder
2021-09-18 14:38:38 +02:00
Bartłomiej Dach
af7c2b93e6
Add encoding support for SamplesMatchPlaybackRate
2021-09-12 16:47:38 +02:00
Bartłomiej Dach
cd181452be
Add decoding support for SamplesMatchPlaybackRate
2021-09-12 16:45:27 +02:00
Dean Herbert
943e0d49f7
Handle control point flattening of nested hit objects
2021-09-10 17:29:09 +09:00
Dean Herbert
3c7a34bdbd
Move mania-specific conversion to converter
2021-09-06 21:06:13 +09:00
Dean Herbert
766d789845
Rename ApproachRate
to ScrollSpeed
for now (to reduce complexity/confusion)
2021-09-06 21:06:13 +09:00
Dean Herbert
0e6660da30
Replace todo with permanent comment
2021-09-03 17:11:12 +09:00
Dean Herbert
d587dc6203
Populate new approach rate where required
2021-09-03 17:11:12 +09:00
Dean Herbert
a3d9ab1e2e
Move approach rate to EffectControlPoint
2021-09-03 16:58:16 +09:00
Dean Herbert
4eb09ea1a9
Update decoder to also extract DifficultyControlPoint
s from HitObject
s
2021-09-03 16:58:16 +09:00
Dean Herbert
9fa8bee094
Remove outdated TODO
2021-08-31 14:51:19 +09:00
Dean Herbert
ce0d7cce2d
Merge branch 'remove-ijsonserializable' into no-more-sample-control-points-info
2021-08-31 14:40:54 +09:00
Dean Herbert
015df282fe
Simplify copy operations
2021-08-30 18:32:55 +09:00
Dean Herbert
d35c4da906
Add new control point to legacy regeneration logic
2021-08-30 17:14:53 +09:00
Dean Herbert
6ee4a6526c
Don't block sample points from still being added to ControlPointInfo
2021-08-30 17:14:53 +09:00
Dean Herbert
7257aae7f2
Move samples to LegacyControlPointInfo
2021-08-30 17:14:53 +09:00
Dean Herbert
da7a871afa
Update inline comment to point to new variable location
...
Co-authored-by: PercyDan <50285552+PercyDan54@users.noreply.github.com>
2021-08-30 16:27:24 +09:00
Dean Herbert
ee49305cad
Move taiko legacy speed multiplier to osu.Game
project
...
Allows it to be used in local case in `LegacyBeatmapEncoder`.
2021-08-30 15:13:31 +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
Bartłomiej Dach
a6c2cbd2e5
Add countdown settings to beatmap info model
2021-08-24 21:55:10 +02:00
Bartłomiej Dach
d602dc9d90
Enable epilepsy warning setting persistence in encoder
2021-08-22 17:43:20 +02:00
Bartłomiej Dach
e744629a41
Fix broken obsoletion message
2021-08-16 01:01:56 +02:00
Bartłomiej Dach
7c88a1c6de
Add a way to change custom combo colours via IHasComboColours
...
`IHasComboColours` was already mutable (via a strange
`AddComboColours()` method) and exposing a straight list is easier to
work with. `IHasCustomColours` is also similarly externally mutable (in
a way which is not easily removable).
2021-08-15 20:06:06 +02:00
ekrctb
7f432665e5
Preserve Y position of hit objects in osu!catch
2021-07-14 14:38:38 +09:00
smoogipoo
9b0ce2999f
Fix legacy encoder
2021-04-09 15:28:42 +09:00
Leon Gebler
dd902441b0
Add tests for consecutive perfect-curve segments
2021-04-06 13:32:17 +02:00
Leon Gebler
d81f270e21
Always encode perfect curves as explicit segments
2021-04-06 13:29:31 +02:00
smoogipoo
a2544100d4
Fix floating point error in slider path encoding
2021-04-06 14:10:59 +09:00
smoogipoo
d0510222ae
Fix legacy beatmap encoding
2021-04-05 19:59:54 +09:00
Dean Herbert
4f8edcd336
Don't strip comments from metadata during parsin
2021-03-25 13:35:54 +09:00
Dean Herbert
5b0d75ee56
Only trim trailing spaces to avoid breakage in storyboard parsing
2021-03-18 16:30:30 +09:00
Dean Herbert
bb3c3f302a
Fix skin parser not stripping whitespace before parsing
2021-03-18 15:36:11 +09:00
Dean Herbert
6d4c1ba2ae
Fix a couple of new inspections introduced in Rider EAPs
2021-03-15 13:35:08 +09:00
smoogipoo
dff1d80f39
Update HasFlag usages to HasFlagFast
2021-02-25 15:38:56 +09:00
Bartłomiej Dach
b9a49d5589
Coerce undefined animation loop types to Forever
2021-01-31 15:43:58 +01:00
smoogipoo
9a22df2b88
Fix BPM multiplier not working in all cases
2021-01-12 17:50:22 +09:00
Dean Herbert
00dc98e3ab
Make legacy control point's BpmMultiplier setter private again
2021-01-07 19:06:52 +09:00
Dean Herbert
afab35a31a
Fix missing copy implementation in LegacySampleControlPiont
2021-01-05 13:41:31 +09:00
Dean Herbert
ba4e411422
Clone and copy ControlPointInfo when retrieving a playable beatmap
2021-01-04 16:37:07 +09:00
smoogipoo
2150cf1c52
Rename parameters
2020-12-02 10:55:48 +09:00
smoogipoo
5760e1c1fc
Make HitSampleInfo immutable
2020-12-01 15:37:51 +09:00
Dean Herbert
25af091409
Fix storyboard animations of very old beatmaps playing too slow
...
Closes https://github.com/ppy/osu/issues/10772 .
2020-11-12 17:03:43 +09:00
Dean Herbert
c5b6908e71
Always write [HitObjects] to file
...
I think this is expected. If not, there's an alternative solution.
2020-11-08 00:18:27 +09:00
Bartłomiej Dach
3090b6ccb5
Resolve CA2249 inspections
...
"Use `string.Contains` instead of `string.IndexOf` to improve
readability"
2020-11-01 18:54:44 +01:00
Bartłomiej Dach
ca5de22ca5
Resolve CA1834 inspection
...
"Use `StringBuilder.Append(char)` instead of
`StringBuilder.Append(string)` when the input is a constant unit string"
2020-11-01 18:50:13 +01:00
Bartłomiej Dach
e2552d4c36
Merge branch 'master' into storyboard-skin-sprites
2020-10-20 23:01:54 +02:00
Bartłomiej Dach
cdd56ece87
Read UseSkinSprites when decoding storyboards
2020-10-20 22:49:56 +02:00
Bartłomiej Dach
fd4bab85cf
Merge branch 'master' into epilepsy-warning
2020-10-20 01:06:46 +02:00
Bartłomiej Dach
a9f27a71a2
Fix code formatting issues
2020-10-19 23:53:41 +02:00
Dean Herbert
cc41845f56
Add missing string function ordinal specifications
2020-10-16 12:49:31 +09:00
smoogipoo
d536a1f75e
Fix breaks being culled too early
2020-10-09 21:04:56 +09:00
Craftplacer
c2ade44656
Change types back
2020-09-01 17:58:06 +02:00
Craftplacer
fb37a14d57
Update LegacyBeatmapEncoder.cs
2020-08-31 17:24:03 +02:00
Craftplacer
eafa97af17
Revert changes done to SkinConfiguration and IHasCustomColours
2020-08-31 17:23:42 +02:00
Craftplacer
7e668fc31a
Update osu.Game/Beatmaps/Formats/LegacyBeatmapEncoder.cs
...
Co-authored-by: Salman Ahmed <email@iisalman.me>
2020-08-30 16:11:49 +02:00
Craftplacer
1fdf8e6200
Fix xmldoc in LegacyBeatmapEncoder
2020-08-30 16:07:58 +02:00
Craftplacer
e428144f73
Use IBeatmapSkin
2020-08-30 11:34:50 +02:00
Craftplacer
00b68b050c
Merge remote-tracking branch 'upstream/master' into combo-colors
2020-08-30 10:16:38 +02:00
Craftplacer
e6646b9877
Resolve review comments
2020-08-23 15:08:02 +02:00
smoogipoo
88d50b6c47
Remove alpha mangling from LegacyDecoder
2020-08-22 00:15:37 +09:00
Craftplacer
c4a7fac760
Add required parameters and other various changes
2020-08-15 22:03:24 +02:00
Craftplacer
8ffaa49839
Handle additional null case
2020-08-12 06:40:21 +02:00
Craftplacer
139c0c75f8
Add documentation for constructor
2020-08-12 06:40:21 +02:00
Craftplacer
78692dc684
Initial commit
2020-08-10 05:21:10 +02:00
Gagah Pangeran
acbf13ddc4
add epilepsy warning field
2020-07-20 17:36:42 +07:00
smoogipoo
0ea13dea55
Introduce legacy timing point fp errors
2020-07-13 17:06:00 +09:00
ekrctb
3278a1d7d8
Standardize osu!catch coordinate system
...
There were two coordinate systems used:
- 0..512 (used in osu!stable)
- 0..1 (relative coordinate)
This commit replaces the usage of
the relative coordinate system to
the coordinate system of 0..512.
2020-07-02 00:21:45 +09:00
Dean Herbert
d0787ddf99
Merge pull request #9369 from smoogipoo/fix-hyperdash-alpha
2020-06-26 14:46:46 +09:00
smoogipoo
4ff9a91012
Adjust at parse time instead
2020-06-25 14:15:26 +09:00
smoogipoo
6bc507d49e
Increase coordinate parsing limits
2020-06-24 18:53:52 +09:00
smoogipoo
f3b5149648
Move some suggestions to warnings, resolve issues
2020-06-03 16:48:44 +09:00
Dan Balasescu
64d1b4b11b
Merge branch 'master' into move-setter-to-duration
2020-06-01 15:55:48 +09:00
Dean Herbert
81b8898272
Fix incorrect type cast in encoder
2020-05-31 22:30:55 +09:00
Dean Herbert
cbd563e80b
Rename to IHasDuration
2020-05-27 12:38:39 +09:00
Dean Herbert
6b5b215299
Split out IHasPath from IHasCurve to better define hitobjects
2020-05-26 17:44:47 +09:00
Tim Oliver
c1c930c472
Fixed linting warnings
2020-04-25 13:47:20 +08:00
smoogipoo
3b805daa0b
Fix hold note end time being written incorrectly
2020-04-22 16:40:07 +09:00
smoogipoo
7cdc9a599c
Fix mania holds written as spinners
2020-04-22 16:27:07 +09:00
smoogipoo
d8fdd73e17
Implement IHasCurve on DrumRoll
2020-04-22 09:06:04 +09:00
smoogipoo
ea0ebc8527
Implement beatmap encoding for all legacy rulesets
2020-04-22 09:06:04 +09:00
smoogipoo
516e6a4bb1
Fix overlapping control points not written correctly
2020-04-22 09:04:44 +09:00
smoogipoo
1421e876b1
Remove implicit new combo from spinners
2020-04-22 09:04:44 +09:00
smoogipoo
d8d85e5b08
Don't output certain properties if they don't exist
2020-04-22 09:04:44 +09:00
smoogipoo
3093c3e185
Fix custom sample set not being written correctly
2020-04-22 09:04:44 +09:00
smoogipoo
72fb34f82c
Fix overriding control points incorrectly
2020-04-21 14:19:05 +09:00
Dan Balasescu
367c3e69c4
Merge pull request #8788 from peppy/fix-editor-hard-crash
...
Fix hard crash in editor on legacy modes without encoder implementation
2020-04-20 15:25:48 +09:00
Dean Herbert
48cf7becd1
Merge branch 'master' into catch-hyperdash-fruit-colouring
2020-04-19 21:48:41 +09:00
Dean Herbert
6b16908c05
Move todo to appease dotnet-format
2020-04-18 21:51:37 +09:00
Dean Herbert
c00a386ff6
Remove exceptions instead
2020-04-18 21:46:04 +09:00