实际上,使用remove、operation和set也可以达到同样的计入效果。
比如,你要把你自己计入到“金钱”计分项中,就需要:
/scoreboard players add/remove/set @s 金钱 0
如果你将一个还未计入“金钱”计分项的玩家的分数增加5会怎样?
其实不会怎么样。正如正常人的一般思维,刚刚计入计分项的玩家(或非玩家)其分数是从0开始算起。也就是说,给那名玩家添加5金钱实际上会先让他计入该计分项,此时他的分数为0,然后再将他的分数+5变成5。
这里的“金钱”计分项是作者自己编的,你想要运行上面的例子就得先自己创建一个叫金钱的计分项。
小主,
计入之后,我们该如何减少分数呢?这就要用到remove(删除):
... remove <目标选择器><计分项><减少的分数>[NBT(仅Java1.13之前)]
比如我想要将玩家“张三666”在“金钱”计分项中的分数减少10,这就需要执行:
/scoreboard players remove 张三666 金钱 10
假设他原本的分数是3。执行该指令过后,他的分数就变为了-7。
需要注意。记分板的分数其值是个Int整形类变量,也就是其值的范围只能是-~。如果一个玩家的分数已经是-,你再减去个1,他的分数就会变为。关于为什么会这样,以及Int整形究竟是个什么,你以后就会了解到。
如果你对此很感兴趣,那么你可以跳到后面135~140章尝试你是否能够理解。
分数可以增加和减少,当然也可以快速设定为指定的值。这时候就要用到set:
... set <目标选择器><计分项><分数>[NBT(仅Java1.13之前)]
设置成功后,该变量的数将会变成设置的分数。比如我想要将“张三666”的“金钱”设为2,就可以:
/scoreboard players set 张三666 金钱 2
你可能注意到了,在本章开头列出的格式中,还有一个reset(重置)。这个reset可和set没多大关系,因为reset是重置(更准确的说是清除数据)。其格式如下:
... reset <目标选择器>[计分项]