黏土水桶 Clay Bucket (Water)

  • 注册名:clayBucketWater
  • 类:ClayBucket → BaseClayBucket → ItemBucket
  • 内容方块:minecraft:flowing_water
  • 本地化名:iguana.tcon.clayBucket.Water
  • 纹理:iguanatweakstconstruct:clayBucketWater
  • 堆叠上限:默认 64
  • 容器物品:烧制黏土桶

流体注册

FluidContainerRegistry.registerFluidContainer(FluidRegistry.WATER, clayBucketWater, emptyClayBucket),即在水→铁桶的映射旁边并列注册了一条水→黏土桶。

同时 OreDictionary.registerOre("listAllwater", clayBucketWater)——沿用 Pam’s HarvestCraft 的 ore 名,使水桶可被该 mod 的通用「所有水桶」配方识别。

装填与倒出

  • 装水:走 ClayBucketHandler.bucketFill,命中 minecraft:water 或 flowing_water 时 ALLOW 并把流体方块 setBlockToAir。
  • 倒水:走 BaseClayBucket.onItemRightClick → 父类放置流动水 → 返回结果被识别为 minecraft:bucket → 替换为烧制黏土桶。
  • 装满坩埚:onRightClickBlock(PlayerInteractEvent,RIGHT_CLICK_BLOCK)额外处理——手持水桶右键 BlockCauldron 且坩埚水位 < 3 时,直接把水位设为 3(func_150024_a(..., 3))并扣除桶(原版铁桶需要 3 次点击才能填满)。创造模式不扣除。

注意该处理器硬性要求 event.entityPlayer 非空且手持物品就是 clayBucketWater,因此只有玩家能触发,不适用于自动化。