Пример #1
0
    public static bool DeleteManager(Type _Managertype)
    {
        if (Instance == null)
        {
            return(false);
        }

        if (TYPE_DICT.ContainsKey(_Managertype) == false)
        {
            return(false);
        }

        BaseObject _curObject = TYPE_DICT[_Managertype];

        TYPE_DICT.Remove(_Managertype);

        if (VOLATILE_LIST.Contains(_curObject))
        {
            VOLATILE_LIST.Remove(_curObject);
            return(true);
        }

        if (STABLE_LIST.Contains(_curObject))
        {
            STABLE_LIST.Remove(_curObject);
            return(true);
        }

        Debug.LogError("whole list has manager but no other has");
        return(false);
    }
Пример #2
0
    public static bool AddManager(Type _Managertype, BaseObject _manager, eManagerResetType _type = eManagerResetType.VOLATILE)
    {
        if (TYPE_DICT.ContainsKey(_Managertype))
        {
            return(false);
        }

        TYPE_DICT.Add(_Managertype, _manager);

        if (_type == eManagerResetType.VOLATILE)
        {
            VOLATILE_LIST.Add(_manager);
        }
        else if (_type == eManagerResetType.STABLE)
        {
            STABLE_LIST.Add(_manager);
        }

        return(true);
    }