diff options
Diffstat (limited to 'src/main/java/gregtech')
5 files changed, 38 insertions, 15 deletions
diff --git a/src/main/java/gregtech/api/interfaces/modularui/ControllerWithOptionalFeatures.java b/src/main/java/gregtech/api/interfaces/modularui/ControllerWithOptionalFeatures.java index a877492907..67e6a72776 100644 --- a/src/main/java/gregtech/api/interfaces/modularui/ControllerWithOptionalFeatures.java +++ b/src/main/java/gregtech/api/interfaces/modularui/ControllerWithOptionalFeatures.java @@ -133,6 +133,13 @@ public interface ControllerWithOptionalFeatures extends IVoidable, IRecipeLockab } /** + * @return name for the current machine mode on this machine. Defaults "Unknown Mode" + */ + default String getMachineModeName() { + return "Unknown Mode"; + } + + /** * @param index Index of machineModeIcons to pull from * @return UITexture associated with that machineMode */ @@ -161,6 +168,9 @@ public interface ControllerWithOptionalFeatures extends IVoidable, IRecipeLockab Pos2d getMachineModeSwitchButtonPos(); + /** + * Called when the mode switch button is clicked + */ default void onMachineModeSwitchClick() {} default ButtonWidget createModeSwitchButton(IWidgetBuilder<?> builder) { 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 735119d8bf..46518f0a8d 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 @@ -2455,7 +2455,13 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity screenElements.setSynced(false) .setSpace(0) .setPos(10, 7); - + if (supportsMachineModeSwitch()) { + screenElements.widget( + TextWidget.dynamicString( + () -> EnumChatFormatting.WHITE + GT_Utility.trans("400", "Running mode: ") + + EnumChatFormatting.GOLD + + getMachineModeName())); + } screenElements .widget( new TextWidget(GT_Utility.trans("132", "Pipe is loose.")).setDefaultColor(COLOR_TEXT_WHITE.get()) diff --git a/src/main/java/gregtech/api/util/GT_LanguageManager.java b/src/main/java/gregtech/api/util/GT_LanguageManager.java index 09bf5d7e3b..e153b8e15f 100644 --- a/src/main/java/gregtech/api/util/GT_LanguageManager.java +++ b/src/main/java/gregtech/api/util/GT_LanguageManager.java @@ -541,6 +541,7 @@ public class GT_LanguageManager { addStringLocalization("Interaction_DESCRIPTION_Index_343.1", "Use Inverted Machine Processing State"); addStringLocalization("Interaction_DESCRIPTION_Index_344", "Input Blocking"); addStringLocalization("Interaction_DESCRIPTION_Index_344.1", "Output Blocking"); + addStringLocalization("Interaction_DESCRIPTION_Index_400", "Running mode: "); addStringLocalization("Interaction_DESCRIPTION_Index_500", "Fitting: Loose - More Flow"); addStringLocalization("Interaction_DESCRIPTION_Index_501", "Fitting: Tight - More Efficiency"); addStringLocalization("Interaction_DESCRIPTION_Index_502", "Mining chunk loading enabled"); diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_IndustrialElectromagneticSeparator.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_IndustrialElectromagneticSeparator.java index 9aa92a8125..e0ac38f31f 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_IndustrialElectromagneticSeparator.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_IndustrialElectromagneticSeparator.java @@ -346,19 +346,22 @@ public class GT_MetaTileEntity_IndustrialElectromagneticSeparator } @Override + public void onScrewdriverRightClick(ForgeDirection side, EntityPlayer aPlayer, float aX, float aY, float aZ) { + setMachineMode(nextMachineMode()); + PlayerUtils.messagePlayer( + aPlayer, + String.format(StatCollector.translateToLocal("GT5U.MULTI_MACHINE_CHANGE"), getMachineModeName())); + } + + @Override public void setMachineModeIcons() { machineModeIcons.add(GT_UITextures.OVERLAY_BUTTON_MACHINEMODE_SEPARATOR); machineModeIcons.add(GT_UITextures.OVERLAY_BUTTON_MACHINEMODE_POLARIZER); } @Override - public void onScrewdriverRightClick(ForgeDirection side, EntityPlayer aPlayer, float aX, float aY, float aZ) { - setMachineMode(nextMachineMode()); - if (machineMode == MACHINEMODE_POLARIZER) { - PlayerUtils.messagePlayer(aPlayer, "Now running in Polarizing Mode."); - } else { - PlayerUtils.messagePlayer(aPlayer, "Now running in Separating Mode."); - } + public String getMachineModeName() { + return StatCollector.translateToLocal("GT5U.INDUSTRIAL_ELECTROMAGNETIC_SEPARATOR.mode." + machineMode); } @Override diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiCanner.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiCanner.java index b28a7bdca7..0a207331dd 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiCanner.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiCanner.java @@ -234,19 +234,22 @@ public class GT_MetaTileEntity_MultiCanner extends } @Override + public void onScrewdriverRightClick(ForgeDirection side, EntityPlayer aPlayer, float aX, float aY, float aZ) { + setMachineMode(nextMachineMode()); + PlayerUtils.messagePlayer( + aPlayer, + String.format(StatCollector.translateToLocal("GT5U.MULTI_MACHINE_CHANGE"), getMachineModeName())); + } + + @Override public void setMachineModeIcons() { machineModeIcons.add(GT_UITextures.OVERLAY_BUTTON_MACHINEMODE_PACKAGER); machineModeIcons.add(GT_UITextures.OVERLAY_BUTTON_MACHINEMODE_LPF_FLUID); } @Override - public void onScrewdriverRightClick(ForgeDirection side, EntityPlayer aPlayer, float aX, float aY, float aZ) { - setMachineMode(nextMachineMode()); - if (machineMode == MACHINEMODE_FLUIDCANNER) { - PlayerUtils.messagePlayer(aPlayer, "Now running in Fluid Canning Mode."); - } else { - PlayerUtils.messagePlayer(aPlayer, "Now running in Canning Mode."); - } + public String getMachineModeName() { + return StatCollector.translateToLocal("GT5U.MULTI_CANNER.mode." + machineMode); } @Override |