diff options
24 files changed, 458 insertions, 197 deletions
diff --git a/src/main/java/com/github/technus/tectech/compatibility/thaumcraft/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_essentiaDequantizer.java b/src/main/java/com/github/technus/tectech/compatibility/thaumcraft/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_essentiaDequantizer.java index 2a9f7ec6d2..d8eb7d69dc 100644 --- a/src/main/java/com/github/technus/tectech/compatibility/thaumcraft/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_essentiaDequantizer.java +++ b/src/main/java/com/github/technus/tectech/compatibility/thaumcraft/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_essentiaDequantizer.java @@ -13,6 +13,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; @@ -139,12 +140,21 @@ public class GT_MetaTileEntity_EM_essentiaDequantizer extends GT_MetaTileEntity_ } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.emtoessentia.desc.0"),//Transform quantum form back to... - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.emtoessentia.desc.1")//regular one, but why? - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.emtoessentia.name")) // Machine Type: Essentia Dequantizer + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.emtoessentia.desc.0")) // Controller block of the Essentia Dequantizer + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.emtoessentia.desc.1")) // Transforms elemental matter back into essentia + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(3, 3, 5, false) + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.ElementalInput"), translateToLocal("tt.keyword.Structure.BackCenter"), 2) // Elemental Input Hatch: Back center + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.ElementalOverflow"), translateToLocal("tt.keyword.Structure.AnyOuterMolecularCasing4th"), 3) // Elemental Overflow Hatch: Any outer Molecular Casing on the 4th slice + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.EssentiaStorage"), translateToLocal("tt.keyword.Structure.AnyHighPowerCasingFront"), 1) // Essentia Storage: Any High Power Casing on the front side + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasingFront"), 1) // Energy Hatch: Any High Power Casing on the front side + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasingFront"), 1) // Maintenance Hatch: Any High Power Casing on the front side + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/compatibility/thaumcraft/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_essentiaQuantizer.java b/src/main/java/com/github/technus/tectech/compatibility/thaumcraft/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_essentiaQuantizer.java index befc9ac77e..a151c2becf 100644 --- a/src/main/java/com/github/technus/tectech/compatibility/thaumcraft/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_essentiaQuantizer.java +++ b/src/main/java/com/github/technus/tectech/compatibility/thaumcraft/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_essentiaQuantizer.java @@ -15,6 +15,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.ResourceLocation; @@ -113,12 +114,21 @@ public class GT_MetaTileEntity_EM_essentiaQuantizer extends GT_MetaTileEntity_Mu } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.essentiatoem.desc.0"),//Conveniently convert regular stuff into quantum form. - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.essentiatoem.desc.1")//To make it more inconvenient. - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.essentiatoem.name")) // Machine Type: Essentia Quantizer + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.essentiatoem.desc.0")) // Controller block of the Essentia Quantizer + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.essentiatoem.desc.1")) // Transforms essentia into their elemental form + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(3, 3, 5, false) + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.ElementalOutput"), translateToLocal("tt.keyword.Structure.BackCenter"), 2) // Elemental Output Hatch: Back center + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.ElementalOverflow"), translateToLocal("tt.keyword.Structure.AnyOuterMolecularCasing4th"), 3) // Elemental Overflow Hatch: Any outer Molecular Casing on the 4th slice + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.EssentiaStorage"), translateToLocal("tt.keyword.Structure.AnyHighPowerCasingFront"), 1) // Essentia Storage: Any High Power Casing on the front side + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasingFront"), 1) // Energy Hatch: Any High Power Casing on the front side + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasingFront"), 1) // Maintenance Hatch: Any High Power Casing on the front side + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_annihilation.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_annihilation.java index 8a51494b94..a2996de081 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_annihilation.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_annihilation.java @@ -12,6 +12,7 @@ import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; @@ -84,12 +85,18 @@ public class GT_MetaTileEntity_EM_annihilation extends GT_MetaTileEntity_Multibl } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.annihilation.desc.0"),//Things+Anti Things don't like each other. - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.annihilation.desc.1")//Matter into power! - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.annihilation.name")) // Machine Type: Annihilation Generator + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.annihilation.desc.0")) // Controller block of the Annihilation Generator + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(11, 11, 11, false) + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.Elemental"), translateToLocal("tt.keyword.Structure.AnyMolecularCasing"), 1) // Elemental Hatch: Any Molecular Casing + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Energy Hatch: Any High Power Casing + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Maintenance Hatch: Any High Power Casing + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_bhg.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_bhg.java index 3d6bb58cb0..c0174ad510 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_bhg.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_bhg.java @@ -12,6 +12,7 @@ import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; @@ -279,12 +280,18 @@ public class GT_MetaTileEntity_EM_bhg extends GT_MetaTileEntity_MultiblockBase_E } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.blackholegenerator.desc.0"),//Singularity based power generation. - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.blackholegenerator.desc.1")//Super unstable!!! - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.blackholegenerator.name")) // Machine Type: Black Hole Generator + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.blackholegenerator.desc.0")) // Controller block of the Black Hole Generator + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.blackholegenerator.desc.1")) // Uses a black hole to generate power + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(33, 33, 33, false) + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing1D"), 1) // Energy Hatch: Any High Power Casing with 1 dot + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing1D"), 1) // Maintenance Hatch: Any High Power Casing with 1 dot + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_computer.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_computer.java index 3f8e9170de..16fcf2618c 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_computer.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_computer.java @@ -21,6 +21,7 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; @@ -292,12 +293,22 @@ public class GT_MetaTileEntity_EM_computer extends GT_MetaTileEntity_MultiblockB } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - TT_Utility.intBitsToString(TecTech.RANDOM.nextInt()), - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.computer.desc")//You need it to process the number above - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.computer.name")) // Machine Type: Quantum Computer + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.computer.desc.0")) // Controller block of the Quantum Computer + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.computer.desc.1")) // Used to generate computation (and heat) + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginVariableStructureBlock(2, 2, 4, 4, 5, 16, false) + .addOtherStructurePart(translateToLocal("gt.blockmachines.hatch.certain.tier.07.name"), translateToLocal("tt.keyword.Structure.AnyComputerCasingFirstOrLastSlice"), 1) // Uncertainty Resolver: Any Computer Casing on first or last slice + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.DataConnector"), translateToLocal("tt.keyword.Structure.AnyComputerCasingFirstOrLastSlice"), 1) // Optical Connector: Any Computer Casing on first or last slice + .addOtherStructurePart(translateToLocal("gt.blockmachines.hatch.rack.tier.08.name"), translateToLocal("tt.keyword.Structure.AnyAdvComputerCasingExceptOuter"), 2) // Computer Rack: Any Advanced Computer Casing, except the outer ones + .addOtherStructurePart(translateToLocal("gt.blockmachines.hatch.param.tier.05.name"), translateToLocal ("tt.keyword.Structure.Optional") + " " + translateToLocal("tt.keyword.Structure.AnyComputerCasingFirstOrLastSlice"), 2) // Parametrizer: (optional) Any Computer Casing on first or last slice + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyComputerCasingFirstOrLastSlice"), 1) // Energy Hatch: Any Computer Casing on first or last slice + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyComputerCasingFirstOrLastSlice"), 1) // Maintenance Hatch: Any Computer Casing on first or last slice + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_crafting.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_crafting.java index 014e2b3a65..822e6d6ddf 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_crafting.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_crafting.java @@ -12,6 +12,7 @@ import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; @@ -89,12 +90,18 @@ public class GT_MetaTileEntity_EM_crafting extends GT_MetaTileEntity_MultiblockB } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.crafter.desc.0"),//The most precise way of making stuff. - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.crafter.desc.1")// - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.crafter.name")) // Machine Type: Matter Assembler + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.crafter.desc.0")) // Controller block of the Matter Assembler + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(5, 5, 11, false) + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.Elemental"), translateToLocal("tt.keyword.Structure.AnyMolecularCasing2D"), 2) // Elemental Hatch: Any Molecular Casing with 2 dot + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Energy Hatch: Any High Power Casing + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Maintenance Hatch: Any High Power Casing + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_dataBank.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_dataBank.java index 9a9747f012..a606e4163c 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_dataBank.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_dataBank.java @@ -19,6 +19,7 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_DataAccess; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; @@ -77,6 +78,24 @@ public class GT_MetaTileEntity_EM_dataBank extends GT_MetaTileEntity_MultiblockB } @Override + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.databank.name")) // Machine Type: Data Bank + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.databank.desc.0")) // Controller block of the Data Bank + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.databank.desc.1")) // Used to supply Assembling Lines with more Data Sticks + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.databank.desc.2")) // and give multiple Assembling Lines access to the same Data Stick + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(5, 3, 3, false) + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.DataAccessHatch"), translateToLocal("tt.keyword.Structure.AnyComputerCasing"), 2) // Data Access Hatch: Any Computer Casing + .addOtherStructurePart(translateToLocal("gt.blockmachines.hatch.dataoutass.tier.07.name"), translateToLocal("tt.keyword.Structure.AnyComputerCasing"), 2) // Data Bank Master Connector: Any Computer Casing + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Energy Hatch: Any High Power Casing + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Maintenance Hatch: Any High Power Casing + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; + } + + @Override public boolean checkMachine_EM(IGregTechTileEntity iGregTechTileEntity, ItemStack itemStack) { eDataAccessHatches.clear(); eStacksDataOutputs.clear(); @@ -120,15 +139,6 @@ public class GT_MetaTileEntity_EM_dataBank extends GT_MetaTileEntity_MultiblockB } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.databank.desc.0"),//Remote assembly data delivery - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.databank.desc.1")//Apply directly to the forehead - }; - } - - @Override public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { return new GT_Container_MultiMachineEM(aPlayerInventory, aBaseMetaTileEntity, true, false, true); } diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_decay.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_decay.java index 18b0047ef4..2d07932c92 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_decay.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_decay.java @@ -20,6 +20,7 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Energy; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Utility; import ic2.core.init.MainConfig; import ic2.core.util.ConfigUtil; @@ -161,12 +162,20 @@ public class GT_MetaTileEntity_EM_decay extends GT_MetaTileEntity_MultiblockBase } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.decay.desc.0"),//Is life time too long? - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.decay.desc.1")//Make it half-life (3) instead! - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.decay.name")) // Machine Type: Decay Generator + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.decay.desc.0")) // Controller block of the Decay Generator + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.decay.desc.1")) // Decays elemental matter to generate power + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(5, 5, 9, false) + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.Elemental"), translateToLocal("tt.keyword.Structure.AnyMolecularCasing2D"), 2) // Elemental Hatch: Any Molecular Casing with 2 dot + .addOtherStructurePart(translateToLocal("gt.blockmachines.hatch.param.tier.05.name"), translateToLocal ("tt.keyword.Structure.Optional") + " " + translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Parametrizer: (optional) Any High Power Casing + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Energy Hatch: Any High Power Casing + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Maintenance Hatch: Any High Power Casing + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_dequantizer.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_dequantizer.java index 5a045102ef..ef26152a82 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_dequantizer.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_dequantizer.java @@ -16,6 +16,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.ResourceLocation; @@ -124,12 +125,21 @@ public class GT_MetaTileEntity_EM_dequantizer extends GT_MetaTileEntity_Multiblo } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.emtomatter.desc.0"),//Transform quantum form back to... - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.emtomatter.desc.1")//regular one, but why? - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.emtomatter.name")) // Machine Type: Matter Dequantizer + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.emtomatter.desc.0")) // Controller block of the Matter Dequantizer + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.emtomatter.desc.1")) // Transforms elemental matter back into items + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(3, 3, 4, false) + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.ElementalInput"), translateToLocal("tt.keyword.Structure.BackCenter"), 2) // Elemental Input Hatch: Back center + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.ElementalOverflow"), translateToLocal("tt.keyword.Structure.AnyOuterMolecularCasing3rd"), 3) // Elemental Overflow Hatch: Any outer Molecular Casing on the 3rd slice + .addOutputBus(translateToLocal("tt.keyword.Structure.AnyHighPowerCasingFront"), 1) // Output Bus: Any High Power Casing on the front side + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasingFront"), 1) // Energy Hatch: Any High Power Casing on the front side + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasingFront"), 1) // Maintenance Hatch: Any High Power Casing on the front side + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_infuser.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_infuser.java index f6833d2cb9..7d5b16ca8c 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_infuser.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_infuser.java @@ -13,6 +13,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import ic2.api.item.ElectricItem; import ic2.api.item.IElectricItem; import net.minecraft.entity.player.InventoryPlayer; @@ -157,14 +158,22 @@ public class GT_MetaTileEntity_EM_infuser extends GT_MetaTileEntity_MultiblockBa } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_GENERAL, - translateToLocal("gt.blockmachines.multimachine.em.infuser.desc.0"),//Power Transfer Extreme! - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.infuser.desc.1"), - EnumChatFormatting.BLUE + translateToLocal("gt.blockmachines.multimachine.em.infuser.desc.2"), - EnumChatFormatting.BLUE + translateToLocal("gt.blockmachines.multimachine.em.infuser.desc.3") - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.infuser.name")) // Machine Type: Network Switch With QoS + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.infuser.desc.0")) // Controller block of the Energy Infuser + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.infuser.desc.1")) // Can be used to charge items in the controller GUI + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.infuser.desc.2")) // Has a loss of 3.125% + .addSeparator() + .beginStructureBlock(3, 5, 3, false) + .addController(translateToLocal("tt.keyword.Structure.FrontCenter3rd")) // Controller: Front 3rd layer center + .addOtherStructurePart(translateToLocal("gt.blockcasingsTT.0.name"), translateToLocal("gt.blockmachines.multimachine.em.infuser.Structure.HighPowerCasing")) // High Power Casing: Layer 1 and 5 + .addOtherStructurePart(translateToLocal("gt.blockcasingsTT.7.name"), translateToLocal("gt.blockmachines.multimachine.em.infuser.Structure.MolecularCoil")) // Molecular Coil: Layer 2 and 4 + .addOtherStructurePart(translateToLocal("gt.blockcasingsTT.4.name"), translateToLocal("gt.blockmachines.multimachine.em.infuser.Structure.MolecularCasing")) // Molecular Casing: Layer 3 (hollow) + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Energy Hatch: Any High Power Casing + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Maintenance Hatch: Any High Power Casing + .toolTipFinisher(CommonValues.TEC_MARK_GENERAL); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_junction.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_junction.java index 23e7267388..bcf943c339 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_junction.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_junction.java @@ -11,6 +11,7 @@ import com.gtnewhorizon.structurelib.alignment.constructable.IConstructable; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Utility; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; @@ -154,12 +155,22 @@ public class GT_MetaTileEntity_EM_junction extends GT_MetaTileEntity_MultiblockB } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.junction.desc.0"),//Reroutes Matter - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.junction.desc.1")//Axis aligned movement! - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.junction.name")) // Machine Type: Matter Junction + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.junction.desc.0")) // Controller block of the Matter Junction + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.junction.desc.1")) // Used to route and distribute elemental matter + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.junction.desc.2")) // Needs a Parametrizer to be configured + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(3, 3, 4, false) + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.ElementalOutput"), translateToLocal("tt.keyword.Structure.AnyOuterMolecularCasing3rd4th"), 2) // Elemental Output Hatch: Any outer Molecular Casing on the 3rd or 4th slice + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.ElementalInput"), translateToLocal("tt.keyword.Structure.AnyOuterMolecularCasing3rd4th"), 2) // Elemental Input Hatch: Any outer Molecular Casing on the 3rd or 4th slice + .addOtherStructurePart(translateToLocal("gt.blockmachines.hatch.param.tier.05.name"), translateToLocal("tt.keyword.Structure.Optional") + " " + translateToLocal("tt.keyword.Structure.AnyHighPowerCasingFront"), 2) // Parametrizer: (optional) Any High Power Casing on the front side + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasingFront"), 1) // Energy Hatch: Any High Power Casing on the front side + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasingFront"), 1) // Maintenance Hatch: Any High Power Casing on the front side + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_quantizer.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_quantizer.java index 306d470a8e..07d9d44abb 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_quantizer.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_quantizer.java @@ -18,6 +18,7 @@ import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.GregTech_API; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.ResourceLocation; @@ -181,12 +182,21 @@ public class GT_MetaTileEntity_EM_quantizer extends GT_MetaTileEntity_Multiblock } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.mattertoem.desc.0"),//Conveniently convert regular stuff into quantum form. - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.mattertoem.desc.1")//To make it more inconvenient. - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.mattertoem.name")) // Machine Type: Matter Quantizer + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.mattertoem.desc.0")) // Controller block of the Matter Quantizer + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.mattertoem.desc.1")) // Transforms items into their elemental form + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(3, 3, 4, false) + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.ElementalOutput"), translateToLocal("tt.keyword.Structure.BackCenter"), 2) // Elemental Output Hatch: Back center + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.ElementalOverflow"), translateToLocal("tt.keyword.Structure.AnyOuterMolecularCasing3rd"), 3) // Elemental Overflow Hatch: Any outer Molecular Casing on the 3rd slice + .addInputBus(translateToLocal("tt.keyword.Structure.AnyHighPowerCasingFront"), 1) // Input Bus: Any High Power Casing on the front side + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasingFront"), 1) // Energy Hatch: Any High Power Casing on the front side + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasingFront"), 1) // Maintenance Hatch: Any High Power Casing on the front side + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } public final static ResourceLocation activitySound = new ResourceLocation(Reference.MODID + ":fx_mid_freq"); diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_research.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_research.java index 9cd3bf40e7..744d79779f 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_research.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_research.java @@ -19,6 +19,7 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Energy; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.util.GT_LanguageManager; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.EntityPlayer; @@ -351,12 +352,22 @@ public class GT_MetaTileEntity_EM_research extends GT_MetaTileEntity_MultiblockB } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.research.desc.0"),//Philosophers didn't even... - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.research.desc.0")//dream about it! - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.research.name")) // Machine Type: Research Station + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.research.desc.0")) // Controller block of the Research Station + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.research.desc.1")) // Used to scan Data Sticks for Assembling Line Recipes + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.research.desc.2")) // Needs to be fed with computation to work + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.research.desc.3")) // Does not consume the item until the Data Stick is written + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(3, 7, 7, false) + .addOtherStructurePart(translateToLocal("gt.blockmachines.hatch.holder.tier.09.name"), translateToLocal("tt.keyword.Structure.CenterPillar"), 2) // Object Holder: Center of the front pillar + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.DataConnector"), translateToLocal("tt.keyword.Structure.AnyComputerCasingBackMain"), 1) // Optical Connector: Any Computer Casing on the backside of the main body + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyComputerCasingBackMain"), 1) // Energy Hatch: Any Computer Casing on the backside of the main body + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyComputerCasingBackMain"), 1) // Maintenance Hatch: Any Computer Casing on the backside of the main body + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_scanner.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_scanner.java index 12220dfe14..1fa3d7588c 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_scanner.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_scanner.java @@ -22,6 +22,7 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Energy; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.util.GT_LanguageManager; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; @@ -331,12 +332,19 @@ public class GT_MetaTileEntity_EM_scanner extends GT_MetaTileEntity_MultiblockBa } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.scanner.desc.0"),//What is existing here? - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.scanner.desc.1")//I HAVE NO IDEA (yet)! - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.scanner.name")) // Machine Type: Elemental Scanner + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.scanner.desc.0")) // Controller block of the Elemental Scanner + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(5, 5, 8, false) + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.ElementalInput"), translateToLocal("tt.keyword.Structure.BackCenter"), 2) // Elemental Input Hatch: Back Center + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.ElementalOutput"), translateToLocal("tt.keyword.Structure.AnyMolecularCasing3D"), 3) // Elemental Output Hatch: Any Molecular Casing with 3 dot + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing1D"), 1) // Energy Hatch: Any High Power Casing with 1 dot + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing1D"), 1) // Maintenance Hatch: Any High Power Casing with 1 dot + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_stabilizer.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_stabilizer.java index 7103e6dfff..c24ee46057 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_stabilizer.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_stabilizer.java @@ -7,6 +7,7 @@ import com.gtnewhorizon.structurelib.alignment.constructable.IConstructable; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; @@ -66,12 +67,18 @@ public class GT_MetaTileEntity_EM_stabilizer extends GT_MetaTileEntity_Multibloc } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.stabilizer.desc.0"),//Alters time to stabilize matter - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.stabilizer.desc.1")//Wibbly wobbly timey wimey, stuff. - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.stabilizer.name")) // Machine Type: Elemental Stabilizer + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.stabilizer.desc.0")) // Controller block of the Elemental Stabilizer + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(5, 5, 5, false) + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.Elemental"), translateToLocal("tt.keyword.Structure.SideCenter"), 2) // Elemental Hatch: Side center + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Energy Hatch: Any High Power Casing + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Maintenance Hatch: Any High Power Casing + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_switch.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_switch.java index bbf33c6ae7..909f43c355 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_switch.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_switch.java @@ -19,6 +19,7 @@ import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.ResourceLocation; @@ -188,12 +189,23 @@ public class GT_MetaTileEntity_EM_switch extends GT_MetaTileEntity_MultiblockBas } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.switch.desc.0"),//User controlled computation power routing - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.switch.desc.1")//Quality of service is a must - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.switch.name")) // Machine Type: Network Switch With QoS + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.switch.desc.0")) // Controller block of the Network Switch With QoS + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.switch.desc.1")) // Used to route and distribute computation + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.switch.desc.2")) // Needs a Parametrizer to be configured + .addSeparator() + .beginStructureBlock(3, 3, 3, false) + .addController(translateToLocal("tt.keyword.Structure.FrontCenter")) // Controller: Front center + .addCasingInfo(translateToLocal("gt.blockcasingsTT.1.name"), 0) // 0x Computer Casing (minimum) + .addOtherStructurePart(translateToLocal("gt.blockcasingsTT.3.name"), translateToLocal("tt.keyword.Structure.Center")) // Advanced Computer Casing: Center + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.DataConnector"), translateToLocal("tt.keyword.Structure.AnyComputerCasing"), 2) // Data Connector: Any Computer Casing + .addOtherStructurePart(translateToLocal("gt.blockmachines.hatch.param.tier.05.name"), translateToLocal("tt.keyword.Structure.AnyComputerCasing"), 2) // Parametrizer: Any Computer Casing + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyComputerCasing"), 1) // Energy Hatch: Any Computer Casing + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyComputerCasing"), 1) // Maintenance Hatch: Any Computer Casing + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_transformer.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_transformer.java index 75eb05bdeb..c2fe22e88d 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_transformer.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_transformer.java @@ -14,6 +14,7 @@ import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; @@ -105,13 +106,22 @@ public class GT_MetaTileEntity_EM_transformer extends GT_MetaTileEntity_Multiblo } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_GENERAL, - translateToLocal("gt.blockmachines.multimachine.em.transformer.desc.0"),//Power substation - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.transformer.desc.1"),//All the transformation! - EnumChatFormatting.BLUE + translateToLocal("gt.blockmachines.multimachine.em.transformer.desc.2"),//Only 0.78125% power loss, HAYO! - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.transformer.name")) // Machine Type: Transformer + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.transformer.desc.0")) // Controller block of the Active Transformer + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.transformer.desc.1")) // Can transform to and from any voltage + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.transformer.desc.2")) // Only 0.004% power loss, HAYO! + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.transformer.desc.3")) // Will explode if broken while running + .addSeparator() + .beginStructureBlock(3, 3, 3, false) + .addController(translateToLocal("tt.keyword.Structure.FrontCenter")) // Controller: Front center + .addCasingInfo(translateToLocal("gt.blockcasingsTT.0.name"), 5) // 5x High Power Casing (minimum) + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.SuperconductingCoilBlock"), translateToLocal("tt.keyword.Structure.Center")) // SuperconductingCoilBlock: Center + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Energy Hatch: Any High Power Casing + .addDynamoHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Dynamo Hatch: Any High Power Casing + .toolTipFinisher(CommonValues.TEC_MARK_GENERAL); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_wormhole.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_wormhole.java index 83151d71c3..e156595611 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_wormhole.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_wormhole.java @@ -12,6 +12,7 @@ import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; @@ -82,12 +83,18 @@ public class GT_MetaTileEntity_EM_wormhole extends GT_MetaTileEntity_MultiblockB } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.wormhole.desc.0"),//It is not full of worms. - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.wormhole.desc.1")//It is full of anti-worms!!! - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.wormhole.name")) // Machine Type: Wormhole + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.wormhole.desc.0")) // Controller block of the Wormhole + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(9, 9, 11, false) + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.Elemental"), translateToLocal("tt.keyword.Structure.AnyMolecularCasing"), 2) // Elemental Hatch: Any Molecular Casing + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Energy Hatch: Any High Power Casing + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Maintenance Hatch: Any High Power Casing + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_TM_microwave.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_TM_microwave.java index fec070407b..5e148e36df 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_TM_microwave.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_TM_microwave.java @@ -11,6 +11,7 @@ import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.entity.Entity; @@ -184,13 +185,25 @@ public class GT_MetaTileEntity_TM_microwave extends GT_MetaTileEntity_Multiblock } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.BASS_MARK, - translateToLocal("gt.blockmachines.multimachine.tm.microwave.desc.0"),//High Frequency Oven - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.tm.microwave.desc.1"),//From live to done in seconds! - EnumChatFormatting.BLUE + translateToLocal("gt.blockmachines.multimachine.tm.microwave.desc.2"),//I said nuke the... I meant microwave supper! - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.tm.microwave.name")) // Machine Type: Microwave Grinder + .addInfo(translateToLocal("gt.blockmachines.multimachine.tm.microwave.desc.0")) // Controller block of the Microwave Grinder + .addInfo(translateToLocal("gt.blockmachines.multimachine.tm.microwave.desc.1")) // Starts a timer when enabled + .addInfo(translateToLocal("gt.blockmachines.multimachine.tm.microwave.desc.2")) // While the timer is running anything inside the machine will take damage + .addInfo(translateToLocal("gt.blockmachines.multimachine.tm.microwave.desc.3")) // The machine will also collect any items inside of it + .addInfo(translateToLocal("gt.blockmachines.multimachine.tm.microwave.desc.4")) // Can be configured with a Parametrizer + .addInfo(translateToLocal("gt.blockmachines.multimachine.tm.microwave.desc.5")) // (Do not insert a Wither) + .addSeparator() + .beginStructureBlock(5, 4, 5, true) + .addController(translateToLocal("tt.keyword.Structure.FrontCenter")) // Controller: Front center + .addCasingInfo(translateToLocal("tt.keyword.Structure.StainlessSteelCasing"), 60) // 60x Stainless Steel Casing (minimum) + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.DataConnector"), translateToLocal("tt.keyword.Structure.AnyOuterCasingOnBottom"), 2) // Output Bus: Any outer casing on the bottom layer + .addOtherStructurePart(translateToLocal("gt.blockmachines.hatch.param.tier.05.name"), translateToLocal("tt.keyword.Structure.Optional") + " " + translateToLocal("tt.keyword.Structure.AnyOuterCasingOnBottom"), 2) // Parametrizer: (optional) Any outer casing on the bottom layer + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyOuterCasingOnBottom"), 1) // Energy Hatch: Any outer casing on the bottom layer + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyOuterCasingOnBottom"), 1) // Maintenance Hatch: Any outer casing on the bottom layer + .toolTipFinisher(CommonValues.BASS_MARK); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_TM_teslaCoil.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_TM_teslaCoil.java index b884a229d5..c625686793 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_TM_teslaCoil.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_TM_teslaCoil.java @@ -29,6 +29,7 @@ import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.*; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; @@ -445,13 +446,22 @@ public class GT_MetaTileEntity_TM_teslaCoil extends GT_MetaTileEntity_Multiblock } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.BASS_MARK, - translateToLocal("gt.blockmachines.multimachine.tm.teslaCoil.desc.0"),//Tower of Wireless Power - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.tm.teslaCoil.desc.1"),//Fewer pesky cables! - EnumChatFormatting.BLUE + translateToLocal("gt.blockmachines.multimachine.tm.teslaCoil.desc.2"),//Survival chances might be affected - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.tm.teslaCoil.name")) // Machine Type: Tesla Tower + .addInfo(translateToLocal("gt.blockmachines.multimachine.tm.teslaCoil.desc.0")) // Controller block of the Tesla Tower + .addInfo(translateToLocal("gt.blockmachines.multimachine.tm.teslaCoil.desc.1")) // Used to transmit power to Tesla Coil Covers and Tesla Transceivers + .addInfo(translateToLocal("gt.blockmachines.multimachine.tm.teslaCoil.desc.2")) // Can be fed with Helium/Nitrogen/Radon Plasma to increase the range + .addInfo(translateToLocal("gt.blockmachines.multimachine.tm.teslaCoil.desc.3")) // Transmitted voltage depends on the used Tesla Capacitor tier + .addInfo(translateToLocal("gt.blockmachines.multimachine.tm.teslaCoil.desc.4")) // Primary Tesla Windings need to be at least the same tier as the Tesla Capacitor + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(7, 17, 7, false) + .addOtherStructurePart(translateToLocal("gt.blockmachines.hatch.capacitor.tier.03.name"), translateToLocal("tt.keyword.Structure.AnyTeslaBaseCasingOuter"), 1) // Capacitor Hatch: Any outer Tesla Base Casing + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyTeslaBaseCasingOuter"), 1) // Energy Hatch: Any outer Tesla Base Casing + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyTeslaBaseCasingOuter"), 1) // Maintenance Hatch: Any outer Tesla Base Casing + .toolTipFinisher(CommonValues.BASS_MARK); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/base/GT_MetaTileEntity_MultiblockBase_EM.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/base/GT_MetaTileEntity_MultiblockBase_EM.java index 10377e9298..b74ac5023a 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/base/GT_MetaTileEntity_MultiblockBase_EM.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/base/GT_MetaTileEntity_MultiblockBase_EM.java @@ -28,6 +28,7 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.BaseTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.*; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gregtech.common.GT_Pollution; @@ -54,7 +55,7 @@ import static java.lang.Math.min; /** * Created by danie_000 on 27.10.2016. */ -public abstract class GT_MetaTileEntity_MultiblockBase_EM extends GT_MetaTileEntity_MultiBlockBase implements IAlignment { +public abstract class GT_MetaTileEntity_MultiblockBase_EM extends GT_MetaTileEntity_TooltipMultiBlockBase implements IAlignment { //region Client side variables (static - one per class) //Front icon holders - static so it is default one for my blocks @@ -329,17 +330,12 @@ public abstract class GT_MetaTileEntity_MultiblockBase_EM extends GT_MetaTileEnt return list; } - /** - * TOOLTIP - * - * @return strings in tooltip - */ @Override - public String[] getDescription() { - return new String[]{ - TEC_MARK_GENERAL, - "Nothing special just override me." - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addInfo("Nothing special just override me") + .toolTipFinisher(TEC_MARK_GENERAL); + return tt; } /** diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/em_collider/GT_MetaTileEntity_EM_collider.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/em_collider/GT_MetaTileEntity_EM_collider.java index 34fdba402b..6e8a7c8d88 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/em_collider/GT_MetaTileEntity_EM_collider.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/em_collider/GT_MetaTileEntity_EM_collider.java @@ -28,6 +28,7 @@ import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; @@ -577,12 +578,24 @@ public class GT_MetaTileEntity_EM_collider extends GT_MetaTileEntity_MultiblockB } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.collider.desc.0"),//Collide matter at extreme velocities. - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.collider.desc.1")//Faster than light*!!! - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.collider.name")) // Machine Type: Matter Collider + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.collider.desc.0")) // Controller block of the Matter Collider + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.collider.desc.1")) // This machine needs a mirrored copy of it to work + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.collider.desc.2")) // One needs to be set to 'Fuse Mode' and the other to 'Collide Mode' + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.collider.desc.3")) // Fuses two elemental matter to create another (and power) + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(21, 3, 23, false) + .addOtherStructurePart(translateToLocal("gt.blockmachines.multimachine.em.collider.name"), translateToLocal("gt.blockmachines.multimachine.em.collider.Structure.AdditionalCollider"), 2) // Matter Collider: Needs another Matter Collider that is mirrored to this one + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.ElementalInput"), translateToLocal("tt.keyword.Structure.AnyMolecularCasing2D"), 2) // Elemental Input Hatch: Any Molecular Casing with 2 dots + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.ElementalOutput"), translateToLocal("tt.keyword.Structure.AnyMolecularCasing3D"), 2) // Elemental Output Hatch: Any Molecular Casing with 3 dots + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.ElementalOverflow"), translateToLocal("tt.keyword.Structure.AnyMolecularCasing4D"), 2) // Elemental Overflow Hatch: Any Molecular Casing with 4 dots + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Energy Hatch: Any High Power Casing + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Maintenance Hatch: Any High Power Casing + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } @Override diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/em_machine/GT_MetaTileEntity_EM_machine.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/em_machine/GT_MetaTileEntity_EM_machine.java index 1f791963e0..e1ca5d6d9e 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/em_machine/GT_MetaTileEntity_EM_machine.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/em_machine/GT_MetaTileEntity_EM_machine.java @@ -11,6 +11,7 @@ import com.gtnewhorizon.structurelib.alignment.constructable.IConstructable; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.init.Blocks; @@ -224,12 +225,19 @@ public class GT_MetaTileEntity_EM_machine extends GT_MetaTileEntity_MultiblockBa } @Override - public String[] getDescription() { - return new String[]{ - CommonValues.TEC_MARK_EM, - translateToLocal("gt.blockmachines.multimachine.em.processing.desc.0"),//Processing quantum matter since... - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockmachines.multimachine.em.processing.desc.1")//the time u started using it. - }; + public GT_Multiblock_Tooltip_Builder createTooltip() { + final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); + tt.addMachineType(translateToLocal("gt.blockmachines.multimachine.em.processing.name")) // Machine Type: Quantum Processing machine + .addInfo(translateToLocal("gt.blockmachines.multimachine.em.processing.desc.0")) // Controller block of the Quantum Processing machine + .addInfo(translateToLocal("tt.keyword.Structure.StructureTooComplex")) // The structure is too complex! + .addSeparator() + .beginStructureBlock(5, 5, 7, false) + .addOtherStructurePart(translateToLocal("tt.keyword.Structure.Elemental"), translateToLocal("tt.keyword.Structure.AnyMolecularCasing2D"), 2) // Elemental Hatch: Any Molecular Casing with 2 dots + .addOtherStructurePart(translateToLocal("tt.keyword.Parametrizer"), translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Parametrizer: Any High Power Casing + .addEnergyHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Energy Hatch: Any High Power Casing + .addMaintenanceHatch(translateToLocal("tt.keyword.Structure.AnyHighPowerCasing"), 1) // Maintenance Hatch: Any High Power Casing + .toolTipFinisher(CommonValues.TEC_MARK_EM); + return tt; } @Override diff --git a/src/main/resources/assets/tectech/lang/en_US.lang b/src/main/resources/assets/tectech/lang/en_US.lang index 71fa83b6b2..15c174691f 100644 --- a/src/main/resources/assets/tectech/lang/en_US.lang +++ b/src/main/resources/assets/tectech/lang/en_US.lang @@ -547,16 +547,20 @@ gt.blockcasingsBA0.8.desc.1=Who wouldn't want a 32k epoxy multi? #Multiblocks gt.blockmachines.multimachine.em.transformer.name=Active Transformer gt.blockmachines.multimachine.em.transformer.hint=1 - Energy IO Hatches or High Power Casing -gt.blockmachines.multimachine.em.transformer.desc.0=Power substation -gt.blockmachines.multimachine.em.transformer.desc.1=All the transformation! +gt.blockmachines.multimachine.em.transformer.desc.0=Controller block of the Active Transformer +gt.blockmachines.multimachine.em.transformer.desc.1=Can transform to and from any voltage gt.blockmachines.multimachine.em.transformer.desc.2=Only 0.004% power loss, HAYO! +gt.blockmachines.multimachine.em.transformer.desc.3=Will explode if broken while running gt.blockmachines.multimachine.tm.microwave.name=Microwave Grinder gt.blockmachines.multimachine.tm.microwave.hint.0=1 - Classic Hatches or Clean Stainless Steel Casing gt.blockmachines.multimachine.tm.microwave.hint.1=Also acts like a hopper so give it an Output Bus -gt.blockmachines.multimachine.tm.microwave.desc.0=High Frequency Oven -gt.blockmachines.multimachine.tm.microwave.desc.1=From live to done in seconds! -gt.blockmachines.multimachine.tm.microwave.desc.2=I said nuke the... I meant microwave supper! +gt.blockmachines.multimachine.tm.microwave.desc.0=Controller block of the Microwave Grinder +gt.blockmachines.multimachine.tm.microwave.desc.1=Starts a timer when enabled +gt.blockmachines.multimachine.tm.microwave.desc.2=While the timer is running anything inside the machine will take damage +gt.blockmachines.multimachine.tm.microwave.desc.3=The machine will also collect any items inside of it +gt.blockmachines.multimachine.tm.microwave.desc.4=Can be configured with a Parametrizer +gt.blockmachines.multimachine.tm.microwave.desc.5=(Do not insert a Wither) gt.blockmachines.multimachine.tm.microwave.cfgi.0=Power setting gt.blockmachines.multimachine.tm.microwave.cfgi.1=Timer setting gt.blockmachines.multimachine.tm.microwave.cfgo.0=Timer value @@ -565,9 +569,11 @@ gt.blockmachines.multimachine.tm.microwave.cfgo.1=Timer remaining gt.blockmachines.multimachine.tm.teslaCoil.name=Tesla Tower gt.blockmachines.multimachine.tm.teslaCoil.hint.0=1 - Classic Hatches, Capacitor Hatches or Tesla Base Casing gt.blockmachines.multimachine.tm.teslaCoil.hint.1=2 - Titanium Frames -gt.blockmachines.multimachine.tm.teslaCoil.desc.0=Tower of Wireless Power -gt.blockmachines.multimachine.tm.teslaCoil.desc.1=Fewer pesky cables! -gt.blockmachines.multimachine.tm.teslaCoil.desc.2=Survival chances might be affected +gt.blockmachines.multimachine.tm.teslaCoil.desc.0=Controller block of the Tesla Tower +gt.blockmachines.multimachine.tm.teslaCoil.desc.1=Used to transmit power to Tesla Coil Covers and Tesla Transceivers +gt.blockmachines.multimachine.tm.teslaCoil.desc.2=Can be fed with Helium/Nitrogen/Radon Plasma to increase the range +gt.blockmachines.multimachine.tm.teslaCoil.desc.3=Transmitted voltage depends on the used Tesla Capacitor tier +gt.blockmachines.multimachine.tm.teslaCoil.desc.4=Primary Tesla Windings need to be at least the same tier as the Tesla Capacitor gt.blockmachines.multimachine.tm.teslaCoil.cfgi.0=Hysteresis low setting gt.blockmachines.multimachine.tm.teslaCoil.cfgi.1=Hysteresis high setting gt.blockmachines.multimachine.tm.teslaCoil.cfgi.2=Tesla Towers transfer radius setting @@ -590,8 +596,10 @@ gt.blockmachines.multimachine.tm.teslaCoil.cfgo.8=Scan time display gt.blockmachines.multimachine.em.switch.name=Network Switch With QoS gt.blockmachines.multimachine.em.switch.hint=1 - Classic/Data Hatches or Computer casing -gt.blockmachines.multimachine.em.switch.desc.0=User controlled computation power routing -gt.blockmachines.multimachine.em.switch.desc.1=Quality of service is a must +gt.blockmachines.multimachine.em.switch.desc.0=Controller block of the Network Switch With QoS +gt.blockmachines.multimachine.em.switch.desc.1=Used to route and distribute computation +gt.blockmachines.multimachine.em.switch.desc.2=Needs a Parametrizer to be configured + gt.blockmachines.multimachine.em.computer.name=Quantum Computer gt.blockmachines.multimachine.em.computer.hint.0=1 - Classic/Data Hatches or Computer casing @@ -601,62 +609,67 @@ gt.blockmachines.multimachine.em.computer.cfgi.0=Overclock ratio gt.blockmachines.multimachine.em.computer.cfgi.1=Overvoltage ratio gt.blockmachines.multimachine.em.computer.cfgo.0=Current max. heat gt.blockmachines.multimachine.em.computer.cfgo.1=Produced computation +gt.blockmachines.multimachine.em.computer.desc.0=Controller block of the Quantum Computer +gt.blockmachines.multimachine.em.computer.desc.1=Used to generate computation (and heat) gt.blockmachines.multimachine.em.databank.name=Data Bank gt.blockmachines.multimachine.em.databank.hint.0=1 - Classic Hatches or high power casing gt.blockmachines.multimachine.em.databank.hint.1=2 - Data Access/Data Bank Master Hatches or computer casing -gt.blockmachines.multimachine.em.databank.desc.0=Remote assembly data delivery -gt.blockmachines.multimachine.em.databank.desc.1=Apply directly to the forehead +gt.blockmachines.multimachine.em.databank.desc.0=Controller block of the Data Bank +gt.blockmachines.multimachine.em.databank.desc.1=Used to supply Assembling Lines with more Data Sticks +gt.blockmachines.multimachine.em.databank.desc.2=and give multiple Assembling Lines access to the same Data Stick gt.blockmachines.multimachine.em.junction.name=Matter Junction gt.blockmachines.multimachine.em.junction.hint.0=1 - Classic Hatches or High Power Casing gt.blockmachines.multimachine.em.junction.hint.1=2 - Elemental Hatches or Molecular Casing -gt.blockmachines.multimachine.em.junction.desc.0=Reroutes Matter -gt.blockmachines.multimachine.em.junction.desc.1=Axis aligned movement! +gt.blockmachines.multimachine.em.junction.desc.0=Controller block of the Matter Junction +gt.blockmachines.multimachine.em.junction.desc.1=Used to route and distribute elemental matter +gt.blockmachines.multimachine.em.junction.desc.2=Needs a Parametrizer to be configured gt.blockmachines.multimachine.em.mattertoem.name=Matter Quantizer gt.blockmachines.multimachine.em.mattertoem.hint.0=1 - Classic Hatches or High Power Casing gt.blockmachines.multimachine.em.mattertoem.hint.1=2 - Elemental Output Hatch gt.blockmachines.multimachine.em.mattertoem.hint.2=3 - Elemental Overflow Hatches or Molecular Casing -gt.blockmachines.multimachine.em.mattertoem.desc.0=Conveniently convert regular stuff into quantum form. -gt.blockmachines.multimachine.em.mattertoem.desc.1=To make it more inconvenient. +gt.blockmachines.multimachine.em.mattertoem.desc.0=Controller block of the Matter Quantizer +gt.blockmachines.multimachine.em.mattertoem.desc.1=Transforms items into their elemental form gt.blockmachines.multimachine.em.emtomatter.name=Matter Dequantizer gt.blockmachines.multimachine.em.emtomatter.hint.0=1 - Classic Hatches or High Power Casing" gt.blockmachines.multimachine.em.emtomatter.hint.1=2 - Elemental Input Hatch gt.blockmachines.multimachine.em.emtomatter.hint.2=3 - Elemental Overflow Hatches or Molecular Casing -gt.blockmachines.multimachine.em.emtomatter.desc.0=Transform quantum form back to... -gt.blockmachines.multimachine.em.emtomatter.desc.1=regular one, but why? +gt.blockmachines.multimachine.em.emtomatter.desc.0=Controller block of the Matter Dequantizer +gt.blockmachines.multimachine.em.emtomatter.desc.1=Transforms elemental matter back into items gt.blockmachines.multimachine.em.emtoessentia.name=Essentia Dequantizer gt.blockmachines.multimachine.em.emtoessentia.hint.0=1 - Classic Hatches or High Power Casing gt.blockmachines.multimachine.em.emtoessentia.hint.1=2 - Elemental Input Hatch gt.blockmachines.multimachine.em.emtoessentia.hint.2=3 - Elemental Overflow Hatches or Elemental Casing gt.blockmachines.multimachine.em.emtoessentia.hint.3=General - Some sort of Essentia Storage -gt.blockmachines.multimachine.em.emtoessentia.desc.0=Transform quantum form back to... -gt.blockmachines.multimachine.em.emtoessentia.desc.1=regular one, but why? +gt.blockmachines.multimachine.em.emtoessentia.desc.0=Controller block of the Essentia Dequantizer +gt.blockmachines.multimachine.em.emtoessentia.desc.1=Transforms elemental matter back into essentia gt.blockmachines.multimachine.em.essentiatoem.name=Essentia Quantizer gt.blockmachines.multimachine.em.essentiatoem.hint.0=1 - Classic Hatches or High Power Casing gt.blockmachines.multimachine.em.essentiatoem.hint.1=2 - Elemental Output Hatch gt.blockmachines.multimachine.em.essentiatoem.hint.2=3 - Elemental Overflow Hatches or Elemental Casing gt.blockmachines.multimachine.em.essentiatoem.hint.3=General - Some sort of Essentia Storage -gt.blockmachines.multimachine.em.essentiatoem.desc.0=Conveniently convert regular stuff into quantum form. -gt.blockmachines.multimachine.em.essentiatoem.desc.1=To make it more inconvenient. +gt.blockmachines.multimachine.em.essentiatoem.desc.0=Controller block of the Essentia Quantizer +gt.blockmachines.multimachine.em.essentiatoem.desc.1=Transforms essentia into their elemental form gt.blockmachines.multimachine.em.scanner.name=Elemental Scanner gt.blockmachines.multimachine.em.scanner.hint.0=1 - Classic Hatches or High Power Casing gt.blockmachines.multimachine.em.scanner.hint.1=2 - Elemental Input Hatches or Molecular Casing gt.blockmachines.multimachine.em.scanner.hint.2=3 - Elemental Output Hatches or Molecular Casing gt.blockmachines.multimachine.em.scanner.hint.3=4 - Elemental Overflow Hatches or Molecular Casing -gt.blockmachines.multimachine.em.scanner.desc.0=What is existing here? -gt.blockmachines.multimachine.em.scanner.desc.1=I HAVE NO IDEA (yet)! +gt.blockmachines.multimachine.em.scanner.desc.0=Controller block of the Elemental Scanner gt.blockmachines.multimachine.em.research.name=Research Station gt.blockmachines.multimachine.em.research.hint.0=1 - Classic/Data Hatches or Computer casing gt.blockmachines.multimachine.em.research.hint.1=2 - Holder Hatch -gt.blockmachines.multimachine.em.research.desc.0=Philosophers didn't even... -gt.blockmachines.multimachine.em.research.desc.1=dream about it! +gt.blockmachines.multimachine.em.research.desc.0=Controller block of the Research Station +gt.blockmachines.multimachine.em.research.desc.1=Used to scan Data Sticks for Assembling Line Recipes +gt.blockmachines.multimachine.em.research.desc.2=Needs to be fed with computation to work +gt.blockmachines.multimachine.em.research.desc.3=Does not consume the item until the Data Stick is written gt.blockmachines.multimachine.em.collider.name=Matter Collider gt.blockmachines.multimachine.em.collider.hint.0=1 - Classic Hatches or High Power Casing @@ -664,62 +677,64 @@ gt.blockmachines.multimachine.em.collider.hint.1=2 - Elemental Input Hatches or gt.blockmachines.multimachine.em.collider.hint.2=3 - Elemental Output Hatches or Molecular Casing gt.blockmachines.multimachine.em.collider.hint.3=4 - Elemental Overflow Hatches or Molecular Casing gt.blockmachines.multimachine.em.collider.hint.4=General - Another Controller facing opposite direction -gt.blockmachines.multimachine.em.collider.desc.0=Collide matter at extreme velocities. -gt.blockmachines.multimachine.em.collider.desc.1=Faster than light*!!! +gt.blockmachines.multimachine.em.collider.desc.0=Controller block of the Matter Collider +gt.blockmachines.multimachine.em.collider.desc.1=This machine needs a mirrored copy of it to work +gt.blockmachines.multimachine.em.collider.desc.2=One needs to be set to 'Fuse Mode' and the other to 'Collide Mode' +gt.blockmachines.multimachine.em.collider.desc.3=Fuses two elemental matter to create another (and power) gt.blockmachines.multimachine.em.collider.mode.0=Mode: Fuse gt.blockmachines.multimachine.em.collider.mode.1=Mode: Collide gt.blockmachines.multimachine.em.collider.mode.2=Mode: Undefined gt.blockmachines.multimachine.em.collider.mode.3=Currently Slaves... +gt.blockmachines.multimachine.em.collider.Structure.AdditionalCollider=Needs another Matter Collider that is mirrored to this one gt.blockmachines.multimachine.em.infuser.name=Energy Infuser gt.blockmachines.multimachine.em.infuser.hint=1 - Classic Hatches or High Power Casing -gt.blockmachines.multimachine.em.infuser.desc.0=Power Transfer Extreme! -gt.blockmachines.multimachine.em.infuser.desc.1=Insanely fast charging! -gt.blockmachines.multimachine.em.infuser.desc.2=Doesn't work while broken! -gt.blockmachines.multimachine.em.infuser.desc.3=Power loss is a thing. +gt.blockmachines.multimachine.em.infuser.desc.0=Controller block of the Energy Infuser +gt.blockmachines.multimachine.em.infuser.desc.1=Can be used to charge items in the controller GUI +gt.blockmachines.multimachine.em.infuser.desc.2=Has a loss of 3.125% +gt.blockmachines.multimachine.em.infuser.Structure.HighPowerCasing=Layer 1 and 5 +gt.blockmachines.multimachine.em.infuser.Structure.MolecularCoil=Layer 2 and 4 +gt.blockmachines.multimachine.em.infuser.Structure.MolecularCasing=Layer 3 (hollow) + gt.blockmachines.multimachine.em.processing.name=Quantum Processing Machine gt.blockmachines.multimachine.em.processing.hint.0=1 - Classic Hatches or High Power Casing gt.blockmachines.multimachine.em.processing.hint.1=2 - Elemental Hatches or Molecular Casing -gt.blockmachines.multimachine.em.processing.desc.0=Processing quantum matter since... -gt.blockmachines.multimachine.em.processing.desc.1=the time u started using it. +gt.blockmachines.multimachine.em.processing.desc.0=Controller block of the Quantum Processing machine gt.blockmachines.multimachine.em.crafter.name=Matter Assembler gt.blockmachines.multimachine.em.crafter.hint.0=1 - Classic Hatches or High Power Casing gt.blockmachines.multimachine.em.crafter.hint.1=2 - Elemental Hatches or Molecular Casing -gt.blockmachines.multimachine.em.crafter.desc.0=The most precise way of making stuff. -gt.blockmachines.multimachine.em.crafter.desc.1=(Trans-Planck process) +gt.blockmachines.multimachine.em.crafter.desc.0=Controller block of the Matter Assembler gt.blockmachines.multimachine.em.stabilizer.name=Elemental Stabilizer gt.blockmachines.multimachine.em.stabilizer.hint.0=1 - Classic Hatches or High Power Casing gt.blockmachines.multimachine.em.stabilizer.hint.1=2 - Elemental Hatches or Molecular Casing -gt.blockmachines.multimachine.em.stabilizer.desc.0=Alters time to stabilize matter -gt.blockmachines.multimachine.em.stabilizer.desc.1=Wibbly wobbly timey wimey, stuff. +gt.blockmachines.multimachine.em.stabilizer.desc.0=Controller block of the Elemental Stabilizer gt.blockmachines.multimachine.em.wormhole.name=Wormhole gt.blockmachines.multimachine.em.wormhole.hint.0=1 - Classic Hatches or High Power Casing gt.blockmachines.multimachine.em.wormhole.hint.1=2 - Elemental Hatches or Molecular Casing -gt.blockmachines.multimachine.em.wormhole.desc.0=It is not full of worms. -gt.blockmachines.multimachine.em.wormhole.desc.1=It is full of anti-worms!!! +gt.blockmachines.multimachine.em.wormhole.desc.0=Controller block of the Wormhole gt.blockmachines.multimachine.em.decay.name=Decay Generator gt.blockmachines.multimachine.em.decay.hint.0=1 - Classic Hatches or High Power Casing gt.blockmachines.multimachine.em.decay.hint.1=2 - Elemental Hatches or Molecular Casing -gt.blockmachines.multimachine.em.decay.desc.0=Is life time too long? -gt.blockmachines.multimachine.em.decay.desc.1=Make it half-life (3) instead! +gt.blockmachines.multimachine.em.decay.desc.0=Controller block of the Decay Generator +gt.blockmachines.multimachine.em.decay.desc.1=Decays elemental matter to generate power + gt.blockmachines.multimachine.em.decay.conf=Ampere divider gt.blockmachines.multimachine.em.annihilation.name=Annihilation Generator gt.blockmachines.multimachine.em.annihilation.hint.0=1 - Classic Hatches or High Power Casing gt.blockmachines.multimachine.em.annihilation.hint.1=2 - Elemental Hatches or Molecular Casing -gt.blockmachines.multimachine.em.annihilation.desc.0=Things+Anti Things don't like each other. -gt.blockmachines.multimachine.em.annihilation.desc.1=Matter into power! +gt.blockmachines.multimachine.em.annihilation.desc.0=Controller block of the Annihilation Generator gt.blockmachines.multimachine.em.blackholegenerator.name=Black Hole Generator gt.blockmachines.multimachine.em.blackholegenerator.hint.0=1 - Classic Hatches or High Power Casing gt.blockmachines.multimachine.em.blackholegenerator.hint.1=2 - Elemental Hatches or Molecular Casing -gt.blockmachines.multimachine.em.blackholegenerator.desc.0=Singularity based power generation. -gt.blockmachines.multimachine.em.blackholegenerator.desc.1=Super unstable!!! +gt.blockmachines.multimachine.em.blackholegenerator.desc.0=Controller block of the Black Hole Generator +gt.blockmachines.multimachine.em.blackholegenerator.desc.1=Uses a black hole to generate power #Pipes gt.blockmachines.pipe.elementalmatter.name=Quantum "Tunnel" @@ -800,6 +815,46 @@ gt.blockmachines.debug.tt.writer.desc.2=ABC axises aligned to machine front tt.keyword.ID=ID #Example: 32EU at 1A tt.keyword.at=at +# Structure is too complex +tt.keyword.Structure.StructureTooComplex=The structure is too complex! +# Any X +tt.keyword.Structure.AnyComputerCasing=Any Computer Casing +tt.keyword.Structure.AnyHighPowerCasing=Any High Power Casing +tt.keyword.Structure.AnyHighPowerCasing1D=Any High Power Casing with 1 dot +tt.keyword.Structure.AnyHighPowerCasing2D=Any High Power Casing with 2 dots +tt.keyword.Structure.AnyHighPowerCasingFront=Any High Power Casing on the front side +tt.keyword.Structure.AnyTeslaBaseCasingOuter=Any outer Tesla Base Casing +tt.keyword.Structure.AnyComputerCasingFirstOrLastSlice=Any Computer Casing on the first or last slice +tt.keyword.Structure.AnyComputerCasingBackMain=Any Computer Casing on the backside of the main body +tt.keyword.Structure.AnyAdvComputerCasingExceptOuter=Any Advanced Computer Casing, except the outer ones +tt.keyword.Structure.AnyMolecularCasing=Any Molecular Casing +tt.keyword.Structure.AnyMolecularCasing2D=Any Molecular Casing with 2 dots +tt.keyword.Structure.AnyMolecularCasing3D=Any Molecular Casing with 3 dots +tt.keyword.Structure.AnyMolecularCasing4D=Any Molecular Casing with 4 dots +tt.keyword.Structure.AnyOuterMolecularCasing3rd=Any outer Molecular Casing on the 3rd slice +tt.keyword.Structure.AnyOuterMolecularCasing4th=Any outer Molecular Casing on the 4th slice +tt.keyword.Structure.AnyOuterMolecularCasing3rd4th=Any outer Molecular Casing on the 3rd or 4th slice +tt.keyword.Structure.AnyOuterCasingOnBottom=Any outer casing on the bottom layer +# Optional +tt.keyword.Structure.Optional=(optional) +# Placement specification +tt.keyword.Structure.FrontCenter=Front center +tt.keyword.Structure.BackCenter=Back center +tt.keyword.Structure.SideCenter=Side center +tt.keyword.Structure.FrontCenter3rd=Front 3rd layer center +tt.keyword.Structure.CenterPillar=Center of the front pillar +tt.keyword.Structure.Center=Center +# Additional structure components +tt.keyword.Structure.DataAccessHatch=Data Access Hatch +tt.keyword.Structure.ElementalOutput=Elemental Output Hatch +tt.keyword.Structure.Elemental=Elemental Hatch +tt.keyword.Structure.ElementalOverflow=Elemental Overflow Hatch +tt.keyword.Structure.ElementalInput=Elemental Input Hatch +tt.keyword.Structure.EssentiaStorage=Essentia Storage +tt.keyword.Structure.DataConnector=Data Connector +tt.keyword.Structure.SuperconductingCoilBlock=Superconducting Coil Block +tt.keyword.Structure.StainlessSteelCasing=Stainless Steel Casing + tt.keyphrase.Hint_Details=Hint Details |