Ejemplo n.º 1
0
    public void PutBaseObject(ref BaseObject _base)
    {
        _base.UnInit();
        int key = PartIDConfig.Get(_base.GetType().ToString()).value;

        m_BaseObjectPoolDic[key].Put(_base);
        _base = null;
    }
Ejemplo n.º 2
0
    public T GetBaseObject <T>(BaseObject _obj) where T : BaseObject, new()
    {
        T   value = default(T);
        int key   = PartIDConfig.Get(typeof(T).ToString()).value;

        value = m_BaseObjectPoolDic[key].Get() as T;
        value?.Init(_obj);
        return(value);
    }
Ejemplo n.º 3
0
    private void InitBaseObjectPoolDic()
    {
        m_BaseObjectPoolDic = new Dictionary <int, BaseObjectPool>();
        var keys = PartIDConfig.GetKeys();

        foreach (var key in keys)
        {
            int            id   = PartIDConfig.Get(key).value;
            BaseObjectPool pool = new BaseObjectPool(id, key, GloblConfig.MAX_POOL_COUNT);
            m_BaseObjectPoolDic[id] = pool;
        }
    }