private void InitializeDictationary() { for (int i = 0; i < fruitDatabase.fruits.Count; ++i) { FruitInfo fruit = fruitDatabase.fruits[i]; string name = fruit.fruitName; fruitGameObjectDic.Add(name, fruit.fruitPrefab); fruitMaxCount.Add(name, fruit.maxCount); fruitCount.Add(name, 0); spawnIndexes.Add(i); } }
public GameObject SpawnRandomFruit() { if (spawnIndexes.Count == 0) { return(null); } int i = Random.Range(0, spawnIndexes.Count); int randomIndex = spawnIndexes[i]; FruitInfo fruit = fruitDatabase.fruits[randomIndex]; string name = fruit.fruitName; ++fruitCount[name]; if (fruitCount[name] >= fruitMaxCount[name]) { spawnIndexes.RemoveAt(i); } GameObject fruitObj = Instantiate(fruitDatabase.fruits[randomIndex].fruitPrefab); fruitRBList.Add(fruitObj.GetComponent <Rigidbody>()); return(fruitObj); }