0

我正在使用 C# 在 Unity 中编写游戏。作为游戏的一部分,我在一些对象上附加了一个脚本。该脚本包含该OnGUI()方法。正如我之前在另一个问题中发现的那样,脚本因此OnGUI()被多次调用。

现在我试图插入一个TextField,使玩家能够输入他想从银行随身携带的货币价值(当玩家按下按钮确认时,选定的价值会提供给玩家)。但无论我尝试做什么,文本字段中的值仍然是 0(起始值)。

我想知道是否有一种方法可以输入 TextField,而不会被OnGUI()附加到多个对象的同一脚本中的多个函数覆盖,回到0?

4

1 回答 1

0

在 Unity 场景中创建一个空白对象,并将脚本附加到它。将文本字段的内容放入公共变量 int,并从其他脚本中引用该变量。您可以使用脚本的 GameObject.Find 和 GetComponent 方法来访问变量并在必要时写入变量。此外,如果您愿意,您可以执行 PlayerPrefs.SetInt 或 SetFloat 和 GetInt、GetFloat 来设置和检索值。但这在资源上很麻烦。

于 2013-01-07T21:39:53.020 回答