chen_jun
我现在再做一张地图,想要检索一个指定的玩家,且一直检测他(就是这个玩家带着一个指定的帽子,只要带着就会输出信号),但是我如果在弄另外一个命令方块的话,就没有办法继续检测这个玩家了,去看了mcwiki里的检索器,也没有类似的可以用的,难道要用scoreboard来做吗?可是scoreboard我不会玩啊........

⊙v⊙
但是我如果在弄另外一个命令方块的话,就没有办法继续检测这个玩家了

先是这里,指明为什么你会认为没办法继续检测...

pca006132
第一,那不叫检索器,没这玩意的
第二,不会scb就去学呗,这个得scb检测nbt。

可以看看我签名的新人手册

chen_jun
⊙v⊙ 发表于 2017-7-1 11:08
但是我如果在弄另外一个命令方块的话,就没有办法继续检测这个玩家了

先是这里,指明为什么你会认为没办法 ...

比如我用testfor检测玩家是否带了帽子,信号输出,那么就下一个指令就跟踪不到他了(多人模式)

⊙v⊙
的确要用scb很标准的持有特殊物品给予药水效果...
Pca签名上的手册看看吧

chen_jun
⊙v⊙ 发表于 2017-7-2 02:12
的确要用scb很标准的持有特殊物品给予药水效果...
Pca签名上的手册看看吧

持有....那带有呢= =,话说我要的不是药水效果而是给他加分。就是一个小游戏,抢到帽子加分那种。我就是不知道怎么去检测玩家带了帽子,我只会给玩家戴帽子......

⊙v⊙
chen_jun 发表于 2017-7-1 16:25
持有....那带有呢= =,话说我要的不是药水效果而是给他加分。就是一个小游戏,抢到帽子加分那种。我就是 ...

和持有武器给予药水效果一样,只不过药水效果换成其他指令而已
把检测手持物换成检查特定栏内的物品
  1. {Inventory:[{Slot: 103b}]}
复制代码




scoreboard objectives 创建一个dummy
创建一个带有特殊nbt的物品
高频或低频scoreboard players add 给予"指定位置上(slot)为指定物品(特殊nbt)"的玩家分数+1。

这就是你要的。

例子我没有,因为我看的时候只会照抄,根本没去理解...

最怕的就是scb...尤其是用在多人的时候
建议是开着wiki记分板页面看着里面的命令解释和判断点。
找张纸写好思路再去弄....


你还是看看上面那位签名档里的例子吧= .=


chen_jun
⊙v⊙ 发表于 2017-7-2 11:51
和持有武器给予药水效果一样,只不过药水效果换成其他指令而已
把检测手持物换成检查特定栏内的物品

可以告诉我再精确一点吗?那个新人手册确实很有用,但是没有实际我要找的格式(方法我知道,可是格式不会写) /scoreboard Players add @a[tag=....] 1 还是/scoreboard Players add @a 1 [datatag],另外就是{Inventory:[{Slot: 103b}]}这东西要检测的物品id以及NBT标签放在哪里???

⊙v⊙
chen_jun 发表于 2017-7-1 19:32
可以告诉我再精确一点吗?那个新人手册确实很有用,但是没有实际我要找的格式(方法我知道,可是格式不会 ...
可以告诉我再精确一点吗?那个新人手册确实很有用,但是没有实际我要找的格式(方法我知道,可是格式不会写) /scoreboard Players add @a[tag=....] 1 还是/scoreboard Players add @a 1 [datatag],另外就是{Inventory:[{Slot: 103b}]}这东西要检测的物品id以及NBT标签放在哪里???
■players要小写■@a[tag=...] 目标选择器  意思为带有这些(记分板)标签的所有玩家
■后面的datatag就是你要检测的标签
...如果玩家存在且指定了数据标签dataTag,玩家必须匹配数据标签。需要注意数据标签项必须在标签后定义类型,比如要寻找高压爬行者需要用{powered:1b}。    ——wiki
  1. /scoreboard objectives add wearhat dummy
复制代码
  1. /scoreboard players add <player> <objective> <count> [dataTag]
复制代码
  1. /scoreboard players add @a wearhat 1
  2. {Inventory:
  3.         [
  4.                 {Slot:103b,
  5.                 Count:***,
  6.                 id:minecraft:***,
  7.                 Damage:***,
  8.                 tag:{
  9.                         display:{
  10.                                 Name:"***",
  11.                                 Lore:["***"],
  12.                                 color:***},
  13.                                 ench:[{id:#,lvl:#}],
  14.                                 AttributeModifiers:[{***}]
  15.                         }
  16.                 }
  17.         ]
  18. }
复制代码
大概就是这样,*补全。
多余或不想规定的标签可以删除,但是这里填上的标签必须与帽子的标签对应。
tag之后的内容为物品自身的标签。





chen_jun
⊙v⊙ 发表于 2017-7-1 08:35
■players要小写■@a[tag=...] 目标选择器  意思为带有这些(记分板)标签的所有玩家
■后面的datatag就是 ...

很感谢,现在知道了

chen_jun
⊙v⊙ 发表于 2017-7-1 08:35
■players要小写■@a[tag=...] 目标选择器  意思为带有这些(记分板)标签的所有玩家
■后面的datatag就是 ...

.....天哪

当我想用
  1. /scoreboard players add @a helmet 1 {Inventory:[{Slot:0b,Count:1,id:minecraft:leather_helmet,tag:{display:{color:65280,Name:"绿帽子"}}}]}
复制代码

的时候,我发现它说不匹配,然后这两条指令
  1. /summon Item ~ ~1 ~ {Item:{id:minecraft:leather_helmet,Count:1,tag:{display:{color:65280,Name:"绿帽子"}}}}
  2. /give @p minecraft:leather_helmet 1 0 {display:{color:65280,Name:"绿帽子"}}
复制代码

有什么问题吗?tag是一样的吧,可是就是说不匹配,后面的加分装置也是一样,
  1. /scoreboard players add @a 2 {Inventory:[{Slot:103b,Count:1,id:minecraft:leather_helmet,tag:{display:{color:65280,Name:"绿帽子"}}}]}
复制代码

都说不匹配

⊙v⊙
chen_jun 发表于 2017-7-1 23:29
.....天哪

当我想用

没说完整,我的错。新版本变严格了啊...

Slot:0b是物品栏第一位,103b是头位,wiki有个物品栏数字表的
Count后面加b  Count:1b
id:后面双引号 id:"minecraft:leather_helmet"

你发的最后那个加分 命令格式错误



版本: 1.12

紫绿的命令方块也真好用...

chen_jun
⊙v⊙ 发表于 2017-7-3 02:53
没说完整,我的错。新版本变严格了啊...

Slot:0b是物品栏第一位,103b是头位,wiki有个物品栏数字表的

我是1.8做的.......

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