public void StartSpriteSequence(BaseSpriteSequenceInfor infor, UnityEngine.UI.Image img) { if (infor != null) { StartSpriteSequence(infor.AnimationName, img); } }
/// <summary> /// 强制停止和移除 /// </summary> /// <param name="sequenceInfor"></param> public void ForceStopSequence(BaseSpriteSequenceInfor sequenceInfor) { if (sequenceInfor == null) { Debug.LogError("ForceStopSequence Fail"); return; } int index = -1; for (int dex = 0; dex < m_AllSequence.Count; ++dex) { if (m_AllSequence[dex].m_SequenceInfor == sequenceInfor) { index = dex; break; } } if (index != -1) { m_AllSequence.RemoveAt(index); sequenceInfor.StopAndClearSequence(); //清理资源 Debug.Log("Stop And Remove Sequence Success " + sequenceInfor.AnimationName); } //else //{ // Debug.LogError("Can't Find This Sequence " + sequenceInfor.AnimationName); //} }
/// <summary> /// 暂停 /// </summary> /// <param name="sequenceInfor"></param> public void ForcePauseSequence(BaseSpriteSequenceInfor sequenceInfor) { if (sequenceInfor == null) { return; } for (int dex = 0; dex < m_AllSequence.Count; ++dex) { if (m_AllSequence[dex].m_SequenceInfor == sequenceInfor) { sequenceInfor.ForcePauseSequence(); return; } } Debug.LogError("ForcePauseSequence Fail,Not Exit"); }
/// <summary> /// 将参数的序列帧动画加入到管理器中 /// </summary> /// <param name="infor"></param> public void RecordSpriteSequence(BaseSpriteSequenceInfor infor) { if (infor == null) { Debug.LogError("RecordSpriteSequence Fail, Animation is Null"); return; } if (m_AllSpriteSequenceDic.ContainsKey(infor.AnimationName)) { Debug.Log("This SpriteSequence is Exit,Will overlap Previous " + infor.AnimationName); m_AllSpriteSequenceDic[infor.AnimationName] = infor; } else { m_AllSpriteSequenceDic.Add(infor.AnimationName, infor); } }