【发布时间】:2019-11-04 10:39:12
【问题描述】:
我想将 0 或 1 随机分配给 randomNumber1,但我使用此代码失败了。
这是 Unity 中的代码
public class Practice : MonoBehaviour
{
public static int randomNumber1;
public static int randomNumber2;
public class randd
{
public void randdom_dd()
{
int randomNumber1 = Random.Range(0, 2);
if (randomNumber1 == 0)
{
int randomNumber2 = 1;
}
else
{
int randomNumber2 = 0;
}
}
}
public void OnClick()
{
if (randomNumber1 == 0)
{
print("정답!");
}
else
{
print("틀렸어!");
}
}
}
我认为,当我玩代码时,randomNumber1 始终具有相同的 int。我尝试更改 Random.Range(min, max) 中的最小值和最大值,但有些尝试失败了。
【问题讨论】:
-
我不确定你为什么需要 2 个变量?我认为您将能够获得相同的功能,但不那么复杂,仅使用 randomNumber1 并在 if/else 语句中检查它的值。 Random.Range 的上限是独占的,这意味着 Range(0,2) 只会返回 0 或 1,这就是您想要的。
-
您似乎没有在任何地方触发
randdom_dd()。在执行 IF 之前尝试将其添加到 OnClick 函数中