From 1fc7a00ec73b727939f84317de1bd8dcaa7a47d7 Mon Sep 17 00:00:00 2001 From: Felipe Paschoal Bergamo <64669985+felipepasc@users.noreply.github.com> Date: Tue, 3 Jun 2025 18:53:19 -0300 Subject: [PATCH] fix: errors --- .../java/me/tofaa/entitylib/APIConfig.java | 1 + .../java/me/tofaa/entitylib/EntityLibAPI.java | 15 ++------ .../me/tofaa/entitylib/meta/EntityMeta.java | 35 +++++++++---------- .../meta/display/TextDisplayMeta.java | 1 + .../entitylib/wrapper/WrapperEntity.java | 13 +++++-- .../wrapper/WrapperEntityPotionEffect.java | 2 +- .../common/AbstractEntityLibAPI.java | 28 --------------- 7 files changed, 33 insertions(+), 62 deletions(-) diff --git a/api/src/main/java/me/tofaa/entitylib/APIConfig.java b/api/src/main/java/me/tofaa/entitylib/APIConfig.java index 4394618..3cba7e7 100644 --- a/api/src/main/java/me/tofaa/entitylib/APIConfig.java +++ b/api/src/main/java/me/tofaa/entitylib/APIConfig.java @@ -82,4 +82,5 @@ public final class APIConfig { && EntityLib.getOptionalApi().isPresent() && EntityLib.getOptionalApi().get().getPacketEvents().getServerManager().getVersion().isNewerThanOrEquals(ServerVersion.V_1_19_4); } + } diff --git a/api/src/main/java/me/tofaa/entitylib/EntityLibAPI.java b/api/src/main/java/me/tofaa/entitylib/EntityLibAPI.java index 44614fc..c6041f7 100644 --- a/api/src/main/java/me/tofaa/entitylib/EntityLibAPI.java +++ b/api/src/main/java/me/tofaa/entitylib/EntityLibAPI.java @@ -1,22 +1,14 @@ package me.tofaa.entitylib; import com.github.retrooper.packetevents.PacketEventsAPI; -import com.github.retrooper.packetevents.protocol.entity.type.EntityType; -import com.github.retrooper.packetevents.protocol.player.UserProfile; -import com.github.retrooper.packetevents.protocol.world.Location; -import com.github.retrooper.packetevents.wrapper.PacketWrapper; import me.tofaa.entitylib.container.EntityContainer; import me.tofaa.entitylib.tick.TickContainer; import me.tofaa.entitylib.wrapper.WrapperEntity; -import me.tofaa.entitylib.wrapper.WrapperPlayer; -import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.Collection; import java.util.UUID; -import java.util.function.BiConsumer; -import java.util.function.Consumer; /** * Represents the API for EntityLib. @@ -58,10 +50,7 @@ public interface EntityLibAPI { */ void addTickContainer(@NotNull TickContainer tickContainer); - @NotNull BiConsumer> getPacketDispatcher(); - - void setPacketDispatcher(@NotNull BiConsumer> packetDispatcher); - - @NotNull EntityContainer getDefaultContainer(); + @NotNull + EntityContainer getDefaultContainer(); } diff --git a/api/src/main/java/me/tofaa/entitylib/meta/EntityMeta.java b/api/src/main/java/me/tofaa/entitylib/meta/EntityMeta.java index 8f99e4b..b628c8a 100644 --- a/api/src/main/java/me/tofaa/entitylib/meta/EntityMeta.java +++ b/api/src/main/java/me/tofaa/entitylib/meta/EntityMeta.java @@ -140,60 +140,60 @@ public class EntityMeta implements EntityMetadataProvider { } public short getAirTicks() { - return this.metadata.getIndex((byte) 1, (short) 300); + return this.metadata.getIndex((byte)1, (short) 300); } public void setAirTicks(short value) { - this.metadata.setIndex((byte) 1, EntityDataTypes.SHORT, value); + this.metadata.setIndex((byte)1, EntityDataTypes.SHORT, value); } public Component getCustomName() { - Optional component = this.metadata.getIndex((byte) 2, Optional.empty()); + Optional component = this.metadata.getIndex((byte)2, Optional.empty()); return component.orElse(null); } public void setCustomName(Component value) { - this.metadata.setIndex((byte) 2, EntityDataTypes.OPTIONAL_ADV_COMPONENT, Optional.ofNullable(value)); + this.metadata.setIndex((byte)2, EntityDataTypes.OPTIONAL_ADV_COMPONENT, Optional.ofNullable(value)); } public boolean isCustomNameVisible() { - return this.metadata.getIndex((byte) 3, false); + return this.metadata.getIndex((byte)3, false); } public void setCustomNameVisible(boolean value) { - this.metadata.setIndex((byte) 3, EntityDataTypes.BOOLEAN, value); + this.metadata.setIndex((byte)3, EntityDataTypes.BOOLEAN, value); } public boolean isSilent() { - return this.metadata.getIndex((byte) 4, false); + return this.metadata.getIndex((byte)4, false); } public void setSilent(boolean value) { - this.metadata.setIndex((byte) 4, EntityDataTypes.BOOLEAN, value); + this.metadata.setIndex((byte)4, EntityDataTypes.BOOLEAN, value); } public boolean hasNoGravity() { - return this.metadata.getIndex((byte) 5, true); + return this.metadata.getIndex((byte)5, true); } public void setHasNoGravity(boolean value) { - this.metadata.setIndex((byte) 5, EntityDataTypes.BOOLEAN, value); + this.metadata.setIndex((byte)5, EntityDataTypes.BOOLEAN, value); } public EntityPose getPose() { - return this.metadata.getIndex((byte) 6, EntityPose.STANDING); + return this.metadata.getIndex((byte)6, EntityPose.STANDING); } public void setPose(EntityPose value) { - this.metadata.setIndex((byte) 6, EntityDataTypes.ENTITY_POSE, value); + this.metadata.setIndex((byte)6, EntityDataTypes.ENTITY_POSE, value); } public int getTicksFrozenInPowderedSnow() { - return this.metadata.getIndex((byte) 7, 0); + return this.metadata.getIndex((byte)7, 0); } public void setTicksFrozenInPowderedSnow(int value) { - this.metadata.setIndex((byte) 7, EntityDataTypes.INT, value); + this.metadata.setIndex((byte)7, EntityDataTypes.INT, value); } public WrapperPlayServerEntityMetadata createPacket() { @@ -206,7 +206,6 @@ public class EntityMeta implements EntityMetadataProvider { throw new InvalidVersionException("This method is only available for versions newer than " + version.name() + "."); } } - if (!PacketEvents.getAPI().getServerManager().getVersion().is(VersionComparison.NEWER_THAN, version)) { throw new InvalidVersionException("This method is only available for versions newer than " + version.name() + "."); } @@ -230,7 +229,7 @@ public class EntityMeta implements EntityMetadataProvider { /** * Annoying java 8 not letting me do OFFSET + amount in the method call so this is a workaround * - * @param value the value to offset + * @param value the value to offset * @param amount the amount to offset by * @return the offset value */ @@ -259,7 +258,7 @@ public class EntityMeta implements EntityMetadataProvider { } public void setMaskBit(int index, byte bit, boolean value) { - byte mask = getMask((byte) index); + byte mask = getMask((byte)index); boolean currentValue = (mask & bit) == bit; if (currentValue == value) { return; @@ -269,7 +268,7 @@ public class EntityMeta implements EntityMetadataProvider { } else { mask &= (byte) ~bit; } - setMask((byte) index, mask); + setMask((byte)index, mask); } @Override diff --git a/api/src/main/java/me/tofaa/entitylib/meta/display/TextDisplayMeta.java b/api/src/main/java/me/tofaa/entitylib/meta/display/TextDisplayMeta.java index 7fb8f71..85ef64e 100644 --- a/api/src/main/java/me/tofaa/entitylib/meta/display/TextDisplayMeta.java +++ b/api/src/main/java/me/tofaa/entitylib/meta/display/TextDisplayMeta.java @@ -19,6 +19,7 @@ public class TextDisplayMeta extends AbstractDisplayMeta { super(entityId, metadata); } + public Component getText() { return metadata.getIndex(OFFSET, Component.empty()); } diff --git a/api/src/main/java/me/tofaa/entitylib/wrapper/WrapperEntity.java b/api/src/main/java/me/tofaa/entitylib/wrapper/WrapperEntity.java index 4206a79..eb65d0c 100644 --- a/api/src/main/java/me/tofaa/entitylib/wrapper/WrapperEntity.java +++ b/api/src/main/java/me/tofaa/entitylib/wrapper/WrapperEntity.java @@ -509,9 +509,18 @@ public class WrapperEntity implements Tickable { } private static void sendPacket(UUID user, PacketWrapper wrapper) { - if (wrapper != null) { - EntityLib.getApi().getPacketDispatcher().accept(user, wrapper); + if (wrapper == null) return; + + Object channel = EntityLib.getApi().getPacketEvents().getProtocolManager().getChannel(user); + if (channel == null) { + if (EntityLib.getApi().getSettings().isDebugMode()) { + EntityLib.getPlatform().getLogger().warning("Failed to send packet to " + user + " because the channel was null. They may be disconnected/not online."); + } + + return; } + + EntityLib.getApi().getPacketEvents().getProtocolManager().sendPacket(channel, wrapper); } public boolean hasNoGravity() { diff --git a/api/src/main/java/me/tofaa/entitylib/wrapper/WrapperEntityPotionEffect.java b/api/src/main/java/me/tofaa/entitylib/wrapper/WrapperEntityPotionEffect.java index 2d47629..eecc52d 100644 --- a/api/src/main/java/me/tofaa/entitylib/wrapper/WrapperEntityPotionEffect.java +++ b/api/src/main/java/me/tofaa/entitylib/wrapper/WrapperEntityPotionEffect.java @@ -165,7 +165,7 @@ public class WrapperEntityPotionEffect { new ArrayList<>(this.effects.values()).forEach(effect -> { WrapperPlayServerEntityEffect wrapperPlayServerEntityEffect = createEffectPacket(effect); - this.entity.sendPacketsToViewers(wrapperPlayServerEntityEffect); + this.entity.sendPacketToViewers(wrapperPlayServerEntityEffect); }); } } diff --git a/common/src/main/java/me/tofaa/entitylib/common/AbstractEntityLibAPI.java b/common/src/main/java/me/tofaa/entitylib/common/AbstractEntityLibAPI.java index d8577c9..bfee9b4 100644 --- a/common/src/main/java/me/tofaa/entitylib/common/AbstractEntityLibAPI.java +++ b/common/src/main/java/me/tofaa/entitylib/common/AbstractEntityLibAPI.java @@ -1,9 +1,7 @@ package me.tofaa.entitylib.common; import com.github.retrooper.packetevents.PacketEventsAPI; -import com.github.retrooper.packetevents.wrapper.PacketWrapper; import me.tofaa.entitylib.APIConfig; -import me.tofaa.entitylib.EntityLib; import me.tofaa.entitylib.EntityLibAPI; import me.tofaa.entitylib.Platform; import me.tofaa.entitylib.container.EntityContainer; @@ -16,8 +14,6 @@ import java.util.Collection; import java.util.Collections; import java.util.HashSet; import java.util.UUID; -import java.util.function.BiConsumer; - public abstract class AbstractEntityLibAPI implements EntityLibAPI { protected final Platform

platform; @@ -26,25 +22,11 @@ public abstract class AbstractEntityLibAPI implements EntityLibAPI { protected final Collection> tickContainers; protected final EntityContainer defaultEntityContainer = EntityContainer.basic(); - protected BiConsumer> packetDispatcher; - protected AbstractEntityLibAPI(Platform

platform, APIConfig settings) { this.platform = platform; this.packetEvents = settings.getPacketEvents(); this.settings = settings; this.tickContainers = settings.shouldTickTickables() ? new HashSet<>() : Collections.emptyList(); - this.packetDispatcher = (user, wrapper) -> { - Object channel = EntityLib.getApi().getPacketEvents().getProtocolManager().getChannel(user); - if (channel == null) { - if (EntityLib.getApi().getSettings().isDebugMode()) { - EntityLib.getPlatform().getLogger().warning("Failed to send packet to " + user + " because the channel was null. They may be disconnected/not online."); - } - - return; - } - - EntityLib.getApi().getPacketEvents().getProtocolManager().sendPacket(channel, wrapper); - }; } @Override @@ -77,16 +59,6 @@ public abstract class AbstractEntityLibAPI implements EntityLibAPI { return packetEvents; } - @Override - public @NotNull BiConsumer> getPacketDispatcher() { - return packetDispatcher; - } - - @Override - public void setPacketDispatcher(@NotNull BiConsumer> packetDispatcher) { - this.packetDispatcher = packetDispatcher; - } - @Override public @NotNull Collection> getTickContainers() { return tickContainers;