aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Robertz <dream-master@gmx.net>2022-07-31 20:49:39 +0700
committerGitHub <noreply@github.com>2022-07-31 20:49:39 +0700
commitbc850bba21db181fe98fba9c73ce4d4c7f36cb4c (patch)
tree809dc1052e059a97e54290876ff8087735cd2021
parent1c457ccc4f98552f20fc9011e88f96601bafb63a (diff)
parenta48a61b298e2a45d1afa0d513ae348ee054adb21 (diff)
downloadGT5-Unofficial-bc850bba21db181fe98fba9c73ce4d4c7f36cb4c.tar.gz
GT5-Unofficial-bc850bba21db181fe98fba9c73ce4d4c7f36cb4c.tar.bz2
GT5-Unofficial-bc850bba21db181fe98fba9c73ce4d4c7f36cb4c.zip
Merge pull request #62 from alexandre-tardif/fix/ender-link-fluid-shift
Fix Ender fluid link cover saving data so it doesn't shift fluid when updating
-rw-r--r--src/main/java/com/github/technus/tectech/mechanics/enderStorage/EnderFluidContainer.java19
1 files changed, 13 insertions, 6 deletions
diff --git a/src/main/java/com/github/technus/tectech/mechanics/enderStorage/EnderFluidContainer.java b/src/main/java/com/github/technus/tectech/mechanics/enderStorage/EnderFluidContainer.java
index 1a5ad6a69c..ca1d872ed1 100644
--- a/src/main/java/com/github/technus/tectech/mechanics/enderStorage/EnderFluidContainer.java
+++ b/src/main/java/com/github/technus/tectech/mechanics/enderStorage/EnderFluidContainer.java
@@ -1,5 +1,6 @@
package com.github.technus.tectech.mechanics.enderStorage;
+import net.minecraft.nbt.NBTTagCompound;
import net.minecraftforge.common.util.ForgeDirection;
import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fluids.FluidStack;
@@ -10,8 +11,11 @@ import java.io.Serializable;
public class EnderFluidContainer implements IFluidHandler, Serializable {
private static final int CAPACITY = 64000;
+ @Deprecated()
private int fluidID = -1;
+ @Deprecated()
private int fluidQuantity = 0;
+ private NBTTagCompound fluid;
public EnderFluidContainer() {
}
@@ -19,18 +23,21 @@ public class EnderFluidContainer implements IFluidHandler, Serializable {
private FluidStack getFluidStack() {
FluidStack fluidStack = null;
if (fluidID >= 0) {
- fluidStack = new FluidStack(fluidID, fluidQuantity);
+ fluid = new FluidStack(fluidID, fluidQuantity).writeToNBT(new NBTTagCompound());
+ fluidID = -1;
+ fluidQuantity = 0;
+ }
+ if (fluid != null) {
+ fluidStack = FluidStack.loadFluidStackFromNBT(fluid);
}
return fluidStack;
}
private void setFluidStack(FluidStack fluidStack) {
- if (fluidStack != null && fluidStack.amount != 0) {
- fluidID = fluidStack.getFluidID();
- fluidQuantity = fluidStack.amount;
+ if (fluidStack != null) {
+ fluid = fluidStack.writeToNBT(new NBTTagCompound());
} else {
- fluidID = -1;
- fluidQuantity = 0;
+ fluid = null;
}
}