From 54caa2595a14fc3d007ab381a1dcf8d4aae0595f Mon Sep 17 00:00:00 2001 From: SBDeveloper Date: Thu, 7 Nov 2024 19:42:50 +0100 Subject: [PATCH 01/16] Implemented changes for 1.21.2/3 (untested) --- pom.xml | 12 ++++++++---- .../mapreflectionapi/api/MapSender.java | 6 +++--- .../mapreflectionapi/api/MapWrapper.java | 4 ++-- .../mapreflectionapi/listeners/PacketListener.java | 10 +++------- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/pom.xml b/pom.xml index 005712b..225d473 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.2.0 + 5a4bf81a2c 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); } From b95f5644c96f93d6651a1f9caed482bcfc9e1de5 Mon Sep 17 00:00:00 2001 From: SBDeveloper Date: Thu, 7 Nov 2024 19:47:06 +0100 Subject: [PATCH 02/16] Updated dependabot config --- .github/dependabot.yml | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) 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 From 7a142d1bb3697ae6c2c8907fc5d26aead519a881 Mon Sep 17 00:00:00 2001 From: SBDeveloper Date: Thu, 7 Nov 2024 19:47:41 +0100 Subject: [PATCH 03/16] Reverted config change --- .github/dependabot.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 260948f..67a6b68 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -4,6 +4,5 @@ updates: directory: "/" schedule: interval: "daily" - target-branch: "development" commit-message: prefix: "chore(deps): " \ No newline at end of file From bb4ef78a3f606d9b8c9c9e97e62d4eb7c0b87e9e Mon Sep 17 00:00:00 2001 From: SBDeveloper Date: Thu, 7 Nov 2024 19:48:09 +0100 Subject: [PATCH 04/16] Reverted config change --- .github/dependabot.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 67a6b68..260948f 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -4,5 +4,6 @@ updates: directory: "/" schedule: interval: "daily" + target-branch: "development" commit-message: prefix: "chore(deps): " \ No newline at end of file From ba5b1f5c6e22d261abb62d6dcf9d4569b3db58df Mon Sep 17 00:00:00 2001 From: SBDeveloper Date: Thu, 27 Mar 2025 19:47:53 +0100 Subject: [PATCH 05/16] 1.21.5 bump --- pom.xml | 14 +++++++------- .../mapreflectionapi/api/MapWrapper.java | 8 +++----- .../mapreflectionapi/api/MultiMapWrapper.java | 8 ++------ 3 files changed, 12 insertions(+), 18 deletions(-) diff --git a/pom.xml b/pom.xml index 5eecb15..d830bee 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ tech.sbdevelopment MapReflectionAPI - 1.6.5 + 1.6.6 jar MapReflectionAPI @@ -48,7 +48,7 @@ org.apache.maven.plugins maven-compiler-plugin - 3.13.0 + 3.14.0 11 @@ -119,7 +119,7 @@ org.apache.maven.plugins maven-javadoc-plugin - 3.11.1 + 3.11.2 11 ${maven.lombok.delombok-target} @@ -176,7 +176,7 @@ org.spigotmc spigot-api - 1.21.3-R0.1-SNAPSHOT + 1.21.5-R0.1-SNAPSHOT provided @@ -192,9 +192,9 @@ compile - com.github.stijnb1234 + com.github.cryptomorin XSeries - 5a4bf81a2c + 13.1.0 @@ -207,7 +207,7 @@ io.netty netty-transport - 4.1.97.Final + 4.1.118.Final provided diff --git a/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MapWrapper.java b/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MapWrapper.java index 70b23e6..c2b6edd 100644 --- a/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MapWrapper.java +++ b/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MapWrapper.java @@ -69,8 +69,6 @@ public class MapWrapper extends AbstractMapWrapper { private static final Class entityMetadataPacketClass = getNMSClass("network.protocol.game", "PacketPlayOutEntityMetadata"); private static final Class entityItemFrameClass = getNMSClass("world.entity.decoration", "EntityItemFrame"); private static final Class dataWatcherItemClass = getNMSClass("network.syncher", "DataWatcher$Item"); - private static final Class minecraftKeyClass = getNMSClass("resources", "MinecraftKey"); - private static final Class builtInRegistriesClass = getNMSClass("core.registries", "BuiltInRegistries"); protected MapController controller = new MapController() { private final Map viewers = new HashMap<>(); @@ -169,8 +167,8 @@ public class MapWrapper extends AbstractMapWrapper { String inventoryMenuName; if (supports(21)) { - //1.21 = cc - inventoryMenuName = "cc"; + //1.21.5 = bQ, 1.21 - 1.21.4 = cc + inventoryMenuName = supports(21, 4) ? "bQ" : "cc"; } else if (supports(20)) { //1.20.5 = cb, 1.20.2 - 1.20.4 = bR, 1.20(.1) = bQ inventoryMenuName = supports(20, 4) ? "cb" : supports(20, 2) ? "bR" : "bQ"; @@ -295,7 +293,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"), supports(21, 2) ? "L" : "B"); //1.21.2+ uses L, otherwise B + Object mapIdComponent = ReflectionUtil.getDeclaredField(getNMSClass("core.component", "DataComponents"), supports(21, 4) ? "M" : 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 diff --git a/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MultiMapWrapper.java b/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MultiMapWrapper.java index 795a2be..be6efd7 100644 --- a/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MultiMapWrapper.java +++ b/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MultiMapWrapper.java @@ -64,10 +64,8 @@ public class MultiMapWrapper extends AbstractMapWrapper { * Creates a new {@link MultiMapWrapper} from the given image. * * @param imageMatrix The image matrix to wrap - * @deprecated Use {@link #MultiMapWrapper(ArrayImage, int, int)} instead, this method is meant for internal use only. */ - @Deprecated(since = "1.6", forRemoval = true) - public MultiMapWrapper(ArrayImage[][] imageMatrix) { + protected MultiMapWrapper(ArrayImage[][] imageMatrix) { wrapperMatrix = new MapWrapper[imageMatrix.length][imageMatrix[0].length]; for (int row = 0; row < imageMatrix.length; row++) { @@ -85,10 +83,8 @@ public class MultiMapWrapper extends AbstractMapWrapper { * Creates a new {@link MultiMapWrapper} from the given image. * * @param imageMatrix The image matrix to wrap - * @deprecated Use {@link #MultiMapWrapper(BufferedImage, int, int)} instead, this method is meant for internal use only. */ - @Deprecated(since = "1.6", forRemoval = true) - public MultiMapWrapper(BufferedImage[][] imageMatrix) { + protected MultiMapWrapper(BufferedImage[][] imageMatrix) { wrapperMatrix = new MapWrapper[imageMatrix.length][imageMatrix[0].length]; for (int row = 0; row < imageMatrix.length; row++) { From c26b514e6cdff8528b649b5215cca22573849302 Mon Sep 17 00:00:00 2001 From: SBDeveloper Date: Thu, 27 Mar 2025 20:14:15 +0100 Subject: [PATCH 06/16] CI Setup --- .forgejo/workflows/build.yaml | 25 +++++++++++++++++++++++++ jitpack.yml | 2 -- 2 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 .forgejo/workflows/build.yaml delete mode 100644 jitpack.yml diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml new file mode 100644 index 0000000..a192086 --- /dev/null +++ b/.forgejo/workflows/build.yaml @@ -0,0 +1,25 @@ +on: [push] + +jobs: + build: + runs-on: docker + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Set up JDK 21 + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: '21' + cache: 'maven' + + - name: Build with Maven + run: mvn -B package --file pom.xml + + - name: Upload build artifacts + uses: actions/upload-artifact@v2 + with: + name: MapReflectionAPI + path: target \ No newline at end of file diff --git a/jitpack.yml b/jitpack.yml deleted file mode 100644 index 46c8529..0000000 --- a/jitpack.yml +++ /dev/null @@ -1,2 +0,0 @@ -jdk: - - openjdk11 \ No newline at end of file From 8de44fccf7169ee50fb4a02a1525712fbba65467 Mon Sep 17 00:00:00 2001 From: SBDeveloper Date: Thu, 27 Mar 2025 20:14:55 +0100 Subject: [PATCH 07/16] CI run From 1a2d8eafc56a228ef254e3330b5c7bc43cd27aff Mon Sep 17 00:00:00 2001 From: SBDeveloper Date: Thu, 27 Mar 2025 20:17:00 +0100 Subject: [PATCH 08/16] Bump --- .forgejo/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index a192086..0fe56c1 100644 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -2,7 +2,7 @@ on: [push] jobs: build: - runs-on: docker + runs-on: ubuntu-latest steps: - name: Checkout code From 8e5a92b30e5eaaaca07a5379373bb36d2ca70ab8 Mon Sep 17 00:00:00 2001 From: SBDeveloper Date: Thu, 27 Mar 2025 20:18:48 +0100 Subject: [PATCH 09/16] Bump --- .forgejo/workflows/build.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 0fe56c1..ec0f753 100644 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -6,10 +6,10 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v4 + uses: https://gitea.com/actions/setup-java@v4 - name: Set up JDK 21 - uses: actions/setup-java@v4 + uses: https://gitea.com/actions/setup-java@v4 with: distribution: 'temurin' java-version: '21' @@ -19,7 +19,7 @@ jobs: run: mvn -B package --file pom.xml - name: Upload build artifacts - uses: actions/upload-artifact@v2 + uses: https://gitea.com/actions/upload-artifact@v4 with: name: MapReflectionAPI path: target \ No newline at end of file From 6ebaa4f3bf6eb2886b46abf333c7f76adeb044ff Mon Sep 17 00:00:00 2001 From: SBDeveloper Date: Thu, 27 Mar 2025 20:19:29 +0100 Subject: [PATCH 10/16] Fixed typo --- .forgejo/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index ec0f753..0059bbf 100644 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -6,7 +6,7 @@ jobs: steps: - name: Checkout code - uses: https://gitea.com/actions/setup-java@v4 + uses: https://gitea.com/actions/checkout@v4 - name: Set up JDK 21 uses: https://gitea.com/actions/setup-java@v4 From ce49f14598da3ae1a276407520e75bcce3e973cf Mon Sep 17 00:00:00 2001 From: SBDeveloper Date: Thu, 27 Mar 2025 20:21:25 +0100 Subject: [PATCH 11/16] Cleanup --- .forgejo/workflows/build.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 0059bbf..037ef06 100644 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -1,7 +1,9 @@ +name: Java CI on: [push] jobs: build: + name: Build runs-on: ubuntu-latest steps: @@ -11,9 +13,7 @@ jobs: - name: Set up JDK 21 uses: https://gitea.com/actions/setup-java@v4 with: - distribution: 'temurin' - java-version: '21' - cache: 'maven' + java-version: 21 - name: Build with Maven run: mvn -B package --file pom.xml From e867b2ff600ff71e2745e7ba48b7b342911ec759 Mon Sep 17 00:00:00 2001 From: SBDeveloper Date: Thu, 27 Mar 2025 20:21:59 +0100 Subject: [PATCH 12/16] Fix CI --- .forgejo/workflows/build.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 037ef06..2f4a49b 100644 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -13,6 +13,7 @@ jobs: - name: Set up JDK 21 uses: https://gitea.com/actions/setup-java@v4 with: + distribution: 'temurin' java-version: 21 - name: Build with Maven From d9e3c4b03daba51fd37e4d95cebca07c90b1375c Mon Sep 17 00:00:00 2001 From: SBDeveloper Date: Thu, 27 Mar 2025 20:24:57 +0100 Subject: [PATCH 13/16] Fix CI --- .forgejo/workflows/build.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 2f4a49b..6a49aab 100644 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -16,6 +16,9 @@ jobs: distribution: 'temurin' java-version: 21 + - name: Set up Maven + uses: https://gitea.com/actions/setup-maven@v4 + - name: Build with Maven run: mvn -B package --file pom.xml From 31410682491fa4e322891eebfbcd49b55d44bb8c Mon Sep 17 00:00:00 2001 From: SBDeveloper Date: Thu, 27 Mar 2025 20:25:07 +0100 Subject: [PATCH 14/16] Fix CI --- .forgejo/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 6a49aab..8e86d9b 100644 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -17,7 +17,7 @@ jobs: java-version: 21 - name: Set up Maven - uses: https://gitea.com/actions/setup-maven@v4 + uses: https://gitea.com/actions/setup-maven@v5 - name: Build with Maven run: mvn -B package --file pom.xml From 9ba39facc9be94b8da28e562f712471db4c2a04a Mon Sep 17 00:00:00 2001 From: SBDeveloper Date: Thu, 27 Mar 2025 20:26:58 +0100 Subject: [PATCH 15/16] Fix CI --- .forgejo/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 8e86d9b..46b697a 100644 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -23,7 +23,7 @@ jobs: run: mvn -B package --file pom.xml - name: Upload build artifacts - uses: https://gitea.com/actions/upload-artifact@v4 + uses: https://gitea.com/actions/upload-artifact@v3 with: name: MapReflectionAPI path: target \ No newline at end of file From e5437f6efdfbcf9e3457bb71f1c2e226833b6908 Mon Sep 17 00:00:00 2001 From: SBDeveloper Date: Sat, 5 Apr 2025 13:32:00 +0200 Subject: [PATCH 16/16] 1.21.4 fix --- .../tech/sbdevelopment/mapreflectionapi/api/MapWrapper.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MapWrapper.java b/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MapWrapper.java index c2b6edd..f8dd0d6 100644 --- a/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MapWrapper.java +++ b/src/main/java/tech/sbdevelopment/mapreflectionapi/api/MapWrapper.java @@ -168,7 +168,7 @@ public class MapWrapper extends AbstractMapWrapper { String inventoryMenuName; if (supports(21)) { //1.21.5 = bQ, 1.21 - 1.21.4 = cc - inventoryMenuName = supports(21, 4) ? "bQ" : "cc"; + inventoryMenuName = supports(21, 5) ? "bQ" : "cc"; } else if (supports(20)) { //1.20.5 = cb, 1.20.2 - 1.20.4 = bR, 1.20(.1) = bQ inventoryMenuName = supports(20, 4) ? "cb" : supports(20, 2) ? "bR" : "bQ"; @@ -293,7 +293,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"), supports(21, 4) ? "M" : supports(21, 2) ? "L" : "B"); //1.21.2+ uses L, otherwise B + Object mapIdComponent = ReflectionUtil.getDeclaredField(getNMSClass("core.component", "DataComponents"), supports(21, 5) ? "M" : 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