Enhance school creation functionality by introducing support for name sets in the API and UI. Update the catalog to include skills, traits, body attributes, needs, and name sets, improving character generation capabilities. Revise localization strings for better user guidance and update tests to validate the new name set functionality and ensure robustness in school creation processes.
This commit is contained in:
@@ -302,6 +302,11 @@ public sealed class CatalogLoader
|
||||
var buildings = new Dictionary<string, BuildingDef>(StringComparer.Ordinal);
|
||||
var floors = new Dictionary<string, FloorDef>(StringComparer.Ordinal);
|
||||
var territories = new Dictionary<string, TerritoryDef>(StringComparer.Ordinal);
|
||||
var skills = new Dictionary<string, SkillDef>(StringComparer.Ordinal);
|
||||
var traits = new Dictionary<string, TraitDef>(StringComparer.Ordinal);
|
||||
var bodyAttributes = new Dictionary<string, BodyAttributeDef>(StringComparer.Ordinal);
|
||||
var needs = new Dictionary<string, NeedDef>(StringComparer.Ordinal);
|
||||
var nameSets = new Dictionary<string, NameSetDef>(StringComparer.Ordinal);
|
||||
|
||||
foreach (var (key, json) in resolved)
|
||||
{
|
||||
@@ -331,6 +336,21 @@ public sealed class CatalogLoader
|
||||
case DefKind.Territory:
|
||||
territories[key.Name] = Jsonc.Deserialize<TerritoryDef>(json);
|
||||
break;
|
||||
case DefKind.Skill:
|
||||
skills[key.Name] = Jsonc.Deserialize<SkillDef>(json);
|
||||
break;
|
||||
case DefKind.Trait:
|
||||
traits[key.Name] = Jsonc.Deserialize<TraitDef>(json);
|
||||
break;
|
||||
case DefKind.BodyAttribute:
|
||||
bodyAttributes[key.Name] = Jsonc.Deserialize<BodyAttributeDef>(json);
|
||||
break;
|
||||
case DefKind.Need:
|
||||
needs[key.Name] = Jsonc.Deserialize<NeedDef>(json);
|
||||
break;
|
||||
case DefKind.NameSet:
|
||||
nameSets[key.Name] = Jsonc.Deserialize<NameSetDef>(json);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -344,6 +364,11 @@ public sealed class CatalogLoader
|
||||
buildings,
|
||||
floors,
|
||||
territories,
|
||||
skills,
|
||||
traits,
|
||||
bodyAttributes,
|
||||
needs,
|
||||
nameSets,
|
||||
ru,
|
||||
en);
|
||||
}
|
||||
@@ -397,6 +422,8 @@ public sealed class CatalogLoader
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
PeopleDefValidator.Validate(catalog);
|
||||
}
|
||||
|
||||
private sealed record RawDef(string PackId, DefKind Kind, string DefName, JsonObject Json, string Source);
|
||||
|
||||
Reference in New Issue
Block a user