繁体   English   中英

Unity3d数组索引超出范围

[英]Unity3d Array index is out of range

void FillGrid()
{ 
    for(int x = 0; x < xSize; x++)
    {
        for(int y = 0; y < ySize; y++)
        {
            InstantiateCandy(x, y);
        }

    }
}
void InstantiateCandy(int x,int y)
{
    GameObject randomCandy = _candies[Random.Range(0, _candies.Length)];

    GameObject newCandy =(GameObject)Instantiate(randomCandy, new Vector3(x, y), Quaternion.identity);
    newCandy.GetComponent<GridItem>().OnItemPositionChanged(x, y);


}
void GetCandies()
{
    _candies = Resources.LoadAll<GameObject>("Prefabs");

    for(int i=0; i< _candies.Length-1;i++)
    {
        _candies[i].GetComponent<GridItem>().id = i;
    }

}


}

我在这一行的问题:

GameObject randomCandy = _candies[Random.Range(0, _candies.Length)];

我无法修复它。 谁能帮我修复它?

_candiesGetCandies()初始化,但是在您的代码中未调用此函数。 我怀疑当执行了_candies时, _candies仍然为空。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM