Exemplo n.º 1
0
        /// <summary>
        /// 关闭并清理网络频道辅助器。
        /// </summary>
        public void Shutdown()
        {
            // 获取框架事件组件
            EventComponent Event = GameEntry.GetComponent <EventComponent>();

            Event.Unsubscribe(NetworkConnectedEventArgs.EventId, OnNetworkConnected);
            Event.Unsubscribe(NetworkClosedEventArgs.EventId, OnNetworkClosed);
            Event.Unsubscribe(NetworkMissHeartBeatEventArgs.EventId, OnNetworkMissHeartBeat);
            Event.Unsubscribe(NetworkErrorEventArgs.EventId, OnNetworkError);
            Event.Unsubscribe(NetworkCustomErrorEventArgs.EventId, OnNetworkCustomError);

            m_NetworkChannel = null;
        }
Exemplo n.º 2
0
    static int Unsubscribe(IntPtr L)
    {
        try
        {
            ToLua.CheckArgsCount(L, 3);
            UnityGameFramework.Runtime.EventComponent obj = (UnityGameFramework.Runtime.EventComponent)ToLua.CheckObject(L, 1, typeof(UnityGameFramework.Runtime.EventComponent));
            int arg0 = (int)LuaDLL.luaL_checknumber(L, 2);
            System.EventHandler <GameFramework.Event.GameEventArgs> arg1 = null;
            LuaTypes funcType3 = LuaDLL.lua_type(L, 3);

            if (funcType3 != LuaTypes.LUA_TFUNCTION)
            {
                arg1 = (System.EventHandler <GameFramework.Event.GameEventArgs>)ToLua.CheckObject(L, 3, typeof(System.EventHandler <GameFramework.Event.GameEventArgs>));
            }
            else
            {
                LuaFunction func = ToLua.ToLuaFunction(L, 3);
                arg1 = DelegateFactory.CreateDelegate(typeof(System.EventHandler <GameFramework.Event.GameEventArgs>), func) as System.EventHandler <GameFramework.Event.GameEventArgs>;
            }

            obj.Unsubscribe(arg0, arg1);
            return(0);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }