mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
progress
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -25,7 +25,7 @@ index e037d618955de9a213a9cd90752b29d189faace4..34dec0a94840a8865f1d80857ec54a10
|
||||
double d = this.llama.distanceToSqr(this.llama.getCaravanHead());
|
||||
if (d > 676.0D) {
|
||||
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 5c31519193126b715105e1e83bb54f6a1681d19e..41b94ea6f3cc71b3521df8be15bf009404ce66d2 100644
|
||||
index 0671185c358398fe0c4c1dbf4ede2f3e8c4794fb..31d965119b0d6481a50fbc237600c529aac0702d 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
|
||||
@@ -65,6 +65,7 @@ public class Llama extends AbstractChestedHorse implements RangedAttackMob {
|
||||
@@ -36,7 +36,7 @@ index 5c31519193126b715105e1e83bb54f6a1681d19e..41b94ea6f3cc71b3521df8be15bf0094
|
||||
|
||||
public Llama(EntityType<? extends Llama> type, Level world) {
|
||||
super(type, world);
|
||||
@@ -95,7 +96,7 @@ public class Llama extends AbstractChestedHorse implements RangedAttackMob {
|
||||
@@ -134,7 +135,7 @@ public class Llama extends AbstractChestedHorse implements RangedAttackMob {
|
||||
if (!this.inventory.getItem(1).isEmpty()) {
|
||||
nbt.put("DecorItem", this.inventory.getItem(1).save(new CompoundTag()));
|
||||
}
|
||||
@@ -45,7 +45,7 @@ index 5c31519193126b715105e1e83bb54f6a1681d19e..41b94ea6f3cc71b3521df8be15bf0094
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -107,6 +108,12 @@ public class Llama extends AbstractChestedHorse implements RangedAttackMob {
|
||||
@@ -146,6 +147,12 @@ public class Llama extends AbstractChestedHorse implements RangedAttackMob {
|
||||
this.inventory.setItem(1, ItemStack.of(nbt.getCompound("DecorItem")));
|
||||
}
|
||||
|
||||
@@ -58,7 +58,7 @@ index 5c31519193126b715105e1e83bb54f6a1681d19e..41b94ea6f3cc71b3521df8be15bf0094
|
||||
this.updateContainerEquipment();
|
||||
}
|
||||
|
||||
@@ -426,6 +433,7 @@ public class Llama extends AbstractChestedHorse implements RangedAttackMob {
|
||||
@@ -467,6 +474,7 @@ public class Llama extends AbstractChestedHorse implements RangedAttackMob {
|
||||
|
||||
public void leaveCaravan() {
|
||||
if (this.caravanHead != null) {
|
||||
@@ -66,7 +66,7 @@ index 5c31519193126b715105e1e83bb54f6a1681d19e..41b94ea6f3cc71b3521df8be15bf0094
|
||||
this.caravanHead.caravanTail = null;
|
||||
}
|
||||
|
||||
@@ -433,6 +441,7 @@ public class Llama extends AbstractChestedHorse implements RangedAttackMob {
|
||||
@@ -474,6 +482,7 @@ public class Llama extends AbstractChestedHorse implements RangedAttackMob {
|
||||
}
|
||||
|
||||
public void joinCaravan(Llama llama) {
|
||||
@@ -74,7 +74,7 @@ index 5c31519193126b715105e1e83bb54f6a1681d19e..41b94ea6f3cc71b3521df8be15bf0094
|
||||
this.caravanHead = llama;
|
||||
this.caravanHead.caravanTail = this;
|
||||
}
|
||||
@@ -450,6 +459,13 @@ public class Llama extends AbstractChestedHorse implements RangedAttackMob {
|
||||
@@ -491,6 +500,13 @@ public class Llama extends AbstractChestedHorse implements RangedAttackMob {
|
||||
return this.caravanHead;
|
||||
}
|
||||
|
||||
|
||||
@@ -37,10 +37,10 @@ index e733c1e8f0b180bf1508e4f004124d44407f6c07..0fc358d5491900affb61545d89a788bb
|
||||
|
||||
protected void playBlockFallSound() {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java b/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java
|
||||
index ba58e066cca533dfed7610a730c4dd7423fe124d..ff032dd031360cd4022dd19e772176d72e3e1340 100644
|
||||
index 919410ce27e7e42e297c2caba7d3d7c1b623aede..4dcacd1d156309abd29f48b9ac2d402395232e85 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java
|
||||
@@ -285,7 +285,7 @@ public abstract class AbstractHorse extends Animal implements ContainerListener,
|
||||
@@ -296,7 +296,7 @@ public abstract class AbstractHorse extends Animal implements ContainerListener,
|
||||
|
||||
@Override
|
||||
protected int calculateFallDamage(float fallDistance, float damageMultiplier) {
|
||||
|
||||
@@ -42,10 +42,10 @@ index 900b30c9ba0d7b9e0b19c23c1eb5b75dbf2d7141..e09f031f08efa7ed5145566de459b044
|
||||
|
||||
LightningBolt entitylightning = (LightningBolt) EntityType.LIGHTNING_BOLT.create((net.minecraft.world.level.Level) this);
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 6790836b719bbab7c5ab8ead6efd9723b4f58cd1..d8011e5fe28458ae62f764cc355838bd08491f94 100644
|
||||
index 983ad996bef9f05772f176357ab3f78fd330f8f4..e66fd35e16e152d18b511d727558b50d5071633f 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -651,9 +651,11 @@ public class PurpurWorldConfig {
|
||||
@@ -653,9 +653,11 @@ public class PurpurWorldConfig {
|
||||
|
||||
public boolean zombieHorseRidableInWater = false;
|
||||
public boolean zombieHorseCanSwim = false;
|
||||
|
||||
@@ -5,59 +5,27 @@ Subject: [PATCH] Charged creeper naturally spawn
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Creeper.java b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
index e8c36e8541f041a0d72a86f49ced2a3ce1549be0..27d8279b71f55ae711b0455bb4c5f1527a0e1ccb 100644
|
||||
index 1bf65519883585569a1acc780554505dc5d6c30b..f8fba694d53356036e302f66cfe92b15726242dc 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
@@ -11,6 +11,7 @@ import net.minecraft.server.level.ServerLevel;
|
||||
import net.minecraft.sounds.SoundEvent;
|
||||
import net.minecraft.sounds.SoundEvents;
|
||||
import net.minecraft.util.Mth;
|
||||
+import net.minecraft.world.DifficultyInstance;
|
||||
import net.minecraft.world.InteractionHand;
|
||||
import net.minecraft.world.InteractionResult;
|
||||
import net.minecraft.world.damagesource.DamageSource;
|
||||
@@ -20,7 +21,9 @@ import net.minecraft.world.entity.Entity;
|
||||
import net.minecraft.world.entity.EntityType;
|
||||
import net.minecraft.world.entity.LightningBolt;
|
||||
import net.minecraft.world.entity.LivingEntity;
|
||||
+import net.minecraft.world.entity.MobSpawnType;
|
||||
import net.minecraft.world.entity.PowerableMob;
|
||||
+import net.minecraft.world.entity.SpawnGroupData;
|
||||
import net.minecraft.world.entity.ai.attributes.AttributeSupplier;
|
||||
import net.minecraft.world.entity.ai.attributes.Attributes;
|
||||
import net.minecraft.world.entity.ai.goal.AvoidEntityGoal;
|
||||
@@ -38,10 +41,7 @@ import net.minecraft.world.entity.animal.goat.Goat;
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
import net.minecraft.world.item.ItemStack;
|
||||
import net.minecraft.world.item.Items;
|
||||
-import net.minecraft.world.level.Explosion;
|
||||
-import net.minecraft.world.level.GameRules;
|
||||
-import net.minecraft.world.level.ItemLike;
|
||||
-import net.minecraft.world.level.Level;
|
||||
+import net.minecraft.world.level.*;
|
||||
import net.minecraft.world.level.gameevent.GameEvent;
|
||||
|
||||
// CraftBukkit start
|
||||
@@ -65,6 +65,17 @@ public class Creeper extends Monster implements PowerableMob {
|
||||
super(type, world);
|
||||
@@ -129,6 +129,15 @@ public class Creeper extends Monster implements PowerableMob {
|
||||
}
|
||||
return getForwardMot() == 0 && getStrafeMot() == 0; // do not jump if standing still
|
||||
}
|
||||
|
||||
+ // Purpur start
|
||||
+
|
||||
+ @Override
|
||||
+ public SpawnGroupData finalizeSpawn(ServerLevelAccessor world, DifficultyInstance difficulty, MobSpawnType spawnReason, @Nullable SpawnGroupData entityData, @Nullable CompoundTag entityNbt) {
|
||||
+ public net.minecraft.world.entity.SpawnGroupData finalizeSpawn(net.minecraft.world.level.ServerLevelAccessor world, net.minecraft.world.DifficultyInstance difficulty, net.minecraft.world.entity.MobSpawnType spawnReason, @Nullable net.minecraft.world.entity.SpawnGroupData entityData, @Nullable CompoundTag entityNbt) {
|
||||
+ double chance = world.getMinecraftWorld().purpurConfig.creeperChargedChance;
|
||||
+ if (chance > 0D && random.nextDouble() <= chance) {
|
||||
+ setPowered(true);
|
||||
+ }
|
||||
+ return super.finalizeSpawn(world, difficulty, spawnReason, entityData, entityNbt);
|
||||
+ }
|
||||
+ // Purpur end
|
||||
+
|
||||
// Purpur end
|
||||
|
||||
@Override
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(1, new FloatGoal(this));
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index d8011e5fe28458ae62f764cc355838bd08491f94..375eb6499a91e73310e93d6d42eaa799751f22a2 100644
|
||||
index e66fd35e16e152d18b511d727558b50d5071633f..d2772e9d8cc9027994e98633594f20dc58a652cf 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -180,9 +180,11 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Rabbit naturally spawn toast and killer
|
||||
|
||||
|
||||
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 4a60afbb79ffb86d3c41b48d923ca8b3beca1c54..384f8abd0fd12906956d1459115f48738cc6e16d 100644
|
||||
index 29551a3b87f06c5876de5fda80615acf6c1f4764..8f99b4c28539c7c5a4951d7a3b82b01b77082794 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Rabbit.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Rabbit.java
|
||||
@@ -365,7 +365,11 @@ public class Rabbit extends Animal {
|
||||
@@ -421,7 +421,11 @@ public class Rabbit extends Animal {
|
||||
if (!this.hasCustomName()) {
|
||||
this.setCustomName(new TranslatableComponent(Util.makeDescriptionId("entity", Rabbit.KILLER_BUNNY)));
|
||||
}
|
||||
@@ -20,7 +20,7 @@ index 4a60afbb79ffb86d3c41b48d923ca8b3beca1c54..384f8abd0fd12906956d1459115f4873
|
||||
|
||||
this.entityData.set(Rabbit.DATA_TYPE_ID, rabbitType);
|
||||
}
|
||||
@@ -386,6 +390,16 @@ public class Rabbit extends Animal {
|
||||
@@ -442,6 +446,16 @@ public class Rabbit extends Animal {
|
||||
}
|
||||
|
||||
private int getRandomRabbitType(LevelAccessor world) {
|
||||
@@ -38,7 +38,7 @@ index 4a60afbb79ffb86d3c41b48d923ca8b3beca1c54..384f8abd0fd12906956d1459115f4873
|
||||
int i = this.random.nextInt(100);
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 375eb6499a91e73310e93d6d42eaa799751f22a2..100982bbf3f47a7c5d2da3e3f6957118c807b2f3 100644
|
||||
index d2772e9d8cc9027994e98633594f20dc58a652cf..c2a43e6f48da724ff737fec8d3bce0a3611b2465 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -456,9 +456,13 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Tulips change fox type
|
||||
|
||||
|
||||
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 31f4e4a93ea5fd3ffe7e60dff2e2a9642b51daa2..26470e4e07387fcf0c02c1f8845950eca4140a56 100644
|
||||
index 6cc8f6ef75e4b8b4282e4f664a83ce6491042df1..97101e7e0442417b57e15d6ec76d2a4c88862c81 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Fox.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Fox.java
|
||||
@@ -34,6 +34,7 @@ import net.minecraft.tags.Tag;
|
||||
@@ -24,7 +24,7 @@ index 31f4e4a93ea5fd3ffe7e60dff2e2a9642b51daa2..26470e4e07387fcf0c02c1f8845950ec
|
||||
import net.minecraft.world.level.pathfinder.BlockPathTypes;
|
||||
import net.minecraft.world.phys.Vec3;
|
||||
|
||||
@@ -328,6 +330,11 @@ public class Fox extends Animal {
|
||||
@@ -363,6 +365,11 @@ public class Fox extends Animal {
|
||||
}
|
||||
|
||||
private void setTargetGoals() {
|
||||
@@ -36,7 +36,7 @@ index 31f4e4a93ea5fd3ffe7e60dff2e2a9642b51daa2..26470e4e07387fcf0c02c1f8845950ec
|
||||
if (this.getFoxType() == Fox.Type.RED) {
|
||||
this.targetSelector.addGoal(4, this.landTargetGoal);
|
||||
this.targetSelector.addGoal(4, this.turtleEggTargetGoal);
|
||||
@@ -360,6 +367,7 @@ public class Fox extends Animal {
|
||||
@@ -395,6 +402,7 @@ public class Fox extends Animal {
|
||||
|
||||
public void setFoxType(Fox.Type type) {
|
||||
this.entityData.set(Fox.DATA_TYPE_ID, type.getId());
|
||||
@@ -44,7 +44,7 @@ index 31f4e4a93ea5fd3ffe7e60dff2e2a9642b51daa2..26470e4e07387fcf0c02c1f8845950ec
|
||||
}
|
||||
|
||||
List<UUID> getTrustedUUIDs() {
|
||||
@@ -690,6 +698,29 @@ public class Fox extends Animal {
|
||||
@@ -725,6 +733,29 @@ public class Fox extends Animal {
|
||||
return this.getTrustedUUIDs().contains(uuid);
|
||||
}
|
||||
|
||||
@@ -75,7 +75,7 @@ index 31f4e4a93ea5fd3ffe7e60dff2e2a9642b51daa2..26470e4e07387fcf0c02c1f8845950ec
|
||||
// Paper start - Cancellable death event
|
||||
protected org.bukkit.event.entity.EntityDeathEvent dropAllDeathLoot(DamageSource source) {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 100982bbf3f47a7c5d2da3e3f6957118c807b2f3..ce147273c7debd993af91df176cfe639ae95dfdc 100644
|
||||
index c2a43e6f48da724ff737fec8d3bce0a3611b2465..b949480d139ce6eb923c3efe788ac7a547f90c96 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -247,9 +247,11 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -5,36 +5,14 @@ Subject: [PATCH] Breedable Polar Bears
|
||||
|
||||
|
||||
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 0694cd0b994ee595adca43c988485e6dc13c7244..583bb80059b9351d27d15859b1687dd817ba165e 100644
|
||||
index dc6bc8f10d147cb1d0e5c69b6f6df63b0e8d4531..652e8a43af5830a9bc5a6bdd00ebec5a6e07dc3c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/PolarBear.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/PolarBear.java
|
||||
@@ -32,6 +32,7 @@ import net.minecraft.world.entity.Pose;
|
||||
import net.minecraft.world.entity.SpawnGroupData;
|
||||
import net.minecraft.world.entity.ai.attributes.AttributeSupplier;
|
||||
import net.minecraft.world.entity.ai.attributes.Attributes;
|
||||
+import net.minecraft.world.entity.ai.goal.BreedGoal;
|
||||
import net.minecraft.world.entity.ai.goal.FloatGoal;
|
||||
import net.minecraft.world.entity.ai.goal.FollowParentGoal;
|
||||
import net.minecraft.world.entity.ai.goal.LookAtPlayerGoal;
|
||||
@@ -39,11 +40,13 @@ import net.minecraft.world.entity.ai.goal.MeleeAttackGoal;
|
||||
import net.minecraft.world.entity.ai.goal.PanicGoal;
|
||||
import net.minecraft.world.entity.ai.goal.RandomLookAroundGoal;
|
||||
import net.minecraft.world.entity.ai.goal.RandomStrollGoal;
|
||||
+import net.minecraft.world.entity.ai.goal.TemptGoal;
|
||||
import net.minecraft.world.entity.ai.goal.target.HurtByTargetGoal;
|
||||
import net.minecraft.world.entity.ai.goal.target.NearestAttackableTargetGoal;
|
||||
import net.minecraft.world.entity.ai.goal.target.ResetUniversalAngerTargetGoal;
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
import net.minecraft.world.item.ItemStack;
|
||||
+import net.minecraft.world.item.crafting.Ingredient;
|
||||
import net.minecraft.world.level.Level;
|
||||
import net.minecraft.world.level.LevelAccessor;
|
||||
import net.minecraft.world.level.ServerLevelAccessor;
|
||||
@@ -66,6 +69,30 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
super(type, world);
|
||||
@@ -88,6 +88,28 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
+ // Purpur start
|
||||
+
|
||||
+ @Override
|
||||
+ public boolean canMate(Animal other) {
|
||||
+ if (other == this) {
|
||||
@@ -56,35 +34,33 @@ index 0694cd0b994ee595adca43c988485e6dc13c7244..583bb80059b9351d27d15859b1687dd8
|
||||
+ return this.isInLove() && bear.isInLove();
|
||||
+ }
|
||||
+ }
|
||||
+ // Purpur end
|
||||
+
|
||||
// Purpur end
|
||||
|
||||
@Override
|
||||
public AgeableMob getBreedOffspring(ServerLevel world, AgeableMob entity) {
|
||||
return EntityType.POLAR_BEAR.create(world);
|
||||
@@ -73,7 +100,7 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
@@ -97,7 +119,7 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
|
||||
@Override
|
||||
public boolean isFood(ItemStack stack) {
|
||||
- return false;
|
||||
+ return level.purpurConfig.polarBearBreedableItem != null && stack.getItem() == level.purpurConfig.polarBearBreedableItem; // Purpur;
|
||||
+ return level.purpurConfig.polarBearBreedableItem != null && stack.getItem() == level.purpurConfig.polarBearBreedableItem; // Purpur
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -82,6 +109,12 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
this.goalSelector.addGoal(0, new FloatGoal(this));
|
||||
@@ -107,6 +129,12 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
this.goalSelector.addGoal(0, new net.pl3x.purpur.entity.ai.HasRider(this)); // Purpur
|
||||
this.goalSelector.addGoal(1, new PolarBear.PolarBearMeleeAttackGoal());
|
||||
this.goalSelector.addGoal(1, new PolarBear.PolarBearPanicGoal());
|
||||
+ // Purpur start
|
||||
+ if (level.purpurConfig.polarBearBreedableItem != null) {
|
||||
+ this.goalSelector.addGoal(2, new BreedGoal(this, 1.0D));
|
||||
+ this.goalSelector.addGoal(3, new TemptGoal(this, 1.0D, Ingredient.of(level.purpurConfig.polarBearBreedableItem), false));
|
||||
+ this.goalSelector.addGoal(2, new net.minecraft.world.entity.ai.goal.BreedGoal(this, 1.0D));
|
||||
+ this.goalSelector.addGoal(3, new net.minecraft.world.entity.ai.goal.TemptGoal(this, 1.0D, net.minecraft.world.item.crafting.Ingredient.of(level.purpurConfig.polarBearBreedableItem), false));
|
||||
+ }
|
||||
+ // Purpur end
|
||||
this.goalSelector.addGoal(4, new FollowParentGoal(this, 1.25D));
|
||||
this.goalSelector.addGoal(5, new RandomStrollGoal(this, 1.0D));
|
||||
this.goalSelector.addGoal(6, new LookAtPlayerGoal(this, Player.class, 6.0F));
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index ce147273c7debd993af91df176cfe639ae95dfdc..32b37da32b6cb2bb0a76a1759eacd28b8e32ece1 100644
|
||||
index b949480d139ce6eb923c3efe788ac7a547f90c96..3981e492b61d552735433fae05e13d1fe87637db 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -446,9 +446,14 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -5,38 +5,26 @@ Subject: [PATCH] Chickens can retaliate
|
||||
|
||||
|
||||
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 8460bed561c09a647f6e0209f7c5448e5a42b281..56aee819372d4baacf73c345603ce889b3a60b52 100644
|
||||
index 771e55cceaf17167c00554b1be7043a4cb3efb7e..11bdc951087d8630a26f398f36a56a9e7c043d70 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Chicken.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Chicken.java
|
||||
@@ -20,10 +20,12 @@ import net.minecraft.world.entity.ai.goal.BreedGoal;
|
||||
import net.minecraft.world.entity.ai.goal.FloatGoal;
|
||||
import net.minecraft.world.entity.ai.goal.FollowParentGoal;
|
||||
import net.minecraft.world.entity.ai.goal.LookAtPlayerGoal;
|
||||
+import net.minecraft.world.entity.ai.goal.MeleeAttackGoal;
|
||||
import net.minecraft.world.entity.ai.goal.PanicGoal;
|
||||
import net.minecraft.world.entity.ai.goal.RandomLookAroundGoal;
|
||||
import net.minecraft.world.entity.ai.goal.TemptGoal;
|
||||
import net.minecraft.world.entity.ai.goal.WaterAvoidingRandomStrollGoal;
|
||||
+import net.minecraft.world.entity.ai.goal.target.HurtByTargetGoal;
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
import net.minecraft.world.item.ItemStack;
|
||||
import net.minecraft.world.item.Items;
|
||||
@@ -52,16 +54,33 @@ public class Chicken extends Animal {
|
||||
this.setPathfindingMalus(BlockPathTypes.WATER, 0.0F);
|
||||
@@ -62,19 +62,34 @@ public class Chicken extends Animal {
|
||||
public boolean rideableUnderWater() {
|
||||
return level.purpurConfig.chickenRidableInWater;
|
||||
}
|
||||
|
||||
+ // Purpur start
|
||||
+
|
||||
+ @Override
|
||||
+ protected void initAttributes() {
|
||||
+ if (level.purpurConfig.chickenRetaliate) {
|
||||
+ this.getAttribute(Attributes.ATTACK_DAMAGE).setBaseValue(2.0D);
|
||||
+ }
|
||||
+ }
|
||||
+ // Purpur end
|
||||
+
|
||||
// Purpur end
|
||||
|
||||
@Override
|
||||
protected void registerGoals() {
|
||||
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.4D));
|
||||
+ // this.goalSelector.addGoal(1, new PanicGoal(this, 1.4D)); // Purpur - moved down
|
||||
this.goalSelector.addGoal(2, new BreedGoal(this, 1.0D));
|
||||
@@ -47,8 +35,8 @@ index 8460bed561c09a647f6e0209f7c5448e5a42b281..56aee819372d4baacf73c345603ce889
|
||||
this.goalSelector.addGoal(7, new RandomLookAroundGoal(this));
|
||||
+ // Purpur start
|
||||
+ if (level.purpurConfig.chickenRetaliate) {
|
||||
+ this.goalSelector.addGoal(1, new MeleeAttackGoal(this, 1.0D, false));
|
||||
+ this.targetSelector.addGoal(1, new HurtByTargetGoal(this));
|
||||
+ this.goalSelector.addGoal(1, new net.minecraft.world.entity.ai.goal.MeleeAttackGoal(this, 1.0D, false));
|
||||
+ this.targetSelector.addGoal(1, new net.minecraft.world.entity.ai.goal.target.HurtByTargetGoal(this));
|
||||
+ } else {
|
||||
+ this.goalSelector.addGoal(1, new PanicGoal(this, 1.4D));
|
||||
+ }
|
||||
@@ -56,7 +44,7 @@ index 8460bed561c09a647f6e0209f7c5448e5a42b281..56aee819372d4baacf73c345603ce889
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -70,7 +89,7 @@ public class Chicken extends Animal {
|
||||
@@ -83,7 +98,7 @@ public class Chicken extends Animal {
|
||||
}
|
||||
|
||||
public static AttributeSupplier.Builder createAttributes() {
|
||||
@@ -66,7 +54,7 @@ index 8460bed561c09a647f6e0209f7c5448e5a42b281..56aee819372d4baacf73c345603ce889
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 32b37da32b6cb2bb0a76a1759eacd28b8e32ece1..f6f3910c5a9f011e1513174cb9d70080ddb5b024 100644
|
||||
index 3981e492b61d552735433fae05e13d1fe87637db..5154e14c88cf79c8da3290ff945fac0361e9e7c5 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -161,9 +161,11 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Fix cow rotation when shearing mooshroom
|
||||
|
||||
|
||||
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 d9fb3df35de94ae5abbb86ace0328bbe6f5403b3..96f7ab847d05f461d4771a3fefbd32cab6366afa 100644
|
||||
index 0e066782ee09bb5626715bcc500bc04f2252bc2e..00f9553c5c653517b3e0c1c7d6b2ec4b7bd34b59 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java
|
||||
@@ -175,7 +175,13 @@ public class MushroomCow extends Cow implements Shearable {
|
||||
@@ -187,7 +187,13 @@ public class MushroomCow extends Cow implements Shearable {
|
||||
|
||||
entitycow.moveTo(this.getX(), this.getY(), this.getZ(), this.getYRot(), this.getXRot());
|
||||
entitycow.setHealth(this.getHealth());
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Pigs give saddle back
|
||||
|
||||
|
||||
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 2c95b6eddfe46e5d2ad495bfc86ccc24ae75e704..8a99b04e8179a640a289c4853777aa88c725216a 100644
|
||||
index 80c8ceda47bf8b3ff370f89a61aa01869d606ee6..ff3f8ba62eb086fbb007853535aafd085578ea21 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Pig.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Pig.java
|
||||
@@ -155,6 +155,18 @@ public class Pig extends Animal implements ItemSteerable, Saddleable {
|
||||
@@ -168,6 +168,18 @@ public class Pig extends Animal implements ItemSteerable, Saddleable {
|
||||
|
||||
if (!flag && this.isSaddled() && !this.isVehicle() && !player.isSecondaryUseActive()) {
|
||||
if (!this.level.isClientSide) {
|
||||
@@ -28,7 +28,7 @@ index 2c95b6eddfe46e5d2ad495bfc86ccc24ae75e704..8a99b04e8179a640a289c4853777aa88
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index e9a00422f9952c98d04c0cbb2ea32ea6231f50ed..e1da56c301be94c56c8377034ab948a1e4ecd071 100644
|
||||
index 0c7463c1d5c894c2d2bc9b6e422432e086a01446..84521916de0ce95333e95f458aac2a98e2ca1db0 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -433,9 +433,11 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Snowman drop and put back pumpkin
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/SnowGolem.java b/src/main/java/net/minecraft/world/entity/animal/SnowGolem.java
|
||||
index 2631f08496c8e45874b22760b559a91b7b2bf415..226cadfc5f109b8f5060b5147034ac273f14133d 100644
|
||||
index a76f3c1c409dc96f7033be8a7eeb06617053735b..06b6afe0724b2738b350cc671bb3cb2570b1dbad 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/SnowGolem.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/SnowGolem.java
|
||||
@@ -164,6 +164,14 @@ public class SnowGolem extends AbstractGolem implements Shearable, RangedAttackM
|
||||
@@ -179,6 +179,14 @@ public class SnowGolem extends AbstractGolem implements Shearable, RangedAttackM
|
||||
}
|
||||
|
||||
return InteractionResult.sidedSuccess(this.level.isClientSide);
|
||||
@@ -19,11 +19,11 @@ index 2631f08496c8e45874b22760b559a91b7b2bf415..226cadfc5f109b8f5060b5147034ac27
|
||||
+ itemstack.shrink(1);
|
||||
+ }
|
||||
+ return InteractionResult.SUCCESS;
|
||||
+ // Purpur end
|
||||
+ // Purpur end
|
||||
} else {
|
||||
return InteractionResult.PASS;
|
||||
return tryRide(player, hand); // Purpur
|
||||
}
|
||||
@@ -174,6 +182,7 @@ public class SnowGolem extends AbstractGolem implements Shearable, RangedAttackM
|
||||
@@ -189,6 +197,7 @@ public class SnowGolem extends AbstractGolem implements Shearable, RangedAttackM
|
||||
this.level.playSound((Player) null, (Entity) this, SoundEvents.SNOW_GOLEM_SHEAR, shearedSoundCategory, 1.0F, 1.0F);
|
||||
if (!this.level.isClientSide()) {
|
||||
this.setPumpkin(false);
|
||||
@@ -32,7 +32,7 @@ index 2631f08496c8e45874b22760b559a91b7b2bf415..226cadfc5f109b8f5060b5147034ac27
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index e1da56c301be94c56c8377034ab948a1e4ecd071..4b039c4cd94c2ea1a61452530ca200d10829c166 100644
|
||||
index 84521916de0ce95333e95f458aac2a98e2ca1db0..6759bc46553d6fedb90597d73935d6255dbe5240 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -546,10 +546,14 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Ender dragon always drop full exp
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
|
||||
index c98202092752a9015aaf95bd1471135b88e84425..682b532967a501e21df93c28c4ee4b59eed073a7 100644
|
||||
index a1a64591e6a6fb8a4550b91f89e3cdbd35c6d249..3fd2d29e756d35a25e0cdd2ef10a5f1f48c230c0 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
|
||||
@@ -633,7 +633,7 @@ public class EnderDragon extends Mob implements Enemy {
|
||||
@@ -704,7 +704,7 @@ public class EnderDragon extends Mob implements Enemy {
|
||||
boolean flag = this.level.getGameRules().getBoolean(GameRules.RULE_DOMOBLOOT);
|
||||
short short0 = 500;
|
||||
|
||||
@@ -18,7 +18,7 @@ index c98202092752a9015aaf95bd1471135b88e84425..682b532967a501e21df93c28c4ee4b59
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 4b039c4cd94c2ea1a61452530ca200d10829c166..190c1d8878eb4d533d31c6b803b951cdf9747450 100644
|
||||
index 6759bc46553d6fedb90597d73935d6255dbe5240..6d88e8011add9c54470ab122aee325764e22bb2f 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -233,10 +233,12 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -17,10 +17,10 @@ index 033d6389e4b7d986fc63abd67e325b68a6132824..f290c7b50c48b798697c49c738700457
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 4d9c39e78f26ffb43d36a8c729bfd4ed136ff619..23b2895a3dd3e4d242ce11f89d4dad1c05e606fc 100644
|
||||
index b811b3db05e1bcc0fe5d641c6fa81cb4b1db9186..aa6e3b192fe80339df00c909d101449023d8f71f 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -745,9 +745,11 @@ public class PurpurWorldConfig {
|
||||
@@ -747,9 +747,11 @@ public class PurpurWorldConfig {
|
||||
|
||||
public boolean witherSkeletonRidable = false;
|
||||
public boolean witherSkeletonRidableInWater = false;
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add enderman and creeper griefing controls
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/Creeper.java b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
index 27d8279b71f55ae711b0455bb4c5f1527a0e1ccb..689efb1a80a93d573cb109905105434281eba7d3 100644
|
||||
index f8fba694d53356036e302f66cfe92b15726242dc..72edd66a7e0b46b9575982210d8c9af03310c8d2 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/Creeper.java
|
||||
@@ -270,7 +270,7 @@ public class Creeper extends Monster implements PowerableMob {
|
||||
@@ -336,7 +336,7 @@ public class Creeper extends Monster implements PowerableMob {
|
||||
|
||||
public void explodeCreeper() {
|
||||
if (!this.level.isClientSide) {
|
||||
@@ -38,7 +38,7 @@ index a39f4a1585ba888d27588a86130f6dae24f5a71b..b9cc542db0b5b9f7710c2f747cb9a4ed
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index c828459bc986aace14516985bc82f170bf34884c..60ea12540d41e6df52f2cf1f076c442501619148 100644
|
||||
index 7be145b284b0e618e9f52645a1e81c30e91ed186..f9756ee33ccfb011bda5c8b923d237d43e3a4093 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -284,10 +284,12 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -184,7 +184,7 @@ index 233b390541acddcf815db4a8f299496eaea4f758..a50191aac887dffd3a7930455cb222fa
|
||||
public void setPersistentAngerTarget(@Nullable UUID uuid) {
|
||||
this.persistentAngerTarget = uuid;
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index aa984c2eebf2529e0be42b01ec7678d1f5157e0d..e39e1ff19f49b093ae27a98cba280ad2643df7a2 100644
|
||||
index 0453764a9b47e3997aa32cda489e7f71d94b7e04..87f9ad516e8dd0c92b08c9054e086d8315c87c41 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -399,9 +399,15 @@ public class PurpurWorldConfig {
|
||||
@@ -219,7 +219,7 @@ index aa984c2eebf2529e0be42b01ec7678d1f5157e0d..e39e1ff19f49b093ae27a98cba280ad2
|
||||
}
|
||||
|
||||
public boolean illusionerRidable = false;
|
||||
@@ -877,9 +889,15 @@ public class PurpurWorldConfig {
|
||||
@@ -879,9 +891,15 @@ public class PurpurWorldConfig {
|
||||
|
||||
public boolean zombieRidable = false;
|
||||
public boolean zombieRidableInWater = false;
|
||||
@@ -235,7 +235,7 @@ index aa984c2eebf2529e0be42b01ec7678d1f5157e0d..e39e1ff19f49b093ae27a98cba280ad2
|
||||
}
|
||||
|
||||
public boolean zombieHorseRidableInWater = false;
|
||||
@@ -893,15 +911,27 @@ public class PurpurWorldConfig {
|
||||
@@ -895,15 +913,27 @@ public class PurpurWorldConfig {
|
||||
|
||||
public boolean zombieVillagerRidable = false;
|
||||
public boolean zombieVillagerRidableInWater = false;
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add option to disable dolphin treasure searching
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Dolphin.java b/src/main/java/net/minecraft/world/entity/animal/Dolphin.java
|
||||
index f3093815066e6881a2bb638ae4643f69374450b3..868a44fa2c54c43ed3dc3e3c346810588081ec1d 100644
|
||||
index 2300abc4e80449e6b92992f6fb8cfe8e99dea351..12a602a4a3b3e883ed04621fe627feb146f8afb9 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Dolphin.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Dolphin.java
|
||||
@@ -417,6 +417,7 @@ public class Dolphin extends WaterAnimal {
|
||||
@@ -492,6 +492,7 @@ public class Dolphin extends WaterAnimal {
|
||||
|
||||
@Override
|
||||
public boolean canUse() {
|
||||
@@ -17,7 +17,7 @@ index f3093815066e6881a2bb638ae4643f69374450b3..868a44fa2c54c43ed3dc3e3c34681058
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 8797f781b97cece949dfb1014470f164503e61c4..5bead011214ca37dc59efafce845285ab07c409e 100644
|
||||
index fff9679bfc715e8df5f88c2850c9623e1eef270f..1ca413f7a6cc2d445a2b026e7266919880692575 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -465,11 +465,13 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Stop squids floating on top of water
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index 3eebc432befec2223e487a6bd48f30d2160feb0a..1950cd258f69f9c9430cda9ddd479277cc0fb6c9 100644
|
||||
index 73d1efb6eb6a96368db57f316867cfc027159056..f9d8d5ef1ca960324351fa1151f79906950845b3 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -3632,11 +3632,17 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n
|
||||
@@ -28,32 +28,22 @@ index 3eebc432befec2223e487a6bd48f30d2160feb0a..1950cd258f69f9c9430cda9ddd479277
|
||||
int j = Mth.ceil(axisalignedbb.maxX);
|
||||
int k = Mth.floor(axisalignedbb.minY);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/Squid.java b/src/main/java/net/minecraft/world/entity/animal/Squid.java
|
||||
index 56838c9f214c0f75041e75c45ad1a0c72fcacc66..8c9454612e71f1d1a82c6a13c7788dd9b892fedc 100644
|
||||
index 0a744855f24ac54b22bc474a1c903da7af656364..d6e35d1fec3eee80a7eafaa1997fee16f6ef5d04 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/Squid.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/Squid.java
|
||||
@@ -29,6 +29,7 @@ import net.minecraft.world.level.Level;
|
||||
import net.minecraft.world.level.LevelAccessor;
|
||||
import net.minecraft.world.level.block.state.BlockState;
|
||||
import net.minecraft.world.level.material.FluidState;
|
||||
+import net.minecraft.world.phys.AABB;
|
||||
import net.minecraft.world.phys.Vec3;
|
||||
|
||||
public class Squid extends WaterAnimal {
|
||||
@@ -54,6 +55,14 @@ public class Squid extends WaterAnimal {
|
||||
this.tentacleSpeed = 1.0F / (this.random.nextFloat() + 1.0F) * 0.2F;
|
||||
@@ -74,6 +74,12 @@ public class Squid extends WaterAnimal {
|
||||
vector.setX(cos * x - sine * z);
|
||||
vector.setZ(sine * x + cos * z);
|
||||
}
|
||||
|
||||
+ // Purpur start
|
||||
+
|
||||
+ @Override
|
||||
+ public AABB getAxisForFluidCheck() {
|
||||
+ public net.minecraft.world.phys.AABB getAxisForFluidCheck() {
|
||||
+ // Stops squids from floating just over the water
|
||||
+ return this.getBoundingBox().deflate(0.001D).offsetY(level.purpurConfig.squidOffsetWaterCheck);
|
||||
+ }
|
||||
+ // Purpur end
|
||||
+
|
||||
// Purpur end
|
||||
|
||||
@Override
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(0, new Squid.SquidRandomMovementGoal(this));
|
||||
diff --git a/src/main/java/net/minecraft/world/phys/AABB.java b/src/main/java/net/minecraft/world/phys/AABB.java
|
||||
index 4eeb186231551a9df453ec9d6a8a9dc9f8835464..1e184724e112b28ff4abb6ecf5d564c260e795ba 100644
|
||||
--- a/src/main/java/net/minecraft/world/phys/AABB.java
|
||||
@@ -70,7 +60,7 @@ index 4eeb186231551a9df453ec9d6a8a9dc9f8835464..1e184724e112b28ff4abb6ecf5d564c2
|
||||
+ // Purpur
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 5bead011214ca37dc59efafce845285ab07c409e..a339f842ec00253adc668fbb2b65c0513f23163a 100644
|
||||
index 1ca413f7a6cc2d445a2b026e7266919880692575..6e33bee4f01138bc0b553a318e87e3b6c6e0966d 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -871,9 +871,11 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -6,24 +6,22 @@ Subject: [PATCH] Customizable wither health and healing
|
||||
Adds the ability to customize the health of the wither, as well as the amount that it heals, and how often.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
|
||||
index 1c8f6863b976cfcb559de9b3e3cf9292831166ee..7858e97db83085721310f7c9e35abe0b944b3b1f 100644
|
||||
index 0b1f6fad51a985ebe4ccebde12a1db9e12a57bc0..a91480bfecd17ef45e3380c726a42cd7534f07ae 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
|
||||
@@ -97,6 +97,13 @@ public class WitherBoss extends Monster implements PowerableMob, RangedAttackMob
|
||||
this.xpReward = 50;
|
||||
@@ -196,6 +196,11 @@ public class WitherBoss extends Monster implements PowerableMob, RangedAttackMob
|
||||
skull.setPosRaw(headX, headY, headZ);
|
||||
level.addFreshEntity(skull);
|
||||
}
|
||||
|
||||
+ // Purpur start
|
||||
+
|
||||
+ @Override
|
||||
+ public void initAttributes() {
|
||||
+ this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(level.purpurConfig.witherMaxHealth);
|
||||
+ }
|
||||
+ // Purpur end
|
||||
+
|
||||
// Purpur end
|
||||
|
||||
@Override
|
||||
protected void registerGoals() {
|
||||
this.goalSelector.addGoal(0, new WitherBoss.WitherDoNothingGoal());
|
||||
@@ -288,7 +295,7 @@ public class WitherBoss extends Monster implements PowerableMob, RangedAttackMob
|
||||
@@ -401,7 +406,7 @@ public class WitherBoss extends Monster implements PowerableMob, RangedAttackMob
|
||||
|
||||
this.setInvulnerableTicks(i);
|
||||
if (this.tickCount % 10 == 0) {
|
||||
@@ -32,7 +30,7 @@ index 1c8f6863b976cfcb559de9b3e3cf9292831166ee..7858e97db83085721310f7c9e35abe0b
|
||||
}
|
||||
|
||||
} else {
|
||||
@@ -381,8 +388,10 @@ public class WitherBoss extends Monster implements PowerableMob, RangedAttackMob
|
||||
@@ -494,8 +499,10 @@ public class WitherBoss extends Monster implements PowerableMob, RangedAttackMob
|
||||
}
|
||||
}
|
||||
|
||||
@@ -46,19 +44,20 @@ index 1c8f6863b976cfcb559de9b3e3cf9292831166ee..7858e97db83085721310f7c9e35abe0b
|
||||
|
||||
this.bossEvent.setProgress(this.getHealth() / this.getMaxHealth());
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index a6a6b766b5dc5b3743aecd0a2c8021d04df1d8d2..2681463ae89ea4e0746425114feb24aed0f34cb3 100644
|
||||
index ae46aafd1a19e183e9a77fec8c0556a35c70c521..be3b2cc6fb2f8f01e38fb4a47324c825fee2aee7 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -992,9 +992,20 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -993,10 +993,21 @@ public class PurpurWorldConfig {
|
||||
public boolean witherRidable = false;
|
||||
public boolean witherRidableInWater = false;
|
||||
public double witherMaxY = 256D;
|
||||
+ public float witherHealthRegenAmount = 1.0f;
|
||||
+ public int witherHealthRegenDelay = 20;
|
||||
+ public double witherMaxHealth = 300.0D;
|
||||
private void witherSettings() {
|
||||
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
|
||||
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
|
||||
witherMaxY = getDouble("mobs.wither.ridable-max-y", witherMaxY);
|
||||
+ witherHealthRegenAmount = (float) getDouble("mobs.wither.health-regen-amount", witherHealthRegenAmount);
|
||||
+ witherHealthRegenDelay = getInt("mobs.wither.health-regen-delay", witherHealthRegenDelay);
|
||||
+ if (PurpurConfig.version < 8) {
|
||||
|
||||
@@ -71,10 +71,10 @@ index 747f872e0c9eef620f7713e674304e8f47738b1c..0f0df28c0d382cca5dc0556e03d7d465
|
||||
this.targetSelector.addGoal(5, new NearestAttackableTargetGoal<>(this, Turtle.class, 10, true, false, Turtle.BABY_ON_LAND_SELECTOR));
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 53bda6f49386eb606ca259519f1494e3c5f144a5..cd1373f113f434aa0d3d3ea07096095dc99dbc18 100644
|
||||
index 1d55be36c8d075b48db1862e63bc28bbabad3a18..2c963f72caff78488ceb2a43abbad18013e1433f 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1093,12 +1093,14 @@ public class PurpurWorldConfig {
|
||||
@@ -1095,12 +1095,14 @@ public class PurpurWorldConfig {
|
||||
public boolean zombieJockeyOnlyBaby = true;
|
||||
public double zombieJockeyChance = 0.05D;
|
||||
public boolean zombieJockeyTryExistingChickens = true;
|
||||
|
||||
Reference in New Issue
Block a user