Execute world generating script in editor
Hi, i'am dealing with a problem. I am begginer in unity coding and i created a script to generate terrain 2d array, but i don't know how to execute it without running the game (I want to run it in editor) so i can then edit the terrain.
How can I run the script?
Here is the code (I know it could be better but it is only supposed to run once on my high end machine so i don't care mouch about the speed)(Ps.: the code has one big mustake and I will repair it, i need to split new Terrain and setNeighbours to two separate FORs but that doesn't realy affest my question):
using UnityEngine;
public class TerrainScript
{
private const int TerrainsSize = 500;
public Terrain[,] Terrains = new Terrain[TerrainsSize, TerrainsSize];
// Use this for initialization
void Start()
{
for (int y = 0; y < TerrainsSize; y++)
{
for (int x = 0; x < TerrainsSize; x++)
{
Terrains[x, y] = new Terrain();
if (x == 0 && y == 0)
{
Terrains[x, y].SetNeighbors(null, null, Terrains[x + 1, y], Terrains[x, y + 1]);
}
else if (x == 0)
{
Terrains[x, y].SetNeighbors(null, Terrains[x, y - 1], Terrains[x + 1, y], Terrains[x, y + 1]);
}
else if (y == 0)
{
Terrains[x, y].SetNeighbors(Terrains[x - 1, y], null, Terrains[x + 1, y], Terrains[x, y + 1]);
}
else if (x + 1 == TerrainsSize && y + 1 == TerrainsSize)
{
Terrains[x, y].SetNeighbors(Terrains[x - 1, y], Terrains[x, y - 1], null, null);
}
else if (x + 1 == TerrainsSize)
{
Terrains[x, y].SetNeighbors(Terrains[x - 1, y], Terrains[x, y - 1], null, Terrains[x, y + 1]);
}
else if (y + 1 == TerrainsSize)
{
Terrains[x, y].SetNeighbors(Terrains[x - 1, y], Terrains[x, y - 1], Terrains[x + 1, y], null);
}
else
Terrains[x, y].SetNeighbors(Terrains[x - 1, y], Terrains[x, y - 1], Terrains[x + 1, y], Terrains[x, y + 1]);
}
}
}
}
Your answer
Follow this Question
Related Questions
How to create 2D terrain procedurally with 2D physics colliders ? 0 Answers
Terrain Collider update c# 0 Answers
Replace Terrain Layer through Script on runtime 0 Answers
Terrain detail meshes are invisible 0 Answers
how can i erase/cut/slice my terrain 0 Answers