aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/util
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech/api/util')
-rw-r--r--src/main/java/gregtech/api/util/GT_CoverBehaviorBase.java8
-rw-r--r--src/main/java/gregtech/api/util/GT_LanguageManager.java2
-rw-r--r--src/main/java/gregtech/api/util/ISerializableObject.java7
3 files changed, 15 insertions, 2 deletions
diff --git a/src/main/java/gregtech/api/util/GT_CoverBehaviorBase.java b/src/main/java/gregtech/api/util/GT_CoverBehaviorBase.java
index 50ef2632d9..c0fcc0708f 100644
--- a/src/main/java/gregtech/api/util/GT_CoverBehaviorBase.java
+++ b/src/main/java/gregtech/api/util/GT_CoverBehaviorBase.java
@@ -8,6 +8,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTBase;
+import net.minecraft.nbt.NBTTagInt;
import net.minecraft.world.World;
import net.minecraftforge.fluids.Fluid;
@@ -31,7 +32,12 @@ public abstract class GT_CoverBehaviorBase<T extends ISerializableObject> {
public abstract T createDataObject();
- public T createDataObject(NBTBase aNBT) {
+ public final T createDataObject(NBTBase aNBT) {
+ // Handle legacy data (migrating from GT_CoverBehavior to GT_CoverBehaviorBase)
+ if (aNBT instanceof NBTTagInt) {
+ return createDataObject(((NBTTagInt) aNBT).func_150287_d());
+ }
+
T ret = createDataObject();
ret.loadDataFromNBT(aNBT);
return ret;
diff --git a/src/main/java/gregtech/api/util/GT_LanguageManager.java b/src/main/java/gregtech/api/util/GT_LanguageManager.java
index 767c830f79..9121e41c33 100644
--- a/src/main/java/gregtech/api/util/GT_LanguageManager.java
+++ b/src/main/java/gregtech/api/util/GT_LanguageManager.java
@@ -337,6 +337,8 @@ public class GT_LanguageManager {
addStringLocalization("Interaction_DESCRIPTION_Index_218", "Transfer size mode. Add exactly this many items in destination input slots as long as there is room.");
addStringLocalization("Interaction_DESCRIPTION_Index_219", "Single recipe locking enabled. Will lock to next recipe.");
addStringLocalization("Interaction_DESCRIPTION_Index_220", "Single recipe locking disabled.");
+ addStringLocalization("Interaction_DESCRIPTION_Index_221", "Item threshold");
+ addStringLocalization("Interaction_DESCRIPTION_Index_222", "Fluid threshold");
addStringLocalization("Interaction_DESCRIPTION_Index_500", "Fitting: Loose - More Flow");
addStringLocalization("Interaction_DESCRIPTION_Index_501", "Fitting: Tight - More Efficiency");
diff --git a/src/main/java/gregtech/api/util/ISerializableObject.java b/src/main/java/gregtech/api/util/ISerializableObject.java
index 51fa40e55a..b31abaa843 100644
--- a/src/main/java/gregtech/api/util/ISerializableObject.java
+++ b/src/main/java/gregtech/api/util/ISerializableObject.java
@@ -24,6 +24,11 @@ public interface ISerializableObject {
@Nonnull
ISerializableObject copy();
+ /**
+ * If you are overriding this, you must <b>NOT</b> return {@link NBTTagInt} here! That return
+ * type is how we tell that we are loading legacy data, and only {@link LegacyCoverData} is
+ * allowed to return it. You probably want to return {@link NBTTagCompound} anyway.
+ */
@Nonnull
NBTBase saveDataToNBT();
@@ -109,7 +114,7 @@ public interface ISerializableObject {
@Override
public void loadDataFromNBT(NBTBase aNBT) {
- mData = aNBT instanceof NBTBase.NBTPrimitive ? ((NBTBase.NBTPrimitive) aNBT).func_150287_d() : 0;
+ mData = aNBT instanceof NBTTagInt ? ((NBTTagInt) aNBT).func_150287_d() : 0;
}
@Override