我有一个function
它将随机选择从1到5的数字,然后在该函数内有一个if
语句,该语句将从函数输出的数字分配给变量叫做randID
(为了在我的游戏中随机选择一个区域)。如何从其他类访问浮点输出变量
在另一个课程中,我想查看zoneID
是否等于randID
(我之前随机选择的那个),如果是,我想打印一条消息。
我会在一个班级里做到这一点,但是我在使用这个班级的游戏中有多个对象,我需要主游戏操作员类来决定选择哪个区域。
想象一下总部的游戏;这基本上是我想弄明白的。现在大部分系统已经到位。 :)
我提前感谢您提供任何帮助或指导。
PS:我使用C#和Unity3D创建此项目。
编辑:代码。
public static void DecideID() {
if (gameLeft >= 1f && timeZone_Zone.zoneAlive == false) {
float random = Random.Range(0f, 5f);
print (random);
if(random > 1f && random < 2f) {
id = 1;
print (id);
}
else if(random > 2f && random < 3f) {
id = 2;
print (id);
}
else if(random > 3f && random < 4f) {
id = 3;
print (id);
}
else if(random > 4f && random < 5f) {
id = 4;
print (id);
}
else if(random >= 5f) {
id = 5;
print (id);
}
}
print (id)
语句仅用于测试目的。
然后,我想要做这样的事情:
if (zoneID = randID) {
GetComponent<MeshRenderer>().enabled = true;
}
我从脚本中复制了一小段摘录。我将如何实现这一点?另一个c#文件是否算作GameObject? –
@JackMiller gameobject是场景中的对象,您将脚本附加到...您将替换的类型将是附加到其他gameobject的脚本的类型 –
因此,如果我想获取浮动值'id'然后在我的区域课程中使用它,我该怎么做? 类似于 'Handler = GameObject.Find(“GameHandler”); Handler.GetComponent(id); –