/// <summary> /// Constructor for cloning a layer /// </summary> /// <param name="lbLandscapeMesh"></param> public LBLandscapeMesh(LBLandscapeMesh lbLandscapeMesh) { this.mesh = lbLandscapeMesh.mesh; this.materials = new List <Material>(lbLandscapeMesh.materials); this.offset = lbLandscapeMesh.offset; this.maxMeshes = lbLandscapeMesh.maxMeshes; this.minProximity = lbLandscapeMesh.minProximity; this.randomiseYRotation = lbLandscapeMesh.randomiseYRotation; this.fixedYRotation = lbLandscapeMesh.fixedYRotation; this.XRotation = lbLandscapeMesh.XRotation; this.ZRotation = lbLandscapeMesh.ZRotation; this.isTerrainAligned = lbLandscapeMesh.isTerrainAligned; this.minScale = lbLandscapeMesh.minScale; this.maxScale = lbLandscapeMesh.maxScale; this.minHeight = lbLandscapeMesh.minHeight; this.maxHeight = lbLandscapeMesh.maxHeight; this.minInclination = lbLandscapeMesh.minInclination; this.maxInclination = lbLandscapeMesh.maxInclination; this.meshPlacingMode = lbLandscapeMesh.meshPlacingMode; this.map = lbLandscapeMesh.map; this.mapColour = lbLandscapeMesh.mapColour; this.mapTolerance = lbLandscapeMesh.mapTolerance; this.mapToleranceBlendCurve = new AnimationCurve(lbLandscapeMesh.mapToleranceBlendCurve.keys); this.mapIsPath = lbLandscapeMesh.mapIsPath; this.useNoise = lbLandscapeMesh.useNoise; this.noiseTileSize = lbLandscapeMesh.noiseTileSize; this.noiseOffset = lbLandscapeMesh.noiseOffset; this.meshPlacementCutoff = lbLandscapeMesh.meshPlacementCutoff; this.isClustered = lbLandscapeMesh.isClustered; this.clusterDistance = lbLandscapeMesh.clusterDistance; this.clusterDensity = lbLandscapeMesh.clusterDensity; this.clusterResolution = lbLandscapeMesh.clusterResolution; this.removeGrass = lbLandscapeMesh.removeGrass; this.minGrassProximity = lbLandscapeMesh.minGrassProximity; this.showMesh = lbLandscapeMesh.showMesh; this.isDisabled = lbLandscapeMesh.isDisabled; this.usePrefab = lbLandscapeMesh.usePrefab; this.prefab = lbLandscapeMesh.prefab; this.isCombineMesh = lbLandscapeMesh.isCombineMesh; this.isCreateCollider = lbLandscapeMesh.isCreateCollider; this.isRemoveEmptyGameObjects = lbLandscapeMesh.isRemoveEmptyGameObjects; this.minTreeProximity = lbLandscapeMesh.minTreeProximity; this.isTerrainFlattened = lbLandscapeMesh.isTerrainFlattened; this.flattenDistance = lbLandscapeMesh.flattenDistance; this.flattenBlendRate = lbLandscapeMesh.flattenBlendRate; this.flattenHeightOffset = lbLandscapeMesh.flattenHeightOffset; if (lbLandscapeMesh.filterList != null) { this.filterList = LBFilter.CopyList(lbLandscapeMesh.filterList); } else { this.filterList = new List <LBFilter>(); } this.isKeepPrefabConnection = lbLandscapeMesh.isKeepPrefabConnection; if (lbLandscapeMesh.prefabName == null) { this.prefabName = string.Empty; } else { this.prefabName = lbLandscapeMesh.prefabName; } }
/// <summary> /// Constructor to create a clone of a LBTerrainGrass instance /// </summary> /// <param name="lbTerrainGrass"></param> public LBTerrainGrass(LBTerrainGrass lbTerrainGrass) { this.texture = lbTerrainGrass.texture; if (lbTerrainGrass.textureName == null) { this.textureName = string.Empty; } else { this.textureName = lbTerrainGrass.textureName; } this.minHeight = lbTerrainGrass.minHeight; this.maxHeight = lbTerrainGrass.maxHeight; this.minWidth = lbTerrainGrass.minWidth; this.maxWidth = lbTerrainGrass.maxWidth; this.healthyColour = lbTerrainGrass.healthyColour; this.dryColour = lbTerrainGrass.dryColour; this.noiseSpread = lbTerrainGrass.noiseSpread; this.minPopulatedHeight = lbTerrainGrass.minPopulatedHeight; this.maxPopulatedHeight = lbTerrainGrass.maxPopulatedHeight; this.minInclination = lbTerrainGrass.minInclination; this.maxInclination = lbTerrainGrass.maxInclination; this.influence = lbTerrainGrass.influence; this.minDensity = lbTerrainGrass.minDensity; this.density = lbTerrainGrass.density; this.detailRenderMode = lbTerrainGrass.detailRenderMode; this.isCurvatureConcave = lbTerrainGrass.isCurvatureConcave; this.curvatureDistance = lbTerrainGrass.curvatureDistance; this.curvatureMinHeightDiff = lbTerrainGrass.curvatureMinHeightDiff; this.grassPlacingMode = lbTerrainGrass.grassPlacingMode; this.grassPatchFadingMode = lbTerrainGrass.grassPatchFadingMode; this.map = lbTerrainGrass.map; this.mapColour = lbTerrainGrass.mapColour; this.mapTolerance = lbTerrainGrass.mapTolerance; this.mapInverse = lbTerrainGrass.mapInverse; this.mapToleranceBlendCurve = lbTerrainGrass.mapToleranceBlendCurve; this.mapIsPath = lbTerrainGrass.mapIsPath; this.isDisabled = lbTerrainGrass.isDisabled; if (lbTerrainGrass.filterList != null) { this.filterList = LBFilter.CopyList(lbTerrainGrass.filterList); } else { this.filterList = new List <LBFilter>(); } this.showGrass = lbTerrainGrass.showGrass; this.useNoise = lbTerrainGrass.useNoise; this.noiseTileSize = lbTerrainGrass.noiseTileSize; this.noiseOctaves = lbTerrainGrass.noiseOctaves; this.grassPlacementCutoff = lbTerrainGrass.grassPlacementCutoff; if (lbTerrainGrass.lbTerrainDataList == null) { this.lbTerrainDataList = null; } else { this.lbTerrainDataList = new List <LBTerrainData>(lbTerrainGrass.lbTerrainDataList); } this.useMeshPrefab = lbTerrainGrass.useMeshPrefab; this.meshPrefab = lbTerrainGrass.meshPrefab; if (lbTerrainGrass.meshPrefabName == null) { this.meshPrefabName = string.Empty; } else { this.meshPrefabName = lbTerrainGrass.meshPrefabName; } this.showPrefabPreview = lbTerrainGrass.showPrefabPreview; this.GUID = lbTerrainGrass.GUID; }
/// <summary> /// Clone Constructor /// </summary> /// <param name="lbTerrainTree"></param> public LBTerrainTree(LBTerrainTree lbTerrainTree) { this.maxTreesPerSqrKm = lbTerrainTree.maxTreesPerSqrKm; this.bendFactor = lbTerrainTree.bendFactor; this.prefab = lbTerrainTree.prefab; this.minScale = lbTerrainTree.minScale; this.maxScale = lbTerrainTree.maxScale; this.treeScalingMode = lbTerrainTree.treeScalingMode; this.lockWidthToHeight = lbTerrainTree.lockWidthToHeight; this.minProximity = lbTerrainTree.minProximity; this.minHeight = lbTerrainTree.minHeight; this.maxHeight = lbTerrainTree.maxHeight; this.minInclination = lbTerrainTree.minInclination; this.maxInclination = lbTerrainTree.maxInclination; this.treePlacingMode = lbTerrainTree.treePlacingMode; this.isCurvatureConcave = lbTerrainTree.isCurvatureConcave; this.curvatureDistance = lbTerrainTree.curvatureDistance; this.curvatureMinHeightDiff = lbTerrainTree.curvatureMinHeightDiff; this.map = lbTerrainTree.map; this.mapColour = lbTerrainTree.mapColour; this.mapTolerance = lbTerrainTree.mapTolerance; this.mapInverse = lbTerrainTree.mapInverse; this.useNoise = lbTerrainTree.useNoise; this.noiseTileSize = lbTerrainTree.noiseTileSize; this.noiseOffset = lbTerrainTree.noiseOffset; this.treePlacementCutoff = lbTerrainTree.treePlacementCutoff; this.mapToleranceBlendCurve = lbTerrainTree.mapToleranceBlendCurve; this.mapIsPath = lbTerrainTree.mapIsPath; this.isDisabled = lbTerrainTree.isDisabled; this.offsetY = lbTerrainTree.offsetY; this.showTree = lbTerrainTree.showTree; if (lbTerrainTree.filterList != null) { this.filterList = LBFilter.CopyList(lbTerrainTree.filterList); } else { this.filterList = new List <LBFilter>(); } this.isTinted = lbTerrainTree.isTinted; this.maxTintStrength = lbTerrainTree.maxTintStrength; this.tintColour = lbTerrainTree.tintColour; if (lbTerrainTree.lbTerrainDataList == null) { this.lbTerrainDataList = null; } else { this.lbTerrainDataList = new List <LBTerrainData>(lbTerrainTree.lbTerrainDataList); } if (lbTerrainTree.prefabName == null) { this.prefabName = string.Empty; } else { this.prefabName = lbTerrainTree.prefabName; } this.showPrefabPreview = lbTerrainTree.showPrefabPreview; this.GUID = lbTerrainTree.GUID; }