Add water damage to all mobs (#703)

Co-authored-by: SPh <sph@sphnet.in>
This commit is contained in:
granny
2021-10-13 14:51:10 -07:00
committed by GitHub
parent 32fc651f97
commit 3aa3404fb7
35 changed files with 2394 additions and 250 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 553b0aff0ccc5baf41d5faae1a2fd88249dd5a74..3da2b68fb03a80676d7a5eed271499f6c4612c61 100644
index 67c72a5b9c786d3240ade51aa48e0e63f0d758cd..bb4449f19319926cbd3ea4961a591669f370bd6e 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Parrot.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Parrot.java
@@ -210,6 +210,7 @@ public class Parrot extends ShoulderRidingEntity implements FlyingAnimal {
@@ -215,6 +215,7 @@ public class Parrot extends ShoulderRidingEntity implements FlyingAnimal {
this.goalSelector.addGoal(0, new FloatGoal(this));
this.goalSelector.addGoal(0, new net.pl3x.purpur.entity.ai.HasRider(this)); // Purpur
this.goalSelector.addGoal(1, new PanicGoal(this, 1.25D)); // Purpur
@@ -16,7 +16,7 @@ index 553b0aff0ccc5baf41d5faae1a2fd88249dd5a74..3da2b68fb03a80676d7a5eed271499f6
this.goalSelector.addGoal(1, new LookAtPlayerGoal(this, Player.class, 8.0F));
this.goalSelector.addGoal(2, new SitWhenOrderedToGoal(this));
this.goalSelector.addGoal(2, new FollowOwnerGoal(this, 1.0D, 5.0F, 1.0F, true));
@@ -324,6 +325,7 @@ public class Parrot extends ShoulderRidingEntity implements FlyingAnimal {
@@ -329,6 +330,7 @@ public class Parrot extends ShoulderRidingEntity implements FlyingAnimal {
}
}
@@ -24,7 +24,7 @@ index 553b0aff0ccc5baf41d5faae1a2fd88249dd5a74..3da2b68fb03a80676d7a5eed271499f6
return InteractionResult.sidedSuccess(this.level.isClientSide);
} else if (itemstack.is(Parrot.POISONOUS_FOOD)) {
if (!player.getAbilities().instabuild) {
@@ -349,7 +351,7 @@ public class Parrot extends ShoulderRidingEntity implements FlyingAnimal {
@@ -354,7 +356,7 @@ public class Parrot extends ShoulderRidingEntity implements FlyingAnimal {
@Override
public boolean isFood(ItemStack stack) {
@@ -33,7 +33,7 @@ index 553b0aff0ccc5baf41d5faae1a2fd88249dd5a74..3da2b68fb03a80676d7a5eed271499f6
}
public static boolean checkParrotSpawnRules(EntityType<Parrot> type, LevelAccessor world, MobSpawnType spawnReason, BlockPos pos, Random random) {
@@ -368,13 +370,13 @@ public class Parrot extends ShoulderRidingEntity implements FlyingAnimal {
@@ -373,13 +375,13 @@ public class Parrot extends ShoulderRidingEntity implements FlyingAnimal {
@Override
public boolean canMate(Animal other) {
@@ -50,21 +50,21 @@ index 553b0aff0ccc5baf41d5faae1a2fd88249dd5a74..3da2b68fb03a80676d7a5eed271499f6
@Override
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index d36ee86f7f03dd1543d65e12f7fb1872276ebe16..8acd80d4072624e01deadd99893682a2940afd8e 100644
index 330dd72da29356d299ba74075819c80633c18187..692d12290e3f0ac7fa9f2922a2e58700a26bac23 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1425,6 +1425,7 @@ public class PurpurWorldConfig {
public boolean parrotRidableInWater = false;
@@ -1492,6 +1492,7 @@ public class PurpurWorldConfig {
public double parrotMaxY = 256D;
public double parrotMaxHealth = 6.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);
@@ -1435,6 +1436,7 @@ public class PurpurWorldConfig {
set("mobs.parrot.attributes.max_health", oldValue);
@@ -1503,6 +1504,7 @@ public class PurpurWorldConfig {
}
parrotMaxHealth = getDouble("mobs.parrot.attributes.max_health", parrotMaxHealth);
parrotTakeDamageFromWater = getBoolean("mobs.parrot.takes-damage-from-water", parrotTakeDamageFromWater);
+ parrotBreedable = getBoolean("mobs.parrot.can-breed", parrotBreedable);
}