diff options
Diffstat (limited to 'CraftBukkit-Patches/0065-Allow-Disabling-Zombie-Villager-Aggression.patch')
-rw-r--r-- | CraftBukkit-Patches/0065-Allow-Disabling-Zombie-Villager-Aggression.patch | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/CraftBukkit-Patches/0065-Allow-Disabling-Zombie-Villager-Aggression.patch b/CraftBukkit-Patches/0065-Allow-Disabling-Zombie-Villager-Aggression.patch new file mode 100644 index 0000000000..1da55cb2fe --- /dev/null +++ b/CraftBukkit-Patches/0065-Allow-Disabling-Zombie-Villager-Aggression.patch @@ -0,0 +1,48 @@ +From 09453b1bf6ee187b875d5e9970821b06374eb84d Mon Sep 17 00:00:00 2001 +From: Dylan Xaldin <[email protected]> +Date: Thu, 12 Dec 2013 18:05:03 -0600 +Subject: [PATCH] Allow Disabling Zombie Villager Aggression + +Ability to configure if Zombies will be aggressive towards Villagers. + +diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java +index 7d8cb93..f732579 100644 +--- a/src/main/java/net/minecraft/server/EntityZombie.java ++++ b/src/main/java/net/minecraft/server/EntityZombie.java +@@ -30,7 +30,7 @@ public class EntityZombie extends EntityMonster { + this.getNavigation().b(true); + this.goalSelector.a(0, new PathfinderGoalFloat(this)); + this.goalSelector.a(2, new PathfinderGoalMeleeAttack(this, EntityHuman.class, 1.0D, false)); +- this.goalSelector.a(4, new PathfinderGoalMeleeAttack(this, EntityVillager.class, 1.0D, true)); ++ if ( world.spigotConfig.zombieAggressiveTowardsVillager ) { this.goalSelector.a(4, new PathfinderGoalMeleeAttack(this, EntityVillager.class, 1.0D, true)); } // Spigot + this.goalSelector.a(5, new PathfinderGoalMoveTowardsRestriction(this, 1.0D)); + this.goalSelector.a(6, new PathfinderGoalMoveThroughVillage(this, 1.0D, false)); + this.goalSelector.a(7, new PathfinderGoalRandomStroll(this, 1.0D)); +@@ -38,7 +38,7 @@ public class EntityZombie extends EntityMonster { + this.goalSelector.a(8, new PathfinderGoalRandomLookaround(this)); + this.targetSelector.a(1, new PathfinderGoalHurtByTarget(this, true)); + this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget(this, EntityHuman.class, 0, true)); +- this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget(this, EntityVillager.class, 0, false)); ++ if ( world.spigotConfig.zombieAggressiveTowardsVillager ) { this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget(this, EntityVillager.class, 0, false)); } // Spigot + this.a(0.6F, 1.8F); + } + +diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java +index 45b2aae..b8e144d 100644 +--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java ++++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java +@@ -245,4 +245,11 @@ public class SpigotWorldConfig + + antiXrayInstance = new AntiXray( this ); + } ++ ++ public boolean zombieAggressiveTowardsVillager; ++ private void zombieAggressiveTowardsVillager() ++ { ++ zombieAggressiveTowardsVillager = getBoolean( "zombie-aggressive-towards-villager", true ); ++ log( "Zombie Aggressive Towards Villager: " + zombieAggressiveTowardsVillager ); ++ } + } +-- +1.9.1 + |