cocos2dx3.16 lua中加入lpack库

编程入门 行业动态 更新时间:2024-10-17 17:20:47

cocos2dx3.16 <a href=https://www.elefans.com/category/jswz/34/1770288.html style=lua中加入lpack库"/>

cocos2dx3.16 lua中加入lpack库

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

1. lpack目录中增加lpack.c

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
}
#endifTOLUA_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))





更多推荐

cocos2dx3.16 lua中加入lpack库

本文发布于:2024-02-12 16:16:23,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1688520.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:lpack   lua

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!