本帖最后由 没糖的葫芦 于 2018-8-1 23:51 编辑

寻找在失去的ScriptBlock的乐趣?

Command Block把脚本方块带回来了!


Block Commands----一个强大的脚本方块服务端Mod!

你想让你的玩家们即使不是OP也能改变天气么?
你想让你的玩家们按下一个按钮就立即死亡么
你想让你的玩家们自己的钻石来买东西吗?
不用想了,这些在这个插件里都能做到!
(上面这段话粘自ScriptBlock..)

这是一个服务端Mod,客户端可以不用安装,但也可以安装来适用于个人游戏..

基本命令:

/commandcreate [命令注解] 使用该命令后右键方块来添加到一个方块上,至少需要包含"@Command"注解.

例子: /commandcreate @Command:/weather clear @isWalk

/commandadd [命令注解] 使用该命令后右键方块会在该方块最后一个命令上添加内容,不能包含"@Command"注解.
/commanddel 使用该命令后右键一个方块来删除上面的所有命令..
/commandview 使用该命令后右键一个方块会显示方块上的所有命令..
/commandclear 使用该命令后会清空这个世界的所有方块上的命令..
/commandfind [距离] 给出所有每个坐标的绝对值的差不超过一定范围的有命令的方块的坐标
/comandremove [PosX] [PosY] [PosZ] 清除某个坐标上的方块的命令 [PosX] [PosY] [PosZ]./commanddis 退出命令编辑模式,使用后右键一个方块就不会再产生效果了。

可用的命令注解:

@isWalk
允许这条命令通过走的方式触发.

@isClick
允许这条命令通过左键的方式触发.

一个命令至少需要 "@isWalk" 和 "@isClick"中的一种方式触发,当然可以一起。

@Command
用法: @Command:CommandText
例子: @Command:/weather clear @isWalk @isClick

这条命令"/weather clear"会在玩家走过有这个命令的方块时触发,如果他有改变天气的权限的话.

@Message
给触发这个命令的玩家发送信息。
用法: @Command:MessageText
例子: @Message:I'm a fool. @isWalk

在玩家走过的时候会给玩家发送"I'm a fool"的信息。

@Bypass
表示这条命令可以无视触发者的权限执行.
例子: @Command:/weather rain @isWalk.

这条命令"/weather clear"会在玩家走过有这个命令的方块时触发,不管他有没有改变天气的权限.

@Player
用法: @Player:playername
设定只有某个玩家可以触发这个命令
Example: @Command:/weather rain @Player:Tom @isWalk @Bypass

只有Tom走过的时候才能触发这个命令.

@Cooldown
这个会给这条命令添加冷却时间
用法: @Cooldown:cooldownseconds
例子: @Command:/weather rain @Cooldown:5 @isWalk
当这条命令被触发后需要冷却5秒才能再次被触发。

注意这个Mod中时间的判定是现实时间而不是服务器运行时间。

@Amount
用法:@Amount:amount
这个会限制一个命令的触发次数
例子: @Command:/give @a dimond 2 @isWalk @Amount:3
只有前3个触发这个命令的玩家可以拿到2个钻石!
想一下有啥用吧!

@Delay
用法:@Delay:delayseconds
这个会设置这条命令被触发后的延迟执行时间
例子: @Command:/kill @a @Message:You will die! @isWalk @Dealy:5
触发这条命令的可怜的玩家会在死之前还能苟活5秒。

@Item
用法:@Item:itemname:amount
给这个命令的执行添加花费,表示要花费一些东西来执行这个命令,如果amount(物品个数)是-1或者0的话表示玩家至少要有这个物品,但是执行命令不会减少他们的物品数量。如果不满足会放弃执行。
例子: @Command:/day @Message:Cost 2 Apples to by a day @isWalk @Cooldown:5 @Item:apple:2

@Punish
用法:@Punish:CommandText
当前面的花费物品的限制或者玩家的限制没有满足的时候执行的内容。
例子: @Command:/give @a apple 2 @Message:2 Dimonds to buy 2 apples or you will die! @Item:dimond:2 @Punish:/kill @a
这是一个抢劫方块233,你必须拿两个钻石换2个苹果不然你就会死。

@isBreak
当这条命令花费物品的限制或者玩家的限制没有满足的时候跳过该方块上剩余命令的执行.
比如一个方块上有两条命令:
第一个是 @Command:/give @a apple 64 @Message:2 diamond to buy 64 Apples and 64 Wool @Item:diamond:2 @isBreak @isWalk
第二个是 @Command:/give @a wool 64 @isWalk
这样的话如果玩家没有给够2个钻石的话在不执行上面那条命令的同时也不会执行下面的那条语句。
想想有啥用吧!

上面所有的方块注解都是可选的,但是每一个注解在一条命令里都只能使用一次。
但是同一个方块可以绑定几条命令233.

注意..你的命令内容里面不能有"&&" 或者"@Split"...不然可能出现奇怪的错误(这两个是保留字串)。

一个有命令的方快是不能通过玩家手撸破坏的,但是可以被TNT或者苦力怕炸坏...
你只要在那个位置上就会莫名奇妙的触发...(空气方块命令233)。

源码开源了:GNU Lisence.
https://github.com/cxnaive/Block-Commands

2017-7-31:V2.2 更新:支持1.12
2017-8-21:Sponge版放出!更为强大,实用,完整覆盖所有ScriptBlock功能,还有更多强大特性详见:http://www.mcbbs.net/thread-723050-1-1.html
度盘链接:
----------------------------------------------------Block Commands ------------------------------------------------------------