我来自 Java,我正在学习 C# 脚本,我已经遇到这个问题大约两天了,现在正在寻找解决方案,我尝试将类设置为实例和所有内容。这是我和一些朋友一起做的一个微型游戏项目。
无论哪种方式,我都有 StatHandler.cs 处理我们所有的统计点......然后我有 HealthManager.cs 应该处理所有与健康相关的东西。
问题是,我一生都无法弄清楚如何调用变量,例如
public int stamina, strength, agility, dexterity, wisdom;
来自 StatHandler.cs
我知道在 Java 中它会像
maxHealth = StatHandler.stamina * 10;
虽然,你不能用 C# 做到这一点,但在创建实例时,代码看起来像这样
maxHealth = StatHandler.instance.stamina * 10;
这为我提供了错误
NullReferenceException: Object reference not set to an instance of an object
我也尝试过继承,通过这样做
public class HealthHandler : StatHandler {
但它在 HealthHandler 类中将所有值设置为 0,它不读取任何内容。
我真的只需要弄清楚如何从其他 C# 文件中提取变量,因为这让我慢了下来。