public void Generate(int inputLength, Transform parentTransform, float targetY, int speed = 5) { var length = Mathf.Max(inputLength, _MIN_LENGTH); var position = parentTransform.position; position.y += targetY; Internals.GenerateTile(platform, parentTransform, position, speed); position.x += 2; for (int i = 0; i < length - 2; i++, position.x += 2) { Internals.GenerateTile(platform, parentTransform, position, speed); } Internals.GenerateTile(platform, parentTransform, position, speed); if (Random.Range(0f, 1f) < enemyProbability) { var enemyPosition = new Vector3(parentTransform.position.x, position.y + 1f, position.z); var enemyGameObject = Instantiate(enemy, parentTransform, false); enemyGameObject.transform.position = enemyPosition; } }
public void Generate(int inputLength, Transform parentTransform, float targetY, int speed = 5) { var length = Mathf.Max(inputLength, _MIN_LENGTH); var position = parentTransform.position; position.y += targetY; Internals.GenerateTile(start, parentTransform, position, speed); position.x += 1; for (int i = 0; i < length - 2; i++, position.x++) { if (Random.Range(0f, 1f) < spikesProbability) { Internals.GenerateTile(spikes, parentTransform, position, speed); } else { Internals.GenerateTile(middle, parentTransform, position, speed); } } Internals.GenerateTile(end, parentTransform, position, speed); }
public void Generate(Transform parentTransform, float targetY, int speed = 5) { var position = parentTransform.position; position.y += targetY; Internals.GenerateTile(dirtLeft, parentTransform, position, speed); position.x += 1; Internals.GenerateTile(dirtRight, parentTransform, position, speed); position.x += 1.5f; Internals.GenerateTile(platform, parentTransform, position, speed); position.x += 1.5f; Internals.GenerateTile(dirtLeft, parentTransform, position, speed); position.x += 1; Internals.GenerateTile(dirtRight, parentTransform, position, speed); }
public void Generate(Transform parentTransform, float targetY, int speed = 5) { var position = parentTransform.position; position.y += targetY; Internals.GenerateTile(platformL, parentTransform, position, speed); position.x += 1; Internals.GenerateTile(platformR, parentTransform, position, speed); position.y += 1; if (Random.Range(0f, 1f) < victoryProbability) { Internals.GenerateTile(victory, parentTransform, position, speed); } else { Internals.GenerateTile(coin, parentTransform, position, speed); } }