Is the Particle System playing right now?
isPlaying returns true
when the particle system happens on each frame. The particle system has been stopped when isPlaying returns false
.
#pragma strict // A particle sprite example of isPlaying. A button is created // that shows whether the particle system is running. If not, then // it can be started. If it is running then it can be stopped. public var tex: Texture2D; private var ps: ParticleSystem; private var sprite: Sprite; function Start() { ps = GetComponent.<ParticleSystem>(); sprite = Sprite.Create(tex, new Rect(0.0f, 0.0f, tex.width, tex.height), Vector2.zero); var textureSheetAnimation: var = ps.textureSheetAnimation; textureSheetAnimation.enabled = true; textureSheetAnimation.mode = ParticleSystemAnimationMode.Sprites; textureSheetAnimation.AddSprite(sprite); } function OnGUI() { if (ps.isPlaying) { if (GUI.Button(new Rect(10, 70, 150, 50), "Stop and clear")) { ps.Stop(true, ParticleSystemStopBehavior.StopEmittingAndClear); } } else { if (GUI.Button(new Rect(10, 70, 150, 50), "Play")) { ps.Play(false); } } }
using UnityEngine;
// A particle sprite example of isPlaying. A button is created // that shows whether the particle system is running. If not, then // it can be started. If it is running then it can be stopped.
using UnityEngine;
public class ExampleClass : MonoBehaviour { public Texture2D tex; private ParticleSystem ps; private Sprite sprite;
void Start() { ps = GetComponent<ParticleSystem>(); sprite = Sprite.Create(tex, new Rect(0.0f, 0.0f, tex.width, tex.height), Vector2.zero);
var textureSheetAnimation = ps.textureSheetAnimation; textureSheetAnimation.enabled = true; textureSheetAnimation.mode = ParticleSystemAnimationMode.Sprites; textureSheetAnimation.AddSprite(sprite); }
void OnGUI() { if (ps.isPlaying) { if (GUI.Button(new Rect(10, 70, 150, 50), "Stop and clear")) { ps.Stop(true, ParticleSystemStopBehavior.StopEmittingAndClear); } } else { if (GUI.Button(new Rect(10, 70, 150, 50), "Play")) { ps.Play(false); } } } }