Пример #1
0
        public void Send(API_ID api_id, RES_STATE res, string json)
        {
            string strMsg = api_id.ToString() + " " + res.ToString() + " " + json;

            strMsg += RESTMNT;
            base.Send(strMsg);
        }
Пример #2
0
        //加载资源
        public void LoadRes()
        {
            if (RES_STATE.RES_STATE_NOT_LOAD != m_eLoadState)
            {
                return;
            }

            m_eLoadState = RES_STATE.RES_STATE_LOADING;
            AssetLoader.LoadAssetAsync(m_AssetBundleName, m_AssetName, OnResLoaded);
        }
Пример #3
0
        public void Send(API_ID api_id, RES_STATE res, List <string> Parameters)
        {
            string strMsg = api_id.ToString() + " " + res.ToString() + " ";

            foreach (string para in Parameters)
            {
                strMsg += (para + " ");
            }
            strMsg += RESTMNT;
            base.Send(strMsg);
        }
Пример #4
0
        public ObjectPool(ref string assetBundleName, ref string assetName,
                          UnityAction <T> actionOnGet, UnityAction <T> actionOnRelease,
                          UnityAction <T, ObjectPool <T> > actionOnAdd, UnityAction <T, ObjectPool <T> > actionOnRemove)
        {
            m_AssetBundleName = assetBundleName;
            m_AssetName       = assetName;

            m_ActionOnGet     = actionOnGet;
            m_ActionOnRelease = actionOnRelease;

            m_ActionOnAdd    = actionOnAdd;
            m_ActionOnRemove = actionOnRemove;

            m_Callbacks  = new List <System.Action <Object> >();
            m_eLoadState = RES_STATE.RES_STATE_NOT_LOAD;
        }
Пример #5
0
        //资源加载完成
        private void OnResLoaded(Object go)
        {
            m_eLoadState = RES_STATE.RES_STATE_LOADED;
            prefab       = go;

            if (m_bSyncLoad)
            {
                while (m_Callbacks.Count > 0)
                {
                    System.Action <Object> callback = m_Callbacks[0];
                    m_Callbacks.RemoveAt(0);
                    callback(Get());
                }
            }

            //AssetLoader.UnloadAssetBundle(m_AssetBundleName);
        }
Пример #6
0
        public bool Clear(bool bUnload)
        {
            while (m_Stack.Count > 0)
            {
                --countAll;
                var element = m_Stack.Pop();
                m_ActionOnRemove(element, this);
                Object.DestroyImmediate(element);
            }

            if (countActive == 0 && bUnload)
            {
                prefab = null;
                AssetLoader.UnloadAssetBundle(m_AssetBundleName);
                m_eLoadState = RES_STATE.RES_STATE_NOT_LOAD;
                return(true);
            }

            return(false);
        }
Пример #7
0
        public void Send(API_ID api_id, RES_STATE res)
        {
            string strMsg = api_id.ToString() + " " + res.ToString() + " " + RESTMNT;

            base.Send(strMsg);
        }