1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-17 11:32:55 +08:00
Commit Graph

1991 Commits

Author SHA1 Message Date
smoogipoo
6e42b8219c Move track to MusicController, compiles 2020-08-06 16:24:14 +09:00
smoogipoo
4648362214 Safeguard against potential finalise-before-initialised 2020-07-29 11:30:25 +09:00
smoogipoo
a57b6bdc18 Remove cancellation of linked tokens 2020-07-29 11:29:38 +09:00
smoogipoo
fa25f8aef9 Dispose update scheduler 2020-07-28 17:23:35 +09:00
smoogipoo
96f68a3251 Reorder method 2020-07-28 16:53:07 +09:00
smoogipoo
ff3cb6487d Store all linked cancellation tokens 2020-07-28 16:53:07 +09:00
smoogipoo
44b0aae20d Allow nullable ruleset, reword xmldoc 2020-07-24 13:54:47 +09:00
smoogipoo
b10b99a670 Change method signatures to remove tracked/untracked 2020-07-24 13:52:43 +09:00
smoogipoo
de007cc1c6 Use IEnumerable mods instead of IReadOnlyList 2020-07-24 13:40:01 +09:00
smoogipoo
264bd7ced1 Apply general refactoring from review 2020-07-24 13:38:53 +09:00
smoogipoo
6b7f05740e Fix potential missing ruleset 2020-07-22 12:48:12 +09:00
smoogipoo
aca4110e36 Use existing star difficulty if non-local beatmap/ruleset 2020-07-22 12:47:53 +09:00
smoogipoo
00e6217f60 Don't store BeatmapInfo/RulesetInfo references, remove TimedExpiryCache 2020-07-21 23:50:54 +09:00
smoogipoo
107b5ca4f2 Add support for bindable retrieval 2020-07-21 23:13:04 +09:00
smoogipoo
599a15edb8 Merge branch 'master' into beatmap-difficulty-manager 2020-07-21 20:09:53 +09:00
Gagah Pangeran
055e31ddd5 update minor 2020-07-20 18:37:02 +07:00
Gagah Pangeran
acbf13ddc4 add epilepsy warning field 2020-07-20 17:36:42 +07:00
Dean Herbert
3823bd8343 Add back missing default implementations for lookup functions 2020-07-19 14:11:21 +09:00
Dean Herbert
7250bc351d Remove unnecessary new() specification 2020-07-18 12:06:41 +09:00
Dean Herbert
2f16b448ea Set beatLength inline 2020-07-18 12:03:49 +09:00
Dean Herbert
8147e67f53 Use static instances in all fallback ControlPoint lookups to reduce allocations 2020-07-18 11:53:04 +09:00
smoogipoo
3191bb506f Improve asynchronous process 2020-07-16 21:07:14 +09:00
smoogipoo
6df1b1d9ea Add a background beatmap difficulty manager 2020-07-16 20:43:14 +09:00
Dean Herbert
cc62d8911a
Merge pull request #9573 from smoogipoo/taiko-diffcalc-fixes-2 2020-07-16 14:59:06 +09:00
Dean Herbert
8ace06fcc5 Fix continuations attaching to the BeatmapOnlineLookupQueue scheduler 2020-07-14 16:03:40 +09:00
Dean Herbert
e35e9df4e1 Fix local online cache database not being used when offline / logged out 2020-07-14 12:02:03 +09:00
smoogipoo
0ea13dea55 Introduce legacy timing point fp errors 2020-07-13 17:06:00 +09:00
smoogipoo
1116703e92 Fix potential out-of-order objects after conversion 2020-07-13 16:52:05 +09:00
Dean Herbert
632f333ce2 Add ability to return protected beatmaps in GetAllUsable call 2020-07-10 17:20:27 +09:00
smoogipoo
04ce436f6a Dispose beatmap lookup task scheduler 2020-07-09 14:46:58 +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
e5a901cec7
Merge branch 'master' into results-screen-statistics-overlapping-transition 2020-06-28 22:14:22 +09:00
Dean Herbert
d0787ddf99
Merge pull request #9369 from smoogipoo/fix-hyperdash-alpha 2020-06-26 14:46:46 +09:00
Dean Herbert
b077a2856d Merge branch 'master' into results-screen-statistics-overlapping-transition 2020-06-25 18:44:08 +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
6afd6efdeb Return default beatmap if local beatmap can't be retrieved 2020-06-22 20:33:08 +09:00
smoogipoo
88aed1d504 Merge branch 'master' into update-inspectcode-version 2020-06-09 20:12:39 +09:00
Dan Balasescu
1476412eaa
Merge branch 'master' into startup-safety 2020-06-09 13:55:33 +09:00
Dean Herbert
63003757c4 Remove WorkingBeatmap cache when deleting or updating a beatmap 2020-06-08 14:48:26 +09:00
smoogipoo
443977aa8d Remove PreUpdate, update hash in Save() 2020-06-08 14:40:17 +09:00
smoogipoo
dfed27bd46 Add back stream seeking for sanity 2020-06-08 14:24:21 +09:00
Dean Herbert
b41384dde8
Merge branch 'master' into multiplayer-beatmap-checksum 2020-06-07 18:05:33 +09:00
smoogipoo
0107e9ba16 Change lookups to use SingleOrDefault() 2020-06-05 19:18:00 +09:00
Dean Herbert
c155ab8339 Check filenames and timestamps before reusing an already imported model 2020-06-03 18:03:10 +09:00
smoogipoo
f3b5149648 Move some suggestions to warnings, resolve issues 2020-06-03 16:48:44 +09:00
smoogipoo
dfb9687fb5 Extract update into PreUpdate(), add test 2020-06-02 17:22:09 +09:00
smoogipoo
b41bb5a682 Update databased MD5 hash on save 2020-06-02 14:04:00 +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
Dean Herbert
0cc6d6d97c
Merge pull request #9033 from smoogipoo/applydefaults-cancellation
Add cancellation token support to CreateNestedHitObjects()
2020-05-26 12:04:06 +09:00
smoogipoo
bc35bc5efb Merge branch 'master' into applydefaults-cancellation 2020-05-25 16:45:30 +09:00
Dean Herbert
c071fe6140 Add the ability to export skins 2020-05-24 13:44:11 +09:00
Salman Ahmed
3d3cc2c15e
Dispose BeatmapOnlineLookupQueue cache download request 2020-05-22 17:26:37 +03:00
smoogipoo
e5de382760 Merge branch 'master' into storyboard-overlay-layer 2020-05-20 15:08:45 +09:00
Dean Herbert
052ad79fc6 Convert dangerous events to IBindables 2020-05-19 16:44:22 +09:00
Bartłomiej Dach
9415e45aea Add overlay layer to enumeration type 2020-05-18 22:45:31 +02:00
smoogipoo
4719fcc291 Actually use the cancellation token 2020-05-15 18:17:39 +09:00
smoogipoo
4079642d58 Actually pass in the cancellation token 2020-05-15 18:13:47 +09:00
Dean Herbert
916d8245e6 Don't timeout on long beatmap load when debugging 2020-05-11 12:50:47 +09:00
smoogipoo
401c516503 Expose searchable terms from beatmap info instead 2020-05-07 13:04:08 +09:00
Dan Balasescu
0eae8d078b
Merge branch 'master' into master 2020-05-05 13:33:29 +09:00
alex
0e2ccac33b Add spaces to comments 2020-05-04 18:36:24 -07:00
Dean Herbert
a1cd007cad Fix song select tests potentially failing due to difficulty panels not yet displayed 2020-05-04 14:44:53 +09:00
Dean Herbert
68d40cf790 Fix test failures due to online cache download 2020-05-03 13:25:57 +09:00
Dean Herbert
6fef4eeb8f Rename class and extract out lookup method 2020-05-03 09:35:48 +09:00
Dean Herbert
035b513b68 Use QuerySingle instead of QueryFirst 2020-05-03 09:32:33 +09:00
Dean Herbert
b9b5779251 Move deletion to catch instead of finally 2020-05-03 09:31:56 +09:00
Dean Herbert
deb87517d0 Add local beatmap lookup cache 2020-05-02 14:35:12 +09:00
Dean Herbert
d0a8c0fa71 Add kiai support to osu!taiko skinned playfields 2020-04-30 16:43:00 +09:00
Dean Herbert
d1ec99ffd9 Further improve beatmap carousel load performance by avoiding incorrect query construction 2020-04-29 16:51:22 +09:00
Dean Herbert
119000f1ab Reduce database includes where possible 2020-04-28 21:43:35 +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
Dean Herbert
223c822e57
Merge branch 'master' into all-ruleset-encoders 2020-04-22 13:04:16 +09:00
Dean Herbert
aaa0f908d5
Merge pull request #8818 from smoogipoo/fix-beatmap-encoder
Fix beatmap encoder by enabling untested test cases
2020-04-22 13:03:56 +09:00
Dean Herbert
360c9f8e38 Add test coverage and handle null creator 2020-04-22 09:19:34 +09:00
Dean Herbert
0c74f1aaa9 Fix now playing output showing empty brackets when no difficulty specified 2020-04-22 09:08:33 +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
Dean Herbert
aa153290a9
Merge pull request #8815 from smoogipoo/fix-controlpoint-decode
Fix control point overriding working incorrectly
2020-04-21 16:18:50 +09:00
smoogipoo
72fb34f82c Fix overriding control points incorrectly 2020-04-21 14:19:05 +09:00
smoogipoo
9252b7876b Don't serialise AllControlPoints 2020-04-21 13:58:23 +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
Dan Balasescu
4e22e569f5
Merge branch 'master' into timing-equivalence 2020-04-17 17:12:38 +09:00
smoogipoo
0fba93bf65 Add back null check 2020-04-17 17:10:13 +09:00
smoogipoo
9aac98664c Remove unnecessary time property 2020-04-17 17:06:12 +09:00
smoogipoo
69fb984e71 Remove EquivalentTo() and Equals() 2020-04-17 17:04:09 +09:00
smoogipoo
6935221463 Improve logic for CSB transfer 2020-04-14 21:05:07 +09:00
Dan Balasescu
eb968d2bdb
Merge branch 'master' into timing-equivalence 2020-04-14 14:02:02 +09:00
Dean Herbert
081a02f748
Merge branch 'master' into catch-hyperdash-fruit-colouring 2020-04-14 10:01:15 +09:00
smoogipoo
cee4b005e6 Fix custom sample set 0 not falling back to default samples 2020-04-13 20:00:06 +09:00
Alchyr
f115fecb23 Fix formatting 2020-04-09 09:34:40 -07:00
smoogipoo
b900f229e7 Fix possible legacy beatmap encoder nullref 2020-04-09 20:21:42 +09:00
Alchyr
65823fb2e1 Use redundancy test 2020-04-08 01:42:35 -07:00
Alchyr
66a474619c Adjust TimingControlPoint equivalency 2020-04-07 18:13:26 -07:00
Salman Ahmed
1b76a53d32 Move CatchTheBeat section handling to LegacySkinDecoder
Best place to reside at
2020-04-05 22:10:35 +03:00
Salman Ahmed
0eaea8ef9d Create a constructor for break period
For simple construction of break periods (e.g. filling a method with an array of break periods inside a test case)
2020-04-05 21:29:03 +03:00
Salman Ahmed
10e65c4f53 Add handling for legacy CatchTheBeat section in LegacyDecoder 2020-04-05 00:10:12 +03:00
Will Kennedy
57944bd335 fix(?) InspectCode warnings 2020-04-02 21:36:31 -04:00
Will Kennedy
c042e709a5 Fix GetDecoder getting fallback decoder too often 2020-04-02 20:43:54 -04:00
smoogipoo
a77933f5e0 Add support for parsing mania skin colours 2020-04-02 17:56:12 +09:00
Dan Balasescu
8964001423
Merge branch 'master' into fix-invalid-set-ids-on-import 2020-03-30 22:24:12 +09:00
smoogipoo
4719aac235 Add basic mania skin parsing 2020-03-30 17:18:09 +09:00
Dean Herbert
f71c8cb30f Only drop online set ID if beatmap IDs were stripped in online retrieval 2020-03-30 15:07:56 +09:00
Dean Herbert
7ecce713bb Keep provided IDs where possible if not online 2020-03-30 15:07:39 +09:00
Dean Herbert
09d860d5f5 Fix imports with no matching beatmap IDs still retaining a potentially invalid set ID 2020-03-30 11:52:25 +09:00
voidedWarranties
b8f20831a1 Video no longer modifies storyboard resolution 2020-03-24 20:04:09 -07:00
Dean Herbert
f2e0fba164 Remove VideoFile from BeatmapMetadata
Leaving in database because it's a pain to drop columns.
2020-03-25 12:00:02 +09:00
Dean Herbert
729e006c3a
Merge branch 'master' into video-offset 2020-03-21 20:03:46 +09:00
smoogipoo
9c5423734a Throw timeout exceptions instead 2020-03-16 11:33:26 +09:00
Dan Balasescu
f390c1995d
Apply comment suggestions
Co-Authored-By: Dean Herbert <pe@ppy.sh>
Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2020-03-16 11:29:28 +09:00
voidedWarranties
c27751050b Switch back to strings and update setting labels 2020-03-12 23:29:11 -07:00
smoogipoo
f7c036726a Add beatmap loading timeout 2020-03-13 13:52:40 +09:00
smoogipoo
40ab860ab5 Remove unused using 2020-03-11 18:23:30 +09:00
smoogipoo
9667934ed9 Remove unlimited timing points in difficulty calculation 2020-03-11 18:17:32 +09:00
Dan Balasescu
1d556bfc5f
Merge branch 'master' into video-offset 2020-03-11 15:13:18 +09:00
smoogipoo
e6858bf130 Fix crashes on some storyboards 2020-03-10 11:58:33 +09:00
voidedWarranties
4624582703 Revert position offset change for separate pull 2020-03-08 14:40:36 -07:00
voidedWarranties
22dd93a4f6 Code quality, read position offsets 2020-03-08 14:02:39 -07:00
voidedWarranties
76c832518f Render video as a part of the storyboard 2020-03-07 21:32:03 -08:00
voidedWarranties
d68d7edea3 Start background video playback based on provided offset 2020-03-07 14:08:13 -08:00
smoogipoo
dd2bd5c19d Add delay for loading multiplayer beatmap covers 2020-02-27 20:01:23 +09:00
Dean Herbert
db4fe4f728
Merge branch 'master' into adjust-beatmap-overlay 2020-02-21 09:52:44 +09:00
TheWildTree
62227ad856 Add MaxCombo to BeatmapInfo 2020-02-19 17:58:10 +01:00
TheWildTree
64a9b9c6fb Remove redundant using directives 2020-02-16 21:52:08 +01:00
TheWildTree
dd5e713c0c Adjust colours 2020-02-16 21:42:05 +01:00
Dean Herbert
006c52bbe5 Fix visible error being thrown when playing a no-video beatmap 2020-02-16 15:08:37 +09:00
recapitalverb
a7c2fd078f Fix remaining cases 2020-02-14 20:27:21 +07:00
Dean Herbert
e022352812
Merge pull request #7784 from smoogipoo/fix-beatmap-disposal
Fix disposal-related errors by making WorkingBeatmap non-disposable
2020-02-13 18:52:47 +09:00
Tree
b694b0c90c
Merge branch 'master' into adjust-beatmap-overlay 2020-02-11 21:07:26 +01:00
smoogipoo
0ab3982494 Unify error handling 2020-02-10 17:25:11 +09:00
smoogipoo
668f36d7f3 Clean up logging 2020-02-10 17:04:31 +09:00
smoogipoo
cef682aa03 Make WorkingBeatmap non-disposable 2020-02-10 17:02:01 +09:00
smoogipoo
a988a53d69 Better handle beatmap task cancel exception 2020-02-10 17:02:00 +09:00
Dan Balasescu
1f3d4e1f72 Merge branch 'master' into string_cleanup 2020-02-10 13:37:17 +09:00
Dean Herbert
96574a98ad Use non-zero length for fallback virtual track (allows tests to work as expected) 2020-02-09 21:34:56 +09:00
Dean Herbert
d73ef7c37e Change DummyBeatmap's track to be 0 length 2020-02-09 21:25:11 +09:00
Berkan Diler
5b452293d6 Minor cleanups for legacy beatmap decoders
Replaces some string.StartsWith(string, StringComparison.Ordinal) calls with ring.StartsWith(char) , when only one char is compared. Possible since .NET-Standard 2.1

And another LegacyStoryboardDecoder.handleEvents() cleanup, saves some MB of allocations.
2020-02-08 18:05:27 +01:00
TheWildTree
76037e4ffd Recolour ranked status pill 2020-02-05 16:31:14 +01:00
Dean Herbert
eabb5a8701 Use ToString instead of Substring 2020-01-26 17:40:38 +09:00
Dean Herbert
50ab5a7d07 Merge remote-tracking branch 'upstream/master' into LegacyDecoder_changes 2020-01-26 17:38:44 +09:00
Berkan Diler
219e14baa2 Address review and fix InspectCode 2020-01-24 17:05:27 +01:00
Berkan Diler
6658bdb223 Fix CodeFactor issues 2020-01-23 16:34:43 +01:00
Berkan Diler
316a764f6f Minor cleanups for Legacy Storyboard/Beatmap decoder 2020-01-23 16:23:53 +01:00
smoogipoo
c25fefa3ca Add beatmap package export 2020-01-15 13:44:46 +09:00
smoogipoo
4fe5ea8e92 Clear working beatmap cache on save 2020-01-14 19:24:53 +09:00
smoogipoo
a255832195 Add beatmapmanager method for saving 2020-01-14 19:24:53 +09:00
smoogipoo
681a43a318 Refactor to support beatmap updates 2020-01-14 19:24:53 +09:00
Berkan Diler
34d8740ec4 Remove remaining usage of osuTK.MathHelper 2020-01-08 20:21:13 +01:00
Ganendra Afrasya
e433e8b78f Remove unused variable 2020-01-06 17:12:10 +07:00
Dan Balasescu
9702cc9809
Merge branch 'master' into remove-legacy-id 2019-12-25 21:01:12 +09:00
Dean Herbert
504a55e803
Merge branch 'master' into better-beatmap-conversion 2019-12-25 19:52:06 +09:00
Dean Herbert
145ac8e0b5 Remove redundant setter 2019-12-25 14:55:05 +09:00
Dean Herbert
0677f746aa Provide the ruleset to converter classes 2019-12-24 16:02:16 +09:00
smoogipoo
3e03916c39 Add length check back to workingbeatmap 2019-12-23 17:45:59 +09:00
smoogipoo
6e7426a098 Simplify/improve beatmap conversion precheck 2019-12-23 17:44:18 +09:00
Salman Ahmed
55be4478aa Merge remote-tracking branch 'upstream/master' into fallback-to-skin-combo-colours 2019-12-21 12:36:09 +03:00
smoogipoo
1802e0ff11 Fix storyboard incorrectly re-ordering elements 2019-12-20 16:04:05 +09:00
Dean Herbert
5cdc7d3b18
Merge pull request #7183 from smoogipoo/legacy-beatmap-saving
Add initial implementation of a legacy beatmap encoder
2019-12-18 18:43:14 +09:00
Dean Herbert
51a01c7006
Merge pull request #7256 from peppy/remove-ruleset-ctor-param
Remove RulesetInfo parameter from Ruleset constructor
2019-12-18 18:42:42 +09:00
Dean Herbert
1f3e1b3085 Remove unused using 2019-12-18 17:59:07 +09:00
Dean Herbert
4befabc257 Split out complex method 2019-12-18 17:35:51 +09:00
smoogipoo
602ce698d5 Fix storyboard vectorscale and scale cross-pollution 2019-12-18 17:21:38 +09:00
Dean Herbert
fa067b8799
Merge branch 'master' into legacy-beatmap-saving 2019-12-18 17:17:03 +09:00
Dean Herbert
6e0802e50c Remove RulesetInfo parameter from Ruleset constructor 2019-12-18 14:49:09 +09:00
Dean Herbert
036efb9947
Merge branch 'master' into fix-effect-points 2019-12-18 01:43:15 +09:00
Dean Herbert
886db8eb22
Merge branch 'master' into fix-local-score-availability 2019-12-18 01:15:20 +09:00
smoogipoo
946a202ee5 Fix online replays not being available locally 2019-12-17 15:47:08 +09:00
Huo Yaoyuan
caf3f774ba CA1309: compare strings correctly. 2019-12-17 13:00:15 +08:00
Huo Yaoyuan
ecfc6dfa3d CA1825: use Array.Empty. 2019-12-17 12:59:48 +08:00
Dean Herbert
272d7d0ca9
Merge branch 'master' into fallback-to-skin-combo-colours 2019-12-17 12:36:20 +09:00
smoogipoo
be7b00cc34 Fix potentially incorrect custom sample bank 2019-12-16 17:12:31 +09:00
smoogipoo
3c9884456f Use writeline 2019-12-16 17:08:46 +09:00
smoogipoo
5278236458 Use invariant ToLower() 2019-12-16 17:07:30 +09:00
smoogipoo
27150d6bbc Use char concatenation for performance 2019-12-16 17:06:52 +09:00
smoogipoo
9fa6954ac2 Refactor getSampleBank a bit 2019-12-16 17:05:24 +09:00
smoogipoo
98dd1c2590 Use SingleOrDefault() where possible 2019-12-16 17:03:58 +09:00
smoogipoo
d56e99865c Throw not implemented exceptions 2019-12-16 16:57:49 +09:00
smoogipoo
596fda3c1f Refactor switch 2019-12-16 16:57:40 +09:00
smoogipoo
58e3fb0d0f Coalesce to -1 2019-12-16 16:43:20 +09:00
Huo Yaoyuan
c457571da6 Use index and range expressions 2019-12-15 20:17:35 +08:00
smoogipoo
ea4eb6b204 CI cleanups 2019-12-13 21:29:10 +09:00
smoogipoo
9bc02f489e Add missing headers 2019-12-13 19:14:49 +09:00
smoogipoo
0ad28a9400 Start at version 128 2019-12-13 19:11:45 +09:00
smoogipoo
abf3f341b7 Merge remote-tracking branch 'refs/remotes/origin/master' into legacy-beatmap-saving 2019-12-13 19:01:25 +09:00
smoogipoo
87a7f340e3 Fix first sample point being treated as redundant 2019-12-13 18:14:01 +09:00
smoogipoo
654499d8b0 Remove whitespace 2019-12-13 17:33:18 +09:00
smoogipoo
97158fce7d Always attach a new combo to spinners 2019-12-13 17:02:10 +09:00
smoogipoo
0b7c4f252c Fix artist being written in place of version 2019-12-13 17:01:59 +09:00
smoogipoo
53a665a034 Fix sound types and banks not being written correctly 2019-12-13 17:01:44 +09:00
smoogipoo
ac984423bb Fix only single sound type being written 2019-12-12 19:53:30 +09:00
smoogipoo
dedae69db8 Prefer legacy curve format if possible 2019-12-12 19:52:15 +09:00
smoogipoo
d35d34c01b Fix hanging semicolon for per-node bank output 2019-12-12 19:01:43 +09:00
smoogipoo
4760307bbb Don't output the first slider control point 2019-12-12 19:01:15 +09:00
smoogipoo
60063eefd2 Fix up background/video events 2019-12-12 18:51:05 +09:00
smoogipoo
51bdb73b91 Don't write empty file names 2019-12-12 18:49:47 +09:00
smoogipoo
f89042cd0a Add missing section header 2019-12-12 18:48:22 +09:00
smoogipoo
e09bbf0315 Implement background/video/break encoding 2019-12-12 18:47:28 +09:00
smoogipoo
d1dc3456d1 Fix incorrect repeat point count 2019-12-12 18:42:48 +09:00
smoogipoo
c3475a2dde Write control points in absolute coordinates 2019-12-12 18:41:13 +09:00
smoogipoo
8f03599a62 Write default sampleset by name 2019-12-12 18:40:33 +09:00
Salman Ahmed
a9125f6544 Merge remote-tracking branch 'upstream/master' into fallback-to-skin-combo-colours 2019-12-12 12:37:51 +03:00
smoogipoo
be000e13e4 Implement initial legacy beatmap encoding support 2019-12-12 18:34:40 +09:00
smoogipoo
5861eca80d Make DrawableRuleset take a converted beatmap 2019-12-12 15:58:11 +09:00
Huo Yaoyuan
cffeceb229 Remove unnecessary comment. 2019-12-11 16:24:22 +08:00
Huo Yaoyuan
b86a3dbfab PathStandardise -> ToStandardisedPath 2019-12-11 16:06:56 +08:00
Huo Yaoyuan
6b3c7c8421 Remove usages of FileSafety class. 2019-12-11 16:05:35 +08:00
smoogipoo
c378e525da Extract the rest of legacy enums 2019-12-10 20:23:15 +09:00
smoogipoo
3c18872a16 Extract legacy effect flags enum 2019-12-10 20:19:31 +09:00
smoogipoo
e3f925f69a Extract legacy hitobject type enum 2019-12-10 20:19:16 +09:00
smoogipoo
8012b21ffa Extract legacy sound type enum 2019-12-10 20:18:44 +09:00
Ganendra Afrasya
8be6abf607 Add param to let function return lighter colour for some diff 2019-12-06 10:07:16 +07:00
Ganendra Afrasya
0e97871461 Change colour if difficulty is ExpertPlus 2019-12-05 14:53:01 +07:00
Huo Yaoyuan
5375af7820 Remove other Equals(object) calls. 2019-12-03 20:23:27 +08:00
Dean Herbert
c49aeb08c4 Add API methods to perform requests out-of-queue 2019-11-29 20:03:14 +09:00
Huo Yaoyuan
c0fe91a84c Merge branch 'master' into sharpen 2019-11-26 18:21:50 +08:00
Dean Herbert
709ec1404f Centralise End/StartTime retrieval to extension method 2019-11-25 19:09:14 +09:00
iiSaLMaN
1e24ee7956 Remove ClearComboColours() 2019-11-24 02:07:56 +03:00
Dean Herbert
4e53bca8dd Simplify tests 2019-11-21 18:50:38 +09:00
Huo Yaoyuan
374ef6ff83 Merge branch 'master' into sharpen 2019-11-20 17:30:58 +08:00
Huo Yaoyuan
4d1513cef6 Sadly, xmldoc doesn't support tuple elements. 2019-11-17 21:01:56 +08:00
Huo Yaoyuan
b1b234c6fb Use paramref. 2019-11-17 20:49:36 +08:00
Huo Yaoyuan
f05b83d7d4 Use typeparamref. 2019-11-17 20:48:23 +08:00
Dean Herbert
0e587cb9f5 Merge branch 'master' into fix-duplicate-online-ids 2019-11-15 10:18:53 +09:00
Dean Herbert
6d54846462 Null online id on lookup failure 2019-11-15 10:18:47 +09:00
Dean Herbert
12243aaa9a Dedupe .osu files with same hash in same set 2019-11-14 19:38:20 +09:00
Dean Herbert
fbf81207d4 Don't assign server-fetched online id if it was assigned elsewhere 2019-11-14 18:55:12 +09:00
Dean Herbert
1bc0eae2a6 Fix beatmap online retrieval response running incorrectly scheduled 2019-11-14 18:53:45 +09:00
Dean Herbert
81033e1fdf Add extra logging 2019-11-14 18:52:07 +09:00
Huo Yaoyuan
dcfa98414f Use ??=. 2019-11-12 19:56:51 +08:00
Huo Yaoyuan
8a1b70513c No this. qualification. 2019-11-12 19:55:29 +08:00
Huo Yaoyuan
31cc0d13da Use 'out var'. 2019-11-12 19:55:26 +08:00
Dean Herbert
758c304d92
Merge branch 'master' into fallback-to-skin-combo-colours 2019-11-12 19:00:05 +09:00
Huo Yaoyuan
e9b8cbb516 Apply other styles. 2019-11-11 20:27:04 +08:00
Huo Yaoyuan
ccc8aa6fa4 Apply brace style. 2019-11-11 20:13:13 +08:00
iiSaLMaN
cee16e9419 Merge remote-tracking branch 'refs/remotes/upstream/master' into fallback-to-skin-combo-colours 2019-11-07 19:11:29 +03:00
iiSaLMaN
808543885f Change ComboColours type to IReadOnlyList<Color4>
Also exposes functions to modify the internal list (AddComboColours, ClearComboColours)
2019-11-07 15:54:30 +03:00
Dean Herbert
143f316cbe
Merge branch 'master' into fix-network-stalls 2019-11-06 17:54:08 +09:00
Dan Balasescu
b5a8bbaa60
Merge branch 'master' into editor-timing-screen 2019-11-06 12:02:00 +09:00
Dean Herbert
ddd58ea3da Use LongRunningLoad on network load components 2019-11-01 19:40:45 +09:00
Dean Herbert
0cd912fcd3 Cover all non-APIAccess APIRequest calls with exception handling 2019-10-31 15:04:13 +09:00
Dean Herbert
5899bbd8a6 Fix merge regressions 2019-10-30 18:45:50 +09:00
Dean Herbert
93076ad6a1
Merge branch 'master' into editor-timing-screen 2019-10-30 18:42:20 +09:00
smoogipoo
cf2d885099 Fix control points being flushed too late 2019-10-30 18:02:18 +09:00
Dan Balasescu
514c9f1eef
Merge branch 'master' into bindable-control-points 2019-10-30 16:20:54 +09:00
Dan Balasescu
ced6042b3e
Use internal type name 2019-10-30 15:51:09 +09:00
Dean Herbert
1a4817879e Fix precision changes in legacy control point types 2019-10-28 19:10:39 +09:00
Dean Herbert
090881cf6f Add default bindable values 2019-10-28 16:23:43 +09:00
Dean Herbert
8f87957c70 Make all control point attributes bindable
Properties are left intact for compatibility reasons.
2019-10-28 16:23:43 +09:00
Dean Herbert
43ad4a3a3c Tidy up string output 2019-10-28 12:31:38 +09:00
Dean Herbert
8069674824 Merge remote-tracking branch 'upstream/master' into bindable-control-points 2019-10-28 11:52:04 +09:00
Dean Herbert
45da22afe9 Add xmldoc and combine GroupAt / CreateGroup 2019-10-28 11:40:33 +09:00
Dean Herbert
2a6b3fd67c Disallow inserting a group if one already exists with the current time value 2019-10-28 11:40:10 +09:00
Dean Herbert
59d983b66e Allow binding to ControlPointInfo's Groups 2019-10-28 11:39:53 +09:00
Dean Herbert
10033239c7 Allow binding to ControlPointGroup's ControlPoints 2019-10-28 11:39:17 +09:00
Dean Herbert
814b520e5e Avoid potential mis-cast in comparison 2019-10-27 11:35:45 +09:00
Dean Herbert
4290a71f44 Add special case for timing points
Timing points can't fallback to defaults and must be added at least once.
2019-10-26 11:38:05 +09:00
Dean Herbert
7502b64541 Merge branch 'control-point-grouping' into no-auto-gen 2019-10-26 10:35:34 +09:00
Dean Herbert
d6a49b9e93 Add back autogeneration rules
Will be removed in https://github.com/ppy/osu/pull/6604
2019-10-26 10:25:37 +09:00
Dean Herbert
7100319858 Fix incorrect control point retrieval in non-lookup cases 2019-10-26 08:31:41 +09:00
Dean Herbert
b52be3d639 Merge branch 'control-point-grouping' into no-auto-gen 2019-10-26 01:20:08 +09:00
Dean Herbert
d25f7f4c27 Correctly clear other lists 2019-10-26 01:19:23 +09:00
Dean Herbert
c031aeb14c Fix inspection 2019-10-26 00:06:05 +09:00
Dean Herbert
eefa411182 Merge branch 'control-point-grouping' into no-auto-gen 2019-10-25 23:15:25 +09:00
Dean Herbert
d4fed43be7 Merge branch 'equivalent-to' into control-point-grouping 2019-10-25 23:15:15 +09:00
Dean Herbert
e39016bf01 Fix known non-nulls 2019-10-25 20:04:27 +09:00
Dean Herbert
8baf569f59 Remove necessity of AutoGenerated flag 2019-10-25 19:58:42 +09:00
Dean Herbert
e987db37ec Add grouping of ControlPoints 2019-10-25 19:52:02 +09:00
Dean Herbert
e2f2638212 Replace local Equatable implementations with abstract EquivalentTo 2019-10-25 19:44:28 +09:00
iiSaLMaN
405ab07800 Check equality by ID -> OnlineBeatmapSetID -> Hash -> ReferenceEquals 2019-10-17 01:18:29 +03:00
iiSaLMaN
14c72f85fa Fix incorrect beatmap set info equality check on non-online set info 2019-10-15 23:40:48 +03:00
iiSaLMaN
5e3f0f6c95 Return default combo colours if none provided 2019-10-09 21:08:07 +03:00
Bartłomiej Dach
7c2c537bc9 Allow fallback decoder overwrite
To fix the runtime crashes in difficulty calculation components, remove
the check for pre-existing fallback registration along with
the exception. The xmldoc for the registration function has been
extended to make users aware of possible consequences of calling it.
2019-10-04 18:20:20 +02:00
smoogipoo
ffde389641 Add difficulty calculator beatmap decoder fallback 2019-10-04 13:28:32 +09:00
Dean Herbert
6268bbcfc8
Merge branch 'master' into beatmap-parsing-fallback-v2 2019-10-03 15:12:21 +08:00
smoogipoo
cc533e8fe4 Remove BindableBeatmap 2019-10-01 17:24:47 +09:00
smoogipoo
04ac414249 Fix memory leaks due to audio track recycle order 2019-10-01 13:49:09 +09:00
smoogipoo
45f2bcc440 Fix combo bindings not being bound to nested hitobjects 2019-09-26 17:39:19 +09:00
Dean Herbert
a06cb54732
Merge branch 'master' into beatmap-parsing-fallback-v2 2019-09-20 15:28:08 +09:00
Dean Herbert
cffee1fd5e Fix imported beatmap paths not correctly matching files 2019-09-19 20:02:45 +09:00
Dean Herbert
92556db9cd Add query-based filter modes to song select search field 2019-09-19 02:48:28 +09:00
Bartłomiej Dach
dd9f620c23 Fix misleading xmldoc 2019-09-15 01:28:07 +02:00
Bartłomiej Dach
86588778b1 Implement fallback decoder registration
After the preparatory introduction of LineBufferedReader, it is now
possible to introduce registration of fallback decoders that won't drop
input supplied in the first line of the file.

A fallback decoder is used when the magic in the first line of the file
does not match any of the other known decoders. In such a case,
the fallback decoder is constructed and provided a LineBufferedReader
instance. The process of matching magic only peeks the first non-empty
line, so it is available for re-reading in Decode() using ReadLine().

There can be only one fallback decoder per type; a second attempt of
registering a fallback will result in an exception to avoid bugs.

To address the issue of parsing failing on badly or non-headered files,
set the legacy decoders for Beatmaps and Storyboards as the fallbacks.

Due to non-trivial logic, several new, passing unit tests with possible
edge cases also included.
2019-09-15 01:28:07 +02:00
Bartłomiej Dach
11eda44d34 Migrate decoding to line-buffered reader
Migrate all usages of StreamReader in the context of decoding beatmaps,
storyboards or skins to the new LineBufferedReader.
2019-09-15 01:28:07 +02:00
Dean Herbert
65aa7b2016 Recreate beatmap video on each consumption
Should not be shared over multiple usages
2019-09-14 00:07:06 +09:00
Andrei Zavatski
437e121056 Merge remote-tracking branch 'refs/remotes/ppy/master' into beatmap-video 2019-09-13 13:39:58 +03:00
Dean Herbert
b80a8296cd Fix unavailable rulesets crashing at song select 2019-09-04 20:28:52 +09:00
Dean Herbert
043034a6ce Merge remote-tracking branch 'upstream/master' into beatmapset-genre-language 2019-09-02 13:45:25 +09:00
Andrei Zavatski
94512fea8e Apply naming suggestions 2019-08-31 16:20:33 +03:00
Andrei Zavatski
6e5cb8a318 implement video parsing 2019-08-30 23:19:34 +03:00
Dean Herbert
84e4748268 Remove duplicate getAnimation function and improve namespacing 2019-08-30 12:59:58 +09:00
Dean Herbert
dc1046bf0c Merge remote-tracking branch 'upstream/master' into add-ruleset-legacy-skin 2019-08-30 12:53:05 +09:00
smoogipoo
ae0a5504d7 Revert unnecessary change 2019-08-29 19:43:33 +09:00
smoogipoo
6ab2b20c70 Add an interface for working beatmaps 2019-08-29 19:38:44 +09:00
StanR
68ee7346b2 Remove usings 2019-08-29 12:49:44 +03:00
StanR
d303083179 Update to match api 2019-08-29 12:29:31 +03:00
Dean Herbert
98626018fd
Encapsulate editor hitobject additions/removals (#5878)
Encapsulate editor hitobject additions/removals
2019-08-29 18:20:24 +09:00
StanR
3347ee8170 Merge branch 'master' into beatmapset-genre-language 2019-08-29 09:57:53 +03:00
Dean Herbert
c6e757fdae Remove redundant qualifier 2019-08-28 22:11:23 +09:00
Dean Herbert
f6ad95018a Centralise default beat length specification 2019-08-28 20:22:16 +09:00
smoogipoo
348d88846d Add IBeatmap<T> interface for typed hitobject retrieval 2019-08-28 20:19:22 +09:00
Dean Herbert
01aede3e29 Add comprehensive skin fallback integration testing 2019-08-28 19:57:17 +09:00
Dean Herbert
66223b9954
Merge branch 'master' into allow-fallback-to-samples-without-bank 2019-08-27 14:44:16 +09:00
Dean Herbert
289bd8e6b0 Don't return DefaultSkin on beatmap skin parsing failure 2019-08-26 14:25:35 +09:00
Dean Herbert
1d34124667 Revert all DifficultyIcon changes 2019-08-25 11:56:07 +09:00
Dean Herbert
a19a9b90ed Simplify group filter display 2019-08-25 11:39:26 +09:00
iiSaLMaN
af4adb6339 Add xmldoc 2019-08-24 09:43:55 +03:00
iiSaLMaN
f6feef6b56 Remove redundant using directive 2019-08-24 00:33:14 +03:00
iiSaLMaN
83b6e0f30c Implement grouped difficulty icon 2019-08-23 23:36:23 +03:00
iiSaLMaN
d4236c574f Allow difficulty icon to be updateable 2019-08-23 23:30:54 +03:00
iiSaLMaN
f639df849f Allow for difficulty icon to contain content 2019-08-23 23:11:36 +03:00
iiSaLMaN
7b04fb1690 StoryboardSample -> StoryboardSampleInfo 2019-08-23 14:54:39 +03:00
Dean Herbert
48716f8f2b Update framework 2019-08-21 13:29:50 +09:00
Ganendra Afrasya
7143497441 Match up tooltip background color with OsuTooltipContainer 2019-08-19 10:32:01 +07:00
Dean Herbert
ecc04baf14 Merge branch 'refactor-difficulty-colours' into difficulty-icon-tooltip 2019-08-17 15:35:28 +09:00
Dean Herbert
87dc6499fa Fix json decoding being a bit too eager to consume 2019-08-17 15:34:02 +09:00
Dean Herbert
097763bb1c Add auto size duration 2019-08-17 15:29:39 +09:00
Dean Herbert
50046d5f69 Use new tooltip style 2019-08-17 15:20:27 +09:00
Dean Herbert
3dc81bdad5 Merge branch 'refactor-difficulty-colours' into difficulty-icon-tooltip 2019-08-17 15:19:46 +09:00
Dean Herbert
4fa9abeece Replace DifficultyColouredContainer with a more scalable solution 2019-08-17 15:16:24 +09:00
Dean Herbert
f355cff8bc Apply reviews 2019-08-15 12:11:54 +09:00
Dean Herbert
7e74953784 Merge remote-tracking branch 'upstream/master' into difficulty-icon-tooltip 2019-08-15 11:54:59 +09:00
Dean Herbert
ff4b271f64 Add extra quotations around output 2019-08-12 01:42:05 +09:00
Dean Herbert
ce62f6b56e ToString should never return null 2019-08-12 01:40:11 +09:00
Unknown
cc4ee2df05 add ToString() override to Beatmap class 2019-08-11 16:41:56 +02:00
Dean Herbert
dbb3b583cf
Log error for invalid beatmap/storyboard events instead of thro… (#5611)
Log error for invalid beatmap/storyboard events instead of throwing

Co-authored-by: Dan Balasescu <smoogipoo@smgi.me>
2019-08-09 12:56:47 +09:00
Dean Herbert
7e9c100c9b Apply new resharper refactors 2019-08-09 12:29:33 +09:00
smoogipoo
ac2060f1cf Throw exceptions and let LegacyDecoder handle them 2019-08-08 14:44:04 +09:00
Dan Balasescu
54ee0cabd8
Merge branch 'master' into beatmap-events 2019-08-08 14:25:41 +09:00
Dean Herbert
a2e3ab6463
Merge branch 'master' into add-bindable-for-break-times 2019-08-08 10:13:14 +09:00
iiSaLMaN
ba269a49ee Expose break fade duration and add it in the calculation 2019-08-07 16:59:35 +03:00
David Zhao
bde89adcb7 show exception message 2019-08-07 19:45:29 +09:00
David Zhao
b8ccba02f2 Log to runtime instead 2019-08-07 19:33:54 +09:00
David Zhao
15a592e25e Just assert doesn't throw and don't catch at LegacyDecoder 2019-08-07 19:25:40 +09:00
David Zhao
da15e19912 return on storyboard side 2019-08-07 18:40:58 +09:00
David Zhao
7bcec31ea3 mention that the event was the type 2019-08-07 17:08:41 +09:00
David Zhao
669c2462ec Don't consider the type 2019-08-07 16:25:38 +09:00
David Zhao
66b02c0283 log type as well 2019-08-06 12:27:10 +09:00
David Zhao
cd6fe91882 Log error for invalid events 2019-08-06 10:05:21 +09:00