smoogipoo
abf3f341b7
Merge remote-tracking branch 'refs/remotes/origin/master' into legacy-beatmap-saving
2019-12-13 19:01:25 +09: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
Huo Yaoyuan
31cc0d13da
Use 'out var'.
2019-11-12 19:55:26 +08: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
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
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
smoogipoo
ac2060f1cf
Throw exceptions and let LegacyDecoder handle them
2019-08-08 14:44:04 +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
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
612db31c38
Apply newline additions
2019-04-01 12:16:32 +09:00
Dan Balasescu
e45c08ad23
Adjust comment
2019-03-29 14:02:19 +09:00
Dean Herbert
92184adef5
Add stable sorting of storyboard elements
2019-03-26 16:37:52 +09:00
Dean Herbert
8617aaa2a7
Update licence header (and remove year)
2019-01-24 17:43:03 +09:00
smoogipoo
f27bd3ef3e
OpenTK -> osuTK
2018-11-20 17:14:59 +09:00
HoLLy
710b0a4664
Remove unnecessary PathSanitise call
2018-10-12 15:30:24 +02:00
smoogipoo
df84889646
Handle invalid origins as Anchor.TopLeft
2018-08-22 14:50:03 +09:00
smoogipoo
541c4daa81
Use ordinal string comparison in hot paths
2018-08-21 11:10:54 +09:00
smoogipoo
e360985d73
Replace variables into the entire line
2018-08-14 18:15:09 +09:00
morguldir
6c861a1638
Strip comments from everything except metadata
2018-07-16 01:04:41 +02:00
Dean Herbert
32a74f95a5
Normalize all the line endings
2018-04-13 18:26:38 +09:00
Dean Herbert
e43de68ad3
Move colour parsing to LegacyDecoder
2018-03-13 19:13:50 +09:00
Dean Herbert
217dd2ecdc
Initial push for better decoders
2018-03-09 21:24:15 +09:00
james58899
fa800f0977
fix storyboard path
2018-01-23 18:18:54 +08:00
Dean Herbert
4c0259a040
Merge branch 'master' into fix-storyboard-variables
2018-01-09 11:50:03 +09:00
Dean Herbert
37d393bca0
Update licence headers
2018-01-05 20:21:19 +09:00
james58899
0158246ba1
AppVeyor
2018-01-04 19:23:00 +08:00
james58899
dcc4e863ab
move variables to StoryboardDecoder
2018-01-04 19:04:52 +08:00
james58899
89fe567496
use FileSafety.PathSanitise
2018-01-03 17:57:24 +08:00
Aergwyn
cc76c58f5f
fall back to .osu file for storyboard if no .osb file is present
...
+ CI fixes
2017-12-02 16:05:39 +01:00
Aergwyn
c466296b14
reverted split at Decoder, moved logic down
...
I'm done experimenting, sorry
- `Decoder` only returns a "Beatmap"`Decoder` now
- "Storyboard"`Decoder` is retrieved from a "Beatmap"`Decoder`
- moved parse methods down in the hierarchy where I forgot to do that
- renamed `OsuLegacyDecoderTest` to `LegacyDecoderTest`
2017-12-01 22:05:01 +01:00
Aergwyn
a49f3479a2
Split retrieving of beatmap and storyboard decoder
...
Storyboard works again. Not satisfied with the solution though.
2017-12-01 19:11:52 +01:00
Aergwyn
db50ad794e
CI adjustments
...
- removing unnecessary `using`s
- name Fields/Methods according to rules
- removing unnecessary initializations
2017-12-01 17:58:11 +01:00
Aergwyn
806c0e3b26
restructured OsuLegacyDecoder into LegacyDecoder
...
Beatmap works, Storyboard not...
2017-12-01 17:43:33 +01:00