[英]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)];
我無法修復它。 誰能幫我修復它?
_candies
在GetCandies()
初始化,但是在您的代碼中未調用此函數。 我懷疑當執行了_candies
時, _candies
仍然為空。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.