void Start() { SetLaneSpawner(); defenderSpawner = DefenderSpawner.instance; gameAssets = GameAssets.instance; int resourceDepositCount = 0; for (int i = 0; i < goldDepositCount; i++) { ResourceDeposit goldDeposit = Instantiate(gameAssets.goldDeposit, transform); resourceDepositCount++; int randomIndex = Random.Range(0, possibleDepositSpawnLocations.Count); goldDeposit.transform.localPosition = possibleDepositSpawnLocations[randomIndex]; possibleDepositSpawnLocations.Remove(possibleDepositSpawnLocations[randomIndex]); } for (int i = 0; i < resourceDepositCount; i++) { resourceDeposits.Add(transform.GetChild(i).GetComponent <ResourceDeposit>()); unoccupiedResourceDeposits.Add(resourceDeposits[i]); } // Add this node to our list of nodes defenderSpawner.AddNode(transform.position); defenderSpawner.resourceNodes.Add(this); // Choose a random sprite for (int i = 0; i < resourceDeposits.Count; i++) { if (resourceDeposits[i].resourceType == ResourceType.Gold) { int randomIndex = Random.Range(0, gameAssets.goldDepositAnimatorControllers.Count); resourceDeposits[i].anim.runtimeAnimatorController = gameAssets.goldDepositAnimatorControllers[randomIndex]; } int coinToss = Random.Range(0, 2); if (coinToss == 0) { resourceDeposits[i].sr.flipX = false; } else { resourceDeposits[i].sr.flipX = true; } } }