http://www.mcbbs.net/thread-289653-1-1.html
我发过一个类似的装置,但BUG太多{:10_527:}。
所以我又采取了回复中的意见,改进了一下装置。
——————————————————————————————————————————
首先用计分板创建一堆变量
/scoreboard objectives add d deathCount(d,统计玩家死亡次数)
/scoreboard objectives add s stat.swimOneCm(s,统计玩家游行距离)
/scoreboard objectives add Water dummy (Water,虚拟变量,作为饥渴值)
/scoreboard objectives add abc stat.walkOneCm (abc,统计玩家行走距离)
/scoreboard objectives add wb stat.useItem.minecraft.potion (wb,统计玩家使用药水或水瓶次数)[我之前居然没想到。。。{:10_494:}]
——————————————————————————————————————————
然后上方是有爱的时钟电路/scoreboard players remove @p Water 1(负责定时减玩家饥渴值)
中间一个超频脉冲激活四个命令方块
/testfor @p[score_abc_min=250](探测玩家行走距离)
满足后激活/scoreboard players set @p abc 0和/scoreboard players remove @p Water 1(作为玩家走路减少饥渴值的设定)
/testfor @p[score_s=50,score_s_min=50]对应/scoreboard players set @p s 0和/scoreboard players remove @p Water 1(作为玩家游泳减少饥渴值的设定)
重点:/testfor @p[score_wb=1,score_wb_min=1](探测玩家使用水瓶或药水次数)
满足后激活/scoreboard players add @p Water 20和/scoreboard players set @p wb 0(恢复玩家20点饥渴值并将玩家使用水瓶次数wb清零)
/testfor @p[score_Water_min=101]对应/scoreboard players set @p Water 100
(将玩家的饥渴值上限限定在100)
—————————————————————————————————————————
玩家饥渴值降低的负面效果
/testfor @p[score_Water=20,score_Water_min=20]对应/effect @p 9 12 1 true和/tellraw @p {text:"你感到头昏眼花",color:red,bold:true}(当玩家饥渴值降到20后,给予玩家12秒的反胃效果)
/testfor @p[score_Water=0,score_Water_min=0] 这个嘛,{:10_497:}
对应/execute @p ~ ~ ~ say 神作了和/kill @p[score_Water=0,score_Water_min=0]
你懂的。。。。。。。。。。。
/testfor @p[score_d=1,score_d_min=1]对应/scoreboard players set @p d 0和/scoreboard players set @p Water 100(玩家死后将饥渴值恢复至100)
/testfor @p[score_Water=50,score_Water_min=50]对应/effect @p 2 10 1 true和/tellraw @p {text:"你感到唇焦口燥",color:red}(当玩家饥渴值降到50后,给予玩家10秒的缓慢效果)
——————————————————————————————————————————
虽然上次的装置BUG很多{:10_527:}
但希望大家如果有什么意见或发现BUG,一定要回复,谢谢
最后是伟大滴存档君