aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main/java/gregtech/api/interfaces/metatileentity/IMetaTileEntity.java8
-rw-r--r--src/main/java/gregtech/common/blocks/GT_Item_Machines.java48
-rw-r--r--src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalChestBase.java26
-rw-r--r--src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalTankBase.java28
4 files changed, 63 insertions, 47 deletions
diff --git a/src/main/java/gregtech/api/interfaces/metatileentity/IMetaTileEntity.java b/src/main/java/gregtech/api/interfaces/metatileentity/IMetaTileEntity.java
index 849b82565e..67dc9927cd 100644
--- a/src/main/java/gregtech/api/interfaces/metatileentity/IMetaTileEntity.java
+++ b/src/main/java/gregtech/api/interfaces/metatileentity/IMetaTileEntity.java
@@ -513,4 +513,12 @@ public interface IMetaTileEntity extends ISidedInventory, IFluidTank, IFluidHand
* Called before block is destroyed. This is before inventory dropping code has executed.
*/
default void onBlockDestroyed() {}
+
+ /**
+ * Allows to add additional data to the tooltip, which is specific to an instance of the machine
+ *
+ * @param stack Item stack of this MTE
+ * @param tooltip Tooltip to which can be added
+ */
+ default void addAdditionalTooltipInformation(ItemStack stack, List<String> tooltip) {}
}
diff --git a/src/main/java/gregtech/common/blocks/GT_Item_Machines.java b/src/main/java/gregtech/common/blocks/GT_Item_Machines.java
index 64d7cfca69..c947c50091 100644
--- a/src/main/java/gregtech/common/blocks/GT_Item_Machines.java
+++ b/src/main/java/gregtech/common/blocks/GT_Item_Machines.java
@@ -81,6 +81,7 @@ public class GT_Item_Machines extends ItemBlock implements IFluidContainerItem {
tDamage,
tSuffix,
!GregTech_API.sPostloadFinished);
+ tMetaTileEntity.addAdditionalTooltipInformation(aStack, aList);
}
if (tTileEntity.getEUCapacity() > 0L) {
if (tTileEntity.getInputVoltage() > 0L) {
@@ -129,53 +130,6 @@ public class GT_Item_Machines extends ItemBlock implements IFluidContainerItem {
+ EnumChatFormatting.GRAY
+ " EU");
}
- if (GregTech_API.METATILEENTITIES[tDamage] instanceof GT_MetaTileEntity_QuantumTank
- || GregTech_API.METATILEENTITIES[tDamage] instanceof GT_MetaTileEntity_SuperTank) {
- if (aStack.hasTagCompound() && aStack.stackTagCompound.hasKey("mFluid")) {
- final FluidStack tContents = FluidStack.loadFluidStackFromNBT(
- aStack.stackTagCompound.getCompoundTag("mFluid"));
- if (tContents != null && tContents.amount > 0) {
- aList.add(
- GT_LanguageManager.addStringLocalization(
- "TileEntity_TANK_INFO",
- "Contains Fluid: ",
- !GregTech_API.sPostloadFinished) + EnumChatFormatting.YELLOW
- + tContents.getLocalizedName()
- + EnumChatFormatting.GRAY);
- aList.add(
- GT_LanguageManager.addStringLocalization(
- "TileEntity_TANK_AMOUNT",
- "Fluid Amount: ",
- !GregTech_API.sPostloadFinished) + EnumChatFormatting.GREEN
- + GT_Utility.formatNumbers(tContents.amount)
- + " L"
- + EnumChatFormatting.GRAY);
- }
- }
- }
- if (GregTech_API.METATILEENTITIES[tDamage] instanceof GT_MetaTileEntity_DigitalChestBase) {
- if (aStack.hasTagCompound() && aStack.stackTagCompound.hasKey("mItemStack")) {
- final ItemStack tContents = ItemStack.loadItemStackFromNBT(
- aStack.stackTagCompound.getCompoundTag("mItemStack"));
- final int tSize = aStack.stackTagCompound.getInteger("mItemCount");
- if (tContents != null && tSize > 0) {
- aList.add(
- GT_LanguageManager.addStringLocalization(
- "TileEntity_CHEST_INFO",
- "Contains Item: ",
- !GregTech_API.sPostloadFinished) + EnumChatFormatting.YELLOW
- + tContents.getDisplayName()
- + EnumChatFormatting.GRAY);
- aList.add(
- GT_LanguageManager.addStringLocalization(
- "TileEntity_CHEST_AMOUNT",
- "Item Amount: ",
- !GregTech_API.sPostloadFinished) + EnumChatFormatting.GREEN
- + GT_Utility.formatNumbers(tSize)
- + EnumChatFormatting.GRAY);
- }
- }
- }
}
final NBTTagCompound aNBT = aStack.getTagCompound();
if (aNBT != null) {
diff --git a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalChestBase.java b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalChestBase.java
index ce6a5509bb..23bf3d7c46 100644
--- a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalChestBase.java
+++ b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalChestBase.java
@@ -37,6 +37,7 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_TieredMachineBlock;
import gregtech.api.objects.AE2DigitalChestHandler;
import gregtech.api.render.TextureFactory;
+import gregtech.api.util.GT_LanguageManager;
import gregtech.api.util.GT_Utility;
public abstract class GT_MetaTileEntity_DigitalChestBase extends GT_MetaTileEntity_TieredMachineBlock
@@ -83,6 +84,31 @@ public abstract class GT_MetaTileEntity_DigitalChestBase extends GT_MetaTileEnti
super(aName, aTier, 3, aDescription, aTextures);
}
+ @Override
+ public void addAdditionalTooltipInformation(ItemStack stack, List<String> tooltip) {
+ if (stack.hasTagCompound() && stack.stackTagCompound.hasKey("mItemStack")) {
+ final ItemStack tContents = ItemStack.loadItemStackFromNBT(
+ stack.stackTagCompound.getCompoundTag("mItemStack"));
+ final int tSize = stack.stackTagCompound.getInteger("mItemCount");
+ if (tContents != null && tSize > 0) {
+ tooltip.add(
+ GT_LanguageManager.addStringLocalization(
+ "TileEntity_CHEST_INFO",
+ "Contains Item: ",
+ !GregTech_API.sPostloadFinished) + EnumChatFormatting.YELLOW
+ + tContents.getDisplayName()
+ + EnumChatFormatting.GRAY);
+ tooltip.add(
+ GT_LanguageManager.addStringLocalization(
+ "TileEntity_CHEST_AMOUNT",
+ "Item Amount: ",
+ !GregTech_API.sPostloadFinished) + EnumChatFormatting.GREEN
+ + GT_Utility.formatNumbers(tSize)
+ + EnumChatFormatting.GRAY);
+ }
+ }
+ }
+
public static void registerAEIntegration() {
appeng.api.AEApi.instance()
.registries()
diff --git a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalTankBase.java b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalTankBase.java
index 93ee2b0c10..1bf8705279 100644
--- a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalTankBase.java
+++ b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalTankBase.java
@@ -13,6 +13,7 @@ import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
+import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection;
@@ -30,6 +31,7 @@ import com.gtnewhorizons.modularui.common.widget.DrawableWidget;
import com.gtnewhorizons.modularui.common.widget.SlotWidget;
import com.gtnewhorizons.modularui.common.widget.TextWidget;
+import gregtech.api.GregTech_API;
import gregtech.api.gui.modularui.GT_UIInfos;
import gregtech.api.gui.modularui.GT_UITextures;
import gregtech.api.interfaces.IFluidAccess;
@@ -39,6 +41,7 @@ import gregtech.api.interfaces.modularui.IAddUIWidgets;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicTank;
import gregtech.api.render.TextureFactory;
+import gregtech.api.util.GT_LanguageManager;
import gregtech.api.util.GT_Utility;
import gregtech.common.gui.modularui.widget.FluidDisplaySlotWidget;
@@ -109,6 +112,31 @@ public abstract class GT_MetaTileEntity_DigitalTankBase extends GT_MetaTileEntit
}
@Override
+ public void addAdditionalTooltipInformation(ItemStack stack, List<String> tooltip) {
+ if (stack.hasTagCompound() && stack.stackTagCompound.hasKey("mFluid")) {
+ final FluidStack tContents = FluidStack.loadFluidStackFromNBT(
+ stack.stackTagCompound.getCompoundTag("mFluid"));
+ if (tContents != null && tContents.amount > 0) {
+ tooltip.add(
+ GT_LanguageManager.addStringLocalization(
+ "TileEntity_TANK_INFO",
+ "Contains Fluid: ",
+ !GregTech_API.sPostloadFinished) + EnumChatFormatting.YELLOW
+ + tContents.getLocalizedName()
+ + EnumChatFormatting.GRAY);
+ tooltip.add(
+ GT_LanguageManager.addStringLocalization(
+ "TileEntity_TANK_AMOUNT",
+ "Fluid Amount: ",
+ !GregTech_API.sPostloadFinished) + EnumChatFormatting.GREEN
+ + GT_Utility.formatNumbers(tContents.amount)
+ + " L"
+ + EnumChatFormatting.GRAY);
+ }
+ }
+ }
+
+ @Override
public void setItemNBT(NBTTagCompound aNBT) {
if (mFluid != null && mFluid.amount >= 0) {
aNBT.setTag("mFluid", mFluid.writeToNBT(new NBTTagCompound()));