Closed Regomy closed 4 months ago
import com.github.retrooper.packetevents.PacketEvents; import com.github.retrooper.packetevents.event.PacketListenerAbstract; import com.github.retrooper.packetevents.event.PacketSendEvent; import com.github.retrooper.packetevents.manager.server.ServerVersion; import com.github.retrooper.packetevents.protocol.item.ItemStack; import com.github.retrooper.packetevents.protocol.item.enchantment.Enchantment; import com.github.retrooper.packetevents.protocol.item.enchantment.type.EnchantmentTypes; import com.github.retrooper.packetevents.protocol.packettype.PacketType; import com.github.retrooper.packetevents.protocol.player.ClientVersion; import com.github.retrooper.packetevents.protocol.player.Equipment; import com.github.retrooper.packetevents.wrapper.play.server.WrapperPlayServerEntityEquipment; import java.util.Collections; import java.util.List; public class EntityDurHider extends Check implements PacketCheck { public void onPacketSend(PacketSendEvent event) { if (event.getPacketType() == PacketType.Play.Server.ENTITY_EQUIPMENT) { WrapperPlayServerEntityEquipment packet = new WrapperPlayServerEntityEquipment(event); List equipmentList = packet.getEquipment(); if (equipmentList.isEmpty()) return; equipmentList.stream().filter(Objects::nonNull).forEach(equipment -> { ItemStack itemStack = equipment.getItem(); if(itemStack.isDamageableItem()) { if (PacketEvents.getAPI().getServerManager().getVersion().isNewerThanOrEquals(ServerVersion.V_1_13)) { itemStack.setDamageValue(0); } else { itemStack.setLegacyData(0); } equipment.setItem(itemStack); } }); packet.setEquipment(equipmentList); event.markForReEncode(true); } } }
Added in 9.1.0