From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Mon, 10 Aug 2020 13:54:05 -0500 Subject: [PATCH] Add option to reset reputation when villager is cured diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java index ac81b6ec71..a7e76f196f 100644 --- a/src/main/java/net/minecraft/server/EntityVillager.java +++ b/src/main/java/net/minecraft/server/EntityVillager.java @@ -39,7 +39,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation @Nullable private EntityHuman bC; private byte bE; - private final Reputation bF; + private Reputation bF; // Purpur - remove final private long bG; private long bH; private int bI; @@ -963,6 +963,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation @Override public void a(ReputationEvent reputationevent, Entity entity) { if (reputationevent == ReputationEvent.a) { + if (world.purpurConfig.zombieVillagerResetReputationsWhenCured) this.bF = new Reputation(); // Purpur this.bF.a(entity.getUniqueID(), ReputationType.MAJOR_POSITIVE, 20); this.bF.a(entity.getUniqueID(), ReputationType.MINOR_POSITIVE, 25); } else if (reputationevent == ReputationEvent.e) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java index 9945c25a2e..d2332b00b9 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -803,11 +803,13 @@ public class PurpurWorldConfig { public boolean zombieVillagerJockeyOnlyBaby = true; public double zombieVillagerJockeyChance = 0.05D; public boolean zombieVillagerJockeyTryExistingChickens = true; + public boolean zombieVillagerResetReputationsWhenCured = false; private void zombieVillagerSettings() { zombieVillagerRidable = getBoolean("mobs.zombie_villager.ridable", zombieVillagerRidable); zombieVillagerRidableInWater = getBoolean("mobs.zombie_villager.ridable-in-water", zombieVillagerRidableInWater); zombieVillagerJockeyOnlyBaby = getBoolean("mobs.zombie_villager.jockey.only-babies", zombieVillagerJockeyOnlyBaby); zombieVillagerJockeyChance = getDouble("mobs.zombie_villager.jockey.chance", zombieVillagerJockeyChance); zombieVillagerJockeyTryExistingChickens = getBoolean("mobs.zombie_villager.jockey.try-existing-chickens", zombieVillagerJockeyTryExistingChickens); + zombieVillagerResetReputationsWhenCured = getBoolean("mobs.zombie_villager.reset-reputation-when-cured", zombieVillagerResetReputationsWhenCured); } }