Пример #1
0
    public static void StopSingleCoroutine(this ISingleCoroutine target, int index = 0)
    {
        int targetIndex = CoroutineManager.QuestForIndex(target, index);

        if (CoroutineManager.Dic_Coroutines.ContainsKey(targetIndex) && CoroutineManager.Dic_Coroutines[targetIndex] != null)
        {
            CoroutineManager.Instance.StopCoroutine(CoroutineManager.Dic_Coroutines[targetIndex]);
        }
    }
Пример #2
0
    public static void StartSingleCoroutine(this ISingleCoroutine target, int index, IEnumerator numerator)
    {
        if (index < 0)
        {
            Debug.LogWarning(" Should Not Add Coroutine Index Which Below 0");
        }

        int targetIndex = CoroutineManager.QuestForIndex(target, index);

        if (CoroutineManager.Dic_Coroutines.ContainsKey(targetIndex))
        {
            if (CoroutineManager.Dic_Coroutines[targetIndex] != null)
            {
                CoroutineManager.Instance.StopCoroutine(CoroutineManager.Dic_Coroutines[targetIndex]);
            }
        }
        else
        {
            CoroutineManager.Dic_Coroutines.Add(targetIndex, null);
        }
        CoroutineManager.Dic_Coroutines[targetIndex] = CoroutineManager.Instance.StartCoroutine(numerator);
    }