// ------------------------------------------- /* * Stop all existing animations */ public bool StopAll() { for (int i = 0; i < m_inteporlateObjects.Count; i++) { IInterpolateData item = m_inteporlateObjects[i]; item.Destroy(); m_inteporlateObjects.RemoveAt(i); } return(false); }
// ------------------------------------------- /* * Stop existing gameobject */ public bool Stop(GameObject _actor) { for (int i = 0; i < m_inteporlateObjects.Count; i++) { IInterpolateData item = m_inteporlateObjects[i]; if (item.GameActor == _actor) { item.Destroy(); m_inteporlateObjects.RemoveAt(i); return(true); } } return(false); }
// ------------------------------------------- /* * Logic */ public void Logic() { try { for (int i = 0; i < m_inteporlateObjects.Count; i++) { IInterpolateData itemData = m_inteporlateObjects[i]; if (itemData.Inperpolate()) { itemData.Destroy(); m_inteporlateObjects.RemoveAt(i); i--; } } } catch (Exception err) { }; for (int j = 0; j < m_inteporlateQueue.Count; j++) { IInterpolateData newItem = m_inteporlateQueue[j]; bool found = false; for (int i = 0; i < m_inteporlateObjects.Count; i++) { IInterpolateData item = m_inteporlateObjects[i]; if ((item.GameActor == newItem.GameActor) && (item.TypeData == newItem.TypeData)) { item.ResetData(newItem.GameActor.transform, newItem.Goal, newItem.TotalTime, 0); found = true; } } if (!found) { m_inteporlateObjects.Add(newItem); } else { newItem.Destroy(); newItem = null; } } m_inteporlateQueue.Clear(); }