2021-06-11 14:02:28 +02:00
|
|
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
|
|
From: Kyle Wood <kyle@denwav.dev>
|
|
|
|
Date: Fri, 11 Jun 2021 05:25:03 -0500
|
2021-06-17 03:43:30 +02:00
|
|
|
Subject: [PATCH] Remap fixes
|
2021-06-11 14:02:28 +02:00
|
|
|
|
|
|
|
|
2021-06-15 15:55:25 +02:00
|
|
|
diff --git a/src/main/java/net/minecraft/core/BlockPos.java b/src/main/java/net/minecraft/core/BlockPos.java
|
2023-09-22 19:59:56 +02:00
|
|
|
index ad3035da44c6af2fa7cc53926f33526a43740313..e89fa618fa20e3e843d8de81629e6dc551777823 100644
|
2021-06-15 15:55:25 +02:00
|
|
|
--- a/src/main/java/net/minecraft/core/BlockPos.java
|
|
|
|
+++ b/src/main/java/net/minecraft/core/BlockPos.java
|
2023-06-07 18:24:39 +02:00
|
|
|
@@ -278,9 +278,11 @@ public class BlockPos extends Vec3i {
|
2021-06-15 15:55:25 +02:00
|
|
|
|
|
|
|
public static Iterable<BlockPos> withinManhattan(BlockPos center, int rangeX, int rangeY, int rangeZ) {
|
|
|
|
int i = rangeX + rangeY + rangeZ;
|
|
|
|
- int j = center.getX();
|
|
|
|
- int k = center.getY();
|
|
|
|
- int l = center.getZ();
|
2021-06-17 03:43:30 +02:00
|
|
|
+ // Paper start - rename variables to fix conflict with anonymous class (remap fix)
|
2021-06-15 15:55:25 +02:00
|
|
|
+ int centerX = center.getX();
|
|
|
|
+ int centerY = center.getY();
|
|
|
|
+ int centerZ = center.getZ();
|
|
|
|
+ // Paper end
|
|
|
|
return () -> {
|
|
|
|
return new AbstractIterator<BlockPos>() {
|
|
|
|
private final BlockPos.MutableBlockPos cursor = new BlockPos.MutableBlockPos();
|
2023-06-07 18:24:39 +02:00
|
|
|
@@ -295,7 +297,7 @@ public class BlockPos extends Vec3i {
|
2021-06-15 15:55:25 +02:00
|
|
|
protected BlockPos computeNext() {
|
|
|
|
if (this.zMirror) {
|
|
|
|
this.zMirror = false;
|
|
|
|
- this.cursor.setZ(l - (this.cursor.getZ() - l));
|
2021-06-17 03:43:30 +02:00
|
|
|
+ this.cursor.setZ(centerZ - (this.cursor.getZ() - centerZ)); // Paper - remap fix
|
2021-06-15 15:55:25 +02:00
|
|
|
return this.cursor;
|
|
|
|
} else {
|
|
|
|
BlockPos blockPos;
|
2023-06-07 18:24:39 +02:00
|
|
|
@@ -321,7 +323,7 @@ public class BlockPos extends Vec3i {
|
2021-06-15 15:55:25 +02:00
|
|
|
int k = this.currentDepth - Math.abs(i) - Math.abs(j);
|
|
|
|
if (k <= rangeZ) {
|
|
|
|
this.zMirror = k != 0;
|
|
|
|
- blockPos = this.cursor.set(j + i, k + j, l + k);
|
2021-06-17 03:43:30 +02:00
|
|
|
+ blockPos = this.cursor.set(centerX + i, centerY + j, centerZ + k); // Paper - remap fix
|
2021-06-15 15:55:25 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2021-06-11 14:02:28 +02:00
|
|
|
diff --git a/src/main/java/net/minecraft/world/entity/ai/behavior/BehaviorUtils.java b/src/main/java/net/minecraft/world/entity/ai/behavior/BehaviorUtils.java
|
2023-12-05 19:38:29 +01:00
|
|
|
index 1915b138ea89790ef8b7456b7fddcbd5d97e5444..ba9f6d288d8773f275e35a9513f7f59ad3f666c0 100644
|
2021-06-11 14:02:28 +02:00
|
|
|
--- a/src/main/java/net/minecraft/world/entity/ai/behavior/BehaviorUtils.java
|
|
|
|
+++ b/src/main/java/net/minecraft/world/entity/ai/behavior/BehaviorUtils.java
|
2022-12-07 18:08:55 +01:00
|
|
|
@@ -173,11 +173,11 @@ public class BehaviorUtils {
|
2021-06-11 14:02:28 +02:00
|
|
|
|
|
|
|
return optional.map((uuid) -> {
|
2023-06-07 18:24:39 +02:00
|
|
|
return ((ServerLevel) entity.level()).getEntity(uuid);
|
2021-06-11 14:02:28 +02:00
|
|
|
- }).map((entity) -> {
|
2021-11-23 09:57:41 +01:00
|
|
|
+ }).map((entity1) -> { // Paper - remap fix
|
|
|
|
LivingEntity entityliving1;
|
2021-06-11 14:02:28 +02:00
|
|
|
|
2021-11-23 09:57:41 +01:00
|
|
|
- if (entity instanceof LivingEntity) {
|
|
|
|
- LivingEntity entityliving2 = (LivingEntity) entity;
|
|
|
|
+ if (entity1 instanceof LivingEntity) { // Paper - remap fix
|
|
|
|
+ LivingEntity entityliving2 = (LivingEntity) entity1; // Paper - remap fix
|
2021-06-11 14:02:28 +02:00
|
|
|
|
2021-11-23 09:57:41 +01:00
|
|
|
entityliving1 = entityliving2;
|
|
|
|
} else {
|
2021-06-11 14:02:28 +02:00
|
|
|
diff --git a/src/main/java/net/minecraft/world/item/crafting/RecipeManager.java b/src/main/java/net/minecraft/world/item/crafting/RecipeManager.java
|
2023-12-05 19:38:29 +01:00
|
|
|
index 17c42cfcec69385f0b65e2d42d735e8b8f6e7b04..04adc10f24f96804a5cb14e884224bb672360464 100644
|
2021-06-11 14:02:28 +02:00
|
|
|
--- a/src/main/java/net/minecraft/world/item/crafting/RecipeManager.java
|
|
|
|
+++ b/src/main/java/net/minecraft/world/item/crafting/RecipeManager.java
|
2023-12-05 19:38:29 +01:00
|
|
|
@@ -193,7 +193,7 @@ public class RecipeManager extends SimpleJsonResourceReloadListener {
|
2023-09-21 19:39:51 +02:00
|
|
|
Builder<ResourceLocation, RecipeHolder<?>> builder = ImmutableMap.builder();
|
2021-06-11 14:02:28 +02:00
|
|
|
|
2023-09-21 19:39:51 +02:00
|
|
|
recipes.forEach((recipeholder) -> {
|
|
|
|
- Map<ResourceLocation, RecipeHolder<?>> map1 = (Map) map.computeIfAbsent(recipeholder.value().getType(), (recipes) -> {
|
|
|
|
+ Map<ResourceLocation, RecipeHolder<?>> map1 = (Map) map.computeIfAbsent(recipeholder.value().getType(), (recipes_) -> { // Paper - remap fix
|
2021-06-11 14:02:28 +02:00
|
|
|
return new Object2ObjectLinkedOpenHashMap<>(); // CraftBukkit
|
|
|
|
});
|
2023-09-21 19:39:51 +02:00
|
|
|
ResourceLocation minecraftkey = recipeholder.id();
|
2023-09-22 04:31:59 +02:00
|
|
|
diff --git a/src/main/java/net/minecraft/world/level/storage/loot/LootTable.java b/src/main/java/net/minecraft/world/level/storage/loot/LootTable.java
|
2023-10-03 13:55:12 +02:00
|
|
|
index 95a5ce711150c4c999a9d17f28a497f034638610..214215d203892b8009595539f25ce26e8752debd 100644
|
2023-09-22 04:31:59 +02:00
|
|
|
--- a/src/main/java/net/minecraft/world/level/storage/loot/LootTable.java
|
|
|
|
+++ b/src/main/java/net/minecraft/world/level/storage/loot/LootTable.java
|
2023-10-03 13:55:12 +02:00
|
|
|
@@ -251,8 +251,8 @@ public class LootTable {
|
2023-09-22 04:31:59 +02:00
|
|
|
|
|
|
|
public static class Builder implements FunctionUserBuilder<LootTable.Builder> {
|
|
|
|
|
|
|
|
- private final Builder<LootPool> pools = ImmutableList.builder();
|
|
|
|
- private final Builder<LootItemFunction> functions = ImmutableList.builder();
|
|
|
|
+ private final ImmutableList.Builder<LootPool> pools = ImmutableList.builder();
|
|
|
|
+ private final ImmutableList.Builder<LootItemFunction> functions = ImmutableList.builder();
|
|
|
|
private LootContextParamSet paramSet;
|
|
|
|
private Optional<ResourceLocation> randomSequence;
|
|
|
|
|
2021-06-14 02:19:51 +02:00
|
|
|
diff --git a/src/test/java/org/bukkit/DyeColorsTest.java b/src/test/java/org/bukkit/DyeColorsTest.java
|
2023-09-24 09:16:58 +02:00
|
|
|
index b70450722da13bc4d358a70d3d1d2f30a2cca2b9..86d86c292bdeeb7f42685691287c3b4bd476ea14 100644
|
2021-06-14 02:19:51 +02:00
|
|
|
--- a/src/test/java/org/bukkit/DyeColorsTest.java
|
|
|
|
+++ b/src/test/java/org/bukkit/DyeColorsTest.java
|
2023-09-24 09:16:58 +02:00
|
|
|
@@ -3,7 +3,6 @@ package org.bukkit;
|
|
|
|
import static org.bukkit.support.MatcherAssert.*;
|
|
|
|
import static org.hamcrest.Matchers.*;
|
|
|
|
|
2021-06-14 02:19:51 +02:00
|
|
|
-import net.minecraft.world.item.DyeColor;
|
|
|
|
import org.bukkit.support.AbstractTestingBase;
|
2023-09-24 09:16:58 +02:00
|
|
|
import org.junit.jupiter.params.ParameterizedTest;
|
|
|
|
import org.junit.jupiter.params.provider.EnumSource;
|
|
|
|
@@ -14,7 +13,7 @@ public class DyeColorsTest extends AbstractTestingBase {
|
|
|
|
@EnumSource(DyeColor.class)
|
|
|
|
public void checkColor(DyeColor dye) {
|
|
|
|
Color color = dye.getColor();
|
|
|
|
- float[] nmsColorArray = DyeColor.byId(dye.getWoolData()).getTextureDiffuseColors();
|
|
|
|
+ float[] nmsColorArray = net.minecraft.world.item.DyeColor.byId(dye.getWoolData()).getTextureDiffuseColors(); // Paper - remap fix
|
2021-06-14 02:19:51 +02:00
|
|
|
Color nmsColor = Color.fromRGB((int) (nmsColorArray[0] * 255), (int) (nmsColorArray[1] * 255), (int) (nmsColorArray[2] * 255));
|
|
|
|
assertThat(color, is(nmsColor));
|
|
|
|
}
|
2023-09-24 09:16:58 +02:00
|
|
|
@@ -23,7 +22,7 @@ public class DyeColorsTest extends AbstractTestingBase {
|
|
|
|
@EnumSource(org.bukkit.DyeColor.class)
|
|
|
|
public void checkFireworkColor(org.bukkit.DyeColor dye) {
|
|
|
|
Color color = dye.getFireworkColor();
|
|
|
|
- int nmsColor = DyeColor.byId(dye.getWoolData()).getFireworkColor();
|
|
|
|
+ int nmsColor = net.minecraft.world.item.DyeColor.byId(dye.getWoolData()).getFireworkColor(); // Paper - remap fix
|
2021-06-14 02:19:51 +02:00
|
|
|
assertThat(color, is(Color.fromRGB(nmsColor)));
|
|
|
|
}
|
|
|
|
}
|
2023-10-26 23:56:40 +02:00
|
|
|
diff --git a/src/test/java/org/bukkit/ParticleTest.java b/src/test/java/org/bukkit/ParticleTest.java
|
|
|
|
index 1edc58410316eaf45858db56897179587e8b22ee..cf6f34e506570e7bb9624c5899fbcdd762d8e0c4 100644
|
|
|
|
--- a/src/test/java/org/bukkit/ParticleTest.java
|
|
|
|
+++ b/src/test/java/org/bukkit/ParticleTest.java
|
|
|
|
@@ -231,7 +231,7 @@ public class ParticleTest extends AbstractTestingBase {
|
|
|
|
Check in CraftParticle if the conversion is still correct.
|
|
|
|
""", bukkit.getKey()));
|
|
|
|
|
|
|
|
- DataResult<Tag> encoded = assertDoesNotThrow(() -> minecraft.codec().encodeStart(DynamicOpsNBT.INSTANCE, particleParam),
|
|
|
|
+ DataResult<Tag> encoded = assertDoesNotThrow(() -> minecraft.codec().encodeStart(NbtOps.INSTANCE, particleParam), // Paper - remap fix
|
|
|
|
String.format("""
|
|
|
|
Could not encoded particle param for particle %s.
|
|
|
|
This can indicated, that the wrong particle param is created in CraftParticle.
|
2023-06-13 01:51:45 +02:00
|
|
|
diff --git a/src/test/java/org/bukkit/RegistryConstantsTest.java b/src/test/java/org/bukkit/RegistryConstantsTest.java
|
2023-09-24 09:16:58 +02:00
|
|
|
index 6be404dafe1f0ae5ab39a0782e4c3ca7c0923752..545a329a52be0dc1f3cf8ca1315152d8b4a465dd 100644
|
2023-06-13 01:51:45 +02:00
|
|
|
--- a/src/test/java/org/bukkit/RegistryConstantsTest.java
|
|
|
|
+++ b/src/test/java/org/bukkit/RegistryConstantsTest.java
|
|
|
|
@@ -19,17 +19,17 @@ public class RegistryConstantsTest extends AbstractTestingBase {
|
|
|
|
|
|
|
|
@Test
|
|
|
|
public void testTrimMaterial() {
|
|
|
|
- this.testExcessConstants(TrimMaterial.class, Registry.TRIM_MATERIAL);
|
|
|
|
+ this.testExcessConstants(TrimMaterial.class, org.bukkit.Registry.TRIM_MATERIAL); // Paper - remap fix
|
|
|
|
this.testMissingConstants(TrimMaterial.class, Registries.TRIM_MATERIAL);
|
|
|
|
}
|
|
|
|
|
|
|
|
@Test
|
|
|
|
public void testTrimPattern() {
|
|
|
|
- this.testExcessConstants(TrimPattern.class, Registry.TRIM_PATTERN);
|
|
|
|
+ this.testExcessConstants(TrimPattern.class, org.bukkit.Registry.TRIM_PATTERN); // Paper - remap fix
|
|
|
|
this.testMissingConstants(TrimPattern.class, Registries.TRIM_PATTERN);
|
|
|
|
}
|
|
|
|
|
|
|
|
- private <T extends Keyed> void testExcessConstants(Class<T> clazz, Registry<T> registry) {
|
|
|
|
+ private <T extends Keyed> void testExcessConstants(Class<T> clazz, org.bukkit.Registry<T> registry) { // Paper - remap fix
|
|
|
|
List<NamespacedKey> excessKeys = new ArrayList<>();
|
|
|
|
|
|
|
|
for (Field field : clazz.getFields()) {
|
2023-10-03 23:58:30 +02:00
|
|
|
diff --git a/src/test/java/org/bukkit/RegistryLoadOrderTest.java b/src/test/java/org/bukkit/RegistryLoadOrderTest.java
|
|
|
|
index e4298c14eb793743081cb0088427bb5a50d74b46..194ff80040eec0427acfef644cd85666370902fa 100644
|
|
|
|
--- a/src/test/java/org/bukkit/RegistryLoadOrderTest.java
|
|
|
|
+++ b/src/test/java/org/bukkit/RegistryLoadOrderTest.java
|
|
|
|
@@ -20,7 +20,7 @@ public class RegistryLoadOrderTest extends AbstractTestingBase {
|
|
|
|
|
|
|
|
private static boolean initInterface = false;
|
|
|
|
private static boolean initAbstract = false;
|
|
|
|
- private static Registry<Keyed> registry;
|
|
|
|
+ private static org.bukkit.Registry<Keyed> registry; // Paper - remap fix
|
|
|
|
|
|
|
|
public static Stream<Arguments> data() {
|
|
|
|
return Stream.of(
|
2021-06-14 02:19:51 +02:00
|
|
|
diff --git a/src/test/java/org/bukkit/entity/EntityTypesTest.java b/src/test/java/org/bukkit/entity/EntityTypesTest.java
|
2023-09-24 09:16:58 +02:00
|
|
|
index 32df0090aab65b551b524603cce0b96e461cc358..952924abae79cc504342bbdb6f6953ab8a6cc295 100644
|
2021-06-14 02:19:51 +02:00
|
|
|
--- a/src/test/java/org/bukkit/entity/EntityTypesTest.java
|
|
|
|
+++ b/src/test/java/org/bukkit/entity/EntityTypesTest.java
|
2023-09-24 09:16:58 +02:00
|
|
|
@@ -6,7 +6,6 @@ import java.util.Set;
|
2021-06-14 02:19:51 +02:00
|
|
|
import java.util.stream.Collectors;
|
2022-12-07 18:08:55 +01:00
|
|
|
import net.minecraft.core.registries.BuiltInRegistries;
|
2021-06-14 02:19:51 +02:00
|
|
|
import net.minecraft.resources.ResourceLocation;
|
|
|
|
-import net.minecraft.world.entity.EntityType;
|
|
|
|
import org.bukkit.support.AbstractTestingBase;
|
2023-09-24 09:16:58 +02:00
|
|
|
import org.junit.jupiter.api.Test;
|
|
|
|
|
2022-12-08 19:23:12 +01:00
|
|
|
@@ -16,8 +15,8 @@ public class EntityTypesTest extends AbstractTestingBase {
|
2021-06-14 02:19:51 +02:00
|
|
|
public void testMaps() {
|
|
|
|
Set<EntityType> allBukkit = Arrays.stream(EntityType.values()).filter((b) -> b.getName() != null).collect(Collectors.toSet());
|
|
|
|
|
2022-12-07 18:08:55 +01:00
|
|
|
- for (EntityType<?> nms : BuiltInRegistries.ENTITY_TYPE) {
|
2022-12-08 19:23:12 +01:00
|
|
|
- ResourceLocation key = EntityType.getKey(nms);
|
2022-12-07 18:08:55 +01:00
|
|
|
+ for (net.minecraft.world.entity.EntityType<?> nms : BuiltInRegistries.ENTITY_TYPE) { // Paper - remap fix
|
2022-12-08 19:23:12 +01:00
|
|
|
+ ResourceLocation key = net.minecraft.world.entity.EntityType.getKey(nms); // Paper - remap fix
|
2021-06-14 02:19:51 +02:00
|
|
|
|
|
|
|
org.bukkit.entity.EntityType bukkit = org.bukkit.entity.EntityType.fromName(key.getPath());
|
2023-09-24 09:16:58 +02:00
|
|
|
assertNotNull(bukkit, "Missing nms->bukkit " + key);
|
2021-06-14 02:19:51 +02:00
|
|
|
diff --git a/src/test/java/org/bukkit/entity/PandaGeneTest.java b/src/test/java/org/bukkit/entity/PandaGeneTest.java
|
2023-09-24 09:16:58 +02:00
|
|
|
index 5818bfa69a8573a2a8f350066f829d587cbc546b..8e421a1bee0c526e3024eab9ba4cc0b320842de2 100644
|
2021-06-14 02:19:51 +02:00
|
|
|
--- a/src/test/java/org/bukkit/entity/PandaGeneTest.java
|
|
|
|
+++ b/src/test/java/org/bukkit/entity/PandaGeneTest.java
|
2023-09-24 09:16:58 +02:00
|
|
|
@@ -2,7 +2,6 @@ package org.bukkit.entity;
|
|
|
|
|
|
|
|
import static org.junit.jupiter.api.Assertions.*;
|
2021-06-14 02:19:51 +02:00
|
|
|
|
|
|
|
-import net.minecraft.world.entity.animal.Panda;
|
|
|
|
import org.bukkit.craftbukkit.entity.CraftPanda;
|
2023-09-24 09:16:58 +02:00
|
|
|
import org.junit.jupiter.api.Test;
|
|
|
|
|
|
|
|
@@ -10,8 +9,8 @@ public class PandaGeneTest {
|
|
|
|
|
2021-06-14 02:19:51 +02:00
|
|
|
@Test
|
|
|
|
public void testBukkit() {
|
2023-09-24 09:16:58 +02:00
|
|
|
- for (Panda.Gene gene : Panda.Gene.values()) {
|
2021-06-14 02:19:51 +02:00
|
|
|
- Panda.Gene nms = CraftPanda.toNms(gene);
|
2023-09-24 09:16:58 +02:00
|
|
|
+ for (Panda.Gene gene : Panda.Gene.values()) { // Paper - remap fix
|
2021-06-17 03:43:30 +02:00
|
|
|
+ net.minecraft.world.entity.animal.Panda.Gene nms = CraftPanda.toNms(gene); // Paper - remap fix
|
2021-06-14 02:19:51 +02:00
|
|
|
|
2023-09-24 09:16:58 +02:00
|
|
|
assertNotNull(nms, "NMS gene null for " + gene);
|
|
|
|
assertEquals(gene.isRecessive(), nms.isRecessive(), "Recessive status did not match " + gene);
|
|
|
|
@@ -21,7 +20,7 @@ public class PandaGeneTest {
|
2021-06-14 02:19:51 +02:00
|
|
|
|
|
|
|
@Test
|
|
|
|
public void testNMS() {
|
|
|
|
- for (Panda.Gene gene : Panda.Gene.values()) {
|
2021-06-17 03:43:30 +02:00
|
|
|
+ for (net.minecraft.world.entity.animal.Panda.Gene gene : net.minecraft.world.entity.animal.Panda.Gene.values()) { // Paper - remap fix
|
2021-06-14 02:19:51 +02:00
|
|
|
org.bukkit.entity.Panda.Gene bukkit = CraftPanda.fromNms(gene);
|
|
|
|
|
2023-09-24 09:16:58 +02:00
|
|
|
assertNotNull(bukkit, "Bukkit gene null for " + gene);
|