使用指令刷极品马需要使用nbt标签。
首先是最基本的召唤指令/summonminecraft:horse~~1~。其后就可以在后面附加nbt标签了。
马拥有以下实体数据:
Bred:1或0-未知。繁殖后仍然是0。如果值为1,使其靠近此值同为1的马。
EatingHaystack:1或0-如果值为1,马将处于放牧状态。
Tame:1或0-如果值为1,马将处于驯服状态。除玩家外的生物不能骑乘被驯服且不带鞍的马。
Temper:范围从0到100-喂马会提高这项数值。更高的值会使马更容易驯服。
OwnerUUID[失效:JE1.16]:记录驯服这匹马的玩家UUID。对行为没有影响。
Owner[新增:JE1.16]:记录驯服这匹马的玩家。对行为没有影响。如果这匹马没驯服,则此值不存在。
ArmorItem:马所穿着的马铠物品。可能不存在。
SaddleItem:马所穿着的鞍物品。可能不存在。
Variant:马的变种。决定颜色。
马实体拥有Variant字段,决定了马的长相和类型。下面是决定马变种的变种值的数据:
注:如使用了未指定的Variant值,或使用无效的ID(非上述的ID)作为Variant值而生成马时,只会生成一只白色的马。
示例:
以下全部示例都由命令方块完成,故没有加斜杠。
summonminecraft:horse~~1~{Tame:1,Variant:514,SaddleItem:1,ArmorItem:{id:minecraft:diamond_horse_armor,Count:1}}。
将会生成一只被驯服的、装备钻石马铠的、栗色带白色条纹的马。
注:如使用了未指定的Variant值,或使用无效的ID(非上述的ID)作为Variant值而生成马时,只会生成一只白色的马。
其次就是决定马生命上限、速度、弹跳力的标签,属于nbt中的属性(Attributes)标签。
决定生命上限的是:
generic.maxHealth[失效:JE1.16]。
generic.max_health[新增:JE1.16]。
决定速度的是:
generic.movementSpeed[失效:JE1.16]。
generic.movement_speed[新增:JE1.16]。
决定弹跳力的是(此标签为马独有):
horse.jumpStrength[失效:JE1.16]。
horse.jump_strength[新增:JE1.16]。
它们的具体数据可以参照我的世界中文wiki属性。
然后我们的指令就可以改变马匹的这些属性了。
示例:
summonminecraft:horse~~1~{Tame:1,Attributes:[{Name:generic.maxHealth,Base:16}]}。
将会生成一匹被驯服的,最大生命值为8颗心的马。
以上三个标签可以同时添加:
summonminecraft:horse~~1~{Tame:1,Attributes:[{Name:generic.maxHealth,Base:28},{Name:generic.movementSpeed,Base:0.2275},{Name:horse.jumpStrength,Base:0.715}]}。
将生成一匹被驯服的,最大生命值为14颗心,速度为9.8格每秒,跳跃高度为3个方块的马。