白癜风诊疗目标 https://disease.39.net/yldt/bjzkbdfyy/6195089.html
起床战争是很多玩家钟爱的PVP游戏,小编自己也很喜欢玩。不过我不仅仅是玩,还喜欢探查这个游戏的运行机制。今天先说说在游戏里,系统是如何探测到玩家的床被破坏了,而且是如何通知玩家的。
先在地上扔一张床吧。打开F3按键,看看这张床的坐标,在纸上记下来,只需要记住小数点前的整数位就可以了。
在地上扔一个命令方块,然后右键点击命令方块,将其设置成循环型命令方块。所谓循环型命令方块,就是可以以高频率反复执行命令方块所携带的命令。
右键点击这个循环型命令方块,输入上图的命令:testforblockair。床不是物品,是方块,这点不要搞错,所以是testforblock。是床所在位置的坐标,air代表的是空气方块。这个命令用自然语言说起来就是“检查在坐标是的方块是不是空气方块”。我们已经知道那个位置放的是床,所以一旦床被打碎,原先的位置就会被空气方块填充。因此,当检测到对应位置是空气方块时,就意味着床被破坏了!
床被破坏了这个悲伤的消息得通知玩家啊。所以我们再放一个命令方块,这次使用脉冲方块,在里面输入:
title
atitle{text:床已被破坏,color:red,bold:true}。用一个红石比较器将两个命令方块连接起来,如上图。然后,打破床吧!
瞬间就弹出了这条红色的悲伤消息。不过仍然需要附加上一条消息:你将不能重生!如下图,我们在脉冲型方块前再放上一个连锁型方块,并在里面写入:
title
asubtitle{text:您将不能重生,color:red,bold:true}。这次再把床打碎看看,界面上就显示出来了如下图的效果了,哭一个!
从上图可以看出,在床破坏后的红石比较器有红石信号在持续输出。
不过很有可能“起床战争”的开发者不是用上面方法实现的。没关系的,俗话说“条条大路通罗马”哦。