diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 3f14df4..57f7120 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -6,18 +6,9 @@
-
-
-
-
-
-
-
-
-
-
+
@@ -304,7 +295,9 @@
-
+
+
+
diff --git a/api/src/main/java/me/tofaa/entitylib/meta/Metadata.java b/api/src/main/java/me/tofaa/entitylib/meta/Metadata.java
index da5adbf..971e2c8 100644
--- a/api/src/main/java/me/tofaa/entitylib/meta/Metadata.java
+++ b/api/src/main/java/me/tofaa/entitylib/meta/Metadata.java
@@ -83,7 +83,7 @@ public class Metadata {
public boolean isNotifyingChanges() {
- return notifyChanges;
+ return notifyChanges;
}
@NotNull List getEntries() {
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 d1078fc..4472f04 100644
--- a/api/src/main/java/me/tofaa/entitylib/wrapper/WrapperEntity.java
+++ b/api/src/main/java/me/tofaa/entitylib/wrapper/WrapperEntity.java
@@ -327,7 +327,15 @@ public class WrapperEntity implements Tickable {
}
private static void sendPacket(UUID user, PacketWrapper> wrapper) {
- EntityLib.getApi().getPacketEvents().getProtocolManager().sendPacket(EntityLib.getApi().getPacketEvents().getProtocolManager().getChannel(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);
}
public boolean hasNoGravity() {
diff --git a/api/src/main/java/me/tofaa/entitylib/wrapper/WrapperEntityEquipment.java b/api/src/main/java/me/tofaa/entitylib/wrapper/WrapperEntityEquipment.java
index 99b9a67..9b2aa8f 100644
--- a/api/src/main/java/me/tofaa/entitylib/wrapper/WrapperEntityEquipment.java
+++ b/api/src/main/java/me/tofaa/entitylib/wrapper/WrapperEntityEquipment.java
@@ -19,7 +19,7 @@ public class WrapperEntityEquipment {
private static final EquipmentSlot[] EQUIPMENT_SLOTS = EquipmentSlot.values();
private final WrapperLivingEntity entity;
-
+ private boolean notifyChanges = true;
// 0 = main hand, 1 = offhand, 2 = boots, 3 = leggings, 4 = chestplate, 5 = helmet
private final ItemStack[] equipment = new ItemStack[6];
@@ -113,7 +113,19 @@ public class WrapperEntityEquipment {
public void refresh() {
- this.entity.sendPacketToViewers(createPacket());
+ if (notifyChanges) {
+ this.entity.sendPacketToViewers(createPacket());
+ }
}
+ public boolean isNotifyingChanges() {
+ return notifyChanges;
+ }
+
+ public void setNotifyChanges(boolean notifyChanges) {
+ this.notifyChanges = notifyChanges;
+ if (notifyChanges) {
+ refresh();
+ }
+ }
}