第3章:开发者LUA脚本接口教程 |
您所在的位置:网站首页 › 迷你世界脚本像素教程一步一步教 › 第3章:开发者LUA脚本接口教程 |
接口使用说明 开发者在创作地图时要实现的各种玩法,依赖于迷你世界提供的一系列接口;玩法的运行又依赖于一系列事件。比如一个简单的玩法点石成金:“每当玩家点击石头,就把石头变成金块”,要实现这个玩法需要: ①首先监听事件任意玩家点击方块; ②事件触发后判断被点击的方块是否为石头; ③如果是,就在被点击的位置创建金块。 像这样,监听事件、进行判断、执行操作是进行玩法创作的基本形式。“监听事件”可以在下面事件列表里查询,“进行判断”可以根据需要自行处理,“执行操作”一般就要用到各种接口了。 每个接口相当于一个小功能,调用之后可以进行各种操作,组合起来就可以实现各种玩法。比如上面例子里,“在被点击的位置创建金块”,我们需要“在指定位置创建指定方块”的功能,通过查询“方块管理接口”可以找到: 设置指定坐标处为某方块: 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脚本接口吧! |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |