Randomizing and using Bool values
I have several bool values that I decide in edit, but since I have about 600 boxes and several levels, doing this for every one would be really time consuming, so instead I decided to randomize these values, but I cannot manage to tie them together.
public class box :MonoBehaviour
{
MeshRenderer colorRenderer;
public bool is_Land,is_Forest, is_Plains, is_Desert, is_Beach, is_Mountain;
private bool is_Sea;
void Update()
{
if (Input.GetKeyDown("space"))
{
bool is_Land = (Random.value > 0.5f);
bool is_Forest = (Random.value > 0.5f);
bool is_Plains = (Random.value > 0.5f);
bool is_Desert = (Random.value > 0.5f);
bool is_Beach = (Random.value > 0.5f);
bool is_Mountain = (Random.value > 0.5f);
print ("map randomized");
}
if (is_Sea == true){
colorRenderer = GetComponent<MeshRenderer>();
colorRenderer.material.color = new Color32(4, 143, 197, 0);
}
if (is_Land == true)
{
if (is_Forest == true)
{
colorRenderer = GetComponent<MeshRenderer>();
colorRenderer.material.color = new Color32(40, 190, 44, 0);
}
else if (is_Plains == true)
{
colorRenderer = GetComponent<MeshRenderer>();
colorRenderer.material.color = new Color32(141, 255, 66, 0);
}
else if (is_Desert == true)
{
colorRenderer = GetComponent<MeshRenderer>();
colorRenderer.material.color = new Color32(240, 255, 0, 0);
}
else if (is_Beach == true)
{
colorRenderer = GetComponent<MeshRenderer>();
colorRenderer.material.color = new Color32(217, 223, 127, 0);
}
else if (is_Mountain == true)
{
colorRenderer = GetComponent<MeshRenderer>();
colorRenderer.material.color = new Color32(206, 152, 59, 0);
}
}
if (is_Land == false)
{
colorRenderer = GetComponent<MeshRenderer>();
colorRenderer.material.color = new Color32(4, 143, 197, 0);
}
}
This way, "map randomized" gets printed 600 times, every time I press space, it'd lag a lot, if it worked. The Random.values don't seem to affect the color readers or the entry messages. Pausing in-game shows that their bools have remained the same.
I tried making RandomizeMap a class, and tied it to the parent of these GameObjects, the same function as in if (Input.GetKeyDown("space")), but that didn't seem to work either. I'm not a professional, just learning as I go, but this really stunted me, I'd appreciate any help.
Your answer
Follow this Question
Related Questions
Custom class, Null Reference Exception 4 Answers
Find bool in multiple scenes? 0 Answers
Class structure for diferent item types and items that do different things. 0 Answers
If statement not working 1 Answer
Get Time A Bool Has Been True 4 Answers