tolua# 注册

CS代码


        lua = new LuaState();
        lua.AddSearchPath(Application.dataPath + "/Lua");
        lua.AddSearchPath(Application.dataPath + "/ToLua/Lua");
        lua.AddSearchPath(Application.dataPath + "/ToLua");

        lua.Start();

        LuaBinder.Bind(lua);
        lua.BeginModule(null);
        lua.BeginModule("RpcClient");

        lua.RegFunction("SendRequest", (System.IntPtr l) =>
        {

            string service = LuaDLL.lua_tostring(l, 1);
            string method = LuaDLL.lua_tostring(l, 2);
            string para = LuaDLL.lua_tostring(l, 3);

            LuaTypes t = LuaDLL.lua_type(l, 4);

            LuaFunction func = null; // 要先保存下来
            if (t == LuaTypes.LUA_TFUNCTION)
            {
                func = ToLua.ToLuaFunction(l, 4);
            }
            else
            {
                Debug.LogWarning("[LUA]:cb not a function");
            }

            RpcClient.ins.SendRequest( service,method,para, (string msg) =>
            {
                func.BeginPCall();
                func.Push(msg);
                func.PCall();
                func.EndPCall();
            });

       
            return 0;
        });


        lua.EndModule();
        lua.EndModule();

        lua.DoFile("Main.lua");

 

LUA代码

--主入口函数。从这里开始lua逻辑

RpcClient.SendRequest("services.login", "login", "account:1,pwd:1,",function (msg)
	 
	 print(msg)
	 end);

 

转载于:https://my.oschina.net/kkkkkkkkkkkkk/blog/842049

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值