迷你世界脚本游戏接口:Game

news/2025/3/3 13:37:33/

游戏接口:Game
 彼得兔
更新时间: 2024-05-07 15:52:59
具体函数名及描述如下:

序号    函数名    函数描述
1    doGameEnd(...)    游戏结束
2    dispatchEvent(...)    派发自定义事件
3    getDefString(...)    获取默认字符串
4    setScriptVar(...)    设置脚本参数,供自定义使用
5    getScriptVar(...)    获取脚本参数,自定义使用
6    sendScriptVars2Client(...)    上传设置好的脚本参数
7    addRenderGlobalEffect(...)    新增全局效果
8    removeRenderGlobalEffect(...)    移除全局效果
9    setRenderGlobalEffectPos(...)    设置全局效果位置
10    setRenderGlobalEffectScale(...)    设置全局效果缩放
11    msgBox(...)    消息弹框
12    splitStr(...)    分割字符串
 

doGameEnd

参数及类型: 无
返回值及类型:
code:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 游戏结束
具体使用案例如下:
--每当玩家做动画表情,就会游戏结束
--当玩家做动画表情时执行此函数
local function Player_PlayAction(event)
    --结束游戏
    Game:doGameEnd(nil)
end
--注册一个动画表情监听器,事件发生时执行上面的函数
ScriptSupportEvent:registerEvent([=[Player.PlayAction]=],Player_PlayAction)
Lua
 

dispatchEvent

参数及类型:
msgid:string事件ID
params:table事件参数
返回值及类型:
code:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 派发自定义事件
具体使用案例如下:
--派发自定义事件
local function func_event(param)
    -- 自定义事件的数据
    local data = {id = 123,ops = "aaa"}
    -- 将数据转化为json字符串形式
    local ok, json = pcall(JSON.encode, JSON, data)
    -- 派发自定义事件,将json字符串存储在customdata字段中
    Game:dispatchEvent("customevent",{customdata = json})
end
ScriptSupportEvent:registerEvent('Player.PlayAction', func_event)
--自定义事件监听
local function func_event(param)
    -- 从事件数据的customdata字段中取出json字符串,并解码成原先的数据格式
    local ret, data = pcall(JSON.decode,JSON,param.customdata)
    -- 按照原先的格式读取事件的数据
    if data then
        print("id:"..tostring(data.id))
        print("ops:"..data.ops)
    end
end
ScriptSupportEvent:registerEvent('customevent', func_event)
Lua
 

getDefString

参数及类型:
id:string字符串ID
返回值及类型:
code:number成功(ErrorCode.OK)ErrorCode
str:string获取到的字符串
该方法的主要作用: 获取默认字符串
具体使用案例如下:
--获取id为1的默认字符串,参数1为默认字符串id(不建议使用此接口)
local result,str=Game:getDefString(1)
--在聊天框显示
Chat:sendSystemMsg("id为1的默认字符串内容为:"..str)
Lua
 

setScriptVar

参数及类型:
index:number序列索引(0~100)
val:number索引对应的值
返回值及类型:
code:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 设置脚本参数,供自定义使用
具体使用案例如下:
local code = Game:setScriptVar(index, val)
if code == ErrorCode.OK then
    print('执行成功', code )
else
    print('执行失败')
end
Lua
 

getScriptVar

参数及类型:
index:number序列索引(0~100)
返回值及类型:
code:number成功(ErrorCode.OK)ErrorCode
val:number索引对应的值
该方法的主要作用: 获取脚本参数,自定义使用
具体使用案例如下:
local code, val = Game:getScriptVar(index)
if code == ErrorCode.OK then
    print('执行成功', code, val )
else
    print('执行失败')
end
Lua
 

sendScriptVars2Client

参数及类型: 无
返回值及类型:
code:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 上传设置好的脚本参数
具体使用案例如下:
local code = Game:sendScriptVars2Client()
if code == ErrorCode.OK then
    print('执行成功', code )
else
    print('执行失败')
end
Lua
 

addRenderGlobalEffect

参数及类型:
path:string效果名称
effectid:number命名ID
返回值及类型:
code:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 新增全局效果
具体使用案例如下:
--在游戏添加一个迷雾特效,目前参数只支持一个"particles/Fog.ent"
local result,effectid = Game:addRenderGlobalEffect("particles/Fog.ent")
--在聊天框显示
Chat:sendSystemMsg("添加了一个迷雾效果!id为"..effectid)
Lua
 

removeRenderGlobalEffect

参数及类型:
effectid:number命名ID
返回值及类型:
code:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 移除全局效果
具体使用案例如下:
--移除id为1的地图特效,参数1为要移除的特效id
Game:removeRenderGlobalEffect(1)
--在聊天框显示
Chat:sendSystemMsg("移除了id为1的地图特效")
Lua
 

setRenderGlobalEffectPos

参数及类型:
effectid:number命名ID
x,y,z:number方块坐标
返回值及类型:
code:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 设置全局效果位置
具体使用案例如下:
--把id为1的地图特效移动至(10,10)高度7
--第一个参数为特效id
--后三个参数为移动至坐标
Game:setRenderGlobalEffectPos(1,10,7,10)
--在聊天框显示
Chat:sendSystemMsg("把id为1的特效移动到了坐标(0,0)高度7的位置")
Lua
 

setRenderGlobalEffectScale

参数及类型:
effectid:number命名ID
scalex:numberx缩放值
scaley:numbery缩放值
scalez:numberz缩放值
返回值及类型:
code:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 设置全局效果缩放
具体使用案例如下:
--把id为1的地图特效放大两倍
--第一个参数为需要缩放的特效id
--后三个参数分别为特效在x、y、z方向上的缩放倍数
Game:setRenderGlobalEffectScale(1,2,2,2)
--在聊天框显示
Chat:sendSystemMsg("把id为1的特效放大了2倍")
Lua
 

msgBox

参数及类型:
msg:string设置的消息
返回值及类型:
code:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 消息弹框
具体使用案例如下:
--每当玩家做动画表情,显示一个弹窗
--当玩家做动画表情时执行此函数
local function Player_PlayAction(event)
    --显示一个游戏弹窗,参数为弹窗显示内容
    Game:msgBox("这是一个弹窗!")
end
--注册一个动画表情监听器,事件发生时执行上面的函数
ScriptSupportEvent:registerEvent([=[Player.PlayAction]=],Player_PlayAction)
Lua
 

splitStr

参数及类型:
str:string分割的字符串
mark:'string'分割符号
返回值及类型:
code:number成功(ErrorCode.OK)ErrorCode
strs:table字符串组
该方法的主要作用: 分割字符串
具体使用案例如下:
local code, strs = Game:splitStr(str, mark)
if code == ErrorCode.OK then
    print('执行成功', code, strs )
else
    print('执行失败')
end
Lua
 


http://www.ppmy.cn/news/1576299.html

相关文章

使用 Kubeflow 和 Ray 构建机器学习平台

使用 Kubeflow 和 Ray 构建一个稳健的 ML 平台。我们将深入讨论 Kubeflow 和 Ray 的独特功能,以及它们如何互补,共同创建一个强大的 ML 生态系统 集中化 ML 平台的需求 随着企业在 ML 旅程中的成熟,初始 ML 项目的临时性质逐渐让位于对更结构化和可扩展方法的需求。集中化…

202年充电计划——自学手册 网络安全(黑客技术)

🤟 基于入门网络安全/黑客打造的:👉黑客&网络安全入门&进阶学习资源包 前言 什么是网络安全 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“…

【重构小程序】升级JDK1.8、SpringBoot2.x 到JDK17、Springboot 3.x(一)

前言 最近想着把大火的deepseek 迁移到小程序里,基于刷题小程序的数据库做一个RAG应用,来进一步扩展答案解析,帮助用户解答相关问题。但是由于之前做的项目都要老了,并不支持spring 的AI模块,因此,我打算先…

深入剖析 OpenCV:全面掌握基础操作、图像处理算法与特征匹配

深入剖析 OpenCV:全面掌握基础操作、图像处理算法与特征匹配 一、引言二、OpenCV 的安装(一)使用 pip 安装(二)使用 Anaconda 安装 三、OpenCV 基础操作(一)图像的读取、显示与保存(…

基于springboot+vue的线上考试系统的设计与实现

开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:…

LLMR: Real-time Prompting of Interactive Worldsusing Large Language Models

LLMR-使用大型语言模型的交互式世界实时建模 ABSTRACT 我们提出了混合现实的大语言模型(LLMR),一个使用LLM实时创建和修改交互式混合现实体验的框架。LLMR利用新颖的策略来解决理想训练数据稀缺的困难情况,或者设计目标需要综合内…

Python 面向对象编程-继承与多态

目录 继承与多态 静态语言 vs 动态语言 小结 继承与多态 在OOP程序设计中,当我们定义一个class的时候,可以从某个现有的class继承,新的class称为子类(Subclass),而被继承的class称为基类、父类或超类&a…

CentOS环境安装Docker

CentOS环境安装Docker 1.1 在线安装Docker 参考官方文档安装:https://docs.docker.com/engine/install/centos/ 1、更新yum yum update2、安装工具包 sudo yum install -y yum-utils3、 设置镜像源 sudo yum-config-manager --add-repo https://download.docke…