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

1604 Commits

Author SHA1 Message Date
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