我想做一个数字猜谜游戏,让计算机猜你的数字,你也可以猜出它的数字,但在最后,我做了一个随机数生成器,但遇到了一个问题。
我命名了我的函数onGuessEnter
,当玩家在输入他的猜测后点击回车时调用它,我的问题是,如果我运行游戏(Visual Studio 没有对此产生问题)Unity 由于包含以下行的错误而停止:
RandomRangeInt 只能从主线程调用。
(如果我将随机生成器放入函数中,它会在每次输入命中时生成一个新的随机数)
有人可以帮助我使输入字段和随机生成器一起工作吗?(我的意思是它必须只生成一次随机数,而不是总是在按下 Enter 按钮时生成一个随机数,我可以从 onGuessEnter 访问该随机数)
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class GuessManagerScript : MonoBehaviour {
public InputField input;
public Text text;
int random = Random.Range(0, 1000);
public void onGuessEnter() {
print(random);
int inum = int.Parse(input.text);
if (inum == random)
text.text = "Congrats, you guessed it!";
else if (inum < random)
text.text = "Bigger!";
else if (inum > random)
text.text = "Smaller!";
}
}