c# - 在不同对象上使用相同脚本时字符串不同的值
问题描述
我在这里有点困惑,需要帮助。我制作了一个脚本,它使用其他脚本来计算燃料和硝基消耗量。一切都在检查员中有效。但是,当涉及到游戏 UI 中 Text 中的字符串值时,它只能为 1 辆车字符串。我知道问题是因为我在多个对象上使用相同的脚本,所以它不能以这种方式工作。我只是很困惑我应该怎么做。
现在,我在更新中把它串起来:
fuelAmountText.text = string.Format ("{0}", FuelTankCapacity.ToString("F2"));
nitroAmounText.text = string.Format ("{0}", nitroAmount.ToString("F1"));
如何使其仅适用于特定车辆而不是相互反应?如果我让任何人感到困惑,这是一个完整的脚本:
public class CarFuel : MonoBehaviour {
// car nitro and fuel indicators
public Text fuelAmountText;
public float nitroAmount;
public Text nitroAmounText;
// ref to car controller
private RCC_CarControllerV3 carController;
// dashboard canvas gameobject
public GameObject customDash;
public GameObject player;
// engine type ------- wip
//public EngineType engineTypeChoice = EngineType.v6;
//public enum EngineType{i4, v6, v8, v12}
// fuel tank capacity
public float FuelTankCapacity;
// cylinder amount of a vehicle
public float cylAmt;
void Awake(){
carController = GetComponent<RCC_CarControllerV3>();
}
// Update is called once per frame
void Update () {
fuelAmountText.text = string.Format ("{0}", FuelTankCapacity.ToString("F2"));
nitroAmounText.text = string.Format ("{0}", nitroAmount.ToString("F1"));
nitroAmount = carController.NoS;
// calculate fuel consumption
if (carController.engineRunning == true) {
FuelTankCapacity -= carController.rawEngineRPM * 0.00000001f + cylAmt * 0.0000015f;
}
// enable dash if car is being used
if (carController.canControl == true) {
customDash.SetActive (true);
} else {
customDash.SetActive (false);
}
}
}
提前致谢!
解决方案
在玩了更多并调试它之后,我发现了问题的原因......
它是
if (carController.canControl == true)
我所做的是检查 Player GameObject 是否处于活动状态,以显示自定义破折号。它奏效了。呸。不敢相信我在这上面浪费了这么多时间。
推荐阅读
- r - 在单个反斜杠上拆分 R 中的字符串
- excel - 如何修复 VBA 错误消息运行时错误“1004”应用程序定义或对象定义错误
- javascript - 在 JavaScript 中实例化一个类的闭包
- c# - Asp.net MVC 发布表单空值
- presto - 在 Athena (Presto) 中出现 invalid_cast_argument 错误
- wordpress - AMP 框架会干扰 WordFence 等 WordPress 安全插件吗?
- node.js - 如何从 Node.js 使用 GCP 运行时配置器?
- java - Java Cookie - 过期日期从 java / weblogic 12c 以 CST 时区返回
- c# - 使用标记化字符串计算单词的循环
- javascript - 无法从 redux 接收反应组件中的状态