public void SpawnPickUps(Vector3 startPosition) { GameObject pickup1 = pickupPool.GetPooledObject(); pickup1.transform.position = startPosition; pickup1.SetActive(true); GameObject pickup2 = pickupPool.GetPooledObject(); pickup2.transform.position = new Vector3(startPosition.x - distanceBetweenPickups, startPosition.y, startPosition.z); pickup2.SetActive(true); GameObject pickup3 = pickupPool.GetPooledObject(); pickup3.transform.position = new Vector3(startPosition.x - distanceBetweenPickups, startPosition.y, startPosition.z); pickup3.SetActive(true); }
void Update() { if (transform.position.x < generationPoint.position.x) { Debug.Log(theObjectPools.Length); distanceBetween = Random.Range(distanceBetweenMin, distancebetweenMax); platformSelector = Random.Range(0, theObjectPools.Length);//arrayn pituus heightChange = transform.position.y + Random.Range(maxHeightChange, -maxHeightChange); if (heightChange > maxHeight) { heightChange = maxHeight; } else if (heightChange < minHeight) { heightChange = minHeight; } transform.position = new Vector3(transform.position.x + (platformWidths[platformSelector] / 2) + distanceBetween, heightChange, transform.position.z);//siirtää platformia //Instantiate(/*thePlatform*/thePlatforms[platformSelector], transform.position, transform.rotation);//kopsaa platformit GameObject newPlatform = theObjectPools[platformSelector].GetPooledObject(); newPlatform.transform.position = transform.position; newPlatform.transform.rotation = transform.rotation; newPlatform.SetActive(true); if (Random.Range(0f, 100f) < randomCoinThreshold) { thePickUpGenerator.SpawnPickUps(new Vector3(transform.position.x, transform.position.y + 1.0f, transform.position.z)); } transform.position = new Vector3(transform.position.x + (platformWidths[platformSelector] / 2), transform.position.y, transform.position.z); if (Random.Range(0f, 100f) < randomSpikeThreshold) { GameObject newSpike = spikePool.GetPooledObject(); float spikeXPosition = Random.Range(0f, -platformWidths[platformSelector]); Vector3 spikePosition = new Vector3(spikeXPosition, 0.75f, 0f); newSpike.transform.position = transform.position + spikePosition; newSpike.transform.rotation = transform.rotation; newSpike.SetActive(true); } } }