Files
Purpur/patches/server/0077-Add-API-for-Villager-resetOffers.patch
2020-03-29 15:13:05 -05:00

56 lines
2.2 KiB
Diff

From d54945c9fde761a7df6b1e9198ddb1c5159bc5af Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Mon, 7 Oct 2019 00:15:37 -0500
Subject: [PATCH] Add API for Villager#resetOffers()
---
.../java/net/minecraft/server/EntityVillagerAbstract.java | 8 ++++++++
.../java/org/bukkit/craftbukkit/entity/CraftVillager.java | 7 +++++++
2 files changed, 15 insertions(+)
diff --git a/src/main/java/net/minecraft/server/EntityVillagerAbstract.java b/src/main/java/net/minecraft/server/EntityVillagerAbstract.java
index 9b75c67c72..ddd19aa2f9 100644
--- a/src/main/java/net/minecraft/server/EntityVillagerAbstract.java
+++ b/src/main/java/net/minecraft/server/EntityVillagerAbstract.java
@@ -82,6 +82,13 @@ public abstract class EntityVillagerAbstract extends EntityAgeable implements NP
return this.tradingPlayer != null;
}
+ // Purpur start
+ public void resetOffers() {
+ this.trades = new MerchantRecipeList();
+ this.updateTrades();
+ }
+ // Purpur end
+
@Override
public MerchantRecipeList getOffers() {
if (this.trades == null) {
@@ -223,6 +230,7 @@ public abstract class EntityVillagerAbstract extends EntityAgeable implements NP
return this.world;
}
+ protected void updateTrades() { eC(); } // Purpur
protected abstract void eC();
protected void a(MerchantRecipeList merchantrecipelist, VillagerTrades.IMerchantRecipeOption[] avillagertrades_imerchantrecipeoption, int i) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java
index a73ebaa75f..ac89ed9377 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java
@@ -112,4 +112,11 @@ public class CraftVillager extends CraftAbstractVillager implements Villager {
public static VillagerProfession bukkitToNmsProfession(Profession bukkit) {
return IRegistry.VILLAGER_PROFESSION.get(CraftNamespacedKey.toMinecraft(bukkit.getKey()));
}
+
+ // Purpur start
+ @Override
+ public void resetOffers() {
+ getHandle().resetOffers();
+ }
+ // Purpur end
}
--
2.24.0