c# - 两个对象在 Unity 中不断获得相同的随机数
问题描述
我为四种不同的汽车编写了代码,它们在 C# 中都有相同的代码。他们的目标是(随机)选择一条车道,然后以一定的速度沿着该车道行驶,但是,每当我执行代码时,所有汽车都在一条车道上相互堆积。
我试图在互联网上寻找解释,但所有这些都已经过时了。
我正在使用 Unity 2019.4,这是我的代码。任何帮助将不胜感激。
if (ypos < -7)
{ // n
Random rnd = new Random();
int ran = rnd.Next(1, 5);
if (ran == 1)
{
if (isTouching)
{
transform.localPosition = new Vector3(-2.4f, -9.0f, transform.localPosition.z);
}
transform.localPosition = new Vector3(-2.4f, 9.0f, transform.localPosition.z);
}
else if (ran == 2)
{
if (isTouching)
{
transform.localPosition = new Vector3(-2.4f, -9.0f, transform.localPosition.z);
}
transform.localPosition = new Vector3(0.0f, 9.0f, transform.localPosition.z);
}
else if (ran == 3)
{
if (isTouching)
{
transform.localPosition = new Vector3(-2.4f, -9.0f, transform.localPosition.z);
}
transform.localPosition = new Vector3(2.5f, 9.0f, transform.localPosition.z);
}
else if (ran == 4)
{
if (isTouching)
{
transform.localPosition = new Vector3(-2.4f, -9.0f, transform.localPosition.z);
}
transform.localPosition = new Vector3(5.0f, 9.0f, transform.localPosition.z);
}
}
else
{
transform.localPosition = new Vector3(transform.localPosition.x, transform.localPosition.y - speed, transform.localPosition.z);
}
}
}
解决方案
推荐阅读
- asp.net-core - 如何从 ASP.Net Core 中的查询字符串构造非默认构造函数模型?
- linux - 如何在两个 VM Linux 之间同步两个文件夹?
- java - 使用 AsyncTask 根据值定义文本颜色
- buffer - 以椭圆形将 SpatialPoints 扩展到 SpatialPolygon
- angular - 从材料日期选择器中提取和分解日期
- c# - 填充 ComboBox(3 层架构)
- mongodb - 如何通过字段 user_id 进行分组并从 mongoDB 中的另一个表填充
- angular - 角度切换仅选定项目
- scala - 使用带有类型选择的辅助模式时发生反射调用
- java - 如果一个类用类似的方法实现了多个接口,它会重载吗?