Allow Disabling Zombie Villager Agression.
Useful for larger servers who want a nice performance boost at the expense of a little bit of gameplay mechanic changes. I believe this brings the mechanics of zombie vs villager back in line with 1.5.
This commit is contained in:
parent
ce85ede2bb
commit
da809d3cf0
1 changed files with 48 additions and 0 deletions
|
@ -0,0 +1,48 @@
|
||||||
|
From 5d27364026a357ed790b5024e594769f3691fe70 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Dylan Xaldin <Puremin0rez515@gmail.com>
|
||||||
|
Date: Thu, 12 Dec 2013 18:05:03 -0600
|
||||||
|
Subject: [PATCH] Allow Disabling Zombie Villager Agression
|
||||||
|
|
||||||
|
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 6c6e03e..5c8b0a8 100644
|
||||||
|
--- a/src/main/java/net/minecraft/server/EntityZombie.java
|
||||||
|
+++ b/src/main/java/net/minecraft/server/EntityZombie.java
|
||||||
|
@@ -26,7 +26,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));
|
||||||
|
@@ -34,7 +34,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 b207c02..ea447f9 100644
|
||||||
|
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
|
||||||
|
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
|
||||||
|
@@ -239,4 +239,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.8.3.2
|
||||||
|
|
Loading…
Reference in a new issue