Dean Herbert
9ff6b3fcd3
Merge branch 'master' into editor-save-local-score-management
2023-07-06 12:28:44 +09:00
Dean Herbert
a0c3fa9c13
Move preconditions to realm migration step to simplify marker version logic
2023-07-04 17:53:53 +09:00
Dean Herbert
d74b1e148d
Make ScoreInfo.BeatmapInfo
nullable
2023-07-04 14:50:34 +09:00
Dan Balasescu
6822871dab
Move population of LegacyTotalScore to ScoreImporter
2023-06-29 17:21:24 +09:00
Dan Balasescu
1ca4e39fc3
Allow legacy scores to be displayed in "classic" scoring mode
2023-06-28 16:30:50 +09:00
Dan Balasescu
09bc8e45de
Refactoring
2023-06-28 16:14:32 +09:00
Dan Balasescu
e291dff5ad
Fix imported scores not getting LegacyTotalScore
2023-06-28 14:50:16 +09:00
Dan Balasescu
8e79510793
Add migration for total score conversion
2023-06-26 21:53:21 +09:00
Bartłomiej Dach
66ef199fa4
Revert nullability enable in Score
(and related changes)
...
Causes several knock-on inspections in `OsuGame` et al. Probably best
addressed in a separate pass, because treatment is mixed at best (some
places nullcheck, some expect non-null).
2023-06-24 15:35:07 +02:00
Dean Herbert
df5b389629
Manual fixes to reduce warnings to zero
2023-06-24 01:52:53 +09:00
Dean Herbert
0ab0c52ad5
Automated pass
2023-06-24 01:00:03 +09:00
Bartłomiej Dach
52412c673d
Bump replay version in encoder after Score V2 changes
...
One release too late, but this may help in the future if we need to
discern replays set with Score V2 from older lazer replays.
2023-06-09 14:49:49 +02:00
Dan Balasescu
76df11c398
Don't scale stable scores with the classic scoring mode
2023-06-08 21:38:10 +09:00
Dan Balasescu
facf7de053
Parse ScoreInfo.IsLegacyScore from replays
2023-06-08 21:38:10 +09:00
Dean Herbert
4e0f40bee5
Split out multiplier retrieval into a function and use a default multiplier for all rulesets
2023-05-30 14:20:26 +09:00
Dan Balasescu
510b8e4c78
Remove ScoreManager.Mode, handle per-use
2023-05-18 20:08:49 +09:00
Cootz
54f864463c
Merge branch 'master' into BitmapUpdatesOnScore
2023-03-16 13:54:47 +03:00
Dean Herbert
cb9b14b30f
Revert "Merge pull request #22741 from cdwcgt/do-not-fetch-deletePending"
...
This reverts commit 15c44a2817
, reversing
changes made to de2ab05e78
.
2023-03-16 19:48:36 +09:00
Cootz
556964eae0
Merge branch 'master' into BitmapUpdatesOnScore
2023-03-16 12:16:42 +03:00
cdwcgt
a705698ab6
beatmapset that already deletePending should not be fetched
2023-02-26 21:13:05 +09:00
PC
7e127dafe2
Update reference
2023-02-07 11:52:47 +03:00
Cootz
b00848e742
Fix realm error. Apply OriginalBeatmapHash
on import
2023-02-06 13:58:41 +03:00
Salman Ahmed
e6479b73de
Remove one more unused using directive
2023-01-09 23:43:35 +03:00
Salman Ahmed
f216d7264b
Improve missing beatmap failure logging on score import
2023-01-09 23:06:59 +03:00
Dan Balasescu
fb85eaee95
Add description for lazer score version 30000001
2022-12-14 18:30:33 +09:00
Dan Balasescu
ad7554cc7d
Allow keeping stream open after encoding scores
2022-12-13 16:15:14 +09:00
Dean Herbert
0372e38f57
Add nullability assertion to appease CI
2022-12-11 13:00:12 +09:00
Dan Balasescu
e00c075482
Fix incorrectly modified first lazer version
2022-12-08 11:30:18 +09:00
Dan Balasescu
df181acffe
Append lazer score data to .osr files
2022-12-07 12:12:32 +09:00
Dan Balasescu
7c0e99c5a8
Decode Geki/Katu from legacy taiko scores into LargeBonus
2022-09-07 00:12:34 +09:00
andy840119
8c2f4b48fc
Use debug.assert for better readable.
2022-07-03 19:27:56 +08:00
andy840119
0a1543c6e8
Use AsNonNull()
instead.
2022-07-02 19:48:32 +08:00
andy840119
c6d0f0f81b
pretend that the beatmap property will not be null.
...
Not really throw exception will be the better way?
2022-07-02 13:20:46 +08:00
Dan Balasescu
f8830c6850
Automated #nullable processing
2022-06-17 16:37:17 +09:00
Dean Herbert
a7554dcdf7
Use a constant for the early version timing offset
2022-03-24 16:43:41 +09:00
Dean Herbert
a7d5f2281c
Apply beatmap offsets to legacy replay frame handling
2022-03-24 16:16:40 +09:00
Bartłomiej Dach
36263b4dbf
Replace remaining manual online ID check with extension method
2022-03-03 23:09:56 +01:00
Dean Herbert
eb75a29b20
Use constant for maximum legacy ruleset id
2022-03-01 12:07:03 +09:00
Dean Herbert
52e50db6b9
Enable nullable
for LegacyScoreEncoder
2022-02-28 18:42:23 +09:00
Dean Herbert
723e96309a
Only convert non-legacy frames (and throw on conversion failure)
2022-02-28 18:42:23 +09:00
Dean Herbert
2e96f74c94
Allow LegacyScoreEncoder
to be used without a beatmap if frames are already legacy frames
2022-02-28 18:42:23 +09:00
Dean Herbert
5288eedd31
Update all usages of RulesetID
and Ruleset.ID
to use Ruleset.OnlineID
2022-01-27 15:38:03 +09:00
Dean Herbert
2b8706b6ce
Detach and reattach scores to make work
2022-01-12 17:00:16 +09:00
Dean Herbert
53792811b2
more fixes (almost compiles, except ruleset and manager)
2022-01-12 16:57:27 +09:00
Dean Herbert
aac2aa341c
Update some more incorrect types for primary key access/set
2022-01-12 16:57:27 +09:00
Dean Herbert
c5e401d678
Update usages to consume IRulesetStore
2022-01-12 16:57:27 +09:00
Dean Herbert
dbb08f7d46
Use OnlineID
for set operations
2021-12-10 16:11:48 +09:00
Dean Herbert
bf1418bafc
Use OnlineID
instead of legacy IDs for equality and lookups
2021-12-10 16:11:48 +09:00
Bartłomiej Dach
f051720fa1
Fix score encoder being dependent on current culture
...
As it turns out, on some cultures, the "negative integer" sign is not
encoded using the U+002D HYPHEN-MINUS codepoint. For instance, Swedish
uses U+2212 MINUS SIGN instead. This was confusing the legacy decoder,
since it is correctly depending on the serialisation being
culture-independent.
To fix, ensure that the special "end replay" frame, as well as the
replay MD5 hash, are generated in a culture-invariant manner.
Thankfully the replay MD5 hash is currently being discarded in
`LegacyScoreDecoder`, so it changing in future scores should not have
any negative effect on lazer operation.
2021-12-04 17:13:43 +01:00
Dean Herbert
bbd3ea5b77
Update all actual usages of RulesetInfo.ID
to use OnlineID
instead
2021-11-24 15:50:26 +09:00