专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

如何应用TESTFOR指令输出的结果_java

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/3/9 4:08:21       共计:3562 浏览

如何应用TESTFOR指令输出的结果?

运用testfor指令检测玩家物品栏中是否有一定的物品

/testfor @p {Inventory

[{Slot:0b,id:minecraft:stick,Damage:0s,Count:1b,tag:{display:{Name:"123"}}}}]}

@p就是最近玩家

Inventory是背包

Slot是指玩家槽位,单位是b,可选可不选

id就是物品的id,不用多说

Damage默认为0,用来检测如彩色的羊毛,相当于辨别多个相同物体

tag就是一个连接符,用来连接一个NBT与另一个NBT。如这个木棍有“123”这个名字,想同样检测到这个名字,或者其他属性,就用tag连接。如有附魔属性就了连接ench,有注释就连接lore等

接着关于testfor的红石电路,可自行查阅

接着说scoreboard

掌握了testfor的红石电路后,连接有scoreboard的命令方块

设置变量:

首先要设置一个变量,就是要给玩家加分要先选定这个变量,接着选定玩家,予以加分

/scoreboard objectives add test dummy

dummy指变量,test就是设置的那个变量,可以改名

/scoreboard objectives add Test1 deathCount

就是给test1这个变量设置一个判据,为deathcount即死亡次数

关于判据的相关信息可自行查阅

加分

好,那么设置完了变量和判据,就该设置玩家加分项了

/scoreboard players add @p Test 1

players add指加分

@p指最近的玩家

test指设置的变量,比如刚刚设置了变量test,那就给这个变量的玩家分数予以改变

1就是加一分

如果把players add改成set和remove,则代表设置分数和减去分数

好,接着设置指令以让玩家知道自己的分数

/scoreboard objectives setdisplay sidebat Test

setdisplay是显示分数

sidebat是旁边,也可以设在上面

test是刚刚设置的变量

接着说检测分数

如果一个玩家的分数到了20分,那他就赢了,该如何设置呢

/tellraw @a[score_Test_min=20] [{"text":"你赢了"}]

就是检测变量为test的玩家分数到了20,他就赢了。

tellraw是指令,用来在对话框显示文字

@a是所有玩家

text可以随意修改,保持格式即可

想要做这个指令,一定要做一个红石脉冲,那“你赢了”也就会一直显示

所以要重置一下分数

/scoreboard players set @a[score_Test_min=20] Test 0

就是当有个玩家分数到达20时将分数设为0,即重置。你也可以设置不同的玩家不同的分数,不同的变量不同的分数

然后可以设置一个传送,tp所有玩家至大厅或任何地方

总结一下,在我的世界做一个地图是很不容易的。别看那些红石命令大神做出来的地图怎么怎么好,一张图至少几百个命令方块,几千条指令,还要考虑红石电路,命令变量等等...如果是新手不建议做那些很高能的地图。做出来了也不一定做好...

(纯手打,除指令外没有任何复制粘贴。如果对你有帮助请采纳)

版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:如何填写outlook电子邮件地址_服务器 | ·下一条:数据库备份的几种类型_服务器

Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有