make sniffer health attributes configurable

This commit is contained in:
granny
2023-03-21 23:35:58 -07:00
parent 20115a4b2e
commit ac3a469545
38 changed files with 238 additions and 213 deletions

View File

@@ -477,12 +477,12 @@ index e9f1d53599168c4c4b44a14b445143025c4be83a..df438bc84c5b90f2fc66965f926dc2ef
public static AttributeSupplier.Builder createAttributes() {
diff --git a/src/main/java/net/minecraft/world/entity/animal/sniffer/Sniffer.java b/src/main/java/net/minecraft/world/entity/animal/sniffer/Sniffer.java
index 47a9e7a036e647c05d8abebdda4cab0d69aac997..28c20f7f79fed655d4a746e8ef3d5d4d15118e04 100644
index bc74bae29b8426ced84e203edb0c41065062f422..12aab69aca179717ea2a2ac04e28a78eff98af20 100644
--- a/src/main/java/net/minecraft/world/entity/animal/sniffer/Sniffer.java
+++ b/src/main/java/net/minecraft/world/entity/animal/sniffer/Sniffer.java
@@ -96,6 +96,11 @@ public class Sniffer extends Animal {
public boolean isControllable() {
return level.purpurConfig.snifferControllable;
@@ -101,6 +101,11 @@ public class Sniffer extends Animal {
public void initAttributes() {
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level.purpurConfig.snifferMaxHealth);
}
+
+ @Override
@@ -525,7 +525,7 @@ index 9cc42b4a1ea0d2315350e038034dfe7171668658..8e837ce3069ca05bcc93ea93f94c7934
@Override
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 01794fced783d09073ce84647a93d94c35e713da..a74e68d7f449fba94f0cc10c3988a089b2c86dc1 100644
index de9435f336643a0654796b2545210829569ec01f..b74313333e8bd1b0302f6c13e7effbb73c4c37b5 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -510,10 +510,12 @@ public class PurpurWorldConfig {
@@ -854,20 +854,21 @@ index 01794fced783d09073ce84647a93d94c35e713da..a74e68d7f449fba94f0cc10c3988a089
}
public boolean shulkerRidable = false;
@@ -1564,10 +1606,12 @@ public class PurpurWorldConfig {
public boolean snifferRidable = false;
@@ -1565,11 +1607,13 @@ public class PurpurWorldConfig {
public boolean snifferRidableInWater = false;
public boolean snifferControllable = true;
public double snifferMaxHealth = 14.0D;
+ public int snifferBreedingTicks = 6000;
private void snifferSettings() {
snifferRidable = getBoolean("mobs.sniffer.ridable", snifferRidable);
snifferRidableInWater = getBoolean("mobs.sniffer.ridable-in-water", snifferRidableInWater);
snifferControllable = getBoolean("mobs.sniffer.controllable", snifferControllable);
snifferMaxHealth = getDouble("mobs.sniffer.attributes.max_health", snifferMaxHealth);
+ snifferBreedingTicks = getInt("mobs.sniffer.breeding-delay-ticks", chickenBreedingTicks);
}
public boolean squidRidable = false;
@@ -1626,6 +1670,7 @@ public class PurpurWorldConfig {
@@ -1628,6 +1672,7 @@ public class PurpurWorldConfig {
public boolean striderRidableInWater = false;
public boolean striderControllable = true;
public double striderMaxHealth = 20.0D;
@@ -875,7 +876,7 @@ index 01794fced783d09073ce84647a93d94c35e713da..a74e68d7f449fba94f0cc10c3988a089
private void striderSettings() {
striderRidable = getBoolean("mobs.strider.ridable", striderRidable);
striderRidableInWater = getBoolean("mobs.strider.ridable-in-water", striderRidableInWater);
@@ -1636,6 +1681,7 @@ public class PurpurWorldConfig {
@@ -1638,6 +1683,7 @@ public class PurpurWorldConfig {
set("mobs.strider.attributes.max_health", oldValue);
}
striderMaxHealth = getDouble("mobs.strider.attributes.max_health", striderMaxHealth);
@@ -883,7 +884,7 @@ index 01794fced783d09073ce84647a93d94c35e713da..a74e68d7f449fba94f0cc10c3988a089
}
public boolean tadpoleRidable = false;
@@ -1656,6 +1702,7 @@ public class PurpurWorldConfig {
@@ -1658,6 +1704,7 @@ public class PurpurWorldConfig {
public double traderLlamaJumpStrengthMax = 0.5D;
public double traderLlamaMovementSpeedMin = 0.175D;
public double traderLlamaMovementSpeedMax = 0.175D;
@@ -891,7 +892,7 @@ index 01794fced783d09073ce84647a93d94c35e713da..a74e68d7f449fba94f0cc10c3988a089
private void traderLlamaSettings() {
traderLlamaRidable = getBoolean("mobs.trader_llama.ridable", traderLlamaRidable);
traderLlamaRidableInWater = getBoolean("mobs.trader_llama.ridable-in-water", traderLlamaRidableInWater);
@@ -1673,6 +1720,7 @@ public class PurpurWorldConfig {
@@ -1675,6 +1722,7 @@ public class PurpurWorldConfig {
traderLlamaJumpStrengthMax = getDouble("mobs.trader_llama.attributes.jump_strength.max", traderLlamaJumpStrengthMax);
traderLlamaMovementSpeedMin = getDouble("mobs.trader_llama.attributes.movement_speed.min", traderLlamaMovementSpeedMin);
traderLlamaMovementSpeedMax = getDouble("mobs.trader_llama.attributes.movement_speed.max", traderLlamaMovementSpeedMax);
@@ -899,7 +900,7 @@ index 01794fced783d09073ce84647a93d94c35e713da..a74e68d7f449fba94f0cc10c3988a089
}
public boolean tropicalFishRidable = false;
@@ -1693,6 +1741,7 @@ public class PurpurWorldConfig {
@@ -1695,6 +1743,7 @@ public class PurpurWorldConfig {
public boolean turtleRidableInWater = false;
public boolean turtleControllable = true;
public double turtleMaxHealth = 30.0D;
@@ -907,7 +908,7 @@ index 01794fced783d09073ce84647a93d94c35e713da..a74e68d7f449fba94f0cc10c3988a089
private void turtleSettings() {
turtleRidable = getBoolean("mobs.turtle.ridable", turtleRidable);
turtleRidableInWater = getBoolean("mobs.turtle.ridable-in-water", turtleRidableInWater);
@@ -1703,6 +1752,7 @@ public class PurpurWorldConfig {
@@ -1705,6 +1754,7 @@ public class PurpurWorldConfig {
set("mobs.turtle.attributes.max_health", oldValue);
}
turtleMaxHealth = getDouble("mobs.turtle.attributes.max_health", turtleMaxHealth);
@@ -915,7 +916,7 @@ index 01794fced783d09073ce84647a93d94c35e713da..a74e68d7f449fba94f0cc10c3988a089
}
public boolean vexRidable = false;
@@ -1730,6 +1780,7 @@ public class PurpurWorldConfig {
@@ -1732,6 +1782,7 @@ public class PurpurWorldConfig {
public boolean villagerFollowEmeraldBlock = false;
public boolean villagerCanBeLeashed = false;
public boolean villagerCanBreed = true;
@@ -923,7 +924,7 @@ index 01794fced783d09073ce84647a93d94c35e713da..a74e68d7f449fba94f0cc10c3988a089
private void villagerSettings() {
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
@@ -1743,6 +1794,7 @@ public class PurpurWorldConfig {
@@ -1745,6 +1796,7 @@ public class PurpurWorldConfig {
villagerFollowEmeraldBlock = getBoolean("mobs.villager.follow-emerald-blocks", villagerFollowEmeraldBlock);
villagerCanBeLeashed = getBoolean("mobs.villager.can-be-leashed", villagerCanBeLeashed);
villagerCanBreed = getBoolean("mobs.villager.can-breed", villagerCanBreed);
@@ -931,7 +932,7 @@ index 01794fced783d09073ce84647a93d94c35e713da..a74e68d7f449fba94f0cc10c3988a089
}
public boolean vindicatorRidable = false;
@@ -1854,6 +1906,7 @@ public class PurpurWorldConfig {
@@ -1856,6 +1908,7 @@ public class PurpurWorldConfig {
public boolean wolfRidableInWater = false;
public boolean wolfControllable = true;
public double wolfMaxHealth = 8.0D;
@@ -939,7 +940,7 @@ index 01794fced783d09073ce84647a93d94c35e713da..a74e68d7f449fba94f0cc10c3988a089
private void wolfSettings() {
wolfRidable = getBoolean("mobs.wolf.ridable", wolfRidable);
wolfRidableInWater = getBoolean("mobs.wolf.ridable-in-water", wolfRidableInWater);
@@ -1864,6 +1917,7 @@ public class PurpurWorldConfig {
@@ -1866,6 +1919,7 @@ public class PurpurWorldConfig {
set("mobs.wolf.attributes.max_health", oldValue);
}
wolfMaxHealth = getDouble("mobs.wolf.attributes.max_health", wolfMaxHealth);