// ------------------------------------------- /* * Clear all interpolations */ public void Clear() { for (int i = 0; i < m_inteporlateObjects.Count; i++) { AlphaData item = m_inteporlateObjects[i]; item.Destroy(); } m_inteporlateObjects.Clear(); }
// ------------------------------------------- /* * Stop existing gameobject */ public bool Stop(GameObject _actor) { for (int i = 0; i < m_inteporlateObjects.Count; i++) { AlphaData item = m_inteporlateObjects[i]; if (item.GameActor == _actor) { item.Destroy(); m_inteporlateObjects.RemoveAt(i); return(true); } } return(false); }
// ------------------------------------------- /* * Run logic of the interpolation */ void Update() { try { for (int i = 0; i < m_inteporlateObjects.Count; i++) { AlphaData 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++) { AlphaData newItem = m_inteporlateQueue[j]; bool found = false; for (int i = 0; i < m_inteporlateObjects.Count; i++) { AlphaData item = m_inteporlateObjects[i]; if (item.GameActor == newItem.GameActor) { item.ResetData(newItem.GameActor.GetComponent <CanvasGroup>().alpha, newItem.Goal, newItem.TotalTime, 0); found = true; } } if (!found) { m_inteporlateObjects.Add(newItem); } else { newItem.Destroy(); newItem = null; } } m_inteporlateQueue.Clear(); }