接口使用说明
开发者在创作地图时要实现的各种玩法,依赖于迷你世界提供的一系列接口;玩法的运行又依赖于一系列事件。比如一个简单的玩法点石成金:“每当玩家点击石头,就把石头变成金块”,要实现这个玩法需要:
①首先监听事件任意玩家点击方块;
②事件触发后判断被点击的方块是否为石头;
③如果是,就在被点击的位置创建金块。
像这样,监听事件、进行判断、执行操作是进行玩法创作的基本形式。“监听事件”可以在下面事件列表里查询,“进行判断”可以根据需要自行处理,“执行操作”一般就要用到各种接口了。
每个接口相当于一个小功能,调用之后可以进行各种操作,组合起来就可以实现各种玩法。比如上面例子里,“在被点击的位置创建金块”,我们需要“在指定位置创建指定方块”的功能,通过查询“方块管理接口”可以找到:
设置指定坐标处为某方块:
| esult=Block:setBlockAll(x , y , z , blockid , data) |
|
| result:0成功 1001失败 |
x,y,z:要设置的坐标 blockid:要设置的方块id data:要设置的方块数据 |
| Block:setBlockAll(0 , 7 , 0 , 1 , 0) |
|
| 在(0,0)高度7的位置生成一个基石,数据为0 |
|
也就是说,只要调用这个接口,传入被点击的坐标、金块ID和方块数据(这里不用考虑,传入0即可),就可以把指定坐标的方块设置为金块。
那么如何获取“被点击的位置”呢?通过查询方块事件列表:
| Player.ClickBlock |
玩家点击方块 |
eventobjid:点击方块的玩家迷你号 blockid:被点击的方块id x,y,z:被点击的方块坐标 |
可以看到,“玩家点击方块”这个事件参数共有{eventobjid,blockid,x,y,z}五个值,其中x、y、z就是我们需要的坐标值,另外还需要blockid来判断被点击的方块是否为石头。迷你里注册事件监听的脚本代码为:
ScriptSupportEvent:registerEvent([=[事件名]=],函数名)
比如这里我们需要监听事件“玩家点击方块”,那么就需要(函数名是任意的):
ScriptSupportEvent:registerEvent([=[Player.ClickBlock]=],click)
讯享网
然后新建click函数:
讯享网local function click(e) if e.blockid==104 then Block:setBlockAll(e.x,e.y,e.z,400,0) end end
这里104是石头的id,400是金矿的id。完整代码如下:
local function click(e) if e.blockid==104 then Block:setBlockAll(e.x,e.y,e.z,400,0) end end ScriptSupportEvent:registerEvent([=[Player.ClickBlock]=],click)
游戏内ID查询方法
强烈推荐使用此方法在游戏内查询ID,更新快且查询方便,当然,只适合电脑端使用。
方法一:
第一步:点击编辑框上方“ID库”,选择要查询的ID类型

第二步:左侧选择分类,点击对象即可显示对应ID

第三步:点击“插入ID”即可直接输入使用

方法二:
第一步:使用快捷键“Ctrl+I”,或右键单击输入框任意位置,选择“插入ID”

第二步:在弹出的“ID搜索工具”窗口输入要查询的对象名称,即可直接搜索ID

第三步:点击搜索列表即可输入使用

觉得怎么样?接下来让我们开始学习《迷你世界》的LUA脚本接口吧!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/46164.html