/// <summary> /// 所有特效动画放入缓存池中 /// </summary> public void AllEffectAnimsIntoPool() { for (int i = 0; i < effectAnimContainer.childCount; i++) { EffectAnim effectAnim = effectAnimContainer.GetChild(i).GetComponent <EffectAnim>(); if (effectAnim.isProtectedBeforeEnd) { continue; } exploreManager.newMapGenerator.AddEffectAnimToPool(effectAnim); i--; } effectAnimContainer.DetachChildren(); }
/// <summary> /// 设置角色特效动画,trigger 型触发器 /// </summary> /// <param name="animName">触发器名称</param> public void SetEffectAnim(string effectName, CallBack cb = null, int playTimes = 1, float duration = 0, bool isProtectedBeforeEnd = false) { if (effectName == string.Empty || exploreManager == null) { return; } EffectAnim skillEffect = exploreManager.newMapGenerator.GetEffectAnim(effectName, effectAnimContainer); skillEffect.isProtectedBeforeEnd = isProtectedBeforeEnd; if (skillEffect != null) { skillEffect.gameObject.SetActive(true); // 所有的特效播放名称都是default skillEffect.PlayAnim("default", cb, effectAnimYScaler, playTimes, duration); } }