星河皓月丶
本帖最后由 璀璨星河丶 于 2021-7-31 20:34 编辑
一.效果

就像标题所说的那样
这是一个关于湿润度的教学

那么什么是湿润度呢?

可以理解为是跟饥饿值,生命值同类型的数据,如果湿润度太低会有惩罚
可以让你的冒险更具有挑战性







二.原理

记分板实现这个效果

隔一段时间,自动减少湿润度,如果在水中,就加湿润度
设置好湿润度上限惩罚下限
以及复活后湿润度的重置





三.指令
总体示意图:


(有几个命令块乱入,请忽略)



0-1
聊天区输入/scoreboard objectives add water dummy water
注解:设置名为“water”(可换)的记分板

1-1


  1. /execute @a ~~~ scoreboard players remove @a water 1
复制代码
注解:每隔60ticks(可在左下方自行调整),所有人的湿润度就-1


1-2


  1. /execute @a ~~~ detect ~~~ water 0 scoreboard players add @s water 1
复制代码
注解:检测玩家所在位置的方块,如果是,则迅速恢复湿润度左下角可以调速度


1-3


  1. /execute @a[scores={water=50..}] ~~~ scoreboard players remove @s water 1
复制代码
注解:检测玩家的湿润度,如果高于50,则立即降低到50,即设置了湿润度的最大值(可以调整)
tips:数字+.. 意思是 大于等于      |      ..+数字 意思是 小于等于)


1-4


  1. /effect @a[scores={water=..5}] blindness 2 3 true
复制代码
注解:玩家的湿润度若低于5,则给予失明(可调整)效果作为提醒


1-5


  1. /effect @a[scores={water=..0}] wither 2 1 true
复制代码
注解:给湿润度低于0的玩家给予凋零效果,也就是开始掉血


第二组命令块是关于玩家死亡后重置湿润度
方法在我以前的 教你制作一个死亡榜 里就提到了

2-1


  1. /tag @a add die
复制代码
注解:给全体玩家加一个“die“的标签(注意无条件)


2-2


  1. /tag @e[type=player] remove die
复制代码
注解:给活着的玩家去除”die“标签,即有标签的就是死去的玩家(注意无条件)


2-3


  1. /scoreboard players set @e[tag=die] water 50
复制代码
注解:给死去的玩家重置湿润度为50(图中指令有问题,以代码为准





四.后记


最近几天忙于报志愿,然后又一直活跃在问答版
也算是尽自己的绵薄之力为论坛做贡献了
所以最近一直没时间出教程
今天刚好没事,便来这里再发一期教程
本来做的是口渴值,后来做好以后bug太多,无奈只好放弃了这个设想
最后改成了现在的湿润度,不过也很不错嘛




来自群组: 黄金之匣美工社

sb666250isme
完成任务

sb666250isme
完成任务

墨三凌
能加一个面板显示湿润度吗,感觉血条变暗有点像中了凋零效果

林言uu
大佬加油哦

第一页 上一页 下一页 最后一页