コード例 #1
0
ファイル: Lua_LuaUtils.cs プロジェクト: bYsdTd/colorfy
 static public int PostLuaEvent_s(IntPtr l)
 {
     try {
         System.String a1;
         checkType(l, 1, out a1);
         System.Object[] a2;
         checkParams(l, 2, out a2);
         LuaUtils.PostLuaEvent(a1, a2);
         pushValue(l, true);
         return(1);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
コード例 #2
0
ファイル: NetworkManager.cs プロジェクト: bYsdTd/colorfy
    // 每帧检查处理消息
    public void UpdateSocket()
    {
        // 向 Lua 发送缓存的socket链接状态
        if (cacheConnectEvent != SocketConnectionEvent.None)
        {
            Debug.Log(cacheConnectEvent.ToString());

            LuaUtils.PostLuaEvent(cacheConnectEvent.ToString(), null);
            cacheConnectEvent = SocketConnectionEvent.None;
        }
        // 检查是否有消息来了
        if (null != _conn && _conn.State == SocketConnectionState.Connected)
        {
            List <SocketData> sockDatas = _conn.RecvSocketDataList();

            if (sockDatas != null && sockDatas.Count > 0)
            {
                for (int i = 0; i < sockDatas.Count; ++i)
                {
                    SocketData data    = sockDatas [i];
                    ReceiveMsg msgData = new ReceiveMsg();
                    msgData.data = data;

                    tobeHandledSocketData.Enqueue(msgData);
                }
            }
        }
        // 处理接收的消息
        if (tobeHandledSocketData.Count > 0)
        {
            ReceiveMsg msgData = tobeHandledSocketData.Dequeue();
            DealWithSocketData(msgData);
        }
        else
        {
        }
    }
コード例 #3
0
ファイル: LuaUtils.cs プロジェクト: bYsdTd/colorfy
 //case
 public static void SwitchToLevel(string sceneName)
 {
     LevelManager.Instance().SwitchToLevel(sceneName, delegate(float obj) {
         LuaUtils.PostLuaEvent("UpdateBattleLoading", obj);
     });
 }