你好,每个人,我正在尝试使用JSON文件来存储我的游戏数据,但我遇到一个问题:属性的不同名称。例如,我的JSON文件如下:

{
  "warrior1": {
    "Health": {
      "CurrentLevel": 1,
      "CurrentHealth": 900,
      "MaxHealth": 1000
    },
    "Power": {
      "CurrentLevel": 1,
      "CurrentPower": 760,
      "MaxPower": 1220
    },
    "Speed": {
      "CurrentLevel": 1,
      "CurrentSpeed": 600,
      "MaxSpeed": 800
    },
    "Price": {
      "CurrentLevel": 1,
      "CurrentPrice": 760,
      "MaxPrice": 600
    }
  },
  "warrior2": {
    "Health": {
      "CurrentLevel": 1,
      "CurrentHealth": 900,
      "MaxHealth": 1000
    },
    "Power": {
      "CurrentLevel": 1,
      "CurrentPower": 760,
      "MaxPower": 1220
    },
    "Speed": {
      "CurrentLevel": 1,
      "CurrentSpeed": 600,
      "MaxSpeed": 800
    },
    "Price": {
      "CurrentLevel": 1,
      "CurrentPrice": 760,
      "MaxPrice": 600
    }
  }
}

问题是,JsonUtility似乎需要我的C#字段名称与JSON属性名称完全匹配。例如,我必须创建字段,如CurrentHealthCurrentPowerCurrentSpeed等,即使它们都是不同的统计值的“当前值”。我更希望有一个类似这样的结构:

public class Stat
{
  public int CurrentLevel;
  public int CurrentValue;
  public int MaxValue;
}

然后将CurrentHealthCurrentPowerCurrentSpeed等映射到CurrentValue中。那么你 guys通常是如何处理这个问题的?我正在寻找最干净和最可维护的方法。