cocos2dx3.16 lua中加入lpack库

在cocos2d_lua_bindings项目的external目录下建立lpack目录

1. lpack目录中增加lpack.c

https://github.com/LuaDist/lpack获取

2. lpack目录增加lpack.h

#ifndef LPACK_H
#define LPACK_H
//
//  lpack.h
//  cocos2d_lua_bindings
//
//  Created by sherlock on 2017/3/6.
//
//
#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"

#ifdef __cplusplus
extern "C" {
#endif
#include "tolua++.h"
#ifdef __cplusplus
}
#endif

TOLUA_API int luaopen_pack(lua_State *L);

#endif /* LPACK_H */

3. 在manual/network/lua_extensions.c中增加如下内容


//增加引用文件
#include "external/lua/lpack/lpack.h"

static luaL_Reg luax_exts[] = {
    {"socket.core", luaopen_socket_core},
    {"mime.core", luaopen_mime_core},
    {"lpack", luaopen_pack},//添加包到脚本系统
    {NULL, NULL}
};

4.在VS解决方案 libluacocos2d 中引入lpack目录


5.在AppDelegate.cpp文件中引入lua_extensions.h,并加入注册函数luaopen_lua_extensions(L);



6. 修改Android.mk 在Android下使用

 添加如下的代码,进行编译,Android上即可正常使用了


7. 测试

local pack = require"pack"
--
local function hex(s)
 local s=string.gsub(s,"(.)",function (x) return string.format("%02X",string.byte(x)) end)
 return s
end
--

local bpack = string.pack
local a = bpack("Ab8","\027Lua",5*16+1,0,1,4,4,4,8,0)
print(hex(a),string.len(a))





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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值