diff options
Diffstat (limited to 'src/main/java')
-rw-r--r-- | src/main/java/gregtech/api/multitileentity/machine/MultiTileBasicMachine.java | 10 | ||||
-rw-r--r-- | src/main/java/gregtech/api/multitileentity/multiblock/base/MultiBlockController.java | 9 |
2 files changed, 12 insertions, 7 deletions
diff --git a/src/main/java/gregtech/api/multitileentity/machine/MultiTileBasicMachine.java b/src/main/java/gregtech/api/multitileentity/machine/MultiTileBasicMachine.java index 680116e95a..e50236c93b 100644 --- a/src/main/java/gregtech/api/multitileentity/machine/MultiTileBasicMachine.java +++ b/src/main/java/gregtech/api/multitileentity/machine/MultiTileBasicMachine.java @@ -455,7 +455,7 @@ public abstract class MultiTileBasicMachine extends TickableMultiTileEntity impl protected void runMachine(long tick) { if (acceptsFuel() && isActive()) { if (!consumeFuel()) { - stopMachine(); + stopMachine(true); return; } } @@ -561,7 +561,7 @@ public abstract class MultiTileBasicMachine extends TickableMultiTileEntity impl } if (logic.removeEnergyUnsafe(eut)) { - stopMachine(); + stopMachine(true); } } @@ -766,11 +766,13 @@ public abstract class MultiTileBasicMachine extends TickableMultiTileEntity impl } } - protected void stopMachine() { + protected void stopMachine(boolean powerShutDown) { progressTime = 0; setActive(false); disableWorking(); - setSound(GregTechTileClientEvents.STOP_SOUND_LOOP, INTERRUPT_SOUND_INDEX); + if (powerShutDown) { + setSound(GregTechTileClientEvents.STOP_SOUND_LOOP, INTERRUPT_SOUND_INDEX); + } issueClientUpdate(); } diff --git a/src/main/java/gregtech/api/multitileentity/multiblock/base/MultiBlockController.java b/src/main/java/gregtech/api/multitileentity/multiblock/base/MultiBlockController.java index 088b640dbd..1355ac13a6 100644 --- a/src/main/java/gregtech/api/multitileentity/multiblock/base/MultiBlockController.java +++ b/src/main/java/gregtech/api/multitileentity/multiblock/base/MultiBlockController.java @@ -71,6 +71,7 @@ import gnu.trove.list.array.TIntArrayList; import gregtech.api.enums.GT_Values; import gregtech.api.enums.GT_Values.NBT; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.SoundResource; import gregtech.api.enums.TextureSet; import gregtech.api.fluid.FluidTankGT; import gregtech.api.gui.modularui.GT_UITextures; @@ -402,7 +403,7 @@ public abstract class MultiBlockController<T extends MultiBlockController<T>> ex public void setExtendedFacing(ExtendedFacing newExtendedFacing) { if (extendedFacing != newExtendedFacing) { onStructureChange(); - if (structureOkay) stopMachine(); + if (structureOkay) stopMachine(false); extendedFacing = newExtendedFacing; structureOkay = false; if (isServerSide()) { @@ -503,7 +504,7 @@ public abstract class MultiBlockController<T extends MultiBlockController<T>> ex if (structureOkay) { runMachine(tick); } else { - stopMachine(); + stopMachine(false); } } else { doActivitySound(getActivitySoundLoop()); @@ -1526,7 +1527,9 @@ public abstract class MultiBlockController<T extends MultiBlockController<T>> ex enableWorking(); } }) - .setPlayClickSound(true); + .setPlayClickSoundResource( + () -> isAllowedToWork() ? SoundResource.GUI_BUTTON_UP.resourceLocation + : SoundResource.GUI_BUTTON_DOWN.resourceLocation); button.setBackground(() -> { List<UITexture> ret = new ArrayList<>(); ret.add(GT_UITextures.BUTTON_STANDARD); |