diff options
author | Glease <4586901+Glease@users.noreply.github.com> | 2023-10-04 04:48:57 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-03 22:48:57 +0200 |
commit | 362be916dea57727d22190f5c244cf0c6d71b257 (patch) | |
tree | 503c7d65553eab725cb39916112c71138d14c037 /src/main/java/gtPlusPlus/xmod | |
parent | 2c0bab2aa569090af05ce02b88de96527d4ce210 (diff) | |
download | GT5-Unofficial-362be916dea57727d22190f5c244cf0c6d71b257.tar.gz GT5-Unofficial-362be916dea57727d22190f5c244cf0c6d71b257.tar.bz2 GT5-Unofficial-362be916dea57727d22190f5c244cf0c6d71b257.zip |
improve maceration stack upgrade process (#757)
* improve maceration stack upgrade process
* spotlessApply (#758)
Co-authored-by: GitHub GTNH Actions <>
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Diffstat (limited to 'src/main/java/gtPlusPlus/xmod')
-rw-r--r-- | src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMacerator.java | 30 |
1 files changed, 25 insertions, 5 deletions
diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMacerator.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMacerator.java index 6148064783..fd388ba69c 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMacerator.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMacerator.java @@ -14,6 +14,7 @@ import static gregtech.api.util.GT_StructureUtility.buildHatchAdder; import java.util.List; import java.util.Random; +import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; @@ -298,17 +299,36 @@ public class GregtechMetaTileEntity_IndustrialMacerator extends @Override public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { super.onPostTick(aBaseMetaTileEntity, aTick); - if (aTick % 20 == 0 && controllerTier == 1) { + if (aBaseMetaTileEntity.isServerSide() && aTick % 20 == 0 && controllerTier == 1) { ItemStack aGuiStack = this.getControllerSlot(); - if (aGuiStack != null) { - if (GT_Utility.areStacksEqual(aGuiStack, GregtechItemList.Maceration_Upgrade_Chip.get(1))) { - controllerTier = 2; - mInventory[1] = ItemUtils.depleteStack(aGuiStack); + if (GregtechItemList.Maceration_Upgrade_Chip.isStackEqual(aGuiStack, false, true)) { + controllerTier = 2; + mInventory[1] = ItemUtils.depleteStack(aGuiStack); + markDirty(); + // schedule a structure check + mUpdated = true; + } + } + } + + @Override + public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer, ForgeDirection side, + float aX, float aY, float aZ) { + if (controllerTier == 1 && !aPlayer.isSneaking()) { + ItemStack heldItem = aPlayer.getHeldItem(); + if (GregtechItemList.Maceration_Upgrade_Chip.isStackEqual(heldItem, false, true)) { + controllerTier = 2; + aPlayer.setCurrentItemOrArmor(0, ItemUtils.depleteStack(heldItem)); + if (getBaseMetaTileEntity().isServerSide()) { + markDirty(); + aPlayer.inventory.markDirty(); // schedule a structure check mUpdated = true; } + return true; } } + return super.onRightclick(aBaseMetaTileEntity, aPlayer, side, aX, aY, aZ); } @Override |