mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-19 17:37:42 +01:00
add back pufferfish patches
This commit is contained in:
@@ -1,947 +0,0 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
|
||||
Date: Sun, 15 Nov 2020 02:18:15 -0800
|
||||
Subject: [PATCH] Make entity breeding times configurable
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/ai/behavior/VillagerMakeLove.java b/src/main/java/net/minecraft/world/entity/ai/behavior/VillagerMakeLove.java
|
||||
index 0951c04533e7c39b969d041271684355770b53c2..02d4ba2ccdce99ca97614baa7c8e49213126af96 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/ai/behavior/VillagerMakeLove.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/ai/behavior/VillagerMakeLove.java
|
||||
@@ -123,8 +123,10 @@ public class VillagerMakeLove extends Behavior<Villager> {
|
||||
return Optional.empty();
|
||||
}
|
||||
// CraftBukkit end
|
||||
- parent.setAge(6000);
|
||||
- partner.setAge(6000);
|
||||
+ // Purpur start
|
||||
+ parent.setAge(world.purpurConfig.villagerBreedingTicks);
|
||||
+ partner.setAge(world.purpurConfig.villagerBreedingTicks);
|
||||
+ // Purpur end
|
||||
world.addFreshEntityWithPassengers(entityvillager2, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.BREEDING); // CraftBukkit - added SpawnReason
|
||||
world.broadcastEntityEvent(entityvillager2, (byte) 12);
|
||||
return Optional.of(entityvillager2);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Animal.java b/src/main/java/net/minecraft/world/entity/animal/Animal.java
|
||||
index 9f6728184dffc4b5a93900ac6e8411f967eed26d..15feb1baed21b2ed3fb90d68aa9b2b97aa664b15 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Animal.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Animal.java
|
||||
@@ -40,6 +40,7 @@ public abstract class Animal extends AgeableMob {
|
||||
@Nullable
|
||||
public UUID loveCause;
|
||||
public ItemStack breedItem; // CraftBukkit - Add breedItem variable
|
||||
+ public abstract int getPurpurBreedTime(); // Purpur
|
||||
|
||||
protected Animal(EntityType<? extends Animal> type, Level world) {
|
||||
super(type, world);
|
||||
@@ -274,8 +275,10 @@ public abstract class Animal extends AgeableMob {
|
||||
entityplayer.awardStat(Stats.ANIMALS_BRED);
|
||||
CriteriaTriggers.BRED_ANIMALS.trigger(entityplayer, this, entityanimal, entityageable);
|
||||
} // Paper
|
||||
- this.setAge(6000);
|
||||
- entityanimal.setAge(6000);
|
||||
+ // Purpur start
|
||||
+ this.setAge(this.getPurpurBreedTime());
|
||||
+ entityanimal.setAge(entityanimal.getPurpurBreedTime());
|
||||
+ // Purpur end
|
||||
this.resetLove();
|
||||
entityanimal.resetLove();
|
||||
worldserver.broadcastEntityEvent(this, (byte) 18);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Bee.java b/src/main/java/net/minecraft/world/entity/animal/Bee.java
|
||||
index aaf6f76cefc71f714bc9aeddc22149110ee76197..944497d617f3c6474e51fa8146dd9f0c407b1b48 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Bee.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Bee.java
|
||||
@@ -471,6 +471,11 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.beeMaxHealth);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.beeBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
public int getRemainingPersistentAngerTime() {
|
||||
return (Integer) this.entityData.get(Bee.DATA_REMAINING_ANGER_TIME);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Cat.java b/src/main/java/net/minecraft/world/entity/animal/Cat.java
|
||||
index 49a6ac765e71b311c91cbfd4cf9cde2daa729239..ffa2128b63e5e45c2a41e31a6b8b6e8df0bf9be4 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Cat.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Cat.java
|
||||
@@ -127,6 +127,11 @@ public class Cat extends TamableAnimal implements VariantHolder<CatVariant> {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.catMaxHealth);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.catBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
public ResourceLocation getResourceLocation() {
|
||||
return this.getVariant().texture();
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Chicken.java b/src/main/java/net/minecraft/world/entity/animal/Chicken.java
|
||||
index 0f49705e3c7adf033cee9d0746319885c830224f..86b910cbb8d0e19dc9ae53078e730495bf4a3b87 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Chicken.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Chicken.java
|
||||
@@ -79,6 +79,11 @@ public class Chicken extends Animal {
|
||||
}
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.chickenBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(0, new FloatGoal(this));
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Cow.java b/src/main/java/net/minecraft/world/entity/animal/Cow.java
|
||||
index b94ec05ffa0a6f9e7368731d360319ffe1b10e3f..371cab208ee0a31a90248272f88249eceaf9eb59 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Cow.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Cow.java
|
||||
@@ -65,6 +65,11 @@ public class Cow extends Animal {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.cowMaxHealth);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.cowBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(0, new FloatGoal(this));
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Fox.java b/src/main/java/net/minecraft/world/entity/animal/Fox.java
|
||||
index 7e191d8bb56d0b6591b3a60dfe07004d025eedfa..989dc460d8a21b8e54ff4464998c2b02a6a9dd37 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Fox.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Fox.java
|
||||
@@ -186,6 +186,11 @@ public class Fox extends Animal implements VariantHolder<Fox.Type> {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.foxMaxHealth);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.foxBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
protected void defineSynchedData() {
|
||||
super.defineSynchedData();
|
||||
@@ -981,8 +986,10 @@ public class Fox extends Animal implements VariantHolder<Fox.Type> {
|
||||
CriteriaTriggers.BRED_ANIMALS.trigger(entityplayer2, this.animal, this.partner, entityfox);
|
||||
}
|
||||
|
||||
- this.animal.setAge(6000);
|
||||
- this.partner.setAge(6000);
|
||||
+ // Purpur start
|
||||
+ this.animal.setAge(this.animal.getPurpurBreedTime());
|
||||
+ this.partner.setAge(this.partner.getPurpurBreedTime());
|
||||
+ // Purpur end
|
||||
this.animal.resetLove();
|
||||
this.partner.resetLove();
|
||||
worldserver.addFreshEntityWithPassengers(entityfox, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.BREEDING); // CraftBukkit - added SpawnReason
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java b/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java
|
||||
index b27c0f21354a78025f9d1664c560fb8799bced91..7fd50f60aab2fa49a8227f313352a2ee251904c8 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java
|
||||
@@ -85,6 +85,11 @@ public class MushroomCow extends Cow implements Shearable, VariantHolder<Mushroo
|
||||
this.getAttribute(net.minecraft.world.entity.ai.attributes.Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.mooshroomMaxHealth);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.mooshroomBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
public float getWalkTargetValue(BlockPos pos, LevelReader world) {
|
||||
return world.getBlockState(pos.below()).is(Blocks.MYCELIUM) ? 10.0F : world.getPathfindingCostFromLightLevels(pos);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Ocelot.java b/src/main/java/net/minecraft/world/entity/animal/Ocelot.java
|
||||
index e67c8756455d1388069dc41e8d968800b631be4e..e2f59c296d4f839983071da319b19e4e175a88fd 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Ocelot.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Ocelot.java
|
||||
@@ -90,6 +90,11 @@ public class Ocelot extends Animal {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.ocelotMaxHealth);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.ocelotBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
public boolean isTrusting() {
|
||||
return (Boolean) this.entityData.get(Ocelot.DATA_TRUSTING);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Panda.java b/src/main/java/net/minecraft/world/entity/animal/Panda.java
|
||||
index b475b278dcedef881b8612f615a057719e3466be..68e94b94dd89c2b3fc546819c7a221a3b6706005 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Panda.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Panda.java
|
||||
@@ -140,6 +140,11 @@ public class Panda extends Animal {
|
||||
setAttributes();
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.pandaBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
public boolean canTakeItem(ItemStack stack) {
|
||||
EquipmentSlot enumitemslot = Mob.getEquipmentSlotForItem(stack);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Parrot.java b/src/main/java/net/minecraft/world/entity/animal/Parrot.java
|
||||
index 361299312e883ca8377790fba5a89227e1c8b82f..280d20c3380ca244f0587b2c6811b5facd494ba6 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Parrot.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Parrot.java
|
||||
@@ -196,6 +196,11 @@ public class Parrot extends ShoulderRidingEntity implements VariantHolder<Parrot
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.parrotMaxHealth);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return 6000;
|
||||
+ }
|
||||
+
|
||||
@Nullable
|
||||
@Override
|
||||
public SpawnGroupData finalizeSpawn(ServerLevelAccessor world, DifficultyInstance difficulty, MobSpawnType spawnReason, @Nullable SpawnGroupData entityData, @Nullable CompoundTag entityNbt) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Pig.java b/src/main/java/net/minecraft/world/entity/animal/Pig.java
|
||||
index ff98a81f7104bbaf67ed85b8ad0946edf2a8c368..921efb89b4acf34e5e90f9b8faae16fb3b1b5002 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Pig.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Pig.java
|
||||
@@ -86,6 +86,11 @@ public class Pig extends Animal implements ItemSteerable, Saddleable {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.pigMaxHealth);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.pigBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(0, new FloatGoal(this));
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/PolarBear.java b/src/main/java/net/minecraft/world/entity/animal/PolarBear.java
|
||||
index b2cf680e377f849a7cc17136ebca3cf33e34048c..0df9900ecf211f3a0bcfab6daa931fddf9bfd3c2 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/PolarBear.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/PolarBear.java
|
||||
@@ -120,6 +120,11 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
}
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.polarBearBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Nullable
|
||||
@Override
|
||||
public AgeableMob getBreedOffspring(ServerLevel world, AgeableMob entity) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Rabbit.java b/src/main/java/net/minecraft/world/entity/animal/Rabbit.java
|
||||
index 2f373666e982a8c4e769168b565ca26e75fe59e9..5443affd9dd8d27e32768c2df5a624b5cd7b1bec 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Rabbit.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Rabbit.java
|
||||
@@ -142,6 +142,11 @@ public class Rabbit extends Animal implements VariantHolder<Rabbit.Variant> {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.rabbitMaxHealth);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.rabbitBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
// CraftBukkit start - code from constructor
|
||||
public void initializePathFinderGoals(){
|
||||
this.setSpeedModifier(0.0D);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Sheep.java b/src/main/java/net/minecraft/world/entity/animal/Sheep.java
|
||||
index 3d212b09258b9777079d4bc7ce950f529cdce69e..c3b79c109e895cb4460571c8816b210455126f1d 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Sheep.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Sheep.java
|
||||
@@ -139,6 +139,11 @@ public class Sheep extends Animal implements Shearable {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.sheepMaxHealth);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.sheepBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
protected void registerGoals() {
|
||||
this.eatBlockGoal = new EatBlockGoal(this);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Turtle.java b/src/main/java/net/minecraft/world/entity/animal/Turtle.java
|
||||
index 9aa764686433ad8d58191f96ab22d30154058af7..cded4a8baa6815f9d6a3107173f9654136d5943a 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Turtle.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Turtle.java
|
||||
@@ -105,6 +105,11 @@ public class Turtle extends Animal {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.turtleMaxHealth);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.turtleBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
public void setHomePos(BlockPos pos) {
|
||||
this.entityData.set(Turtle.HOME_POS, pos.immutable()); // Paper - called with mutablepos...
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Wolf.java b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
index c9ad084ce93eb618261221c7e19450c06fb8a5f5..074f1860e755348a5a3a8e9df383896656cee9af 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Wolf.java
|
||||
@@ -129,6 +129,11 @@ public class Wolf extends TamableAnimal implements NeutralMob {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.wolfMaxHealth);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.wolfBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(1, new FloatGoal(this));
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java b/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java
|
||||
index 3b70849dca92ee4b0427396de6440f1c29fd724a..8b69eaf846d746e8c4a0d45378d85edcbfa4daf2 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java
|
||||
@@ -120,6 +120,11 @@ public class Axolotl extends Animal implements LerpingModel, VariantHolder<Axolo
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.axolotlMaxHealth);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.axolotlBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
public Map<String, Vector3f> getModelRotationValues() {
|
||||
return this.modelRotationValues;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
index 5ec8815cc69f5abe03a29224650edfb153c9f5d0..8073a3a0df7d75a29419303c85d7dadd9f94be99 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java
|
||||
@@ -89,6 +89,10 @@ public class Camel extends AbstractHorse implements PlayerRideableJumping, Rider
|
||||
public boolean dismountsUnderwater() {
|
||||
return level().purpurConfig.useDismountsUnderwaterTag ? super.dismountsUnderwater() : !level().purpurConfig.camelRidableInWater;
|
||||
}
|
||||
+
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.camelBreedingTicks;
|
||||
+ }
|
||||
// Purpur end
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
|
||||
index d4100aab149913a3146ce00f20baf15e2c3ecbfb..eab6d7bb5ae6635eb881156f50c8fd4ed2adb11a 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
|
||||
@@ -136,6 +136,10 @@ public class Frog extends Animal implements VariantHolder<FrogVariant> {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.frogBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
protected Brain.Provider<Frog> brainProvider() {
|
||||
return Brain.provider(MEMORY_TYPES, SENSOR_TYPES);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java b/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java
|
||||
index 98f9489623a755778bec2f8977b57882ad2f0b4f..93b15328e00ee81925419aeb54ca2c3873aea924 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java
|
||||
@@ -106,6 +106,11 @@ public class Goat extends Animal {
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.goatBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
protected Brain.Provider<Goat> brainProvider() {
|
||||
return Brain.provider(Goat.MEMORY_TYPES, Goat.SENSOR_TYPES);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/Donkey.java b/src/main/java/net/minecraft/world/entity/animal/horse/Donkey.java
|
||||
index 365273173e37e74470a1cf511334ea8cb25f8302..6932d0eafbeca9de80728c6b0ae42340d2297ad0 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/horse/Donkey.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/Donkey.java
|
||||
@@ -37,6 +37,11 @@ public class Donkey extends AbstractChestedHorse {
|
||||
return generateSpeed(this.level().purpurConfig.donkeyMovementSpeedMin, this.level().purpurConfig.donkeyMovementSpeedMax);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.donkeyBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
protected SoundEvent getAmbientSound() {
|
||||
return SoundEvents.DONKEY_AMBIENT;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/Horse.java b/src/main/java/net/minecraft/world/entity/animal/horse/Horse.java
|
||||
index 92339f5a07dcb6bf7eb1bce6d584464ebd8430b5..0251ded48eb5bdf96f0e67f6456aa15909c8a4ff 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/horse/Horse.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/Horse.java
|
||||
@@ -62,6 +62,11 @@ public class Horse extends AbstractHorse implements VariantHolder<Variant> {
|
||||
return generateSpeed(this.level().purpurConfig.horseMovementSpeedMin, this.level().purpurConfig.horseMovementSpeedMax);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.horseBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
protected void randomizeAttributes(RandomSource random) {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue((double)generateMaxHealth(random::nextInt));
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/Llama.java b/src/main/java/net/minecraft/world/entity/animal/horse/Llama.java
|
||||
index 071089e3ec438c323ea715e74911df4a465a7017..5f7e564154bccd1329ad1966a8ce388282107183 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/horse/Llama.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/Llama.java
|
||||
@@ -138,6 +138,11 @@ public class Llama extends AbstractChestedHorse implements VariantHolder<Llama.V
|
||||
return generateSpeed(this.level().purpurConfig.llamaMovementSpeedMin, this.level().purpurConfig.llamaMovementSpeedMax);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.llamaBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
public boolean isTraderLlama() {
|
||||
return false;
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/Mule.java b/src/main/java/net/minecraft/world/entity/animal/horse/Mule.java
|
||||
index abbeb305b2d09e9c4c02ade603adac5ceb34bdd0..1de48560ac5a1db8845c98c812b2e9f9eb972123 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/horse/Mule.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/Mule.java
|
||||
@@ -36,6 +36,11 @@ public class Mule extends AbstractChestedHorse {
|
||||
return generateSpeed(this.level().purpurConfig.muleMovementSpeedMin, this.level().purpurConfig.muleMovementSpeedMax);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.muleBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
protected SoundEvent getAmbientSound() {
|
||||
return SoundEvents.MULE_AMBIENT;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java b/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
|
||||
index 33e30545c303e28a99249151891c7568bf1a164d..d80257183a4ecdb515e344adcf66b757aa576202 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/SkeletonHorse.java
|
||||
@@ -50,6 +50,11 @@ public class SkeletonHorse extends AbstractHorse {
|
||||
return generateSpeed(this.level().purpurConfig.skeletonHorseMovementSpeedMin, this.level().purpurConfig.skeletonHorseMovementSpeedMax);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return 6000;
|
||||
+ }
|
||||
+
|
||||
public static AttributeSupplier.Builder createAttributes() {
|
||||
return createBaseHorseAttributes().add(Attributes.MAX_HEALTH, 15.0D).add(Attributes.MOVEMENT_SPEED, (double)0.2F);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/TraderLlama.java b/src/main/java/net/minecraft/world/entity/animal/horse/TraderLlama.java
|
||||
index 4abb9d5fedf63eba9dc3f716d44ea11806607af0..3632fcb124be8cf77d9bebf7b861a48196252ed0 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/horse/TraderLlama.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/TraderLlama.java
|
||||
@@ -64,6 +64,11 @@ public class TraderLlama extends Llama {
|
||||
return generateSpeed(this.level().purpurConfig.traderLlamaMovementSpeedMin, this.level().purpurConfig.traderLlamaMovementSpeedMax);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.traderLlamaBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
public boolean isTraderLlama() {
|
||||
return true;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/ZombieHorse.java b/src/main/java/net/minecraft/world/entity/animal/horse/ZombieHorse.java
|
||||
index 973c5045137850905126db91238dd8e59db7ddf6..cc821385394121dcd7a9f314fa34a3f540f113a6 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/horse/ZombieHorse.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/ZombieHorse.java
|
||||
@@ -48,6 +48,11 @@ public class ZombieHorse extends AbstractHorse {
|
||||
return generateSpeed(this.level().purpurConfig.zombieHorseMovementSpeedMin, this.level().purpurConfig.zombieHorseMovementSpeedMax);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return 6000;
|
||||
+ }
|
||||
+
|
||||
public static AttributeSupplier.Builder createAttributes() {
|
||||
return createBaseHorseAttributes().add(Attributes.MAX_HEALTH, 15.0D).add(Attributes.MOVEMENT_SPEED, (double)0.2F);
|
||||
}
|
||||
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 e46751dacee17e81933345266049675d0b11ee49..3ab900c53469327b8d686da81ed5b4aaaddb7440 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
|
||||
@@ -112,6 +112,11 @@ public class Sniffer extends Animal {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.snifferMaxHealth);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.snifferBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
// CraftBukkit start - SPIGOT-7295: moved from constructor to appropriate location
|
||||
@Override
|
||||
protected void defineSynchedData() {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Strider.java b/src/main/java/net/minecraft/world/entity/monster/Strider.java
|
||||
index eedfd4dffdc5586a0b50769b17c5515e5ccac916..93dca4758ed995373fe1585930f225604a4153fa 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Strider.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Strider.java
|
||||
@@ -122,6 +122,11 @@ public class Strider extends Animal implements ItemSteerable, Saddleable {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.striderMaxHealth);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.striderBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
public static boolean checkStriderSpawnRules(EntityType<Strider> type, LevelAccessor world, MobSpawnType spawnReason, BlockPos pos, RandomSource random) {
|
||||
BlockPos.MutableBlockPos blockposition_mutableblockposition = pos.mutable();
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java b/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java
|
||||
index 853fe631a7d665e2379296c89e433e761495a814..ae4d404b837da202e52d246dabfc00c8803e0260 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java
|
||||
@@ -89,6 +89,11 @@ public class Hoglin extends Animal implements Enemy, HoglinBase {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.hoglinMaxHealth);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public int getPurpurBreedTime() {
|
||||
+ return this.level().purpurConfig.hoglinBreedingTicks;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
public boolean canBeLeashed(Player player) {
|
||||
return !this.isLeashed();
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index 7a9ac5c8b6c2576e9a1728dc77f9a1e71013db22..852b8f4eee52840eac1feb8d98843e7d74a3a5f9 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -507,10 +507,12 @@ public class PurpurWorldConfig {
|
||||
public boolean axolotlRidable = false;
|
||||
public boolean axolotlControllable = true;
|
||||
public double axolotlMaxHealth = 14.0D;
|
||||
+ public int axolotlBreedingTicks = 6000;
|
||||
private void axolotlSettings() {
|
||||
axolotlRidable = getBoolean("mobs.axolotl.ridable", axolotlRidable);
|
||||
axolotlControllable = getBoolean("mobs.axolotl.controllable", axolotlControllable);
|
||||
axolotlMaxHealth = getDouble("mobs.axolotl.attributes.max_health", axolotlMaxHealth);
|
||||
+ axolotlBreedingTicks = getInt("mobs.axolotl.breeding-delay-ticks", axolotlBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean batRidable = false;
|
||||
@@ -550,6 +552,7 @@ public class PurpurWorldConfig {
|
||||
public boolean beeControllable = true;
|
||||
public double beeMaxY = 320D;
|
||||
public double beeMaxHealth = 10.0D;
|
||||
+ public int beeBreedingTicks = 6000;
|
||||
private void beeSettings() {
|
||||
beeRidable = getBoolean("mobs.bee.ridable", beeRidable);
|
||||
beeRidableInWater = getBoolean("mobs.bee.ridable-in-water", beeRidableInWater);
|
||||
@@ -561,6 +564,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.bee.attributes.max_health", oldValue);
|
||||
}
|
||||
beeMaxHealth = getDouble("mobs.bee.attributes.max_health", beeMaxHealth);
|
||||
+ beeBreedingTicks = getInt("mobs.bee.breeding-delay-ticks", beeBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean blazeRidable = false;
|
||||
@@ -588,6 +592,7 @@ public class PurpurWorldConfig {
|
||||
public double camelJumpStrengthMax = 0.42D;
|
||||
public double camelMovementSpeedMin = 0.09D;
|
||||
public double camelMovementSpeedMax = 0.09D;
|
||||
+ public int camelBreedingTicks = 6000;
|
||||
private void camelSettings() {
|
||||
camelRidableInWater = getBoolean("mobs.camel.ridable-in-water", camelRidableInWater);
|
||||
camelMaxHealthMin = getDouble("mobs.camel.attributes.max_health.min", camelMaxHealthMin);
|
||||
@@ -596,6 +601,7 @@ public class PurpurWorldConfig {
|
||||
camelJumpStrengthMax = getDouble("mobs.camel.attributes.jump_strength.max", camelJumpStrengthMax);
|
||||
camelMovementSpeedMin = getDouble("mobs.camel.attributes.movement_speed.min", camelMovementSpeedMin);
|
||||
camelMovementSpeedMax = getDouble("mobs.camel.attributes.movement_speed.max", camelMovementSpeedMax);
|
||||
+ camelBreedingTicks = getInt("mobs.camel.breeding-delay-ticks", camelBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean catRidable = false;
|
||||
@@ -605,6 +611,7 @@ public class PurpurWorldConfig {
|
||||
public int catSpawnDelay = 1200;
|
||||
public int catSpawnSwampHutScanRange = 16;
|
||||
public int catSpawnVillageScanRange = 48;
|
||||
+ public int catBreedingTicks = 6000;
|
||||
private void catSettings() {
|
||||
catRidable = getBoolean("mobs.cat.ridable", catRidable);
|
||||
catRidableInWater = getBoolean("mobs.cat.ridable-in-water", catRidableInWater);
|
||||
@@ -618,6 +625,7 @@ public class PurpurWorldConfig {
|
||||
catSpawnDelay = getInt("mobs.cat.spawn-delay", catSpawnDelay);
|
||||
catSpawnSwampHutScanRange = getInt("mobs.cat.scan-range-for-other-cats.swamp-hut", catSpawnSwampHutScanRange);
|
||||
catSpawnVillageScanRange = getInt("mobs.cat.scan-range-for-other-cats.village", catSpawnVillageScanRange);
|
||||
+ catBreedingTicks = getInt("mobs.cat.breeding-delay-ticks", catBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean caveSpiderRidable = false;
|
||||
@@ -641,6 +649,7 @@ public class PurpurWorldConfig {
|
||||
public boolean chickenControllable = true;
|
||||
public double chickenMaxHealth = 4.0D;
|
||||
public boolean chickenRetaliate = false;
|
||||
+ public int chickenBreedingTicks = 6000;
|
||||
private void chickenSettings() {
|
||||
chickenRidable = getBoolean("mobs.chicken.ridable", chickenRidable);
|
||||
chickenRidableInWater = getBoolean("mobs.chicken.ridable-in-water", chickenRidableInWater);
|
||||
@@ -652,6 +661,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
chickenMaxHealth = getDouble("mobs.chicken.attributes.max_health", chickenMaxHealth);
|
||||
chickenRetaliate = getBoolean("mobs.chicken.retaliate", chickenRetaliate);
|
||||
+ chickenBreedingTicks = getInt("mobs.chicken.breeding-delay-ticks", chickenBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean codRidable = false;
|
||||
@@ -673,6 +683,7 @@ public class PurpurWorldConfig {
|
||||
public boolean cowControllable = true;
|
||||
public double cowMaxHealth = 10.0D;
|
||||
public int cowFeedMushrooms = 0;
|
||||
+ public int cowBreedingTicks = 6000;
|
||||
private void cowSettings() {
|
||||
cowRidable = getBoolean("mobs.cow.ridable", cowRidable);
|
||||
cowRidableInWater = getBoolean("mobs.cow.ridable-in-water", cowRidableInWater);
|
||||
@@ -684,6 +695,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
cowMaxHealth = getDouble("mobs.cow.attributes.max_health", cowMaxHealth);
|
||||
cowFeedMushrooms = getInt("mobs.cow.feed-mushrooms-for-mooshroom", cowFeedMushrooms);
|
||||
+ cowBreedingTicks = getInt("mobs.cow.breeding-delay-ticks", cowBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean creeperRidable = false;
|
||||
@@ -735,6 +747,7 @@ public class PurpurWorldConfig {
|
||||
public double donkeyJumpStrengthMax = 0.5D;
|
||||
public double donkeyMovementSpeedMin = 0.175D;
|
||||
public double donkeyMovementSpeedMax = 0.175D;
|
||||
+ public int donkeyBreedingTicks = 6000;
|
||||
private void donkeySettings() {
|
||||
donkeyRidableInWater = getBoolean("mobs.donkey.ridable-in-water", donkeyRidableInWater);
|
||||
if (PurpurConfig.version < 10) {
|
||||
@@ -750,6 +763,7 @@ public class PurpurWorldConfig {
|
||||
donkeyJumpStrengthMax = getDouble("mobs.donkey.attributes.jump_strength.max", donkeyJumpStrengthMax);
|
||||
donkeyMovementSpeedMin = getDouble("mobs.donkey.attributes.movement_speed.min", donkeyMovementSpeedMin);
|
||||
donkeyMovementSpeedMax = getDouble("mobs.donkey.attributes.movement_speed.max", donkeyMovementSpeedMax);
|
||||
+ donkeyBreedingTicks = getInt("mobs.donkey.breeding-delay-ticks", donkeyBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean drownedRidable = false;
|
||||
@@ -869,6 +883,7 @@ public class PurpurWorldConfig {
|
||||
public boolean foxControllable = true;
|
||||
public double foxMaxHealth = 10.0D;
|
||||
public boolean foxTypeChangesWithTulips = false;
|
||||
+ public int foxBreedingTicks = 6000;
|
||||
private void foxSettings() {
|
||||
foxRidable = getBoolean("mobs.fox.ridable", foxRidable);
|
||||
foxRidableInWater = getBoolean("mobs.fox.ridable-in-water", foxRidableInWater);
|
||||
@@ -880,17 +895,20 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
foxMaxHealth = getDouble("mobs.fox.attributes.max_health", foxMaxHealth);
|
||||
foxTypeChangesWithTulips = getBoolean("mobs.fox.tulips-change-type", foxTypeChangesWithTulips);
|
||||
+ foxBreedingTicks = getInt("mobs.fox.breeding-delay-ticks", foxBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean frogRidable = false;
|
||||
public boolean frogRidableInWater = true;
|
||||
public boolean frogControllable = true;
|
||||
public float frogRidableJumpHeight = 0.65F;
|
||||
+ public int frogBreedingTicks = 6000;
|
||||
private void frogSettings() {
|
||||
frogRidable = getBoolean("mobs.frog.ridable", frogRidable);
|
||||
frogRidableInWater = getBoolean("mobs.frog.ridable-in-water", frogRidableInWater);
|
||||
frogControllable = getBoolean("mobs.frog.controllable", frogControllable);
|
||||
frogRidableJumpHeight = (float) getDouble("mobs.frog.ridable-jump-height", frogRidableJumpHeight);
|
||||
+ frogBreedingTicks = getInt("mobs.frog.breeding-delay-ticks", frogBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean ghastRidable = false;
|
||||
@@ -958,11 +976,13 @@ public class PurpurWorldConfig {
|
||||
public boolean goatRidableInWater = true;
|
||||
public boolean goatControllable = true;
|
||||
public double goatMaxHealth = 10.0D;
|
||||
+ public int goatBreedingTicks = 6000;
|
||||
private void goatSettings() {
|
||||
goatRidable = getBoolean("mobs.goat.ridable", goatRidable);
|
||||
goatRidableInWater = getBoolean("mobs.goat.ridable-in-water", goatRidableInWater);
|
||||
goatControllable = getBoolean("mobs.goat.controllable", goatControllable);
|
||||
goatMaxHealth = getDouble("mobs.goat.attributes.max_health", goatMaxHealth);
|
||||
+ goatBreedingTicks = getInt("mobs.goat.breeding-delay-ticks", goatBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean guardianRidable = false;
|
||||
@@ -983,6 +1003,7 @@ public class PurpurWorldConfig {
|
||||
public boolean hoglinRidableInWater = true;
|
||||
public boolean hoglinControllable = true;
|
||||
public double hoglinMaxHealth = 40.0D;
|
||||
+ public int hoglinBreedingTicks = 6000;
|
||||
private void hoglinSettings() {
|
||||
hoglinRidable = getBoolean("mobs.hoglin.ridable", hoglinRidable);
|
||||
hoglinRidableInWater = getBoolean("mobs.hoglin.ridable-in-water", hoglinRidableInWater);
|
||||
@@ -993,6 +1014,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.hoglin.attributes.max_health", oldValue);
|
||||
}
|
||||
hoglinMaxHealth = getDouble("mobs.hoglin.attributes.max_health", hoglinMaxHealth);
|
||||
+ hoglinBreedingTicks = getInt("mobs.hoglin.breeding-delay-ticks", hoglinBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean horseRidableInWater = false;
|
||||
@@ -1002,6 +1024,7 @@ public class PurpurWorldConfig {
|
||||
public double horseJumpStrengthMax = 1.0D;
|
||||
public double horseMovementSpeedMin = 0.1125D;
|
||||
public double horseMovementSpeedMax = 0.3375D;
|
||||
+ public int horseBreedingTicks = 6000;
|
||||
private void horseSettings() {
|
||||
horseRidableInWater = getBoolean("mobs.horse.ridable-in-water", horseRidableInWater);
|
||||
if (PurpurConfig.version < 10) {
|
||||
@@ -1017,6 +1040,7 @@ public class PurpurWorldConfig {
|
||||
horseJumpStrengthMax = getDouble("mobs.horse.attributes.jump_strength.max", horseJumpStrengthMax);
|
||||
horseMovementSpeedMin = getDouble("mobs.horse.attributes.movement_speed.min", horseMovementSpeedMin);
|
||||
horseMovementSpeedMax = getDouble("mobs.horse.attributes.movement_speed.max", horseMovementSpeedMax);
|
||||
+ horseBreedingTicks = getInt("mobs.horse.breeding-delay-ticks", horseBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean huskRidable = false;
|
||||
@@ -1094,6 +1118,7 @@ public class PurpurWorldConfig {
|
||||
public double llamaJumpStrengthMax = 0.5D;
|
||||
public double llamaMovementSpeedMin = 0.175D;
|
||||
public double llamaMovementSpeedMax = 0.175D;
|
||||
+ public int llamaBreedingTicks = 6000;
|
||||
private void llamaSettings() {
|
||||
llamaRidable = getBoolean("mobs.llama.ridable", llamaRidable);
|
||||
llamaRidableInWater = getBoolean("mobs.llama.ridable-in-water", llamaRidableInWater);
|
||||
@@ -1111,6 +1136,7 @@ public class PurpurWorldConfig {
|
||||
llamaJumpStrengthMax = getDouble("mobs.llama.attributes.jump_strength.max", llamaJumpStrengthMax);
|
||||
llamaMovementSpeedMin = getDouble("mobs.llama.attributes.movement_speed.min", llamaMovementSpeedMin);
|
||||
llamaMovementSpeedMax = getDouble("mobs.llama.attributes.movement_speed.max", llamaMovementSpeedMax);
|
||||
+ llamaBreedingTicks = getInt("mobs.llama.breeding-delay-ticks", llamaBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean magmaCubeRidable = false;
|
||||
@@ -1139,6 +1165,7 @@ public class PurpurWorldConfig {
|
||||
public boolean mooshroomRidableInWater = true;
|
||||
public boolean mooshroomControllable = true;
|
||||
public double mooshroomMaxHealth = 10.0D;
|
||||
+ public int mooshroomBreedingTicks = 6000;
|
||||
private void mooshroomSettings() {
|
||||
mooshroomRidable = getBoolean("mobs.mooshroom.ridable", mooshroomRidable);
|
||||
mooshroomRidableInWater = getBoolean("mobs.mooshroom.ridable-in-water", mooshroomRidableInWater);
|
||||
@@ -1149,6 +1176,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.mooshroom.attributes.max_health", oldValue);
|
||||
}
|
||||
mooshroomMaxHealth = getDouble("mobs.mooshroom.attributes.max_health", mooshroomMaxHealth);
|
||||
+ mooshroomBreedingTicks = getInt("mobs.mooshroom.breeding-delay-ticks", mooshroomBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean muleRidableInWater = false;
|
||||
@@ -1158,6 +1186,7 @@ public class PurpurWorldConfig {
|
||||
public double muleJumpStrengthMax = 0.5D;
|
||||
public double muleMovementSpeedMin = 0.175D;
|
||||
public double muleMovementSpeedMax = 0.175D;
|
||||
+ public int muleBreedingTicks = 6000;
|
||||
private void muleSettings() {
|
||||
muleRidableInWater = getBoolean("mobs.mule.ridable-in-water", muleRidableInWater);
|
||||
if (PurpurConfig.version < 10) {
|
||||
@@ -1173,12 +1202,14 @@ public class PurpurWorldConfig {
|
||||
muleJumpStrengthMax = getDouble("mobs.mule.attributes.jump_strength.max", muleJumpStrengthMax);
|
||||
muleMovementSpeedMin = getDouble("mobs.mule.attributes.movement_speed.min", muleMovementSpeedMin);
|
||||
muleMovementSpeedMax = getDouble("mobs.mule.attributes.movement_speed.max", muleMovementSpeedMax);
|
||||
+ muleBreedingTicks = getInt("mobs.mule.breeding-delay-ticks", muleBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean ocelotRidable = false;
|
||||
public boolean ocelotRidableInWater = true;
|
||||
public boolean ocelotControllable = true;
|
||||
public double ocelotMaxHealth = 10.0D;
|
||||
+ public int ocelotBreedingTicks = 6000;
|
||||
private void ocelotSettings() {
|
||||
ocelotRidable = getBoolean("mobs.ocelot.ridable", ocelotRidable);
|
||||
ocelotRidableInWater = getBoolean("mobs.ocelot.ridable-in-water", ocelotRidableInWater);
|
||||
@@ -1189,12 +1220,14 @@ public class PurpurWorldConfig {
|
||||
set("mobs.ocelot.attributes.max_health", oldValue);
|
||||
}
|
||||
ocelotMaxHealth = getDouble("mobs.ocelot.attributes.max_health", ocelotMaxHealth);
|
||||
+ ocelotBreedingTicks = getInt("mobs.ocelot.breeding-delay-ticks", ocelotBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean pandaRidable = false;
|
||||
public boolean pandaRidableInWater = true;
|
||||
public boolean pandaControllable = true;
|
||||
public double pandaMaxHealth = 20.0D;
|
||||
+ public int pandaBreedingTicks = 6000;
|
||||
private void pandaSettings() {
|
||||
pandaRidable = getBoolean("mobs.panda.ridable", pandaRidable);
|
||||
pandaRidableInWater = getBoolean("mobs.panda.ridable-in-water", pandaRidableInWater);
|
||||
@@ -1205,6 +1238,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.panda.attributes.max_health", oldValue);
|
||||
}
|
||||
pandaMaxHealth = getDouble("mobs.panda.attributes.max_health", pandaMaxHealth);
|
||||
+ pandaBreedingTicks = getInt("mobs.panda.breeding-delay-ticks", pandaBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean parrotRidable = false;
|
||||
@@ -1288,6 +1322,7 @@ public class PurpurWorldConfig {
|
||||
public boolean pigControllable = true;
|
||||
public double pigMaxHealth = 10.0D;
|
||||
public boolean pigGiveSaddleBack = false;
|
||||
+ public int pigBreedingTicks = 6000;
|
||||
private void pigSettings() {
|
||||
pigRidable = getBoolean("mobs.pig.ridable", pigRidable);
|
||||
pigRidableInWater = getBoolean("mobs.pig.ridable-in-water", pigRidableInWater);
|
||||
@@ -1299,6 +1334,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
pigMaxHealth = getDouble("mobs.pig.attributes.max_health", pigMaxHealth);
|
||||
pigGiveSaddleBack = getBoolean("mobs.pig.give-saddle-back", pigGiveSaddleBack);
|
||||
+ pigBreedingTicks = getInt("mobs.pig.breeding-delay-ticks", pigBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean piglinRidable = false;
|
||||
@@ -1355,6 +1391,7 @@ public class PurpurWorldConfig {
|
||||
public double polarBearMaxHealth = 30.0D;
|
||||
public String polarBearBreedableItemString = "";
|
||||
public Item polarBearBreedableItem = null;
|
||||
+ public int polarBearBreedingTicks = 6000;
|
||||
private void polarBearSettings() {
|
||||
polarBearRidable = getBoolean("mobs.polar_bear.ridable", polarBearRidable);
|
||||
polarBearRidableInWater = getBoolean("mobs.polar_bear.ridable-in-water", polarBearRidableInWater);
|
||||
@@ -1368,6 +1405,7 @@ public class PurpurWorldConfig {
|
||||
polarBearBreedableItemString = getString("mobs.polar_bear.breedable-item", polarBearBreedableItemString);
|
||||
Item item = BuiltInRegistries.ITEM.get(new ResourceLocation(polarBearBreedableItemString));
|
||||
if (item != Items.AIR) polarBearBreedableItem = item;
|
||||
+ polarBearBreedingTicks = getInt("mobs.polar_bear.breeding-delay-ticks", polarBearBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean pufferfishRidable = false;
|
||||
@@ -1390,6 +1428,7 @@ public class PurpurWorldConfig {
|
||||
public double rabbitMaxHealth = 3.0D;
|
||||
public double rabbitNaturalToast = 0.0D;
|
||||
public double rabbitNaturalKiller = 0.0D;
|
||||
+ public int rabbitBreedingTicks = 6000;
|
||||
private void rabbitSettings() {
|
||||
rabbitRidable = getBoolean("mobs.rabbit.ridable", rabbitRidable);
|
||||
rabbitRidableInWater = getBoolean("mobs.rabbit.ridable-in-water", rabbitRidableInWater);
|
||||
@@ -1402,6 +1441,7 @@ public class PurpurWorldConfig {
|
||||
rabbitMaxHealth = getDouble("mobs.rabbit.attributes.max_health", rabbitMaxHealth);
|
||||
rabbitNaturalToast = getDouble("mobs.rabbit.spawn-toast-chance", rabbitNaturalToast);
|
||||
rabbitNaturalKiller = getDouble("mobs.rabbit.spawn-killer-rabbit-chance", rabbitNaturalKiller);
|
||||
+ rabbitBreedingTicks = getInt("mobs.rabbit.breeding-delay-ticks", rabbitBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean ravagerRidable = false;
|
||||
@@ -1438,6 +1478,7 @@ public class PurpurWorldConfig {
|
||||
public boolean sheepRidableInWater = true;
|
||||
public boolean sheepControllable = true;
|
||||
public double sheepMaxHealth = 8.0D;
|
||||
+ public int sheepBreedingTicks = 6000;
|
||||
private void sheepSettings() {
|
||||
sheepRidable = getBoolean("mobs.sheep.ridable", sheepRidable);
|
||||
sheepRidableInWater = getBoolean("mobs.sheep.ridable-in-water", sheepRidableInWater);
|
||||
@@ -1448,6 +1489,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.sheep.attributes.max_health", oldValue);
|
||||
}
|
||||
sheepMaxHealth = getDouble("mobs.sheep.attributes.max_health", sheepMaxHealth);
|
||||
+ sheepBreedingTicks = getInt("mobs.sheep.breeding-delay-ticks", sheepBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean shulkerRidable = false;
|
||||
@@ -1571,11 +1613,13 @@ public class PurpurWorldConfig {
|
||||
public boolean snifferRidableInWater = true;
|
||||
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;
|
||||
@@ -1634,6 +1678,7 @@ public class PurpurWorldConfig {
|
||||
public boolean striderRidableInWater = false;
|
||||
public boolean striderControllable = true;
|
||||
public double striderMaxHealth = 20.0D;
|
||||
+ public int striderBreedingTicks = 6000;
|
||||
private void striderSettings() {
|
||||
striderRidable = getBoolean("mobs.strider.ridable", striderRidable);
|
||||
striderRidableInWater = getBoolean("mobs.strider.ridable-in-water", striderRidableInWater);
|
||||
@@ -1644,6 +1689,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.strider.attributes.max_health", oldValue);
|
||||
}
|
||||
striderMaxHealth = getDouble("mobs.strider.attributes.max_health", striderMaxHealth);
|
||||
+ striderBreedingTicks = getInt("mobs.strider.breeding-delay-ticks", striderBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean tadpoleRidable = false;
|
||||
@@ -1664,6 +1710,7 @@ public class PurpurWorldConfig {
|
||||
public double traderLlamaJumpStrengthMax = 0.5D;
|
||||
public double traderLlamaMovementSpeedMin = 0.175D;
|
||||
public double traderLlamaMovementSpeedMax = 0.175D;
|
||||
+ public int traderLlamaBreedingTicks = 6000;
|
||||
private void traderLlamaSettings() {
|
||||
traderLlamaRidable = getBoolean("mobs.trader_llama.ridable", traderLlamaRidable);
|
||||
traderLlamaRidableInWater = getBoolean("mobs.trader_llama.ridable-in-water", traderLlamaRidableInWater);
|
||||
@@ -1681,6 +1728,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);
|
||||
+ traderLlamaBreedingTicks = getInt("mobs.trader_llama.breeding-delay-ticks", traderLlamaBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean tropicalFishRidable = false;
|
||||
@@ -1701,6 +1749,7 @@ public class PurpurWorldConfig {
|
||||
public boolean turtleRidableInWater = true;
|
||||
public boolean turtleControllable = true;
|
||||
public double turtleMaxHealth = 30.0D;
|
||||
+ public int turtleBreedingTicks = 6000;
|
||||
private void turtleSettings() {
|
||||
turtleRidable = getBoolean("mobs.turtle.ridable", turtleRidable);
|
||||
turtleRidableInWater = getBoolean("mobs.turtle.ridable-in-water", turtleRidableInWater);
|
||||
@@ -1711,6 +1760,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.turtle.attributes.max_health", oldValue);
|
||||
}
|
||||
turtleMaxHealth = getDouble("mobs.turtle.attributes.max_health", turtleMaxHealth);
|
||||
+ turtleBreedingTicks = getInt("mobs.turtle.breeding-delay-ticks", turtleBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean vexRidable = false;
|
||||
@@ -1738,6 +1788,7 @@ public class PurpurWorldConfig {
|
||||
public boolean villagerFollowEmeraldBlock = false;
|
||||
public boolean villagerCanBeLeashed = false;
|
||||
public boolean villagerCanBreed = true;
|
||||
+ public int villagerBreedingTicks = 6000;
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -1751,6 +1802,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);
|
||||
+ villagerBreedingTicks = getInt("mobs.villager.breeding-delay-ticks", villagerBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean vindicatorRidable = false;
|
||||
@@ -1862,6 +1914,7 @@ public class PurpurWorldConfig {
|
||||
public boolean wolfRidableInWater = true;
|
||||
public boolean wolfControllable = true;
|
||||
public double wolfMaxHealth = 8.0D;
|
||||
+ public int wolfBreedingTicks = 6000;
|
||||
private void wolfSettings() {
|
||||
wolfRidable = getBoolean("mobs.wolf.ridable", wolfRidable);
|
||||
wolfRidableInWater = getBoolean("mobs.wolf.ridable-in-water", wolfRidableInWater);
|
||||
@@ -1872,6 +1925,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.wolf.attributes.max_health", oldValue);
|
||||
}
|
||||
wolfMaxHealth = getDouble("mobs.wolf.attributes.max_health", wolfMaxHealth);
|
||||
+ wolfBreedingTicks = getInt("mobs.wolf.breeding-delay-ticks", wolfBreedingTicks);
|
||||
}
|
||||
|
||||
public boolean zoglinRidable = false;
|
||||
Reference in New Issue
Block a user