游民星空 > 攻略秘籍 > 攻略 > 正文

《我的世界》1.8.3指令大全 指令代码使用教程

2015-06-03 16:00:35 来源:MCBBS 作者:End-Enderman 我要投稿

第12页:探测相关指令-testfor指令

展开

探测相关指令

1.testfor指令

  mc中最常用的指令之一,用于探测一系列的东西。可以探测玩家、探测实体甚至探测玩家背包的东西(方块用testforblock,这一点需要注意,两者要区分)。最基本的形式是

  testfor 玩家/选择器 testfor系列数据标签

  如果直接探测这个世界有没有某个玩家,比如探测这个世界有没有叫“End-Enderman”的玩家,就用

  testfor End-Enderman

  使用这个指令,如果这个世界有一个叫做“End-Enderman”的玩家,便会显示“发现End-Enderman”并且命令方块持续输出,直到这个玩家不存在为止。一般testfor需要高频持续探测一个东西得输出。

游民星空

  或者运用选择器,比如探测这个世界的所有玩家,用

  testfor @a

  即可。自从到了1.8后,运用@e的次数就越来越多了。一般用在UUID上。比如

  testfor @e[type=实体名称,name=名字]

  type后面填写实体的英文名称,比如僵尸就填写Zombie,掉落物就填写Item等等。name填写玩家起的名称(比如用命名牌或者CustomName),如果想指定所有的这个种类那就把name去掉即可。最好用于高频,在做RPG、机关、解密、冒险无论是哪个地图都有着很大的帮助。(但是唯一缺点就是容易卡)当探测到特定的生物后,命令方块就会有输出。一般连接比较器来执行一系列的命令。(探测到会一直有输出,直到探测不到)

游民星空

  还有一种形式,就是探测玩家在一个坐标的形式。

  testfor 选择器[x,y,z,r]

  选择器就是@a、@e、@r、@p,x、y、z是坐标,在游戏中按下默认的F3可以查看。r是半径,比如1就是1格,2就是附近2格。举个例子,比如

  testfor @a[123,45,789,1]

  高频这个指令,当123,45,789这1格方块的地方有玩家的时候,便会输出信号。

  一般testfor都是用于探测玩家在某个地方,之后连接比较器做出一系列效果。对于地图是很有帮助的一个指令。

  (自从execute出来之后貌似testfor就被冷落了些...因为execute可以省下一个比较器...但是testfor却是有着不可磨灭的作用)

  除了探测玩家,testfor还可以探测玩家背包里的物品。比如

  /testfor @a {Inventory:[{id:"minecraft:xxx}]}

  Inventory便是背包,而xxx处填写要探测的物品名称,之前说到过可用F3+h看到。比如我们要探测玩家背包里有没有罂粟,那就用

  /testfor @a {Inventory:[{id:"minecraft:red_flower"}]}

  但是我们知道,物品可以叠加,那么,要探测一定数量的物品,假如探测玩家背包里有没有3个钻石,那就用

  /testfor @a {Inventory:[{id:"minecraft:diamond",Count:3b}]}

  物品正常情况下叠加只能达到64。假如探测玩家背包里有没有67个钻石,用

  /testfor @a {Inventory:[{id:"minecraft:diamond",Count:64b},{id:"minecraft:diamond",Count:3b}]}

  以此类推,可以无限叠加下去,但是一定要注意括号。

  除了玩家背包里的物品,也可以探测玩家物品栏的9个物品。要用的是Slot数据标签。

  /testfor @a {SelectedItemSlot:格子数,Inventory:[{Slot:格子数b,id:"方块名称"}]}

  格子数是一样的。比如你需要探测第一个物品栏装的是刷怪蛋,那就用

  /testfor @a {SelectedItemSlot:0,Inventory:[{Slot:0b,id:"minecraft:spawn_egg"}]}

  有人说这个指令必须要用到9个命令方块,实际上那个是在完全不知道玩家物品会在哪个物品栏里的情况下。当知道玩家或者在解密(比如必须格子数正确才能触发机关)的情况下一般用这个指令。(9个命令方块就是每一个数字改一下,0-8即可)

  如果探测的物品是附加了数据标签的(比如用铁砧改了名字),那么就用

  /testfor @a {SelectedItemSlot:格子数,Inventory:[{Slot:格子数b,id:"方块名称",tag:{display:{Name:"名字"}}}]}

  总之,虽然execute类似的指令很方便,但是testfor容易理解,它的实用度还是非常高的。(testfor分数具体看scoreboard)

更多相关内容请关注:我的世界专区

责任编辑:Shy夏夏

上一页 11 12 13 14 15 16 17 18 19 20 21 下一页
友情提示:支持键盘左右键“← →”翻页

本文是否解决了您的问题

文章内容导航
游民星空APP
随手浏览游戏攻略
code
单机游戏下载
休闲娱乐
综合热点资讯
游民星空联运游戏