Update material tags and entity effect

This commit is contained in:
Bjarne Koll 2024-10-27 12:20:17 +01:00
parent fe7b741545
commit 12ed021051
No known key found for this signature in database
GPG Key ID: 27F6CCCF55D2EE62
2 changed files with 22 additions and 15 deletions

View File

@ -118,7 +118,7 @@ index 0000000000000000000000000000000000000000..28282090c8b3668c11faefa0523f9e4a
+}
diff --git a/src/main/java/com/destroystokyo/paper/MaterialTags.java b/src/main/java/com/destroystokyo/paper/MaterialTags.java
new file mode 100644
index 0000000000000000000000000000000000000000..be212b4fbeabab32a4dab6ae554768c368efaa88
index 0000000000000000000000000000000000000000..41eaa8159f8c028faa118300e95f6a0fb9cfe989
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/MaterialTags.java
@@ -0,0 +1,717 @@
@ -227,7 +227,7 @@ index 0000000000000000000000000000000000000000..be212b4fbeabab32a4dab6ae554768c3
+ */
+ public static final MaterialSetTag DOORS = new MaterialSetTag(keyFor("doors"))
+ .endsWith("_DOOR")
+ .ensureSize("DOORS", 20).lock();
+ .ensureSize("DOORS", 21).lock();
+
+ /**
+ * Covers all dyes.
@ -241,14 +241,14 @@ index 0000000000000000000000000000000000000000..be212b4fbeabab32a4dab6ae554768c3
+ */
+ public static final MaterialSetTag FENCE_GATES = new MaterialSetTag(keyFor("fence_gates"))
+ .endsWith("_GATE")
+ .ensureSize("FENCE_GATES", 11).lock();
+ .ensureSize("FENCE_GATES", 12).lock();
+
+ /**
+ * Covers all variants of fences.
+ */
+ public static final MaterialSetTag FENCES = new MaterialSetTag(keyFor("fences"))
+ .endsWith("_FENCE")
+ .ensureSize("FENCES", 12).lock();
+ .ensureSize("FENCES", 13).lock();
+
+ /**
+ * Covers all variants of fish buckets.
@ -362,7 +362,7 @@ index 0000000000000000000000000000000000000000..be212b4fbeabab32a4dab6ae554768c3
+ */
+ public static final MaterialSetTag PRESSURE_PLATES = new MaterialSetTag(keyFor("pressure_plates"))
+ .endsWith("_PRESSURE_PLATE")
+ .ensureSize("PRESSURE_PLATES", 15).lock();
+ .ensureSize("PRESSURE_PLATES", 16).lock();
+
+ /**
+ * Covers the variants of prismarine blocks.
@ -441,7 +441,7 @@ index 0000000000000000000000000000000000000000..be212b4fbeabab32a4dab6ae554768c3
+ */
+ public static final MaterialSetTag SPAWN_EGGS = new MaterialSetTag(keyFor("spawn_eggs"))
+ .endsWith("_SPAWN_EGG")
+ .ensureSize("SPAWN_EGGS", 80).lock();
+ .ensureSize("SPAWN_EGGS", 81).lock();
+
+ /**
+ * Covers all colors of stained glass.
@ -462,7 +462,7 @@ index 0000000000000000000000000000000000000000..be212b4fbeabab32a4dab6ae554768c3
+ */
+ public static final MaterialSetTag TRAPDOORS = new MaterialSetTag(keyFor("trapdoors"))
+ .endsWith("_TRAPDOOR")
+ .ensureSize("TRAPDOORS", 20).lock();
+ .ensureSize("TRAPDOORS", 21).lock();
+
+ /**
+ * Covers all wood variants of doors.
@ -471,7 +471,7 @@ index 0000000000000000000000000000000000000000..be212b4fbeabab32a4dab6ae554768c3
+ .endsWith("_DOOR")
+ .not(Material.IRON_DOOR)
+ .notContains("COPPER")
+ .ensureSize("WOODEN_DOORS", 11).lock();
+ .ensureSize("WOODEN_DOORS", 12).lock();
+
+ /**
+ * Covers all wood variants of fences.
@ -479,7 +479,7 @@ index 0000000000000000000000000000000000000000..be212b4fbeabab32a4dab6ae554768c3
+ public static final MaterialSetTag WOODEN_FENCES = new MaterialSetTag(keyFor("wooden_fences"))
+ .endsWith("_FENCE")
+ .not(Material.NETHER_BRICK_FENCE)
+ .ensureSize("WOODEN_FENCES", 11).lock();
+ .ensureSize("WOODEN_FENCES", 12).lock();
+
+ /**
+ * Covers all wood variants of trapdoors.
@ -488,14 +488,14 @@ index 0000000000000000000000000000000000000000..be212b4fbeabab32a4dab6ae554768c3
+ .endsWith("_TRAPDOOR")
+ .not(Material.IRON_TRAPDOOR)
+ .notContains("COPPER")
+ .ensureSize("WOODEN_TRAPDOORS", 11).lock();
+ .ensureSize("WOODEN_TRAPDOORS", 12).lock();
+
+ /**
+ * Covers the wood variants of gates.
+ */
+ public static final MaterialSetTag WOODEN_GATES = new MaterialSetTag(keyFor("wooden_gates"))
+ .endsWith("_GATE")
+ .ensureSize("WOODEN_GATES", 11).lock();
+ .ensureSize("WOODEN_GATES", 12).lock();
+
+ /**
+ * Covers the variants of purpur.
@ -509,7 +509,7 @@ index 0000000000000000000000000000000000000000..be212b4fbeabab32a4dab6ae554768c3
+ */
+ public static final MaterialSetTag SIGNS = new MaterialSetTag(keyFor("signs"))
+ .endsWith("_SIGN")
+ .ensureSize("SIGNS", 44).lock();
+ .ensureSize("SIGNS", 48).lock();
+
+ /**
+ * Covers the variants of a regular torch.

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Improve entity effect API
diff --git a/src/main/java/org/bukkit/EntityEffect.java b/src/main/java/org/bukkit/EntityEffect.java
index 5341957b10cccd7bce5a7595699b1d90412a01d0..83d623cc824ddeeae7350c9f9a757fcf8e97c9ea 100644
index 5341957b10cccd7bce5a7595699b1d90412a01d0..912dafd5a8884d7973b2126f97ecdbe54e78937f 100644
--- a/src/main/java/org/bukkit/EntityEffect.java
+++ b/src/main/java/org/bukkit/EntityEffect.java
@@ -112,11 +112,25 @@ public enum EntityEffect {
@ -76,7 +76,7 @@ index 5341957b10cccd7bce5a7595699b1d90412a01d0..83d623cc824ddeeae7350c9f9a757fcf
HURT_BERRY_BUSH(44, LivingEntity.class),
/**
* Fox chews the food in its mouth
@@ -331,7 +355,17 @@ public enum EntityEffect {
@@ -331,7 +355,24 @@ public enum EntityEffect {
* Sniffer must have a target and be in {@link Sniffer.State#SEARCHING} or
* {@link Sniffer.State#DIGGING}
*/
@ -90,7 +90,14 @@ index 5341957b10cccd7bce5a7595699b1d90412a01d0..83d623cc824ddeeae7350c9f9a757fcf
+ /**
+ * {@link org.bukkit.inventory.EquipmentSlot#BODY} armor piece breaks
+ */
+ BODY_BREAK(65, LivingEntity.class);
+ BODY_BREAK(65, LivingEntity.class),
+ /**
+ * A creaking transient shaking when being hit.
+ * Does not apply to plain creaking entities as they are not invulnerable like the transient ones spawned by the
+ * creaking heart.
+ */
+ @MinecraftExperimental(MinecraftExperimental.Requires.WINTER_DROP)
+ SHAKE(66, org.bukkit.entity.CreakingTransient.class);
+ // Paper end - add missing EntityEffect
private final byte data;