aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/gregtech/GT_Mod.java1
-rw-r--r--src/main/java/gregtech/common/blocks/GT_Item_Machines.java17
-rw-r--r--src/main/java/gregtech/loaders/postload/GT_MachineTooltipsLoader.java36
3 files changed, 54 insertions, 0 deletions
diff --git a/src/main/java/gregtech/GT_Mod.java b/src/main/java/gregtech/GT_Mod.java
index 1e8098ea34..9d6aa21d3f 100644
--- a/src/main/java/gregtech/GT_Mod.java
+++ b/src/main/java/gregtech/GT_Mod.java
@@ -503,6 +503,7 @@ public class GT_Mod implements IGT_Mod {
GT_FML_LOGGER.info("Executed delayed Crafting Recipes (" + stopwatch.stop() + "). Have a Cake.");
GT_Log.out.println("GT_Mod: Saving Lang File.");
+ new GT_MachineTooltipsLoader().run();
GT_LanguageManager.sEnglishFile.save();
GregTech_API.sPostloadFinished = true;
GT_Log.out.println("GT_Mod: PostLoad-Phase finished!");
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 9779a2be39..f7ce8942c0 100644
--- a/src/main/java/gregtech/common/blocks/GT_Item_Machines.java
+++ b/src/main/java/gregtech/common/blocks/GT_Item_Machines.java
@@ -20,6 +20,8 @@ import net.minecraft.world.World;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.IFluidContainerItem;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
import gregtech.api.GregTech_API;
import gregtech.api.enums.Materials;
import gregtech.api.interfaces.ISecondaryDescribable;
@@ -237,6 +239,21 @@ public class GT_Item_Machines extends ItemBlock implements IFluidContainerItem {
}
}
+ @SideOnly(Side.CLIENT)
+ public void registerDescription(int aDamage) {
+ if (aDamage >= GregTech_API.METATILEENTITIES.length) return;
+ if (GregTech_API.METATILEENTITIES[aDamage] != null) {
+ final IMetaTileEntity tMetaTileEntity = GregTech_API.METATILEENTITIES[aDamage].getBaseMetaTileEntity()
+ .getMetaTileEntity();
+ if (tMetaTileEntity instanceof ISecondaryDescribable) {
+ final String[] tSecondaryDescription = ((ISecondaryDescribable) tMetaTileEntity)
+ .getSecondaryDescription();
+ addDescription(null, tSecondaryDescription, aDamage, "_Secondary", true);
+ }
+ addDescription(null, tMetaTileEntity.getDescription(), aDamage, "", true);
+ }
+ }
+
@Override
public boolean onItemUseFirst(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int side,
float hitX, float hitY, float hitZ) {
diff --git a/src/main/java/gregtech/loaders/postload/GT_MachineTooltipsLoader.java b/src/main/java/gregtech/loaders/postload/GT_MachineTooltipsLoader.java
new file mode 100644
index 0000000000..d18ccd6c83
--- /dev/null
+++ b/src/main/java/gregtech/loaders/postload/GT_MachineTooltipsLoader.java
@@ -0,0 +1,36 @@
+package gregtech.loaders.postload;
+
+import static gregtech.api.enums.GT_Values.GT;
+
+import net.minecraft.item.ItemStack;
+
+import gregtech.api.GregTech_API;
+import gregtech.api.util.GT_LanguageManager;
+import gregtech.api.util.GT_Log;
+import gregtech.common.blocks.GT_Item_Machines;
+
+public class GT_MachineTooltipsLoader implements Runnable {
+
+ @Override
+ public void run() {
+ if (!GT.isClientSide()) return;
+ GT_Log.out.println("GT Mod: Register Block Machine's tooltips");
+ for (int i = 0; i < 32768; i++) {
+ ItemStack tStack = new ItemStack(GregTech_API.sBlockMachines, 1, i);
+ if (tStack.getItem() != null && tStack.getItem() instanceof GT_Item_Machines) {
+ ((GT_Item_Machines) tStack.getItem()).registerDescription(i);
+ }
+ }
+ GT_LanguageManager.addStringLocalization("TileEntity_EUp_IN", "Voltage IN: ");
+ GT_LanguageManager.addStringLocalization("TileEntity_EUp_OUT", "Voltage OUT: ");
+ GT_LanguageManager.addStringLocalization("TileEntity_EUp_AMOUNT", "Amperage: ");
+ GT_LanguageManager.addStringLocalization("TileEntity_EUp_STORE", "Capacity: ");
+ GT_LanguageManager.addStringLocalization("TileEntity_TANK_INFO", "Contains Fluid: ");
+ GT_LanguageManager.addStringLocalization("TileEntity_TANK_AMOUNT", "Fluid Amount: ");
+ GT_LanguageManager.addStringLocalization("TileEntity_CHEST_INFO", "Contains Item: ");
+ GT_LanguageManager.addStringLocalization("TileEntity_CHEST_AMOUNT", "Item Amount: ");
+ GT_LanguageManager.addStringLocalization("GT_TileEntity_MUFFLER", "has Muffler Upgrade");
+ GT_LanguageManager.addStringLocalization("GT_TileEntity_STEAMCONVERTER", "has Steam Upgrade");
+ GT_LanguageManager.addStringLocalization("GT_TileEntity_STEAMTANKS", "Steam Tank Upgrades");
+ }
+}