smoogipoo
8ae2a3696f
Apply platform universal offset at player level
2018-05-28 03:31:46 +09:00
smoogipoo
0f817d18d4
Add explanatory comment
2018-05-16 13:59:51 +09:00
smoogipoo
cf44357bdb
Use a stable sort for hitobjects
2018-05-16 13:30:48 +09:00
Adonais Romero González
06c6f55995
Apply offset to end times on legacy converter
2018-04-30 00:43:32 -07:00
Dean Herbert
b16e25c3e9
Add error handling on a per-line level in LegacyDecoder
...
Resolves #2306 .
2018-04-20 18:32:24 +09:00
Dean Herbert
32a74f95a5
Normalize all the line endings
2018-04-13 18:26:38 +09:00
Dean Herbert
ddba7254ca
Merge remote-tracking branch 'upstream/master' into linq
2018-04-03 13:05:08 +09:00
smoogipoo
fd9480cfb6
Handle timingpoint FormatException
2018-04-02 20:08:40 +09:00
smoogipoo
d24d81d8a9
De-pluralize some methods
2018-04-02 20:07:18 +09:00
Huo Yaoyuan
b842f682eb
Use Linq.Append and Prepend.
2018-04-02 12:06:34 +08:00
Dean Herbert
e39b7b8d35
Don't hard-crash when an unknown section is encountered in a legacy file
2018-03-22 12:58:02 +09:00
Dean Herbert
62e908e22c
Add default separator character
2018-03-19 20:06:44 +09:00
Dean Herbert
1d7be2ad0b
Fix incorrect variable name
2018-03-14 10:14:42 +09:00
Dean Herbert
16eab2eebf
Fix combo colours not working until now
2018-03-13 19:19:08 +09:00
Dean Herbert
e43de68ad3
Move colour parsing to LegacyDecoder
2018-03-13 19:13:50 +09:00
Dean Herbert
d6fa7d69d7
Add missing fonts section
2018-03-13 16:13:07 +09:00
Dean Herbert
1bcda4930e
Add back beatmap version set
2018-03-12 11:33:12 +09:00
Dean Herbert
217dd2ecdc
Initial push for better decoders
2018-03-09 21:24:15 +09:00
Dean Herbert
7b18e8a5ca
Merge branch 'master' into fix-taiko-conversion
2018-03-06 01:16:47 +09:00
smoogipoo
d44dc1a4f9
Fix SliderMultiplier/SliderTickRate parsing inaccuracy
2018-03-05 16:01:05 +09:00
Dean Herbert
e46f363fdc
Fix failing unit test
2018-03-04 22:46:50 +09:00
Dean Herbert
bc0bc8d459
Add legacy timing offsets
...
These have been in release builds since January, but implemented in a hacky way.
This brings them with a sane implementation.
2018-03-04 21:57:50 +09:00
Dean Herbert
572d3b1316
Move bpm clamping to TimingControlPoint, adjust range to 1-10000bpm
...
In line with stable editor restrictions
2018-02-28 22:53:28 +09:00
Dean Herbert
5b4fef0180
Add bare minimum sanity checking of beatmap input values to make broken maps load
...
Resolves ppy/osu#1988 .
2018-02-28 18:12:24 +09:00
Dean Herbert
968291c61e
Sort hitobjects imported from legacy beatmps
...
Apaprently some ranked maps contain unordered hitobjects. We probably never want to allow for this.
2018-02-28 18:11:28 +09:00
james58899
fa800f0977
fix storyboard path
2018-01-23 18:18:54 +08:00
Aergwyn
ae1adfd2f2
remove unnecessary empty lines
...
codefactor.io \(o.o)/
also one unnecessary semicolon
2018-01-12 19:30:34 +01:00
Dan Balasescu
86581b6451
Remove extra braces
2018-01-11 17:02:09 +09:00
james58899
fbffc8bb89
fix load storyboard in osu file
2018-01-10 18:55:04 +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
Dean Herbert
5026c7a95e
SoundControlPoint -> SampleControlPoint
2017-12-23 16:34:34 +09:00
smoogipoo
58859f2ffb
Rework registration/instantiation of decoders to not rely on reflection
2017-12-21 15:34:00 +09:00
smoogipoo
e8e5e8270b
Rename decoder
2017-12-21 14:19:37 +09:00
smoogipoo
bfa4f1a2c3
Apply changes in line with master changes
2017-12-21 13:59:03 +09:00
smoogipoo
c99ea32574
Merge branch 'master' into beatmap-serialization
2017-12-21 13:39:39 +09:00
smoogipoo
0e3b001b13
Make maps with storyboards decode correctly with OsuJsonDecoder
2017-12-07 10:37:51 +09:00
smoogipoo
ed5f7e5353
Make OsuJsonDecoder apply defaults similar to OsuLegacyDecoder
2017-12-06 16:28:34 +09:00
smoogipoo
d2dc7c8937
Add OsuJsonDecoder
2017-12-06 00:38:12 +09: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
Aergwyn
be018a63c6
remove unnecessary lines
2017-11-30 19:17:11 +01:00
Aergwyn
c16925059c
split parsing a beatmap and parsing a storyboard
2017-11-30 19:16:13 +01:00
Miterosan
b2e49c1e71
line can not be null in OsuLegacyDecoder.cs
2017-11-07 23:17:26 +01:00
Miterosan
13e75780d7
beatmap and stream can not be null in OsuLegacyDecoder.cs
2017-11-07 23:17:07 +01:00
Miterosan
1e6f1d07d2
line can not be null in OsuLegacyDecoder.cs
2017-11-07 23:16:42 +01:00
Miterosan
a8acea9cdb
stream can not be null in BeatmapDecoder.cs
2017-11-07 23:12:30 +01:00
Miterosan
8dc24a52a7
beatmap and line can not be null in OsuLegacyDecoder.cs
2017-11-07 23:11:33 +01:00
Miterosan
d27dced3af
beatmap and line can not be null in OsuLegacyDecoder.cs
2017-11-07 23:11:16 +01:00
Miterosan
34083baa4d
beatmap and line can not be null in OsuLegacyDecoder.cs
2017-11-07 23:11:04 +01:00
Miterosan
0287d3d7a0
beatmap and line can not be null in OsuLegacyDecoder.cs
2017-11-07 23:10:54 +01:00
Miterosan
cf296d4bb2
beatmap and line can not be null in OsuLegacyDecoder.cs
2017-11-07 23:10:41 +01:00
Miterosan
2f47b336e2
beatmap and line can not be null in OsuLegacyDecoder.cs
2017-11-07 23:10:30 +01:00
Miterosan
1f620886cb
beatmap and line can not be null in OsuLegacyDecoder.cs
2017-11-07 23:09:16 +01:00
Dean Herbert
5d5ea5fb2e
Fix all remaining db structure issues
2017-10-19 14:05:11 +09:00
Dean Herbert
cd722e4abb
Fix beatmap author being stored in two different places
2017-10-14 11:39:55 +09:00
smoogipoo
b8d2a04fe1
Only split beatmap lines twice
2017-10-10 19:24:24 +09:00
smoogipoo
ad344eb719
Use IsNullOrWhiteSpace instead of trimming
2017-10-10 19:21:38 +09:00
smoogipoo
29c2a29798
Fix trimming too early in OsuLegacyDecoder crashing storyboards
2017-10-09 18:47:12 +09:00
Bang Sunghwan
bd9f2db477
Trim line
2017-10-08 17:30:21 +09:00
Bang Sunghwan
6c5c734ff1
Trim end of line
...
Fix ArgumentOutOfRangeException when parsing http://osu.ppy.sh/osu/1004136
2017-10-08 09:42:09 +09:00
Damnae
bab3ef0669
Rename storyboard classes.
2017-09-13 11:22:24 +02:00
Damnae
58e65397b0
Add support for storyboards using numerical values.
2017-09-12 10:13:55 +02:00
Damnae
9eaa1cb5cd
Fix sprites not being visible when all their commands are inside loops.
2017-09-11 12:06:00 +02:00
Damnae
bc01d9a1b0
Animate Additive / FlipH and FlipV.
2017-09-09 15:41:56 +02:00
Damnae
12de737084
Merge branch 'master' into storyboards
...
# Conflicts:
# osu.Game/Beatmaps/Beatmap.cs
2017-09-08 21:46:34 +02:00
Damnae
6cde687d87
Fix V commands parsing.
2017-09-08 12:36:13 +02:00
Damnae
13322b4293
Improve compatibility with older storyboards.
2017-09-08 12:09:45 +02:00
Dean Herbert
a528173943
Ensure that WorkingBeatmap's Beatmap is never null
...
Also ensures some extra fields inside Beatmap have non-null defaults.
2017-09-08 19:05:14 +09:00
Damnae
e547416193
Storyboards implementation.
2017-09-08 09:08:52 +02:00
smoogipooo
6a7b410bc3
Make DifficultyControlPoint.SpeedMultiplier actually increase with an increasing speed. Fixes #1147
2017-08-21 11:58:54 +09:00
Dan Balasescu
243a6ca774
Update OsuLegacyDecoder.cs
2017-08-18 13:27:16 +09:00
Shane Woolcock
df683d9114
Fix multiple difficulty control points sharing the same time and thus confusing slider velocity calculations
2017-08-17 23:28:26 +09:30
MillhioreF
e216bfcf10
Recommended fixes (obsolete try/catch, fix infinite loop during variable parsing in a better way)
2017-08-13 00:40:05 -05:00
MillhioreF
f819ffce2b
Make the legacy decoder more resilient against leading linebreaks
2017-08-10 00:08:39 -05:00
MillhioreF
64d92c1557
Fix infinite loop when importing maps that have storyboard elements with '$' in the filename
2017-08-09 23:31:18 -05:00
MillhioreF
10321497ca
Add decoder entries for v3/4
2017-08-09 21:21:43 -05:00
MrTheMake
be3c7ec5f8
Added missing space
2017-08-02 16:17:33 +02:00
MrTheMake
79724e8018
Fix OsuLegacyDecoder's parser being NULL if no ruleset was specified
2017-08-02 16:05:09 +02:00
Dean Herbert
898a601098
Introduce a reference counting file store
2017-07-26 20:22:02 +09:00
Dean Herbert
fce580d717
Reshuffle namespaces
2017-07-26 13:22:46 +09:00
smoogipooo
223c75327f
Remove key/val in favor of local variables + method call.
2017-05-30 20:59:53 +09:00
smoogipooo
5b5c2e4717
Back to using val...
2017-05-30 20:37:30 +09:00
smoogipooo
0728aea6a4
Fixes + cleanup.
2017-05-30 20:26:39 +09:00
smoogipooo
93a33be596
val -> value, val -> line (in cases where a key is not used).
2017-05-30 19:52:43 +09:00
smoogipooo
0175b91927
Cleanups.
2017-05-30 19:52:21 +09:00
Dan Balasescu
94ae730a20
Merge branch 'master' into storyboards
2017-05-29 17:49:51 +09:00
smoogipooo
6101fe98e1
Always ApplyDefaults after parsing beatmaps to make sure hit objects are in their most loaded state.
2017-05-29 12:10:29 +09:00
ColdVolcano
e46e1d96a7
Move logic to handleEvent
2017-05-27 00:20:19 -05:00
ColdVolcano
a523dfc388
Allow variables of variables
...
Some storyboards like to do tricky stuff
2017-05-27 00:13:46 -05:00
ColdVolcano
0b770d1225
Allow for variables in storyboards
2017-05-26 23:55:34 -05:00
smoogipooo
836bf930a0
More cleanups.
2017-05-23 15:29:38 +09:00
smoogipooo
2344f37a3c
Always add TimingChange control points.
2017-05-23 15:26:07 +09:00
smoogipooo
002a0e99a2
Use SortedList + BinarySearch to find control points at time values.
2017-05-23 15:20:32 +09:00
smoogipooo
3cdfd2eef5
Split ControlPoint into different types.
...
# Conflicts:
# osu.Game.Rulesets.Mania/UI/Column.cs
2017-05-23 14:03:40 +09:00
smoogipooo
0a0139aded
Remove the concept of beatmap events, rename BreakEvent -> BreakPeriod.
2017-05-22 10:12:33 +09:00
smoogipooo
74c23ff6d8
Add base for event parsing code.
2017-05-17 20:46:23 +09:00
Huo Yaoyuan
dff05bec79
Use readonly fields.
2017-05-08 18:56:04 +08:00
smoogipooo
2af9bf1423
Prefix everything inside Rulesets.Objects.Legacy with "Convert" to avoid naming clashes with Ruleset projects.
2017-04-22 21:33:11 +09:00
Dean Herbert
fbd26a1d5e
Mode -> Ruleset.
2017-04-18 16:05:58 +09:00
smoogipooo
786446354e
Fix post-rebase errors.
2017-04-18 09:00:53 +09:00
smoogipooo
09208adf81
Re-implement legacy hit object conversion.
2017-04-18 08:58:21 +09:00
Dean Herbert
a4e2f34ee7
Make a RulesetDatabase.
2017-04-17 17:43:48 +09:00
smoogipooo
0333e1a050
Remove unused usings.
2017-04-15 05:57:18 +09:00
smoogipooo
a89af273be
Make BeatmapInfo expose Ruleset instead of PlayMode.
2017-04-15 05:01:36 +09:00
Dean Herbert
1942ef9e8f
Fix merge fail.
2017-04-06 16:06:02 +09:00
smoogipooo
982dbb5bba
Cleanup + bow down to resharper.
2017-04-06 12:27:35 +09:00
smoogipooo
c65ab5b6f1
General cleanup.
2017-04-06 11:56:19 +09:00
smoogipooo
eb82a4c090
Back to using SampleInfo + fix taiko beatmap conversion.
2017-04-06 11:41:16 +09:00
smoogipooo
e903241c7b
Implement sample + addition sample reading from hit objects.
2017-04-06 09:43:47 +09:00
smoogipooo
1ef465716d
Proper legacy timing point parsing.
2017-04-05 21:59:40 +09:00
smoogipooo
2d8239a3f7
Re-implement the SampleBank/Sample structure. No parsing support yet.
2017-04-05 21:34:28 +09:00
smoogipooo
1d4a371ded
A few general fixes.
2017-04-04 14:38:50 +09:00
smoogipooo
4b424263ce
Fully parse control points.
2017-04-04 13:13:27 +09:00
smoogipooo
2e80ecfda8
Don't need explicit null value.
2017-04-03 20:33:10 +09:00
smoogipooo
19b5555ef2
Slightly clean up archive readers + decoders. Read beatmap version into BeatmapInfo.
2017-04-03 20:26:46 +09:00
smoogipooo
a272675705
Parse time signature from legacy beatmap control points.
2017-03-21 21:18:08 +09:00
Dean Herbert
6c12da54f1
Merge pull request #499 from smoogipooo/legacy_beatmap_flag
...
Add legacy beatmap flag.
2017-03-19 12:39:41 +09:00
smoogipooo
862c4c408f
Add legacy beatmap flag.
2017-03-17 14:24:46 +09:00
smoogipooo
a06c195e1f
Add reading of KiaiMode/OmitFirstBarLine from legacy control points.
2017-03-17 13:23:39 +09:00
smoogipooo
e0a8c3b1e5
Rename BaseDifficulty -> Difficulty / BeatmapDifficulty.
2017-03-16 23:18:02 +09:00
smoogipooo
5137338c7c
Replace List<ControlPoint> with TimingInfo in Beatmap.
2017-03-16 17:11:24 +09:00
smoogipooo
7141bc86d3
Rework beatmap post-processing into HitRenderer.
2017-03-14 17:01:21 +09:00
smoogipooo
e42c790df2
Refactorings.
2017-03-14 15:45:27 +09:00
smoogipooo
072eea82ea
Fix up combo colours + a few nullrefs.
2017-03-14 14:50:12 +09:00
smoogipooo
f50e0bbf3c
Rework/rewrite beatmap parsing to parse to base hit objects, which mode-specific beatmap converters can then use.
2017-03-13 19:15:25 +09:00
Dean Herbert
0cad5d7d41
Fix most warnings.
2017-03-07 13:05:57 +09:00
Thomas Müller
a5dfa7ab06
Remove unnecessary using statements
2017-02-23 21:38:10 +01:00
Damnae
a504c73f33
Load beatmap data from an optional osb file.
2017-02-09 15:19:09 +01:00
Dean Herbert
6b011a50d2
Naming standardisation and enforcing.
2017-02-07 16:20:36 +09:00
Dean Herbert
50bd80cb0c
Update and standardise license headers.
2017-02-07 14:27:41 +09:00
Dean Herbert
756fd78a88
Fix incorrect line endings.
2017-02-07 13:52:19 +09:00
Dean Herbert
ee0b6be84b
Merge pull request #266 from kizayoi/master
...
Add support for old beatmaps
2017-01-16 16:02:22 +08:00
Drew DeVault
fa007e632d
Refactor colors to palette based design
2017-01-12 16:38:27 -05:00
Drew DeVault
70ecf48ca7
Add central color class
...
I didn't move _every_ color here, but most of them. The ones I left
behind are mostly just shades of gray.
Closes #126
2017-01-09 17:20:31 -05:00
柯十六夜
acfbf2e32e
Add prefix Online to BeatmapID and BeatmapSetID
2017-01-09 21:05:01 +08:00
柯十六夜
e578e50721
Add support for old beatmaps
2016-12-21 16:29:57 +08:00
Dean Herbert
f356640cb7
Add missing licence headers.
2016-12-06 19:07:15 +09:00
Dean Herbert
a506e91b7c
Fix compile issues.
2016-11-28 23:05:05 +09:00
Dean Herbert
49470318f2
Remove silly static using statement.
2016-11-28 22:48:28 +09:00
Dean Herbert
187a8bbfa7
Don't store beatmap reference in hitobjects.
2016-11-28 18:45:50 +09:00
Dean Herbert
bf63be0602
Add better slider duration calculation using bpm and difficulty information.
2016-11-28 15:31:54 +09:00
Dean Herbert
a5651427f6
Add basic ControlPoint parsing.
2016-11-28 15:12:11 +09:00
Dean Herbert
d3f810f72f
Introduce concept of HitObjectParsers, fix tests and stop using reflection (unreliable due to lazy loading).
2016-11-14 22:03:39 +09:00
Dean Herbert
06f4f93918
Move play modes to Modes namespace.
2016-11-14 18:03:20 +09:00
Dean Herbert
0f4538f69f
Rename GameModes namespace to Screens.
2016-11-14 17:23:33 +09:00
Drew DeVault
fe9034323b
Get the game running, though not perfectly
2016-11-10 16:42:29 -05:00
Dean Herbert
da18e2d4f6
Fix off-by-one colour retrieval.
2016-11-04 15:43:53 +09:00
Dean Herbert
b72e9221fd
Only add valid hitobjects.
2016-11-04 15:43:53 +09:00
Dean Herbert
b40ccccbe4
Add HitObject colours back in the mix.
2016-11-04 15:43:53 +09:00
Drew DeVault
8d4a211419
Fix initialization of BeatmapInfo
2016-10-24 11:39:18 -04:00
Drew DeVault
d21b7f0050
Fix up song select based on upstream changes
2016-10-24 11:39:18 -04:00
Drew DeVault
674f624bfc
Improve song selection layout, database loading
...
Also adds event that notifes the song select when a beatmap is added.
2016-10-24 11:39:11 -04:00
Drew DeVault
449f04c07b
Refactor the database code
2016-10-18 13:38:27 -04:00
John Leuenhagen
fedfb8a22a
Converted all .cs files to use CRLF line endings.
2016-10-13 23:33:58 -04:00
Drew DeVault
25d08c8e2c
Improve beatmap loading and hydration
2016-10-13 10:29:30 -04:00
Drew DeVault
deff5ad61e
Use @strings where appropriate
2016-10-13 12:19:10 +09:00
Drew DeVault
dd86e75ea7
Minor fixes
2016-10-13 12:19:06 +09:00
Drew DeVault
c7d12bc072
Remove unnecessary setters
2016-10-13 12:17:58 +09:00
Drew DeVault
880399f5a5
Fix casing on private properties
2016-10-13 12:17:52 +09:00
Drew DeVault
dc4bd48f29
Fix casing issues
...
Cheers @RemieRichards
2016-10-13 12:17:46 +09:00
Drew DeVault
7a4501323b
Decode beatmap colours
2016-10-13 12:17:35 +09:00
Drew DeVault
c0022f3515
Add more tests for legacy decoder
2016-10-13 12:17:31 +09:00
Drew DeVault
9b4bc3e36d
Implement most of the legacy beatmap decoder
...
Missing timing points, events, and hit object decoders remain to be
written
2016-10-13 12:17:03 +09:00
Drew DeVault
32ab8f97bb
Add more decoding (including full BeatmapMetadata)
2016-10-13 12:16:58 +09:00
Drew DeVault
2a3f047895
Start implementing legacy decoder
2016-10-13 12:16:48 +09:00
Drew DeVault
bc69aa1455
Initial support code for beatmap loading
2016-10-12 11:32:40 -04:00