package pneumaticCraft.common.network; import io.netty.buffer.ByteBuf; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; import pneumaticCraft.PneumaticCraft; import pneumaticCraft.api.client.pneumaticHelmet.IHackableEntity; import pneumaticCraft.client.render.pneumaticArmor.hacking.HackableHandler; import pneumaticCraft.common.CommonHUDHandler; public class PacketHackingEntityFinish extends AbstractPacket<PacketHackingEntityFinish>{ private int entityId; public PacketHackingEntityFinish(){} public PacketHackingEntityFinish(Entity entity){ entityId = entity.getEntityId(); } @Override public void fromBytes(ByteBuf buf){ entityId = buf.readInt(); } @Override public void toBytes(ByteBuf buf){ buf.writeInt(entityId); } @Override public void handleClientSide(PacketHackingEntityFinish message, EntityPlayer player){ Entity entity = player.worldObj.getEntityByID(message.entityId); if(entity != null) { IHackableEntity hackableEntity = HackableHandler.getHackableForEntity(entity, player); if(hackableEntity != null) { hackableEntity.onHackFinished(entity, player); PneumaticCraft.proxy.getHackTickHandler().trackEntity(entity, hackableEntity); CommonHUDHandler.getHandlerForPlayer(player).setHackedEntity(null); player.worldObj.playSound(entity.posX, entity.posY, entity.posZ, "PneumaticCraft:helmetHackFinish", 1.0F, 1.0F, false); } } } @Override public void handleServerSide(PacketHackingEntityFinish message, EntityPlayer player){} }