mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
add nautilus and zombie nautilus options
This commit is contained in:
@@ -707,6 +707,50 @@ index 0a75d3790a4bf4812e4f3b27ec50d67fdccf812d..cd888e070a72ff46d35a4425a0013c61
|
||||
}
|
||||
|
||||
@Override
|
||||
diff --git a/net/minecraft/world/entity/animal/nautilus/Nautilus.java b/net/minecraft/world/entity/animal/nautilus/Nautilus.java
|
||||
index a02a4b47cf02cd7eaa76d25af2dccb50ad884504..a32ac3907883f65c2a00173128a4a011fd552932 100644
|
||||
--- a/net/minecraft/world/entity/animal/nautilus/Nautilus.java
|
||||
+++ b/net/minecraft/world/entity/animal/nautilus/Nautilus.java
|
||||
@@ -21,6 +21,17 @@ public class Nautilus extends AbstractNautilus {
|
||||
super(type, level);
|
||||
}
|
||||
|
||||
+ // Purpur start - Configurable entity base attributes
|
||||
+ @Override
|
||||
+ public void initAttributes() {
|
||||
+ this.getAttribute(net.minecraft.world.entity.ai.attributes.Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.nautilusMaxHealth);
|
||||
+ this.getAttribute(net.minecraft.world.entity.ai.attributes.Attributes.MOVEMENT_SPEED).setBaseValue(this.level().purpurConfig.nautilusMovementSpeed);
|
||||
+ this.getAttribute(net.minecraft.world.entity.ai.attributes.Attributes.ATTACK_DAMAGE).setBaseValue(this.level().purpurConfig.nautilusAttackDamage);
|
||||
+ this.getAttribute(net.minecraft.world.entity.ai.attributes.Attributes.KNOCKBACK_RESISTANCE).setBaseValue(this.level().purpurConfig.nautilusKnockbackResistance);
|
||||
+ this.getAttribute(net.minecraft.world.entity.ai.attributes.Attributes.SCALE).setBaseValue(this.level().purpurConfig.nautilusScale);
|
||||
+ }
|
||||
+ // Purpur end - Configurable entity base attributes
|
||||
+
|
||||
@Override
|
||||
protected Brain.Provider<Nautilus> brainProvider() {
|
||||
return NautilusAi.brainProvider();
|
||||
diff --git a/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java b/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java
|
||||
index 83c16a44b230efd010e06cabb428954d157cea47..7ef4a15ba2b315a41480484572a6c6898340466b 100644
|
||||
--- a/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java
|
||||
+++ b/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java
|
||||
@@ -43,6 +43,17 @@ public class ZombieNautilus extends AbstractNautilus {
|
||||
super(type, level);
|
||||
}
|
||||
|
||||
+ // Purpur start - Configurable entity base attributes
|
||||
+ @Override
|
||||
+ public void initAttributes() {
|
||||
+ this.getAttribute(net.minecraft.world.entity.ai.attributes.Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.zombieNautilusMaxHealth);
|
||||
+ this.getAttribute(net.minecraft.world.entity.ai.attributes.Attributes.MOVEMENT_SPEED).setBaseValue(this.level().purpurConfig.zombieNautilusMovementSpeed);
|
||||
+ this.getAttribute(net.minecraft.world.entity.ai.attributes.Attributes.ATTACK_DAMAGE).setBaseValue(this.level().purpurConfig.zombieNautilusAttackDamage);
|
||||
+ this.getAttribute(net.minecraft.world.entity.ai.attributes.Attributes.KNOCKBACK_RESISTANCE).setBaseValue(this.level().purpurConfig.zombieNautilusKnockbackResistance);
|
||||
+ this.getAttribute(net.minecraft.world.entity.ai.attributes.Attributes.SCALE).setBaseValue(this.level().purpurConfig.zombieNautilusScale);
|
||||
+ }
|
||||
+ // Purpur end - Configurable entity base attributes
|
||||
+
|
||||
public static AttributeSupplier.Builder createAttributes() {
|
||||
return AbstractNautilus.createAttributes().add(Attributes.MOVEMENT_SPEED, 1.1F);
|
||||
}
|
||||
diff --git a/net/minecraft/world/entity/animal/panda/Panda.java b/net/minecraft/world/entity/animal/panda/Panda.java
|
||||
index 93503f6b4eea2cb2ae6c01279e847c307920c35d..d5060fb8e9a711e6230f2c4950521d8b4f5c01d2 100644
|
||||
--- a/net/minecraft/world/entity/animal/panda/Panda.java
|
||||
|
||||
@@ -420,12 +420,12 @@ index cd888e070a72ff46d35a4425a0013c617b31e159..30204224ed83f6d3cfd64640b332b23c
|
||||
protected void ageBoundaryReached() {
|
||||
if (this.isBaby()) {
|
||||
diff --git a/net/minecraft/world/entity/animal/nautilus/Nautilus.java b/net/minecraft/world/entity/animal/nautilus/Nautilus.java
|
||||
index a02a4b47cf02cd7eaa76d25af2dccb50ad884504..a941cb9843fcf8d008ae846dcab95e32d823a1b2 100644
|
||||
index a32ac3907883f65c2a00173128a4a011fd552932..98199869b70c7c0f2b744ac74961c77d473617ca 100644
|
||||
--- a/net/minecraft/world/entity/animal/nautilus/Nautilus.java
|
||||
+++ b/net/minecraft/world/entity/animal/nautilus/Nautilus.java
|
||||
@@ -21,6 +21,13 @@ public class Nautilus extends AbstractNautilus {
|
||||
super(type, level);
|
||||
@@ -32,6 +32,13 @@ public class Nautilus extends AbstractNautilus {
|
||||
}
|
||||
// Purpur end - Configurable entity base attributes
|
||||
|
||||
+ // Purpur start - Make entity breeding times configurable
|
||||
+ @Override
|
||||
@@ -438,12 +438,12 @@ index a02a4b47cf02cd7eaa76d25af2dccb50ad884504..a941cb9843fcf8d008ae846dcab95e32
|
||||
protected Brain.Provider<Nautilus> brainProvider() {
|
||||
return NautilusAi.brainProvider();
|
||||
diff --git a/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java b/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java
|
||||
index 83c16a44b230efd010e06cabb428954d157cea47..9e2b703d23a044fecdbc544588079c345fd376c7 100644
|
||||
index 7ef4a15ba2b315a41480484572a6c6898340466b..94383c5020b6631203ddc4e0a58a222729ffe9a2 100644
|
||||
--- a/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java
|
||||
+++ b/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java
|
||||
@@ -43,6 +43,13 @@ public class ZombieNautilus extends AbstractNautilus {
|
||||
super(type, level);
|
||||
@@ -54,6 +54,13 @@ public class ZombieNautilus extends AbstractNautilus {
|
||||
}
|
||||
// Purpur end - Configurable entity base attributes
|
||||
|
||||
+ // Purpur start - Make entity breeding times configurable
|
||||
+ @Override
|
||||
|
||||
@@ -472,6 +472,42 @@ index 828793aaa2992fd1077040309154f814b302476a..8034ce67266b6baab35c72eaebf5ad67
|
||||
@Override
|
||||
protected void ageBoundaryReached() {
|
||||
if (this.isBaby()) {
|
||||
diff --git a/net/minecraft/world/entity/animal/nautilus/Nautilus.java b/net/minecraft/world/entity/animal/nautilus/Nautilus.java
|
||||
index 98199869b70c7c0f2b744ac74961c77d473617ca..7c4467933061f097425d6c82188a65fd5e4c4d3b 100644
|
||||
--- a/net/minecraft/world/entity/animal/nautilus/Nautilus.java
|
||||
+++ b/net/minecraft/world/entity/animal/nautilus/Nautilus.java
|
||||
@@ -39,6 +39,13 @@ public class Nautilus extends AbstractNautilus {
|
||||
}
|
||||
// Purpur end - Make entity breeding times configurable
|
||||
|
||||
+ // Purpur start - Mobs always drop experience
|
||||
+ @Override
|
||||
+ protected boolean isAlwaysExperienceDropper() {
|
||||
+ return this.level().purpurConfig.nautilusAlwaysDropExp;
|
||||
+ }
|
||||
+ // Purpur end - Mobs always drop experience
|
||||
+
|
||||
@Override
|
||||
protected Brain.Provider<Nautilus> brainProvider() {
|
||||
return NautilusAi.brainProvider();
|
||||
diff --git a/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java b/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java
|
||||
index 94383c5020b6631203ddc4e0a58a222729ffe9a2..7e4d005053e6812f329ab7ac1f252c547d4c9a12 100644
|
||||
--- a/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java
|
||||
+++ b/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java
|
||||
@@ -61,6 +61,13 @@ public class ZombieNautilus extends AbstractNautilus {
|
||||
}
|
||||
// Purpur end - Make entity breeding times configurable
|
||||
|
||||
+ // Purpur start - Mobs always drop experience
|
||||
+ @Override
|
||||
+ protected boolean isAlwaysExperienceDropper() {
|
||||
+ return this.level().purpurConfig.zombieNautilusAlwaysDropExp;
|
||||
+ }
|
||||
+ // Purpur end - Mobs always drop experience
|
||||
+
|
||||
public static AttributeSupplier.Builder createAttributes() {
|
||||
return AbstractNautilus.createAttributes().add(Attributes.MOVEMENT_SPEED, 1.1F);
|
||||
}
|
||||
diff --git a/net/minecraft/world/entity/animal/panda/Panda.java b/net/minecraft/world/entity/animal/panda/Panda.java
|
||||
index e9aa07dea0515f53a08a7066fa9e23e0ee69d69e..5116e9e16070e23d13b526d21facb7b5ad0988ba 100644
|
||||
--- a/net/minecraft/world/entity/animal/panda/Panda.java
|
||||
|
||||
@@ -2365,25 +2365,21 @@ public class PurpurWorldConfig {
|
||||
muleAlwaysDropExp = getBoolean("mobs.mule.always-drop-exp", muleAlwaysDropExp);
|
||||
}
|
||||
|
||||
// public boolean nautilusRidable = false;
|
||||
// public boolean nautilusRidableInWater = true;
|
||||
// public boolean nautilusControllable = true;
|
||||
// public double nautilusMaxHealth = 10.0D;
|
||||
// public double nautilusScale = 1.0D;
|
||||
public double nautilusMaxHealth = 15.0D;
|
||||
public double nautilusMovementSpeed = 1.0D;
|
||||
public double nautilusAttackDamage = 3.0D;
|
||||
public double nautilusKnockbackResistance = 0.3D;
|
||||
public double nautilusScale = 1.0D;
|
||||
public int nautilusBreedingTicks = 6000;
|
||||
// public boolean nautilusTakeDamageFromWater = false;
|
||||
// public boolean nautilusAlwaysDropExp = false;
|
||||
// public boolean nautilusSpawnUnderSeaLevel = false;
|
||||
public boolean nautilusAlwaysDropExp = false;
|
||||
private void nautilusSettings() {
|
||||
// nautilusRidable = getBoolean("mobs.nautilus.ridable", nautilusRidable);
|
||||
// nautilusRidableInWater = getBoolean("mobs.nautilus.ridable-in-water", nautilusRidableInWater);
|
||||
// nautilusControllable = getBoolean("mobs.nautilus.controllable", nautilusControllable);
|
||||
// nautilusMaxHealth = getDouble("mobs.nautilus.attributes.max_health", nautilusMaxHealth);
|
||||
// nautilusScale = Mth.clamp(getDouble("mobs.nautilus.attributes.scale", nautilusScale), 0.0625D, 16.0D);
|
||||
nautilusMaxHealth = getDouble("mobs.nautilus.attributes.max_health", nautilusMaxHealth);
|
||||
nautilusMovementSpeed = getDouble("mobs.nautilus.attributes.movement_speed", nautilusMovementSpeed);
|
||||
nautilusAttackDamage = getDouble("mobs.nautilus.attributes.attack_damage", nautilusAttackDamage);
|
||||
nautilusKnockbackResistance = getDouble("mobs.nautilus.attributes.knockback_resistance", nautilusKnockbackResistance);
|
||||
nautilusScale = Mth.clamp(getDouble("mobs.nautilus.attributes.scale", nautilusScale), 0.0625D, 16.0D);
|
||||
nautilusBreedingTicks = getInt("mobs.nautilus.breeding-delay-ticks", nautilusBreedingTicks);
|
||||
// nautilusTakeDamageFromWater = getBoolean("mobs.nautilus.takes-damage-from-water", nautilusTakeDamageFromWater);
|
||||
// nautilusAlwaysDropExp = getBoolean("mobs.nautilus.always-drop-exp", nautilusAlwaysDropExp);
|
||||
// nautilusSpawnUnderSeaLevel = getBoolean("mobs.nautilus.spawn-below-sea-level", nautilusSpawnUnderSeaLevel);
|
||||
nautilusAlwaysDropExp = getBoolean("mobs.nautilus.always-drop-exp", nautilusAlwaysDropExp);
|
||||
}
|
||||
|
||||
public boolean ocelotRidable = false;
|
||||
@@ -3635,6 +3631,21 @@ public class PurpurWorldConfig {
|
||||
zombieHorseAlwaysDropExp = getBoolean("mobs.zombie_horse.always-drop-exp", zombieHorseAlwaysDropExp);
|
||||
}
|
||||
|
||||
public double zombieNautilusMaxHealth = 15.0D;
|
||||
public double zombieNautilusMovementSpeed = 1.1D;
|
||||
public double zombieNautilusAttackDamage = 3.0D;
|
||||
public double zombieNautilusKnockbackResistance = 0.3D;
|
||||
public double zombieNautilusScale = 1.0D;
|
||||
public boolean zombieNautilusAlwaysDropExp = false;
|
||||
private void zombieNautilusSettings() {
|
||||
zombieNautilusMaxHealth = getDouble("mobs.zombie_nautilus.attributes.max_health", zombieNautilusMaxHealth);
|
||||
zombieNautilusMovementSpeed = getDouble("mobs.zombie_nautilus.attributes.movement_speed", zombieNautilusMovementSpeed);
|
||||
zombieNautilusAttackDamage = getDouble("mobs.zombie_nautilus.attributes.attack_damage", zombieNautilusAttackDamage);
|
||||
zombieNautilusKnockbackResistance = getDouble("mobs.zombie_nautilus.attributes.knockback_resistance", zombieNautilusKnockbackResistance);
|
||||
zombieNautilusScale = Mth.clamp(getDouble("mobs.zombie_nautilus.attributes.scale", zombieNautilusScale), 0.0625D, 16.0D);
|
||||
zombieNautilusAlwaysDropExp = getBoolean("mobs.zombie_nautilus.always-drop-exp", zombieNautilusAlwaysDropExp);
|
||||
}
|
||||
|
||||
public boolean zombieVillagerRidable = false;
|
||||
public boolean zombieVillagerRidableInWater = true;
|
||||
public boolean zombieVillagerControllable = true;
|
||||
|
||||
Reference in New Issue
Block a user