43 lines
992 B
C#
43 lines
992 B
C#
using UnityEngine;
|
||
|
||
public class ParticleStateController : MonoBehaviour
|
||
{
|
||
// 直接引用粒子效果的GameObject(子物体)
|
||
[SerializeField] private GameObject ParticleSystem;
|
||
|
||
private void Start()
|
||
{
|
||
// 如果未指定,尝试查找名为"Particle"的子物体
|
||
if (ParticleSystem == null)
|
||
{
|
||
ParticleSystem = transform.Find("ParticleSystem")?.gameObject;
|
||
if (ParticleSystem == null)
|
||
{
|
||
Debug.LogWarning("未找到粒子GameObject,请手动指定", this);
|
||
}
|
||
}
|
||
|
||
// 初始状态设为A(隐藏粒子)
|
||
//SetStateA();
|
||
}
|
||
|
||
// 状态A:隐藏粒子(禁用粒子GameObject)
|
||
public void SetStateturnON()
|
||
{
|
||
if (ParticleSystem != null)
|
||
{
|
||
ParticleSystem.SetActive(false);
|
||
}
|
||
}
|
||
|
||
// 状态B:显示粒子(启用粒子GameObject)
|
||
public void SetStateturnOFF()
|
||
{
|
||
if (ParticleSystem != null)
|
||
{
|
||
ParticleSystem.SetActive(true);
|
||
}
|
||
}
|
||
}
|
||
|