Minecraft-脚本方块(ScriptBlock插件)
脚本方块(ScriptBlock插件)
前言
- 使用
ScriptBlock
插件可以让玩家进入某个方块或走到该方块上方时,执行指令,同时也支持执行op
指令。
该插件常见的用法是设置传送门
,可以搭配礼包
插件实现踩到方块上面获取礼包
等等。- 此文章演示的MC版本为
1.7.10
,服务器在本机运行测试(客户端的IP地址填写为127.0.0.1
即可)。
- 脚本方块插件实际的作用和菜单类似,都是替代了玩家手动输入指令,两者区别在于脚本方块把命令绑定到了方块上,而菜单是通过
UI
界面。- 需要注意的是
ScriptBlock
插件最高支持的是1.7.10
,如果需要在高版本服务器使用脚本方块的话,可以使用ScriptBlockPlus
、GrScriptBlock
等插件。
你可以根据这个插件的使用方式,来理解其他脚本插件的使用方法。
最常见的就是实现一个传送门
一、介绍
[1]. 指令
- 主要的指令如下表,当输入完有效的指令之后,会提示你点击一个方块进行绑定。
- 如果你需要创多个权限类别的指令时,可以使用英文的中括号将对应的权限类别括起来。
- 如果你的指令中需要用到玩家的名称时,可以用
<player>
将玩家的名称替换。
指令 | 介绍 |
---|---|
/sbinteract 执行方式 权限类别 指令 | 创建一个指定类别的指令,可绑定到方块上,当玩家破坏 、点击 或右键 方块时将会触发绑定的指令。 |
/sbwalk 执行方式 权限类别 指令 | 创建一个指定类别的指令,可绑定到方块上,当玩家走到该方块上面时就会触发绑定的指令。 |
执行方式 | 介绍 |
---|---|
create | 以新建的方式创建,若方块之前就绑定过一条指令时,以前的指令将会被清除 |
add | 以添加的方式创建, |
view | 查看指定方块已绑定的指令 |
reload | 重载指定的插件配置,如果是使用的/sbwalk reload ,重载的配置是walk_Scripts.yml 和walk_Config.yml ;如果使用的是/sbinteract reload ,重载的配置是interact_Scripts.yml 和interact_Config.yml |
remove | 删除指定方块的指令,如果在绑定时使用的是/sbinteract 来创建的,但删除时使用的是/sbwalk 不会删除方块的指令。所以如果发现没法删除方块上的指令时,就换另一个指令。 |
权限类别不止下面几种,仅介绍常用的。
权限类别 | 介绍 |
---|---|
@amount:次数 | 设定玩家可触发命令的次数,当次数使用完,命令就会从方块上移除。 |
@bypass | 无视用户的权限限制,使得玩家可以越权限执行绑定好的指令。 |
@command | 以玩家所拥有的权限执行命令,如果玩家没有该命令的权限时将会出现错误提示。 |
@cooldown:时间 | 设置命令冷却的时间,单位为分钟 |
$cost:金钱 | 使用这种权限类别时需要Vault 经济插件,消耗指定的金钱来执行某个指令,此时如果玩家执行的是权限范围之外的指令,就只会消耗金钱而不会执行指令。 |
@delay:时间 | 设置命令延迟执行的时间,单位为秒 |
@say 文本 | 将绑定的文本发送到服务器聊天栏 ,使用此权限类别后不需要接指令 |
@player 文本 | 将绑定的文本发送给触发命令的玩家 ,使用此权限类别后不需要接指令 |
[2]. 权限节点
- 如果是
op
,直接给所有权限。
如果是玩家,就给另外两条权限。- 插件默认的权限比较多,通常只需要知道这三条权限就行了。
权限 | 介绍 |
---|---|
scriptblock.* | 插件的所有权限 |
scriptblock.interact.use | 让玩家可以与绑定命令的方块进行交互(左键、右键和破坏方块),从而执行绑定的命令 |
scriptblock.walk.use | 让玩家可以与绑定命令的方块进行交互(踩踏方块时),从而执行绑定的命令 |
二、使用
插件的配置位于
plugins/ScriptBlock
之中,使用这个插件时不需要使用到配置,而且配置大多数情况下不需要去修改它,所以就不介绍配置了。
[1]. 简单传送门的实现
先选择一块空地
搭出来一个传送门的样子
然后输入一条指令:
/sbwalk create @command /spawn
sbwalk
表示当玩家踩踏到绑定的方块上方时,触发指令/spawn
,指令的执行者是玩家
create
表示的是以新建的方式来创建脚本
@command
表示允许玩家执行权限范围内的指令
/spawn
是一条完整的指令,通常服务器都会有这条指令,用来传送到主城。
如果出现了提示,就可以右键一个方块,将对应的脚本绑定到上面。
这个提示英文和中文都没影响,看提示语句的前缀是否有ScriptBlock
就行。
因为传送门有两个方块,所以需要分别绑定两次
如图,将这两个萤石都给绑定一次就行了。
如果你还没点击一个方块进行绑定,又执行了一次之前的命令时会提示你先进行绑定。
当然如果有玩家触发了脚本方块时,会在后台中显示出来。
效果图如下
虽然效果已经实现,但还有几个小的点需要注意一下
此步骤中使用的是sbwalk
,所以只有当方块存在且玩家踩踏上去之后才会触发指令。
如果这个方块不存在的话,sbwalk
类型的指令就没法被触发了。
在
sbwalk
方式下,这个方块存在时,玩家走上去就能触发指令。
触发指令和对应的方块类型无关,随便替换成其他方块同样能够触发指令。
插件只是通过记录方块的坐标来记录指令具体的位置。
而
sbinteract
就不同了,是通过玩家鼠标左键、右键或破坏方块的方式触发。
如果玩家只是放置方块时,不会触发指令。
[2]. 移除指定方块脚本
- 根据创建脚本有两种方式
sbinteract
和sbwalk
,同样的也有两种移除的方法。- 如果你使用
sbinteract
创建的指令,在移除时就必须使用/sbinteract remove
来移除脚本。
同理,sbwalk
创建的指令,在移除时必须使用/sbwalk remove
来移除脚本。
[3]. 查看指定方块的脚本
使用指令
/sbinteract view
和/sbwalk view
来查看该方块已绑定的脚本
如果你只使用了其中的一条指令来查看时发现没有绑定的脚本,只说明该方块上没有绑定这个类型的脚本。
- 查看方块是否绑定脚本时,通常是同时使用
/sbinteract view
和/sbwalk view
两条命令都查不到脚本信息时,才说明这个方块没有绑定脚本。- 查看时会显示两行,第一行是脚本创建者的信息,
smallfox
是玩家名,Builder
是用户权限组的名称。
@command
和/spawn
分别是权限类别和绑定的指令。
[4]. 权限类别的使用
- 如果你需要进入传送门,同时实现
扣除玩家金币
和传送玩家
两个功能时。
可以使用英文的中括号将两条指令括起来,中间无空格地连接。- 其他的也是同理,有些权限类别单独使用时还得使用中括号括起来,有些则不需要。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)