papermc/Spigot-Server-Patches/0241-Vex-getSummoner-API.patch
Aikar 36f34f01c0
Updated Upstream (Bukkit/CraftBukkit)
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
da9ef3c5 #496: Add methods to get/set ItemStacks in EquipmentSlots
3abebc9f #492: Let Tameable extend Animals rather than Entity
941111a0 #495: Expose ItemStack and hand used in PlayerShearEntityEvent
4fe19cae #494: InventoryView - Add missing Brewing FUEL_TIME

CraftBukkit Changes:
933e9094 #664: Add methods to get/set ItemStacks in EquipmentSlots
18722312 #662: Expose ItemStack and hand used in PlayerShearEntityEvent
2020-05-06 06:05:22 -04:00

48 lines
1.8 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 4 Jul 2018 15:30:22 -0400
Subject: [PATCH] Vex#getSummoner API
Get's the NPC that summoned this Vex
diff --git a/src/main/java/net/minecraft/server/EntityVex.java b/src/main/java/net/minecraft/server/EntityVex.java
index cd9fb3aabfca254ca522d39a25e54ceda0b6f5fc..a46730460e5d9f6e52d63ba1950d1e7195fe87cd 100644
--- a/src/main/java/net/minecraft/server/EntityVex.java
+++ b/src/main/java/net/minecraft/server/EntityVex.java
@@ -92,6 +92,7 @@ public class EntityVex extends EntityMonster {
}
+ public EntityInsentient getOwner() { return l(); } // Paper - OBFHELPER
public EntityInsentient l() {
return this.c;
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftVex.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftVex.java
index 737a37b6fe9cc4f6a93f7bae7e4f8326024929cc..169c951ec30fc5b78eb4ba29352ba009b7fa5efd 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftVex.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftVex.java
@@ -1,8 +1,10 @@
package org.bukkit.craftbukkit.entity;
+import net.minecraft.server.EntityInsentient;
import net.minecraft.server.EntityVex;
import org.bukkit.craftbukkit.CraftServer;
import org.bukkit.entity.EntityType;
+import org.bukkit.entity.Mob;
import org.bukkit.entity.Vex;
public class CraftVex extends CraftMonster implements Vex {
@@ -16,6 +18,13 @@ public class CraftVex extends CraftMonster implements Vex {
return (EntityVex) super.getHandle();
}
+ // Paper start
+ public Mob getSummoner() {
+ EntityInsentient owner = getHandle().getOwner();
+ return owner != null ? (Mob) owner.getBukkitEntity() : null;
+ }
+ // Paper end
+
@Override
public String toString() {
return "CraftVex";