在上一章时,我们讲了如何管理计分项。所以objectives就完了。而对于players,也就是对变量、对玩家的控制我们还没聊。
通过players我们可以set(设置)、add(添加)、remove(删除)、list(列出)(Java版为get)、reset(重置)、operation(操作)、test(检测)和enable(触发器)。这些很多,我们今天就只研究基本的:如何管理变量。
管理一个变量,就得先有一个变量,不然管理啥呢?我们可以为自己,也可以创建一个没有实体储存的变量。要创建,就需要add(添加):
/scoreboard players add <目标选择器><变量储存的计分项名><增加的分数>
增加的分数最少为0。但是,就算是0,那也算是开始计入这个计分项了。
比如,你可以为自己创建一个:
/scoreboard players add @s 金钱 0
这里的金钱是作者自己编的,你要添加就得先创建一个叫金钱的计分项。
现在已经计入了。我们可以减少分数,也就是remove(删除):
/scoreboard players remove <目标选择器><变量储存的计分项名><减少的分数>
注意一点,变量的分数可以是正,也可以是负。
当然,增加和减少的分数不要太大,都不能超过2的31次方减1的数。
接下来,如果你想具体一些,那么就得需要set(设置):
/scoreboard players set <目标选择器><变量储存的计分项名><设置的分数>
设置的分数可以是正,也可以是负。设置成功后,该变量的数将会变成设置的分数。当然,同样最大不能超过2的31次方减1,最小不能低于负2的31次方加1的数。
当然,要狠一点的话,可以用reset(重置)重置一个玩家的一个变量或者所有变量:
/scoreboard players reset <目标选择器>[要重置的计分项]
如果不填计分项,将会重置该玩家的所有相关变量。如果填了,将会只清除一个变量(每一个玩家在每一个计分项里只能有一个自己的变量)。
所以,现在试着弄一个虚拟货币,就像微信和支付宝的数字货币。
这个货币的名称自己想。作者想的是:$。
没错,名字允许你填$等符号。那么,现在输入:
/scoreboard objectives add $ dummy §a$
(Java版:
/scoreboard objectives add $ dummy {“text“:“$“,“color“:“yellow“})
那么,现在已经有了数字(虚拟)货币,然后就是给自己钱了。
作者现在没钱,所以作者我要给自己钱:
/scoreboard players add @s $ 1000000
OK,现在作者有100万美元了!(当然是游戏里)。
那么,现在就可以做一个记分板商店了。我们运用clear指令和scoreboard指令结合即可建成一个用具体货币换成虚拟货币。而使用scoreboard和give指令可以将虚拟替换成(游戏里的)现实物品。
但是,作者之前讲过,变量允许负数!
所以,既然是金钱,我们就要防止这种负数欠账的事情发生。
此时,scoreboard——players——test指令就派上用场了!