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);
}