我目前正在制作一个游戏,其中在 YAML 文件中有一个充满字符串和不同翻译的文件。
这是它的外观示例。
en:
player:
hello: hello
thanks: thanks
enemy:
hello: hello
es:
player:
hello: hola
thanks: gracias
enemy:
hello: hola
如您所见,我有 3 个嵌套字典。第一个显示语言 - en
、es
、cn
或任何国家前缀。接下来,我有一个带有字符名称的字典列表。这些可以是从player
到 的任何东西bob
。最后,每个字符都有一个行字典列表。
我正在使用 YAML.net(Unity 的一个版本 - 但使用它似乎与正常情况没有什么不同)。
这是我的对象如何布局的示例。
class Translation
{
public Dictionary<string, Language> Language { get; set; }
}
class Language
{
public Dictionary<string, Character> Character { get; set; }
}
class Character
{
public Dictionary<string, Line> Line;
}
class Line
{
public string Text { get; set; }
}
但是,这不起作用,因为编译器抱怨这en
不是es
我的Translation
类的属性。如何在不指定每个国家代码或字符名称的情况下解决此问题?