78 lines
4.0 KiB
C#
78 lines
4.0 KiB
C#
using UnityEngine;
|
|
|
|
public class RamSwitch : MonoBehaviour
|
|
{
|
|
public RamSpline spline;
|
|
|
|
public SplineProfile Profile;
|
|
|
|
public void Switch()
|
|
{
|
|
SetProfile(Profile);
|
|
spline.GenerateSpline();
|
|
}
|
|
|
|
public void SetProfile(SplineProfile splineProfile)
|
|
{
|
|
spline.currentProfile = splineProfile;
|
|
spline.meshCurve = new AnimationCurve(spline.currentProfile.meshCurve.keys);
|
|
spline.flowFlat = new AnimationCurve(spline.currentProfile.flowFlat.keys);
|
|
spline.flowWaterfall = new AnimationCurve(spline.currentProfile.flowWaterfall.keys);
|
|
spline.terrainCarve = new AnimationCurve(spline.currentProfile.terrainCarve.keys);
|
|
spline.terrainPaintCarve = new AnimationCurve(spline.currentProfile.terrainPaintCarve.keys);
|
|
for (int i = 0; i < spline.controlPointsMeshCurves.Count; i++)
|
|
{
|
|
spline.controlPointsMeshCurves[i] = new AnimationCurve(spline.meshCurve.keys);
|
|
}
|
|
spline.GetComponent<MeshRenderer>().sharedMaterial = spline.currentProfile.splineMaterial;
|
|
spline.minVal = spline.currentProfile.minVal;
|
|
spline.maxVal = spline.currentProfile.maxVal;
|
|
spline.traingleDensity = spline.currentProfile.traingleDensity;
|
|
spline.vertsInShape = spline.currentProfile.vertsInShape;
|
|
spline.uvScale = spline.currentProfile.uvScale;
|
|
spline.uvRotation = spline.currentProfile.uvRotation;
|
|
spline.noiseflowMap = spline.currentProfile.noiseflowMap;
|
|
spline.noiseMultiplierflowMap = spline.currentProfile.noiseMultiplierflowMap;
|
|
spline.noiseSizeXflowMap = spline.currentProfile.noiseSizeXflowMap;
|
|
spline.noiseSizeZflowMap = spline.currentProfile.noiseSizeZflowMap;
|
|
spline.floatSpeed = spline.currentProfile.floatSpeed;
|
|
spline.distSmooth = spline.currentProfile.distSmooth;
|
|
spline.distSmoothStart = spline.currentProfile.distSmoothStart;
|
|
spline.noiseCarve = spline.currentProfile.noiseCarve;
|
|
spline.noiseMultiplierInside = spline.currentProfile.noiseMultiplierInside;
|
|
spline.noiseMultiplierOutside = spline.currentProfile.noiseMultiplierOutside;
|
|
spline.noiseSizeX = spline.currentProfile.noiseSizeX;
|
|
spline.noiseSizeZ = spline.currentProfile.noiseSizeZ;
|
|
spline.terrainSmoothMultiplier = spline.currentProfile.terrainSmoothMultiplier;
|
|
spline.currentSplatMap = spline.currentProfile.currentSplatMap;
|
|
spline.mixTwoSplatMaps = spline.currentProfile.mixTwoSplatMaps;
|
|
spline.secondSplatMap = spline.currentProfile.secondSplatMap;
|
|
spline.addCliffSplatMap = spline.currentProfile.addCliffSplatMap;
|
|
spline.cliffSplatMap = spline.currentProfile.cliffSplatMap;
|
|
spline.cliffAngle = spline.currentProfile.cliffAngle;
|
|
spline.cliffBlend = spline.currentProfile.cliffBlend;
|
|
spline.cliffSplatMapOutside = spline.currentProfile.cliffSplatMapOutside;
|
|
spline.cliffAngleOutside = spline.currentProfile.cliffAngleOutside;
|
|
spline.cliffBlendOutside = spline.currentProfile.cliffBlendOutside;
|
|
spline.distanceClearFoliage = spline.currentProfile.distanceClearFoliage;
|
|
spline.distanceClearFoliageTrees = spline.currentProfile.distanceClearFoliageTrees;
|
|
spline.noisePaint = spline.currentProfile.noisePaint;
|
|
spline.noiseMultiplierInsidePaint = spline.currentProfile.noiseMultiplierInsidePaint;
|
|
spline.noiseMultiplierOutsidePaint = spline.currentProfile.noiseMultiplierOutsidePaint;
|
|
spline.noiseSizeXPaint = spline.currentProfile.noiseSizeXPaint;
|
|
spline.noiseSizeZPaint = spline.currentProfile.noiseSizeZPaint;
|
|
spline.simulatedRiverLength = spline.currentProfile.simulatedRiverLength;
|
|
spline.simulatedRiverPoints = spline.currentProfile.simulatedRiverPoints;
|
|
spline.simulatedMinStepSize = spline.currentProfile.simulatedMinStepSize;
|
|
spline.simulatedNoUp = spline.currentProfile.simulatedNoUp;
|
|
spline.simulatedBreakOnUp = spline.currentProfile.simulatedBreakOnUp;
|
|
spline.noiseWidth = spline.currentProfile.noiseWidth;
|
|
spline.noiseMultiplierWidth = spline.currentProfile.noiseMultiplierWidth;
|
|
spline.noiseSizeWidth = spline.currentProfile.noiseSizeWidth;
|
|
spline.receiveShadows = spline.currentProfile.receiveShadows;
|
|
spline.shadowCastingMode = spline.currentProfile.shadowCastingMode;
|
|
spline.GenerateSpline();
|
|
spline.oldProfile = spline.currentProfile;
|
|
}
|
|
}
|