我过去做过一些初级编码,现在我正在学习Unity并尝试用C#做一些事情。
我的问题:
我有一个对象列表,它们的ID号在1-50范围内。我希望我的游戏随机选择一个对象,而不是按顺序遍历列表。第一步是选择初始ID为一些随机数,但我只得到错误:"错误CS1729:类型UnityEngine.Random' does not contain a constructor that takes
1'参数&#34 ;.我理解我应该为构造函数提供更多参数,但是我需要帮助看看如何,因为代码看起来很好(如果简单)给我。
无论如何,此刻它是这样的:
public int id;
public int randomid;
public void RandId(int id)
{
Random randomid = new Random(Random.Range(1, 51));
id = randomid;
return id;
}
这里id是对象的标识号,randomid用于随机化,我使用Random.Range创建想要的范围(1-50)。看来我需要给Random.Range提供更多的参数,但它已经有了min和max。
你能给我一些建议吗?
答案 0 :(得分:0)
您的代码还有其他一些问题,但这应该是您需要的。
public void SetIDToRandom(out int id)
{
id = (int)Random.Range(1, 51);
}
附录:
Random 是一个静态类,您不直接实例化它。