PlantGrowthEvent

基本信息

属性 值
类名 squeek.applecore.api.plants.PlantGrowthEvent
类型 class extends Event(非 abstract),内含 2 个静态事件类
启用版本 Minecraft 1.7.10

功能

植物生长机制的 2 个事件,是本 mod 中唯一不带 player 字段的一组。

事件 可写字段 触发时机
AllowGrowthTick 全部 final 生长 tick 之前,返回 Event.Result 供调用方决定是否继续
GrowthTick 全部 final 生长之后(只读通知)

实现要点

  • AllowGrowthTick 携带 block、world、x/y/z、random 五个 final 字段, 监听器只能通过 Event.Result 表达意见。
  • GrowthTick 携带 block、world、x/y/z 与 previousMetadata; 另有一个不含 previousMetadata 的构造器重载, 供「生长但 metadata 未变」的场景使用(见 IAppleCoreDispatcher 的 announcePlantGrowthWithoutMetadataChange)。
  • 两个事件都不区分事件源方块,调用方需自行比对 block 字段。
  • 触发点分散在 9 个原版方块 Mixin 与 4 个外部 mod 方块 Mixin 中。

相关条目