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
Dean Herbert
69c2723d90
Merge branch 'master' into refactor-conversion-test
2019-08-02 05:34:05 +02:00
smoogipoo
e2420af10c
Fix applying mods to the wrong beatmap
2019-08-01 13:37:52 +09:00
smoogipoo
0108700793
Make beatmap conversion test use WorkingBeatmap
2019-08-01 12:44:10 +09:00
smoogipoo
bc80fa11bb
Mode IApplicableToBeatmap application to WorkingBeatmap
2019-08-01 12:41:46 +09:00
Dean Herbert
53ecb2ae82
Reduce notification span during beatmap imports
2019-07-26 13:48:29 +09:00
Andrei Zavatski
2a17ed5e18
Merge remote-tracking branch 'refs/remotes/ppy/master' into favourite-beatmap
2019-07-22 14:32:37 +03:00
smoogipoo
a631aac664
Fix workingbeatmap's disposal potentially null-refing
2019-07-22 15:01:01 +09:00
Andrei Zavatski
de8ac9a428
Simple implementation
2019-07-21 21:41:07 +03:00
StanR
1e04fcc6b5
Apply fixes
2019-07-11 17:47:09 +03:00
Dean Herbert
72da615dde
Fix track transfer not running when beatmap is retrieved from c… ( #5296 )
...
Fix track transfer not running when beatmap is retrieved from cache
2019-07-11 22:53:07 +09:00
StanR
cd7c03c13a
Add genre and language sections to beatmapset overlay
2019-07-11 16:44:48 +03:00
iiSaLMaN
e73f22eff8
Convert length retrieved from online to milliseconds
2019-07-09 17:53:34 +03:00
iiSaLMaN
1485c273ab
Describe the xmldoc mo
2019-07-09 17:31:15 +03:00
iiSaLMaN
f3329f4d79
Use a more readable code for calculating length
2019-07-09 17:22:21 +03:00
iiSaLMaN
11ef65e3e2
Remove unnecessary extension
2019-07-08 11:57:02 +03:00
iiSaLMaN
b62e69d170
Calculate length inside BeatmapManager
2019-07-08 11:56:48 +03:00
Dean Herbert
16c993579b
Fix track transfer not running when beatmap is retrieved from cache
2019-07-08 17:12:34 +09:00
iiSaLMaN
129899f419
Add a BPM property in BeatmapInfo
2019-07-08 10:43:35 +03:00
iiSaLMaN
2d0c924bdf
Add xmldoc for MaxStarDifficulty and MaxLength
2019-07-08 09:35:12 +03:00
iiSaLMaN
79ddb8d5d3
Change to a more convenient xmldoc
2019-07-08 09:23:01 +03:00
iiSaLMaN
90d5484818
Return BPM back to OnlineInfo
...
Revert commit of "Move BPM out of OnlineInfo"
2019-07-08 09:10:41 +03:00
iiSaLMaN
729f0901f7
Move Length out of OnlineInfo
2019-07-07 20:25:36 +03:00
iiSaLMaN
3ea9629daf
Move BPM out of OnlineInfo
2019-07-07 20:11:44 +03:00
iiSaLMaN
b4ef64fa61
Add sorting by Length
2019-07-07 18:26:56 +03:00
iiSaLMaN
65c8249c94
Add beatmap extension for calculating length
2019-07-07 18:25:52 +03:00
iiSaLMaN
188c80374e
Add sorting by BPM
2019-07-07 18:14:23 +03:00
Salman Ahmed
040dbfd2c1
Merge branch 'master' into remove-unnecessary-fading
2019-07-06 15:59:44 +03:00
iiSaLMaN
6fd3ad5c1d
Remove unnecessary fading
2019-07-06 12:10:30 +03:00
Dean Herbert
598b0d668b
Merge branch 'master' into import-stable-scores
2019-07-05 15:54:33 +09:00
Dean Herbert
8346c50ce1
Rename delete method and improve xmldoc
2019-07-05 13:55:25 +09:00
Dean Herbert
32bb963393
Lock WorkingBeatmap cache to avoid threading issues
2019-07-04 14:33:00 +09:00
Dean Herbert
7575047db8
Merge branch 'master' into import-stable-scores
2019-07-04 01:00:42 +09:00
Dean Herbert
8e0b5f1622
Fix weird merge conflict
2019-07-02 23:21:13 +09:00
Dan Balasescu
2fafe9a651
Merge branch 'master' into async-beatmap-load
2019-07-02 23:19:10 +09:30
Dean Herbert
089eadb008
Add weak WorkingBeatmap cache ( #5163 )
...
Add weak WorkingBeatmap cache
Co-authored-by: Dan Balasescu <1329837+smoogipoo@users.noreply.github.com>
2019-07-02 22:40:47 +09:00
Dean Herbert
e7a7f2f660
Add statistic for count of alive WorkingBeatmaps
2019-07-02 22:39:49 +09:00
Dean Herbert
9e33fb35e9
Fix typo
2019-07-02 22:26:08 +09:00
Dean Herbert
a6acc1f99f
Catch exception and return null for safety
...
.
2019-07-02 22:26:08 +09:00
Dean Herbert
0b66f13902
Add todo about beatmap load cancellation
2019-07-02 22:22:33 +09:00
Dean Herbert
a26b14a4f8
Move finaliser inside disposal region
2019-07-02 22:21:56 +09:00
Dean Herbert
31b1480263
Merge branch 'master' into async-beatmap-load
2019-07-02 20:44:53 +09:00
Dean Herbert
60ea3d4e1a
Fix skinning support for combobreak
2019-06-30 21:58:30 +09:00
HoLLy
12350d18b5
Don't remove imported archives by default
2019-06-27 14:41:11 +02:00
HoLLy
55216dffb7
Merge remote-tracking branch 'origin/master' into import-stable-scores
2019-06-27 14:07:17 +02:00
naoey
61260cf599
Hand off comparison logic for database query to implementors
...
Equals overrides are not used in EF queries without running the comaprison locally instead of on the database, so to preserve that the comparison logic is instead implemented on a per manager basis.
2019-06-27 15:32:27 +05:30
Dean Herbert
ef384b8667
Add simple (weak) WorkingBeatmap cache
2019-06-27 14:09:09 +09:00
Dean Herbert
0bad86f6d9
Merge remote-tracking branch 'upstream/master' into async-beatmap-load
2019-06-27 13:58:59 +09:00