Example #1
0
 /// <summary>
 /// 시간 누적 및 기록 제거
 /// </summary>
 public void LateUpdate()
 {
     for (int i = 0; i < m_FilterInfoList.Count; i++)
     {
         m_FilterInfoList.ElementAt(i).m_fTimer += Time.deltaTime;
         if (m_FilterInfoList.ElementAt(i).m_fTimer >= m_fTime)
         {
             RemoveFilterInfo(m_FilterInfoList.ElementAt(i));
         }
     }
 }
Example #2
0
    //public void OnGUI()
    //{

    //}

    /// <summary>
    /// 각 객체별로 코루틴을 다음단계로 진행시킵니다. 끝까지 진행된 코루틴은 Updater내부에서 폐기 시킵니다.
    /// </summary>
    void LateUpdate()
    {
        //PartyManager.StartStopWatch("코루틴메인");
        for (int i = 0; i < m_ObjectList.Count; i++)
        {
            CustomDictionary <IEnumerator, Updater> UpdaterList = m_ObjectList.ElementAt(i).m_CoroutineList;
            for (int j = 0; j < UpdaterList.Count; j++)
            {
                Updater CurrCoroutine = UpdaterList.ElementAt(j);
                CurrCoroutine.MainRoutine();
            }
        }
        //PartyManager.EndStopWatch("코루틴메인");
    }
Example #3
0
    /// <summary>
    /// 해당 객체가 소유하고 있는 모든 코루틴을 제거하고 해당 객체또한 객체 리스트에서 제거합니다.
    /// </summary>
    /// <param name="Mono"></param>
    public void RemoveAllCoroutines(MonoBehaviour Mono)
    {
        int nMonoKey = Mono.GetInstanceID();

        ///해당 객체가 없다면
        if (!m_ObjectList.ContainsKey(nMonoKey))
        {
            return;
        }
        CustomDictionary <IEnumerator, Updater> CoroutineList = m_ObjectList[nMonoKey].m_CoroutineList;

        for (int i = 0; i < CoroutineList.Count; i++)
        {
            if (RemoveCoroutine(nMonoKey, CoroutineList.ElementAt(i)))
            {
                i--;
            }
        }
    }