private void ForestSpawner() { _oakDensity = (-1 * _oakDensity) + 1; for (int x = -1 * (_width / 2); x < _width / 2; x++) { for (int z = -1 * (_height / 2); z < _width / 2; z++) { float chance = _noiseImage.GetPixel(x, z).r; if (_pineDensity >= chance) { Vector3 spawnPosition = new Vector3(x, 1, z); int treeNumber = Random.Range(0, _PineTrees.Count); PlacebleObject tile = Instantiate(_PineTrees[treeNumber], spawnPosition, transform.rotation); tile._location = spawnPosition; _occupiedPositions.Add(tile); } else if (_oakDensity <= chance) { Vector3 spawnPosition = new Vector3(x, 1, z); int treeNumber = Random.Range(0, _oakTrees.Count); PlacebleObject tile = Instantiate(_oakTrees[treeNumber], spawnPosition, transform.rotation); tile._location = spawnPosition; _occupiedPositions.Add(tile); } } } }
private void TerainSpawner() { for (int x = -1 * (_width / 2); x < _width / 2; x++) { for (int z = -1 * (_height / 2); z < _width / 2; z++) { Vector3 spawnPosition = new Vector3(x, 0, z); int tileNumber = Random.Range(0, _tiles.Count); PlacebleObject tile = Instantiate(_tiles[tileNumber], spawnPosition, transform.rotation); tile._location = spawnPosition; _occupiedPositions.Add(tile); } } }
public void GetObject(PlacebleObject placementObject) { _hasObject = true; _Object = placementObject; _placementHieght = 1; BuildMenu._buildMenu.gameObject.SetActive(false); _placementObject = Instantiate(placementObject, placementObject.transform.position, Quaternion.Euler(placementObject.transform.rotation.x, _currentRotation, placementObject.transform.rotation.z)); _material = _placementObject.GetComponent <Renderer>().material; Collider collider = _placementObject.GetComponent <Collider>(); if (collider != null) { _collider = collider; _collider.enabled = false; } }