【发布时间】:2017-09-17 11:08:22
【问题描述】:
如何在 Unity 中检查列表中的所有游戏对象是否满足特定条件?我有 9 个具有相同脚本的对撞机。他们都有一个列表,通过 我试过这段代码,但它返回奇怪的结果。
void Update()
{
for (int i = 0; i < ChildTiles.Count; i++)
{
if (ChildTiles [i].GetComponent<SpriteRenderer> ().color == Green)
{
_greenComplete = true;
}
else
{
_greenComplete = false;
}
//Debug.Log (gameObject + "ChildTiles[i]" + ChildTiles [i]);
}
Debug.Log (gameObject + "Green Complete " + _greenComplete);
}
奇怪的是,右上角的碰撞器返回 True,两个游戏对象为绿色,而右下角的碰撞器返回 false,两个游戏对象为绿色。
这是结果中右上方碰撞器的检查器:
这是结果中右下角碰撞器的检查器:
我该如何解决这个问题?
【问题讨论】:
-
另一个好问题。谢谢。