1
0
mirror of https://github.com/ppy/osu.git synced 2024-09-23 14:07:24 +08:00
Commit Graph

249 Commits

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