Beispiel #1
0
 public void BuildTransition(StructureTemplateGroup dungeonTransitionGroup, WIGroup dungeonGroup)
 {
     //then add the children
     for (int j = 0; j < dungeonTransitionGroup.StaticStructureLayers.Count; j++)
     {
         StructureTemplate.InstantiateStructureLayer(dungeonTransitionGroup.StaticStructureLayers [j], transform);
     }
     //create and find triggers
     StructureTemplate.InstantiateGenericDynamic(dungeonTransitionGroup.GenericDynamic, TriggerParent, dungeonGroup);
 }
Beispiel #2
0
        protected IEnumerator InstanceMeshes(
            StructureTemplateGroup structureGroup,
            string childName,
            List <Renderer> renderers,
            List <Renderer> lodRenderers,
            float lodRatio)
        {
            renderers.Clear();
            if (lodRenderers != null)
            {
                lodRenderers.Clear();
            }

            StructurePiece        = StructureBase.CreateChild(childName);
            StructurePiece.parent = null;
            if (Mode == BuilderMode.Minor)
            {
                //minor structures have to set their own offsets
                StructurePiece.position = MinorParent.Position;
                StructurePiece.rotation = Quaternion.Euler(MinorParent.Rotation);
            }
            else
            {
                StructurePiece.ResetLocal();
            }
            StructurePiece.gameObject.layer = Globals.LayerNumSolidTerrain;            //TODO this may be unnecessary
            for (int i = 0; i < structureGroup.StaticStructureLayers.Count; i++)
            {
                StructureTemplate.InstantiateStructureLayer(structureGroup.StaticStructureLayers [i], StructurePiece);
            }

            StructurePiece.parent = StructureBase.transform;
            if (Mode == BuilderMode.Minor)
            {
                StructurePiece.localPosition = MinorParent.Position;
                StructurePiece.localRotation = Quaternion.Euler(MinorParent.Rotation);
            }
            else
            {
                StructurePiece.ResetLocal();
            }
            yield break;
        }