Ejemplo n.º 1
0
        public IEnumerator LoadSync(string path, Callback_1 <byte[]> onLoadSuccess, Callback_1 <string> onLoadFaile)
        {
            m_isDone = false;
            m_www    = new WWW(path);
            yield return(m_www);

            if (m_www.isDone && string.IsNullOrEmpty(m_www.error))
            {
                byte[] bytes = m_www.bytes;
                m_www.Dispose();
                if (onLoadSuccess != null)
                {
                    onLoadSuccess(bytes);
                }
                m_isDone = true;
            }
            else
            {
                m_www.Dispose();
                if (onLoadFaile != null)
                {
                    onLoadFaile("Load Error:: " + m_www.error);
                }
            }
        }
Ejemplo n.º 2
0
 /// <summary>
 /// 构造函数
 /// </summary>
 /// <param name="creater">创建调用,如 new T()或 GameObject.Instantiate</param>
 /// <param name="onGet">获取时调用</param>
 /// <param name="onRelease">释放时调用</param>
 /// <param name="onClear">清除时调用</param>
 public ObjectPool(T_Callback <T> creater, Callback_1 <T> onGet, Callback_1 <T> onRelease, Callback_1 <T> onClear)
 {
     this.m_Creater   = creater;
     this.m_OnGet     = onGet;
     this.m_OnRelease = onRelease;
     this.m_OnClear   = onClear;
 }
Ejemplo n.º 3
0
    public void LoadAssetAsync(string path, Callback_1 <UnityEngine.Object> loadDoneCallBack)
    {
        UnityEngine.Object asset;
        if (assertDic.TryGetValue(path, out asset))
        {
            loadDoneCallBack(asset);
            return;
        }

        LoadRequest request;

        if (loadRequestDic.TryGetValue(path, out request))
        {
            request.callback.Add(loadDoneCallBack);
        }
        else
        {
            request           = new LoadRequest();
            request.assetPath = path;
            request.callback  = new List <Callback_1 <UnityEngine.Object> >();
            request.callback.Add(loadDoneCallBack);
            loadRequestDic.Add(path, request);
            startCoroutine(loadLocalAsset(request));
        }
    }
Ejemplo n.º 4
0
        public static NetMessageHandler New(Callback_1 <object> callback, int priority)
        {
            NetMessageHandler handler = m_pool.Get();

            handler.m_callback = callback;
            handler.priority   = priority;
            return(handler);
        }
Ejemplo n.º 5
0
        public void LoadAssetSync(string assetPath, Callback_1 <Object> callback, int priority = 0)
        {
            AssetLoader loader = Load(assetPath, true, priority);

            if (loader != null && callback != null)
            {
                loader.LoadAsset(assetPath, callback);
            }
        }
Ejemplo n.º 6
0
 public void RegisterListener(Callback_1 <object> callback, int priority)
 {
     lock (handles)
     {
         NetMessageHandler handler = NetMessageHandler.New(callback, priority);
         handles.Add(handler);
         handles.Sort();
     }
 }
Ejemplo n.º 7
0
        public void RemoveListener(int msgType, Callback_1 <object> callback)
        {
            NetMessageDispatcher dispatcher;

            if (m_listeners.TryGetValue(msgType, out dispatcher))
            {
                dispatcher.RemoveListener(callback);
            }
        }
Ejemplo n.º 8
0
 public override void LoadAsset(string assetPath, Callback_1 <Object> callback)
 {
     if (m_isDone)
     {
         callback(LoadAsset(assetPath));
     }
     else
     {
         AddCompleteEvent(assetPath, callback);
     }
 }
Ejemplo n.º 9
0
        public void RegisterListener(int msgType, Callback_1 <object> callback, int priority = 0)
        {
            NetMessageDispatcher dispatcher;

            if (!m_listeners.TryGetValue(msgType, out dispatcher))
            {
                dispatcher = NetMessageDispatcher.New(msgType);
                m_listeners.Add(msgType, dispatcher);
            }
            dispatcher.RegisterListener(callback, priority);
        }
Ejemplo n.º 10
0
        public void AddListener(InputType inputType, Callback_1 <Vector3> callback)
        {
            switch (inputType)
            {
            case InputType.OnTouchBegin:
                m_OnTouchBegin -= callback;
                m_OnTouchBegin += callback;
                break;

            case InputType.OnLongPress:
                m_OnLongPress -= callback;
                m_OnLongPress += callback;
                break;

            case InputType.OnMoveBegin:
                m_OnMoveBegin -= callback;
                m_OnMoveBegin += callback;
                break;

            case InputType.OnMove:
                m_OnMove -= callback;
                m_OnMove += callback;
                break;

            case InputType.OnMoveEnd:
                m_OnMoveEnd -= callback;
                m_OnMoveEnd += callback;
                break;

            case InputType.OnScale:
                m_OnScale -= callback;
                m_OnScale += callback;
                break;

            case InputType.OnEndLongPress:
                m_OnEndLongPress -= callback;
                m_OnEndLongPress += callback;
                break;

            case InputType.OnClick:
                m_OnClick -= callback;
                m_OnClick += callback;
                break;

            case InputType.OnTouchEnd:
                m_OnTouchEnd -= callback;
                m_OnTouchEnd += callback;
                break;
            }
        }
Ejemplo n.º 11
0
        protected void AddCompleteEvent(string assetPath, Callback_1 <Object> callback)
        {
            if (callback == null)
            {
                return;
            }

            List <Callback_1 <Object> > list;

            if (!m_onCompletes.TryGetValue(assetPath, out list))
            {
                list = new List <Callback_1 <Object> >();
                m_onCompletes.Add(assetPath, list);
            }
            list.Add(callback);
        }
Ejemplo n.º 12
0
 static int CancleLoad(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 3);
         AssetsFactory obj  = (AssetsFactory)ToLua.CheckObject <AssetsFactory>(L, 1);
         string        arg0 = ToLua.CheckString(L, 2);
         Callback_1 <UnityEngine.Object> arg1 = (Callback_1 <UnityEngine.Object>)ToLua.CheckDelegate <Callback_1 <UnityEngine.Object> >(L, 3);
         obj.CancleLoad(arg0, arg1);
         return(0);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Ejemplo n.º 13
0
        public void Connect(ChannelType channelType, string ip, int port, Callback_1 <SocketState> callback, bool isTcp)
        {
            NetworkAgent agent;

            if (!m_channelMap.TryGetValue(channelType, out agent))
            {
                if (isTcp)
                {
                    agent = new NetworkAgent(channelType, SocketType.Stream, ProtocolType.Tcp);
                }
                else
                {
                    agent = new NetworkAgent(channelType, SocketType.Dgram, ProtocolType.Udp);
                }
                m_channelMap.Add(channelType, agent);
            }
            agent.onStateChanged = callback;
            agent.Connect(ip, port);
        }
Ejemplo n.º 14
0
        public void RemoveListener(Callback_1 <object> callback)
        {
            int index = -1;

            lock (handles)
            {
                for (int i = 0; i < handles.Count; i++)
                {
                    if (handles[i].EqualTo(callback))
                    {
                        index = i;
                        break;
                    }
                }
                if (index >= 0)
                {
                    NetMessageHandler handler = handles[index];
                    handles.RemoveAt(index);
                    handler.Release();
                }
            }
        }
Ejemplo n.º 15
0
        public IEnumerator WWWDownload(string url, Callback_1 <byte[]> onSuccess)
        {
            WWW www = new WWW(url);

            yield return(www);

            if (www.isDone)
            {
                if (onSuccess != null)
                {
                    onSuccess(www.bytes);
                }
            }
            else
            {
                if (onSuccess != null)
                {
                    onSuccess(null);
                }
            }
            www.Dispose();
        }
Ejemplo n.º 16
0
    //取消加载
    public void CancleLoad(string path, Callback_1 <UnityEngine.Object> callFunc)
    {
        LoadRequest L;

        if (loadRequestDic.TryGetValue(path, out L))
        {
            int count = L.callback.Count;
            for (int i = 0; i < count; i++)
            {
                if (L.callback[i] == callFunc)
                {
                    L.callback.Remove(callFunc);
                    return;
                }
            }

            if (count == 0)
            {
                loadRequestDic.Remove(path);
            }
        }
    }
Ejemplo n.º 17
0
    public Callback_1 <UnityEngine.Object> Callback_1_UnityEngine_Object(LuaFunction func, LuaTable self, bool flag)
    {
        if (func == null)
        {
            Callback_1 <UnityEngine.Object> fn = delegate(UnityEngine.Object param0) { };
            return(fn);
        }

        if (!flag)
        {
            Callback_1_UnityEngine_Object_Event target = new Callback_1_UnityEngine_Object_Event(func);
            Callback_1 <UnityEngine.Object>     d      = target.Call;
            target.method = d.Method;
            return(d);
        }
        else
        {
            Callback_1_UnityEngine_Object_Event target = new Callback_1_UnityEngine_Object_Event(func, self);
            Callback_1 <UnityEngine.Object>     d      = target.CallWithSelf;
            target.method = d.Method;
            return(d);
        }
    }
Ejemplo n.º 18
0
 internal void ShowNetBreak(Callback_1 <MessageArgs> CheckVeison)
 {
     //显示网络不可用
     CheckVeison(null);
 }
Ejemplo n.º 19
0
 public void LoadAsync(string path, Callback_1 <Object> callback)
 {
 }
Ejemplo n.º 20
0
 public void RemoveListener(InputType inputType, Callback_1 <Vector3> listener)
 {
     m_eventDispatcher.RemoveListener(inputType, listener);
 }
Ejemplo n.º 21
0
 public void AddListener(Callback_1 <Vector3> listener)
 {
     callback1 -= listener;
     callback1 += listener;
 }
Ejemplo n.º 22
0
        public void RemoveListener(InputType inputType, Callback_1 <Vector3> listener)
        {
            InputEvent _event = GetInputEvent(inputType);

            _event.RemoveListener(listener);
        }
Ejemplo n.º 23
0
 public void RemoveListener(Callback_1 <Vector3> listener)
 {
     callback1 -= listener;
 }
Ejemplo n.º 24
0
 public bool EqualTo(Callback_1 <object> other)
 {
     return(other == m_callback);
 }
Ejemplo n.º 25
0
 public void Reset()
 {
     m_callback = null;
     priority   = 0;
 }
Ejemplo n.º 26
0
 void Push_Callback_1_UnityEngine_Object(IntPtr L, Callback_1 <UnityEngine.Object> o)
 {
     ToLua.Push(L, o);
 }
Ejemplo n.º 27
0
 public virtual void LoadAsset(string assetPath, Callback_1 <Object> callback)
 {
 }