我目前正在为 Unity 创建一个包含许多变量的 C# 脚本,并且我希望这些变量可以从其他脚本中更改。
为此,我目前编写了一个函数,该函数询问变量的名称(作为字符串),然后对每个变量使用 switchcase。
public string charName;
public int currentHP;
public int maxHP = 100;
public int strength;
public int defense;
public void ChangeValue(string valueToChange, int howMuch)
{
switch (valueToChange)
{
case "currentHP":
currentHP += howMuch;
break;
case "maxHP":
maxHP += howMuch;
break;
case "strength":
strength += howMuch;
break;
case "defense":
defense += howMuch;
break;
}
}
有更有效的方法吗?switch case 看起来效率很低,每次我想向脚本添加新变量时都需要修改它。
对我来说最完美的事情是询问变量作为参数,但我无法找到一种方法来做到这一点。
感谢您的时间 !
猛跑小猪
噜噜哒
相关分类