configurable mob size attribute (#1538)

This commit is contained in:
granny
2024-06-21 04:11:09 -07:00
committed by GitHub
parent c0f5e78dc2
commit b82f6939fe
234 changed files with 2140 additions and 1855 deletions

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Breedable parrots
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 49a162cc5ccdb160064b6de20a030175d5248070..4050cc4c93cbe33d3e4cc2f7aed5dfc26018e510 100644
index 884fc114ef70d49fd0d64fcea46fb277950962a1..4fa32a6406e3158369064d39160e485010484886 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Parrot.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Parrot.java
@@ -221,6 +221,7 @@ public class Parrot extends ShoulderRidingEntity implements VariantHolder<Parrot
@@ -222,6 +222,7 @@ public class Parrot extends ShoulderRidingEntity implements VariantHolder<Parrot
protected void registerGoals() {
//this.goalSelector.addGoal(0, new TamableAnimal.TamableAnimalPanicGoal(1.25D)); // Purpur - move down
this.goalSelector.addGoal(0, new FloatGoal(this));
@@ -16,7 +16,7 @@ index 49a162cc5ccdb160064b6de20a030175d5248070..4050cc4c93cbe33d3e4cc2f7aed5dfc2
this.goalSelector.addGoal(0, new org.purpurmc.purpur.entity.ai.HasRider(this)); // Purpur
this.goalSelector.addGoal(1, new TamableAnimal.TamableAnimalPanicGoal(1.25D)); // Purpur
this.goalSelector.addGoal(1, new LookAtPlayerGoal(this, Player.class, 8.0F));
@@ -329,6 +330,7 @@ public class Parrot extends ShoulderRidingEntity implements VariantHolder<Parrot
@@ -330,6 +331,7 @@ public class Parrot extends ShoulderRidingEntity implements VariantHolder<Parrot
}
}
@@ -24,7 +24,7 @@ index 49a162cc5ccdb160064b6de20a030175d5248070..4050cc4c93cbe33d3e4cc2f7aed5dfc2
return InteractionResult.sidedSuccess(this.level().isClientSide);
} else if (!itemstack.is(ItemTags.PARROT_POISONOUS_FOOD)) {
if (!this.isFlying() && this.isTame() && this.isOwnedBy(player)) {
@@ -353,7 +355,7 @@ public class Parrot extends ShoulderRidingEntity implements VariantHolder<Parrot
@@ -354,7 +356,7 @@ public class Parrot extends ShoulderRidingEntity implements VariantHolder<Parrot
@Override
public boolean isFood(ItemStack stack) {
@@ -33,7 +33,7 @@ index 49a162cc5ccdb160064b6de20a030175d5248070..4050cc4c93cbe33d3e4cc2f7aed5dfc2
}
public static boolean checkParrotSpawnRules(EntityType<Parrot> type, LevelAccessor world, MobSpawnType spawnReason, BlockPos pos, RandomSource random) {
@@ -365,13 +367,13 @@ public class Parrot extends ShoulderRidingEntity implements VariantHolder<Parrot
@@ -366,13 +368,13 @@ public class Parrot extends ShoulderRidingEntity implements VariantHolder<Parrot
@Override
public boolean canMate(Animal other) {
@@ -50,20 +50,20 @@ index 49a162cc5ccdb160064b6de20a030175d5248070..4050cc4c93cbe33d3e4cc2f7aed5dfc2
@Nullable
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 4efc49679fdc9db3d312e5638a86c6ce00bedf9c..eb16814259e85f3f6d58a1e78b137ee5a06c9008 100644
index 71821fb520c5f367ccc657e2d549250d13fe7ed1..3ddf43e0c9c632deff580ecbecdc37f3bfab7c5f 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1571,6 +1571,7 @@ public class PurpurWorldConfig {
public double parrotMaxY = 320D;
@@ -1639,6 +1639,7 @@ public class PurpurWorldConfig {
public double parrotMaxHealth = 6.0D;
public double parrotScale = 1.0D;
public boolean parrotTakeDamageFromWater = false;
+ public boolean parrotBreedable = false;
private void parrotSettings() {
parrotRidable = getBoolean("mobs.parrot.ridable", parrotRidable);
parrotRidableInWater = getBoolean("mobs.parrot.ridable-in-water", parrotRidableInWater);
@@ -1583,6 +1584,7 @@ public class PurpurWorldConfig {
}
@@ -1652,6 +1653,7 @@ public class PurpurWorldConfig {
parrotMaxHealth = getDouble("mobs.parrot.attributes.max_health", parrotMaxHealth);
parrotScale = Mth.clamp(getDouble("mobs.parrot.attributes.scale", parrotScale), 0.0625D, 16.0D);
parrotTakeDamageFromWater = getBoolean("mobs.parrot.takes-damage-from-water", parrotTakeDamageFromWater);
+ parrotBreedable = getBoolean("mobs.parrot.can-breed", parrotBreedable);
}