1。特效配置表
Singleton (单例在之前文章有)
http://blog.csdn.net/u014761712/article/details/54880421
using UnityEngine;
using System.Collections;
public class EffectPlay : Singleton<EffectPlay>
{
public EffectChars[] effects;
public void Play(string key)
{
foreach (var data in effects)
{
if (data.key == key)
{
if (data.obj)
{
if (data.obj.activeSelf)
{
data.obj.SetActive(false);
}
data.obj.SetActive(true);
}
}
}
}
public void Play(string key ,Vector3 position)
{
foreach (var data in effects)
{
if (data.key == key)
{
if (data.obj)
{
data.obj.SetActive(false);
data.obj.transform.position = position;
data.obj.SetActive(true);
}
}
}
}
public void Play(string key, Transform message)
{
foreach (var data in effects)
{
if (data.key == key)
{
if (data.obj)
{
data.obj.SetActive(false);
data.obj.transform.position = message.position;
data.obj.transform.localEulerAngles = message.localEulerAngles;
data.obj.SetActive(true);
}
}
}
}
public void Stop(string key)
{
foreach (var data in effects)
{
if (data.key == key)
{
if (data.obj)
{
if (data.obj.activeSelf)
{
data.obj.SetActive(false);
}
}
}
}
}
public void Stop()
{
foreach (var data in effects)
{
data.obj.SetActive(false);
}
}
}
[System.Serializable]
public class EffectChars
{
public string key;
public GameObject obj;
}
2.通过配置来
- 调用 EffectPlay.Instance.Play(“彩带特效”);