diff --git a/.mvn/jvm.config b/.mvn/jvm.config deleted file mode 100644 index e2a50e08..00000000 --- a/.mvn/jvm.config +++ /dev/null @@ -1 +0,0 @@ ---add-exports jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED --add-exports jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED --add-exports jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED --add-exports jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED --add-exports jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED \ No newline at end of file diff --git a/1_10_R1/pom.xml b/1_10_R1/pom.xml index eb7c45d5..467fd507 100644 --- a/1_10_R1/pom.xml +++ b/1_10_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_10_R1 diff --git a/1_10_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_10_R1.java b/1_10_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_10_R1.java index 9f99272b..a45989d4 100644 --- a/1_10_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_10_R1.java +++ b/1_10_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_10_R1.java @@ -50,6 +50,14 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).playerConnection.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).playerConnection.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/1_11_R1/pom.xml b/1_11_R1/pom.xml index 37283fbd..5e64d41d 100644 --- a/1_11_R1/pom.xml +++ b/1_11_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_11_R1 diff --git a/1_11_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_11_R1.java b/1_11_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_11_R1.java index 6680ad7c..c6bf9c1d 100644 --- a/1_11_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_11_R1.java +++ b/1_11_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_11_R1.java @@ -50,6 +50,14 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).playerConnection.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).playerConnection.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/1_12_R1/pom.xml b/1_12_R1/pom.xml index 4f88d038..0cb52dfe 100644 --- a/1_12_R1/pom.xml +++ b/1_12_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_12_R1 diff --git a/1_12_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_12_R1.java b/1_12_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_12_R1.java index 4a9d8aab..4324fd92 100644 --- a/1_12_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_12_R1.java +++ b/1_12_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_12_R1.java @@ -50,6 +50,14 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).playerConnection.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).playerConnection.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/1_13_R1/pom.xml b/1_13_R1/pom.xml index 18e50d79..112dc4b3 100644 --- a/1_13_R1/pom.xml +++ b/1_13_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_13_R1 diff --git a/1_13_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_13_R1.java b/1_13_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_13_R1.java index 4e7ad696..9d78659b 100644 --- a/1_13_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_13_R1.java +++ b/1_13_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_13_R1.java @@ -50,6 +50,14 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).playerConnection.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).playerConnection.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/1_13_R2/pom.xml b/1_13_R2/pom.xml index 262d8aaf..b206ceea 100644 --- a/1_13_R2/pom.xml +++ b/1_13_R2/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_13_R2 diff --git a/1_13_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_13_R2.java b/1_13_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_13_R2.java index de8f3d36..4972b541 100644 --- a/1_13_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_13_R2.java +++ b/1_13_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_13_R2.java @@ -50,6 +50,14 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).playerConnection.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).playerConnection.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/1_14_4_R1/pom.xml b/1_14_4_R1/pom.xml index 5eb69477..510bf5d3 100644 --- a/1_14_4_R1/pom.xml +++ b/1_14_4_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_14_4_R1 diff --git a/1_14_R1/pom.xml b/1_14_R1/pom.xml index 5a9c10c8..a9a25eec 100644 --- a/1_14_R1/pom.xml +++ b/1_14_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_14_R1 diff --git a/1_14_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_14_R1.java b/1_14_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_14_R1.java index e2912a2d..8f55d1d2 100644 --- a/1_14_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_14_R1.java +++ b/1_14_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_14_R1.java @@ -56,6 +56,14 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).playerConnection.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).playerConnection.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/1_15_R1/pom.xml b/1_15_R1/pom.xml index 3cf08f2e..7c3a51ab 100644 --- a/1_15_R1/pom.xml +++ b/1_15_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_15_R1 diff --git a/1_15_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_15_R1.java b/1_15_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_15_R1.java index 7363ca36..2dc25064 100644 --- a/1_15_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_15_R1.java +++ b/1_15_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_15_R1.java @@ -47,6 +47,14 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).playerConnection.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).playerConnection.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/1_16_R1/pom.xml b/1_16_R1/pom.xml index aabfc850..fabf3a4d 100644 --- a/1_16_R1/pom.xml +++ b/1_16_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_16_R1 diff --git a/1_16_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_16_R1.java b/1_16_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_16_R1.java index 43c84aec..fb7f4a30 100644 --- a/1_16_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_16_R1.java +++ b/1_16_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_16_R1.java @@ -47,6 +47,14 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).playerConnection.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).playerConnection.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/1_16_R2/pom.xml b/1_16_R2/pom.xml index 0f03f6a6..c5576e4e 100644 --- a/1_16_R2/pom.xml +++ b/1_16_R2/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_16_R2 diff --git a/1_16_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_16_R2.java b/1_16_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_16_R2.java index 4f0a3cf3..ee2795f0 100644 --- a/1_16_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_16_R2.java +++ b/1_16_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_16_R2.java @@ -47,6 +47,14 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).playerConnection.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).playerConnection.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/1_16_R3/pom.xml b/1_16_R3/pom.xml index 7b9e241f..3594a1d2 100644 --- a/1_16_R3/pom.xml +++ b/1_16_R3/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_16_R3 diff --git a/1_16_R3/src/main/java/net/wesjd/anvilgui/version/Wrapper1_16_R3.java b/1_16_R3/src/main/java/net/wesjd/anvilgui/version/Wrapper1_16_R3.java index a2416d3a..33d645ec 100644 --- a/1_16_R3/src/main/java/net/wesjd/anvilgui/version/Wrapper1_16_R3.java +++ b/1_16_R3/src/main/java/net/wesjd/anvilgui/version/Wrapper1_16_R3.java @@ -47,6 +47,14 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).playerConnection.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).playerConnection.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/1_17_1_R1/pom.xml b/1_17_1_R1/pom.xml index 72c265eb..d7a3306d 100644 --- a/1_17_1_R1/pom.xml +++ b/1_17_1_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_17_1_R1 diff --git a/1_17_R1/pom.xml b/1_17_R1/pom.xml index 105e2321..ff6ba912 100644 --- a/1_17_R1/pom.xml +++ b/1_17_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_17_R1 diff --git a/1_17_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_17_R1.java b/1_17_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_17_R1.java index ca4b0b17..a6e598c2 100644 --- a/1_17_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_17_R1.java +++ b/1_17_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_17_R1.java @@ -4,6 +4,7 @@ import net.minecraft.network.chat.ChatComponentText; import net.minecraft.network.chat.IChatBaseComponent; import net.minecraft.network.protocol.game.PacketPlayOutCloseWindow; +import net.minecraft.network.protocol.game.PacketPlayOutExperience; import net.minecraft.network.protocol.game.PacketPlayOutOpenWindow; import net.minecraft.server.level.EntityPlayer; import net.minecraft.world.IInventory; @@ -62,6 +63,14 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).b.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).b.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/1_18_R1/pom.xml b/1_18_R1/pom.xml index 36fc4a31..a2d0d39c 100644 --- a/1_18_R1/pom.xml +++ b/1_18_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_18_R1 diff --git a/1_18_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_18_R1.java b/1_18_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_18_R1.java index a03169af..7083c114 100644 --- a/1_18_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_18_R1.java +++ b/1_18_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_18_R1.java @@ -4,6 +4,7 @@ import net.minecraft.network.chat.ChatComponentText; import net.minecraft.network.chat.IChatBaseComponent; import net.minecraft.network.protocol.game.PacketPlayOutCloseWindow; +import net.minecraft.network.protocol.game.PacketPlayOutExperience; import net.minecraft.network.protocol.game.PacketPlayOutOpenWindow; import net.minecraft.server.level.EntityPlayer; import net.minecraft.world.IInventory; @@ -51,6 +52,11 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).b.a(new PacketPlayOutCloseWindow(containerId)); } + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).b.a(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + @Override public void setActiveContainerDefault(Player player) { (toNMS(player)).bW = (toNMS(player)).bV; diff --git a/1_18_R2/pom.xml b/1_18_R2/pom.xml index 20cab821..a86ac598 100644 --- a/1_18_R2/pom.xml +++ b/1_18_R2/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_18_R2 diff --git a/1_18_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_18_R2.java b/1_18_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_18_R2.java index 47a7315e..8120a978 100644 --- a/1_18_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_18_R2.java +++ b/1_18_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_18_R2.java @@ -4,6 +4,7 @@ import net.minecraft.network.chat.ChatComponentText; import net.minecraft.network.chat.IChatBaseComponent; import net.minecraft.network.protocol.game.PacketPlayOutCloseWindow; +import net.minecraft.network.protocol.game.PacketPlayOutExperience; import net.minecraft.network.protocol.game.PacketPlayOutOpenWindow; import net.minecraft.server.level.EntityPlayer; import net.minecraft.world.IInventory; @@ -51,6 +52,11 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).b.a(new PacketPlayOutCloseWindow(containerId)); } + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).b.a(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + @Override public void setActiveContainerDefault(Player player) { (toNMS(player)).bV = (toNMS(player)).bU; diff --git a/1_19_1_R1/pom.xml b/1_19_1_R1/pom.xml index bd03c87b..03e33810 100644 --- a/1_19_1_R1/pom.xml +++ b/1_19_1_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_19_1_R1 diff --git a/1_19_R1/pom.xml b/1_19_R1/pom.xml index 30dedb35..47f45128 100644 --- a/1_19_R1/pom.xml +++ b/1_19_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_19_R1 diff --git a/1_19_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_19_R1.java b/1_19_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_19_R1.java index eb52a900..6378d1c3 100644 --- a/1_19_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_19_R1.java +++ b/1_19_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_19_R1.java @@ -3,6 +3,7 @@ import net.minecraft.core.BlockPosition; import net.minecraft.network.chat.IChatBaseComponent; import net.minecraft.network.protocol.game.PacketPlayOutCloseWindow; +import net.minecraft.network.protocol.game.PacketPlayOutExperience; import net.minecraft.network.protocol.game.PacketPlayOutOpenWindow; import net.minecraft.server.level.EntityPlayer; import net.minecraft.world.IInventory; @@ -58,6 +59,11 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).b.a(new PacketPlayOutCloseWindow(containerId)); } + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).b.a(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + @Override public void setActiveContainerDefault(Player player) { toNMS(player).bU = toNMS(player).bT; diff --git a/1_19_R2/pom.xml b/1_19_R2/pom.xml index d139cbf0..6708802f 100644 --- a/1_19_R2/pom.xml +++ b/1_19_R2/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_19_R2 diff --git a/1_19_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_19_R2.java b/1_19_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_19_R2.java index b0cb14f1..746eb531 100644 --- a/1_19_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_19_R2.java +++ b/1_19_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_19_R2.java @@ -3,6 +3,7 @@ import net.minecraft.core.BlockPosition; import net.minecraft.network.chat.IChatBaseComponent; import net.minecraft.network.protocol.game.PacketPlayOutCloseWindow; +import net.minecraft.network.protocol.game.PacketPlayOutExperience; import net.minecraft.network.protocol.game.PacketPlayOutOpenWindow; import net.minecraft.server.level.EntityPlayer; import net.minecraft.world.IInventory; @@ -50,6 +51,11 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).b.a(new PacketPlayOutCloseWindow(containerId)); } + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).b.a(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + @Override public void setActiveContainerDefault(Player player) { toNMS(player).bU = toNMS(player).bT; diff --git a/1_19_R3/pom.xml b/1_19_R3/pom.xml index 3b5cfe67..90861be3 100644 --- a/1_19_R3/pom.xml +++ b/1_19_R3/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_19_R3 diff --git a/1_19_R3/src/main/java/net/wesjd/anvilgui/version/Wrapper1_19_R3.java b/1_19_R3/src/main/java/net/wesjd/anvilgui/version/Wrapper1_19_R3.java index cb2f2b66..77944691 100644 --- a/1_19_R3/src/main/java/net/wesjd/anvilgui/version/Wrapper1_19_R3.java +++ b/1_19_R3/src/main/java/net/wesjd/anvilgui/version/Wrapper1_19_R3.java @@ -3,6 +3,7 @@ import net.minecraft.core.BlockPosition; import net.minecraft.network.chat.IChatBaseComponent; import net.minecraft.network.protocol.game.PacketPlayOutCloseWindow; +import net.minecraft.network.protocol.game.PacketPlayOutExperience; import net.minecraft.network.protocol.game.PacketPlayOutOpenWindow; import net.minecraft.server.level.EntityPlayer; import net.minecraft.world.IInventory; @@ -50,6 +51,11 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).b.a(new PacketPlayOutCloseWindow(containerId)); } + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).b.a(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + @Override public void setActiveContainerDefault(Player player) { toNMS(player).bP = toNMS(player).bO; diff --git a/1_20_R1/pom.xml b/1_20_R1/pom.xml index d78b67a7..66977962 100644 --- a/1_20_R1/pom.xml +++ b/1_20_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_20_R1 diff --git a/1_20_R1/src/main/java/net.wesjd.anvilgui.version/Wrapper1_20_R1.java b/1_20_R1/src/main/java/net.wesjd.anvilgui.version/Wrapper1_20_R1.java index 03fbfc64..d2230a72 100644 --- a/1_20_R1/src/main/java/net.wesjd.anvilgui.version/Wrapper1_20_R1.java +++ b/1_20_R1/src/main/java/net.wesjd.anvilgui.version/Wrapper1_20_R1.java @@ -3,6 +3,7 @@ import net.minecraft.core.BlockPosition; import net.minecraft.network.chat.IChatBaseComponent; import net.minecraft.network.protocol.game.PacketPlayOutCloseWindow; +import net.minecraft.network.protocol.game.PacketPlayOutExperience; import net.minecraft.network.protocol.game.PacketPlayOutOpenWindow; import net.minecraft.server.level.EntityPlayer; import net.minecraft.world.IInventory; @@ -50,6 +51,11 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).c.a(new PacketPlayOutCloseWindow(containerId)); } + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).c.a(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + @Override public void setActiveContainerDefault(Player player) { toNMS(player).bR = toNMS(player).bQ; diff --git a/1_20_R2/pom.xml b/1_20_R2/pom.xml index 8fad56c2..6bc66770 100644 --- a/1_20_R2/pom.xml +++ b/1_20_R2/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_20_R2 diff --git a/1_20_R2/src/main/java/net.wesjd.anvilgui.version/Wrapper1_20_R2.java b/1_20_R2/src/main/java/net.wesjd.anvilgui.version/Wrapper1_20_R2.java index fdc2db94..a554008e 100644 --- a/1_20_R2/src/main/java/net.wesjd.anvilgui.version/Wrapper1_20_R2.java +++ b/1_20_R2/src/main/java/net.wesjd.anvilgui.version/Wrapper1_20_R2.java @@ -3,6 +3,7 @@ import net.minecraft.core.BlockPosition; import net.minecraft.network.chat.IChatBaseComponent; import net.minecraft.network.protocol.game.PacketPlayOutCloseWindow; +import net.minecraft.network.protocol.game.PacketPlayOutExperience; import net.minecraft.network.protocol.game.PacketPlayOutOpenWindow; import net.minecraft.server.level.EntityPlayer; import net.minecraft.world.IInventory; @@ -50,6 +51,11 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).c.b(new PacketPlayOutCloseWindow(containerId)); } + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).c.b(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + @Override public void setActiveContainerDefault(Player player) { toNMS(player).bS = toNMS(player).bR; diff --git a/1_20_R3/pom.xml b/1_20_R3/pom.xml index 9dda794b..b658099a 100644 --- a/1_20_R3/pom.xml +++ b/1_20_R3/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_20_R3 diff --git a/1_20_R3/src/main/java/net.wesjd.anvilgui.version/Wrapper1_20_R3.java b/1_20_R3/src/main/java/net.wesjd.anvilgui.version/Wrapper1_20_R3.java index 1f51101a..c37ed3db 100644 --- a/1_20_R3/src/main/java/net.wesjd.anvilgui.version/Wrapper1_20_R3.java +++ b/1_20_R3/src/main/java/net.wesjd.anvilgui.version/Wrapper1_20_R3.java @@ -3,6 +3,7 @@ import net.minecraft.core.BlockPosition; import net.minecraft.network.chat.IChatBaseComponent; import net.minecraft.network.protocol.game.PacketPlayOutCloseWindow; +import net.minecraft.network.protocol.game.PacketPlayOutExperience; import net.minecraft.network.protocol.game.PacketPlayOutOpenWindow; import net.minecraft.server.level.EntityPlayer; import net.minecraft.world.IInventory; @@ -50,6 +51,11 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).c.b(new PacketPlayOutCloseWindow(containerId)); } + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).c.b(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + @Override public void setActiveContainerDefault(Player player) { toNMS(player).bS = toNMS(player).bR; diff --git a/1_20_R4/pom.xml b/1_20_R4/pom.xml index 326d868f..0c82881a 100644 --- a/1_20_R4/pom.xml +++ b/1_20_R4/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_20_R4 diff --git a/1_20_R4/src/main/java/net.wesjd.anvilgui.version/Wrapper1_20_R4.java b/1_20_R4/src/main/java/net.wesjd.anvilgui.version/Wrapper1_20_R4.java index 2d9e61a2..3762508c 100644 --- a/1_20_R4/src/main/java/net.wesjd.anvilgui.version/Wrapper1_20_R4.java +++ b/1_20_R4/src/main/java/net.wesjd.anvilgui.version/Wrapper1_20_R4.java @@ -5,6 +5,7 @@ import net.minecraft.core.component.DataComponents; import net.minecraft.network.chat.IChatBaseComponent; import net.minecraft.network.protocol.game.PacketPlayOutCloseWindow; +import net.minecraft.network.protocol.game.PacketPlayOutExperience; import net.minecraft.network.protocol.game.PacketPlayOutOpenWindow; import net.minecraft.server.level.EntityPlayer; import net.minecraft.world.IInventory; @@ -52,6 +53,11 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).c.b(new PacketPlayOutCloseWindow(containerId)); } + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).c.b(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + @Override public void setActiveContainerDefault(Player player) { toNMS(player).cb = toNMS(player).ca; // cb -> containerMenu, ca -> inventoryMenu diff --git a/1_21_R1/pom.xml b/1_21_R1/pom.xml index ecc403cd..13ee1591 100644 --- a/1_21_R1/pom.xml +++ b/1_21_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_21_R1 diff --git a/1_21_R1/src/main/java/net.wesjd.anvilgui.version/Wrapper1_21_R1.java b/1_21_R1/src/main/java/net.wesjd.anvilgui.version/Wrapper1_21_R1.java index 7857fde0..f9ab284e 100644 --- a/1_21_R1/src/main/java/net.wesjd.anvilgui.version/Wrapper1_21_R1.java +++ b/1_21_R1/src/main/java/net.wesjd.anvilgui.version/Wrapper1_21_R1.java @@ -5,6 +5,7 @@ import net.minecraft.core.component.DataComponents; import net.minecraft.network.chat.IChatBaseComponent; import net.minecraft.network.protocol.game.PacketPlayOutCloseWindow; +import net.minecraft.network.protocol.game.PacketPlayOutExperience; import net.minecraft.network.protocol.game.PacketPlayOutOpenWindow; import net.minecraft.server.level.EntityPlayer; import net.minecraft.world.IInventory; @@ -52,6 +53,11 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).c.b(new PacketPlayOutCloseWindow(containerId)); } + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).c.b(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + @Override public void setActiveContainerDefault(Player player) { toNMS(player).cd = toNMS(player).cc; // cb -> containerMenu, ca -> inventoryMenu diff --git a/1_7_R4/pom.xml b/1_7_R4/pom.xml index e1e290a8..7d91f3bb 100644 --- a/1_7_R4/pom.xml +++ b/1_7_R4/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_7_R4 diff --git a/1_7_R4/src/main/java/net/wesjd/anvilgui/version/Wrapper1_7_R4.java b/1_7_R4/src/main/java/net/wesjd/anvilgui/version/Wrapper1_7_R4.java index 459d6c71..dd5fff2a 100644 --- a/1_7_R4/src/main/java/net/wesjd/anvilgui/version/Wrapper1_7_R4.java +++ b/1_7_R4/src/main/java/net/wesjd/anvilgui/version/Wrapper1_7_R4.java @@ -48,6 +48,14 @@ public void sendPacketCloseWindow(final Player player, final int containerId) { this.toNMS(player).playerConnection.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(final Player player, final int experienceLevel) { + toNMS(player).playerConnection.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/1_8_R1/pom.xml b/1_8_R1/pom.xml index f52fdfa4..4d0e7401 100644 --- a/1_8_R1/pom.xml +++ b/1_8_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_8_R1 diff --git a/1_8_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_8_R1.java b/1_8_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_8_R1.java index 7688a422..8b814bce 100644 --- a/1_8_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_8_R1.java +++ b/1_8_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_8_R1.java @@ -50,6 +50,14 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).playerConnection.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).playerConnection.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/1_8_R2/pom.xml b/1_8_R2/pom.xml index 7a72e748..8ec95990 100644 --- a/1_8_R2/pom.xml +++ b/1_8_R2/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_8_R2 diff --git a/1_8_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_8_R2.java b/1_8_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_8_R2.java index 290bcdab..a15dbafc 100644 --- a/1_8_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_8_R2.java +++ b/1_8_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_8_R2.java @@ -50,6 +50,14 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).playerConnection.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).playerConnection.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/1_8_R3/pom.xml b/1_8_R3/pom.xml index 2321b9d9..e9c39233 100644 --- a/1_8_R3/pom.xml +++ b/1_8_R3/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_8_R3 diff --git a/1_8_R3/src/main/java/net/wesjd/anvilgui/version/Wrapper1_8_R3.java b/1_8_R3/src/main/java/net/wesjd/anvilgui/version/Wrapper1_8_R3.java index c7ef0ea9..ebf50215 100644 --- a/1_8_R3/src/main/java/net/wesjd/anvilgui/version/Wrapper1_8_R3.java +++ b/1_8_R3/src/main/java/net/wesjd/anvilgui/version/Wrapper1_8_R3.java @@ -50,6 +50,14 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).playerConnection.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).playerConnection.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/1_9_R1/pom.xml b/1_9_R1/pom.xml index 84d6fe5f..836da289 100644 --- a/1_9_R1/pom.xml +++ b/1_9_R1/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_9_R1 diff --git a/1_9_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_9_R1.java b/1_9_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_9_R1.java index 885d91e4..595ad92f 100644 --- a/1_9_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_9_R1.java +++ b/1_9_R1/src/main/java/net/wesjd/anvilgui/version/Wrapper1_9_R1.java @@ -50,6 +50,14 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).playerConnection.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).playerConnection.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/1_9_R2/pom.xml b/1_9_R2/pom.xml index 154bf5f7..b3613d3a 100644 --- a/1_9_R2/pom.xml +++ b/1_9_R2/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-1_9_R2 diff --git a/1_9_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_9_R2.java b/1_9_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_9_R2.java index 38f8609b..02fd17fa 100644 --- a/1_9_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_9_R2.java +++ b/1_9_R2/src/main/java/net/wesjd/anvilgui/version/Wrapper1_9_R2.java @@ -50,6 +50,14 @@ public void sendPacketCloseWindow(Player player, int containerId) { toNMS(player).playerConnection.sendPacket(new PacketPlayOutCloseWindow(containerId)); } + /** + * {@inheritDoc} + */ + @Override + public void sendPacketExperienceChange(Player player, int experienceLevel) { + toNMS(player).playerConnection.sendPacket(new PacketPlayOutExperience(0f, 0, experienceLevel)); + } + /** * {@inheritDoc} */ diff --git a/README.md b/README.md index 0ff11631..dbc3feb1 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,7 @@ AnvilGUI requires the usage of Maven or a Maven compatible build system. net.wesjd anvilgui - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT @@ -158,6 +158,13 @@ Useful for situations like password input to play. builder.preventClose(); ``` +#### `geyserCompat()` +This toggles compatibility with Geyser software, specifically being able to use AnvilGUI with 0 experience level on Bedrock. +Enabled by default. +```java +builder.geyserCompat(); +``` + #### `text(String)` Takes a `String` that contains what the initial text in the renaming field should be set to. If `itemLeft` is provided, then the display name is set to the provided text. If no `itemLeft` diff --git a/abstraction/pom.xml b/abstraction/pom.xml index 9e6dd9c3..51ea9b9a 100644 --- a/abstraction/pom.xml +++ b/abstraction/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui-abstraction diff --git a/abstraction/src/main/java/net/wesjd/anvilgui/version/VersionWrapper.java b/abstraction/src/main/java/net/wesjd/anvilgui/version/VersionWrapper.java index 88fdcf65..5efe2c56 100644 --- a/abstraction/src/main/java/net/wesjd/anvilgui/version/VersionWrapper.java +++ b/abstraction/src/main/java/net/wesjd/anvilgui/version/VersionWrapper.java @@ -37,13 +37,21 @@ public interface VersionWrapper { void sendPacketOpenWindow(Player player, int containerId, Object inventoryTitle); /** - * Sends PacketPlayOutCloseWindow to the player with the contaienr id + * Sends PacketPlayOutCloseWindow to the player with the container id * * @param player The player to send the packet to * @param containerId The container id to close */ void sendPacketCloseWindow(Player player, int containerId); + /** + * Sends PacketPlayOutExperience to the player with the experience level + * + * @param player The player to send the packet to + * @param experienceLevel The experience level to set + */ + void sendPacketExperienceChange(Player player, int experienceLevel); + /** * Sets the NMS player's active container to the default one * diff --git a/api/pom.xml b/api/pom.xml index 5af2e9aa..d1ee8a15 100644 --- a/api/pom.xml +++ b/api/pom.xml @@ -7,7 +7,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT anvilgui @@ -205,6 +205,12 @@ ${project.parent.version} compile + + org.geysermc.geyser + api + 2.4.0-SNAPSHOT + provided + diff --git a/api/src/main/java/net/wesjd/anvilgui/AnvilGUI.java b/api/src/main/java/net/wesjd/anvilgui/AnvilGUI.java index 6e8ed050..1aab4e5f 100644 --- a/api/src/main/java/net/wesjd/anvilgui/AnvilGUI.java +++ b/api/src/main/java/net/wesjd/anvilgui/AnvilGUI.java @@ -27,6 +27,7 @@ import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; import org.bukkit.plugin.Plugin; +import org.geysermc.geyser.api.GeyserApi; /** * An anvil gui, used for gathering a user's input @@ -80,7 +81,10 @@ private static ItemStack itemNotNull(ItemStack stack) { * A state that decides where the anvil GUI is able to get closed by the user */ private final boolean preventClose; - + /** + * A state that decides whether compatibility with Geyser software is enabled + */ + private final boolean geyserCompatibility; /** * A set of slot numbers that are permitted to be interacted with by the user. An interactable * slot is one that is able to be minipulated by the player, i.e. clicking and picking up an item, @@ -122,15 +126,16 @@ private static ItemStack itemNotNull(ItemStack stack) { /** * Create an AnvilGUI * - * @param plugin A {@link org.bukkit.plugin.java.JavaPlugin} instance - * @param player The {@link Player} to open the inventory for - * @param mainThreadExecutor An {@link Executor} that executes on the main server thread - * @param titleComponent What to have the text already set to - * @param initialContents The initial contents of the inventory - * @param preventClose Whether to prevent the inventory from closing - * @param closeListener A {@link Consumer} when the inventory closes + * @param plugin A {@link org.bukkit.plugin.java.JavaPlugin} instance + * @param player The {@link Player} to open the inventory for + * @param mainThreadExecutor An {@link Executor} that executes on the main server thread + * @param titleComponent What to have the text already set to + * @param initialContents The initial contents of the inventory + * @param preventClose Whether to prevent the inventory from closing + * @param geyserCompatibility Whether to enable compatibility with Geyser software + * @param closeListener A {@link Consumer} when the inventory closes * @param concurrentClickHandlerExecution Flag to allow concurrent execution of the click handler - * @param clickHandler A {@link ClickHandler} that is called when the player clicks a slot + * @param clickHandler A {@link ClickHandler} that is called when the player clicks a slot */ private AnvilGUI( Plugin plugin, @@ -139,6 +144,7 @@ private AnvilGUI( Object titleComponent, ItemStack[] initialContents, boolean preventClose, + boolean geyserCompatibility, Set interactableSlots, Consumer closeListener, boolean concurrentClickHandlerExecution, @@ -149,6 +155,7 @@ private AnvilGUI( this.titleComponent = titleComponent; this.initialContents = initialContents; this.preventClose = preventClose; + this.geyserCompatibility = geyserCompatibility; this.interactableSlots = Collections.unmodifiableSet(interactableSlots); this.closeListener = closeListener; this.concurrentClickHandlerExecution = concurrentClickHandlerExecution; @@ -179,6 +186,16 @@ private void openInventory() { WRAPPER.setActiveContainerId(container, containerId); WRAPPER.addActiveContainerSlotListener(container, player); + if (geyserCompatibility + && plugin.getServer().getPluginManager().getPlugin("Geyser-Spigot") != null + && plugin.getServer() + .getPluginManager() + .getPlugin("Geyser-Spigot") + .isEnabled() + && GeyserApi.api().isBedrockPlayer(player.getUniqueId())) { + WRAPPER.sendPacketExperienceChange(player, 20); + } + open = true; } @@ -208,6 +225,15 @@ private void closeInventory(boolean sendClosePacket) { WRAPPER.setActiveContainerDefault(player); WRAPPER.sendPacketCloseWindow(player, containerId); } + if (geyserCompatibility + && plugin.getServer().getPluginManager().getPlugin("Geyser-Spigot") != null + && plugin.getServer() + .getPluginManager() + .getPlugin("Geyser-Spigot") + .isEnabled() + && GeyserApi.api().isBedrockPlayer(player.getUniqueId())) { + WRAPPER.sendPacketExperienceChange(player, player.getLevel()); + } if (closeListener != null) { closeListener.accept(StateSnapshot.fromAnvilGUI(this)); @@ -392,6 +418,8 @@ public static class Builder { private ClickHandler clickHandler; /** A state that decides where the anvil GUI is able to be closed by the user */ private boolean preventClose = false; + /** A state that determines whether support for Geyser software is enabled */ + private boolean geyserCompatibility = true; /** A set of integers containing the slot numbers that should be modifiable by the user. */ private Set interactableSlots = Collections.emptySet(); /** The {@link Plugin} that this anvil GUI is associated with */ @@ -430,6 +458,14 @@ public Builder preventClose() { return this; } + /** + * Disables compatibility with Geyser software + */ + public Builder disableGeyserCompat() { + geyserCompatibility = false; + return this; + } + /** * Permit the user to modify (take items in and out) the slot numbers provided. * @@ -640,6 +676,7 @@ public AnvilGUI open(Player player) { titleComponent, new ItemStack[] {itemLeft, itemRight, itemOutput}, preventClose, + geyserCompatibility, interactableSlots, closeListener, concurrentClickHandlerExecution, diff --git a/pom.xml b/pom.xml index 80282ee5..55c6eab3 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ net.wesjd anvilgui-parent - 1.9.6-SNAPSHOT + 1.10.0-SNAPSHOT pom @@ -53,6 +53,10 @@ nms-repo https://repo.codemc.org/repository/nms/ + + opencollab-snapshot + https://repo.opencollab.dev/main/ +