So I have a loops script to create a randomly sized room but all the gameObjects have no parent so they all reference global coordinates rather than the object the script is attached to. Any Ideas?
using UnityEngine;
using System.Collections;
public class Room_Generation : MonoBehaviour {
public GameObject gFloor;
public GameObject gCeiling;
public GameObject gWall;
// Use this for initialization
void Start () {
float fSpacing = 4.0f;
int iRoomWidth = Random.Range(0,4);
int iRoomLength = Random.Range(0,4);
for(int y = 0; y <= iRoomWidth; y++){
for(int x = 0; x <= iRoomWidth; x++){
Vector3 posFloor = new Vector3(x,0,y) * fSpacing;
Vector3 posCeiling = new Vector3(x,1,y) * fSpacing;
Instantiate(gFloor,posFloor,Quaternion.Euler(-90,0,0));
Instantiate(gCeiling,posCeiling,Quaternion.Euler(90,0,0));
}
}
}
PS Im newish at unity and scripting so if you can suggest better ways to do this please go ahead.
Thanks!
I dont understand the Child object part, could you explain it abit more? I've updated my script above. It was in JavaScript but I turned it into C#. Thanks
– Fenlig