Change the limit multiplier.
This method is more efficient than accessing the whole curve, if you only want to change the overall limit multiplier.
#pragma strict private var ps: ParticleSystem; public var moduleEnabled: boolean = true; public var hSliderValueSpeed: float = 0.0f; public var hSliderValueDampen: float = 0.1f; function Start() { ps = GetComponent.<ParticleSystem>(); } function Update() { var limitVelocityOverLifetime: var = ps.limitVelocityOverLifetime; limitVelocityOverLifetime.enabled = moduleEnabled; limitVelocityOverLifetime.limitMultiplier = hSliderValueSpeed; limitVelocityOverLifetime.dampen = hSliderValueDampen; } function OnGUI() { moduleEnabled = GUI.Toggle(new Rect(25, 45, 200, 30), moduleEnabled, "Enabled"); GUI.Label(new Rect(25, 80, 100, 30), "Speed Limit"); GUI.Label(new Rect(25, 120, 100, 30), "Dampen"); hSliderValueSpeed = GUI.HorizontalSlider(new Rect(95, 85, 100, 30), hSliderValueSpeed, 0.0f, 2.0f); hSliderValueDampen = GUI.HorizontalSlider(new Rect(95, 125, 100, 30), hSliderValueDampen, 0.0f, 1.0f); }
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { private ParticleSystem ps; public bool moduleEnabled = true; public float hSliderValueSpeed = 0.0f; public float hSliderValueDampen = 0.1f;
void Start() { ps = GetComponent<ParticleSystem>(); }
void Update() { var limitVelocityOverLifetime = ps.limitVelocityOverLifetime; limitVelocityOverLifetime.enabled = moduleEnabled; limitVelocityOverLifetime.limitMultiplier = hSliderValueSpeed; limitVelocityOverLifetime.dampen = hSliderValueDampen; }
void OnGUI() { moduleEnabled = GUI.Toggle(new Rect(25, 45, 200, 30), moduleEnabled, "Enabled");
GUI.Label(new Rect(25, 80, 100, 30), "Speed Limit"); GUI.Label(new Rect(25, 120, 100, 30), "Dampen");
hSliderValueSpeed = GUI.HorizontalSlider(new Rect(95, 85, 100, 30), hSliderValueSpeed, 0.0f, 2.0f); hSliderValueDampen = GUI.HorizontalSlider(new Rect(95, 125, 100, 30), hSliderValueDampen, 0.0f, 1.0f); } }