예제 #1
0
    GameObject SpawnObject(GameObject prev)
    {
        GameObject myChildObject, clone;

        if (prev.transform.childCount > 0)
        {
            myChildObject = prev.transform.GetChild(0).gameObject;
            prev.transform.DetachChildren();
            clone = Instantiate(prev, transform.position, transform.rotation);
            myChildObject.transform.parent = prev.transform;
        }
        else
        {
            clone = Instantiate(prev, transform.position, transform.rotation);
        }

        GameObject storey = new GameObject();

        storey.transform.SetParent(transform);

        clone.transform.SetParent(storey.transform);
        RandomScaleObject(clone);
        clone.GetComponent <MeshRenderer>().material = material;

        BeamGenerator beamGen = clone.GetComponent <BeamGenerator>();

        beamGen.seed = Random.Range(0, 100000);
        beamGen.Generate();

        return(clone);
    }
예제 #2
0
    public override void OnInspectorGUI()
    {
        BeamGenerator mapGen = (BeamGenerator)target;

        if (DrawDefaultInspector())
        {
            if (mapGen.autoUpdateBeams)
            {
                mapGen.Generate();
            }
        }

        if (GUILayout.Button("Generate Beams"))
        {
            mapGen.Generate();
        }
    }