aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYannickMG <yannickmg@gmail.com>2022-02-03 12:55:55 -0500
committerGitHub <noreply@github.com>2022-02-03 18:55:55 +0100
commita48a158ad76dfa0b8d74894bbbe8d2520ff760af (patch)
treece6ac0d636c9076f15febc0e1a47efa25c83cdf6
parentb4ff9ad8d8a8003a2b0a63e0a2153f37f60cd02f (diff)
downloadGT5-Unofficial-a48a158ad76dfa0b8d74894bbbe8d2520ff760af.tar.gz
GT5-Unofficial-a48a158ad76dfa0b8d74894bbbe8d2520ff760af.tar.bz2
GT5-Unofficial-a48a158ad76dfa0b8d74894bbbe8d2520ff760af.zip
Basic Machine NEI Power Tiers (#914)
* Add IntelliJ .shelf folder to .gitignore * Fixing GT_GuiTooltip bug I introduced * Deprecated superfluous String trans methods. * Add Power class to compute and describe power usage * trans -> GT_Utility.trans Removed absent param from Javadoc * Add Power to BasicMachine and use it for power calculations * Steam BasicMachine rework Have Bronze and Steel tier override Power with appropriate SteamPower Make Bronze machines explicitly tier 1 Make Steel machines explicitly tier 2 Defined recipe list and bricked status for each machine Unified checkRecipe uses machine's recipe list and Power * Raised NEI dependency to 2.2.5 * Defining NEI transfer rect in individual UIs Using a new interface called from GT_RectHandler * Code cleanup & minor refactor * Add power field to NEI Default Handler Add method to create Power object from the recipe map * Display power tier in NEI handler name * User Power to draw NEI Handler description * Enable filtering handler recipes using Power * Repurposing aBricked parameter into aHighPressure To fix my previous faulty method of setting mTier * Must call getCache to get recipes properly. * Better communicate NEI Overclock info
-rw-r--r--.gitignore1
-rw-r--r--dependencies.gradle2
-rw-r--r--src/main/java/gregtech/api/gui/GT_ContainerMetaTile_Machine.java5
-rw-r--r--src/main/java/gregtech/api/gui/GT_Container_SpecialFilter.java20
-rw-r--r--src/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java29
-rw-r--r--src/main/java/gregtech/api/gui/GT_GUIContainer_MultiMachine.java30
-rw-r--r--src/main/java/gregtech/api/gui/widgets/GT_GuiTooltip.java1
-rw-r--r--src/main/java/gregtech/api/items/GT_CoolantCell_Item.java3
-rw-r--r--src/main/java/gregtech/api/items/GT_Generic_Item.java3
-rw-r--r--src/main/java/gregtech/api/items/GT_MetaBase_Item.java11
-rw-r--r--src/main/java/gregtech/api/items/GT_MetaGenerated_Tool.java24
-rw-r--r--src/main/java/gregtech/api/items/GT_RadioactiveCell_Item.java3
-rw-r--r--src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java4
-rw-r--r--src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java6
-rw-r--r--src/main/java/gregtech/api/metatileentity/BaseTileEntity.java5
-rw-r--r--src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java3
-rw-r--r--src/main/java/gregtech/api/metatileentity/MetaTileEntity.java5
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java8
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java8
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java4
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java64
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Bronze.java71
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Steel.java46
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Buffer.java6
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java5
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Output.java38
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java4
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Transformer.java10
-rw-r--r--src/main/java/gregtech/api/util/GT_Utility.java2
-rw-r--r--src/main/java/gregtech/common/gui/GT_Container_ChestBuffer.java16
-rw-r--r--src/main/java/gregtech/common/gui/GT_Container_Filter.java20
-rw-r--r--src/main/java/gregtech/common/gui/GT_Container_ItemDistributor.java12
-rw-r--r--src/main/java/gregtech/common/gui/GT_Container_OutputHatch.java4
-rw-r--r--src/main/java/gregtech/common/gui/GT_Container_Regulator.java4
-rw-r--r--src/main/java/gregtech/common/gui/GT_Container_SuperBuffer.java16
-rw-r--r--src/main/java/gregtech/common/gui/GT_GUIContainer_FusionReactor.java25
-rw-r--r--src/main/java/gregtech/common/gui/GT_GUIContainer_PrimitiveBlastFurnace.java27
-rw-r--r--src/main/java/gregtech/common/items/GT_FluidDisplayItem.java6
-rw-r--r--src/main/java/gregtech/common/items/GT_SensorCard_Item.java5
-rw-r--r--src/main/java/gregtech/common/items/behaviors/Behaviour_None.java7
-rw-r--r--src/main/java/gregtech/common/items/behaviors/Behaviour_Prospecting.java16
-rw-r--r--src/main/java/gregtech/common/power/BasicMachineEUPower.java72
-rw-r--r--src/main/java/gregtech/common/power/EUPower.java57
-rw-r--r--src/main/java/gregtech/common/power/Power.java48
-rw-r--r--src/main/java/gregtech/common/power/SteamPower.java46
-rw-r--r--src/main/java/gregtech/common/power/UnspecifiedEUPower.java22
-rw-r--r--src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_ItemDistributor.java2
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DrillerBase.java2
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_HPSteam.java2
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Steam.java2
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java22
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java16
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java11
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java17
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java11
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java17
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java11
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java17
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Bronze.java11
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Steel.java5
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java11
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java17
-rw-r--r--src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java397
-rw-r--r--src/main/java/gregtech/nei/NEIHandlerAbsoluteTooltip.java52
-rw-r--r--src/main/java/gregtech/nei/NEI_TransferRectHost.java10
65 files changed, 1012 insertions, 445 deletions
diff --git a/.gitignore b/.gitignore
index 7063fb37b4..82a802b075 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,7 @@
.gradle
.settings
/.idea/
+.shelf
/run/
/build/
/eclipse/
diff --git a/dependencies.gradle b/dependencies.gradle
index 7ac1152b09..19c13b7749 100644
--- a/dependencies.gradle
+++ b/dependencies.gradle
@@ -5,7 +5,7 @@
dependencies {
compile("com.github.GTNewHorizons:StructureLib:1.0.15:dev")
- compile("com.github.GTNewHorizons:NotEnoughItems:2.2.3-GTNH:dev")
+ compile("com.github.GTNewHorizons:NotEnoughItems:2.2.5-GTNH:dev")
compile("com.github.GTNewHorizons:CodeChickenCore:1.1.3:dev")
compile("com.github.GTNewHorizons:CodeChickenLib:1.1.5.1:dev")
compile("com.github.GTNewHorizons:waila:1.5.18:dev")
diff --git a/src/main/java/gregtech/api/gui/GT_ContainerMetaTile_Machine.java b/src/main/java/gregtech/api/gui/GT_ContainerMetaTile_Machine.java
index 26b94a00e4..7c7e6ec38a 100644
--- a/src/main/java/gregtech/api/gui/GT_ContainerMetaTile_Machine.java
+++ b/src/main/java/gregtech/api/gui/GT_ContainerMetaTile_Machine.java
@@ -3,7 +3,7 @@ package gregtech.api.gui;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.util.GT_LanguageManager;
+import gregtech.api.util.GT_Utility;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.ICrafting;
@@ -206,7 +206,8 @@ public class GT_ContainerMetaTile_Machine extends GT_Container {
return mTileEntity.isUseableByPlayer(player);
}
+ @Deprecated
public String trans(String aKey, String aEnglish) {
- return GT_LanguageManager.addStringLocalization("Interaction_DESCRIPTION_Index_" + aKey, aEnglish, false);
+ return GT_Utility.trans(aKey, aEnglish);
}
}
diff --git a/src/main/java/gregtech/api/gui/GT_Container_SpecialFilter.java b/src/main/java/gregtech/api/gui/GT_Container_SpecialFilter.java
index 31d257c887..fef857a7ae 100644
--- a/src/main/java/gregtech/api/gui/GT_Container_SpecialFilter.java
+++ b/src/main/java/gregtech/api/gui/GT_Container_SpecialFilter.java
@@ -54,45 +54,45 @@ public class GT_Container_SpecialFilter extends GT_ContainerMetaTile_Machine {
if (aSlotIndex == 10) {
((GT_MetaTileEntity_SpecialFilter) this.mTileEntity.getMetaTileEntity()).bOutput = (!((GT_MetaTileEntity_SpecialFilter) this.mTileEntity.getMetaTileEntity()).bOutput);
if (((GT_MetaTileEntity_SpecialFilter) this.mTileEntity.getMetaTileEntity()).bOutput) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("116","Emit Energy to Outputside"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("116","Emit Energy to Outputside"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("117","Don't emit Energy"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("117","Don't emit Energy"));
}
return null;
}
if (aSlotIndex == 11) {
((GT_MetaTileEntity_SpecialFilter) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull = (!((GT_MetaTileEntity_SpecialFilter) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull);
if (((GT_MetaTileEntity_SpecialFilter) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("122","Emit Redstone if slots contain something"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("122","Emit Redstone if slots contain something"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("123","Don't emit Redstone"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("123","Don't emit Redstone"));
}
return null;
}
if (aSlotIndex == 12) {
((GT_MetaTileEntity_SpecialFilter) this.mTileEntity.getMetaTileEntity()).bInvert = (!((GT_MetaTileEntity_SpecialFilter) this.mTileEntity.getMetaTileEntity()).bInvert);
if (((GT_MetaTileEntity_SpecialFilter) this.mTileEntity.getMetaTileEntity()).bInvert) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("120","Invert Redstone"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("120","Invert Redstone"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("121","Don't invert Redstone"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("121","Don't invert Redstone"));
}
return null;
}
if (aSlotIndex == 13) {
((GT_MetaTileEntity_SpecialFilter) this.mTileEntity.getMetaTileEntity()).bInvertFilter = (!((GT_MetaTileEntity_SpecialFilter) this.mTileEntity.getMetaTileEntity()).bInvertFilter);
if (((GT_MetaTileEntity_SpecialFilter) this.mTileEntity.getMetaTileEntity()).bInvertFilter) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("124","Invert Filter"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("124","Invert Filter"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("125","Don't invert Filter"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("125","Don't invert Filter"));
}
return null;
}
if (aSlotIndex == 14) {
((GT_MetaTileEntity_SpecialFilter) this.mTileEntity.getMetaTileEntity()).bNBTAllowed = (!((GT_MetaTileEntity_SpecialFilter) this.mTileEntity.getMetaTileEntity()).bNBTAllowed);
if (((GT_MetaTileEntity_SpecialFilter) this.mTileEntity.getMetaTileEntity()).bNBTAllowed) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("126","Ignore NBT"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("126","Ignore NBT"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("127","NBT has to match"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("127","NBT has to match"));
}
return null;
}
diff --git a/src/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java b/src/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java
index 85c94cd723..92121df0ea 100644
--- a/src/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java
+++ b/src/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java
@@ -10,8 +10,10 @@ import gregtech.api.gui.widgets.GT_GuiSlotTooltip;
import gregtech.api.gui.widgets.GT_GuiSmartTooltip;
import gregtech.api.gui.widgets.GT_GuiSmartTooltip.TooltipVisibilityProvider;
import gregtech.api.net.GT_Packet_SetConfigurationCircuit;
+import gregtech.common.power.Power;
import gregtech.api.util.GT_Utility;
import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
+import gregtech.nei.NEI_TransferRectHost;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.StatCollector;
@@ -28,7 +30,7 @@ import static gregtech.api.enums.GT_Values.RES_PATH_GUI;
* As the NEI-RecipeTransferRect Handler can't handle one GUI-Class for all GUIs I needed to produce some dummy-classes
* which extend this class
*/
-public class GT_GUIContainer_BasicMachine extends GT_GUIContainerMetaTile_Machine {
+public class GT_GUIContainer_BasicMachine extends GT_GUIContainerMetaTile_Machine implements NEI_TransferRectHost {
private static final int NEEDS_STEAM_VENTING = 64;
private final static GT_GuiTabIconSet TAB_ICONSET_BRONZE = new GT_GuiTabIconSet(
GT_GuiIcon.TAB_NORMAL_BRONZE,
@@ -256,4 +258,29 @@ public class GT_GUIContainer_BasicMachine extends GT_GUIContainerMetaTile_Machin
private GT_Container_BasicMachine getContainer() {
return (GT_Container_BasicMachine) mContainer;
}
+
+ @Override
+ public String getNeiTransferRectString() {
+ return mNEI;
+ }
+
+ @Override
+ public String getNeiTransferRectTooltip() {
+ Power powerInfo = getMachine().getPower();
+ if (getMachine().isSteampowered()) {
+ return powerInfo.getTierString() + " Steam recipes";
+ } else {
+ return "Recipes available in " + powerInfo.getTierString();
+ }
+ }
+
+ @Override
+ public Object[] getNeiTransferRectArgs() {
+ return new Object[]{getMachine().getPower()};
+ }
+
+ @Override
+ public Rectangle getNeiTransferRect() {
+ return new Rectangle(65, 13, 36, 18);
+ }
}
diff --git a/src/main/java/gregtech/api/gui/GT_GUIContainer_MultiMachine.java b/src/main/java/gregtech/api/gui/GT_GUIContainer_MultiMachine.java
index 0620701311..a477789d06 100644
--- a/src/main/java/gregtech/api/gui/GT_GUIContainer_MultiMachine.java
+++ b/src/main/java/gregtech/api/gui/GT_GUIContainer_MultiMachine.java
@@ -1,7 +1,6 @@
package gregtech.api.gui;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.util.GT_LanguageManager;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Utility;
import gregtech.common.items.GT_MetaGenerated_Tool_01;
@@ -35,45 +34,46 @@ public class GT_GUIContainer_MultiMachine extends GT_GUIContainerMetaTile_Machin
if (mContainer != null) {//(mWrench ? 0 : 1) | (mScrewdriver ? 0 : 2) | (mSoftHammer ? 0 : 4) | (mHardHammer ? 0 : 8) | (mSolderingTool ? 0 : 16) | (mCrowbar ? 0 : 32) | (mMachine ? 0 : 64));
if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 1) != 0)
- fontRendererObj.drawString(trans("132", "Pipe is loose."), 10, 16, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("132", "Pipe is loose."), 10, 16, 16448255);
if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 2) != 0)
- fontRendererObj.drawString(trans("133", "Screws are loose."), 10, 24, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("133", "Screws are loose."), 10, 24, 16448255);
if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 4) != 0)
- fontRendererObj.drawString(trans("134", "Something is stuck."), 10, 32, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("134", "Something is stuck."), 10, 32, 16448255);
if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 8) != 0)
- fontRendererObj.drawString(trans("135", "Platings are dented."), 10, 40, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("135", "Platings are dented."), 10, 40, 16448255);
if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 16) != 0)
- fontRendererObj.drawString(trans("136", "Circuitry burned out."), 10, 48, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("136", "Circuitry burned out."), 10, 48, 16448255);
if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 32) != 0)
- fontRendererObj.drawString(trans("137", "That doesn't belong there."), 10, 56, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("137", "That doesn't belong there."), 10, 56, 16448255);
if ((((GT_Container_MultiMachine) mContainer).mDisplayErrorCode & 64) != 0)
- fontRendererObj.drawString(trans("138", "Incomplete Structure."), 10, 64, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("138", "Incomplete Structure."), 10, 64, 16448255);
if (((GT_Container_MultiMachine) mContainer).mDisplayErrorCode == 0) {
if (((GT_Container_MultiMachine) mContainer).mActive == 0) {
- fontRendererObj.drawString(trans("139", "Hit with Soft Mallet"), 10, 16, 16448255);
- fontRendererObj.drawString(trans("140", "to (re-)start the Machine"), 10, 24, 16448255);
- fontRendererObj.drawString(trans("141", "if it doesn't start."), 10, 32, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("139", "Hit with Soft Mallet"), 10, 16, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("140", "to (re-)start the Machine"), 10, 24, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("141", "if it doesn't start."), 10, 32, 16448255);
} else {
- fontRendererObj.drawString(trans("142", "Running perfectly."), 10, 16, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("142", "Running perfectly."), 10, 16, 16448255);
}
if (mContainer.mTileEntity.getMetaTileEntity() instanceof GT_MetaTileEntity_DrillerBase) {
ItemStack tItem = mContainer.mTileEntity.getMetaTileEntity().getStackInSlot(1);
if (tItem == null || !GT_Utility.areStacksEqual(tItem, GT_ModHandler.getIC2Item("miningPipe", 1L))) {
- fontRendererObj.drawString(trans("143", "Missing Mining Pipe"), 10, ((GT_Container_MultiMachine) mContainer).mActive == 0 ? 40 : 24, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("143", "Missing Mining Pipe"), 10, ((GT_Container_MultiMachine) mContainer).mActive == 0 ? 40 : 24, 16448255);
}
} else if (mContainer.mTileEntity.getMetaTileEntity() instanceof GT_MetaTileEntity_LargeTurbine) {
ItemStack tItem = mContainer.mTileEntity.getMetaTileEntity().getStackInSlot(1);
if (tItem == null || !(tItem.getItem() == GT_MetaGenerated_Tool_01.INSTANCE && tItem.getItemDamage() >= 170 && tItem.getItemDamage() <= 177)) {
- fontRendererObj.drawString(trans("144", "Missing Turbine Rotor"), 10, ((GT_Container_MultiMachine) mContainer).mActive == 0 ? 40 : 24, 16448255);
+ fontRendererObj.drawString(GT_Utility.trans("144", "Missing Turbine Rotor"), 10, ((GT_Container_MultiMachine) mContainer).mActive == 0 ? 40 : 24, 16448255);
}
}
}
}
}
+ @Deprecated
public String trans(String aKey, String aEnglish) {
- return GT_LanguageManager.addStringLocalization("Interaction_DESCRIPTION_Index_" + aKey, aEnglish, false);
+ return GT_Utility.trans(aKey, aEnglish);
}
@Override
diff --git a/src/main/java/gregtech/api/gui/widgets/GT_GuiTooltip.java b/src/main/java/gregtech/api/gui/widgets/GT_GuiTooltip.java
index b18811af05..21648b74fe 100644
--- a/src/main/java/gregtech/api/gui/widgets/GT_GuiTooltip.java
+++ b/src/main/java/gregtech/api/gui/widgets/GT_GuiTooltip.java
@@ -75,6 +75,7 @@ public class GT_GuiTooltip {
*/
public void setToolTipText(String... text) {
this.data = formatTooltip(text);
+ this.displayedText = data.text;
}
/**
diff --git a/src/main/java/gregtech/api/items/GT_CoolantCell_Item.java b/src/main/java/gregtech/api/items/GT_CoolantCell_Item.java
index 142737a528..4463e44e54 100644
--- a/src/main/java/gregtech/api/items/GT_CoolantCell_Item.java
+++ b/src/main/java/gregtech/api/items/GT_CoolantCell_Item.java
@@ -1,6 +1,7 @@
package gregtech.api.items;
import gregtech.api.GregTech_API;
+import gregtech.api.util.GT_Utility;
import ic2.core.util.StackUtil;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -66,7 +67,7 @@ public class GT_CoolantCell_Item
case 8: color = EnumChatFormatting.RED; break;
default: color = EnumChatFormatting.DARK_RED; break;
}
- aList.add(EnumChatFormatting.WHITE + String.format(trans("000", "Stored Heat: %s"), "" + color + getHeatOfStack(aStack)));
+ aList.add(EnumChatFormatting.WHITE + String.format(GT_Utility.trans("000", "Stored Heat: %s"), "" + color + getHeatOfStack(aStack)));
switch (getControlTagOfStack(aStack)) {
case 1:
aList.add(StatCollector.translateToLocal("ic2.reactoritem.heatwarning.line1"));
diff --git a/src/main/java/gregtech/api/items/GT_Generic_Item.java b/src/main/java/gregtech/api/items/GT_Generic_Item.java
index f25eb73e87..382bb1e3af 100644
--- a/src/main/java/gregtech/api/items/GT_Generic_Item.java
+++ b/src/main/java/gregtech/api/items/GT_Generic_Item.java
@@ -143,7 +143,8 @@ public class GT_Generic_Item extends Item implements IProjectileItem {
public boolean hasContainerItem(ItemStack aStack) {
return getContainerItem(aStack) != null;
}
-
+
+ @Deprecated
public String trans(String aKey, String aEnglish){
return GT_LanguageManager.addStringLocalization("Item_DESCRIPTION_Index_"+aKey, aEnglish, false);
}
diff --git a/src/main/java/gregtech/api/items/GT_MetaBase_Item.java b/src/main/java/gregtech/api/items/GT_MetaBase_Item.java
index 2f6685553e..b325f469df 100644
--- a/src/main/java/gregtech/api/items/GT_MetaBase_Item.java
+++ b/src/main/java/gregtech/api/items/GT_MetaBase_Item.java
@@ -39,7 +39,6 @@ public abstract class GT_MetaBase_Item extends GT_Generic_Item implements ISpeci
* Creates the Item using these Parameters.
*
* @param aUnlocalized The Unlocalized Name of this Item.
- * @param aGeneratedPrefixList The OreDict Prefixes you want to have generated.
*/
public GT_MetaBase_Item(String aUnlocalized) {
super(aUnlocalized, "Generated Item", null, false);
@@ -195,13 +194,13 @@ public abstract class GT_MetaBase_Item extends GT_Generic_Item implements ISpeci
tStats = getElectricStats(aStack);
if (tStats != null) {
if (tStats[3] > 0) {
- aList.add(EnumChatFormatting.AQUA + String.format(trans("009", "Contains %s EU Tier: %s"), GT_Utility.formatNumbers(tStats[3]), "" + (tStats[2] >= 0 ? tStats[2] : 0)) + EnumChatFormatting.GRAY);
+ aList.add(EnumChatFormatting.AQUA + String.format(GT_Utility.trans("009", "Contains %s EU Tier: %s"), GT_Utility.formatNumbers(tStats[3]), "" + (tStats[2] >= 0 ? tStats[2] : 0)) + EnumChatFormatting.GRAY);
} else {
long tCharge = getRealCharge(aStack);
if (tStats[3] == -2 && tCharge <= 0) {
- aList.add(EnumChatFormatting.AQUA + trans("010", "Empty. You should recycle it properly.") + EnumChatFormatting.GRAY);
+ aList.add(EnumChatFormatting.AQUA + GT_Utility.trans("010", "Empty. You should recycle it properly.") + EnumChatFormatting.GRAY);
} else {
- aList.add(String.valueOf(EnumChatFormatting.AQUA) + String.format(trans("011", "%s / %s EU - Voltage: %s"), GT_Utility.formatNumbers(tCharge), GT_Utility.formatNumbers(Math.abs(tStats[0])), "" + V[(int) (tStats[2] >= 0 ? tStats[2] < V.length ? tStats[2] : V.length - 1 : 1)]) + EnumChatFormatting.GRAY);
+ aList.add(String.valueOf(EnumChatFormatting.AQUA) + String.format(GT_Utility.trans("011", "%s / %s EU - Voltage: %s"), GT_Utility.formatNumbers(tCharge), GT_Utility.formatNumbers(Math.abs(tStats[0])), "" + V[(int) (tStats[2] >= 0 ? tStats[2] < V.length ? tStats[2] : V.length - 1 : 1)]) + EnumChatFormatting.GRAY);
}
}
}
@@ -209,8 +208,8 @@ public abstract class GT_MetaBase_Item extends GT_Generic_Item implements ISpeci
tStats = getFluidContainerStats(aStack);
if (tStats != null && tStats[0] > 0) {
FluidStack tFluid = getFluidContent(aStack);
- aList.add(EnumChatFormatting.BLUE + ((tFluid == null ? trans("012", "No Fluids Contained") : GT_Utility.getFluidName(tFluid, true))) + EnumChatFormatting.GRAY);
- aList.add(EnumChatFormatting.BLUE + String.format(trans("013", "%sL / %sL"), "" + (tFluid == null ? 0 : tFluid.amount), "" + tStats[0]) + EnumChatFormatting.GRAY);
+ aList.add(EnumChatFormatting.BLUE + ((tFluid == null ? GT_Utility.trans("012", "No Fluids Contained") : GT_Utility.getFluidName(tFluid, true))) + EnumChatFormatting.GRAY);
+ aList.add(EnumChatFormatting.BLUE + String.format(GT_Utility.trans("013", "%sL / %sL"), "" + (tFluid == null ? 0 : tFluid.amount), "" + tStats[0]) + EnumChatFormatting.GRAY);
}
ArrayList<IItemBehaviour<GT_MetaBase_Item>> tList = mItemBehaviors.get((short) getDamage(aStack));
diff --git a/src/main/java/gregtech/api/items/GT_MetaGenerated_Tool.java b/src/main/java/gregtech/api/items/GT_MetaGenerated_Tool.java
index e157337148..bd34fe25b4 100644
--- a/src/main/java/gregtech/api/items/GT_MetaGenerated_Tool.java
+++ b/src/main/java/gregtech/api/items/GT_MetaGenerated_Tool.java
@@ -351,10 +351,10 @@ public abstract class GT_MetaGenerated_Tool extends GT_MetaBase_Item implements
if (tStats != null) {
if (tStats instanceof GT_Tool_Turbine) {
int aOptFlow=GT_Utility.safeInt((long)Math.max(Float.MIN_NORMAL, ((GT_MetaGenerated_Tool) aStack.getItem()).getToolStats(aStack).getSpeedMultiplier() * ((GT_MetaGenerated_Tool) aStack.getItem()).getPrimaryMaterial(aStack).mToolSpeed * 50));
- aList.add(tOffset + 0, EnumChatFormatting.WHITE + String.format(trans("001", "Durability: %s/%s"), "" + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " ", " " + tMaxDamage) + EnumChatFormatting.GRAY);
- aList.add(tOffset + 1, EnumChatFormatting.WHITE + String.format(trans("002", "%s lvl %s"), tMaterial.mLocalizedName + EnumChatFormatting.YELLOW, "" + getHarvestLevel(aStack, "")) + EnumChatFormatting.GRAY);
- aList.add(tOffset + 2, EnumChatFormatting.WHITE + String.format(trans("005", "Turbine Efficiency: %s"), "" + EnumChatFormatting.BLUE + (50.0F + (10.0F * getToolCombatDamage(aStack)))) + EnumChatFormatting.GRAY);
- aList.add(tOffset + 3, EnumChatFormatting.WHITE + String.format(trans("006", "Optimal Steam flow: %sL/sec"), "" + EnumChatFormatting.GOLD + Math.max(Float.MIN_NORMAL, tStats.getSpeedMultiplier() * getPrimaryMaterial(aStack).mToolSpeed * 1000) + EnumChatFormatting.GRAY));
+ aList.add(tOffset + 0, EnumChatFormatting.WHITE + String.format(GT_Utility.trans("001", "Durability: %s/%s"), "" + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " ", " " + tMaxDamage) + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 1, EnumChatFormatting.WHITE + String.format(GT_Utility.trans("002", "%s lvl %s"), tMaterial.mLocalizedName + EnumChatFormatting.YELLOW, "" + getHarvestLevel(aStack, "")) + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 2, EnumChatFormatting.WHITE + String.format(GT_Utility.trans("005", "Turbine Efficiency: %s"), "" + EnumChatFormatting.BLUE + (50.0F + (10.0F * getToolCombatDamage(aStack)))) + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 3, EnumChatFormatting.WHITE + String.format(GT_Utility.trans("006", "Optimal Steam flow: %sL/sec"), "" + EnumChatFormatting.GOLD + Math.max(Float.MIN_NORMAL, tStats.getSpeedMultiplier() * getPrimaryMaterial(aStack).mToolSpeed * 1000) + EnumChatFormatting.GRAY));
{
int aBaseEff=(int)(5+getToolCombatDamage(aStack))*1000;
int aOptFlowLoose=aOptFlow*4;
@@ -367,17 +367,17 @@ public abstract class GT_MetaGenerated_Tool extends GT_MetaBase_Item implements
}else{
aBaseEff*=0.75f;
}
- aList.add(tOffset + 4, EnumChatFormatting.GRAY + String.format(trans("500", "Turbine Efficiency (Loose): %s"), "" + EnumChatFormatting.BLUE + aBaseEff/100f) + EnumChatFormatting.DARK_GRAY);
- aList.add(tOffset + 5, EnumChatFormatting.GRAY + String.format(trans("501", "Optimal Steam flow (Loose): %s L/t"), "" + EnumChatFormatting.GOLD + aOptFlowLoose + EnumChatFormatting.DARK_GRAY));
+ aList.add(tOffset + 4, EnumChatFormatting.GRAY + String.format(GT_Utility.trans("500", "Turbine Efficiency (Loose): %s"), "" + EnumChatFormatting.BLUE + aBaseEff/100f) + EnumChatFormatting.DARK_GRAY);
+ aList.add(tOffset + 5, EnumChatFormatting.GRAY + String.format(GT_Utility.trans("501", "Optimal Steam flow (Loose): %s L/t"), "" + EnumChatFormatting.GOLD + aOptFlowLoose + EnumChatFormatting.DARK_GRAY));
}
- aList.add(tOffset + 6, EnumChatFormatting.WHITE + String.format(trans("007", "Optimal Gas flow(EU burnvalue per tick): %sEU/t"), "" + EnumChatFormatting.GOLD + Math.max(Float.MIN_NORMAL, tStats.getSpeedMultiplier() * getPrimaryMaterial(aStack).mToolSpeed * 50) + EnumChatFormatting.GRAY));
- aList.add(tOffset + 7, EnumChatFormatting.WHITE + String.format(trans("008", "Optimal Plasma flow(Plasma energyvalue per tick): %sEU/t"), "" + EnumChatFormatting.GOLD + Math.max(Float.MIN_NORMAL, tStats.getSpeedMultiplier() * getPrimaryMaterial(aStack).mToolSpeed * 2000) + EnumChatFormatting.GRAY));
+ aList.add(tOffset + 6, EnumChatFormatting.WHITE + String.format(GT_Utility.trans("007", "Optimal Gas flow(EU burnvalue per tick): %sEU/t"), "" + EnumChatFormatting.GOLD + Math.max(Float.MIN_NORMAL, tStats.getSpeedMultiplier() * getPrimaryMaterial(aStack).mToolSpeed * 50) + EnumChatFormatting.GRAY));
+ aList.add(tOffset + 7, EnumChatFormatting.WHITE + String.format(GT_Utility.trans("008", "Optimal Plasma flow(Plasma energyvalue per tick): %sEU/t"), "" + EnumChatFormatting.GOLD + Math.max(Float.MIN_NORMAL, tStats.getSpeedMultiplier() * getPrimaryMaterial(aStack).mToolSpeed * 2000) + EnumChatFormatting.GRAY));
} else {
- aList.add(tOffset + 0, EnumChatFormatting.WHITE + String.format(trans("001", "Durability: %s/%s"), "" + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " ", " " + tMaxDamage) + EnumChatFormatting.GRAY);
- aList.add(tOffset + 1, EnumChatFormatting.WHITE + String.format(trans("002", "%s lvl %s"), tMaterial.mLocalizedName + EnumChatFormatting.YELLOW, "" + getHarvestLevel(aStack, "")) + EnumChatFormatting.GRAY);
- aList.add(tOffset + 2, EnumChatFormatting.WHITE + String.format(trans("003", "Attack Damage: %s"), "" + EnumChatFormatting.BLUE + getToolCombatDamage(aStack)) + EnumChatFormatting.GRAY);
- aList.add(tOffset + 3, EnumChatFormatting.WHITE + String.format(trans("004", "Mining Speed: %s"), "" + EnumChatFormatting.GOLD + Math.max(Float.MIN_NORMAL, tStats.getSpeedMultiplier() * getPrimaryMaterial(aStack).mToolSpeed)) + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 0, EnumChatFormatting.WHITE + String.format(GT_Utility.trans("001", "Durability: %s/%s"), "" + EnumChatFormatting.GREEN + (tMaxDamage - getToolDamage(aStack)) + " ", " " + tMaxDamage) + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 1, EnumChatFormatting.WHITE + String.format(GT_Utility.trans("002", "%s lvl %s"), tMaterial.mLocalizedName + EnumChatFormatting.YELLOW, "" + getHarvestLevel(aStack, "")) + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 2, EnumChatFormatting.WHITE + String.format(GT_Utility.trans("003", "Attack Damage: %s"), "" + EnumChatFormatting.BLUE + getToolCombatDamage(aStack)) + EnumChatFormatting.GRAY);
+ aList.add(tOffset + 3, EnumChatFormatting.WHITE + String.format(GT_Utility.trans("004", "Mining Speed: %s"), "" + EnumChatFormatting.GOLD + Math.max(Float.MIN_NORMAL, tStats.getSpeedMultiplier() * getPrimaryMaterial(aStack).mToolSpeed)) + EnumChatFormatting.GRAY);
NBTTagCompound aNBT = aStack.getTagCompound();
if (aNBT != null) {
aNBT = aNBT.getCompoundTag("GT.ToolStats");
diff --git a/src/main/java/gregtech/api/items/GT_RadioactiveCell_Item.java b/src/main/java/gregtech/api/items/GT_RadioactiveCell_Item.java
index 3bdaf22f37..aad079beb5 100644
--- a/src/main/java/gregtech/api/items/GT_RadioactiveCell_Item.java
+++ b/src/main/java/gregtech/api/items/GT_RadioactiveCell_Item.java
@@ -1,5 +1,6 @@
package gregtech.api.items;
+import gregtech.api.util.GT_Utility;
import gregtech.common.items.GT_DepletetCell_Item;
import ic2.api.item.IBoxable;
import ic2.core.util.StackUtil;
@@ -154,7 +155,7 @@ public class GT_RadioactiveCell_Item
default: color2 = EnumChatFormatting.DARK_GRAY; break;
}
EnumChatFormatting color1 = this instanceof GT_DepletetCell_Item ? color2 = EnumChatFormatting.DARK_GRAY : EnumChatFormatting.WHITE;
- aList.add(color1 + String.format(trans("001", "Durability: %s/%s"), "" + color2 + (this.maxDmg - getDurabilityOfStack(aStack)) + color1, "" + this.maxDmg));
+ aList.add(color1 + String.format(GT_Utility.trans("001", "Durability: %s/%s"), "" + color2 + (this.maxDmg - getDurabilityOfStack(aStack)) + color1, "" + this.maxDmg));
}
@Override
diff --git a/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java b/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java
index e0125ae50a..338724cf20 100644
--- a/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java
+++ b/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java
@@ -807,7 +807,7 @@ public class BaseMetaPipeEntity extends CoverableGregTechTileEntity implements I
if (GT_ModHandler.damageOrDechargeItem(tCurrentItem, 1, 1000, aPlayer)) {
if (mWorks) disableWorking();
else enableWorking();
- GT_Utility.sendChatToPlayer(aPlayer, trans("090","Machine Processing: ") + (isAllowedToWork() ? trans("088","Enabled") : trans("087","Disabled")));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("090","Machine Processing: ") + (isAllowedToWork() ? GT_Utility.trans("088","Enabled") : GT_Utility.trans("087","Disabled")));
GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(101), 1.0F, -1, xCoord, yCoord, zCoord);
}
return true;
@@ -828,7 +828,7 @@ public class BaseMetaPipeEntity extends CoverableGregTechTileEntity implements I
GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(103), 1.0F, -1, xCoord, yCoord, zCoord);
} else if (GT_ModHandler.useSolderingIron(tCurrentItem, aPlayer)) {
mStrongRedstone ^= (1 << tSide);
- GT_Utility.sendChatToPlayer(aPlayer, trans("091","Redstone Output at Side ") + tSide + trans("092"," set to: ") + ((mStrongRedstone & (1 << tSide)) != 0 ? trans("093","Strong") : trans("094","Weak")));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("091","Redstone Output at Side ") + tSide + GT_Utility.trans("092"," set to: ") + ((mStrongRedstone & (1 << tSide)) != 0 ? GT_Utility.trans("093","Strong") : GT_Utility.trans("094","Weak")));
GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(103), 3.0F, -1, xCoord, yCoord, zCoord);
issueBlockUpdate();
}
diff --git a/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java b/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java
index 562a566b2b..222fe6a8fb 100644
--- a/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java
+++ b/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java
@@ -1354,7 +1354,7 @@ public class BaseMetaTileEntity extends CoverableGregTechTileEntity implements I
if (GT_ModHandler.damageOrDechargeItem(tCurrentItem, 1, 1000, aPlayer)) {
mInputDisabled = !mInputDisabled;
if (mInputDisabled) mOutputDisabled = !mOutputDisabled;
- GT_Utility.sendChatToPlayer(aPlayer, trans("086","Auto-Input: ") + (mInputDisabled ? trans("087","Disabled") : trans("088","Enabled") + trans("089"," Auto-Output: ") + (mOutputDisabled ? trans("087","Disabled") : trans("088","Enabled"))));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("086","Auto-Input: ") + (mInputDisabled ? GT_Utility.trans("087","Disabled") : GT_Utility.trans("088","Enabled") + GT_Utility.trans("089"," Auto-Output: ") + (mOutputDisabled ? GT_Utility.trans("087","Disabled") : GT_Utility.trans("088","Enabled"))));
GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(1), 1.0F, -1, xCoord, yCoord, zCoord);
}
return true;
@@ -1365,7 +1365,7 @@ public class BaseMetaTileEntity extends CoverableGregTechTileEntity implements I
if (mWorks) disableWorking();
else enableWorking();
{
- String tChat = trans("090", "Machine Processing: ") + (isAllowedToWork() ? trans("088", "Enabled") : trans("087", "Disabled"));
+ String tChat = GT_Utility.trans("090", "Machine Processing: ") + (isAllowedToWork() ? GT_Utility.trans("088", "Enabled") : GT_Utility.trans("087", "Disabled"));
if (getMetaTileEntity() != null && getMetaTileEntity().hasAlternativeModeText())
tChat = getMetaTileEntity().getAlternativeModeText();
GT_Utility.sendChatToPlayer(aPlayer, tChat);
@@ -1382,7 +1382,7 @@ public class BaseMetaTileEntity extends CoverableGregTechTileEntity implements I
GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(103), 1.0F, -1, xCoord, yCoord, zCoord);
} else if (GT_ModHandler.useSolderingIron(tCurrentItem, aPlayer)) {
mStrongRedstone ^= (1 << tSide);
- GT_Utility.sendChatToPlayer(aPlayer, trans("091","Redstone Output at Side ") + tSide + trans("092"," set to: ") + ((mStrongRedstone & (1 << tSide)) != 0 ? trans("093","Strong") : trans("094","Weak")));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("091","Redstone Output at Side ") + tSide + GT_Utility.trans("092"," set to: ") + ((mStrongRedstone & (1 << tSide)) != 0 ? GT_Utility.trans("093","Strong") : GT_Utility.trans("094","Weak")));
GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(103), 3.0F, -1, xCoord, yCoord, zCoord);
issueBlockUpdate();
}
diff --git a/src/main/java/gregtech/api/metatileentity/BaseTileEntity.java b/src/main/java/gregtech/api/metatileentity/BaseTileEntity.java
index dcaa98f120..7b05b582ae 100644
--- a/src/main/java/gregtech/api/metatileentity/BaseTileEntity.java
+++ b/src/main/java/gregtech/api/metatileentity/BaseTileEntity.java
@@ -468,9 +468,10 @@ public abstract class BaseTileEntity extends TileEntity implements IHasWorldObje
@Override
public void markDirty() {/* Do not do the super Function */}
-
+
+ @Deprecated
public String trans(String aKey, String aEnglish){
- return GT_LanguageManager.addStringLocalization("Interaction_DESCRIPTION_Index_"+aKey, aEnglish, false);
+ return GT_Utility.trans(aKey, aEnglish);
}
/*
diff --git a/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java b/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java
index a04a53f8ca..7d4fd38b8b 100644
--- a/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java
+++ b/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java
@@ -757,8 +757,9 @@ public abstract class MetaPipeEntity implements IMetaTileEntity, IConnectable {
return "";
}
+ @Deprecated
public String trans(String aKey, String aEnglish){
- return GT_LanguageManager.addStringLocalization("Interaction_DESCRIPTION_Index_"+aKey, aEnglish, false);
+ return GT_Utility.trans(aKey, aEnglish);
}
private boolean connectableColor(TileEntity tTileEntity) {
diff --git a/src/main/java/gregtech/api/metatileentity/MetaTileEntity.java b/src/main/java/gregtech/api/metatileentity/MetaTileEntity.java
index 068c02297e..31b008095c 100644
--- a/src/main/java/gregtech/api/metatileentity/MetaTileEntity.java
+++ b/src/main/java/gregtech/api/metatileentity/MetaTileEntity.java
@@ -946,9 +946,10 @@ public abstract class MetaTileEntity implements IMetaTileEntity {
public boolean allowGeneralRedstoneOutput(){
return false;
}
-
+
+ @Deprecated
public String trans(String aKey, String aEnglish){
- return GT_LanguageManager.addStringLocalization("Interaction_DESCRIPTION_Index_"+aKey, aEnglish, false);
+ return GT_Utility.trans(aKey, aEnglish);
}
@Override
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java
index 8666f609b6..788753f0cc 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java
@@ -218,10 +218,10 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
if (GT_Mod.gregtechproxy.gt6Cable && GT_ModHandler.damageOrDechargeItem(aPlayer.inventory.getCurrentItem(), 1, 500, aPlayer)) {
if(isConnectedAtSide(aWrenchingSide)) {
disconnect(aWrenchingSide);
- GT_Utility.sendChatToPlayer(aPlayer, trans("215", "Disconnected"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("215", "Disconnected"));
}else if(!GT_Mod.gregtechproxy.costlyCableConnection){
if (connect(aWrenchingSide) > 0)
- GT_Utility.sendChatToPlayer(aPlayer, trans("214", "Connected"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("214", "Connected"));
}
return true;
}
@@ -233,10 +233,10 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
if (GT_Mod.gregtechproxy.gt6Cable && GT_ModHandler.damageOrDechargeItem(aPlayer.inventory.getCurrentItem(), 1, 500, aPlayer)) {
if (isConnectedAtSide(aWrenchingSide)) {
disconnect(aWrenchingSide);
- GT_Utility.sendChatToPlayer(aPlayer, trans("215", "Disconnected"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("215", "Disconnected"));
} else if (!GT_Mod.gregtechproxy.costlyCableConnection || GT_ModHandler.consumeSolderingMaterial(aPlayer)) {
if (connect(aWrenchingSide) > 0)
- GT_Utility.sendChatToPlayer(aPlayer, trans("214", "Connected"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("214", "Connected"));
}
return true;
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java
index 8cce529050..bf87c03d79 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java
@@ -392,20 +392,20 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
if (aPlayer.isSneaking()) {
if (isInputDisabledAtSide(tSide)) {
mDisableInput &= ~tMask;
- GT_Utility.sendChatToPlayer(aPlayer, trans("212", "Input enabled"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("212", "Input enabled"));
if (!isConnectedAtSide(tSide))
connect(tSide);
} else {
mDisableInput |= tMask;
- GT_Utility.sendChatToPlayer(aPlayer, trans("213", "Input disabled"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("213", "Input disabled"));
}
} else {
if (!isConnectedAtSide(tSide)) {
if (connect(tSide) > 0)
- GT_Utility.sendChatToPlayer(aPlayer, trans("214", "Connected"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("214", "Connected"));
} else {
disconnect(tSide);
- GT_Utility.sendChatToPlayer(aPlayer, trans("215", "Disconnected"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("215", "Disconnected"));
}
}
return true;
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java
index e316a44c80..db4f5b7603 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java
@@ -197,10 +197,10 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE
byte tSide = GT_Utility.determineWrenchingSide(aSide, aX, aY, aZ);
if (isConnectedAtSide(tSide)) {
disconnect(tSide);
- GT_Utility.sendChatToPlayer(aPlayer, trans("215", "Disconnected"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("215", "Disconnected"));
} else {
if (connect(tSide) > 0)
- GT_Utility.sendChatToPlayer(aPlayer, trans("214", "Connected"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("214", "Connected"));
}
return true;
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java
index 6cdbe77526..ef492950a1 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java
@@ -11,8 +11,10 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.objects.GT_ItemStack;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_CoverBehaviorBase;
+import gregtech.common.power.BasicMachineEUPower;
import gregtech.api.util.GT_Log;
import gregtech.api.util.GT_OreDictUnificator;
+import gregtech.common.power.Power;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
import gregtech.api.util.GT_Utility;
@@ -67,6 +69,7 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
public int mMainFacing = -1, mProgresstime = 0, mMaxProgresstime = 0, mEUt = 0, mOutputBlocked = 0;
public FluidStack mOutputFluid;
public String mGUIName, mNEIName;
+ private final Power mPower;
@Deprecated
@@ -101,7 +104,9 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
mAmperage = aAmperage;
mGUIName = aGUIName;
mNEIName = aNEIName;
+ mPower = buildPower();
}
+
public GT_MetaTileEntity_BasicMachine(int aID, String aName, String aNameRegional, int aTier, int aAmperage, String[] aDescription, int aInputSlotCount, int aOutputSlotCount, String aGUIName, String aNEIName, ITexture... aOverlays) {
super(aID, aName, aNameRegional, aTier, OTHER_SLOT_COUNT + aInputSlotCount + aOutputSlotCount + 1, aDescription, aOverlays);
mInputSlotCount = Math.max(0, aInputSlotCount);
@@ -109,6 +114,7 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
mAmperage = aAmperage;
mGUIName = aGUIName;
mNEIName = aNEIName;
+ mPower = buildPower();
}
public GT_MetaTileEntity_BasicMachine(String aName, int aTier, int aAmperage, String aDescription, ITexture[][][] aTextures, int aInputSlotCount, int aOutputSlotCount, String aGUIName, String aNEIName) {
super(aName, aTier, OTHER_SLOT_COUNT + aInputSlotCount + aOutputSlotCount + 1, aDescription, aTextures);
@@ -117,6 +123,7 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
mAmperage = aAmperage;
mGUIName = aGUIName;
mNEIName = aNEIName;
+ mPower = buildPower();
}
public GT_MetaTileEntity_BasicMachine(String aName, int aTier, int aAmperage, String[] aDescription, ITexture[][][] aTextures, int aInputSlotCount, int aOutputSlotCount, String aGUIName, String aNEIName) {
@@ -126,6 +133,14 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
mAmperage = aAmperage;
mGUIName = aGUIName;
mNEIName = aNEIName;
+ mPower = buildPower();
+ }
+
+ /**
+ * To be called by the constructor to initialize this instance's Power
+ */
+ protected Power buildPower() {
+ return new BasicMachineEUPower(mTier, mAmperage);
}
protected boolean isValidMainFacing(byte aSide) {
@@ -546,7 +561,7 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
if (doesAutoOutput() && !isOutputEmpty() && aBaseMetaTileEntity.getFrontFacing() != mMainFacing && (tSucceeded || mOutputBlocked % 300 == 1 || aBaseMetaTileEntity.hasInventoryBeenModified() || aTick % 600 == 0)) {
TileEntity tTileEntity2 = aBaseMetaTileEntity.getTileEntityAtSide(aBaseMetaTileEntity.getFrontFacing());
long tStoredEnergy = aBaseMetaTileEntity.getUniversalEnergyStored();
- int tMaxStacks = (int)(tStoredEnergy/64l);
+ int tMaxStacks = (int)(tStoredEnergy/64L);
if (tMaxStacks > mOutputItems.length)
tMaxStacks = mOutputItems.length;
@@ -641,42 +656,9 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
* @param aDuration - recipe Duration
*/
protected void calculateOverclockedNess(int aEUt, int aDuration) {
- if(mTier==0){
- //Long time calculation
- long xMaxProgresstime = ((long)aDuration)<<1;
- if(xMaxProgresstime>Integer.MAX_VALUE-1){
- //make impossible if too long
- mEUt=Integer.MAX_VALUE-1;
- mMaxProgresstime=Integer.MAX_VALUE-1;
- }else{
- mEUt=aEUt>>2;
- mMaxProgresstime=(int)xMaxProgresstime;
- }
- }else{
- //Long EUt calculation
- long xEUt=aEUt;
- //Isnt too low EUt check?
- long tempEUt = Math.max(xEUt, V[1]);
-
- mMaxProgresstime = aDuration;
-
- while (tempEUt <= V[mTier -1] * (long)mAmperage) {
- tempEUt<<=2;//this actually controls overclocking
- //xEUt *= 4;//this is effect of everclocking
- mMaxProgresstime>>=1;//this is effect of overclocking
- xEUt = mMaxProgresstime==0 ? xEUt>>1 : xEUt<<2;//U know, if the time is less than 1 tick make the machine use 2x less power
- }
- if(xEUt>Integer.MAX_VALUE-1){
- mEUt = Integer.MAX_VALUE-1;
- mMaxProgresstime = Integer.MAX_VALUE-1;
- }else{
- mEUt = (int)xEUt;
- if(mEUt==0)
- mEUt = 1;
- if(mMaxProgresstime==0)
- mMaxProgresstime = 1;//set time to 1 tick
- }
- }
+ mPower.computePowerUsageAndDuration(aEUt, aDuration);
+ mEUt = mPower.getEuPerTick();
+ mMaxProgresstime = mPower.getDurationTicks();
}
protected ItemStack getSpecialSlot() {
@@ -843,7 +825,7 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
GT_Utility.sendChatToPlayer(aPlayer, StatCollector.translateToLocal("GT5U.hatch.disableFilter." + mDisableFilter));
} else {
mAllowInputFromOutputSide = !mAllowInputFromOutputSide;
- GT_Utility.sendChatToPlayer(aPlayer, mAllowInputFromOutputSide ? trans("095", "Input from Output Side allowed") : trans("096", "Input from Output Side forbidden"));
+ GT_Utility.sendChatToPlayer(aPlayer, mAllowInputFromOutputSide ? GT_Utility.trans("095", "Input from Output Side allowed") : GT_Utility.trans("096", "Input from Output Side forbidden"));
}
}
}
@@ -1059,7 +1041,7 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
@Override
public void getWailaBody(ItemStack itemStack, List<String> currenttip, IWailaDataAccessor accessor, IWailaConfigHandler config) {
final NBTTagCompound tag = accessor.getNBTData();
-
+
currenttip.add(String.format("Progress: %d s / %d s", tag.getInteger("progressSingleBlock"), tag.getInteger("maxProgressSingleBlock")));
super.getWailaBody(itemStack, currenttip, accessor, config);
}
@@ -1071,4 +1053,8 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B
tag.setInteger("progressSingleBlock", mProgresstime / 20);
tag.setInteger("maxProgressSingleBlock", mMaxProgresstime / 20);
}
+
+ public Power getPower() {
+ return mPower;
+ }
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Bronze.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Bronze.java
index 204156f3ab..02e94a7ea9 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Bronze.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Bronze.java
@@ -7,6 +7,9 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.objects.GT_ItemStack;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GT_Log;
+import gregtech.common.power.Power;
+import gregtech.api.util.GT_Recipe;
+import gregtech.common.power.SteamPower;
import gregtech.api.util.GT_Utility;
import gregtech.api.util.WorldSpawnedEventBuilder;
import net.minecraft.entity.EntityLivingBase;
@@ -33,25 +36,28 @@ import static gregtech.api.objects.XSTR.XSTR_INSTANCE;
* Extend this class to make a simple Machine
*/
public abstract class GT_MetaTileEntity_BasicMachine_Bronze extends GT_MetaTileEntity_BasicMachine {
- /*
- @Override
- public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GT_MetaTileEntity_BasicMachine_Bronze(mTier, mDescription, mTextures);
- }
- */
private static final int NEEDS_STEAM_VENTING = 64;
public boolean mNeedsSteamVenting = false;
- public GT_MetaTileEntity_BasicMachine_Bronze(int aID, String aName, String aNameRegional, String aDescription, int aInputSlotCount, int aOutputSlotCount, boolean aBricked) {
- super(aID, aName, aNameRegional, aBricked ? 1 : 0, 0, aDescription, aInputSlotCount, aOutputSlotCount, "", "");
+ public GT_MetaTileEntity_BasicMachine_Bronze(int aID, String aName, String aNameRegional, String aDescription, int aInputSlotCount, int aOutputSlotCount, boolean aHighPressure) {
+ super(aID, aName, aNameRegional, aHighPressure ? 2 : 1, 0, aDescription, aInputSlotCount, aOutputSlotCount, "", "");
}
- public GT_MetaTileEntity_BasicMachine_Bronze(String aName, String aDescription, ITexture[][][] aTextures, int aInputSlotCount, int aOutputSlotCount, boolean aBricked) {
- super(aName, aBricked ? 1 : 0, 0, aDescription, aTextures, aInputSlotCount, aOutputSlotCount, "", "");
+ public GT_MetaTileEntity_BasicMachine_Bronze(String aName, String aDescription, ITexture[][][] aTextures, int aInputSlotCount, int aOutputSlotCount, boolean aHighPressure) {
+ super(aName, aHighPressure ? 2 : 1, 0, aDescription, aTextures, aInputSlotCount, aOutputSlotCount, "", "");
}
- public GT_MetaTileEntity_BasicMachine_Bronze(String aName, String[] aDescription, ITexture[][][] aTextures, int aInputSlotCount, int aOutputSlotCount, boolean aBricked) {
- super(aName, aBricked ? 1 : 0, 0, aDescription, aTextures, aInputSlotCount, aOutputSlotCount, "", "");
+ public GT_MetaTileEntity_BasicMachine_Bronze(String aName, String[] aDescription, ITexture[][][] aTextures, int aInputSlotCount, int aOutputSlotCount, boolean aHighPressure) {
+ super(aName, aHighPressure ? 2 : 1, 0, aDescription, aTextures, aInputSlotCount, aOutputSlotCount, "", "");
+ }
+
+ protected boolean isBricked() {
+ return false;
+ }
+
+ @Override
+ public Power buildPower() {
+ return new SteamPower(mTier, 1, 2);
}
@Override
@@ -153,6 +159,17 @@ public abstract class GT_MetaTileEntity_BasicMachine_Bronze extends GT_MetaTileE
}
@Override
+ public int checkRecipe() {
+ GT_Recipe tRecipe = getRecipeList().findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[mTier], null, getAllInputs());
+ if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) {
+ this.mOutputItems[0] = tRecipe.getOutput(0);
+ calculateOverclockedNess(tRecipe);
+ return 2;
+ }
+ return 0;
+ }
+
+ @Override
public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
super.onPostTick(aBaseMetaTileEntity, aTick);
// Super already zeroed out setErrorDisplayID, add additional error codes here.
@@ -199,76 +216,76 @@ public abstract class GT_MetaTileEntity_BasicMachine_Bronze extends GT_MetaTileE
}
public float getSteamDamage() {
- return 6.0F;
+ return 6.0F * mTier;
}
@Override
public ITexture[] getSideFacingActive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_BRONZEBRICKS_SIDE : MACHINE_BRONZE_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_BRONZEBRICKS_SIDE : MACHINE_BRONZE_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
}
@Override
public ITexture[] getSideFacingInactive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_BRONZEBRICKS_SIDE : MACHINE_BRONZE_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_BRONZEBRICKS_SIDE : MACHINE_BRONZE_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
}
@Override
public ITexture[] getFrontFacingActive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_BRONZEBRICKS_SIDE : MACHINE_BRONZE_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_BRONZEBRICKS_SIDE : MACHINE_BRONZE_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
}
@Override
public ITexture[] getFrontFacingInactive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_BRONZEBRICKS_SIDE : MACHINE_BRONZE_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_BRONZEBRICKS_SIDE : MACHINE_BRONZE_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
}
@Override
public ITexture[] getTopFacingActive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_BRONZEBRICKS_TOP : MACHINE_BRONZE_TOP, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_BRONZEBRICKS_TOP : MACHINE_BRONZE_TOP, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
}
@Override
public ITexture[] getTopFacingInactive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_BRONZEBRICKS_TOP : MACHINE_BRONZE_TOP, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_BRONZEBRICKS_TOP : MACHINE_BRONZE_TOP, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
}
@Override
public ITexture[] getBottomFacingActive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_BRONZEBRICKS_BOTTOM : MACHINE_BRONZE_BOTTOM, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_BRONZEBRICKS_BOTTOM : MACHINE_BRONZE_BOTTOM, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
}
@Override
public ITexture[] getBottomFacingInactive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_BRONZEBRICKS_BOTTOM : MACHINE_BRONZE_BOTTOM, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_BRONZEBRICKS_BOTTOM : MACHINE_BRONZE_BOTTOM, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
}
@Override
public ITexture[] getBottomFacingPipeActive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_BRONZEBRICKS_BOTTOM : MACHINE_BRONZE_BOTTOM, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_BRONZEBRICKS_BOTTOM : MACHINE_BRONZE_BOTTOM, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
}
@Override
public ITexture[] getBottomFacingPipeInactive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_BRONZEBRICKS_BOTTOM : MACHINE_BRONZE_BOTTOM, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_BRONZEBRICKS_BOTTOM : MACHINE_BRONZE_BOTTOM, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
}
@Override
public ITexture[] getTopFacingPipeActive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_BRONZEBRICKS_TOP : MACHINE_BRONZE_TOP, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_BRONZEBRICKS_TOP : MACHINE_BRONZE_TOP, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
}
@Override
public ITexture[] getTopFacingPipeInactive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_BRONZEBRICKS_TOP : MACHINE_BRONZE_TOP, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_BRONZEBRICKS_TOP : MACHINE_BRONZE_TOP, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
}
@Override
public ITexture[] getSideFacingPipeActive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_BRONZEBRICKS_SIDE : MACHINE_BRONZE_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_BRONZEBRICKS_SIDE : MACHINE_BRONZE_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
}
@Override
public ITexture[] getSideFacingPipeInactive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_BRONZEBRICKS_SIDE : MACHINE_BRONZE_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_BRONZEBRICKS_SIDE : MACHINE_BRONZE_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
}
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Steel.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Steel.java
index 20a3758324..a58cf6345d 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Steel.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Steel.java
@@ -3,6 +3,8 @@ package gregtech.api.metatileentity.implementations;
import gregtech.api.enums.Dyes;
import gregtech.api.interfaces.ITexture;
import gregtech.api.render.TextureFactory;
+import gregtech.common.power.Power;
+import gregtech.common.power.SteamPower;
import static gregtech.api.enums.Textures.BlockIcons.MACHINE_STEELBRICKS_BOTTOM;
import static gregtech.api.enums.Textures.BlockIcons.MACHINE_STEELBRICKS_SIDE;
@@ -20,90 +22,90 @@ import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_PIPE_OUT;
* Extend this class to make a simple Machine
*/
public abstract class GT_MetaTileEntity_BasicMachine_Steel extends GT_MetaTileEntity_BasicMachine_Bronze {
- public GT_MetaTileEntity_BasicMachine_Steel(int aID, String aName, String aNameRegional, String aDescription, int aInputSlotCount, int aOutputSlotCount, boolean aBricked) {
- super(aID, aName, aNameRegional, aDescription, aInputSlotCount, aOutputSlotCount, aBricked);
+ public GT_MetaTileEntity_BasicMachine_Steel(int aID, String aName, String aNameRegional, String aDescription, int aInputSlotCount, int aOutputSlotCount, boolean aHighPressure) {
+ super(aID, aName, aNameRegional, aDescription, aInputSlotCount, aOutputSlotCount, aHighPressure);
}
- public GT_MetaTileEntity_BasicMachine_Steel(String aName, String aDescription, ITexture[][][] aTextures, int aInputSlotCount, int aOutputSlotCount, boolean aBricked) {
- super(aName, aDescription, aTextures, aInputSlotCount, aOutputSlotCount, aBricked);
+ public GT_MetaTileEntity_BasicMachine_Steel(String aName, String aDescription, ITexture[][][] aTextures, int aInputSlotCount, int aOutputSlotCount, boolean aHighPressure) {
+ super(aName, aDescription, aTextures, aInputSlotCount, aOutputSlotCount, aHighPressure);
}
- public GT_MetaTileEntity_BasicMachine_Steel(String aName, String[] aDescription, ITexture[][][] aTextures, int aInputSlotCount, int aOutputSlotCount, boolean aBricked) {
- super(aName, aDescription, aTextures, aInputSlotCount, aOutputSlotCount, aBricked);
+ public GT_MetaTileEntity_BasicMachine_Steel(String aName, String[] aDescription, ITexture[][][] aTextures, int aInputSlotCount, int aOutputSlotCount, boolean aHighPressure) {
+ super(aName, aDescription, aTextures, aInputSlotCount, aOutputSlotCount, aHighPressure);
}
@Override
- public float getSteamDamage() {
- return 12.0F;
+ public Power buildPower() {
+ return new SteamPower(mTier, 2, 1);
}
@Override
public ITexture[] getSideFacingActive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_STEELBRICKS_SIDE : MACHINE_STEEL_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_STEELBRICKS_SIDE : MACHINE_STEEL_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
}
@Override
public ITexture[] getSideFacingInactive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_STEELBRICKS_SIDE : MACHINE_STEEL_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_STEELBRICKS_SIDE : MACHINE_STEEL_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
}
@Override
public ITexture[] getFrontFacingActive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_STEELBRICKS_SIDE : MACHINE_STEEL_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_STEELBRICKS_SIDE : MACHINE_STEEL_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
}
@Override
public ITexture[] getFrontFacingInactive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_STEELBRICKS_SIDE : MACHINE_STEEL_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_STEELBRICKS_SIDE : MACHINE_STEEL_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
}
@Override
public ITexture[] getTopFacingActive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_STEELBRICKS_TOP : MACHINE_STEEL_TOP, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_STEELBRICKS_TOP : MACHINE_STEEL_TOP, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
}
@Override
public ITexture[] getTopFacingInactive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_STEELBRICKS_TOP : MACHINE_STEEL_TOP, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_STEELBRICKS_TOP : MACHINE_STEEL_TOP, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
}
@Override
public ITexture[] getBottomFacingActive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_STEELBRICKS_BOTTOM : MACHINE_STEEL_BOTTOM, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_STEELBRICKS_BOTTOM : MACHINE_STEEL_BOTTOM, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
}
@Override
public ITexture[] getBottomFacingInactive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_STEELBRICKS_BOTTOM : MACHINE_STEEL_BOTTOM, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_STEELBRICKS_BOTTOM : MACHINE_STEEL_BOTTOM, Dyes.getModulation(aColor, Dyes._NULL.mRGBa))};
}
@Override
public ITexture[] getBottomFacingPipeActive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_STEELBRICKS_BOTTOM : MACHINE_STEEL_BOTTOM, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_STEELBRICKS_BOTTOM : MACHINE_STEEL_BOTTOM, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
}
@Override
public ITexture[] getBottomFacingPipeInactive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_STEELBRICKS_BOTTOM : MACHINE_STEEL_BOTTOM, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_STEELBRICKS_BOTTOM : MACHINE_STEEL_BOTTOM, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
}
@Override
public ITexture[] getTopFacingPipeActive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_STEELBRICKS_TOP : MACHINE_STEEL_TOP, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_STEELBRICKS_TOP : MACHINE_STEEL_TOP, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
}
@Override
public ITexture[] getTopFacingPipeInactive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_STEELBRICKS_TOP : MACHINE_STEEL_TOP, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_STEELBRICKS_TOP : MACHINE_STEEL_TOP, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
}
@Override
public ITexture[] getSideFacingPipeActive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_STEELBRICKS_SIDE : MACHINE_STEEL_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_STEELBRICKS_SIDE : MACHINE_STEEL_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
}
@Override
public ITexture[] getSideFacingPipeInactive(byte aColor) {
- return new ITexture[]{TextureFactory.of(mTier == 1 ? MACHINE_STEELBRICKS_SIDE : MACHINE_STEEL_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
+ return new ITexture[]{TextureFactory.of(isBricked() ? MACHINE_STEELBRICKS_SIDE : MACHINE_STEEL_SIDE, Dyes.getModulation(aColor, Dyes._NULL.mRGBa)), TextureFactory.of(OVERLAY_PIPE_OUT)};
}
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Buffer.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Buffer.java
index 1df2dac0f0..a3662b78f3 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Buffer.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Buffer.java
@@ -254,9 +254,9 @@ public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredM
mTargetStackSize = (byte) ((mTargetStackSize + (aPlayer.isSneaking()? -1 : 1)) % 65);
if(mTargetStackSize <0){mTargetStackSize = mMaxStackSize;}
if (mTargetStackSize == 0) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("098","Do not regulate Item Stack Size"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("098","Do not regulate Item Stack Size"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("099","Regulate Item Stack Size to: ") + mTargetStackSize);
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("099","Regulate Item Stack Size to: ") + mTargetStackSize);
}
}
}
@@ -360,7 +360,7 @@ public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredM
if (aPlayer.isSneaking()) {
// I was so proud of all this but I literally just copied code from OutputBus
bSortStacks = !bSortStacks;
- GT_Utility.sendChatToPlayer(aPlayer, trans("200", "Sort mode: " + (bSortStacks ? "Enabled" : "Disabled")));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("200", "Sort mode: " + (bSortStacks ? "Enabled" : "Disabled")));
return true;
}
return super.onSolderingToolRightClick(aSide,aWrenchingSide,aPlayer,aX,aY,aZ);
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java
index 2b7e50519d..3b8ed18e94 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java
@@ -207,11 +207,6 @@ public class GT_MetaTileEntity_Hatch_InputBus extends GT_MetaTileEntity_Hatch {
}
@Override
- public String trans(String aKey, String aEnglish) {
- return GT_LanguageManager.addStringLocalization("Interaction_DESCRIPTION_Index_" + aKey, aEnglish, false);
- }
-
- @Override
public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
return aSide == getBaseMetaTileEntity().getFrontFacing();
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Output.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Output.java
index 02db2aec47..893ae970a6 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Output.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Output.java
@@ -5,7 +5,6 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.render.TextureFactory;
-import gregtech.api.util.GT_LanguageManager;
import gregtech.api.util.GT_Utility;
import gregtech.common.gui.GT_Container_OutputHatch;
import gregtech.common.gui.GT_GUIContainer_OutputHatch;
@@ -214,58 +213,58 @@ public class GT_MetaTileEntity_Hatch_Output extends GT_MetaTileEntity_Hatch {
String inBrackets;
switch (mMode) {
case 0:
- GT_Utility.sendChatToPlayer(aPlayer, trans("108","Outputs misc. Fluids, Steam and Items"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("108","Outputs misc. Fluids, Steam and Items"));
this.setLockedFluidName(null);
break;
case 1:
- GT_Utility.sendChatToPlayer(aPlayer, trans("109","Outputs Steam and Items"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("109","Outputs Steam and Items"));
this.setLockedFluidName(null);
break;
case 2:
- GT_Utility.sendChatToPlayer(aPlayer, trans("110","Outputs Steam and misc. Fluids"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("110","Outputs Steam and misc. Fluids"));
this.setLockedFluidName(null);
break;
case 3:
- GT_Utility.sendChatToPlayer(aPlayer, trans("111","Outputs Steam"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("111","Outputs Steam"));
this.setLockedFluidName(null);
break;
case 4:
- GT_Utility.sendChatToPlayer(aPlayer, trans("112","Outputs misc. Fluids and Items"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("112","Outputs misc. Fluids and Items"));
this.setLockedFluidName(null);
break;
case 5:
- GT_Utility.sendChatToPlayer(aPlayer, trans("113","Outputs only Items"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("113","Outputs only Items"));
this.setLockedFluidName(null);
break;
case 6:
- GT_Utility.sendChatToPlayer(aPlayer, trans("114","Outputs only misc. Fluids"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("114","Outputs only misc. Fluids"));
this.setLockedFluidName(null);
break;
case 7:
- GT_Utility.sendChatToPlayer(aPlayer, trans("115","Outputs nothing"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("115","Outputs nothing"));
this.setLockedFluidName(null);
break;
case 8:
playerThatLockedfluid = aPlayer;
if (mFluid == null) {
this.setLockedFluidName(null);
- inBrackets = trans("115.3","currently none, will be locked to the next that is put in (or use fluid cell to lock)");
+ inBrackets = GT_Utility.trans("115.3","currently none, will be locked to the next that is put in (or use fluid cell to lock)");
} else {
this.setLockedFluidName(this.getDrainableStack().getFluid().getName());
inBrackets = this.getDrainableStack().getLocalizedName();
}
- GT_Utility.sendChatToPlayer(aPlayer, String.format("%s (%s)", trans("151.1", "Outputs items and 1 specific Fluid"), inBrackets));
+ GT_Utility.sendChatToPlayer(aPlayer, String.format("%s (%s)", GT_Utility.trans("151.1", "Outputs items and 1 specific Fluid"), inBrackets));
break;
case 9:
playerThatLockedfluid = aPlayer;
if (mFluid == null) {
this.setLockedFluidName(null);
- inBrackets = trans("115.3","currently none, will be locked to the next that is put in (or use fluid cell to lock)");
+ inBrackets = GT_Utility.trans("115.3","currently none, will be locked to the next that is put in (or use fluid cell to lock)");
} else {
this.setLockedFluidName(this.getDrainableStack().getFluid().getName());
inBrackets = this.getDrainableStack().getLocalizedName();
}
- GT_Utility.sendChatToPlayer(aPlayer, String.format("%s (%s)", trans("151.2", "Outputs 1 specific Fluid"), inBrackets));
+ GT_Utility.sendChatToPlayer(aPlayer, String.format("%s (%s)", GT_Utility.trans("151.2", "Outputs 1 specific Fluid"), inBrackets));
break;
}
}
@@ -283,16 +282,16 @@ public class GT_MetaTileEntity_Hatch_Output extends GT_MetaTileEntity_Hatch {
tFluid = ((IFluidContainerItem)tCurrentItem.getItem()).getFluid(tCurrentItem);
if (tFluid != null) {
if (getLockedFluidName() != null && !getLockedFluidName().equals(tFluid.getFluid().getName())) {
- GT_Utility.sendChatToPlayer(aPlayer, String.format("%s %s", trans("151.3",
+ GT_Utility.sendChatToPlayer(aPlayer, String.format("%s %s", GT_Utility.trans("151.3",
"Hatch is locked to a different fluid. To change the locking, empty it and made it locked to the next fluid with a screwdriver. Currently locked to")
, StatCollector.translateToLocal(tFluid.getUnlocalizedName())));
}
else {
setLockedFluidName(tFluid.getFluid().getName());
if (mMode == 8)
- GT_Utility.sendChatToPlayer(aPlayer, String.format("%s (%s)", trans("151.1", "Outputs items and 1 specific Fluid"), tFluid.getLocalizedName()));
+ GT_Utility.sendChatToPlayer(aPlayer, String.format("%s (%s)", GT_Utility.trans("151.1", "Outputs items and 1 specific Fluid"), tFluid.getLocalizedName()));
else
- GT_Utility.sendChatToPlayer(aPlayer, String.format("%s (%s)", trans("151.2", "Outputs 1 specific Fluid"), tFluid.getLocalizedName()));
+ GT_Utility.sendChatToPlayer(aPlayer, String.format("%s (%s)", GT_Utility.trans("151.2", "Outputs 1 specific Fluid"), tFluid.getLocalizedName()));
}
return true;
}
@@ -310,11 +309,6 @@ public class GT_MetaTileEntity_Hatch_Output extends GT_MetaTileEntity_Hatch {
return super.onRightclick(aBaseMetaTileEntity, aPlayer, aSide, aX, aY, aZ);
}
- @Override
- public String trans(String aKey, String aEnglish){
- return GT_LanguageManager.addStringLocalization("Interaction_DESCRIPTION_Index_"+aKey, aEnglish, false);
- }
-
public boolean outputsSteam() {
return mMode < 4;
}
@@ -348,7 +342,7 @@ public class GT_MetaTileEntity_Hatch_Output extends GT_MetaTileEntity_Hatch {
protected void onEmptyingContainerWhenEmpty() {
if (this.lockedFluidName == null && this.mFluid != null) {
this.setLockedFluidName(this.mFluid.getFluid().getName());
- GT_Utility.sendChatToPlayer(playerThatLockedfluid, String.format(trans("151.4","Sucessfully locked Fluid to %s"), mFluid.getLocalizedName()));
+ GT_Utility.sendChatToPlayer(playerThatLockedfluid, String.format(GT_Utility.trans("151.4","Sucessfully locked Fluid to %s"), mFluid.getLocalizedName()));
}
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java
index 4b6ff53acf..73b37d57fb 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java
@@ -107,9 +107,9 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity {
if (supportsSingleRecipeLocking()) {
mLockedToSingleRecipe = !mLockedToSingleRecipe;
if (mLockedToSingleRecipe) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("219","Single recipe locking enabled. Will lock to next recipe."));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("219","Single recipe locking enabled. Will lock to next recipe."));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("220","Single recipe locking disabled."));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("220","Single recipe locking disabled."));
mSingleRecipeCheck = null;
}
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Transformer.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Transformer.java
index 1d52e3c41d..9989378d84 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Transformer.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Transformer.java
@@ -217,15 +217,15 @@ public class GT_MetaTileEntity_Transformer extends GT_MetaTileEntity_TieredMachi
@Override
public String getAlternativeModeText(){
return
- (getBaseMetaTileEntity().isAllowedToWork() ? trans("145","Step Down, In: ") : trans("146","Step Up, In: ")) +
+ (getBaseMetaTileEntity().isAllowedToWork() ? GT_Utility.trans("145","Step Down, In: ") : GT_Utility.trans("146","Step Up, In: ")) +
maxEUInput() +
- trans("148","V ") +
+ GT_Utility.trans("148","V ") +
maxAmperesIn() +
- trans("147","A, Out: ") +
+ GT_Utility.trans("147","A, Out: ") +
maxEUOutput() +
- trans("148","V ") +
+ GT_Utility.trans("148","V ") +
maxAmperesOut() +
- trans("149","A");
+ GT_Utility.trans("149","A");
}
@Override
diff --git a/src/main/java/gregtech/api/util/GT_Utility.java b/src/main/java/gregtech/api/util/GT_Utility.java
index 742ae656cf..48c1ecc360 100644
--- a/src/main/java/gregtech/api/util/GT_Utility.java
+++ b/src/main/java/gregtech/api/util/GT_Utility.java
@@ -2297,7 +2297,7 @@ public class GT_Utility {
}
public static String trans(String aKey, String aEnglish){
- return GT_LanguageManager.addStringLocalization("Interaction_DESCRIPTION_Index_"+aKey, aEnglish, false);
+ return GT_LanguageManager.addStringLocalization("Interaction_DESCRIPTION_Index_" + aKey, aEnglish, false);
}
/**
diff --git a/src/main/java/gregtech/common/gui/GT_Container_ChestBuffer.java b/src/main/java/gregtech/common/gui/GT_Container_ChestBuffer.java
index 64731c652f..827a7d2d10 100644
--- a/src/main/java/gregtech/common/gui/GT_Container_ChestBuffer.java
+++ b/src/main/java/gregtech/common/gui/GT_Container_ChestBuffer.java
@@ -41,36 +41,36 @@ public class GT_Container_ChestBuffer extends GT_ContainerMetaTile_Machine {
if (aSlotIndex == 27) {
((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bOutput = (!((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bOutput);
if (((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bOutput) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("116","Emit Energy to Outputside"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("116","Emit Energy to Outputside"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("117","Don't emit Energy"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("117","Don't emit Energy"));
}
return null;
}
if (aSlotIndex == 28) {
((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull = (!((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull);
if (((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("118","Emit Redstone if no Slot is free"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("118","Emit Redstone if no Slot is free"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("119","Don't emit Redstone"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("119","Don't emit Redstone"));
}
return null;
}
if (aSlotIndex == 29) {
((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bInvert = (!((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bInvert);
if (((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bInvert) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("120","Invert Redstone"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("120","Invert Redstone"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("121","Don't invert Redstone"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("121","Don't invert Redstone"));
}
return null;
}
if (aSlotIndex == 30) {
((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bStockingMode = (!((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bStockingMode);
if (((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bStockingMode) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("217","Stocking mode. Keeps this many items in destination input slots. This mode can be server unfriendly."));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("217","Stocking mode. Keeps this many items in destination input slots. This mode can be server unfriendly."));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("218", "Transfer size mode. Add exactly this many items in destination input slots as long as there is room."));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("218", "Transfer size mode. Add exactly this many items in destination input slots as long as there is room."));
}
return null;
}
diff --git a/src/main/java/gregtech/common/gui/GT_Container_Filter.java b/src/main/java/gregtech/common/gui/GT_Container_Filter.java
index cc3efaefb7..7ca72b8e3a 100644
--- a/src/main/java/gregtech/common/gui/GT_Container_Filter.java
+++ b/src/main/java/gregtech/common/gui/GT_Container_Filter.java
@@ -72,45 +72,45 @@ public class GT_Container_Filter extends GT_ContainerMetaTile_Machine {
if (aSlotIndex == 18) {
((GT_MetaTileEntity_Filter) this.mTileEntity.getMetaTileEntity()).bOutput = (!((GT_MetaTileEntity_Filter) this.mTileEntity.getMetaTileEntity()).bOutput);
if (((GT_MetaTileEntity_Filter) this.mTileEntity.getMetaTileEntity()).bOutput) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("116","Emit Energy to Outputside"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("116","Emit Energy to Outputside"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("117","Don't emit Energy"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("117","Don't emit Energy"));
}
return null;
}
if (aSlotIndex == 19) {
((GT_MetaTileEntity_Filter) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull = (!((GT_MetaTileEntity_Filter) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull);
if (((GT_MetaTileEntity_Filter) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("122","Emit Redstone if slots contain something"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("122","Emit Redstone if slots contain something"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("123","Don't emit Redstone"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("123","Don't emit Redstone"));
}
return null;
}
if (aSlotIndex == 20) {
((GT_MetaTileEntity_Filter) this.mTileEntity.getMetaTileEntity()).bInvert = (!((GT_MetaTileEntity_Filter) this.mTileEntity.getMetaTileEntity()).bInvert);
if (((GT_MetaTileEntity_Filter) this.mTileEntity.getMetaTileEntity()).bInvert) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("120","Invert Redstone"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("120","Invert Redstone"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("121","Don't invert Redstone"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("121","Don't invert Redstone"));
}
return null;
}
if (aSlotIndex == 21) {
((GT_MetaTileEntity_Filter) this.mTileEntity.getMetaTileEntity()).bInvertFilter = (!((GT_MetaTileEntity_Filter) this.mTileEntity.getMetaTileEntity()).bInvertFilter);
if (((GT_MetaTileEntity_Filter) this.mTileEntity.getMetaTileEntity()).bInvertFilter) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("124","Invert Filter"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("124","Invert Filter"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("125","Don't invert Filter"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("125","Don't invert Filter"));
}
return null;
}
if (aSlotIndex == 22) {
((GT_MetaTileEntity_Filter) this.mTileEntity.getMetaTileEntity()).bIgnoreNBT = (!((GT_MetaTileEntity_Filter) this.mTileEntity.getMetaTileEntity()).bIgnoreNBT);
if (((GT_MetaTileEntity_Filter) this.mTileEntity.getMetaTileEntity()).bIgnoreNBT) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("126","Ignore NBT"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("126","Ignore NBT"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("127","NBT has to match"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("127","NBT has to match"));
}
return null;
}
diff --git a/src/main/java/gregtech/common/gui/GT_Container_ItemDistributor.java b/src/main/java/gregtech/common/gui/GT_Container_ItemDistributor.java
index 0ee3cc1d44..6f3c8fe85c 100644
--- a/src/main/java/gregtech/common/gui/GT_Container_ItemDistributor.java
+++ b/src/main/java/gregtech/common/gui/GT_Container_ItemDistributor.java
@@ -40,27 +40,27 @@ public class GT_Container_ItemDistributor extends GT_ContainerMetaTile_Machine {
if (aSlotIndex == 27) {
((GT_MetaTileEntity_ItemDistributor) this.mTileEntity.getMetaTileEntity()).bOutput = (!((GT_MetaTileEntity_ItemDistributor) this.mTileEntity.getMetaTileEntity()).bOutput);
if (((GT_MetaTileEntity_ItemDistributor) this.mTileEntity.getMetaTileEntity()).bOutput) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("116","Emit Energy to Outputside"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("116","Emit Energy to Outputside"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("117","Don't emit Energy"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("117","Don't emit Energy"));
}
return null;
}
if (aSlotIndex == 28) {
((GT_MetaTileEntity_ItemDistributor) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull = (!((GT_MetaTileEntity_ItemDistributor) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull);
if (((GT_MetaTileEntity_ItemDistributor) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("118","Emit Redstone if no Slot is free"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("118","Emit Redstone if no Slot is free"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("119","Don't emit Redstone"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("119","Don't emit Redstone"));
}
return null;
}
if (aSlotIndex == 29) {
((GT_MetaTileEntity_ItemDistributor) this.mTileEntity.getMetaTileEntity()).bInvert = (!((GT_MetaTileEntity_ItemDistributor) this.mTileEntity.getMetaTileEntity()).bInvert);
if (((GT_MetaTileEntity_ItemDistributor) this.mTileEntity.getMetaTileEntity()).bInvert) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("120","Invert Redstone"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("120","Invert Redstone"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("121","Don't invert Redstone"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("121","Don't invert Redstone"));
}
return null;
}
diff --git a/src/main/java/gregtech/common/gui/GT_Container_OutputHatch.java b/src/main/java/gregtech/common/gui/GT_Container_OutputHatch.java
index 6651d7875a..25179d718e 100644
--- a/src/main/java/gregtech/common/gui/GT_Container_OutputHatch.java
+++ b/src/main/java/gregtech/common/gui/GT_Container_OutputHatch.java
@@ -35,12 +35,12 @@ public class GT_Container_OutputHatch extends GT_Container_BasicTank {
// If player click the locker slot with empty or the same fluid cell, clear the lock fluid
if (tReadyLockFluid == null || (tMode >= 8 && tReadyLockFluid.getFluid().getName().equals(tHatch.getLockedFluidName()))) {
tHatch.setLockedFluidName(null);
- GT_Utility.sendChatToPlayer(aPlayer, trans("300", "Fluid Lock Cleared."));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("300", "Fluid Lock Cleared."));
tHatch.mMode = 0;
}
else {
tHatch.setLockedFluidName(tReadyLockFluid.getFluid().getName());
- GT_Utility.sendChatToPlayer(aPlayer, String.format(trans("151.4", "Sucessfully locked Fluid to %s"), tReadyLockFluid.getLocalizedName()));
+ GT_Utility.sendChatToPlayer(aPlayer, String.format(GT_Utility.trans("151.4", "Sucessfully locked Fluid to %s"), tReadyLockFluid.getLocalizedName()));
tHatch.mMode = 9;
}
}
diff --git a/src/main/java/gregtech/common/gui/GT_Container_Regulator.java b/src/main/java/gregtech/common/gui/GT_Container_Regulator.java
index f50ac2dae3..909e1a04a5 100644
--- a/src/main/java/gregtech/common/gui/GT_Container_Regulator.java
+++ b/src/main/java/gregtech/common/gui/GT_Container_Regulator.java
@@ -72,9 +72,9 @@ public class GT_Container_Regulator extends GT_ContainerMetaTile_Machine {
if (aSlotIndex == 28) {
((GT_MetaTileEntity_Regulator) this.mTileEntity.getMetaTileEntity()).bOutput = (!((GT_MetaTileEntity_Regulator) this.mTileEntity.getMetaTileEntity()).bOutput);
if (((GT_MetaTileEntity_Regulator) this.mTileEntity.getMetaTileEntity()).bOutput) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("116", "Emit Energy to Outputside"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("116", "Emit Energy to Outputside"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("117", "Don't emit Energy"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("117", "Don't emit Energy"));
}
return null;
}
diff --git a/src/main/java/gregtech/common/gui/GT_Container_SuperBuffer.java b/src/main/java/gregtech/common/gui/GT_Container_SuperBuffer.java
index 0b61a0910d..58df63e16a 100644
--- a/src/main/java/gregtech/common/gui/GT_Container_SuperBuffer.java
+++ b/src/main/java/gregtech/common/gui/GT_Container_SuperBuffer.java
@@ -36,36 +36,36 @@ public class GT_Container_SuperBuffer extends GT_ContainerMetaTile_Machine {
if (aSlotIndex == 0) {
((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bOutput = (!((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bOutput);
if (((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bOutput) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("116","Emit Energy to Outputside"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("116","Emit Energy to Outputside"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("117","Don't emit Energy"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("117","Don't emit Energy"));
}
return null;
}
if (aSlotIndex == 1) {
((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull = (!((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull);
if (((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bRedstoneIfFull) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("118","Emit Redstone if no Slot is free"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("118","Emit Redstone if no Slot is free"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("119","Don't emit Redstone"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("119","Don't emit Redstone"));
}
return null;
}
if (aSlotIndex == 2) {
((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bInvert = (!((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bInvert);
if (((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bInvert) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("120","Invert Redstone"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("120","Invert Redstone"));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("121","Don't invert Redstone"));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("121","Don't invert Redstone"));
}
return null;
}
if (aSlotIndex == 3) {
((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bStockingMode = (!((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bStockingMode);
if (((GT_MetaTileEntity_ChestBuffer) this.mTileEntity.getMetaTileEntity()).bStockingMode) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("217","Stocking mode. Keeps this many items in destination input slots. This mode can be server unfriendly."));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("217","Stocking mode. Keeps this many items in destination input slots. This mode can be server unfriendly."));
} else {
- GT_Utility.sendChatToPlayer(aPlayer, trans("218", "Transfer size mode. Add exactly this many items in destination input slots as long as there is room."));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("218", "Transfer size mode. Add exactly this many items in destination input slots as long as there is room."));
}
return null;
}
diff --git a/src/main/java/gregtech/common/gui/GT_GUIContainer_FusionReactor.java b/src/main/java/gregtech/common/gui/GT_GUIContainer_FusionReactor.java
index c1efb6ab58..9d597c7f30 100644
--- a/src/main/java/gregtech/common/gui/GT_GUIContainer_FusionReactor.java
+++ b/src/main/java/gregtech/common/gui/GT_GUIContainer_FusionReactor.java
@@ -4,11 +4,14 @@ import gregtech.api.gui.GT_Container_MultiMachine;
import gregtech.api.gui.GT_GUIContainerMetaTile_Machine;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.util.GT_Utility;
+import gregtech.nei.NEI_TransferRectHost;
import net.minecraft.entity.player.InventoryPlayer;
+import java.awt.Rectangle;
+
import static gregtech.api.enums.GT_Values.RES_PATH_GUI;
-public class GT_GUIContainer_FusionReactor extends GT_GUIContainerMetaTile_Machine {
+public class GT_GUIContainer_FusionReactor extends GT_GUIContainerMetaTile_Machine implements NEI_TransferRectHost {
public String mNEI;
String mName = "";
@@ -56,4 +59,24 @@ public class GT_GUIContainer_FusionReactor extends GT_GUIContainerMetaTile_Machi
drawTexturedModalRect(x + 5, y + 156, 0, 251, Math.min(147, (int) (tScale * 148)), 5);
}
}
+
+ @Override
+ public String getNeiTransferRectString() {
+ return mNEI;
+ }
+
+ @Override
+ public String getNeiTransferRectTooltip() {
+ return "Recipes";
+ }
+
+ @Override
+ public Object[] getNeiTransferRectArgs() {
+ return new Object[0];
+ }
+
+ @Override
+ public Rectangle getNeiTransferRect() {
+ return new Rectangle(149, -7, 18, 18);
+ }
}
diff --git a/src/main/java/gregtech/common/gui/GT_GUIContainer_PrimitiveBlastFurnace.java b/src/main/java/gregtech/common/gui/GT_GUIContainer_PrimitiveBlastFurnace.java
index d804b3858e..08ee0d125c 100644
--- a/src/main/java/gregtech/common/gui/GT_GUIContainer_PrimitiveBlastFurnace.java
+++ b/src/main/java/gregtech/common/gui/GT_GUIContainer_PrimitiveBlastFurnace.java
@@ -4,9 +4,14 @@ import gregtech.api.gui.GT_GUIContainerMetaTile_Machine;
import gregtech.api.gui.widgets.GT_GuiIcon;
import gregtech.api.gui.widgets.GT_GuiTabLine.GT_GuiTabIconSet;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import gregtech.nei.NEI_TransferRectHost;
import net.minecraft.entity.player.InventoryPlayer;
-public class GT_GUIContainer_PrimitiveBlastFurnace extends GT_GUIContainerMetaTile_Machine { private String name;
+import java.awt.*;
+
+public class GT_GUIContainer_PrimitiveBlastFurnace extends GT_GUIContainerMetaTile_Machine
+ implements NEI_TransferRectHost {
+ private String name;
public String mNEI;
private final static GT_GuiTabIconSet TAB_ICONSET = new GT_GuiTabIconSet(
GT_GuiIcon.TAB_NORMAL_BRICK,
@@ -43,4 +48,24 @@ public class GT_GUIContainer_PrimitiveBlastFurnace extends GT_GUIContainerMetaTi
protected GT_GuiTabIconSet getTabBackground() {
return TAB_ICONSET;
}
+
+ @Override
+ public String getNeiTransferRectString() {
+ return mNEI;
+ }
+
+ @Override
+ public String getNeiTransferRectTooltip() {
+ return "Recipes";
+ }
+
+ @Override
+ public Object[] getNeiTransferRectArgs() {
+ return new Object[0];
+ }
+
+ @Override
+ public Rectangle getNeiTransferRect() {
+ return new Rectangle(51, 10, 24, 24);
+ }
}
diff --git a/src/main/java/gregtech/common/items/GT_FluidDisplayItem.java b/src/main/java/gregtech/common/items/GT_FluidDisplayItem.java
index 43186b9621..fb566cbeb7 100644
--- a/src/main/java/gregtech/common/items/GT_FluidDisplayItem.java
+++ b/src/main/java/gregtech/common/items/GT_FluidDisplayItem.java
@@ -52,10 +52,10 @@ public class GT_FluidDisplayItem extends GT_Generic_Item {
if (aNBT != null) {
long tToolTipAmount = aNBT.getLong("mFluidDisplayAmount");
if (tToolTipAmount > 0L) {
- aList.add(EnumChatFormatting.BLUE + String.format(trans("016", "Amount: %s L"), "" + tToolTipAmount) + EnumChatFormatting.GRAY);
+ aList.add(EnumChatFormatting.BLUE + String.format(GT_Utility.trans("016", "Amount: %s L"), "" + tToolTipAmount) + EnumChatFormatting.GRAY);
}
- aList.add(EnumChatFormatting.RED + String.format(trans("017", "Temperature: %s K"), "" + aNBT.getLong("mFluidDisplayHeat")) + EnumChatFormatting.GRAY);
- aList.add(EnumChatFormatting.GREEN + String.format(trans("018", "State: %s"), aNBT.getBoolean("mFluidState") ? "Gas" : "Liquid") + EnumChatFormatting.GRAY);
+ aList.add(EnumChatFormatting.RED + String.format(GT_Utility.trans("017", "Temperature: %s K"), "" + aNBT.getLong("mFluidDisplayHeat")) + EnumChatFormatting.GRAY);
+ aList.add(EnumChatFormatting.GREEN + String.format(GT_Utility.trans("018", "State: %s"), aNBT.getBoolean("mFluidState") ? "Gas" : "Liquid") + EnumChatFormatting.GRAY);
}
}
diff --git a/src/main/java/gregtech/common/items/GT_SensorCard_Item.java b/src/main/java/gregtech/common/items/GT_SensorCard_Item.java
index 852babb52a..d7de747ea7 100644
--- a/src/main/java/gregtech/common/items/GT_SensorCard_Item.java
+++ b/src/main/java/gregtech/common/items/GT_SensorCard_Item.java
@@ -5,6 +5,7 @@ import cpw.mods.fml.relauncher.SideOnly;
import gregtech.api.interfaces.tileentity.IGregTechDeviceInformation;
import gregtech.api.items.GT_Generic_Item;
import gregtech.api.util.GT_LanguageManager;
+import gregtech.api.util.GT_Utility;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
@@ -36,9 +37,9 @@ public class GT_SensorCard_Item extends GT_Generic_Item implements IRemoteSensor
if (aStack != null) {
NBTTagCompound tNBT = aStack.getTagCompound();
if (tNBT == null) {
- aList.add(trans("014", "Missing Coodinates!"));
+ aList.add(GT_Utility.trans("014", "Missing Coodinates!"));
} else {
- aList.add(trans("015", "Device at:"));
+ aList.add(GT_Utility.trans("015", "Device at:"));
aList.add(String.format("x: %d, y: %d, z: %d", tNBT.getInteger("x"), tNBT.getInteger("y"), tNBT.getInteger("z")));
}
}
diff --git a/src/main/java/gregtech/common/items/behaviors/Behaviour_None.java b/src/main/java/gregtech/common/items/behaviors/Behaviour_None.java
index ad037ed13c..def807e0ba 100644
--- a/src/main/java/gregtech/common/items/behaviors/Behaviour_None.java
+++ b/src/main/java/gregtech/common/items/behaviors/Behaviour_None.java
@@ -3,7 +3,7 @@ package gregtech.common.items.behaviors;
import gregtech.api.enums.SubTag;
import gregtech.api.interfaces.IItemBehaviour;
import gregtech.api.items.GT_MetaBase_Item;
-import gregtech.api.util.GT_LanguageManager;
+import gregtech.api.util.GT_Utility;
import net.minecraft.block.BlockDispenser;
import net.minecraft.dispenser.BehaviorDefaultDispenseItem;
import net.minecraft.dispenser.IBlockSource;
@@ -81,8 +81,9 @@ public class Behaviour_None implements IItemBehaviour<GT_MetaBase_Item> {
public EntityArrow getProjectile(GT_MetaBase_Item aItem, SubTag aProjectileType, ItemStack aStack, World aWorld, EntityLivingBase aEntity, float aSpeed) {
return null;
}
-
+
+ @Deprecated
public String trans(String aKey, String aEnglish){
- return GT_LanguageManager.addStringLocalization("Interaction_DESCRIPTION_Index_"+aKey, aEnglish, false);
+ return GT_Utility.trans(aKey, aEnglish);
}
}
diff --git a/src/main/java/gregtech/common/items/behaviors/Behaviour_Prospecting.java b/src/main/java/gregtech/common/items/behaviors/Behaviour_Prospecting.java
index e56bd198b7..3b6474edb9 100644
--- a/src/main/java/gregtech/common/items/behaviors/Behaviour_Prospecting.java
+++ b/src/main/java/gregtech/common/items/behaviors/Behaviour_Prospecting.java
@@ -49,7 +49,7 @@ public class Behaviour_Prospecting extends Behaviour_None {
ItemData tAssotiation = GT_OreDictUnificator.getAssociation(new ItemStack(aBlock, 1, aMeta));
if ((tAssotiation != null) && (tAssotiation.mPrefix.toString().startsWith("ore"))){
- GT_Utility.sendChatToPlayer(aPlayer, trans("100","This is ") + tAssotiation.mMaterial.mMaterial.mDefaultLocalName + trans("101"," Ore."));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("100","This is ") + tAssotiation.mMaterial.mMaterial.mDefaultLocalName + GT_Utility.trans("101"," Ore."));
GT_Utility.sendSoundToPlayers(aWorld, (String) GregTech_API.sSoundList.get(1), 1.0F, -1.0F, aX, aY, aZ);
return true;
}
@@ -76,19 +76,19 @@ public class Behaviour_Prospecting extends Behaviour_None {
tBlock = aWorld.getBlock(tX, tY, tZ);
if (tBlock == Blocks.lava || tBlock == Blocks.flowing_lava) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("102","There is Lava behind this Rock."));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("102","There is Lava behind this Rock."));
break;
}
if (tBlock instanceof BlockLiquid || tBlock instanceof IFluidBlock) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("103","There is a Liquid behind this Rock."));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("103","There is a Liquid behind this Rock."));
break;
}
if (tBlock == Blocks.monster_egg || !GT_Utility.hasBlockHitBox(aWorld, tX, tY, tZ)) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("104","There is an Air Pocket behind this Rock."));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("104","There is an Air Pocket behind this Rock."));
break;
}
if (tBlock != aBlock) {
- if (i < 4) GT_Utility.sendChatToPlayer(aPlayer, trans("105","Material is changing behind this Rock."));
+ if (i < 4) GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("105","Material is changing behind this Rock."));
break;
}
}
@@ -104,7 +104,7 @@ public class Behaviour_Prospecting extends Behaviour_None {
if ((tTileEntity instanceof GT_TileEntity_Ores)) {
Materials tMaterial = GregTech_API.sGeneratedMaterials[(((GT_TileEntity_Ores) tTileEntity).mMetaData % 1000)];
if ((tMaterial != null) && (tMaterial != Materials._NULL)) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("106","Found traces of ") + tMaterial.mDefaultLocalName + trans("101"," Ore."));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("106","Found traces of ") + tMaterial.mDefaultLocalName + GT_Utility.trans("101"," Ore."));
return true;
}
}
@@ -112,12 +112,12 @@ public class Behaviour_Prospecting extends Behaviour_None {
tMetaID = aWorld.getBlockMetadata(tX, tY, tZ);
tAssotiation = GT_OreDictUnificator.getAssociation(new ItemStack(tBlock, 1, tMetaID));
if ((tAssotiation != null) && (tAssotiation.mPrefix.toString().startsWith("ore"))) {
- GT_Utility.sendChatToPlayer(aPlayer, trans("106","Found traces of ") + tAssotiation.mMaterial.mMaterial.mDefaultLocalName + trans("101"," Ore."));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("106","Found traces of ") + tAssotiation.mMaterial.mMaterial.mDefaultLocalName + GT_Utility.trans("101"," Ore."));
return true;
}
}
}
- GT_Utility.sendChatToPlayer(aPlayer, trans("107","No Ores found."));
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("107","No Ores found."));
return true;
}
}
diff --git a/src/main/java/gregtech/common/power/BasicMachineEUPower.java b/src/main/java/gregtech/common/power/BasicMachineEUPower.java
new file mode 100644
index 0000000000..12691ac6d9
--- /dev/null
+++ b/src/main/java/gregtech/common/power/BasicMachineEUPower.java
@@ -0,0 +1,72 @@
+package gregtech.common.power;
+
+import gregtech.api.util.GT_Utility;
+
+import static gregtech.api.enums.GT_Values.V;
+
+public class BasicMachineEUPower extends EUPower{
+ private static final String OC = " (OC)";
+ private boolean wasOverclocked;
+
+ public BasicMachineEUPower(byte tier, int amperage) {
+ super(tier, amperage);
+ }
+
+ @Override
+ public void computePowerUsageAndDuration(int euPerTick, int duration) {
+ super.computePowerUsageAndDuration(euPerTick, duration);
+ if (tier == 0) {
+ //Long time calculation
+ long xMaxProgresstime = ((long) duration) << 1;
+ if (xMaxProgresstime > Integer.MAX_VALUE - 1) {
+ //make impossible if too long
+ recipeEuPerTick = Integer.MAX_VALUE - 1;
+ recipeDuration = Integer.MAX_VALUE - 1;
+ } else {
+ recipeEuPerTick = euPerTick >> 2;
+ recipeDuration = (int) xMaxProgresstime;
+ }
+ } else {
+ //Long EUt calculation
+ long xEUt = euPerTick;
+ //Isnt too low EUt check?
+ long tempEUt = Math.max(xEUt, V[1]);
+
+ recipeDuration = duration;
+
+ while (tempEUt <= V[tier - 1] * (long) amperage) {
+ tempEUt <<= 2;//this actually controls overclocking
+ //xEUt *= 4;//this is effect of everclocking
+ recipeDuration >>= 1;//this is effect of overclocking
+ xEUt = recipeDuration == 0 ? xEUt >> 1 : xEUt << 2;//U know, if the time is less than 1 tick make the machine use 2x less power
+ }
+ if (xEUt > Integer.MAX_VALUE - 1) {
+ recipeEuPerTick = Integer.MAX_VALUE - 1;
+ recipeDuration = Integer.MAX_VALUE - 1;
+ } else {
+ recipeEuPerTick = (int) xEUt;
+ if (recipeEuPerTick == 0)
+ recipeEuPerTick = 1;
+ if (recipeDuration == 0)
+ recipeDuration = 1;//set time to 1 tick
+ }
+ }
+ wasOverclocked = checkIfOverclocked();
+ }
+
+ @Override
+ public String getPowerUsageString() {
+ return decorateWithOverclockLabel(super.getPowerUsageString());
+ }
+
+ private String decorateWithOverclockLabel(String s) {
+ if (wasOverclocked) {
+ s += OC;
+ }
+ return s;
+ }
+
+ private boolean checkIfOverclocked() {
+ return originalVoltage != computeVoltageForEuRate(recipeEuPerTick);
+ }
+}
diff --git a/src/main/java/gregtech/common/power/EUPower.java b/src/main/java/gregtech/common/power/EUPower.java
new file mode 100644
index 0000000000..41ebca3fda
--- /dev/null
+++ b/src/main/java/gregtech/common/power/EUPower.java
@@ -0,0 +1,57 @@
+package gregtech.common.power;
+
+import gregtech.api.enums.GT_Values;
+import gregtech.api.util.GT_Utility;
+import net.minecraft.util.EnumChatFormatting;
+
+public class EUPower extends Power {
+ protected final int amperage;
+ protected int originalVoltage;
+
+ public EUPower(byte tier, int amperage) {
+ super(tier);
+ this.amperage = amperage;
+ }
+
+ @Override
+ // This generic EU Power class has no overclock defined and does no special calculations.
+ public void computePowerUsageAndDuration(int euPerTick, int duration) {
+ originalVoltage = computeVoltageForEuRate(euPerTick);
+ recipeEuPerTick = euPerTick;
+ recipeDuration = duration;
+ }
+
+ @Override
+ public String getTierString() {
+ return GT_Values.TIER_COLORS[tier] + GT_Values.VN[tier] + EnumChatFormatting.RESET;
+ }
+
+ @Override
+ public String getTotalPowerString() {
+ return GT_Utility.formatNumbers((long) recipeDuration * recipeEuPerTick) + " EU";
+ }
+
+ @Override
+ public String getPowerUsageString() {
+ return GT_Utility.formatNumbers(recipeEuPerTick) + " EU/t";
+ }
+
+ @Override
+ public String getVoltageString() {
+ String voltageDescription = GT_Utility.formatNumbers(originalVoltage) + " EU";
+ byte recipeTier = GT_Utility.getTier(originalVoltage);
+ if (recipeTier >= 0 && recipeTier < 16) {
+ voltageDescription += " (" + GT_Values.VN[recipeTier] + ")";
+ }
+ return voltageDescription;
+ }
+
+ @Override
+ public String getAmperageString() {
+ return GT_Utility.formatNumbers(amperage);
+ }
+
+ protected int computeVoltageForEuRate(int euPerTick) {
+ return euPerTick / amperage;
+ }
+}
diff --git a/src/main/java/gregtech/common/power/Power.java b/src/main/java/gregtech/common/power/Power.java
new file mode 100644
index 0000000000..e0526c14aa
--- /dev/null
+++ b/src/main/java/gregtech/common/power/Power.java
@@ -0,0 +1,48 @@
+package gregtech.common.power;
+
+import gregtech.api.util.GT_Utility;
+
+public abstract class Power {
+ protected final byte tier;
+ protected int recipeEuPerTick;
+ protected int recipeDuration;
+
+ public Power(byte tier) {
+ this.tier = tier;
+ }
+
+ public byte getTier() {
+ return tier;
+ }
+
+ public abstract String getTierString();
+
+ /**
+ * This method should be called prior to usage of any value except the power tier.
+ */
+ public abstract void computePowerUsageAndDuration(int euPerTick, int duration);
+
+ public int getEuPerTick() {
+ return recipeEuPerTick;
+ }
+
+ public int getDurationTicks() {
+ return recipeDuration;
+ }
+
+ public double getDurationSeconds() {
+ return 0.05d * getDurationTicks();
+ }
+
+ public String getDurationString() {
+ return GT_Utility.formatNumbers(getDurationSeconds()) + GT_Utility.trans("161", " secs");
+ }
+
+ public abstract String getTotalPowerString();
+
+ public abstract String getPowerUsageString();
+
+ public abstract String getVoltageString();
+
+ public abstract String getAmperageString();
+}
diff --git a/src/main/java/gregtech/common/power/SteamPower.java b/src/main/java/gregtech/common/power/SteamPower.java
new file mode 100644
index 0000000000..3e394e10c5
--- /dev/null
+++ b/src/main/java/gregtech/common/power/SteamPower.java
@@ -0,0 +1,46 @@
+package gregtech.common.power;
+
+import gregtech.api.util.GT_Utility;
+
+public class SteamPower extends Power {
+ private final double euPerTickOverride;
+ private final double durationOverride;
+ private final String[] STEAM_TIER_NAMES = {"Bronze", "Steel"};
+
+ public SteamPower(byte tier, double euPerTickMultiplier, double durationMultiplier) {
+ super(tier);
+ this.euPerTickOverride = euPerTickMultiplier;
+ this.durationOverride = durationMultiplier;
+ }
+
+ @Override
+ public String getTierString() {
+ return STEAM_TIER_NAMES[tier - 1];
+ }
+
+ @Override
+ public void computePowerUsageAndDuration(int euPerTick, int duration) {
+ recipeEuPerTick = (int) (euPerTick * euPerTickOverride);
+ recipeDuration = (int) (duration * durationOverride);
+ }
+
+ @Override
+ public String getTotalPowerString() {
+ return GT_Utility.formatNumbers((long) recipeDuration * recipeEuPerTick) + " Steam";
+ }
+
+ @Override
+ public String getPowerUsageString() {
+ return GT_Utility.formatNumbers(20L * recipeEuPerTick) + " L/s Steam";
+ }
+
+ @Override
+ public String getVoltageString() {
+ return null;
+ }
+
+ @Override
+ public String getAmperageString() {
+ return null;
+ }
+}
diff --git a/src/main/java/gregtech/common/power/UnspecifiedEUPower.java b/src/main/java/gregtech/common/power/UnspecifiedEUPower.java
new file mode 100644
index 0000000000..91158e3605
--- /dev/null
+++ b/src/main/java/gregtech/common/power/UnspecifiedEUPower.java
@@ -0,0 +1,22 @@
+package gregtech.common.power;
+
+import gregtech.api.util.GT_Utility;
+
+public class UnspecifiedEUPower extends EUPower {
+ private final String VOLTAGE = GT_Utility.trans("156", "unspecified");
+ private final String AMPERAGE = GT_Utility.trans("157", "unspecified");
+
+ public UnspecifiedEUPower(byte tier, int amperage) {
+ super(tier, amperage);
+ }
+
+ @Override
+ public String getVoltageString() {
+ return VOLTAGE;
+ }
+
+ @Override
+ public String getAmperageString() {
+ return AMPERAGE;
+ }
+}
diff --git a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_ItemDistributor.java b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_ItemDistributor.java
index a796ce9661..d27d8db04d 100644
--- a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_ItemDistributor.java
+++ b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_ItemDistributor.java
@@ -151,7 +151,7 @@ public class GT_MetaTileEntity_ItemDistributor extends GT_MetaTileEntity_Buffer
//Adjust items per side by 1 or -1, constrained to the cyclic interval [0, 127]
itemsPerSide[aSide] += aPlayer.isSneaking() ? -1 : 1;
itemsPerSide[aSide] = (byte) ((itemsPerSide[aSide] + 128) % 128);
- GT_Utility.sendChatToPlayer(aPlayer, trans("211", "Items per side: ") + itemsPerSide[aSide]);
+ GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("211", "Items per side: ") + itemsPerSide[aSide]);
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DrillerBase.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DrillerBase.java
index 408b2441fc..ec04b8c9d4 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DrillerBase.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DrillerBase.java
@@ -157,7 +157,7 @@ public abstract class GT_MetaTileEntity_DrillerBase extends GT_MetaTileEntity_En
public boolean onSolderingToolRightClick(byte aSide, byte aWrenchingSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
if (aSide == getBaseMetaTileEntity().getFrontFacing()) {
mChunkLoadingEnabled = !mChunkLoadingEnabled;
- GT_Utility.sendChatToPlayer(aPlayer, mChunkLoadingEnabled ? trans("502", "Mining chunk loading enabled") : trans("503", "Mining chunk loading disabled"));
+ GT_Utility.sendChatToPlayer(aPlayer, mChunkLoadingEnabled ? GT_Utility.trans("502", "Mining chunk loading enabled") : GT_Utility.trans("503", "Mining chunk loading disabled"));
return true;
}
return super.onSolderingToolRightClick(aSide, aWrenchingSide, aPlayer, aX, aY, aZ);
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_HPSteam.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_HPSteam.java
index c434c2e886..69e5a784a0 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_HPSteam.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_HPSteam.java
@@ -141,7 +141,7 @@ public class GT_MetaTileEntity_LargeTurbine_HPSteam extends GT_MetaTileEntity_La
public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
if (aSide == getBaseMetaTileEntity().getFrontFacing()) {
looseFit ^= true;
- GT_Utility.sendChatToPlayer(aPlayer, looseFit ? trans("500", "Fitting: Loose - More Flow") : trans("501", "Fitting: Tight - More Efficiency"));
+ GT_Utility.sendChatToPlayer(aPlayer, looseFit ? GT_Utility.trans("500", "Fitting: Loose - More Flow") : GT_Utility.trans("501", "Fitting: Tight - More Efficiency"));
}
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Steam.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Steam.java
index 9513b6f5dc..4d11bdaef5 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Steam.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Steam.java
@@ -148,7 +148,7 @@ public class GT_MetaTileEntity_LargeTurbine_Steam extends GT_MetaTileEntity_Larg
public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
if (aSide == getBaseMetaTileEntity().getFrontFacing()) {
looseFit ^= true;
- GT_Utility.sendChatToPlayer(aPlayer, looseFit ? trans("500", "Fitting: Loose - More Flow") : trans("501", "Fitting: Tight - More Efficiency"));
+ GT_Utility.sendChatToPlayer(aPlayer, looseFit ? GT_Utility.trans("500", "Fitting: Loose - More Flow") : GT_Utility.trans("501", "Fitting: Tight - More Efficiency"));
}
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java
index 533917661b..41b3e853fe 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Bronze.java
@@ -15,15 +15,20 @@ import static gregtech.api.enums.Textures.BlockIcons.*;
public class GT_MetaTileEntity_AlloySmelter_Bronze extends GT_MetaTileEntity_BasicMachine_Bronze {
public GT_MetaTileEntity_AlloySmelter_Bronze(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional, "Combination Smelter", 2, 1, true);
+ super(aID, aName, aNameRegional, "Combination Smelter", 2, 1, false);
}
public GT_MetaTileEntity_AlloySmelter_Bronze(String aName, String aDescription, ITexture[][][] aTextures) {
- super(aName, aDescription, aTextures, 2, 1, true);
+ super(aName, aDescription, aTextures, 2, 1, false);
}
public GT_MetaTileEntity_AlloySmelter_Bronze(String aName, String[] aDescription, ITexture[][][] aTextures) {
- super(aName, aDescription, aTextures, 2, 1, true);
+ super(aName, aDescription, aTextures, 2, 1, false);
+ }
+
+ @Override
+ protected boolean isBricked() {
+ return true;
}
@Override
@@ -37,15 +42,8 @@ public class GT_MetaTileEntity_AlloySmelter_Bronze extends GT_MetaTileEntity_Bas
}
@Override
- public int checkRecipe() {
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[1], null, getAllInputs());
- if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) {
- mOutputItems[0] = tRecipe.getOutput(0);
- mEUt = tRecipe.mEUt;
- mMaxProgresstime = (tRecipe.mDuration * 2);
- return 2;
- }
- return 0;
+ public GT_Recipe.GT_Recipe_Map getRecipeList() {
+ return GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java
index 2291ae1aba..90015771cc 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_AlloySmelter_Steel.java
@@ -27,6 +27,11 @@ public class GT_MetaTileEntity_AlloySmelter_Steel extends GT_MetaTileEntity_Basi
}
@Override
+ protected boolean isBricked() {
+ return true;
+ }
+
+ @Override
public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
return new GT_MetaTileEntity_AlloySmelter_Steel(mName, mDescriptionArray, mTextures);
}
@@ -37,15 +42,8 @@ public class GT_MetaTileEntity_AlloySmelter_Steel extends GT_MetaTileEntity_Basi
}
@Override
- public int checkRecipe() {
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[2], null, getAllInputs());
- if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) {
- mOutputItems[0] = tRecipe.getOutput(0);
- mEUt = (tRecipe.mEUt * 2);
- mMaxProgresstime = tRecipe.mDuration;
- return 2;
- }
- return 0;
+ public GT_Recipe.GT_Recipe_Map getRecipeList() {
+ return GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java
index ddfe476d15..405a5dc9ee 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java
@@ -37,15 +37,8 @@ public class GT_MetaTileEntity_Compressor_Bronze extends GT_MetaTileEntity_Basic
}
@Override
- public int checkRecipe() {
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sCompressorRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[1], null, getAllInputs());
- if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) {
- this.mOutputItems[0] = tRecipe.getOutput(0);
- this.mEUt = tRecipe.mEUt;
- this.mMaxProgresstime = (tRecipe.mDuration * 2);
- return 2;
- }
- return 0;
+ public GT_Recipe.GT_Recipe_Map getRecipeList() {
+ return GT_Recipe.GT_Recipe_Map.sCompressorRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java
index 153f84f74b..4d4917f71d 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java
@@ -15,15 +15,15 @@ import static gregtech.api.enums.Textures.BlockIcons.*;
public class GT_MetaTileEntity_Compressor_Steel extends GT_MetaTileEntity_BasicMachine_Steel {
public GT_MetaTileEntity_Compressor_Steel(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional, "Compressing Items", 1, 1, false);
+ super(aID, aName, aNameRegional, "Compressing Items", 1, 1, true);
}
public GT_MetaTileEntity_Compressor_Steel(String aName, String aDescription, ITexture[][][] aTextures) {
- super(aName, aDescription, aTextures, 1, 1, false);
+ super(aName, aDescription, aTextures, 1, 1, true);
}
public GT_MetaTileEntity_Compressor_Steel(String aName, String[] aDescription, ITexture[][][] aTextures) {
- super(aName, aDescription, aTextures, 1, 1, false);
+ super(aName, aDescription, aTextures, 1, 1, true);
}
@Override
@@ -37,15 +37,8 @@ public class GT_MetaTileEntity_Compressor_Steel extends GT_MetaTileEntity_BasicM
}
@Override
- public int checkRecipe() {
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sCompressorRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[2], null, getAllInputs());
- if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) {
- this.mOutputItems[0] = tRecipe.getOutput(0);
- this.mEUt = (tRecipe.mEUt * 2);
- this.mMaxProgresstime = tRecipe.mDuration;
- return 2;
- }
- return 0;
+ public GT_Recipe.GT_Recipe_Map getRecipeList() {
+ return GT_Recipe.GT_Recipe_Map.sCompressorRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java
index 5c60d071bc..ca47bcbfe5 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java
@@ -37,15 +37,8 @@ public class GT_MetaTileEntity_Extractor_Bronze extends GT_MetaTileEntity_BasicM
}
@Override
- public int checkRecipe() {
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sExtractorRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[1], null, getAllInputs());
- if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) {
- this.mOutputItems[0] = tRecipe.getOutput(0);
- this.mEUt = tRecipe.mEUt;
- this.mMaxProgresstime = (tRecipe.mDuration * 2);
- return 2;
- }
- return 0;
+ public GT_Recipe.GT_Recipe_Map getRecipeList() {
+ return GT_Recipe.GT_Recipe_Map.sExtractorRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java
index da4753b78e..586481be13 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java
@@ -15,15 +15,15 @@ import static gregtech.api.enums.Textures.BlockIcons.*;
public class GT_MetaTileEntity_Extractor_Steel extends GT_MetaTileEntity_BasicMachine_Steel {
public GT_MetaTileEntity_Extractor_Steel(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional, "Extracting your first Rubber", 1, 1, false);
+ super(aID, aName, aNameRegional, "Extracting your first Rubber", 1, 1, true);
}
public GT_MetaTileEntity_Extractor_Steel(String aName, String aDescription, ITexture[][][] aTextures) {
- super(aName, aDescription, aTextures, 1, 1, false);
+ super(aName, aDescription, aTextures, 1, 1, true);
}
public GT_MetaTileEntity_Extractor_Steel(String aName, String[] aDescription, ITexture[][][] aTextures) {
- super(aName, aDescription, aTextures, 1, 1, false);
+ super(aName, aDescription, aTextures, 1, 1, true);
}
@Override
@@ -37,15 +37,8 @@ public class GT_MetaTileEntity_Extractor_Steel extends GT_MetaTileEntity_BasicMa
}
@Override
- public int checkRecipe() {
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sExtractorRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[2], null, getAllInputs());
- if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) {
- this.mOutputItems[0] = tRecipe.getOutput(0);
- this.mEUt = (tRecipe.mEUt * 2);
- this.mMaxProgresstime = tRecipe.mDuration;
- return 2;
- }
- return 0;
+ public GT_Recipe.GT_Recipe_Map getRecipeList() {
+ return GT_Recipe.GT_Recipe_Map.sExtractorRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java
index e46a5a74a8..a20d43ca24 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Bronze.java
@@ -37,15 +37,8 @@ public class GT_MetaTileEntity_ForgeHammer_Bronze extends GT_MetaTileEntity_Basi
}
@Override
- public int checkRecipe() {
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[1], null, getAllInputs());
- if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) {
- this.mOutputItems[0] = tRecipe.getOutput(0);
- this.mEUt = tRecipe.mEUt;
- this.mMaxProgresstime = (tRecipe.mDuration * 2);
- return 2;
- }
- return 0;
+ public GT_Recipe.GT_Recipe_Map getRecipeList() {
+ return GT_Recipe.GT_Recipe_Map.sHammerRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java
index 4508c39fda..f1e3573c89 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_ForgeHammer_Steel.java
@@ -15,15 +15,15 @@ import static gregtech.api.enums.Textures.BlockIcons.*;
public class GT_MetaTileEntity_ForgeHammer_Steel extends GT_MetaTileEntity_BasicMachine_Steel {
public GT_MetaTileEntity_ForgeHammer_Steel(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional, "Forge Hammer", 1, 1, false);
+ super(aID, aName, aNameRegional, "Forge Hammer", 1, 1, true);
}
public GT_MetaTileEntity_ForgeHammer_Steel(String aName, String aDescription, ITexture[][][] aTextures) {
- super(aName, aDescription, aTextures, 1, 1, false);
+ super(aName, aDescription, aTextures, 1, 1, true);
}
public GT_MetaTileEntity_ForgeHammer_Steel(String aName, String[] aDescription, ITexture[][][] aTextures) {
- super(aName, aDescription, aTextures, 1, 1, false);
+ super(aName, aDescription, aTextures, 1, 1, true);
}
@Override
@@ -37,15 +37,8 @@ public class GT_MetaTileEntity_ForgeHammer_Steel extends GT_MetaTileEntity_Basic
}
@Override
- public int checkRecipe() {
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sHammerRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[2], null, getAllInputs());
- if ((tRecipe != null) && (canOutput(tRecipe.mOutputs)) && (tRecipe.isRecipeInputEqual(true, null, getAllInputs()))) {
- this.mOutputItems[0] = tRecipe.getOutput(0);
- this.mEUt = (tRecipe.mEUt * 2);
- this.mMaxProgresstime = tRecipe.mDuration;
- return 2;
- }
- return 0;
+ public GT_Recipe.GT_Recipe_Map getRecipeList() {
+ return GT_Recipe.GT_Recipe_Map.sHammerRecipes;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Bronze.java
index 4e704fac12..21910854d0 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Bronze.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Bronze.java
@@ -16,15 +16,20 @@ import static gregtech.api.enums.Textures.BlockIcons.*;
public class GT_MetaTileEntity_Furnace_Bronze extends GT_MetaTileEntity_BasicMachine_Bronze {
public GT_MetaTileEntity_Furnace_Bronze(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional, "Smelting things with compressed Steam", 1, 1, true);
+ super(aID, aName, aNameRegional, "Smelting things with compressed Steam", 1, 1, false);
}
public GT_MetaTileEntity_Furnace_Bronze(String aName, String aDescription, ITexture[][][] aTextures) {
- super(aName, aDescription, aTextures, 1, 1, true);
+ super(aName, aDescription, aTextures, 1, 1, false);
}
public GT_MetaTileEntity_Furnace_Bronze(String aName, String[] aDescription, ITexture[][][] aTextures) {
- super(aName, aDescription, aTextures, 1, 1, true);
+ super(aName, aDescription, aTextures, 1, 1, false);
+ }
+
+ @Override
+ protected boolean isBricked() {
+ return true;
}
@Override
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Steel.java
index eab07f2173..8cc086fe18 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Steel.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Furnace_Steel.java
@@ -28,6 +28,11 @@ public class GT_MetaTileEntity_Furnace_Steel extends GT_MetaTileEntity_BasicMach
}
@Override
+ protected boolean isBricked() {
+ return true;
+ }
+
+ @Override
public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
return new GT_GUIContainer_BasicMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "SteelFurnace.png", "smelting");
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java
index 918d40443c..e75765dced 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java
@@ -62,9 +62,13 @@ public class GT_MetaTileEntity_Macerator_Bronze extends GT_MetaTileEntity_BasicM
}
@Override
+ public GT_Recipe.GT_Recipe_Map getRecipeList() {
+ return GT_Recipe.GT_Recipe_Map.sMaceratorRecipes;
+ }
+
+ @Override
public int checkRecipe() {
- GT_Recipe_Map tMap = GT_Recipe.GT_Recipe_Map.sMaceratorRecipes;
- GT_Recipe tRecipe = tMap.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, V[1], null, null, getAllInputs());
+ GT_Recipe tRecipe = getRecipeList().findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, V[mTier], null, null, getAllInputs());
if (tRecipe == null) return DID_NOT_FIND_RECIPE;
if (tRecipe.mCanBeBuffered) mLastRecipe = tRecipe;
if (!canOutput(tRecipe)) {
@@ -75,8 +79,7 @@ public class GT_MetaTileEntity_Macerator_Bronze extends GT_MetaTileEntity_BasicM
if (!tRecipe.isRecipeInputEqual(true, new FluidStack[]{getFillableStack()}, getAllInputs()))
return FOUND_RECIPE_BUT_DID_NOT_MEET_REQUIREMENTS;
if (tRecipe.getOutput(0) != null) mOutputItems[0] = tRecipe.getOutput(0);
- this.mEUt = tRecipe.mEUt;
- this.mMaxProgresstime = (tRecipe.mDuration * 2);
+ calculateOverclockedNess(tRecipe);
return FOUND_AND_SUCCESSFULLY_USED_RECIPE;
}
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java
index a857919cbc..e522eb46f6 100644
--- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java
+++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java
@@ -22,15 +22,15 @@ import static gregtech.api.enums.Textures.BlockIcons.*;
public class GT_MetaTileEntity_Macerator_Steel extends GT_MetaTileEntity_BasicMachine_Steel {
public GT_MetaTileEntity_Macerator_Steel(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional, "Macerating your Ores", 1, 1, false);
+ super(aID, aName, aNameRegional, "Macerating your Ores", 1, 1, true);
}
public GT_MetaTileEntity_Macerator_Steel(String aName, String aDescription, ITexture[][][] aTextures) {
- super(aName, aDescription, aTextures, 1, 1, false);
+ super(aName, aDescription, aTextures, 1, 1, true);
}
public GT_MetaTileEntity_Macerator_Steel(String aName, String[] aDescription, ITexture[][][] aTextures) {
- super(aName, aDescription, aTextures, 1, 1, false);
+ super(aName, aDescription, aTextures, 1, 1, true);
}
@Override
@@ -62,9 +62,13 @@ public class GT_MetaTileEntity_Macerator_Steel extends GT_MetaTileEntity_BasicMa
}
@Override
+ public GT_Recipe.GT_Recipe_Map getRecipeList() {
+ return GT_Recipe.GT_Recipe_Map.sMaceratorRecipes;
+ }
+
+ @Override
public int checkRecipe() {
- GT_Recipe_Map tMap = GT_Recipe.GT_Recipe_Map.sMaceratorRecipes;
- GT_Recipe tRecipe = tMap.findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, V[1], null, null, getAllInputs());
+ GT_Recipe tRecipe = getRecipeList().findRecipe(getBaseMetaTileEntity(), mLastRecipe, false, V[mTier], null, null, getAllInputs());
if (tRecipe == null) return DID_NOT_FIND_RECIPE;
if (tRecipe.mCanBeBuffered) mLastRecipe = tRecipe;
if (!canOutput(tRecipe)) {
@@ -75,8 +79,7 @@ public class GT_MetaTileEntity_Macerator_Steel extends GT_MetaTileEntity_BasicMa
if (!tRecipe.isRecipeInputEqual(true, new FluidStack[]{getFillableStack()}, getAllInputs()))
return FOUND_RECIPE_BUT_DID_NOT_MEET_REQUIREMENTS;
if (tRecipe.getOutput(0) != null) mOutputItems[0] = tRecipe.getOutput(0);
- this.mEUt = (2 * tRecipe.mEUt);
- this.mMaxProgresstime = tRecipe.mDuration;
+ calculateOverclockedNess(tRecipe);
return FOUND_AND_SUCCESSFULLY_USED_RECIPE;
}
diff --git a/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java b/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java
index d6f339ec7f..93fb0bd3d2 100644
--- a/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java
+++ b/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java
@@ -8,24 +8,36 @@ import codechicken.nei.guihook.IContainerTooltipHandler;
import codechicken.nei.recipe.GuiCraftingRecipe;
import codechicken.nei.recipe.GuiRecipe;
import codechicken.nei.recipe.GuiUsageRecipe;
+import codechicken.nei.recipe.ICraftingHandler;
+import codechicken.nei.recipe.IUsageHandler;
+import codechicken.nei.recipe.RecipeCatalysts;
import codechicken.nei.recipe.TemplateRecipeHandler;
import gregtech.GT_Mod;
import gregtech.api.enums.GT_Values;
import gregtech.api.enums.OrePrefixes;
+import gregtech.api.gui.GT_GUIContainer;
import gregtech.api.gui.GT_GUIContainer_BasicMachine;
+import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
+import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine;
import gregtech.api.objects.ItemData;
import gregtech.api.util.GT_LanguageManager;
import gregtech.api.util.GT_Log;
import gregtech.api.util.GT_OreDictUnificator;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
+import gregtech.common.power.EUPower;
+import gregtech.common.power.Power;
+import gregtech.common.power.UnspecifiedEUPower;
+import gregtech.common.blocks.GT_Item_Machines;
import gregtech.common.gui.GT_GUIContainer_FusionReactor;
import gregtech.common.gui.GT_GUIContainer_PrimitiveBlastFurnace;
import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.FontRenderer;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidStack;
+import org.apache.commons.lang3.Range;
import org.lwjgl.opengl.GL11;
import javax.annotation.Nonnull;
@@ -34,16 +46,24 @@ import java.awt.*;
import java.lang.ref.SoftReference;
import java.util.ArrayList;
import java.util.Collections;
+import java.util.Iterator;
import java.util.List;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
import java.util.stream.Collectors;
+import static codechicken.nei.recipe.RecipeInfo.getGuiOffset;
+
public class GT_NEI_DefaultHandler extends RecipeMapHandler {
public static final int sOffsetX = 5;
public static final int sOffsetY = 11;
private static final ConcurrentMap<GT_Recipe.GT_Recipe_Map, SortedRecipeListCache> CACHE = new ConcurrentHashMap<>();
+ private Power mPower;
+ private String mRecipeName; // Name of the handler displayed on top
+ private NEIHandlerAbsoluteTooltip mRecipeNameTooltip;
+ private static final int RECIPE_NAME_WIDTH = 140;
+
static {
GuiContainerManager.addInputHandler(new GT_RectHandler());
GuiContainerManager.addTooltipHandler(new GT_RectHandler());
@@ -51,7 +71,7 @@ public class GT_NEI_DefaultHandler extends RecipeMapHandler {
public GT_NEI_DefaultHandler(GT_Recipe.GT_Recipe_Map aRecipeMap) {
super(aRecipeMap);
- this.transferRects.add(new TemplateRecipeHandler.RecipeTransferRect(new Rectangle(65, 13, 36, 18), getOverlayIdentifier()));
+ this.transferRects.add(new RecipeTransferRect(new Rectangle(65, 13, 36, 18), getOverlayIdentifier()));
}
@Deprecated
@@ -61,8 +81,12 @@ public class GT_NEI_DefaultHandler extends RecipeMapHandler {
return result;
}
+ private SortedRecipeListCache getCacheHolder() {
+ return CACHE.computeIfAbsent(mRecipeMap, m -> new SortedRecipeListCache());
+ }
+
public List<CachedDefaultRecipe> getCache() {
- SortedRecipeListCache cacheHolder = CACHE.computeIfAbsent(mRecipeMap, m -> new SortedRecipeListCache());
+ SortedRecipeListCache cacheHolder = getCacheHolder();
List<CachedDefaultRecipe> cache;
if (cacheHolder.getCachedRecipesVersion() != GT_Mod.gregtechproxy.getReloadCount() || (cache = cacheHolder.getCachedRecipes()) == null) {
cache = mRecipeMap.mRecipeList.stream() // do not use parallel stream. This is already parallelized by NEI
@@ -91,7 +115,12 @@ public class GT_NEI_DefaultHandler extends RecipeMapHandler {
@Override
public void loadCraftingRecipes(String outputId, Object... results) {
if (outputId.equals(getOverlayIdentifier())) {
- arecipes.addAll(getCache());
+ if (results.length > 0 && results[0] instanceof Power) {
+ mPower = (Power) results[0];
+ loadTieredCraftingRecipesUpTo(mPower.getTier());
+ } else {
+ arecipes.addAll(getCache());
+ }
} else {
super.loadCraftingRecipes(outputId, results);
}
@@ -109,26 +138,41 @@ public class GT_NEI_DefaultHandler extends RecipeMapHandler {
tResults.add(GT_OreDictUnificator.get(tPrefix, tPrefixMaterial.mMaterial.mMaterial, 1L));
}
}
- FluidStack tFluid = GT_Utility.getFluidForFilledItem(aResult, true);
+ addFluidStacks(aResult, tResults);
+ for (CachedDefaultRecipe recipe : getCache()) {
+ if (tResults.stream().anyMatch(stack -> recipe.contains(recipe.mOutputs, stack)))
+ arecipes.add(recipe);
+ }
+ }
+
+ private void addFluidStacks(ItemStack aStack, ArrayList<ItemStack> tResults) {
+ FluidStack tFluid = GT_Utility.getFluidForFilledItem(aStack, true);
FluidStack tFluidStack;
if (tFluid != null) {
tFluidStack = tFluid;
tResults.add(GT_Utility.getFluidDisplayStack(tFluid, false));
- }
- else tFluidStack = GT_Utility.getFluidFromDisplayStack(aResult);
+ } else tFluidStack = GT_Utility.getFluidFromDisplayStack(aStack);
if (tFluidStack != null) {
tResults.addAll(GT_Utility.getContainersFromFluid(tFluidStack));
}
- for (CachedDefaultRecipe recipe : getCache()) {
- if (tResults.stream().anyMatch(stack -> recipe.contains(recipe.mOutputs, stack)))
- arecipes.add(recipe);
+ }
+
+ private void loadTieredCraftingRecipesUpTo(byte upperTier) {
+ arecipes.addAll(getTieredRecipes((byte) 0, upperTier));
+ }
+
+ private List<CachedDefaultRecipe> getTieredRecipes(byte lowerTier, byte upperTier) {
+ List<CachedDefaultRecipe> recipes = getCache();
+ if ( recipes.size() > 0 ) {
+ Range<Integer> indexRange = getCacheHolder().getIndexRangeForTiers(lowerTier, upperTier);
+ recipes = recipes.subList(indexRange.getMinimum(), indexRange.getMaximum() + 1);
}
+ return recipes;
}
@Override
public void loadUsageRecipes(ItemStack aInput) {
ItemData tPrefixMaterial = GT_OreDictUnificator.getAssociation(aInput);
-
ArrayList<ItemStack> tInputs = new ArrayList<>();
tInputs.add(aInput);
tInputs.add(GT_OreDictUnificator.get(false, aInput));
@@ -137,16 +181,7 @@ public class GT_NEI_DefaultHandler extends RecipeMapHandler {
tInputs.add(GT_OreDictUnificator.get(tPrefix, tPrefixMaterial.mMaterial.mMaterial, 1L));
}
}
- FluidStack tFluid = GT_Utility.getFluidForFilledItem(aInput, true);
- FluidStack tFluidStack;
- if (tFluid != null) {
- tFluidStack = tFluid;
- tInputs.add(GT_Utility.getFluidDisplayStack(tFluid, false));
- }
- else tFluidStack = GT_Utility.getFluidFromDisplayStack(aInput);
- if (tFluidStack != null) {
- tInputs.addAll(GT_Utility.getContainersFromFluid(tFluidStack));
- }
+ addFluidStacks(aInput, tInputs);
for (CachedDefaultRecipe recipe : getCache()) {
if (tInputs.stream().anyMatch(stack -> recipe.contains(recipe.mInputs, stack)))
arecipes.add(recipe);
@@ -154,6 +189,32 @@ public class GT_NEI_DefaultHandler extends RecipeMapHandler {
}
@Override
+ public IUsageHandler getUsageAndCatalystHandler(String inputId, Object... ingredients) {
+ if (inputId.equals("item")) {
+ ItemStack candidate = (ItemStack) ingredients[0];
+ GT_NEI_DefaultHandler handler = (GT_NEI_DefaultHandler) newInstance();
+ if (RecipeCatalysts.containsCatalyst(handler, candidate)) {
+ IMetaTileEntity gtTileEntity = GT_Item_Machines.getMetaTileEntity(candidate);
+ if (gtTileEntity instanceof GT_MetaTileEntity_BasicMachine) {
+ Power power = ((GT_MetaTileEntity_BasicMachine) gtTileEntity).getPower();
+ handler.loadCraftingRecipes(getOverlayIdentifier(), power);
+ return handler;
+ }
+ }
+ }
+ return this.getUsageHandler(inputId, ingredients);
+ }
+
+ @Override
+ public ICraftingHandler getRecipeHandler(String outputId, Object... results) {
+ GT_NEI_DefaultHandler handler = (GT_NEI_DefaultHandler) super.getRecipeHandler(outputId, results);
+ if (results.length > 0 && results[0] instanceof Power) {
+ handler.mPower = (Power) results[0];
+ }
+ return handler;
+ }
+
+ @Override
public String getOverlayIdentifier() {
return this.mRecipeMap.mNEIName;
}
@@ -172,18 +233,57 @@ public class GT_NEI_DefaultHandler extends RecipeMapHandler {
@Override
public String getRecipeName() {
+ if (mRecipeName == null) {
+ mRecipeName = computeRecipeName();
+ }
+ return mRecipeName;
+ }
+
+ private String computeRecipeName() {
+ String recipeName = GT_LanguageManager.getTranslation(this.mRecipeMap.mUnlocalizedName);
+ if (mPower != null) {
+ recipeName = addSuffixToRecipeName(recipeName, " (", mPower.getTierString() + ")");
+ }
+ return recipeName;
+ }
+
+ private String addSuffixToRecipeName(String recipeName, String separator, String suffix) {
+ FontRenderer fontRenderer = Minecraft.getMinecraft().fontRenderer;
+ int recipeNameWidth = fontRenderer.getStringWidth(recipeName);
+ int targetWidth = RECIPE_NAME_WIDTH - fontRenderer.getStringWidth(suffix);
+ if (recipeNameWidth + fontRenderer.getStringWidth(separator) > targetWidth) {
+ setupRecipeNameTooltip(recipeName + separator + suffix);
+ separator = "...(";
+ recipeName = shrinkRecipeName(recipeName, targetWidth - fontRenderer.getStringWidth(separator));
+ }
+ return recipeName + separator + suffix;
+ }
+
+ private String shrinkRecipeName(String recipeName, int targetWidth) {
+ FontRenderer fontRenderer = Minecraft.getMinecraft().fontRenderer;
+ do {
+ recipeName = recipeName.substring(0, recipeName.length() - 2);
+ } while (fontRenderer.getStringWidth(recipeName) > targetWidth);
+ return recipeName;
+ }
+
+ private void setupRecipeNameTooltip(String tooltip) {
+ mRecipeNameTooltip = new NEIHandlerAbsoluteTooltip(tooltip, new Rectangle(13, -34, RECIPE_NAME_WIDTH - 1, 11));
+ }
+
+ @Override
+ public String getRecipeTabName() {
return GT_LanguageManager.getTranslation(this.mRecipeMap.mUnlocalizedName);
}
@Override
public String getGuiTexture() {
-// return "gregtech:textures/gui/" + this.mRecipeMap.mUnlocalizedName + ".png";
return this.mRecipeMap.mNEIGUIPath;
}
@Override
public List<String> handleItemTooltip(GuiRecipe gui, ItemStack aStack, List<String> currenttip, int aRecipeIndex) {
- TemplateRecipeHandler.CachedRecipe tObject = (TemplateRecipeHandler.CachedRecipe) this.arecipes.get(aRecipeIndex);
+ CachedRecipe tObject = this.arecipes.get(aRecipeIndex);
if ((tObject instanceof CachedDefaultRecipe)) {
CachedDefaultRecipe tRecipe = (CachedDefaultRecipe) tObject;
for (PositionedStack tStack : tRecipe.mOutputs) {
@@ -191,7 +291,7 @@ public class GT_NEI_DefaultHandler extends RecipeMapHandler {
if ((!(tStack instanceof FixedPositionedStack)) || (((FixedPositionedStack) tStack).mChance <= 0) || (((FixedPositionedStack) tStack).mChance == 10000)) {
break;
}
- currenttip.add(trans("150","Chance: ") + ((FixedPositionedStack) tStack).mChance / 100 + "." + (((FixedPositionedStack) tStack).mChance % 100 < 10 ? "0" + ((FixedPositionedStack) tStack).mChance % 100 : Integer.valueOf(((FixedPositionedStack) tStack).mChance % 100)) + "%");
+ currenttip.add(GT_Utility.trans("150", "Chance: ") + ((FixedPositionedStack) tStack).mChance / 100 + "." + (((FixedPositionedStack) tStack).mChance % 100 < 10 ? "0" + ((FixedPositionedStack) tStack).mChance % 100 : Integer.valueOf(((FixedPositionedStack) tStack).mChance % 100)) + "%");
break;
}
}
@@ -201,79 +301,149 @@ public class GT_NEI_DefaultHandler extends RecipeMapHandler {
(tStack.item.stackSize != 0)) {
break;
}
- currenttip.add(trans("151","Does not get consumed in the process"));
+ currenttip.add(GT_Utility.trans("151", "Does not get consumed in the process"));
break;
}
}
}
+
+ if (mRecipeNameTooltip != null) {
+ mRecipeNameTooltip.handleTooltip(currenttip, aRecipeIndex);
+ }
return currenttip;
}
+ private Power getPowerFromRecipeMap() {
+ // By default, assume generic EU LV power with no overclocks
+ Power power;
+ if (this.mRecipeMap.mShowVoltageAmperageInNEI) {
+ power = new EUPower((byte) 1, this.mRecipeMap.mAmperage);
+ } else {
+ power = new UnspecifiedEUPower((byte) 1, this.mRecipeMap.mAmperage);
+ }
+ return power;
+ }
+
@Override
public void drawExtras(int aRecipeIndex) {
- int tEUt = ((CachedDefaultRecipe) this.arecipes.get(aRecipeIndex)).mRecipe.mEUt;
- int tDuration = ((CachedDefaultRecipe) this.arecipes.get(aRecipeIndex)).mRecipe.mDuration;
- String[] recipeDesc = ((CachedDefaultRecipe) this.arecipes.get(aRecipeIndex)).mRecipe.getNeiDesc();
+ GT_Recipe recipe = ((CachedDefaultRecipe) this.arecipes.get(aRecipeIndex)).mRecipe;
+ String[] recipeDesc = recipe.getNeiDesc();
if (recipeDesc == null) {
- if (tEUt != 0) {
- drawText(10, 73, trans("152","Total: ") + GT_Utility.formatNumbers((long) tDuration * tEUt) + " EU", 0xFF000000);
- drawText(10, 83, trans("153","Usage: ") + GT_Utility.formatNumbers(tEUt) + " EU/t", 0xFF000000);
- if (this.mRecipeMap.mShowVoltageAmperageInNEI) {
- int voltage = tEUt / this.mRecipeMap.mAmperage;
- byte tier = GT_Utility.getTier(voltage);
- if (tier < 0 || tier >= 16) {
- drawText(10, 93, trans("154","Voltage: ") + GT_Utility.formatNumbers(voltage) + " EU", 0xFFFF0000);
-//add here gt logger
- } else {
- drawText(10, 93, trans("154","Voltage: ") + GT_Utility.formatNumbers(voltage) + " EU (" + GT_Values.VN[tier] + ")", 0xFF000000);
- }
- drawText(10, 103, trans("155","Amperage: ") + GT_Utility.formatNumbers(this.mRecipeMap.mAmperage), 0xFF000000);
- } else {
- drawText(10, 93, trans("156","Voltage: unspecified"), 0xFF000000);
- drawText(10, 103, trans("157","Amperage: unspecified"), 0xFF000000);
- }
- }
- if (tDuration > 0) {
- drawText(10, 113, trans("158","Time: ") + GT_Utility.formatNumbers(0.05d * tDuration) + trans("161"," secs"), 0xFF000000);
- }
- int tSpecial = ((CachedDefaultRecipe) this.arecipes.get(aRecipeIndex)).mRecipe.mSpecialValue;
- if (tSpecial == -100 && GT_Mod.gregtechproxy.mLowGravProcessing) {
- drawText(10, 123, trans("159","Needs Low Gravity"), 0xFF000000);
- } else if (tSpecial == -200 && GT_Mod.gregtechproxy.mEnableCleanroom) {
- drawText(10, 123, trans("160","Needs Cleanroom"), 0xFF000000);
- } else if (tSpecial == -201) {
- drawText(10, 123, trans("206","Scan for Assembly Line"), 0xFF000000);
- } else if (tSpecial == -300 && GT_Mod.gregtechproxy.mEnableCleanroom) {
- drawText(10, 123, trans("160","Needs Cleanroom & LowGrav"), 0xFF000000);
- } else if (tSpecial == -400) {
- drawText(10, 123, trans("216","Deprecated Recipe"), 0xFF000000);
- } else if ((GT_Utility.isStringValid(this.mRecipeMap.mNEISpecialValuePre)) || (GT_Utility.isStringValid(this.mRecipeMap.mNEISpecialValuePost))) {
- drawText(10, 123, this.mRecipeMap.mNEISpecialValuePre + GT_Utility.formatNumbers(tSpecial * this.mRecipeMap.mNEISpecialValueMultiplier) + this.mRecipeMap.mNEISpecialValuePost, 0xFF000000);
- }
+ drawDescription(recipe);
} else {
- int i = 0;
- for (String descLine : recipeDesc) {
- drawText(10, 73 + 10 * i, descLine, 0xFF000000);
- i++;
+ drawOverrideDescription(recipeDesc);
+ }
+ }
+
+ private void drawDescription(GT_Recipe recipe) {
+ if (mPower == null) {
+ mPower = getPowerFromRecipeMap();
+ }
+ mPower.computePowerUsageAndDuration(recipe.mEUt, recipe.mDuration);
+ if (mPower.getEuPerTick() > 0) {
+ drawPowerUsageLines();
+ }
+ if (mPower.getDurationTicks() > 0) {
+ drawLine(4, GT_Utility.trans("158", "Time: ") + mPower.getDurationString());
+ }
+ drawOptionalLine(5, getSpecialInfo(recipe.mSpecialValue));
+ }
+
+ private void drawPowerUsageLines() {
+ drawLine(0, GT_Utility.trans("152", "Total: ") + mPower.getTotalPowerString());
+ drawLine(1, GT_Utility.trans("153", "Usage: ") + mPower.getPowerUsageString());
+ drawOptionalLine(2, mPower.getVoltageString(), GT_Utility.trans("154", "Voltage: "));
+ drawOptionalLine(3, mPower.getAmperageString(), GT_Utility.trans("155", "Amperage: "));
+ }
+
+ private void drawOverrideDescription(String[] recipeDesc) {
+ for (int i = 0; i < recipeDesc.length; i++) {
+ if (recipeDesc[i] != null) {
+ drawLine(i, recipeDesc[i]);
}
}
}
+ private String getSpecialInfo(int specialValue) {
+ String specialInfo = null;
+ if (specialValue == -100 && GT_Mod.gregtechproxy.mLowGravProcessing) {
+ specialInfo = GT_Utility.trans("159", "Needs Low Gravity");
+ } else if (specialValue == -200 && GT_Mod.gregtechproxy.mEnableCleanroom) {
+ specialInfo = GT_Utility.trans("160", "Needs Cleanroom");
+ } else if (specialValue == -201) {
+ specialInfo = GT_Utility.trans("206", "Scan for Assembly Line");
+ } else if (specialValue == -300 && GT_Mod.gregtechproxy.mEnableCleanroom) {
+ specialInfo = GT_Utility.trans("160", "Needs Cleanroom & LowGrav");
+ } else if (specialValue == -400) {
+ specialInfo = GT_Utility.trans("216", "Deprecated Recipe");
+ } else if (hasSpecialValueFormat()) {
+ specialInfo = formatSpecialValue(specialValue);
+ }
+ return specialInfo;
+ }
+
+ private boolean hasSpecialValueFormat() {
+ return (GT_Utility.isStringValid(this.mRecipeMap.mNEISpecialValuePre))
+ || (GT_Utility.isStringValid(this.mRecipeMap.mNEISpecialValuePost));
+ }
+
+ private String formatSpecialValue(int SpecialValue) {
+ return this.mRecipeMap.mNEISpecialValuePre + GT_Utility.formatNumbers(
+ (long) SpecialValue * this.mRecipeMap.mNEISpecialValueMultiplier)
+ + this.mRecipeMap.mNEISpecialValuePost;
+ }
+
+ private void drawOptionalLine(int lineNumber, String line, String prefix) {
+ if (line != null) {
+ drawLine(lineNumber, prefix + line);
+ }
+ }
+
+ private void drawOptionalLine(int lineNumber, String line) {
+ if (line != null) {
+ drawLine(lineNumber, line);
+ }
+ }
+
+ private void drawLine(int lineNumber, String line) {
+ drawText(10, 73 + lineNumber * 10, line, 0xFF000000);
+ }
+
public static class GT_RectHandler
implements IContainerInputHandler, IContainerTooltipHandler {
@Override
public boolean mouseClicked(GuiContainer gui, int mousex, int mousey, int button) {
if (canHandle(gui)) {
- if (button == 0) {
- return transferRect(gui, false);
- }
- if (button == 1) {
- return transferRect(gui, true);
+ NEI_TransferRectHost host = (NEI_TransferRectHost) gui;
+ if (hostRectContainsMouse(host, getMousePos(gui, mousex, mousey))) {
+ if (button == 0) {
+ return handleTransferRectMouseClick(host, false);
+ }
+ if (button == 1) {
+ return handleTransferRectMouseClick(host, true);
+ }
}
}
return false;
}
+ private Point getMousePos(GuiContainer gui, int mousex, int mousey) {
+ Point point = new Point(
+ mousex - ((GT_GUIContainer) gui).getLeft() - getGuiOffset(gui)[0],
+ mousey - ((GT_GUIContainer) gui).getTop() - getGuiOffset(gui)[1]);
+ return point;
+ }
+
+ private boolean hostRectContainsMouse(NEI_TransferRectHost host, Point mousePos) {
+ return host.getNeiTransferRect().contains(mousePos);
+ }
+
+ private boolean handleTransferRectMouseClick(NEI_TransferRectHost gui, boolean usage) {
+ String mNEI = gui.getNeiTransferRectString();
+ Object[] args = gui.getNeiTransferRectArgs();
+ return usage ? GuiUsageRecipe.openRecipeGui(mNEI) : GuiCraftingRecipe.openRecipeGui(mNEI, args);
+ }
+
@Override
public boolean lastKeyTyped(GuiContainer gui, char keyChar, int keyCode) {
return false;
@@ -288,29 +458,14 @@ public class GT_NEI_DefaultHandler extends RecipeMapHandler {
@Override
public List<String> handleTooltip(GuiContainer gui, int mousex, int mousey, List<String> currenttip) {
if ((canHandle(gui)) && (currenttip.isEmpty())) {
- if (gui instanceof GT_GUIContainer_BasicMachine && new Rectangle(65, 13, 36, 18).contains(new Point(GuiDraw.getMousePosition().x - ((GT_GUIContainer_BasicMachine) gui).getLeft() - codechicken.nei.recipe.RecipeInfo.getGuiOffset(gui)[0], GuiDraw.getMousePosition().y - ((GT_GUIContainer_BasicMachine) gui).getTop() - codechicken.nei.recipe.RecipeInfo.getGuiOffset(gui)[1]))) {
- currenttip.add("Recipes");
- } else if (gui instanceof GT_GUIContainer_FusionReactor && new Rectangle(145, 0, 24, 24).contains(new Point(GuiDraw.getMousePosition().x - ((GT_GUIContainer_FusionReactor) gui).getLeft() - codechicken.nei.recipe.RecipeInfo.getGuiOffset(gui)[0], GuiDraw.getMousePosition().y - ((GT_GUIContainer_FusionReactor) gui).getTop() - codechicken.nei.recipe.RecipeInfo.getGuiOffset(gui)[1]))) {
- currenttip.add("Recipes");
- } else if (gui instanceof GT_GUIContainer_PrimitiveBlastFurnace && new Rectangle(51, 10, 24, 24).contains(new Point(GuiDraw.getMousePosition().x - ((GT_GUIContainer_PrimitiveBlastFurnace) gui).getLeft() - codechicken.nei.recipe.RecipeInfo.getGuiOffset(gui)[0], GuiDraw.getMousePosition().y - ((GT_GUIContainer_PrimitiveBlastFurnace) gui).getTop() - codechicken.nei.recipe.RecipeInfo.getGuiOffset(gui)[1]))) {
- currenttip.add("Recipes");
+ NEI_TransferRectHost host = (NEI_TransferRectHost) gui;
+ if (hostRectContainsMouse(host, getMousePos(gui, mousex, mousey))) {
+ currenttip.add(host.getNeiTransferRectTooltip());
}
-
}
return currenttip;
}
- private boolean transferRect(GuiContainer gui, boolean usage) {
- if (gui instanceof GT_GUIContainer_BasicMachine) {
- return (canHandle(gui)) && (new Rectangle(65, 13, 36, 18).contains(new Point(GuiDraw.getMousePosition().x - ((GT_GUIContainer_BasicMachine) gui).getLeft() - codechicken.nei.recipe.RecipeInfo.getGuiOffset(gui)[0], GuiDraw.getMousePosition().y - ((GT_GUIContainer_BasicMachine) gui).getTop() - codechicken.nei.recipe.RecipeInfo.getGuiOffset(gui)[1]))) && (usage ? GuiUsageRecipe.openRecipeGui(((GT_GUIContainer_BasicMachine) gui).mNEI) : GuiCraftingRecipe.openRecipeGui(((GT_GUIContainer_BasicMachine) gui).mNEI));
- } else if (gui instanceof GT_GUIContainer_FusionReactor) {
- return (canHandle(gui)) && (new Rectangle(145, 0, 24, 24).contains(new Point(GuiDraw.getMousePosition().x - ((GT_GUIContainer_FusionReactor) gui).getLeft() - codechicken.nei.recipe.RecipeInfo.getGuiOffset(gui)[0], GuiDraw.getMousePosition().y - ((GT_GUIContainer_FusionReactor) gui).getTop() - codechicken.nei.recipe.RecipeInfo.getGuiOffset(gui)[1]))) && (usage ? GuiUsageRecipe.openRecipeGui(((GT_GUIContainer_FusionReactor) gui).mNEI) : GuiCraftingRecipe.openRecipeGui(((GT_GUIContainer_FusionReactor) gui).mNEI));
- } else if (gui instanceof GT_GUIContainer_PrimitiveBlastFurnace) {
- return (canHandle(gui)) && (new Rectangle(51, 10, 24, 24).contains(new Point(GuiDraw.getMousePosition().x - ((GT_GUIContainer_PrimitiveBlastFurnace) gui).getLeft() - codechicken.nei.recipe.RecipeInfo.getGuiOffset(gui)[0], GuiDraw.getMousePosition().y - ((GT_GUIContainer_PrimitiveBlastFurnace) gui).getTop() - codechicken.nei.recipe.RecipeInfo.getGuiOffset(gui)[1]))) && (usage ? GuiUsageRecipe.openRecipeGui(((GT_GUIContainer_PrimitiveBlastFurnace) gui).mNEI) : GuiCraftingRecipe.openRecipeGui(((GT_GUIContainer_PrimitiveBlastFurnace) gui).mNEI));
- }
- return false;
- }
-
@Override
public List<String> handleItemDisplayName(GuiContainer gui, ItemStack itemstack, List<String> currenttip) {
return currenttip;
@@ -412,7 +567,7 @@ public class GT_NEI_DefaultHandler extends RecipeMapHandler {
try {
maybeIn = aRecipe.getInputPositionedStacks();
- } catch(NullPointerException npe) {
+ } catch (NullPointerException npe) {
maybeIn = null;
GT_Log.err.println("CachedDefaultRecipe - Invalid InputPositionedStacks " + aRecipe);
npe.printStackTrace(GT_Log.err);
@@ -425,7 +580,7 @@ public class GT_NEI_DefaultHandler extends RecipeMapHandler {
npe.printStackTrace(GT_Log.err);
}
- if ( maybeIn != null && maybeOut != null) {
+ if (maybeIn != null && maybeOut != null) {
mInputs = maybeIn;
mOutputs = maybeOut;
return;
@@ -884,14 +1039,17 @@ public class GT_NEI_DefaultHandler extends RecipeMapHandler {
}
}
- public String trans(String aKey, String aEnglish){
- return GT_LanguageManager.addStringLocalization("Interaction_DESCRIPTION_Index_"+aKey, aEnglish, false);
+ @Deprecated
+ public String trans(String aKey, String aEnglish) {
+ return GT_Utility.trans(aKey, aEnglish);
}
private static class SortedRecipeListCache {
private int mCachedRecipesVersion = -1;
@Nullable
private SoftReference<List<CachedDefaultRecipe>> mCachedRecipes;
+ private Range<Integer>[] mTierIndexes;
+ private Range<Byte> mTierRange;
public int getCachedRecipesVersion() {
return mCachedRecipesVersion;
@@ -909,5 +1067,58 @@ public class GT_NEI_DefaultHandler extends RecipeMapHandler {
public void setCachedRecipes(@Nonnull List<CachedDefaultRecipe> aCachedRecipes) {
this.mCachedRecipes = new SoftReference<>(aCachedRecipes);
}
+
+ public Range<Integer> getIndexRangeForTiers(byte lowerTier, byte upperTier) {
+ if (mTierIndexes == null) {
+ computeTierIndexes();
+ }
+ return Range.between(getLowIndexForTier(lowerTier), getHighIndexForTier(upperTier));
+ }
+
+ private void computeTierIndexes() {
+ mTierIndexes = new Range[GT_Values.V.length];
+ Iterator<CachedDefaultRecipe> iterator = mCachedRecipes.get().iterator();
+
+ int index = 0;
+ int minIndex = 0;
+ int maxIndex = -1;
+ byte previousTier = -1;
+ byte lowestTier = 0;
+ while(iterator.hasNext()) {
+ CachedDefaultRecipe recipe = iterator.next();
+ byte recipeTier = GT_Utility.getTier(recipe.mRecipe.mEUt);
+ if (recipeTier != previousTier) {
+ if ( maxIndex != -1) {
+ mTierIndexes[previousTier] = Range.between(minIndex, maxIndex);
+ } else {
+ lowestTier = recipeTier;
+ }
+ minIndex = index;
+ previousTier = recipeTier;
+ }
+ maxIndex = index;
+ index++;
+ if (!iterator.hasNext()) {
+ mTierIndexes[recipeTier] = Range.between(minIndex, maxIndex);
+ mTierRange = Range.between(lowestTier, recipeTier);
+ }
+ }
+ }
+
+ private int getLowIndexForTier(byte lowerTier) {
+ byte lowTier = (byte) Math.max(mTierRange.getMinimum(), lowerTier);
+ while (mTierIndexes[lowTier] == null) {
+ lowTier++;
+ }
+ return mTierIndexes[lowTier].getMinimum();
+ }
+
+ private int getHighIndexForTier(byte upperTier) {
+ byte highTier = (byte) Math.min(mTierRange.getMaximum(), upperTier);
+ while (mTierIndexes[highTier] == null) {
+ highTier--;
+ }
+ return mTierIndexes[highTier].getMaximum();
+ }
}
}
diff --git a/src/main/java/gregtech/nei/NEIHandlerAbsoluteTooltip.java b/src/main/java/gregtech/nei/NEIHandlerAbsoluteTooltip.java
new file mode 100644
index 0000000000..fae3b68882
--- /dev/null
+++ b/src/main/java/gregtech/nei/NEIHandlerAbsoluteTooltip.java
@@ -0,0 +1,52 @@
+package gregtech.nei;
+
+import codechicken.lib.gui.GuiDraw;
+
+import java.awt.*;
+import java.util.List;
+
+public class NEIHandlerAbsoluteTooltip {
+ private final Rectangle area;
+ private final String tooltip;
+ private Dimension displaySize;
+
+ public NEIHandlerAbsoluteTooltip(String tooltip, Rectangle area) {
+ this.tooltip = tooltip;
+ this.area = area;
+ }
+
+ public void handleTooltip(List<String> currenttip, int recipeIndex) {
+ displaySize = GuiDraw.displaySize();
+ if (shouldAddTooltip(recipeIndex)) {
+ currenttip.add(tooltip);
+ }
+ }
+
+ private boolean shouldAddTooltip(int recipeIndex) {
+ return isPageFirstRecipe(recipeIndex) && mouseInArea();
+ }
+
+ private boolean mouseInArea() {
+ Point mousePos = getRelMouse();
+ return area.contains(mousePos);
+ }
+
+
+ private Point getRelMouse() {
+ int ySize = Math.min(Math.max(displaySize.height - 68, 166), 370);
+ int guiLeft = (displaySize.width - 176) / 2;
+ int guiTop = (displaySize.height - ySize) / 2 + 10;
+ Point mousePos = GuiDraw.getMousePosition();
+ return new Point(mousePos.x - guiLeft - 5, mousePos.y - guiTop - 38);
+ }
+
+ private boolean isPageFirstRecipe(int recipe) {
+ int actualRecipesPerPage = getActualRecipesPerPage();
+ return actualRecipesPerPage < 2 || recipe % 2 == 0;
+ }
+
+ private int getActualRecipesPerPage() {
+ int ySize = Math.min(Math.max(displaySize.height - 68, 166), 370);
+ return (ySize - (12*3)) / 135;
+ }
+}
diff --git a/src/main/java/gregtech/nei/NEI_TransferRectHost.java b/src/main/java/gregtech/nei/NEI_TransferRectHost.java
new file mode 100644
index 0000000000..e04740cf99
--- /dev/null
+++ b/src/main/java/gregtech/nei/NEI_TransferRectHost.java
@@ -0,0 +1,10 @@
+package gregtech.nei;
+
+import java.awt.*;
+
+public interface NEI_TransferRectHost {
+ String getNeiTransferRectString();
+ String getNeiTransferRectTooltip();
+ Object[] getNeiTransferRectArgs();
+ Rectangle getNeiTransferRect();
+}