[英]Variable not incrementing in void update
在下面给出的代码中,变量loop
不递增。它始终将输出为 0。如果我们在递增值后打印循环,则循环递增一次。
public class move : MonoBehaviour
{
int loop = 0;
float[,] comp = new float[10,2];
public Vector3 speed;
void Start ()
{
speed = new Vector3(0,0.15f,0);
}
void Update ()
{
comp = spawner.score;
transform.Translate(speed);
if(transform.position.y < -2)
{
loop++;
Debug.Log("Loop:"+loop);
Destroy(gameObject);
}
}
}
您的带有移动组件的游戏对象在世界 pos 中远低于“-2”? (参见 -> if(transform.position.y < -2)
)或者循环可以递增。
正如他在评论中所说的“是”, Destrou
是Destrou
?
你想使用Destroy
吗? 在这种情况下,为什么要使用循环来计算所有销毁元素?
所以循环增加了,之后对象就被销毁了。
如果loop
要计算元素的数量,则必须将循环变量放在其他无法销毁的脚本中(例如:您可以使用Singleton
正确访问它)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.