diff options
| author | shedaniel <daniel@shedaniel.me> | 2021-10-22 14:43:36 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2021-10-22 14:43:36 +0800 |
| commit | fc32ca29ab21871b339c6f55de83d1d4ba9932ec (patch) | |
| tree | 7651ea4bc7787233baa93ecf608b3aeeaff5bebd /fabric/src/main/java | |
| parent | e3d89238d176504e10a63d248625923a8bb3cfe7 (diff) | |
| download | RoughlyEnoughItems-fc32ca29ab21871b339c6f55de83d1d4ba9932ec.tar.gz RoughlyEnoughItems-fc32ca29ab21871b339c6f55de83d1d4ba9932ec.tar.bz2 RoughlyEnoughItems-fc32ca29ab21871b339c6f55de83d1d4ba9932ec.zip | |
Fix #644
Diffstat (limited to 'fabric/src/main/java')
| -rw-r--r-- | fabric/src/main/java/me/shedaniel/rei/impl/common/compat/FabricFluidAPISupportPlugin.java | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/fabric/src/main/java/me/shedaniel/rei/impl/common/compat/FabricFluidAPISupportPlugin.java b/fabric/src/main/java/me/shedaniel/rei/impl/common/compat/FabricFluidAPISupportPlugin.java index 8847874c1..cb75eca9f 100644 --- a/fabric/src/main/java/me/shedaniel/rei/impl/common/compat/FabricFluidAPISupportPlugin.java +++ b/fabric/src/main/java/me/shedaniel/rei/impl/common/compat/FabricFluidAPISupportPlugin.java @@ -30,7 +30,6 @@ import me.shedaniel.rei.api.common.fluid.FluidSupportProvider; import me.shedaniel.rei.api.common.plugins.REIServerPlugin; import me.shedaniel.rei.api.common.util.EntryStacks; import net.fabricmc.fabric.api.transfer.v1.context.ContainerItemContext; -import net.fabricmc.fabric.api.transfer.v1.fluid.FluidConstants; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidStorage; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidVariant; import net.fabricmc.fabric.api.transfer.v1.storage.Storage; @@ -47,15 +46,17 @@ public class FabricFluidAPISupportPlugin implements REIServerPlugin { support.register(entry -> { ItemStack stack = entry.getValue().copy(); Storage<FluidVariant> storage = FluidStorage.ITEM.find(stack, ContainerItemContext.withInitial(stack)); - List<EntryStack<FluidStack>> result; - try (Transaction transaction = Transaction.openOuter()) { - result = StreamSupport.stream(storage.iterable(transaction).spliterator(), false) - .filter(view -> !view.isResourceBlank()) - .map(view -> EntryStacks.of(FluidStack.create(view.getResource().getFluid(), view.getAmount(), view.getResource().getNbt()))) - .collect(Collectors.toList()); - } - if (!result.isEmpty()) { - return CompoundEventResult.interruptTrue(result.stream()); + if (storage != null) { + List<EntryStack<FluidStack>> result; + try (Transaction transaction = Transaction.openOuter()) { + result = StreamSupport.stream(storage.iterable(transaction).spliterator(), false) + .filter(view -> !view.isResourceBlank()) + .map(view -> EntryStacks.of(FluidStack.create(view.getResource().getFluid(), view.getAmount(), view.getResource().getNbt()))) + .collect(Collectors.toList()); + } + if (!result.isEmpty()) { + return CompoundEventResult.interruptTrue(result.stream()); + } } return CompoundEventResult.pass(); }); |
