@hyext/hylive-minigame-sdk
v0.0.20
Published
主播端lua小游戏中间件sdk,封装资源下载接口
Downloads
36
Keywords
Readme
一、使用方式
1.在工程package.json文件dependencies字段下添加依赖
"@hyext/lua-game": "1.0.0-Beta1"
2.在使用的js文件引入
import hyLuaGame from '@hyext/lua-game'
二、接口说明
1.downloadResource下载统一资源后台zip资源包
/**
* 下载资源
* 参数1:资源id
* 参数2:下载监听回调函数
* 回调函数reminder结构为{"md5":"","msg":"","url":"","res":0,"bytesTotal":0,"bytesLoaded":0}
* res=0下载完成 res=1下载中 res=-1下载失败
*/
hyLuaGame.downloadResource(887,reminder => {
console.log(JSON.stringify(reminder));
});
2.开始游戏start,使用start接口,需要传入参数md5,客户端以md5为表示找到资源包,启动不同的游戏。开始游戏后,内部会接收lua脚本输出的日志,并打印到控制台。
hyLuaGame.start({md5:''})
3.结束游戏stop,使用stop接口,无需传入参数,客户端只允许启动一个lua小游戏,结束就是结束全部。
hyLuaGame.stop()
4.pushCommand向lua发生事件,lua接收到指令或者数据后做不同的游戏业务和渲染逻辑
//向lua发送事件
pushCommand = async () => {
let params = {
cmd: "game_reset"
}
try {
await hyLuaGame.pushCommand(params)
this.setState({ bodyText: 'pushCommand成功' });
} catch (error) {
this.setState({ bodyText: 'pushCommand失败' + error });
}
}
5.onCommand监听lua发生过来的回调消息
//在开始之前lua游戏回调的监听
hyLuaGame.onCommand({
callback: eventResult => {
this.setState({ bodyText: JSON.stringify(eventResult) });
}
})