Skip to content

Commit

Permalink
Ignore NBT data on fluids when filling apothecary
Browse files Browse the repository at this point in the history
Fixes #4787, but the Thirst Was Taken water quality information is lost when removing water from the Petal Apothecary again.
  • Loading branch information
TheRealWormbo committed Feb 3, 2025
1 parent cd03fae commit 305c36e
Showing 1 changed file with 4 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -227,11 +227,10 @@ public boolean isFluidContainer(ItemEntity item) {
public boolean extractFluidFromItemEntity(ItemEntity item, Fluid fluid) {
return item.getItem().getCapability(ForgeCapabilities.FLUID_HANDLER_ITEM)
.map(h -> {
var extracted = h.drain(new FluidStack(fluid, FluidType.BUCKET_VOLUME),
IFluidHandler.FluidAction.SIMULATE);
var extracted = h.drain(FluidType.BUCKET_VOLUME, IFluidHandler.FluidAction.SIMULATE);
var success = extracted.getFluid() == fluid && extracted.getAmount() == FluidType.BUCKET_VOLUME;
if (success) {
h.drain(new FluidStack(fluid, FluidType.BUCKET_VOLUME), IFluidHandler.FluidAction.EXECUTE);
h.drain(extracted, IFluidHandler.FluidAction.EXECUTE);
item.setItem(h.getContainer());
}
return success;
Expand All @@ -244,11 +243,10 @@ public boolean extractFluidFromPlayerItem(Player player, InteractionHand hand, F
var stack = player.getItemInHand(hand);
return stack.getCapability(ForgeCapabilities.FLUID_HANDLER_ITEM)
.map(h -> {
var extracted = h.drain(new FluidStack(fluid, FluidType.BUCKET_VOLUME),
IFluidHandler.FluidAction.SIMULATE);
var extracted = h.drain(FluidType.BUCKET_VOLUME, IFluidHandler.FluidAction.SIMULATE);
var success = extracted.getFluid() == fluid && extracted.getAmount() == FluidType.BUCKET_VOLUME;
if (success && !player.getAbilities().instabuild) {
h.drain(new FluidStack(fluid, FluidType.BUCKET_VOLUME), IFluidHandler.FluidAction.EXECUTE);
h.drain(extracted, IFluidHandler.FluidAction.EXECUTE);
player.setItemInHand(hand, h.getContainer());
}
return success;
Expand Down

0 comments on commit 305c36e

Please sign in to comment.