Beispiel #1
0
    static int ReadBuffer(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 1);
        SimpleFramework.ByteBuffer obj = (SimpleFramework.ByteBuffer)LuaScriptMgr.GetNetObjectSelf(L, 1, "SimpleFramework.ByteBuffer");
        LuaStringBuffer            o   = obj.ReadBuffer();

        LuaScriptMgr.Push(L, o);
        return(1);
    }
Beispiel #2
0
    static int OnCallLuaFunc(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 2);
        LuaStringBuffer arg0 = LuaScriptMgr.GetStringBuffer(L, 1);
        LuaFunction     arg1 = LuaScriptMgr.GetLuaFunction(L, 2);

        LuaHelper.OnCallLuaFunc(arg0, arg1);
        return(0);
    }
    static int WriteBuffer(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 2);
        Teacher.ByteBuffer obj  = (Teacher.ByteBuffer)LuaScriptMgr.GetNetObjectSelf(L, 1, "Teacher.ByteBuffer");
        LuaStringBuffer    arg0 = LuaScriptMgr.GetStringBuffer(L, 2);

        obj.WriteBuffer(arg0);
        return(0);
    }
    static int ReadBuffer(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 1);
        Teacher.ByteBuffer obj = (Teacher.ByteBuffer)LuaScriptMgr.GetNetObjectSelf(L, 1, "Teacher.ByteBuffer");
        LuaStringBuffer    o   = obj.ReadBuffer();

        LuaScriptMgr.Push(L, o);
        return(1);
    }
Beispiel #5
0
    static int WriteBuffer(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 2);
        SimpleFramework.ByteBuffer obj  = (SimpleFramework.ByteBuffer)LuaScriptMgr.GetNetObjectSelf(L, 1, "SimpleFramework.ByteBuffer");
        LuaStringBuffer            arg0 = LuaScriptMgr.GetStringBuffer(L, 2);

        obj.WriteBuffer(arg0);
        return(0);
    }
Beispiel #6
0
    private static int OnCallLuaFunc(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 2);
        LuaStringBuffer stringBuffer = LuaScriptMgr.GetStringBuffer(L, 1);
        LuaFunction     luaFunction  = LuaScriptMgr.GetLuaFunction(L, 2);

        LuaHelper.OnCallLuaFunc(stringBuffer, luaFunction);
        return(0);
    }
Beispiel #7
0
    static int SetNotifyGameStart(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 2);
        GameMatch_AsynPVP3ON3 obj  = (GameMatch_AsynPVP3ON3)LuaScriptMgr.GetNetObjectSelf(L, 1, "GameMatch_AsynPVP3ON3");
        LuaStringBuffer       arg0 = LuaScriptMgr.GetStringBuffer(L, 2);

        obj.SetNotifyGameStart(arg0);
        return(0);
    }
    static int Set(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 2);
        LuaStringBuffer obj = (LuaStringBuffer)LuaScriptMgr.GetNetObjectSelf(L, 1, "LuaStringBuffer");

        byte[] objs0 = LuaScriptMgr.GetArrayNumber <byte>(L, 2);
        obj.Set(objs0);
        return(0);
    }
Beispiel #9
0
 /// <summary>
 /// pbc/pblua函数回调
 /// </summary>
 /// <param name="func"></param>
 public static void OnCallLuaFunc(LuaStringBuffer data, LuaFunction func)
 {
     byte[] buffer = data.buffer;
     Debug.LogWarning("OnCallLuaFunc buffer:>>" + buffer + " lenght:>>" + buffer.Length);
     if (func != null)
     {
         Util.PushBufferToLua(func, buffer);
     }
 }
Beispiel #10
0
    private static int Set(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 2);
        LuaStringBuffer luaStringBuffer = (LuaStringBuffer)LuaScriptMgr.GetNetObjectSelf(L, 1, "LuaStringBuffer");

        byte[] arrayNumber = LuaScriptMgr.GetArrayNumber <byte>(L, 2);
        luaStringBuffer.Set(arrayNumber);
        return(0);
    }
    private static int SendLuaPtc(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 2);
        uint            type         = (uint)LuaScriptMgr.GetNumber(L, 1);
        LuaStringBuffer stringBuffer = LuaScriptMgr.GetStringBuffer(L, 2);
        bool            b            = Hotfix.SendLuaPtc(type, stringBuffer);

        LuaScriptMgr.Push(L, b);
        return(1);
    }
Beispiel #12
0
    static int GetStringBuffer(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 2);
        IntPtr          arg0 = (IntPtr)LuaScriptMgr.GetNumber(L, 1);
        int             arg1 = (int)LuaScriptMgr.GetNumber(L, 2);
        LuaStringBuffer o    = LuaScriptMgr.GetStringBuffer(arg0, arg1);

        LuaScriptMgr.PushObject(L, o);
        return(1);
    }
Beispiel #13
0
 /// <summary>
 /// pbc/pblua函数回调
 /// </summary>
 /// <param name="func"></param>
 public static void OnCallLuaFunc(LuaStringBuffer data, LuaFunction func) {
     byte[] buffer = data.buffer;
     if (func != null) {
         LuaScriptMgr mgr = AppFacade.Instance.GetManager<LuaScriptMgr>(ManagerName.Lua);
         int oldTop = func.BeginPCall();
         LuaDLL.lua_pushlstring(mgr.lua.L, buffer, buffer.Length);
         if (func.PCall(oldTop, 1)) func.EndPCall(oldTop);
     }
     Debug.LogWarning("OnCallLuaFunc buffer:>>" + buffer + " lenght:>>" + buffer.Length);
 }
Beispiel #14
0
    static int IntToBytes(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 3);
        int             arg0 = (int)LuaScriptMgr.GetNumber(L, 1);
        LuaStringBuffer arg1 = LuaScriptMgr.GetStringBuffer(L, 2);
        int             arg2 = (int)LuaScriptMgr.GetNumber(L, 3);

        CGameSession.IntToBytes(arg0, arg1.buffer, arg2);
        return(0);
    }
Beispiel #15
0
    static int SendMsgFromLua(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 3);
        NetworkConn     obj  = (NetworkConn)LuaScriptMgr.GetNetObjectSelf(L, 1, "NetworkConn");
        uint            arg0 = (uint)LuaScriptMgr.GetNumber(L, 2);
        LuaStringBuffer arg1 = LuaScriptMgr.GetStringBuffer(L, 3);

        obj.SendMsgFromLua(arg0, arg1);
        return(0);
    }
    private static int LuaProtoBuffer1(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 2);
        byte[]          arrayNumber = LuaScriptMgr.GetArrayNumber <byte>(L, 1);
        int             length      = (int)LuaScriptMgr.GetNumber(L, 2);
        LuaStringBuffer lsb         = Hotfix.LuaProtoBuffer1(arrayNumber, length);

        LuaScriptMgr.Push(L, lsb);
        return(1);
    }
    static int Copy(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 3);
        LuaStringBuffer obj = (LuaStringBuffer)LuaScriptMgr.GetNetObjectSelf(L, 1, "LuaStringBuffer");

        byte[] objs0 = LuaScriptMgr.GetArrayNumber <byte>(L, 2);
        int    arg1  = (int)LuaScriptMgr.GetNumber(L, 3);

        obj.Copy(objs0, arg1);
        return(0);
    }
    private static int SendLuaRPCWithReq(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 4);
        uint            type         = (uint)LuaScriptMgr.GetNumber(L, 1);
        LuaStringBuffer stringBuffer = LuaScriptMgr.GetStringBuffer(L, 2);
        LuaFunction     luaFunction  = LuaScriptMgr.GetLuaFunction(L, 3);
        LuaFunction     luaFunction2 = LuaScriptMgr.GetLuaFunction(L, 4);

        Hotfix.SendLuaRPCWithReq(type, stringBuffer, luaFunction, luaFunction2);
        return(0);
    }
Beispiel #19
0
    static int SendMessage(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 4);
        CC.Runtime.PacketManager obj  = (CC.Runtime.PacketManager)LuaScriptMgr.GetUnityObjectSelf(L, 1, "CC.Runtime.PacketManager");
        CC.Runtime.SocketId      arg0 = (CC.Runtime.SocketId)LuaScriptMgr.GetNetObject(L, 2, typeof(CC.Runtime.SocketId));
        int             arg1          = (int)LuaScriptMgr.GetNumber(L, 3);
        LuaStringBuffer arg2          = LuaScriptMgr.GetStringBuffer(L, 4);

        obj.SendMessage(arg0, arg1, arg2);
        return(0);
    }
Beispiel #20
0
    private static int Copy(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 3);
        LuaStringBuffer luaStringBuffer = (LuaStringBuffer)LuaScriptMgr.GetNetObjectSelf(L, 1, "LuaStringBuffer");

        byte[] arrayNumber = LuaScriptMgr.GetArrayNumber <byte>(L, 2);
        int    length      = (int)LuaScriptMgr.GetNumber(L, 3);

        luaStringBuffer.Copy(arrayNumber, length);
        return(0);
    }
Beispiel #21
0
 /// <summary>
 /// pbc/pblua函数回调
 /// </summary>
 /// <param name="func"></param>
 public static void OnCallLuaFunc(LuaStringBuffer data, LuaFunction func)
 {
     // byte[] buffer = data.buffer;
     // if (func != null) {
     // LuaScriptMgr mgr = AppFacade.Instance.GetManager<LuaScriptMgr>(ManagerName.Lua);
     //     int oldTop = func.BeginPCall();
     //     LuaDLL.lua_pushlstring(mgr.lua.L, buffer, buffer.Length);
     //     if (func.PCall(oldTop, 1)) func.EndPCall(oldTop);
     // }
     // Debug.LogWarning("OnCallLuaFunc buffer:>>" + buffer + " lenght:>>" + buffer.Length);
 }
Beispiel #22
0
 public static void Push(IntPtr L, LuaStringBuffer lsb)
 {
     if (lsb != null && lsb.buffer != null)
     {
         LuaDLL.lua_pushlstring(L, lsb.buffer, lsb.buffer.Length);
     }
     else
     {
         LuaDLL.lua_pushnil(L);
     }
 }
Beispiel #23
0
 //发包
 public static void SendPlatMsgFromLua(uint msgID, LuaStringBuffer data)
 {
     if ((MsgID)msgID == MsgID.EnterGameReqID)
     {
         PlatNetwork.Instance.cachedEnterGameReq = data;
     }
     else if ((MsgID)msgID == MsgID.ExitGameReqID)
     {
         PlatNetwork.Instance.cachedEnterGameReq = null;
     }
     CommonFunction.ShowWaitMask();
     GameSystem.Instance.mNetworkManager.m_platConn.SendMsgFromLua(msgID, data);
 }
Beispiel #24
0
        /// <summary>
        /// 音乐管理器
        /// </summary>
        //public static MusicManager GetMusicManager() {
        //    return AppFacade.Instance.GetManager<MusicManager>(ManagerName.Music);
        //}

        /// <summary>
        /// pbc/pblua函数回调
        /// </summary>
        /// <param name="func"></param>
        public static void OnCallLuaFunc(LuaStringBuffer data, LuaFunction func)
        {
            byte[] buffer = data.buffer;
            if (func != null)
            {
                LuaScriptMgr mgr    = LuaScriptMgr.Instance;
                int          oldTop = func.BeginPCall();
                LuaDLL.lua_pushlstring(mgr.lua.L, buffer, buffer.Length);
                if (func.PCall(oldTop, 1))
                {
                    func.EndPCall(oldTop);
                }
            }
            Debug.LogWarning("OnCallLuaFunc buffer:>>" + buffer + " lenght:>>" + buffer.Length);
        }
Beispiel #25
0
    /// <summary>
    /// pbc/pblua函数回调
    /// </summary>
    /// <param name="func"></param>
    public static void OnCallLuaFunc(LuaStringBuffer data, LuaFunction func)
    {
        byte[] buffer = data.buffer;
        Debug.LogWarning("OnCallLuaFunc buffer:>>" + buffer + " lenght:>>" + buffer.Length);
        if (func == null)
        {
            return;
        }

        /*
         * 调用此函数需要获取Luastate的指针(mgr.lua.L),根据自身项目修改此处。
         * int oldTop = func.BeginPCall();
         * LuaDLL.lua_pushlstring(mgr.lua.L, buffer, buffer.Length);
         * if (func.PCall(oldTop, 1)) func.EndPCall();
         * */
    }
Beispiel #26
0
        /** 播放录像 */

        public static void Start(LuaStringBuffer msgContent, int watchRoleId, bool isLua)
        {
            Debug.Log("播放录像 War.Start msgContent=" + msgContent + "  watchRoleId=" + watchRoleId);
            MemoryStream memStream = new MemoryStream(msgContent.buffer);

            memStream.Position = 0;
            S_GetEliteVideoList_0x551 videoList = Serializer.Deserialize <S_GetEliteVideoList_0x551>(memStream);

            memStream.Dispose();

            if (videoList != null && videoList.share_videos.Count > 0)
            {
                ProtoBattleVideoInfo video = videoList.share_videos [0].video;
                Goo.save.record.Load(video, watchRoleId);
            }
        }
Beispiel #27
0
    private static int set_buffer(IntPtr L)
    {
        object          luaObject       = LuaScriptMgr.GetLuaObject(L, 1);
        LuaStringBuffer luaStringBuffer = (LuaStringBuffer)luaObject;

        if (luaStringBuffer == null)
        {
            LuaTypes luaTypes = LuaDLL.lua_type(L, 1);
            if (luaTypes == LuaTypes.LUA_TTABLE)
            {
                LuaDLL.luaL_error(L, "unknown member name buffer");
            }
            else
            {
                LuaDLL.luaL_error(L, "attempt to index buffer on a nil value");
            }
        }
        luaStringBuffer.buffer = LuaScriptMgr.GetArrayNumber <byte>(L, 3);
        return(0);
    }
Beispiel #28
0
 public static void OnCallLuaFunc(LuaStringBuffer data, LuaFunction func)
 {
     byte[] buffer = data.buffer;
     if (func != null)
     {
         LuaScriptMgr manager = AppFacade.Instance.GetManager <LuaScriptMgr>("LuaScriptMgr");
         int          oldTop  = func.BeginPCall();
         LuaDLL.lua_pushlstring(manager.lua.L, buffer, buffer.Length);
         if (func.PCall(oldTop, 1))
         {
             func.EndPCall(oldTop);
         }
     }
     Debug.LogWarning(string.Concat(new object[]
     {
         "OnCallLuaFunc buffer:>>",
         buffer,
         " lenght:>>",
         buffer.Length
     }));
 }
    static int get_buffer(IntPtr L)
    {
        object          o   = LuaScriptMgr.GetLuaObject(L, 1);
        LuaStringBuffer obj = (LuaStringBuffer)o;

        if (obj == null)
        {
            LuaTypes types = LuaDLL.lua_type(L, 1);

            if (types == LuaTypes.LUA_TTABLE)
            {
                LuaDLL.luaL_error(L, "unknown member name buffer");
            }
            else
            {
                LuaDLL.luaL_error(L, "attempt to index buffer on a nil value");
            }
        }

        LuaScriptMgr.PushArray(L, obj.buffer);
        return(1);
    }
Beispiel #30
0
    public void SendMsgFromLua(uint msgID, LuaStringBuffer msgBody)
    {
#if UNITY_EDITOR
        var msg_id = (MsgID)msgID;
        if (!MsgHandler.m_noLogMsg.Contains(msg_id))
        {
            Debug.Log("-------SendMsg with MessageID: " + msg_id.ToString());
        }
#endif

        NetworkStream ns = m_client.GetStream();
        if (!ns.CanWrite)
        {
            return;
        }

        Pack header = GenerateHeader(0, msgID, (uint)msgBody.buffer.Length);

        byte[] msgByteArray = new byte[Pack.HeaderLength + (int)msgBody.buffer.Length];
        Array.Copy(header.headerBuffer, 0, msgByteArray, 0, Pack.HeaderLength);
        Array.Copy(msgBody.buffer, 0, msgByteArray, Pack.HeaderLength, (int)msgBody.buffer.Length);

        ns.Write(msgByteArray, 0, msgByteArray.Length);
    }
 /// <summary>
 /// pbc/pblua函数回调
 /// </summary>
 /// <param name="func"></param>
 public static void OnCallLuaFunc(LuaStringBuffer data, LuaFunction func)
 {
     byte[] buffer = data.buffer;
     Debug.LogWarning("OnCallLuaFunc buffer:>>" + buffer + " lenght:>>" + buffer.Length);
     if (func != null) Util.PushBufferToLua(func, buffer);
 }
Beispiel #32
0
 public void WriteBuffer(LuaStringBuffer strBuffer) {
     WriteBytes(strBuffer.buffer);
 }
Beispiel #33
0
    //压入一个object变量
    public static void PushVarObject(IntPtr L, object o)
    {
        if (o == null)
        {
            LuaDLL.lua_pushnil(L);
            return;
        }

        Type t = o.GetType();

        if (t.IsValueType)
        {
            if (t == typeof(bool))
            {
                bool b = (bool)o;
                LuaDLL.lua_pushboolean(L, b);
            }
            else if (t.IsEnum)
            {
                Push(L, (System.Enum)o);
            }
            else if (t.IsPrimitive)
            {
                double d = Convert.ToDouble(o);
                LuaDLL.lua_pushnumber(L, d);
            }
            else if (t == typeof(Vector3))
            {
                Push(L, (Vector3)o);
            }
            else if (t == typeof(Vector2))
            {
                Push(L, (Vector2)o);
            }
            else if (t == typeof(Vector4))
            {
                Push(L, (Vector4)o);
            }
            else if (t == typeof(Quaternion))
            {
                Push(L, (Quaternion)o);
            }
            else if (t == typeof(Color))
            {
                Push(L, (Color)o);
            }
            else if (t == typeof(RaycastHit))
            {
                Push(L, (RaycastHit)o);
            }
            else if (t == typeof(Touch))
            {
                Push(L, (Touch)o);
            }
            else if (t == typeof(Ray))
            {
                Push(L, (Ray)o);
            }
            else
            {
                PushValue(L, o);
            }
        }
        else
        {
            if (t.IsArray)
            {
                PushArray(L, (System.Array)o);
            }
            else if (t.IsSubclassOf(typeof(Delegate)))
            {
                Push(L, (Delegate)o);
            }
            else if (IsClassOf(t, typeof(IEnumerator)))
            {
                Push(L, (IEnumerator)o);
            }
            else if (t == typeof(string))
            {
                string str = (string)o;
                LuaDLL.lua_pushstring(L, str);
            }
            else if (t == typeof(LuaStringBuffer))
            {
                LuaStringBuffer lsb = (LuaStringBuffer)o;
                LuaDLL.lua_pushlstring(L, lsb.buffer, lsb.buffer.Length);
            }
            else if (t.IsSubclassOf(typeof(UnityEngine.Object)))
            {
                UnityEngine.Object obj = (UnityEngine.Object)o;

                if (obj == null)
                {
                    LuaDLL.lua_pushnil(L);
                }
                else
                {
                    PushObject(L, o);
                }
            }
            else if (t == typeof(LuaTable))
            {
                ((LuaTable)o).push(L);
            }
            else if (t == typeof(LuaFunction))
            {
                ((LuaFunction)o).push(L);
            }
            else if (t == typeof(LuaCSFunction))
            {
                GetTranslator(L).pushFunction(L, (LuaCSFunction)o);
            }
            else if (t == monoType)
            {
                Push(L, (Type)o);
            }
            else if (t.IsSubclassOf(typeof(TrackedReference)))
            {
                UnityEngine.TrackedReference obj = (UnityEngine.TrackedReference)o;

                if (obj == null)
                {
                    LuaDLL.lua_pushnil(L);
                }
                else
                {
                    PushObject(L, o);
                }
            }
            else
            {
                PushObject(L, o);
            }
        }
    }