mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
Upstream has released updates that appear to apply and compile correctly Paper Changes: bca97a8f7 replace spaces in world key (touches #5397) de94f6485 Refactor chat message composition (#5396) e27f334bb [CI-SKIP] Fix makemcdevsrc.sh for nms relocations (#5389) ae15e85da Updated Upstream (CraftBukkit) 26fe0ac5a Only set despawnTimer for Wandering Traders spawned by MobSpawnerTrader (#5391) b748eb7b8 Fix VanillaMobGoalTest#testBukkitMap (#5390) 18dbbb578 [Auto] Updated Upstream (CraftBukkit) fac9cc5d5 [CI-SKIP] Ignore .gitignore 087aa70e7 Deprecate ItemStack#setLore(List<String>) and ItemStack#getLore, add Component based alternatives 9889c651c apply fixup c310f0a61 Updated Upstream (Bukkit/CraftBukkit) f17560ab0 wtf is this t file -jmp 347f3a9b8 fix compile 700e9e6a5 rebase cf4dc464a Revert de5f4e469...c270abe96 6870db613 script & POM fix 743c6533c Replace ** with * (BSD/macOS) 376d7b097 Don't remove the .java fcb3fd42a Fix macOS/BSD support 8cfc05249 Link correctly ba1031ca7 Rename work dir c8d844ab7 Actually fix preloading this time e62aa5e3e Fix class preloading 1c03cf898 It's mojang math, not minecraft math 1034873df Apply fixups 39b125771 Use revision file 956150da7 Welcome to 1.16.5-R0.2 ccb217c01 Change cache keys 0d217001c more work f6d820f07 It compiles 0f78e9525 More work 1718f61bf Updated Upstream (CraftBukkit/Spigot) b28d46114 Update scripts for NMS repackaging Tuinity Changes: 9bdcb9b8e Delete work dir when running jar 6351d7ca7 Update Upstream (Paper) 932c199a6 Generate md-dev correctly bf3e73778 Make packet limiter work from IDE 1686f3861 Fix packet limiter config f40f7b425 Update README.md styling (#264) da1c3ace5 GH Actions Changes (#213) 5f325ecf1 Update Upstream (Paper) 0f83fe48d Update Upstream (Paper) Airplane Changes: f94d39947 Merge pull request #18 from notOM3GA/upstream/nms-repackage 0fc622631 Force build for Flare update 08439d6a9 Update Upstream (Tuinity)
686 lines
33 KiB
Diff
686 lines
33 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: jmp <jasonpenilla2@me.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/BehaviorMakeLove.java b/src/main/java/net/minecraft/world/entity/ai/behavior/BehaviorMakeLove.java
|
|
index a68428554b93f4aba9f0cb0b3af03985896830b7..c1e8b9562eb37cee3d47034b93d4ef0c998eb52f 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/ai/behavior/BehaviorMakeLove.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/ai/behavior/BehaviorMakeLove.java
|
|
@@ -115,8 +115,10 @@ public class BehaviorMakeLove extends Behavior<EntityVillager> {
|
|
if (entityvillager2 == null) {
|
|
return Optional.empty();
|
|
} else {
|
|
- entityvillager.setAgeRaw(6000);
|
|
- entityvillager1.setAgeRaw(6000);
|
|
+ // Purpur start
|
|
+ entityvillager.setAgeRaw(worldserver.purpurConfig.villagerBreedingTicks);
|
|
+ entityvillager1.setAgeRaw(worldserver.purpurConfig.villagerBreedingTicks);
|
|
+ // Purpur end
|
|
entityvillager2.setAgeRaw(-24000);
|
|
entityvillager2.setPositionRotation(entityvillager.locX(), entityvillager.locY(), entityvillager.locZ(), 0.0F, 0.0F);
|
|
worldserver.addAllEntities(entityvillager2, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.BREEDING); // CraftBukkit - added SpawnReason
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/EntityAnimal.java b/src/main/java/net/minecraft/world/entity/animal/EntityAnimal.java
|
|
index 6ae5fafd379863bf23df3580d3dbc7a5ba63b545..38a4072a5df3abd3d1d9929f6402b3edfdd6c197 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/EntityAnimal.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/EntityAnimal.java
|
|
@@ -38,6 +38,7 @@ public abstract class EntityAnimal extends EntityAgeable {
|
|
public int loveTicks;
|
|
public UUID breedCause;
|
|
public ItemStack breedItem; // CraftBukkit - Add breedItem variable
|
|
+ public abstract int getPurpurBreedTime(); // Purpur
|
|
|
|
protected EntityAnimal(EntityTypes<? extends EntityAnimal> entitytypes, World world) {
|
|
super(entitytypes, world);
|
|
@@ -259,8 +260,10 @@ public abstract class EntityAnimal extends EntityAgeable {
|
|
CriterionTriggers.o.a(entityplayer, this, entityanimal, entityageable);
|
|
}
|
|
|
|
- this.setAgeRaw(6000);
|
|
- entityanimal.setAgeRaw(6000);
|
|
+ // Purpur start
|
|
+ this.setAgeRaw(this.getPurpurBreedTime());
|
|
+ entityanimal.setAgeRaw(entityanimal.getPurpurBreedTime());
|
|
+ // Purpur end
|
|
this.resetLove();
|
|
entityanimal.resetLove();
|
|
entityageable.setBaby(true);
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/EntityBee.java b/src/main/java/net/minecraft/world/entity/animal/EntityBee.java
|
|
index 0c6d3dae70eeea844a31f9edf54410db13e0b04b..9e40fd6585592ccd1deff1d8319c57660474c053 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/EntityBee.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/EntityBee.java
|
|
@@ -176,6 +176,11 @@ public class EntityBee extends EntityAnimal implements IEntityAngerable, EntityB
|
|
setMot(mot.a(0.9D));
|
|
}
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.beeBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
@Override
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/EntityCat.java b/src/main/java/net/minecraft/world/entity/animal/EntityCat.java
|
|
index 3efb010d0e045d14051a33bd7465669e415c26bd..079b95ef465f7155f426a2c87a4a50f8369d0a18 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/EntityCat.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/EntityCat.java
|
|
@@ -122,6 +122,11 @@ public class EntityCat extends EntityTameableAnimal {
|
|
setSleepingWithOwner(false);
|
|
setHeadDown(false);
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.catBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
public MinecraftKey eU() {
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/EntityChicken.java b/src/main/java/net/minecraft/world/entity/animal/EntityChicken.java
|
|
index 5c744f1eac19e144c39a2c146d312f0547d6e589..ab54e809f735cea7d84366d2bc205351f8992bef 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/EntityChicken.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/EntityChicken.java
|
|
@@ -71,6 +71,11 @@ public class EntityChicken extends EntityAnimal {
|
|
this.getAttributeInstance(GenericAttributes.ATTACK_DAMAGE).setValue(2.0D);
|
|
}
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.chickenBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
@Override
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/EntityCow.java b/src/main/java/net/minecraft/world/entity/animal/EntityCow.java
|
|
index cad256514c7df92847522c8d7ddf45ebe02658c4..93589a2b86e6663d93f6b536b853996c08db549a 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/EntityCow.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/EntityCow.java
|
|
@@ -54,6 +54,11 @@ public class EntityCow extends EntityAnimal {
|
|
public boolean isRidableInWater() {
|
|
return world.purpurConfig.cowRidableInWater;
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.cowBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
@Override
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/EntityFox.java b/src/main/java/net/minecraft/world/entity/animal/EntityFox.java
|
|
index 0c1151b598aa681e63ddaac29e4a589f917fd03b..7bf546a1b2a80179962ed08a35d86f0a28eda3c2 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/EntityFox.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/EntityFox.java
|
|
@@ -159,6 +159,11 @@ public class EntityFox extends EntityAnimal {
|
|
super.onDismount(entityhuman);
|
|
setCanPickupLoot(true);
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.foxBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
@Override
|
|
@@ -1373,8 +1378,10 @@ public class EntityFox extends EntityAnimal {
|
|
CriterionTriggers.o.a(entityplayer2, this.animal, this.partner, (EntityAgeable) entityfox);
|
|
}
|
|
|
|
- this.animal.setAgeRaw(6000);
|
|
- this.partner.setAgeRaw(6000);
|
|
+ // Purpur start
|
|
+ this.animal.setAgeRaw(this.animal.getPurpurBreedTime());
|
|
+ this.partner.setAgeRaw(this.partner.getPurpurBreedTime());
|
|
+ // Purpur end
|
|
this.animal.resetLove();
|
|
this.partner.resetLove();
|
|
entityfox.setAgeRaw(-24000);
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/EntityMushroomCow.java b/src/main/java/net/minecraft/world/entity/animal/EntityMushroomCow.java
|
|
index 815e907e8db721f2a6f0f831b69c44a9573b5c9b..ab4a8ee6e1912f230cbf3353eb42c3bc8a9db58e 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/EntityMushroomCow.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/EntityMushroomCow.java
|
|
@@ -67,6 +67,11 @@ public class EntityMushroomCow extends EntityCow implements IShearable {
|
|
public boolean isRidableInWater() {
|
|
return world.purpurConfig.mooshroomRidableInWater;
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.mooshroomBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
@Override
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/EntityOcelot.java b/src/main/java/net/minecraft/world/entity/animal/EntityOcelot.java
|
|
index d7938ff0dca305f1d47fdfdbc57648892debe367..cff2ff5a8beef739f0515832e072e7e390ac388f 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/EntityOcelot.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/EntityOcelot.java
|
|
@@ -74,6 +74,11 @@ public class EntityOcelot extends EntityAnimal {
|
|
public boolean isRidableInWater() {
|
|
return world.purpurConfig.ocelotRidableInWater;
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.ocelotBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
private boolean isTrusting() {
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/EntityPanda.java b/src/main/java/net/minecraft/world/entity/animal/EntityPanda.java
|
|
index 0d912399e1975d9c0d5525f5b89049f40e7efcc0..e6952c0a8d90eb4b133c517d97299f2c3db7e329 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/EntityPanda.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/EntityPanda.java
|
|
@@ -121,6 +121,11 @@ public class EntityPanda extends EntityAnimal {
|
|
this.setEating(false);
|
|
this.setLayingOnBack(false);
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.pandaBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
@Override
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/EntityParrot.java b/src/main/java/net/minecraft/world/entity/animal/EntityParrot.java
|
|
index 5c26eea7e3e93dc7bcd8b86519e84db58b70cecb..5463e1779422ff19499727a000fdfbbfc38809a8 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/EntityParrot.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/EntityParrot.java
|
|
@@ -171,6 +171,11 @@ public class EntityParrot extends EntityPerchable implements EntityBird {
|
|
setMot(mot.a(0.9D));
|
|
}
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return 6000;
|
|
+ }
|
|
// Purpur end
|
|
|
|
@Nullable
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/EntityPig.java b/src/main/java/net/minecraft/world/entity/animal/EntityPig.java
|
|
index cef69f99d7bc9b6605b9654c50f43a1ebc1a8509..5aa8806063186bec36b38adc51e2ea82bf6ff21a 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/EntityPig.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/EntityPig.java
|
|
@@ -77,6 +77,11 @@ public class EntityPig extends EntityAnimal implements ISteerable, ISaddleable {
|
|
public boolean isRidableInWater() {
|
|
return world.purpurConfig.pigRidableInWater;
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.pigBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
@Override
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/EntityPolarBear.java b/src/main/java/net/minecraft/world/entity/animal/EntityPolarBear.java
|
|
index e686491a469573a3fc466c46be1b7430ff02ba53..2306abb72ea76a52fd6f27648c4815ad99f8f005 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/EntityPolarBear.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/EntityPolarBear.java
|
|
@@ -116,6 +116,11 @@ public class EntityPolarBear extends EntityAnimal implements IEntityAngerable {
|
|
return this.isInLove() && polarbear.isInLove();
|
|
}
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.polarBearBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
@Override
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/EntityRabbit.java b/src/main/java/net/minecraft/world/entity/animal/EntityRabbit.java
|
|
index fff6bcff9d44c7d49cd2d0c334ea702531c74ea1..0b706404895b69fbca79502a327ec20b47ed99f0 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/EntityRabbit.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/EntityRabbit.java
|
|
@@ -86,6 +86,11 @@ public class EntityRabbit extends EntityAnimal {
|
|
public boolean isRidableInWater() {
|
|
return world.purpurConfig.rabbitRidableInWater;
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.rabbitBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
// CraftBukkit start - code from constructor
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/EntitySheep.java b/src/main/java/net/minecraft/world/entity/animal/EntitySheep.java
|
|
index 8f3296031f220dd7bb3ae9fe2443e479954ebad3..ff6fc821085e4430a3b1008140b0b7fcacc59d2e 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/EntitySheep.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/EntitySheep.java
|
|
@@ -121,6 +121,11 @@ public class EntitySheep extends EntityAnimal implements IShearable {
|
|
public boolean isRidableInWater() {
|
|
return world.purpurConfig.sheepRidableInWater;
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.sheepBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
@Override
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/EntityTurtle.java b/src/main/java/net/minecraft/world/entity/animal/EntityTurtle.java
|
|
index 28d6e673f55fc8fae40dff4a96ac2c2b5eeab9d6..a16f586934f24e599d00bf793f06d3f9134ed29d 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/EntityTurtle.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/EntityTurtle.java
|
|
@@ -101,6 +101,11 @@ public class EntityTurtle extends EntityAnimal {
|
|
public boolean isRidableInWater() {
|
|
return world.purpurConfig.turtleRidableInWater;
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.turtleBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
public void setHomePos(BlockPosition blockposition) {
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/EntityWolf.java b/src/main/java/net/minecraft/world/entity/animal/EntityWolf.java
|
|
index 3fbd8f9122d7a5ac23af4d872f877030644ef86a..dd3c7ad7701ad18ccaf86d73fde7051090ed3d57 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/EntityWolf.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/EntityWolf.java
|
|
@@ -107,6 +107,11 @@ public class EntityWolf extends EntityTameableAnimal implements IEntityAngerable
|
|
super.onMount(entityhuman);
|
|
setSitting(false);
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.wolfBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
@Override
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorse.java b/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorse.java
|
|
index 650f13b1133e4c61f71b36f3f91a9d2913996435..c830bf6e5e38f5ebacc07673c3d67e4157c8c2b5 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorse.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorse.java
|
|
@@ -46,6 +46,11 @@ public class EntityHorse extends EntityHorseAbstract {
|
|
public boolean isRidableInWater() {
|
|
return world.purpurConfig.horseRidableInWater;
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.horseBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
@Override
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorseDonkey.java b/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorseDonkey.java
|
|
index 50700bf85a296b87fe3155651f869e2bbdb0875d..3b44394dcba8e9905aca46e6e585ee6d7a87de44 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorseDonkey.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorseDonkey.java
|
|
@@ -21,6 +21,11 @@ public class EntityHorseDonkey extends EntityHorseChestedAbstract {
|
|
public boolean isRidableInWater() {
|
|
return world.purpurConfig.donkeyRidableInWater;
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.donkeyBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
@Override
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorseMule.java b/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorseMule.java
|
|
index b6385a23050296611dbc8864b92d2cdd8321a1d0..0536112357e0321dbb902331467b847894a4c11b 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorseMule.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorseMule.java
|
|
@@ -20,6 +20,11 @@ public class EntityHorseMule extends EntityHorseChestedAbstract {
|
|
public boolean isRidableInWater() {
|
|
return world.purpurConfig.muleRidableInWater;
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.muleBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
@Override
|
|
protected SoundEffect getSoundAmbient() {
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorseSkeleton.java b/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorseSkeleton.java
|
|
index d21399fbb6ddc4f26a7509ce547f8c4ad6458089..28c6e3745c61d0670bf7f3a324169472250e25f4 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorseSkeleton.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorseSkeleton.java
|
|
@@ -43,6 +43,11 @@ public class EntityHorseSkeleton extends EntityHorseAbstract {
|
|
public boolean isTamed() {
|
|
return true;
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return 6000;
|
|
+ }
|
|
// Purpur end
|
|
|
|
public static AttributeProvider.Builder eL() {
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorseZombie.java b/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorseZombie.java
|
|
index d57e7c02268e5d8a00b0b5897fa03dcee10cd2e0..c776f18722d1aa73f53da66ef6b37564eeaddd2a 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorseZombie.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/EntityHorseZombie.java
|
|
@@ -35,6 +35,11 @@ public class EntityHorseZombie extends EntityHorseAbstract {
|
|
public boolean isTamed() {
|
|
return true;
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return 6000;
|
|
+ }
|
|
// Purpur end
|
|
|
|
public static AttributeProvider.Builder eL() {
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/EntityLlama.java b/src/main/java/net/minecraft/world/entity/animal/horse/EntityLlama.java
|
|
index d1bd7b9a6a8cfb6b609db4229b2f42a40b8b484f..b3d51abc9bad9cad6fdc5dbdc2bf09d43a565f98 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/horse/EntityLlama.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/EntityLlama.java
|
|
@@ -108,6 +108,11 @@ public class EntityLlama extends EntityHorseChestedAbstract implements IRangedEn
|
|
public boolean hasSaddle() {
|
|
return super.hasSaddle() || (isTamed() && getColor() != null);
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.llamaBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
public void setStrength(int i) {
|
|
diff --git a/src/main/java/net/minecraft/world/entity/monster/EntityStrider.java b/src/main/java/net/minecraft/world/entity/monster/EntityStrider.java
|
|
index 14dda6743ed9e6f4880bc560f7ba8892d8e84afe..cba66a08feceeeaf7c123da595fc7b12c5749783 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/monster/EntityStrider.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/monster/EntityStrider.java
|
|
@@ -105,6 +105,11 @@ public class EntityStrider extends EntityAnimal implements ISteerable, ISaddleab
|
|
public boolean isRidableInWater() {
|
|
return world.purpurConfig.striderRidableInWater;
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.striderBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
public static boolean c(EntityTypes<EntityStrider> entitytypes, GeneratorAccess generatoraccess, EnumMobSpawn enummobspawn, BlockPosition blockposition, Random random) {
|
|
diff --git a/src/main/java/net/minecraft/world/entity/monster/hoglin/EntityHoglin.java b/src/main/java/net/minecraft/world/entity/monster/hoglin/EntityHoglin.java
|
|
index 64253428ef66145d07f74f8d0e5bdeb5aa5fe02b..828d01abe8202a246ce07c1c652a17cbc829d904 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/monster/hoglin/EntityHoglin.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/monster/hoglin/EntityHoglin.java
|
|
@@ -71,6 +71,11 @@ public class EntityHoglin extends EntityAnimal implements IMonster, IOglin {
|
|
public boolean isRidableInWater() {
|
|
return world.purpurConfig.hoglinRidableInWater;
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public int getPurpurBreedTime() {
|
|
+ return this.world.purpurConfig.hoglinBreedingTicks;
|
|
+ }
|
|
// Purpur end
|
|
|
|
@Override
|
|
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
index 23b4593ff14b7a74839f199b1b1056214a6943a0..2d4dea3c432fcf52dffd126f8bd910be03c20b1c 100644
|
|
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
@@ -434,10 +434,12 @@ public class PurpurWorldConfig {
|
|
public boolean beeRidable = false;
|
|
public boolean beeRidableInWater = false;
|
|
public double beeMaxY = 256D;
|
|
+ public int beeBreedingTicks = 6000;
|
|
private void beeSettings() {
|
|
beeRidable = getBoolean("mobs.bee.ridable", beeRidable);
|
|
beeRidableInWater = getBoolean("mobs.bee.ridable-in-water", beeRidableInWater);
|
|
beeMaxY = getDouble("mobs.bee.ridable-max-y", beeMaxY);
|
|
+ beeBreedingTicks = getInt("mobs.bee.breeding-delay-ticks", beeBreedingTicks);
|
|
}
|
|
|
|
public boolean blazeRidable = false;
|
|
@@ -454,12 +456,14 @@ 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);
|
|
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;
|
|
@@ -472,10 +476,12 @@ public class PurpurWorldConfig {
|
|
public boolean chickenRidable = false;
|
|
public boolean chickenRidableInWater = false;
|
|
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);
|
|
chickenRetaliate = getBoolean("mobs.chicken.retaliate", chickenRetaliate);
|
|
+ chickenBreedingTicks = getInt("mobs.chicken.breeding-delay-ticks", chickenBreedingTicks);
|
|
}
|
|
|
|
public boolean codRidable = false;
|
|
@@ -486,10 +492,12 @@ public class PurpurWorldConfig {
|
|
public boolean cowRidable = false;
|
|
public boolean cowRidableInWater = false;
|
|
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);
|
|
cowFeedMushrooms = getInt("mobs.cow.feed-mushrooms-for-mooshroom", cowFeedMushrooms);
|
|
+ cowBreedingTicks = getInt("mobs.cow.breeding-delay-ticks", cowBreedingTicks);
|
|
}
|
|
|
|
public boolean creeperRidable = false;
|
|
@@ -517,8 +525,10 @@ public class PurpurWorldConfig {
|
|
}
|
|
|
|
public boolean donkeyRidableInWater = false;
|
|
+ public int donkeyBreedingTicks = 6000;
|
|
private void donkeySettings() {
|
|
donkeyRidableInWater = getBoolean("mobs.donkey.ridable-in-water", donkeyRidableInWater);
|
|
+ donkeyBreedingTicks = getInt("mobs.donkey.breeding-delay-ticks", donkeyBreedingTicks);
|
|
}
|
|
|
|
public boolean drownedRidable = false;
|
|
@@ -576,10 +586,12 @@ public class PurpurWorldConfig {
|
|
public boolean foxRidable = false;
|
|
public boolean foxRidableInWater = false;
|
|
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);
|
|
foxTypeChangesWithTulips = getBoolean("mobs.fox.tulips-change-type", foxTypeChangesWithTulips);
|
|
+ foxBreedingTicks = getInt("mobs.fox.breeding-delay-ticks", foxBreedingTicks);
|
|
}
|
|
|
|
public boolean ghastRidable = false;
|
|
@@ -624,14 +636,18 @@ public class PurpurWorldConfig {
|
|
|
|
public boolean hoglinRidable = false;
|
|
public boolean hoglinRidableInWater = false;
|
|
+ public int hoglinBreedingTicks = 6000;
|
|
private void hoglinSettings() {
|
|
hoglinRidable = getBoolean("mobs.hoglin.ridable", hoglinRidable);
|
|
hoglinRidableInWater = getBoolean("mobs.hoglin.ridable-in-water", hoglinRidableInWater);
|
|
+ hoglinBreedingTicks = getInt("mobs.hoglin.breeding-delay-ticks", hoglinBreedingTicks);
|
|
}
|
|
|
|
public boolean horseRidableInWater = false;
|
|
+ public int horseBreedingTicks = 6000;
|
|
private void horseSettings() {
|
|
horseRidableInWater = getBoolean("mobs.horse.ridable-in-water", horseRidableInWater);
|
|
+ horseBreedingTicks = getInt("mobs.horse.breeding-delay-ticks", horseBreedingTicks);
|
|
}
|
|
|
|
public boolean huskRidable = false;
|
|
@@ -676,9 +692,11 @@ public class PurpurWorldConfig {
|
|
|
|
public boolean llamaRidable = false;
|
|
public boolean llamaRidableInWater = false;
|
|
+ public int llamaBreedingTicks = 6000;
|
|
private void llamaSettings() {
|
|
llamaRidable = getBoolean("mobs.llama.ridable", llamaRidable);
|
|
llamaRidableInWater = getBoolean("mobs.llama.ridable-in-water", llamaRidableInWater);
|
|
+ llamaBreedingTicks = getInt("mobs.llama.breeding-delay-ticks", llamaBreedingTicks);
|
|
}
|
|
|
|
public boolean llamaTraderRidable = false;
|
|
@@ -697,28 +715,36 @@ public class PurpurWorldConfig {
|
|
|
|
public boolean mooshroomRidable = false;
|
|
public boolean mooshroomRidableInWater = false;
|
|
+ public int mooshroomBreedingTicks = 6000;
|
|
private void mooshroomSettings() {
|
|
mooshroomRidable = getBoolean("mobs.mooshroom.ridable", mooshroomRidable);
|
|
mooshroomRidableInWater = getBoolean("mobs.mooshroom.ridable-in-water", mooshroomRidableInWater);
|
|
+ mooshroomBreedingTicks = getInt("mobs.mooshroom.breeding-delay-ticks", mooshroomBreedingTicks);
|
|
}
|
|
|
|
public boolean muleRidableInWater = false;
|
|
+ public int muleBreedingTicks = 6000;
|
|
private void muleSettings() {
|
|
muleRidableInWater = getBoolean("mobs.mule.ridable-in-water", muleRidableInWater);
|
|
+ muleBreedingTicks = getInt("mobs.mule.breeding-delay-ticks", muleBreedingTicks);
|
|
}
|
|
|
|
public boolean ocelotRidable = false;
|
|
public boolean ocelotRidableInWater = false;
|
|
+ public int ocelotBreedingTicks = 6000;
|
|
private void ocelotSettings() {
|
|
ocelotRidable = getBoolean("mobs.ocelot.ridable", ocelotRidable);
|
|
ocelotRidableInWater = getBoolean("mobs.ocelot.ridable-in-water", ocelotRidableInWater);
|
|
+ ocelotBreedingTicks = getInt("mobs.ocelot.breeding-delay-ticks", ocelotBreedingTicks);
|
|
}
|
|
|
|
public boolean pandaRidable = false;
|
|
public boolean pandaRidableInWater = false;
|
|
+ public int pandaBreedingTicks = 6000;
|
|
private void pandaSettings() {
|
|
pandaRidable = getBoolean("mobs.panda.ridable", pandaRidable);
|
|
pandaRidableInWater = getBoolean("mobs.panda.ridable-in-water", pandaRidableInWater);
|
|
+ pandaBreedingTicks = getInt("mobs.panda.breeding-delay-ticks", pandaBreedingTicks);
|
|
}
|
|
|
|
public boolean parrotRidable = false;
|
|
@@ -784,10 +810,12 @@ public class PurpurWorldConfig {
|
|
public boolean pigRidable = false;
|
|
public boolean pigRidableInWater = false;
|
|
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);
|
|
pigGiveSaddleBack = getBoolean("mobs.pig.give-saddle-back", pigGiveSaddleBack);
|
|
+ pigBreedingTicks = getInt("mobs.pig.breeding-delay-ticks", pigBreedingTicks);
|
|
}
|
|
|
|
public boolean piglinRidable = false;
|
|
@@ -815,12 +843,14 @@ public class PurpurWorldConfig {
|
|
public boolean polarBearRidableInWater = false;
|
|
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);
|
|
polarBearBreedableItemString = getString("mobs.polar_bear.breedable-item", polarBearBreedableItemString);
|
|
Item item = IRegistry.ITEM.get(new MinecraftKey(polarBearBreedableItemString));
|
|
if (item != Items.AIR) polarBearBreedableItem = item;
|
|
+ polarBearBreedingTicks = getInt("mobs.polar_bear.breeding-delay-ticks", polarBearBreedingTicks);
|
|
}
|
|
|
|
public boolean pufferfishRidable = false;
|
|
@@ -832,11 +862,13 @@ public class PurpurWorldConfig {
|
|
public boolean rabbitRidableInWater = false;
|
|
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);
|
|
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;
|
|
@@ -853,9 +885,11 @@ public class PurpurWorldConfig {
|
|
|
|
public boolean sheepRidable = false;
|
|
public boolean sheepRidableInWater = false;
|
|
+ public int sheepBreedingTicks = 6000;
|
|
private void sheepSettings() {
|
|
sheepRidable = getBoolean("mobs.sheep.ridable", sheepRidable);
|
|
sheepRidableInWater = getBoolean("mobs.sheep.ridable-in-water", sheepRidableInWater);
|
|
+ sheepBreedingTicks = getInt("mobs.sheep.breeding-delay-ticks", sheepBreedingTicks);
|
|
}
|
|
|
|
public boolean shulkerRidable = false;
|
|
@@ -933,9 +967,11 @@ public class PurpurWorldConfig {
|
|
|
|
public boolean striderRidable = false;
|
|
public boolean striderRidableInWater = false;
|
|
+ public int striderBreedingTicks = 6000;
|
|
private void striderSettings() {
|
|
striderRidable = getBoolean("mobs.strider.ridable", striderRidable);
|
|
striderRidableInWater = getBoolean("mobs.strider.ridable-in-water", striderRidableInWater);
|
|
+ striderBreedingTicks = getInt("mobs.strider.breeding-delay-ticks", striderBreedingTicks);
|
|
}
|
|
|
|
public boolean tropicalFishRidable = false;
|
|
@@ -945,9 +981,11 @@ public class PurpurWorldConfig {
|
|
|
|
public boolean turtleRidable = false;
|
|
public boolean turtleRidableInWater = false;
|
|
+ public int turtleBreedingTicks = 6000;
|
|
private void turtleSettings() {
|
|
turtleRidable = getBoolean("mobs.turtle.ridable", turtleRidable);
|
|
turtleRidableInWater = getBoolean("mobs.turtle.ridable-in-water", turtleRidableInWater);
|
|
+ turtleBreedingTicks = getInt("mobs.turtle.breeding-delay-ticks", turtleBreedingTicks);
|
|
}
|
|
|
|
public boolean vexRidable = false;
|
|
@@ -969,6 +1007,7 @@ public class PurpurWorldConfig {
|
|
public int villagerSpawnIronGolemRadius = 0;
|
|
public int villagerSpawnIronGolemLimit = 0;
|
|
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);
|
|
@@ -980,6 +1019,7 @@ public class PurpurWorldConfig {
|
|
villagerSpawnIronGolemRadius = getInt("mobs.villager.spawn-iron-golem.radius", villagerSpawnIronGolemRadius);
|
|
villagerSpawnIronGolemLimit = getInt("mobs.villager.spawn-iron-golem.limit", villagerSpawnIronGolemLimit);
|
|
villagerCanBreed = getBoolean("mobs.villager.can-breed", villagerCanBreed);
|
|
+ villagerBreedingTicks = getInt("mobs.villager.breeding-delay-ticks", villagerBreedingTicks);
|
|
}
|
|
|
|
public boolean villagerTraderRidable = false;
|
|
@@ -1040,9 +1080,11 @@ public class PurpurWorldConfig {
|
|
|
|
public boolean wolfRidable = false;
|
|
public boolean wolfRidableInWater = false;
|
|
+ public int wolfBreedingTicks = 6000;
|
|
private void wolfSettings() {
|
|
wolfRidable = getBoolean("mobs.wolf.ridable", wolfRidable);
|
|
wolfRidableInWater = getBoolean("mobs.wolf.ridable-in-water", wolfRidableInWater);
|
|
+ wolfBreedingTicks = getInt("mobs.wolf.breeding-delay-ticks", wolfBreedingTicks);
|
|
}
|
|
|
|
public boolean zoglinRidable = false;
|