123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- public class ConvertEffect : MonoSingleton<ConvertEffect>
- {
- public enum convertEffectType
- {
- Default,
- White,
- Black,
- WhiteToBlack,
- BlackToWhite,
- WhiteToLucency,
- BlackToLucency,
- LucencyToWhite,
- LucencyToBlack,
- Transmitimg_in,
- Transmitimg_out,
- Transmitimg_1_out,
- Dying, //濒死
- }
- private Animator anim;
- private AniEvent.PlayFinishCallback finishCallback;
- private AniEvent animEvent;
- public bool isPlay;
- /// <summary>
- /// 初始化
- /// </summary>
- private void Init()
- {
- if (anim == null)
- {
- anim = GameObject.Find("ForeverUI/ConvertEffect").GetComponent<Animator>();
- anim.gameObject.SetActive(true);
- }
- if (animEvent == null)
- {
- animEvent = GameObject.Find("ForeverUI/ConvertEffect").GetComponent<AniEvent>();
- }
- }
- public void PlayEffect(convertEffectType effectType, AniEvent.PlayFinishCallback cb)
- {
- Init();
- string animName = "";
- switch (effectType)
- {
- case convertEffectType.Black:
- animName = "Black";
- break;
- case convertEffectType.Default:
- animName = "Default";
- break;
- case convertEffectType.White:
- animName = "White";
- break;
- case convertEffectType.WhiteToBlack:
- animName = "WhiteToBlack";
- break;
- case convertEffectType.BlackToWhite:
- animName = "BlackToWhite";
- break;
- case convertEffectType.BlackToLucency:
- animName = "BlackToLucency";
- break;
- case convertEffectType.WhiteToLucency:
- animName = "WhiteToLucency";
- break;
- case convertEffectType.LucencyToBlack:
- animName = "LucencyToBlack";
- break;
- case convertEffectType.LucencyToWhite:
- animName = "LucencyToWhite";
- break;
- case convertEffectType.Transmitimg_in:
- animName = "Transmiting_in";
- break;
- case convertEffectType.Transmitimg_out:
- animName = "Transmitimg_out";
- break;
- case convertEffectType.Transmitimg_1_out:
- animName = "Transmitimg_1_out";
- break;
- case convertEffectType.Dying:
- animName = "dying";
- break;
- }
- finishCallback = cb;
- if (finishCallback == null)
- {
- finishCallback = (obj) => { anim.gameObject.SetActive(false); };
- }
- animEvent.closecb = finishCallback;
- anim.Play(animName);
- }
- public void PlayEffect(string animName, AniEvent.PlayFinishCallback cb)
- {
- Init();
- finishCallback = cb;
- animEvent.closecb = finishCallback;
- anim.Play(animName);
- }
- }
|