本站文本内容除另有声明外,转载时均必须注明出处。(详情…本站文本内容除另有声明外,转载时均必须注明出处。(详情…中文Minecraft Wiki是完全公开的。请勇于扩充与修正内容!中文Minecraft Wiki是完全公开的。请勇于扩充与修正内容!Minecraft中文Wiki微博正在更新!或许有兴趣去看看Minecraft中文Wiki微博正在更新!或许有兴趣去看看想与其他用户进行编辑上的沟通?社区专页正是为此创建的。想与其他用户进行编辑上的沟通?社区专页正是为此创建的。翻译或创建页面之前,不妨看看译名标准化Wiki条例页面。翻译或创建页面之前,不妨看看译名标准化Wiki条例页面。需要管理员的协助?在管理员告示板留言也许可以帮到您。需要管理员的协助?在管理员告示板留言也许可以帮到您。
各位用户:为了让我们能更好了解您的需求,提供更优良的服务,请帮助我们填写一份问卷。编者问卷读者问卷(需要花费7分钟左右)

Hi Gamepedia users and contributors! Please complete this survey to help us learn how to better meet your needs in the future. We have one for editors and readers. This should only take about 7 minutes!

Predicate

来自Minecraft Wiki
跳转至: 导航搜索
此条目包含了尚未确定官方中文译名的游戏内名称。
中文译名决定前,请勿擅自更改。
Information icon.svg
此特性为Java版独有。
Grass Block Revision 6.png
本页面包含会在下一个更新中出现的内容。
这些特性已经在开发版本中出现,但包含这些特性的正式更新尚未发布。

Predicate是技术性JSON文件, 相当于战利品表、命令/execute if predicatepredicate目标选择器参数的条件。它们是数据包的一部分。

JSON结构[编辑 | 编辑源代码]


  • 根标签。

    •  condition: 该条件的ID
    • 该条件的其他部分,指定的部分在下面列出。


 condition的可能取值及其相关的额外内容:

  • alternative - 将该列表中的每一个参数项用“或”连接起来。

    •  terms: 一个由条件组成的列表,每个条件在判断时以“或”连接。
  • block_state_property - 检查方块状态的属性。

    •  block: 一个方块ID。当方块不匹配时,测试不通过。

    •  properties: (可选)方块属性和其NBT值的一个映射,所有的值均为字符串。当方块不匹配时,测试不通过。
  • damage_source_properties - 检查伤害来源的属性。

    •  properties: 伤害属性和其NBT值的映射。
  • entity_present - 当实体被设置时返回true。
  • entity_properties - 实体的测试属性。

    •  entity: 指定实体检查相应的条件。设置成 this将使用死亡的实体,或是破坏方块、打开容器或获取进度的玩家,killer使用杀手,而killer_player使用作为杀手的玩家。

    •  predicate: 应用于位置的predicate,和进度使用一样的结构。

      •  flags: 待检查的predicate信号。

        •  is_on_fire: 测试实体是否在火里。

        •  is_sneaking: 测试实体是否在潜行。

        •  is_sprinting: 测试实体是否在快跑。

        •  is_swimming: 测试实体是否在游泳。

        •  is_baby: 测试实体是否幼年状态。
  • entity_scores - 测试实体的记分板分数。

    •  entity: 指定实体检查相应的条件。设置成 this将使用死亡的实体,或是破坏方块、打开容器或获取进度的玩家,killer使用杀手,而killer_player使用作为杀手的玩家。

    •  scores: 待检查的分数。所有指定的分数通过测试时,条件通过。

      •  A score: A score是Json键名,分数刚好满足其值时,条件通过。

      •  A score: A score是Json键名,分数达到下面最大值和最小值的范围时,条件通过。

        •  min: 最小分数。

        •  max: 最大分数。
  • inverted - 把参数项中条件的判断结果取反。

    •  term: 待取反的条件。
  • killed_by_player - 测试 killer_player实体是否可用。

    •  inverse: 如果killer_player不可用,测试通过。
  • random_chance - 测试一个0.0–1.0之间的随机数是不是小于给定值。

    •  chance: 0.0–1.0之间取得的成功率。
  • random_chance_with_looting - 测试一个0.0–1.0之间的随机数是不是小于给定值,受killer实体身上的抢夺等级影响。

    •  chance: 基础成功率。

    •  looting_multiplier: 对基础成功率的调整,公式是chance + (looting_level * looting_multiplier)
  • reference - 测试是否已经通过了另一个引用条件(Predicate)。

    •  name: 条件(或者说Predicate)所引用的命名空间ID。循环引用会导致解析失败。
  • survives_explosion -(1/爆炸半径)的概率返回true。
  • table_bonus - 以附魔等级为索引,从表中挑选概率通过。

    •  enchantment: 附魔的id。

    •  chances: 从0开始索引,获取相应附魔等级的概率表。
  • tool_enchantment - 测试工具的附魔。

    •  enchantments: 该工具必须具有的附魔列表。

      • 代指其中的一个附魔。

        •  enchantment: 命名空间化的附魔名称。

        •  levels: 附魔必须具有的等级。

          •  min: 最低附魔等级。

          •  max: 最高附魔等级。
  • weather_check - 检查当前的天气状态。

    •  raining: 如果为真,仅在下雨时,该条件测试通过。

    •  thundering: 如果为真,仅在雷暴天气时,该条件测试通过。

历史[编辑 | 编辑源代码]

Java版(即将到来)
1.15 19w38a 向数据包中加入了Predicate。