[ci skip] Move logic in our patches to ItemType/BlockType (#10772)
This commit is contained in:
parent
b14958485d
commit
a9201d4a7d
16 changed files with 208 additions and 108 deletions
|
@ -25,6 +25,22 @@ index f041b5d80bff9c022b007e04ef1558e9116acc6b..a586442422a2b2c06b785af0d261d3e1
|
|||
+ }
|
||||
// Paper end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockType.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockType.java
|
||||
index f6ffb81b68e0cf3afebe901a5ba8e305bb94b77a..f2f62667ddf082796011ad7dd025e8855b765c1f 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockType.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockType.java
|
||||
@@ -225,4 +225,11 @@ public class CraftBlockType<B extends BlockData> implements BlockType.Typed<B>,
|
||||
public Material asMaterial() {
|
||||
return Registry.MATERIAL.get(this.key);
|
||||
}
|
||||
+
|
||||
+ // Paper start - add Translatable
|
||||
+ @Override
|
||||
+ public String translationKey() {
|
||||
+ return this.block.getDescriptionId();
|
||||
+ }
|
||||
+ // Paper end - add Translatable
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java b/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
|
||||
index 5ed90ed0461165da02c7a1acae805c12466e38d6..faf0f726453aa957d17b75dfd8de5b40d984e69c 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
|
||||
|
@ -41,6 +57,22 @@ index 5ed90ed0461165da02c7a1acae805c12466e38d6..faf0f726453aa957d17b75dfd8de5b40
|
|||
// Paper end
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemType.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemType.java
|
||||
index f5bb5802aae64773252c9399df0fbe9de3d1d121..1aa8010e872686f392430ce47214a324d431cada 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemType.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemType.java
|
||||
@@ -226,4 +226,11 @@ public class CraftItemType<M extends ItemMeta> implements ItemType.Typed<M>, Han
|
||||
public Material asMaterial() {
|
||||
return Registry.MATERIAL.get(this.key);
|
||||
}
|
||||
+
|
||||
+ // Paper start - add Translatable
|
||||
+ @Override
|
||||
+ public String translationKey() {
|
||||
+ return this.item.getDescriptionId();
|
||||
+ }
|
||||
+ // Paper end - add Translatable
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java
|
||||
index ebdb19d7ee0460d50c082b0a41b3a6a57a3534ee..b444bd26d6c3def3494d3cc0520e462408272be3 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Jake Potrebic <jake.m.potrebic@gmail.com>
|
||||
Date: Thu, 4 Nov 2021 11:50:40 -0700
|
||||
Subject: [PATCH] Add isCollidable methods to various places
|
||||
Subject: [PATCH] Add hasCollision methods to various places
|
||||
|
||||
== AT ==
|
||||
public net.minecraft.world.level.block.state.BlockBehaviour hasCollision
|
||||
|
@ -38,20 +38,19 @@ index 1002123cd0c6f57cecc4e80f5f21cc6ff5886d37..e96023b71845526383288917e8d7c575
|
|||
+ }
|
||||
+ // Paper end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 6bfd5fad899720c853fc4812f50893a6d81f7ea8..3824a02431e3b1d82576937248f2a57f1a0414b0 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -575,6 +575,12 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
var supplier = net.minecraft.world.entity.ai.attributes.DefaultAttributes.getSupplier((net.minecraft.world.entity.EntityType<? extends net.minecraft.world.entity.LivingEntity>) net.minecraft.core.registries.BuiltInRegistries.ENTITY_TYPE.get(CraftNamespacedKey.toMinecraft(bukkitEntityKey)));
|
||||
return new io.papermc.paper.attribute.UnmodifiableAttributeMap(supplier);
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockType.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockType.java
|
||||
index f2f62667ddf082796011ad7dd025e8855b765c1f..5d3ce8c8cb02c5a61f011adbecd10ae041cbb99b 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockType.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockType.java
|
||||
@@ -232,4 +232,11 @@ public class CraftBlockType<B extends BlockData> implements BlockType.Typed<B>,
|
||||
return this.block.getDescriptionId();
|
||||
}
|
||||
// Paper end - add Translatable
|
||||
+
|
||||
+ // Paper start - hasCollision API
|
||||
+ @Override
|
||||
+ public boolean isCollidable(Material material) {
|
||||
+ Preconditions.checkArgument(material.isBlock(), material + " is not a block");
|
||||
+ return getBlock(material).hasCollision;
|
||||
+ public boolean hasCollision() {
|
||||
+ return this.block.hasCollision;
|
||||
+ }
|
||||
// Paper end
|
||||
|
||||
@Override
|
||||
+ // Paper end - hasCollision API
|
||||
}
|
|
@ -6,14 +6,14 @@ Subject: [PATCH] Add NamespacedKey biome methods
|
|||
Co-authored-by: Thonk <30448663+ExcessiveAmountsOfZombies@users.noreply.github.com>
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index a2961166695e5fe4c607c82a490ce67c2e1b5fde..77cc32eb8b3e835af229fcb78229bfc09bd0da70 100644
|
||||
index 7d56cfaa460c1052d60344542c8ea60363894b8d..f5e8ff2a98a2357cb766e69bea982b25f2e2911b 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -607,6 +607,19 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
Preconditions.checkArgument(material.isBlock(), material + " is not a block");
|
||||
return getBlock(material).hasCollision;
|
||||
@@ -603,6 +603,21 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
}
|
||||
+
|
||||
// Paper end
|
||||
|
||||
+ // Paper start - namespaced key biome methods
|
||||
+ @Override
|
||||
+ public org.bukkit.NamespacedKey getBiomeKey(org.bukkit.RegionAccessor accessor, int x, int y, int z) {
|
||||
+ org.bukkit.craftbukkit.CraftRegionAccessor cra = (org.bukkit.craftbukkit.CraftRegionAccessor) accessor;
|
||||
|
@ -26,6 +26,8 @@ index a2961166695e5fe4c607c82a490ce67c2e1b5fde..77cc32eb8b3e835af229fcb78229bfc0
|
|||
+ net.minecraft.core.Holder<net.minecraft.world.level.biome.Biome> biomeBase = cra.getHandle().registryAccess().registryOrThrow(net.minecraft.core.registries.Registries.BIOME).getHolderOrThrow(net.minecraft.resources.ResourceKey.create(net.minecraft.core.registries.Registries.BIOME, org.bukkit.craftbukkit.util.CraftNamespacedKey.toMinecraft(biomeKey)));
|
||||
+ cra.setBiome(x, y, z, biomeBase);
|
||||
+ }
|
||||
// Paper end
|
||||
|
||||
+ // Paper end - namespaced key biome methods
|
||||
+
|
||||
@Override
|
||||
public String get(Class<?> aClass, String s) {
|
||||
if (aClass == Enchantment.class) {
|
||||
|
|
|
@ -5,19 +5,21 @@ Subject: [PATCH] Fix custom statistic criteria creation
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 77cc32eb8b3e835af229fcb78229bfc09bd0da70..2d51418612e4df40b9536ac72ba0a070d59f32d1 100644
|
||||
index f5e8ff2a98a2357cb766e69bea982b25f2e2911b..ea48f9317f66305bca0f01c51953b438f6e4833c 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -620,6 +620,12 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
net.minecraft.core.Holder<net.minecraft.world.level.biome.Biome> biomeBase = cra.getHandle().registryAccess().registryOrThrow(net.minecraft.core.registries.Registries.BIOME).getHolderOrThrow(net.minecraft.resources.ResourceKey.create(net.minecraft.core.registries.Registries.BIOME, org.bukkit.craftbukkit.util.CraftNamespacedKey.toMinecraft(biomeKey)));
|
||||
cra.setBiome(x, y, z, biomeBase);
|
||||
@@ -618,6 +618,14 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
}
|
||||
+
|
||||
// Paper end - namespaced key biome methods
|
||||
|
||||
+ // Paper start - fix custom stats criteria creation
|
||||
+ @Override
|
||||
+ public String getStatisticCriteriaKey(org.bukkit.Statistic statistic) {
|
||||
+ if (statistic.getType() != org.bukkit.Statistic.Type.UNTYPED) return "minecraft.custom:minecraft." + statistic.getKey().getKey();
|
||||
+ return org.bukkit.craftbukkit.CraftStatistic.getNMSStatistic(statistic).getName();
|
||||
+ }
|
||||
// Paper end
|
||||
|
||||
+ // Paper end - fix custom stats criteria creation
|
||||
+
|
||||
@Override
|
||||
public String get(Class<?> aClass, String s) {
|
||||
if (aClass == Enchantment.class) {
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: [PATCH] Add api for spawn egg texture colors
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 34208c749621003ba3ad74894ca25e01469b66f2..0e23219206d94308e0d5d1519d7f80678ffa4f73 100644
|
||||
index 0542c04bc9c59ff04291f2a45b70a7b43d74e7d5..053c09fa00d08b50aa25614a6310299efffe203a 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -663,6 +663,15 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -661,6 +661,15 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
return CraftRegistry.get(registry, namespacedKey, ApiVersion.CURRENT);
|
||||
}
|
||||
|
||||
|
|
|
@ -707,7 +707,7 @@ index 2e96308696e131f3f013469a395e5ddda2c5d529..65a66e484c1c39c5f41d97db52f31c67
|
|||
} catch (Throwable e) {
|
||||
LOGGER.error("Failed to run bootstrapper for %s. This plugin will not be loaded.".formatted(provider.getSource()), e);
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index d7178155e548eb027e75bb8e7f03d077cae6831e..34242fa907bb87ef78cf96ca81ae224de750956f 100644
|
||||
index ffb456ef6386eaaca3df3f36666e41f85210f88c..99a06496935489ff641c4db78e147d29466dc05a 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -1013,6 +1013,11 @@ public final class CraftServer implements Server {
|
||||
|
@ -739,10 +739,10 @@ index d96399e9bf1a58db5a4a22e58abb99e7660e0694..66bdac50130f523f9dc4379b103b7a46
|
|||
+ // Paper end - lifecycle events
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 0e23219206d94308e0d5d1519d7f80678ffa4f73..89e4f53598c14ea2ca2b6678edc97366649d0145 100644
|
||||
index 053c09fa00d08b50aa25614a6310299efffe203a..b137d4518727bfb4a058abbf33e6cfd3b6e05772 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -672,6 +672,13 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
@@ -670,6 +670,13 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
}
|
||||
// Paper end - spawn egg color visibility
|
||||
|
||||
|
|
|
@ -5,13 +5,13 @@ Subject: [PATCH] ItemStack Tooltip API
|
|||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 89e4f53598c14ea2ca2b6678edc97366649d0145..9bd51aeedf2556e714960b081029f48afbc0f3f5 100644
|
||||
index b137d4518727bfb4a058abbf33e6cfd3b6e05772..5572ecea5df864db291eff182969f0367fb7c5f5 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -647,6 +647,20 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
return org.bukkit.craftbukkit.CraftStatistic.getNMSStatistic(statistic).getName();
|
||||
@@ -646,6 +646,21 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
}
|
||||
// Paper end
|
||||
// Paper end - fix custom stats criteria creation
|
||||
|
||||
+ // Paper start - expose itemstack tooltip lines
|
||||
+ @Override
|
||||
+ public java.util.List<net.kyori.adventure.text.Component> computeTooltipLines(final ItemStack itemStack, final io.papermc.paper.inventory.tooltip.TooltipContext tooltipContext, final org.bukkit.entity.Player player) {
|
||||
|
@ -26,6 +26,7 @@ index 89e4f53598c14ea2ca2b6678edc97366649d0145..9bd51aeedf2556e714960b081029f48a
|
|||
+ return lines.stream().map(io.papermc.paper.adventure.PaperAdventure::asAdventure).toList();
|
||||
+ }
|
||||
+ // Paper end - expose itemstack tooltip lines
|
||||
|
||||
+
|
||||
@Override
|
||||
public String get(Class<?> aClass, String s) {
|
||||
if (aClass == Enchantment.class) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue