Paper/patches/api/0365-Keyed-Cat-Type.patch
Jake Potrebic e105354330
Fix incorrect new blockdata in EntityChangeBlockEvent (#9445)
Also fixes EntityBreakDoorEvent not having the correct 'to' block data

Also standardizes how to handle EntityChangeBlockEvent before a removeBlock or destroyBlock
call. Always use 'state.getFluidState().createLegacyBlock()' to get the new state instead of
just using the 'air' state.
2023-07-07 10:25:36 -07:00

41 lines
1.3 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Owen1212055 <23108066+Owen1212055@users.noreply.github.com>
Date: Wed, 8 Jun 2022 18:23:17 -0400
Subject: [PATCH] Keyed Cat Type
diff --git a/src/main/java/org/bukkit/entity/Cat.java b/src/main/java/org/bukkit/entity/Cat.java
index 97b0d8ccd3fd3a711ec5fa4ce3d8703515895081..bd74b47879b69b7a2e078a5aca460e5c97b0a919 100644
--- a/src/main/java/org/bukkit/entity/Cat.java
+++ b/src/main/java/org/bukkit/entity/Cat.java
@@ -43,7 +43,7 @@ public interface Cat extends Tameable, Sittable, io.papermc.paper.entity.CollarC
/**
* Represents the various different cat types there are.
*/
- public enum Type {
+ public enum Type implements org.bukkit.Keyed { // Paper
TABBY,
BLACK,
RED,
@@ -55,6 +55,20 @@ public interface Cat extends Tameable, Sittable, io.papermc.paper.entity.CollarC
WHITE,
JELLIE,
ALL_BLACK;
+
+ // Paper start
+ private final org.bukkit.NamespacedKey key;
+
+ Type() {
+ this.key = org.bukkit.NamespacedKey.minecraft(name().toLowerCase(java.util.Locale.ROOT));
+ }
+
+ @NotNull
+ @Override
+ public org.bukkit.NamespacedKey getKey() {
+ return key;
+ }
+ // Paper end
}
// Paper Start - More cat api