1
0
mirror of https://github.com/ppy/osu.git synced 2024-09-22 04:07:25 +08:00

Update RulesetStore to read from populated defaults

This commit is contained in:
Dean Herbert 2019-12-24 16:16:55 +09:00
parent 5738267642
commit fcb7a9ade5

View File

@ -58,16 +58,11 @@ namespace osu.Game.Rulesets
var instances = loadedAssemblies.Values.Select(r => (Ruleset)Activator.CreateInstance(r)).ToList();
//add all legacy modes in correct order
//add all legacy rulesets first to ensure they have exclusive choice of primary key.
foreach (var r in instances.Where(r => r is ILegacyRuleset))
{
int legacyId = ((ILegacyRuleset)r).LegacyID;
if (context.RulesetInfo.SingleOrDefault(rsi => rsi.ID == legacyId) == null)
{
r.RulesetInfo.ID = legacyId;
if (context.RulesetInfo.SingleOrDefault(dbRuleset => dbRuleset.ID == r.RulesetInfo.ID) == null)
context.RulesetInfo.Add(r.RulesetInfo);
}
}
context.SaveChanges();