override public void SetBasement(Plane b, PixelPosByte pos) { if (b == null) { return; } basement = b; surfaceRect = new SurfaceRect(pos.x, pos.y, surfaceRect.size); if (spriter == null && modelHolder == null) { SetModel(); } b.AddStructure(this); if (!typeRegistered) { GameMaster.realMaster.mainChunk.InitializeNature().RegisterNewLifeform(type); typeRegistered = true; } if (!subscribedToVisibilityEvent) { basement.visibilityChangedEvent += this.SetVisibility; subscribedToVisibilityEvent = true; oaksCount++; } }
override public void SetBasement(Plane b, PixelPosByte pos) { if (b == null) { return; } basement = b; surfaceRect = new SurfaceRect(pos.x, pos.y, 1); if (model == null) { SetModel(); } b.AddStructure(this); }
override public void SetBasement(Plane b, PixelPosByte pos) { if (b == null) { return; } //#setStructureData basement = b; surfaceRect = new SurfaceRect(pos.x, pos.y, surfaceRect.size); if (transform.childCount == 0) { SetModel(); } b.AddStructure(this); }
override public void SetBasement(Plane b, PixelPosByte pos) { if (b == null) { return; } //#setStructureData if (lodComponent != null && basement != null) { lodComponent.ChangeBasement(b); } basement = b; surfaceRect = new SurfaceRect(pos.x, pos.y, surfaceRect.size); b.AddStructure(this); SetModel(); }
override public void SetBasement(Plane p, PixelPosByte pos) { if (p == null) { return; } // basement = p; if (transform.childCount == 0) { var fi = basement.faceIndex; if (fi == Block.SURFACE_FACE_INDEX || fi == Block.UP_FACE_INDEX || fi == Block.CEILING_FACE_INDEX || fi == Block.DOWN_FACE_INDEX) { model = Instantiate(Resources.Load <GameObject>("Structures/Column")); surfaceRect = new SurfaceRect(0, 0, 4); surfaceRect = new SurfaceRect((byte)(PlaneExtension.INNER_RESOLUTION / 2 - surfaceRect.size / 2), (byte)(PlaneExtension.INNER_RESOLUTION / 2 - surfaceRect.size / 2), surfaceRect.size); } else { model = Instantiate(Resources.Load <GameObject>("Structures/ColumnEdge")); switch (fi) { case Block.FWD_FACE_INDEX: model.transform.rotation = Quaternion.Euler(0f, 180f, 0f); break; case Block.RIGHT_FACE_INDEX: model.transform.rotation = Quaternion.Euler(0f, -90f, 0f); break; case Block.LEFT_FACE_INDEX: model.transform.rotation = Quaternion.Euler(0f, 90f, 0f); break; case Block.BACK_FACE_INDEX: model.transform.rotation = Quaternion.Euler(Vector3.zero); break; } surfaceRect = SurfaceRect.full; } model.transform.parent = transform; model.transform.localPosition = Vector3.zero; if (!PoolMaster.useDefaultMaterials) { PoolMaster.ReplaceMaterials(model); } } placeInCenter = true; basement.AddStructure(this); // if (!GameMaster.loading) { IPlanableSupportClass.AddBlockRepresentation(this, basement, ref myBlock, true); } }
override public void SetBasement(Plane b, PixelPosByte pos) { if (b == null) { return; } basement = b; surfaceRect = new SurfaceRect(pos.x, pos.y, surfaceRect.size); if (spriter == null) { SetModel(); } b.AddStructure(this); if (!addedToClassList) { oaks.Add(this); addedToClassList = true; if (!typeRegistered) { GameMaster.realMaster.mainChunk.GetNature().RegisterNewLifeform(type); typeRegistered = true; } } }
override public void SetBasement(Plane b, PixelPosByte pos) { if (b == null) { return; } basement = b; surfaceRect = new SurfaceRect(pos.x, pos.y, surfaceRect.size); if (!GameMaster.loading) { float f = Random.value; if (f > 0.5f) { if (f > 0.75f) { modelRotation = 6; } else { modelRotation = 4; } } else { if (f < 0.25f) { modelRotation = 2; } } } if (transform.childCount == 0) { SetModel(); } basement.AddStructure(this); }