diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 4cae9d2..260948f 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,11 +1,9 @@ -# To get started with Dependabot version updates, you'll need to specify which -# package ecosystems to update and where the package manifests are located. -# Please see the documentation for all configuration options: -# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates - version: 2 updates: - - package-ecosystem: "maven" # See documentation for possible values - directory: "/" # Location of package manifests + - package-ecosystem: "maven" + directory: "/" schedule: - interval: "daily" \ No newline at end of file + interval: "daily" + target-branch: "development" + commit-message: + prefix: "chore(deps): " \ No newline at end of file diff --git a/pom.xml b/pom.xml index 3bb09ab..5eecb15 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ tech.sbdevelopment MapReflectionAPI - 1.6.4 + 1.6.5 jar MapReflectionAPI @@ -166,13 +166,17 @@ dmulloy2-repo https://repo.dmulloy2.net/repository/public/ + + jitpack.io + https://jitpack.io + org.spigotmc spigot-api - 1.21-R0.1-SNAPSHOT + 1.21.3-R0.1-SNAPSHOT provided @@ -188,9 +192,9 @@ compile - com.github.cryptomorin + com.github.stijnb1234 XSeries - 11.3.0 + 5a4bf81a2c @@ -203,7 +207,7 @@ io.netty netty-transport - 4.1.114.Final + 4.1.97.Final provided diff --git a/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MapSender.java b/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MapSender.java index 9e46c98..b43f148 100644 --- a/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MapSender.java +++ b/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MapSender.java @@ -86,8 +86,8 @@ public class MapSender { } private static final Class packetPlayOutMapClass = getNMSClass("network.protocol.game", "PacketPlayOutMap"); - private static final Class worldMapData = supports(17) ? getNMSClass("world.level.saveddata.maps", "WorldMap$b") : null; - private static final Class mapId = supports(21) ? getNMSClass("world.level.saveddata.maps", "MapId") : null; + private static final Class worldMapData = supports(17) ? getNMSClass("world.level.saveddata.maps", supports(21, 2) ? "WorldMap$c" : "WorldMap$b") : null; //1.21.2+ uses WorldMap$c, 1.17+ uses WorldMap$b + private static final Class mapIdClazz = supports(21) ? getNMSClass("world.level.saveddata.maps", "MapId") : null; /** * Send a map to a player @@ -124,7 +124,7 @@ public class MapSender { content.array //Data ); - Object mapId = ReflectionUtil.callConstructor(getNMSClass("world.level.saveddata.maps", "MapId"), id); + Object mapId = ReflectionUtil.callConstructor(mapIdClazz, id); packet = ReflectionUtil.callConstructor(packetPlayOutMapClass, mapId, //ID diff --git a/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MapWrapper.java b/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MapWrapper.java index 534728c..70b23e6 100644 --- a/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MapWrapper.java +++ b/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MapWrapper.java @@ -295,7 +295,7 @@ public class MapWrapper extends AbstractMapWrapper { //1.20.5 uses new NBT compound system if (supports(20, 4)) { - Object mapIdComponent = ReflectionUtil.getDeclaredField(getNMSClass("core.component", "DataComponents"), "B"); + Object mapIdComponent = ReflectionUtil.getDeclaredField(getNMSClass("core.component", "DataComponents"), supports(21, 2) ? "L" : "B"); //1.21.2+ uses L, otherwise B Object mapId1 = ReflectionUtil.callConstructor(getNMSClass("world.level.saveddata.maps", "MapId"), mapId); // Use generic reflection because of generics @@ -330,7 +330,7 @@ public class MapWrapper extends AbstractMapWrapper { String dataWatcherObjectName; if (supports(21)) { //1.21 - dataWatcherObjectName = "f"; + dataWatcherObjectName = supports(21, 2) ? "e" : "f"; //1.21.2+ = e, 1.21(.1) = f } else if (supports(19, 3)) { //1.19.3 and 1.20(.1) dataWatcherObjectName = "g"; } else if (supports(19)) { //1.19-1.19.2 diff --git a/src/main/java/tech/sbdevelopment/mapreflectionapi/listeners/PacketListener.java b/src/main/java/tech/sbdevelopment/mapreflectionapi/listeners/PacketListener.java index ec3daf2..eef5b61 100644 --- a/src/main/java/tech/sbdevelopment/mapreflectionapi/listeners/PacketListener.java +++ b/src/main/java/tech/sbdevelopment/mapreflectionapi/listeners/PacketListener.java @@ -30,19 +30,15 @@ import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.event.player.PlayerQuitEvent; import org.bukkit.inventory.ItemStack; import org.bukkit.util.Vector; -import sun.misc.Unsafe; import tech.sbdevelopment.mapreflectionapi.MapReflectionAPI; import tech.sbdevelopment.mapreflectionapi.api.events.CreativeInventoryMapUpdateEvent; import tech.sbdevelopment.mapreflectionapi.api.events.MapCancelEvent; import tech.sbdevelopment.mapreflectionapi.api.events.MapInteractEvent; import tech.sbdevelopment.mapreflectionapi.utils.ReflectionUtil; -import java.lang.reflect.Field; -import java.lang.reflect.Modifier; import java.util.concurrent.TimeUnit; import static com.cryptomorin.xseries.reflection.minecraft.MinecraftConnection.getConnection; -import static com.cryptomorin.xseries.reflection.minecraft.MinecraftConnection.getHandle; import static tech.sbdevelopment.mapreflectionapi.utils.ReflectionUtil.*; import static com.cryptomorin.xseries.reflection.XReflection.*; @@ -207,9 +203,9 @@ public class PacketListener implements Listener { if (!(vec3d.getClass().isAssignableFrom(vec3DClass))) return new Vector(0, 0, 0); Object vec3dNMS = vec3DClass.cast(vec3d); - double x = (double) getDeclaredField(vec3dNMS, supports(19) ? "c" : supports(17) ? "b" : "x"); //1.19 = c, 1.18 = b, 1.16 = x - double y = (double) getDeclaredField(vec3dNMS, supports(19) ? "d" : supports(17) ? "c" : "y"); //1.19 = d, 1.18 = c, 1.16 = y - double z = (double) getDeclaredField(vec3dNMS, supports(19) ? "e" : supports(17) ? "d" : "z"); //1.19 = e, 1.18 = d, 1.16 = z + double x = (double) getDeclaredField(vec3dNMS, supports(21, 2) ? "d" : supports(19) ? "c" : supports(17) ? "b" : "x"); //1.21.2+ = d, 1.19 = c, 1.18 = b, 1.16 = x + double y = (double) getDeclaredField(vec3dNMS, supports(21, 2) ? "e" : supports(19) ? "d" : supports(17) ? "c" : "y"); //1.21.2+ = e, 1.19 = d, 1.18 = c, 1.16 = y + double z = (double) getDeclaredField(vec3dNMS, supports(21, 2) ? "f" : supports(19) ? "e" : supports(17) ? "d" : "z"); //1.21.2+ = f, 1.19 = e, 1.18 = d, 1.16 = z return new Vector(x, y, z); }