From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: granny Date: Tue, 7 May 2024 04:59:57 -0700 Subject: [PATCH] option to make ravagers afraid of rabbits https://github.com/PurpurMC/Purpur/discussions/713 diff --git a/src/main/java/net/minecraft/world/entity/monster/Ravager.java b/src/main/java/net/minecraft/world/entity/monster/Ravager.java index 963df673d7f63e2aea25d4dce28edef06899eabe..4f10d4686f12a81a77f5fc103139aa03069b398c 100644 --- a/src/main/java/net/minecraft/world/entity/monster/Ravager.java +++ b/src/main/java/net/minecraft/world/entity/monster/Ravager.java @@ -113,6 +113,7 @@ public class Ravager extends Raider { super.registerGoals(); this.goalSelector.addGoal(0, new FloatGoal(this)); this.goalSelector.addGoal(0, new org.purpurmc.purpur.entity.ai.HasRider(this)); // Purpur + if (level().purpurConfig.ravagerAvoidRabbits) this.goalSelector.addGoal(3, new net.minecraft.world.entity.ai.goal.AvoidEntityGoal<>(this, net.minecraft.world.entity.animal.Rabbit.class, 6.0F, 1.0D, 1.2D)); // Purpur this.goalSelector.addGoal(4, new MeleeAttackGoal(this, 1.0D, true)); this.goalSelector.addGoal(5, new WaterAvoidingRandomStrollGoal(this, 0.4D)); this.goalSelector.addGoal(6, new LookAtPlayerGoal(this, Player.class, 6.0F)); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java index b3e3b5738abceade320480131f6e7238ca85473b..3336bb6bf61477be575c6f1b3a8ccfec1b009d48 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -2506,6 +2506,7 @@ public class PurpurWorldConfig { public boolean ravagerTakeDamageFromWater = false; public List ravagerGriefableBlocks = new ArrayList<>(); public boolean ravagerAlwaysDropExp = false; + public boolean ravagerAvoidRabbits = false; private void ravagerSettings() { ravagerRidable = getBoolean("mobs.ravager.ridable", ravagerRidable); ravagerRidableInWater = getBoolean("mobs.ravager.ridable-in-water", ravagerRidableInWater); @@ -2537,6 +2538,7 @@ public class PurpurWorldConfig { } }); ravagerAlwaysDropExp = getBoolean("mobs.ravager.always-drop-exp", ravagerAlwaysDropExp); + ravagerAvoidRabbits = getBoolean("mobs.ravager.avoid-rabbits", ravagerAvoidRabbits); } public boolean salmonRidable = false;