MonoBehaviour.OnParticleSystemStopped()

Switch to Manual

Description

OnParticleSystemStopped is called when all particles in the system have died, and no new particles will be born. New particles cease to be created either after Stop is called, or when the duration property of a non-looping system has been exceeded.

This can be used to notify a script of when a Particle System has finished. In order to receive the callback, you must set the ParticleSystem.MainModule.stopAction property to Callback.

using UnityEngine;
using System.Collections;
using System.Collections.Generic;

public class StoppedScript : MonoBehaviour { void Start() { var main = GetComponent<ParticleSystem>().main; main.stopAction = ParticleSystemStopAction.Callback; }

void OnParticleSystemStopped() { Debug.Log("System has stopped!"); } }

要检索 ParticleSystem 造成的所有碰撞的详细信息,必须使用 ParticlePhysicsExtensions.GetTriggerParticles 检索 Particle 的数组。