Procedural Generation
This commit is contained in:
parent
41874041fa
commit
35c93c6a4b
@ -30,7 +30,14 @@ public class ProceduralGeneration : MonoBehaviour
|
|||||||
int pieceCount = 10;
|
int pieceCount = 10;
|
||||||
float radius = (pieceCount / 2) * 2;
|
float radius = (pieceCount / 2) * 2;
|
||||||
float angle = 360f / (float)pieceCount;
|
float angle = 360f / (float)pieceCount;
|
||||||
Vector3 centerPoint = new Vector3(lastObject.transform.position.x, (lastObject.transform.position.y + radius), lastObject.transform.position.z + 3.0f);
|
|
||||||
|
MeshFilter meshfilter = lastObject.GetComponent<MeshFilter>();
|
||||||
|
Bounds bounds = meshfilter.mesh.bounds;
|
||||||
|
|
||||||
|
float scale = meshfilter.transform.localScale.x;
|
||||||
|
Bounds b = new Bounds(bounds.center * scale, bounds.size * scale);
|
||||||
|
|
||||||
|
Vector3 centerPoint = new Vector3(lastObject.transform.position.x, (lastObject.transform.position.y + radius), this.lastBlock.transform.position.z + b.size.z + 1.0f);
|
||||||
|
|
||||||
float heightOffset = radius;
|
float heightOffset = radius;
|
||||||
|
|
||||||
@ -73,7 +80,7 @@ public class ProceduralGeneration : MonoBehaviour
|
|||||||
|
|
||||||
if (this.spawnedLevelBlocks.Count <= maxNumberOfBlock)
|
if (this.spawnedLevelBlocks.Count <= maxNumberOfBlock)
|
||||||
{
|
{
|
||||||
int blockToSpawn = Random.Range(0, levelBlocks.Count - 1);
|
int blockToSpawn = Random.Range(0, levelBlocks.Count);
|
||||||
|
|
||||||
GameObject instantiatedGameObject;
|
GameObject instantiatedGameObject;
|
||||||
GameObject blockObjToSpawn;
|
GameObject blockObjToSpawn;
|
||||||
@ -82,21 +89,9 @@ public class ProceduralGeneration : MonoBehaviour
|
|||||||
if (blockObjToSpawn.name == lastBlockPrefab.name)
|
if (blockObjToSpawn.name == lastBlockPrefab.name)
|
||||||
{
|
{
|
||||||
Debug.Log("Same Block");
|
Debug.Log("Same Block");
|
||||||
if ((blockToSpawn + 1) <= levelBlocks.Count)
|
if (blockToSpawn < levelBlocks.Count || blockToSpawn > -1)
|
||||||
{
|
{
|
||||||
blockToSpawn++;
|
blockToSpawn = Random.Range(0, (levelBlocks.Count - 1));
|
||||||
}
|
|
||||||
else if ((blockToSpawn - 1) >= levelBlocks.Count)
|
|
||||||
{
|
|
||||||
blockToSpawn--;
|
|
||||||
}
|
|
||||||
if ((blockToSpawn + 1) <= levelBlocks.Count)
|
|
||||||
{
|
|
||||||
blockToSpawn++;
|
|
||||||
}
|
|
||||||
else if ((blockToSpawn - 1) >= levelBlocks.Count)
|
|
||||||
{
|
|
||||||
blockToSpawn--;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user