Changed playerpos to collider, fixed mountain gen
This commit is contained in:
@@ -14,8 +14,6 @@ public class WorldGenerator : MonoBehaviour
|
||||
public GameObject tile;
|
||||
Dictionary<Vector3, GameObject> tiles;
|
||||
GameObject currentTile;
|
||||
List<GameObject> renderedTiles;
|
||||
List<GameObject> toRemove;
|
||||
NoiseGenerator noise;
|
||||
int cityAmount = 0;
|
||||
int maxCityAmount = 0;
|
||||
@@ -30,7 +28,6 @@ public class WorldGenerator : MonoBehaviour
|
||||
private void OnEnable()
|
||||
{
|
||||
tiles = new Dictionary<Vector3, GameObject>();
|
||||
renderedTiles = new List<GameObject>();
|
||||
noise = new NoiseGenerator();
|
||||
createSpawn();
|
||||
cityAmount = 10;
|
||||
@@ -51,7 +48,7 @@ public class WorldGenerator : MonoBehaviour
|
||||
Destroy(tile);
|
||||
}
|
||||
}
|
||||
player.transform.position = new Vector3(0, 4f, 0);
|
||||
player.transform.position = new Vector3(0, 50f, 0);
|
||||
player.transform.rotation = Quaternion.identity;
|
||||
OnEnable();
|
||||
this.cityAmount = cityAmount;
|
||||
@@ -61,8 +58,6 @@ public class WorldGenerator : MonoBehaviour
|
||||
// Update is called once per frame
|
||||
void Update()
|
||||
{
|
||||
createTile(player.transform.position.x, player.transform.position.z);
|
||||
changeCurrentTile(player.transform.position.x, player.transform.position.z);
|
||||
resetPlayer();
|
||||
}
|
||||
|
||||
@@ -70,7 +65,7 @@ public class WorldGenerator : MonoBehaviour
|
||||
{
|
||||
if (player.transform.position.y <= -10)
|
||||
{
|
||||
Vector3 position = new Vector3(currentTile.transform.position.x, 5, currentTile.transform.position.z);
|
||||
Vector3 position = new Vector3(currentTile.transform.position.x, 50, currentTile.transform.position.z);
|
||||
player.transform.SetPositionAndRotation(position, player.transform.rotation);
|
||||
}
|
||||
}
|
||||
@@ -86,13 +81,11 @@ public class WorldGenerator : MonoBehaviour
|
||||
currentTile = newTile;
|
||||
}
|
||||
|
||||
public void createTile(float playerX, float playerZ)
|
||||
public void createTile(Vector3 requiredPosition)
|
||||
{
|
||||
Vector3 pos = currentTile.GetComponent<Tile>().needConnectedTile(playerX, playerZ);
|
||||
Vector3 pos = currentTile.GetComponent<Tile>().getPosition() + requiredPosition;
|
||||
if (!tiles.ContainsKey(pos) && pos.y == 0)
|
||||
{
|
||||
string name = "";
|
||||
int chance = rand.Next(1, 11);
|
||||
Vector3 mapPos = new Vector3(pos.x * 100, 0, pos.z * 100);
|
||||
GameObject newTile = Instantiate(tile, mapPos, Quaternion.identity);
|
||||
|
||||
@@ -104,20 +97,9 @@ public class WorldGenerator : MonoBehaviour
|
||||
}
|
||||
}
|
||||
|
||||
public void changeCurrentTile(float playerX, float playerZ)
|
||||
public void changeCurrentTile(GameObject newCurrent)
|
||||
{
|
||||
if (currentTile.GetComponent<Tile>().leftTile(playerX, playerZ))
|
||||
{
|
||||
renderedTiles.Remove(currentTile);
|
||||
foreach (GameObject tile in renderedTiles)
|
||||
{
|
||||
if (tile.GetComponent<Tile>().enteredTile(playerX, playerZ))
|
||||
{
|
||||
currentTile = tile;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
currentTile = newCurrent;
|
||||
}
|
||||
|
||||
public GameObject getCurrentTile()
|
||||
@@ -184,7 +166,6 @@ public class WorldGenerator : MonoBehaviour
|
||||
noise.loadTile(loadedTile, jsonData["vertices"], jsonData["colors"]);
|
||||
}
|
||||
tiles.Add(pos, loadedTile);
|
||||
renderedTiles.Add(loadedTile);
|
||||
}
|
||||
currentTile = tiles[current];
|
||||
Vector3 position = new Vector3(currentTile.transform.position.x, 5, currentTile.transform.position.z);
|
||||
|
||||
Reference in New Issue
Block a user