diff options
author | NotAPenguin <michiel.vandeginste@gmail.com> | 2024-09-02 23:17:17 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-09-02 23:17:17 +0200 |
commit | 1b820de08a05070909a267e17f033fcf58ac8710 (patch) | |
tree | 02831a025986a06b20f87e5bcc69d1e0c639a342 /src/main/java/gregtech/api/net/GTPacketToolSwitchMode.java | |
parent | afd3fd92b6a6ab9ab0d0dc3214e6bc8ff7a86c9b (diff) | |
download | GT5-Unofficial-1b820de08a05070909a267e17f033fcf58ac8710.tar.gz GT5-Unofficial-1b820de08a05070909a267e17f033fcf58ac8710.tar.bz2 GT5-Unofficial-1b820de08a05070909a267e17f033fcf58ac8710.zip |
The Great Renaming (#3014)
* move kekztech to a single root dir
* move detrav to a single root dir
* move gtnh-lanthanides to a single root dir
* move tectech and delete some gross reflection in gt++
* remove more reflection inside gt5u
* delete more reflection in gt++
* fix imports
* move bartworks and bwcrossmod
* fix proxies
* move galactigreg and ggfab
* move gtneioreplugin
* try to fix gt++ bee loader
* apply the rename rules to BW
* apply rename rules to bwcrossmod
* apply rename rules to detrav scanner mod
* apply rename rules to galacticgreg
* apply rename rules to ggfab
* apply rename rules to goodgenerator
* apply rename rules to gtnh-lanthanides
* apply rename rules to gt++
* apply rename rules to kekztech
* apply rename rules to kubatech
* apply rename rules to tectech
* apply rename rules to gt
apply the rename rules to gt
* fix tt import
* fix mui hopefully
* fix coremod except intergalactic
* rename assline recipe class
* fix a class name i stumbled on
* rename StructureUtility to GTStructureUtility to prevent conflict with structurelib
* temporary rename of GTTooltipDataCache to old name
* fix gt client/server proxy names
Diffstat (limited to 'src/main/java/gregtech/api/net/GTPacketToolSwitchMode.java')
-rw-r--r-- | src/main/java/gregtech/api/net/GTPacketToolSwitchMode.java | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/src/main/java/gregtech/api/net/GTPacketToolSwitchMode.java b/src/main/java/gregtech/api/net/GTPacketToolSwitchMode.java new file mode 100644 index 0000000000..57cabcf2bf --- /dev/null +++ b/src/main/java/gregtech/api/net/GTPacketToolSwitchMode.java @@ -0,0 +1,52 @@ +package gregtech.api.net; + +import net.minecraft.entity.player.EntityPlayerMP; +import net.minecraft.item.ItemStack; +import net.minecraft.network.INetHandler; +import net.minecraft.network.NetHandlerPlayServer; +import net.minecraft.world.IBlockAccess; + +import com.google.common.io.ByteArrayDataInput; + +import gregtech.api.items.MetaGeneratedTool; +import io.netty.buffer.ByteBuf; + +public class GTPacketToolSwitchMode extends GTPacketNew { + + private EntityPlayerMP player; + + public GTPacketToolSwitchMode() { + super(true); + } + + @Override + public byte getPacketID() { + return GTPacketTypes.TOOL_SWITCH_MODE.id; + } + + @Override + public void encode(ByteBuf aOut) { + + } + + @Override + public GTPacketNew decode(ByteArrayDataInput aData) { + return new GTPacketToolSwitchMode(); + } + + @Override + public void setINetHandler(INetHandler aHandler) { + player = ((NetHandlerPlayServer) aHandler).playerEntity; + } + + @Override + public void process(IBlockAccess aWorld) { + ItemStack currentItem = player.inventory.getCurrentItem(); + if (currentItem == null || (!(currentItem.getItem() instanceof MetaGeneratedTool item))) return; + byte maxMode = item.getToolMaxMode(currentItem); + if (maxMode <= 1) return; + byte newMode = (byte) ((MetaGeneratedTool.getToolMode(currentItem) + 1) % maxMode); + MetaGeneratedTool.setToolMode(currentItem, newMode); + player.sendSlotContents(player.inventoryContainer, player.inventory.currentItem, currentItem); + } +} |