mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
Add RidableMoveEvent
This commit is contained in:
@@ -16,6 +16,114 @@ index 83c51bb5e..177143c97 100644
|
||||
+ GoalKey<AbstractHorse> HORSE_HAS_RIDER = GoalKey.of(AbstractHorse.class, NamespacedKey.minecraft("horse_has_rider"));
|
||||
// Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/event/entity/RidableMoveEvent.java b/src/main/java/net/pl3x/purpur/event/entity/RidableMoveEvent.java
|
||||
new file mode 100644
|
||||
index 000000000..31954a9b0
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/net/pl3x/purpur/event/entity/RidableMoveEvent.java
|
||||
@@ -0,0 +1,102 @@
|
||||
+package net.pl3x.purpur.event.entity;
|
||||
+
|
||||
+import com.google.common.base.Preconditions;
|
||||
+import org.bukkit.Location;
|
||||
+import org.bukkit.entity.Mob;
|
||||
+import org.bukkit.entity.Player;
|
||||
+import org.bukkit.event.Cancellable;
|
||||
+import org.bukkit.event.HandlerList;
|
||||
+import org.bukkit.event.entity.EntityEvent;
|
||||
+import org.jetbrains.annotations.NotNull;
|
||||
+
|
||||
+/**
|
||||
+ * Triggered when a ridable mob moves with a rider
|
||||
+ */
|
||||
+public class RidableMoveEvent extends EntityEvent implements Cancellable {
|
||||
+ private static final HandlerList handlers = new HandlerList();
|
||||
+ private boolean canceled;
|
||||
+ private final Player rider;
|
||||
+ private Location from;
|
||||
+ private Location to;
|
||||
+
|
||||
+ public RidableMoveEvent(@NotNull Mob entity, @NotNull Player rider, @NotNull Location from, @NotNull Location to) {
|
||||
+ super(entity);
|
||||
+ this.rider = rider;
|
||||
+ this.from = from;
|
||||
+ this.to = to;
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ @NotNull
|
||||
+ public Mob getEntity() {
|
||||
+ return (Mob) entity;
|
||||
+ }
|
||||
+
|
||||
+ public Player getRider() {
|
||||
+ return rider;
|
||||
+ }
|
||||
+
|
||||
+ public boolean isCancelled() {
|
||||
+ return canceled;
|
||||
+ }
|
||||
+
|
||||
+ public void setCancelled(boolean cancel) {
|
||||
+ canceled = cancel;
|
||||
+ }
|
||||
+
|
||||
+ /**
|
||||
+ * Gets the location this entity moved from
|
||||
+ *
|
||||
+ * @return Location the entity moved from
|
||||
+ */
|
||||
+ @NotNull
|
||||
+ public Location getFrom() {
|
||||
+ return from;
|
||||
+ }
|
||||
+
|
||||
+ /**
|
||||
+ * Sets the location to mark as where the entity moved from
|
||||
+ *
|
||||
+ * @param from New location to mark as the entity's previous location
|
||||
+ */
|
||||
+ public void setFrom(@NotNull Location from) {
|
||||
+ validateLocation(from);
|
||||
+ this.from = from;
|
||||
+ }
|
||||
+
|
||||
+ /**
|
||||
+ * Gets the location this entity moved to
|
||||
+ *
|
||||
+ * @return Location the entity moved to
|
||||
+ */
|
||||
+ @NotNull
|
||||
+ public Location getTo() {
|
||||
+ return to;
|
||||
+ }
|
||||
+
|
||||
+ /**
|
||||
+ * Sets the location that this entity will move to
|
||||
+ *
|
||||
+ * @param to New Location this entity will move to
|
||||
+ */
|
||||
+ public void setTo(@NotNull Location to) {
|
||||
+ validateLocation(to);
|
||||
+ this.to = to;
|
||||
+ }
|
||||
+
|
||||
+ private void validateLocation(@NotNull Location loc) {
|
||||
+ Preconditions.checkArgument(loc != null, "Cannot use null location!");
|
||||
+ Preconditions.checkArgument(loc.getWorld() != null, "Cannot use null location with null world!");
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ @NotNull
|
||||
+ public HandlerList getHandlers() {
|
||||
+ return handlers;
|
||||
+ }
|
||||
+
|
||||
+ @NotNull
|
||||
+ public static HandlerList getHandlerList() {
|
||||
+ return handlers;
|
||||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/event/entity/RidableSpacebarEvent.java b/src/main/java/net/pl3x/purpur/event/entity/RidableSpacebarEvent.java
|
||||
new file mode 100644
|
||||
index 000000000..c0ec5a130
|
||||
@@ -60,7 +168,7 @@ index 000000000..c0ec5a130
|
||||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java
|
||||
index 4d1970bec..81fa4a12b 100644
|
||||
index ff2e4fc8a..cd209dcfb 100644
|
||||
--- a/src/main/java/org/bukkit/entity/Entity.java
|
||||
+++ b/src/main/java/org/bukkit/entity/Entity.java
|
||||
@@ -696,4 +696,35 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Ridables
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/AttributeDefaults.java b/src/main/java/net/minecraft/server/AttributeDefaults.java
|
||||
index 8f95a4e49..ab05b5e40 100644
|
||||
index 8f95a4e497..ab05b5e403 100644
|
||||
--- a/src/main/java/net/minecraft/server/AttributeDefaults.java
|
||||
+++ b/src/main/java/net/minecraft/server/AttributeDefaults.java
|
||||
@@ -9,7 +9,80 @@ import org.apache.logging.log4j.Logger;
|
||||
@@ -91,7 +91,7 @@ index 8f95a4e49..ab05b5e40 100644
|
||||
public static AttributeProvider a(EntityTypes<? extends EntityLiving> entitytypes) {
|
||||
return (AttributeProvider) AttributeDefaults.b.get(entitytypes);
|
||||
diff --git a/src/main/java/net/minecraft/server/AttributeProvider.java b/src/main/java/net/minecraft/server/AttributeProvider.java
|
||||
index dd235a6fc..ac902c614 100644
|
||||
index dd235a6fc4..ac902c614d 100644
|
||||
--- a/src/main/java/net/minecraft/server/AttributeProvider.java
|
||||
+++ b/src/main/java/net/minecraft/server/AttributeProvider.java
|
||||
@@ -101,6 +101,7 @@ public class AttributeProvider {
|
||||
@@ -103,7 +103,7 @@ index dd235a6fc..ac902c614 100644
|
||||
this.b = true;
|
||||
return new AttributeProvider(this.a);
|
||||
diff --git a/src/main/java/net/minecraft/server/ControllerLookDolphin.java b/src/main/java/net/minecraft/server/ControllerLookDolphin.java
|
||||
index e5bdddfc1..8200ba60b 100644
|
||||
index e5bdddfc14..8200ba60b7 100644
|
||||
--- a/src/main/java/net/minecraft/server/ControllerLookDolphin.java
|
||||
+++ b/src/main/java/net/minecraft/server/ControllerLookDolphin.java
|
||||
@@ -1,6 +1,6 @@
|
||||
@@ -124,7 +124,7 @@ index e5bdddfc1..8200ba60b 100644
|
||||
this.d = false;
|
||||
this.a.aC = this.a(this.a.aC, this.h() + 20.0F, this.b);
|
||||
diff --git a/src/main/java/net/minecraft/server/ControllerMove.java b/src/main/java/net/minecraft/server/ControllerMove.java
|
||||
index 8f9fb058c..eaf446946 100644
|
||||
index 8f9fb058c1..eaf4469468 100644
|
||||
--- a/src/main/java/net/minecraft/server/ControllerMove.java
|
||||
+++ b/src/main/java/net/minecraft/server/ControllerMove.java
|
||||
@@ -6,9 +6,9 @@ public class ControllerMove {
|
||||
@@ -141,7 +141,7 @@ index 8f9fb058c..eaf446946 100644
|
||||
|
||||
public ControllerMove(EntityInsentient entityinsentient) {
|
||||
diff --git a/src/main/java/net/minecraft/server/DamageSource.java b/src/main/java/net/minecraft/server/DamageSource.java
|
||||
index bd0267ee4..8b36ac2b0 100644
|
||||
index bd0267ee4b..8b36ac2b09 100644
|
||||
--- a/src/main/java/net/minecraft/server/DamageSource.java
|
||||
+++ b/src/main/java/net/minecraft/server/DamageSource.java
|
||||
@@ -56,6 +56,7 @@ public class DamageSource {
|
||||
@@ -161,7 +161,7 @@ index bd0267ee4..8b36ac2b0 100644
|
||||
this.B = true;
|
||||
return this;
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index d76a93dc1..e80099249 100644
|
||||
index d76a93dc14..e800992497 100644
|
||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||
@@ -80,7 +80,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
||||
@@ -327,7 +327,7 @@ index d76a93dc1..e80099249 100644
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityBat.java b/src/main/java/net/minecraft/server/EntityBat.java
|
||||
index 85371542e..a031f8778 100644
|
||||
index 85371542e4..a031f8778c 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityBat.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityBat.java
|
||||
@@ -14,9 +14,48 @@ public class EntityBat extends EntityAmbient {
|
||||
@@ -403,7 +403,7 @@ index 85371542e..a031f8778 100644
|
||||
BlockPosition blockposition = this.getChunkCoordinates();
|
||||
BlockPosition blockposition1 = blockposition.up();
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityBee.java b/src/main/java/net/minecraft/server/EntityBee.java
|
||||
index f73641ddb..d8354ec4d 100644
|
||||
index f73641ddb3..d8354ec4d1 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityBee.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityBee.java
|
||||
@@ -37,6 +37,7 @@ public class EntityBee extends EntityAnimal implements IEntityAngerable, EntityB
|
||||
@@ -534,7 +534,7 @@ index f73641ddb..d8354ec4d 100644
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityBlaze.java b/src/main/java/net/minecraft/server/EntityBlaze.java
|
||||
index 74082136b..dcfad16e0 100644
|
||||
index 74082136b3..dcfad16e06 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityBlaze.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityBlaze.java
|
||||
@@ -10,6 +10,7 @@ public class EntityBlaze extends EntityMonster {
|
||||
@@ -614,7 +614,7 @@ index 74082136b..dcfad16e0 100644
|
||||
if (this.c <= 0) {
|
||||
this.c = 100;
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityCat.java b/src/main/java/net/minecraft/server/EntityCat.java
|
||||
index 57166a543..05929d5c5 100644
|
||||
index 57166a543a..05929d5c53 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityCat.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityCat.java
|
||||
@@ -41,6 +41,25 @@ public class EntityCat extends EntityTameableAnimal {
|
||||
@@ -694,7 +694,7 @@ index 57166a543..05929d5c5 100644
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityCaveSpider.java b/src/main/java/net/minecraft/server/EntityCaveSpider.java
|
||||
index 776f3d25a..2e1f2dec1 100644
|
||||
index 776f3d25a6..2e1f2dec17 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityCaveSpider.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityCaveSpider.java
|
||||
@@ -8,6 +8,18 @@ public class EntityCaveSpider extends EntitySpider {
|
||||
@@ -717,7 +717,7 @@ index 776f3d25a..2e1f2dec1 100644
|
||||
return EntitySpider.eK().a(GenericAttributes.MAX_HEALTH, 12.0D);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityChicken.java b/src/main/java/net/minecraft/server/EntityChicken.java
|
||||
index 11a612fa3..a16ecd7ed 100644
|
||||
index 11a612fa39..a16ecd7edc 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityChicken.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityChicken.java
|
||||
@@ -18,6 +18,16 @@ public class EntityChicken extends EntityAnimal {
|
||||
@@ -754,7 +754,7 @@ index 11a612fa3..a16ecd7ed 100644
|
||||
} else {
|
||||
this.goalSelector.a(1, new PathfinderGoalPanic(this, 1.4D));
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityCod.java b/src/main/java/net/minecraft/server/EntityCod.java
|
||||
index 9a99af6e9..039fae4c2 100644
|
||||
index 9a99af6e9c..039fae4c29 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityCod.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityCod.java
|
||||
@@ -6,6 +6,18 @@ public class EntityCod extends EntityFishSchool {
|
||||
@@ -777,7 +777,7 @@ index 9a99af6e9..039fae4c2 100644
|
||||
protected ItemStack eK() {
|
||||
return new ItemStack(Items.COD_BUCKET);
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityComplexPart.java b/src/main/java/net/minecraft/server/EntityComplexPart.java
|
||||
index c1b1bd123..26ff230ef 100644
|
||||
index c1b1bd123e..26ff230ef7 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityComplexPart.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityComplexPart.java
|
||||
@@ -47,4 +47,11 @@ public class EntityComplexPart extends Entity {
|
||||
@@ -793,7 +793,7 @@ index c1b1bd123..26ff230ef 100644
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityCow.java b/src/main/java/net/minecraft/server/EntityCow.java
|
||||
index cfb009c81..1219b0aa9 100644
|
||||
index cfb009c811..1219b0aa9c 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityCow.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityCow.java
|
||||
@@ -11,9 +11,22 @@ public class EntityCow extends EntityAnimal {
|
||||
@@ -877,7 +877,7 @@ index cfb009c81..1219b0aa9 100644
|
||||
this.world.addEntity(mooshroom);
|
||||
this.die();
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityCreeper.java b/src/main/java/net/minecraft/server/EntityCreeper.java
|
||||
index 2256b8162..d186f257f 100644
|
||||
index 2256b81624..d186f257fa 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityCreeper.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityCreeper.java
|
||||
@@ -18,12 +18,27 @@ public class EntityCreeper extends EntityMonster {
|
||||
@@ -995,7 +995,7 @@ index 2256b8162..d186f257f 100644
|
||||
}
|
||||
// Paper end
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityDolphin.java b/src/main/java/net/minecraft/server/EntityDolphin.java
|
||||
index 664f96933..9d5d143a9 100644
|
||||
index 664f969336..9d5d143a99 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityDolphin.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityDolphin.java
|
||||
@@ -17,6 +17,7 @@ public class EntityDolphin extends EntityWaterAnimal {
|
||||
@@ -1128,7 +1128,7 @@ index 664f96933..9d5d143a9 100644
|
||||
this.i.setMot(this.i.getMot().add(0.0D, 0.005D, 0.0D));
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityDrowned.java b/src/main/java/net/minecraft/server/EntityDrowned.java
|
||||
index 1a1028169..125eab60f 100644
|
||||
index 1a10281692..125eab60f2 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityDrowned.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityDrowned.java
|
||||
@@ -22,6 +22,16 @@ public class EntityDrowned extends EntityZombie implements IRangedEntity {
|
||||
@@ -1184,7 +1184,7 @@ index 1a1028169..125eab60f 100644
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityEnderDragon.java b/src/main/java/net/minecraft/server/EntityEnderDragon.java
|
||||
index d2fcd0bc1..fd1e966d1 100644
|
||||
index d2fcd0bc16..fd1e966d1a 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityEnderDragon.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityEnderDragon.java
|
||||
@@ -46,6 +46,7 @@ public class EntityEnderDragon extends EntityInsentient implements IMonster {
|
||||
@@ -1334,7 +1334,7 @@ index d2fcd0bc1..fd1e966d1 100644
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityEnderman.java b/src/main/java/net/minecraft/server/EntityEnderman.java
|
||||
index e33640326..995849212 100644
|
||||
index e336403266..995849212c 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityEnderman.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityEnderman.java
|
||||
@@ -30,9 +30,22 @@ public class EntityEnderman extends EntityMonster implements IEntityAngerable {
|
||||
@@ -1402,7 +1402,7 @@ index e33640326..995849212 100644
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityEndermite.java b/src/main/java/net/minecraft/server/EntityEndermite.java
|
||||
index fcebf3631..7eef7f523 100644
|
||||
index fcebf36312..7eef7f523a 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityEndermite.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityEndermite.java
|
||||
@@ -12,14 +12,28 @@ public class EntityEndermite extends EntityMonster {
|
||||
@@ -1436,7 +1436,7 @@ index fcebf3631..7eef7f523 100644
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityEvoker.java b/src/main/java/net/minecraft/server/EntityEvoker.java
|
||||
index f40fbef32..c75dc7561 100644
|
||||
index f40fbef32f..c75dc75611 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityEvoker.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityEvoker.java
|
||||
@@ -12,10 +12,23 @@ public class EntityEvoker extends EntityIllagerWizard {
|
||||
@@ -1496,7 +1496,7 @@ index f40fbef32..c75dc7561 100644
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityFish.java b/src/main/java/net/minecraft/server/EntityFish.java
|
||||
index 9b8456440..668f9d61b 100644
|
||||
index 9b84564401..668f9d61b7 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityFish.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityFish.java
|
||||
@@ -70,13 +70,12 @@ public abstract class EntityFish extends EntityWaterAnimal {
|
||||
@@ -1558,7 +1558,7 @@ index 9b8456440..668f9d61b 100644
|
||||
this.i.setMot(this.i.getMot().add(0.0D, 0.005D, 0.0D));
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityFishSchool.java b/src/main/java/net/minecraft/server/EntityFishSchool.java
|
||||
index 08372b722..6a8e15f01 100644
|
||||
index 08372b7226..6a8e15f016 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityFishSchool.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityFishSchool.java
|
||||
@@ -16,7 +16,7 @@ public abstract class EntityFishSchool extends EntityFish {
|
||||
@@ -1571,7 +1571,7 @@ index 08372b722..6a8e15f01 100644
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityFox.java b/src/main/java/net/minecraft/server/EntityFox.java
|
||||
index 8845afd83..f5defe471 100644
|
||||
index 8845afd83d..f5defe4713 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityFox.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityFox.java
|
||||
@@ -55,6 +55,39 @@ public class EntityFox extends EntityAnimal {
|
||||
@@ -1695,7 +1695,7 @@ index 8845afd83..f5defe471 100644
|
||||
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityGhast.java b/src/main/java/net/minecraft/server/EntityGhast.java
|
||||
index a67611c4f..216506a7b 100644
|
||||
index a67611c4f9..216506a7b1 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityGhast.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityGhast.java
|
||||
@@ -14,11 +14,42 @@ public class EntityGhast extends EntityFlying implements IMonster {
|
||||
@@ -1769,7 +1769,7 @@ index a67611c4f..216506a7b 100644
|
||||
if (this.j-- <= 0) {
|
||||
this.j += this.i.getRandom().nextInt(5) + 2;
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityGiantZombie.java b/src/main/java/net/minecraft/server/EntityGiantZombie.java
|
||||
index 8dce2aad7..2c0a696b8 100644
|
||||
index 8dce2aad77..2c0a696b8d 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityGiantZombie.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityGiantZombie.java
|
||||
@@ -11,16 +11,28 @@ public class EntityGiantZombie extends EntityMonster {
|
||||
@@ -1802,7 +1802,7 @@ index 8dce2aad7..2c0a696b8 100644
|
||||
this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true));
|
||||
this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityVillager.class, false));
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityGuardian.java b/src/main/java/net/minecraft/server/EntityGuardian.java
|
||||
index 27ec46c0b..0a7f51a2a 100644
|
||||
index 27ec46c0b2..0a7f51a2a1 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityGuardian.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityGuardian.java
|
||||
@@ -24,15 +24,36 @@ public class EntityGuardian extends EntityMonster {
|
||||
@@ -1898,7 +1898,7 @@ index 27ec46c0b..0a7f51a2a 100644
|
||||
Vec3D vec3d = new Vec3D(this.b - this.i.locX(), this.c - this.i.locY(), this.d - this.i.locZ());
|
||||
double d0 = vec3d.f();
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityGuardianElder.java b/src/main/java/net/minecraft/server/EntityGuardianElder.java
|
||||
index b691e8449..f6f882746 100644
|
||||
index b691e84495..f6f8827469 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityGuardianElder.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityGuardianElder.java
|
||||
@@ -16,6 +16,18 @@ public class EntityGuardianElder extends EntityGuardian {
|
||||
@@ -1921,7 +1921,7 @@ index b691e8449..f6f882746 100644
|
||||
return EntityGuardian.eM().a(GenericAttributes.MOVEMENT_SPEED, 0.30000001192092896D).a(GenericAttributes.ATTACK_DAMAGE, 8.0D).a(GenericAttributes.MAX_HEALTH, 80.0D);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityHoglin.java b/src/main/java/net/minecraft/server/EntityHoglin.java
|
||||
index f67979253..548ff4449 100644
|
||||
index f679792536..548ff4449f 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityHoglin.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityHoglin.java
|
||||
@@ -13,13 +13,25 @@ public class EntityHoglin extends EntityAnimal implements IMonster, IOglin {
|
||||
@@ -1978,7 +1978,7 @@ index f67979253..548ff4449 100644
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityHorse.java b/src/main/java/net/minecraft/server/EntityHorse.java
|
||||
index e0e60bb6d..0415a4d1f 100644
|
||||
index e0e60bb6d8..0415a4d1f3 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityHorse.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityHorse.java
|
||||
@@ -12,6 +12,13 @@ public class EntityHorse extends EntityHorseAbstract {
|
||||
@@ -1996,7 +1996,7 @@ index e0e60bb6d..0415a4d1f 100644
|
||||
protected void eK() {
|
||||
this.getAttributeInstance(GenericAttributes.MAX_HEALTH).setValue((double) this.fp());
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityHorseAbstract.java b/src/main/java/net/minecraft/server/EntityHorseAbstract.java
|
||||
index 573d4a5c7..4b41a5883 100644
|
||||
index 573d4a5c78..4b41a58833 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityHorseAbstract.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityHorseAbstract.java
|
||||
@@ -39,12 +39,27 @@ public abstract class EntityHorseAbstract extends EntityAnimal implements IInven
|
||||
@@ -2036,7 +2036,7 @@ index 573d4a5c7..4b41a5883 100644
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityHorseDonkey.java b/src/main/java/net/minecraft/server/EntityHorseDonkey.java
|
||||
index 767d18d5a..cb8aee569 100644
|
||||
index 767d18d5a0..cb8aee5691 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityHorseDonkey.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityHorseDonkey.java
|
||||
@@ -8,6 +8,13 @@ public class EntityHorseDonkey extends EntityHorseChestedAbstract {
|
||||
@@ -2054,7 +2054,7 @@ index 767d18d5a..cb8aee569 100644
|
||||
protected SoundEffect getSoundAmbient() {
|
||||
super.getSoundAmbient();
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityHorseMule.java b/src/main/java/net/minecraft/server/EntityHorseMule.java
|
||||
index 3dd4d4f0f..243aeb736 100644
|
||||
index 3dd4d4f0f3..243aeb736e 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityHorseMule.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityHorseMule.java
|
||||
@@ -8,6 +8,12 @@ public class EntityHorseMule extends EntityHorseChestedAbstract {
|
||||
@@ -2071,7 +2071,7 @@ index 3dd4d4f0f..243aeb736 100644
|
||||
protected SoundEffect getSoundAmbient() {
|
||||
super.getSoundAmbient();
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityHorseSkeleton.java b/src/main/java/net/minecraft/server/EntityHorseSkeleton.java
|
||||
index a53d335f3..e2c6a5807 100644
|
||||
index a53d335f3a..e2c6a5807a 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityHorseSkeleton.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityHorseSkeleton.java
|
||||
@@ -12,6 +12,18 @@ public class EntityHorseSkeleton extends EntityHorseAbstract {
|
||||
@@ -2112,7 +2112,7 @@ index a53d335f3..e2c6a5807 100644
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityHorseZombie.java b/src/main/java/net/minecraft/server/EntityHorseZombie.java
|
||||
index 0e9817360..559ba5097 100644
|
||||
index 0e98173607..559ba50977 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityHorseZombie.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityHorseZombie.java
|
||||
@@ -8,6 +8,18 @@ public class EntityHorseZombie extends EntityHorseAbstract {
|
||||
@@ -2142,7 +2142,7 @@ index 0e9817360..559ba5097 100644
|
||||
+ protected void eV() { if (world.purpurConfig.zombieHorseCanSwim) goalSelector.a(0, new PathfinderGoalFloat(this)); } // Purpur
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java
|
||||
index 75f987411..deb6c9342 100644
|
||||
index 75f9874115..deb6c93426 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityHuman.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityHuman.java
|
||||
@@ -2148,4 +2148,15 @@ public abstract class EntityHuman extends EntityLiving {
|
||||
@@ -2162,7 +2162,7 @@ index 75f987411..deb6c9342 100644
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java b/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java
|
||||
index b6c6b4d54..f5b6d83f8 100644
|
||||
index b6c6b4d54e..f5b6d83f87 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java
|
||||
@@ -20,6 +20,16 @@ public class EntityIllagerIllusioner extends EntityIllagerWizard implements IRan
|
||||
@@ -2199,7 +2199,7 @@ index b6c6b4d54..f5b6d83f8 100644
|
||||
this.targetSelector.a(2, (new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true)).a(300));
|
||||
this.targetSelector.a(3, (new PathfinderGoalNearestAttackableTarget<>(this, EntityVillagerAbstract.class, false)).a(300));
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
|
||||
index 2fcd7f461..695283245 100644
|
||||
index 2fcd7f461a..6952832458 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityInsentient.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java
|
||||
@@ -29,7 +29,7 @@ public abstract class EntityInsentient extends EntityLiving {
|
||||
@@ -2320,7 +2320,7 @@ index 2fcd7f461..695283245 100644
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityIronGolem.java b/src/main/java/net/minecraft/server/EntityIronGolem.java
|
||||
index bdff23688..9ee03b233 100644
|
||||
index bdff236883..9ee03b233b 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityIronGolem.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityIronGolem.java
|
||||
@@ -22,9 +22,22 @@ public class EntityIronGolem extends EntityGolem implements IEntityAngerable {
|
||||
@@ -2371,7 +2371,7 @@ index bdff23688..9ee03b233 100644
|
||||
float f1 = 1.0F + (this.random.nextFloat() - this.random.nextFloat()) * 0.2F;
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
index 1e47a741c..c33909e20 100644
|
||||
index 1e47a741cf..5e5abfd0b5 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
@@ -466,7 +466,7 @@ public abstract class EntityLiving extends Entity {
|
||||
@@ -2405,8 +2405,29 @@ index 1e47a741c..c33909e20 100644
|
||||
public void q(float f) {
|
||||
this.bu = f;
|
||||
}
|
||||
@@ -2838,6 +2840,20 @@ public abstract class EntityLiving extends Entity {
|
||||
}
|
||||
}
|
||||
// Purpur end
|
||||
+ // Purpur start
|
||||
+ if (hasRider() && ((WorldServer) world).hasRidableMoveEvent && this instanceof EntityInsentient) {
|
||||
+ if (lastX != locX() || lastY != locY() || lastZ != locZ() || lastYaw != yaw || lastPitch != pitch) {
|
||||
+ Location from = new Location(world.getWorld(), lastX, lastY, lastZ, lastYaw, lastPitch);
|
||||
+ Location to = new Location (world.getWorld(), locX(), locY(), locZ(), yaw, pitch);
|
||||
+ net.pl3x.purpur.event.entity.RidableMoveEvent event = new net.pl3x.purpur.event.entity.RidableMoveEvent((org.bukkit.entity.Mob) getBukkitLivingEntity(), (Player) getRider().getBukkitEntity(), from, to.clone());
|
||||
+ if (!event.callEvent()) {
|
||||
+ setLocation(from.getX(), from.getY(), from.getZ(), from.getYaw(), from.getPitch());
|
||||
+ } else if (!to.equals(event.getTo())) {
|
||||
+ setLocation(to.getX(), to.getY(), to.getZ(), to.getYaw(), to.getPitch());
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+ // Purpur end
|
||||
if (!this.world.isClientSide && this.dO() && this.aG()) {
|
||||
this.damageEntity(DamageSource.DROWN, 1.0F);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityLlama.java b/src/main/java/net/minecraft/server/EntityLlama.java
|
||||
index e61f53816..109927786 100644
|
||||
index e61f53816c..1099277868 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityLlama.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityLlama.java
|
||||
@@ -18,7 +18,46 @@ public class EntityLlama extends EntityHorseChestedAbstract implements IRangedEn
|
||||
@@ -2482,7 +2503,7 @@ index e61f53816..109927786 100644
|
||||
|
||||
return i == -1 ? null : EnumColor.fromColorIndex(i);
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityLlamaTrader.java b/src/main/java/net/minecraft/server/EntityLlamaTrader.java
|
||||
index 7d30e5c23..b6aae5cde 100644
|
||||
index 7d30e5c237..b6aae5cdee 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityLlamaTrader.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityLlamaTrader.java
|
||||
@@ -11,6 +11,23 @@ public class EntityLlamaTrader extends EntityLlama {
|
||||
@@ -2510,7 +2531,7 @@ index 7d30e5c23..b6aae5cde 100644
|
||||
protected EntityLlama fz() {
|
||||
return (EntityLlama) EntityTypes.TRADER_LLAMA.a(this.world);
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityMagmaCube.java b/src/main/java/net/minecraft/server/EntityMagmaCube.java
|
||||
index 874dd3982..cd28463e2 100644
|
||||
index 874dd39825..cd28463e2b 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityMagmaCube.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityMagmaCube.java
|
||||
@@ -8,6 +8,23 @@ public class EntityMagmaCube extends EntitySlime {
|
||||
@@ -2552,7 +2573,7 @@ index 874dd3982..cd28463e2 100644
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityMushroomCow.java b/src/main/java/net/minecraft/server/EntityMushroomCow.java
|
||||
index 38df17bd2..7966b34f8 100644
|
||||
index 38df17bd20..7966b34f8d 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityMushroomCow.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityMushroomCow.java
|
||||
@@ -20,6 +20,18 @@ public class EntityMushroomCow extends EntityCow implements IShearable {
|
||||
@@ -2593,7 +2614,7 @@ index 38df17bd2..7966b34f8 100644
|
||||
|
||||
Pair<MobEffectList, Integer> pair = (Pair) optional.get();
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityOcelot.java b/src/main/java/net/minecraft/server/EntityOcelot.java
|
||||
index 7bd3fea6e..2f8275cd6 100644
|
||||
index 7bd3fea6e0..2f8275cd6b 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityOcelot.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityOcelot.java
|
||||
@@ -16,6 +16,18 @@ public class EntityOcelot extends EntityAnimal {
|
||||
@@ -2631,7 +2652,7 @@ index 7bd3fea6e..2f8275cd6 100644
|
||||
this.targetSelector.a(1, new PathfinderGoalNearestAttackableTarget<>(this, EntityTurtle.class, 10, false, false, EntityTurtle.bo));
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityPanda.java b/src/main/java/net/minecraft/server/EntityPanda.java
|
||||
index b36cc9516..eafae5516 100644
|
||||
index b36cc95168..eafae5516b 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityPanda.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityPanda.java
|
||||
@@ -46,6 +46,27 @@ public class EntityPanda extends EntityAnimal {
|
||||
@@ -2767,7 +2788,7 @@ index b36cc9516..eafae5516 100644
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityParrot.java b/src/main/java/net/minecraft/server/EntityParrot.java
|
||||
index f7b92078e..66c1d666c 100644
|
||||
index f7b92078ea..66c1d666cd 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityParrot.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityParrot.java
|
||||
@@ -65,12 +65,58 @@ public class EntityParrot extends EntityPerchable implements EntityBird {
|
||||
@@ -2843,7 +2864,7 @@ index f7b92078e..66c1d666c 100644
|
||||
this.goalSelector.a(2, new PathfinderGoalSit(this));
|
||||
this.goalSelector.a(2, new PathfinderGoalFollowOwner(this, 1.0D, 5.0F, 1.0F, true));
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityPhantom.java b/src/main/java/net/minecraft/server/EntityPhantom.java
|
||||
index bdfe073dc..f8c348004 100644
|
||||
index bdfe073dcd..f8c3480045 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityPhantom.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityPhantom.java
|
||||
@@ -25,6 +25,58 @@ public class EntityPhantom extends EntityFlying implements IMonster {
|
||||
@@ -3014,7 +3035,7 @@ index bdfe073dc..f8c348004 100644
|
||||
EntityPhantom.this.yaw += 180.0F;
|
||||
this.j = 0.1F;
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityPig.java b/src/main/java/net/minecraft/server/EntityPig.java
|
||||
index 7f52c3923..dade0bb29 100644
|
||||
index 7f52c39234..dade0bb294 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityPig.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityPig.java
|
||||
@@ -19,9 +19,22 @@ public class EntityPig extends EntityAnimal implements ISteerable, ISaddleable {
|
||||
@@ -3041,7 +3062,7 @@ index 7f52c3923..dade0bb29 100644
|
||||
this.goalSelector.a(3, new PathfinderGoalBreed(this, 1.0D));
|
||||
this.goalSelector.a(4, new PathfinderGoalTempt(this, 1.2D, RecipeItemStack.a(Items.CARROT_ON_A_STICK), false));
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityPigZombie.java b/src/main/java/net/minecraft/server/EntityPigZombie.java
|
||||
index 32b75f710..3327dbbf8 100644
|
||||
index 32b75f710b..3327dbbf87 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityPigZombie.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityPigZombie.java
|
||||
@@ -22,6 +22,16 @@ public class EntityPigZombie extends EntityZombie implements IEntityAngerable {
|
||||
@@ -3062,7 +3083,7 @@ index 32b75f710..3327dbbf8 100644
|
||||
public boolean jockeyOnlyBaby() {
|
||||
return world.purpurConfig.zombifiedPiglinJockeyOnlyBaby;
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityPiglin.java b/src/main/java/net/minecraft/server/EntityPiglin.java
|
||||
index ca7f9dc54..334e0f73e 100644
|
||||
index ca7f9dc54e..334e0f73e6 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityPiglin.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityPiglin.java
|
||||
@@ -25,6 +25,18 @@ public class EntityPiglin extends EntityPiglinAbstract implements ICrossbow {
|
||||
@@ -3113,7 +3134,7 @@ index ca7f9dc54..334e0f73e 100644
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityPiglinBrute.java b/src/main/java/net/minecraft/server/EntityPiglinBrute.java
|
||||
index 3e9a4af09..f6b170811 100644
|
||||
index 3e9a4af09d..f6b1708111 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityPiglinBrute.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityPiglinBrute.java
|
||||
@@ -15,6 +15,18 @@ public class EntityPiglinBrute extends EntityPiglinAbstract {
|
||||
@@ -3155,7 +3176,7 @@ index 3e9a4af09..f6b170811 100644
|
||||
PiglinBruteAI.b(this);
|
||||
PiglinBruteAI.c(this);
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityPillager.java b/src/main/java/net/minecraft/server/EntityPillager.java
|
||||
index a3a428da9..cf7de0127 100644
|
||||
index a3a428da99..cf7de01271 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityPillager.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityPillager.java
|
||||
@@ -13,15 +13,29 @@ public class EntityPillager extends EntityIllagerAbstract implements ICrossbow {
|
||||
@@ -3189,7 +3210,7 @@ index a3a428da9..cf7de0127 100644
|
||||
this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true));
|
||||
this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityVillagerAbstract.class, false));
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
|
||||
index c669141d2..526af292f 100644
|
||||
index c669141d21..526af292fc 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
|
||||
@@ -506,6 +506,15 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
|
||||
@@ -3209,7 +3230,7 @@ index c669141d2..526af292f 100644
|
||||
|
||||
public void playerTick() {
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityPolarBear.java b/src/main/java/net/minecraft/server/EntityPolarBear.java
|
||||
index 99f0bd8f8..3d649843f 100644
|
||||
index 99f0bd8f82..3d649843f5 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityPolarBear.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityPolarBear.java
|
||||
@@ -18,12 +18,34 @@ public class EntityPolarBear extends EntityAnimal implements IEntityAngerable {
|
||||
@@ -3284,7 +3305,7 @@ index 99f0bd8f8..3d649843f 100644
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityPufferFish.java b/src/main/java/net/minecraft/server/EntityPufferFish.java
|
||||
index 330ec38d0..16a4df27c 100644
|
||||
index 330ec38d09..16a4df27c5 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityPufferFish.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityPufferFish.java
|
||||
@@ -17,6 +17,18 @@ public class EntityPufferFish extends EntityFish {
|
||||
@@ -3316,7 +3337,7 @@ index 330ec38d0..16a4df27c 100644
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityRabbit.java b/src/main/java/net/minecraft/server/EntityRabbit.java
|
||||
index 25a9b7906..b766a27e9 100644
|
||||
index 25a9b7906b..b766a27e98 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityRabbit.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityRabbit.java
|
||||
@@ -20,6 +20,18 @@ public class EntityRabbit extends EntityAnimal {
|
||||
@@ -3481,7 +3502,7 @@ index 25a9b7906..b766a27e9 100644
|
||||
this.d = flag;
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityRavager.java b/src/main/java/net/minecraft/server/EntityRavager.java
|
||||
index fd1ac7df6..a90214588 100644
|
||||
index fd1ac7df68..a902145881 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityRavager.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityRavager.java
|
||||
@@ -20,14 +20,37 @@ public class EntityRavager extends EntityRaider {
|
||||
@@ -3532,7 +3553,7 @@ index fd1ac7df6..a90214588 100644
|
||||
this.getAttributeInstance(GenericAttributes.MOVEMENT_SPEED).setValue(0.0D);
|
||||
} else {
|
||||
diff --git a/src/main/java/net/minecraft/server/EntitySalmon.java b/src/main/java/net/minecraft/server/EntitySalmon.java
|
||||
index 51ec63413..6dfcee2c9 100644
|
||||
index 51ec634133..6dfcee2c9b 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntitySalmon.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntitySalmon.java
|
||||
@@ -6,6 +6,18 @@ public class EntitySalmon extends EntityFishSchool {
|
||||
@@ -3555,7 +3576,7 @@ index 51ec63413..6dfcee2c9 100644
|
||||
public int eN() {
|
||||
return 5;
|
||||
diff --git a/src/main/java/net/minecraft/server/EntitySheep.java b/src/main/java/net/minecraft/server/EntitySheep.java
|
||||
index 2908e9cc4..a151d4295 100644
|
||||
index 2908e9cc47..a151d4295c 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntitySheep.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntitySheep.java
|
||||
@@ -56,10 +56,23 @@ public class EntitySheep extends EntityAnimal implements IShearable {
|
||||
@@ -3583,7 +3604,7 @@ index 2908e9cc4..a151d4295 100644
|
||||
this.goalSelector.a(2, new PathfinderGoalBreed(this, 1.0D));
|
||||
this.goalSelector.a(3, new PathfinderGoalTempt(this, 1.1D, RecipeItemStack.a(Items.WHEAT), false));
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityShulker.java b/src/main/java/net/minecraft/server/EntityShulker.java
|
||||
index 7bedaf02c..30e0e1416 100644
|
||||
index 7bedaf02c4..30e0e14162 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityShulker.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityShulker.java
|
||||
@@ -29,12 +29,26 @@ public class EntityShulker extends EntityGolem implements IMonster {
|
||||
@@ -3623,7 +3644,7 @@ index 7bedaf02c..30e0e1416 100644
|
||||
@Override
|
||||
public boolean a() {
|
||||
diff --git a/src/main/java/net/minecraft/server/EntitySilverfish.java b/src/main/java/net/minecraft/server/EntitySilverfish.java
|
||||
index 28b490cc1..ad428e090 100644
|
||||
index 28b490cc14..ad428e0900 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntitySilverfish.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntitySilverfish.java
|
||||
@@ -11,13 +11,27 @@ public class EntitySilverfish extends EntityMonster {
|
||||
@@ -3663,7 +3684,7 @@ index 28b490cc1..ad428e090 100644
|
||||
|
||||
public void g() {
|
||||
diff --git a/src/main/java/net/minecraft/server/EntitySkeleton.java b/src/main/java/net/minecraft/server/EntitySkeleton.java
|
||||
index 7c39bec83..3f130e03b 100644
|
||||
index 7c39bec831..3f130e03bf 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntitySkeleton.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntitySkeleton.java
|
||||
@@ -6,6 +6,18 @@ public class EntitySkeleton extends EntitySkeletonAbstract {
|
||||
@@ -3686,7 +3707,7 @@ index 7c39bec83..3f130e03b 100644
|
||||
protected SoundEffect getSoundAmbient() {
|
||||
return SoundEffects.ENTITY_SKELETON_AMBIENT;
|
||||
diff --git a/src/main/java/net/minecraft/server/EntitySkeletonAbstract.java b/src/main/java/net/minecraft/server/EntitySkeletonAbstract.java
|
||||
index ced89af70..4d5af1173 100644
|
||||
index ced89af70c..4d5af11734 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntitySkeletonAbstract.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntitySkeletonAbstract.java
|
||||
@@ -28,12 +28,14 @@ public abstract class EntitySkeletonAbstract extends EntityMonster implements IR
|
||||
@@ -3705,7 +3726,7 @@ index ced89af70..4d5af1173 100644
|
||||
this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true));
|
||||
this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityIronGolem.class, true));
|
||||
diff --git a/src/main/java/net/minecraft/server/EntitySkeletonStray.java b/src/main/java/net/minecraft/server/EntitySkeletonStray.java
|
||||
index f985caada..d123fb82b 100644
|
||||
index f985caada0..d123fb82b6 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntitySkeletonStray.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntitySkeletonStray.java
|
||||
@@ -8,6 +8,18 @@ public class EntitySkeletonStray extends EntitySkeletonAbstract {
|
||||
@@ -3728,7 +3749,7 @@ index f985caada..d123fb82b 100644
|
||||
return b(entitytypes, worldaccess, enummobspawn, blockposition, random) && (enummobspawn == EnumMobSpawn.SPAWNER || worldaccess.e(blockposition));
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntitySkeletonWither.java b/src/main/java/net/minecraft/server/EntitySkeletonWither.java
|
||||
index c872be77a..96cb080d9 100644
|
||||
index c872be77a6..96cb080d94 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntitySkeletonWither.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntitySkeletonWither.java
|
||||
@@ -9,6 +9,18 @@ public class EntitySkeletonWither extends EntitySkeletonAbstract {
|
||||
@@ -3751,7 +3772,7 @@ index c872be77a..96cb080d9 100644
|
||||
protected void initPathfinder() {
|
||||
this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityPiglinAbstract.class, true));
|
||||
diff --git a/src/main/java/net/minecraft/server/EntitySlime.java b/src/main/java/net/minecraft/server/EntitySlime.java
|
||||
index e99fd8811..460263629 100644
|
||||
index e99fd88118..4602636298 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntitySlime.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntitySlime.java
|
||||
@@ -34,12 +34,45 @@ public class EntitySlime extends EntityInsentient implements IMonster {
|
||||
@@ -3867,7 +3888,7 @@ index e99fd8811..460263629 100644
|
||||
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntitySnowman.java b/src/main/java/net/minecraft/server/EntitySnowman.java
|
||||
index 95ee716fc..e980da14c 100644
|
||||
index 95ee716fc9..e980da14cf 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntitySnowman.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntitySnowman.java
|
||||
@@ -14,12 +14,26 @@ public class EntitySnowman extends EntityGolem implements IShearable, IRangedEnt
|
||||
@@ -3924,7 +3945,7 @@ index 95ee716fc..e980da14c 100644
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntitySpider.java b/src/main/java/net/minecraft/server/EntitySpider.java
|
||||
index bf68efd52..92d741378 100644
|
||||
index bf68efd52f..92d7413787 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntitySpider.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntitySpider.java
|
||||
@@ -11,14 +11,28 @@ public class EntitySpider extends EntityMonster {
|
||||
@@ -3957,7 +3978,7 @@ index bf68efd52..92d741378 100644
|
||||
this.targetSelector.a(2, new EntitySpider.PathfinderGoalSpiderNearestAttackableTarget<>(this, EntityHuman.class));
|
||||
this.targetSelector.a(3, new EntitySpider.PathfinderGoalSpiderNearestAttackableTarget<>(this, EntityIronGolem.class));
|
||||
diff --git a/src/main/java/net/minecraft/server/EntitySquid.java b/src/main/java/net/minecraft/server/EntitySquid.java
|
||||
index 148e4b158..70b952f10 100644
|
||||
index 148e4b1587..70b952f10a 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntitySquid.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntitySquid.java
|
||||
@@ -26,17 +26,38 @@ public class EntitySquid extends EntityWaterAnimal {
|
||||
@@ -4057,7 +4078,7 @@ index 148e4b158..70b952f10 100644
|
||||
|
||||
if (i > 100) {
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityStrider.java b/src/main/java/net/minecraft/server/EntityStrider.java
|
||||
index 6d4c6a8f1..172867f50 100644
|
||||
index 6d4c6a8f1c..172867f50d 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityStrider.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityStrider.java
|
||||
@@ -28,6 +28,18 @@ public class EntityStrider extends EntityAnimal implements ISteerable, ISaddleab
|
||||
@@ -4097,7 +4118,7 @@ index 6d4c6a8f1..172867f50 100644
|
||||
if (flag && !this.isSilent()) {
|
||||
this.world.playSound((EntityHuman) null, this.locX(), this.locY(), this.locZ(), SoundEffects.ENTITY_STRIDER_EAT, this.getSoundCategory(), 1.0F, 1.0F + (this.random.nextFloat() - this.random.nextFloat()) * 0.2F);
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityTameableAnimal.java b/src/main/java/net/minecraft/server/EntityTameableAnimal.java
|
||||
index 9e008d56b..8f227678d 100644
|
||||
index 9e008d56bb..8f227678dc 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityTameableAnimal.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityTameableAnimal.java
|
||||
@@ -130,6 +130,7 @@ public abstract class EntityTameableAnimal extends EntityAnimal {
|
||||
@@ -4109,7 +4130,7 @@ index 9e008d56b..8f227678d 100644
|
||||
return entityliving == this.getOwner();
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityTropicalFish.java b/src/main/java/net/minecraft/server/EntityTropicalFish.java
|
||||
index 495c28ccb..2c9df356e 100644
|
||||
index 495c28ccb8..2c9df356e6 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityTropicalFish.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityTropicalFish.java
|
||||
@@ -19,6 +19,18 @@ public class EntityTropicalFish extends EntityFishSchool {
|
||||
@@ -4132,7 +4153,7 @@ index 495c28ccb..2c9df356e 100644
|
||||
protected void initDatawatcher() {
|
||||
super.initDatawatcher();
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityTurtle.java b/src/main/java/net/minecraft/server/EntityTurtle.java
|
||||
index 4ad393bc9..2b34e6cf3 100644
|
||||
index 4ad393bc99..2b34e6cf3b 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityTurtle.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityTurtle.java
|
||||
@@ -27,6 +27,18 @@ public class EntityTurtle extends EntityAnimal {
|
||||
@@ -4214,7 +4235,7 @@ index 4ad393bc9..2b34e6cf3 100644
|
||||
if (this.h == ControllerMove.Operation.MOVE_TO && !this.i.getNavigation().m()) {
|
||||
double d0 = this.b - this.i.locX();
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityVex.java b/src/main/java/net/minecraft/server/EntityVex.java
|
||||
index ed6a47ad2..ac75ed3e2 100644
|
||||
index ed6a47ad2f..ac75ed3e2e 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityVex.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityVex.java
|
||||
@@ -19,6 +19,45 @@ public class EntityVex extends EntityMonster {
|
||||
@@ -4311,7 +4332,7 @@ index ed6a47ad2..ac75ed3e2 100644
|
||||
Vec3D vec3d = new Vec3D(this.b - EntityVex.this.locX(), this.c - EntityVex.this.locY(), this.d - EntityVex.this.locZ());
|
||||
double d0 = vec3d.f();
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java
|
||||
index 5dd9e3bb2..823155821 100644
|
||||
index 5dd9e3bb20..823155821b 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityVillager.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityVillager.java
|
||||
@@ -75,8 +75,19 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
|
||||
@@ -4355,7 +4376,7 @@ index 5dd9e3bb2..823155821 100644
|
||||
this.h(entityhuman);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityVillagerTrader.java b/src/main/java/net/minecraft/server/EntityVillagerTrader.java
|
||||
index 96dda6a14..3ea66955d 100644
|
||||
index 96dda6a14f..3ea66955df 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityVillagerTrader.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityVillagerTrader.java
|
||||
@@ -23,6 +23,7 @@ public class EntityVillagerTrader extends EntityVillagerAbstract {
|
||||
@@ -4395,7 +4416,7 @@ index 96dda6a14..3ea66955d 100644
|
||||
this.setTradingPlayer(entityhuman);
|
||||
this.openTrade(entityhuman, this.getScoreboardDisplayName(), 1);
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityVindicator.java b/src/main/java/net/minecraft/server/EntityVindicator.java
|
||||
index 8f812aa91..9950bda50 100644
|
||||
index 8f812aa913..9950bda50f 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityVindicator.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityVindicator.java
|
||||
@@ -17,14 +17,28 @@ public class EntityVindicator extends EntityIllagerAbstract {
|
||||
@@ -4428,7 +4449,7 @@ index 8f812aa91..9950bda50 100644
|
||||
this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true));
|
||||
this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityVillagerAbstract.class, true));
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityWitch.java b/src/main/java/net/minecraft/server/EntityWitch.java
|
||||
index ca3c5150b..323d79a99 100644
|
||||
index ca3c5150bc..323d79a994 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityWitch.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityWitch.java
|
||||
@@ -24,6 +24,18 @@ public class EntityWitch extends EntityRaider implements IRangedEntity {
|
||||
@@ -4464,7 +4485,7 @@ index ca3c5150b..323d79a99 100644
|
||||
this.targetSelector.a(2, this.br);
|
||||
this.targetSelector.a(3, this.bs);
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityWither.java b/src/main/java/net/minecraft/server/EntityWither.java
|
||||
index 53482a420..f68cf834a 100644
|
||||
index 53482a420c..f68cf834aa 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityWither.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityWither.java
|
||||
@@ -32,6 +32,7 @@ public class EntityWither extends EntityMonster implements IRangedEntity {
|
||||
@@ -4672,7 +4693,7 @@ index 53482a420..f68cf834a 100644
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityWolf.java b/src/main/java/net/minecraft/server/EntityWolf.java
|
||||
index dcbb34313..9ae716859 100644
|
||||
index dcbb34313f..9ae7168595 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityWolf.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityWolf.java
|
||||
@@ -33,9 +33,27 @@ public class EntityWolf extends EntityTameableAnimal implements IEntityAngerable
|
||||
@@ -4712,7 +4733,7 @@ index dcbb34313..9ae716859 100644
|
||||
this.targetSelector.a(2, new PathfinderGoalOwnerHurtTarget(this));
|
||||
this.targetSelector.a(3, (new PathfinderGoalHurtByTarget(this, new Class[0])).a(new Class[0])); // CraftBukkit - decompile error
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityZoglin.java b/src/main/java/net/minecraft/server/EntityZoglin.java
|
||||
index e76e6ebde..d92fe8013 100644
|
||||
index e76e6ebde7..d92fe8013f 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityZoglin.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityZoglin.java
|
||||
@@ -21,6 +21,18 @@ public class EntityZoglin extends EntityMonster implements IMonster, IOglin {
|
||||
@@ -4776,7 +4797,7 @@ index e76e6ebde..d92fe8013 100644
|
||||
this.eL();
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java
|
||||
index b90ea3144..e2f68d843 100644
|
||||
index b90ea31440..e2f68d843c 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityZombie.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityZombie.java
|
||||
@@ -46,6 +46,16 @@ public class EntityZombie extends EntityMonster {
|
||||
@@ -4809,7 +4830,7 @@ index b90ea3144..e2f68d843 100644
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityZombieHusk.java b/src/main/java/net/minecraft/server/EntityZombieHusk.java
|
||||
index ce6d79780..02b0ae550 100644
|
||||
index ce6d797801..02b0ae550a 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityZombieHusk.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityZombieHusk.java
|
||||
@@ -9,6 +9,16 @@ public class EntityZombieHusk extends EntityZombie {
|
||||
@@ -4830,7 +4851,7 @@ index ce6d79780..02b0ae550 100644
|
||||
public boolean jockeyOnlyBaby() {
|
||||
return world.purpurConfig.huskJockeyOnlyBaby;
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityZombieVillager.java b/src/main/java/net/minecraft/server/EntityZombieVillager.java
|
||||
index b86816205..7db942c65 100644
|
||||
index b86816205c..7db942c659 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityZombieVillager.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityZombieVillager.java
|
||||
@@ -29,6 +29,16 @@ public class EntityZombieVillager extends EntityZombie implements VillagerDataHo
|
||||
@@ -4851,7 +4872,7 @@ index b86816205..7db942c65 100644
|
||||
public boolean jockeyOnlyBaby() {
|
||||
return world.purpurConfig.zombieVillagerJockeyOnlyBaby;
|
||||
diff --git a/src/main/java/net/minecraft/server/GeneratorAccess.java b/src/main/java/net/minecraft/server/GeneratorAccess.java
|
||||
index cbc0b8bc8..89d64ea0d 100644
|
||||
index cbc0b8bc85..89d64ea0d1 100644
|
||||
--- a/src/main/java/net/minecraft/server/GeneratorAccess.java
|
||||
+++ b/src/main/java/net/minecraft/server/GeneratorAccess.java
|
||||
@@ -37,6 +37,7 @@ public interface GeneratorAccess extends ICombinedAccess, IWorldTime {
|
||||
@@ -4863,7 +4884,7 @@ index cbc0b8bc8..89d64ea0d 100644
|
||||
|
||||
default int getHeight() {
|
||||
diff --git a/src/main/java/net/minecraft/server/IProjectile.java b/src/main/java/net/minecraft/server/IProjectile.java
|
||||
index 0bac6b050..9a17eb606 100644
|
||||
index 0bac6b0506..9a17eb6066 100644
|
||||
--- a/src/main/java/net/minecraft/server/IProjectile.java
|
||||
+++ b/src/main/java/net/minecraft/server/IProjectile.java
|
||||
@@ -12,7 +12,7 @@ public abstract class IProjectile extends Entity {
|
||||
@@ -4892,9 +4913,21 @@ index 0bac6b050..9a17eb606 100644
|
||||
if (!entity.isSpectator() && entity.isAlive() && entity.isInteractable()) {
|
||||
Entity entity1 = this.getShooter();
|
||||
// Paper start - Cancel hit for vanished players
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index c9577e998c..5e35a119bd 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -1412,6 +1412,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
|
||||
while (iterator.hasNext()) {
|
||||
WorldServer worldserver = (WorldServer) iterator.next();
|
||||
worldserver.hasPhysicsEvent = org.bukkit.event.block.BlockPhysicsEvent.getHandlerList().getRegisteredListeners().length > 0; // Paper
|
||||
+ worldserver.hasRidableMoveEvent = net.pl3x.purpur.event.entity.RidableMoveEvent.getHandlerList().getRegisteredListeners().length > 0; // Purpur
|
||||
TileEntityHopper.skipHopperEvents = worldserver.paperConfig.disableHopperMoveEvents || org.bukkit.event.inventory.InventoryMoveItemEvent.getHandlerList().getRegisteredListeners().length == 0; // Paper
|
||||
|
||||
this.methodProfiler.a(() -> {
|
||||
diff --git a/src/main/java/net/minecraft/server/PathfinderGoalHasRider.java b/src/main/java/net/minecraft/server/PathfinderGoalHasRider.java
|
||||
new file mode 100644
|
||||
index 000000000..da18e1235
|
||||
index 0000000000..da18e1235e
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/net/minecraft/server/PathfinderGoalHasRider.java
|
||||
@@ -0,0 +1,18 @@
|
||||
@@ -4918,7 +4951,7 @@ index 000000000..da18e1235
|
||||
+}
|
||||
diff --git a/src/main/java/net/minecraft/server/PathfinderGoalHorseHasRider.java b/src/main/java/net/minecraft/server/PathfinderGoalHorseHasRider.java
|
||||
new file mode 100644
|
||||
index 000000000..44929182d
|
||||
index 0000000000..44929182df
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/net/minecraft/server/PathfinderGoalHorseHasRider.java
|
||||
@@ -0,0 +1,16 @@
|
||||
@@ -4939,7 +4972,7 @@ index 000000000..44929182d
|
||||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index 042c77286..bba520053 100644
|
||||
index 042c772862..bba5200534 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -2233,6 +2233,8 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -4952,7 +4985,7 @@ index 042c77286..bba520053 100644
|
||||
if ((entity instanceof EntityFish && origItem != null && origItem.getItem() == Items.WATER_BUCKET) && (event.isCancelled() || this.player.inventory.getItemInHand() == null || this.player.inventory.getItemInHand().getItem() != origItem)) {
|
||||
this.sendPacket(new PacketPlayOutSpawnEntityLiving((EntityFish) entity));
|
||||
diff --git a/src/main/java/net/minecraft/server/ProjectileHelper.java b/src/main/java/net/minecraft/server/ProjectileHelper.java
|
||||
index b2c64b314..515ba50ae 100644
|
||||
index b2c64b3144..515ba50aec 100644
|
||||
--- a/src/main/java/net/minecraft/server/ProjectileHelper.java
|
||||
+++ b/src/main/java/net/minecraft/server/ProjectileHelper.java
|
||||
@@ -7,6 +7,7 @@ import javax.annotation.Nullable;
|
||||
@@ -4964,7 +4997,7 @@ index b2c64b314..515ba50ae 100644
|
||||
Vec3D vec3d = entity.getMot();
|
||||
World world = entity.world;
|
||||
diff --git a/src/main/java/net/minecraft/server/Vec3D.java b/src/main/java/net/minecraft/server/Vec3D.java
|
||||
index 5af554870..c59305ef7 100644
|
||||
index 5af554870b..c59305ef7d 100644
|
||||
--- a/src/main/java/net/minecraft/server/Vec3D.java
|
||||
+++ b/src/main/java/net/minecraft/server/Vec3D.java
|
||||
@@ -39,6 +39,7 @@ public class Vec3D implements IPosition {
|
||||
@@ -4992,7 +5025,7 @@ index 5af554870..c59305ef7 100644
|
||||
return new Vec3D(this.x * d0, this.y * d1, this.z * d2);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
||||
index 7a82a894b..bdfdb73bc 100644
|
||||
index 7a82a894bb..bdfdb73bc1 100644
|
||||
--- a/src/main/java/net/minecraft/server/World.java
|
||||
+++ b/src/main/java/net/minecraft/server/World.java
|
||||
@@ -1648,5 +1648,10 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
|
||||
@@ -5006,8 +5039,20 @@ index 7a82a894b..bdfdb73bc 100644
|
||||
+ }
|
||||
// Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
index dda4aa6bf5..b06ab4706f 100644
|
||||
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
@@ -101,6 +101,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
|
||||
public final Convertable.ConversionSession convertable;
|
||||
public final UUID uuid;
|
||||
boolean hasPhysicsEvent = true; // Paper
|
||||
+ boolean hasRidableMoveEvent = false; // Purpur
|
||||
private static Throwable getAddToWorldStackTrace(Entity entity) {
|
||||
return new Throwable(entity + " Added to world at " + new java.util.Date());
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
|
||||
index 8714d1574..af3739c79 100644
|
||||
index 8714d1574d..af3739c79a 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
|
||||
@@ -134,11 +134,13 @@ public class PurpurConfig {
|
||||
@@ -5025,7 +5070,7 @@ index 8714d1574..af3739c79 100644
|
||||
|
||||
public static int dungeonSeed = -1;
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 6ee0a3179..1a606b426 100644
|
||||
index 6ee0a3179b..1a606b426b 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -42,11 +42,6 @@ public class PurpurWorldConfig {
|
||||
@@ -5678,7 +5723,7 @@ index 6ee0a3179..1a606b426 100644
|
||||
zombieVillagerJockeyTryExistingChickens = getBoolean("mobs.zombie_villager.jockey.try-existing-chickens", zombieVillagerJockeyTryExistingChickens);
|
||||
diff --git a/src/main/java/net/pl3x/purpur/controller/ControllerLookWASD.java b/src/main/java/net/pl3x/purpur/controller/ControllerLookWASD.java
|
||||
new file mode 100644
|
||||
index 000000000..0b16a7b63
|
||||
index 0000000000..0b16a7b634
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/net/pl3x/purpur/controller/ControllerLookWASD.java
|
||||
@@ -0,0 +1,76 @@
|
||||
@@ -5760,7 +5805,7 @@ index 000000000..0b16a7b63
|
||||
+}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASD.java b/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASD.java
|
||||
new file mode 100644
|
||||
index 000000000..426688b3a
|
||||
index 0000000000..426688b3a6
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASD.java
|
||||
@@ -0,0 +1,92 @@
|
||||
@@ -5858,7 +5903,7 @@ index 000000000..426688b3a
|
||||
+}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDFlying.java b/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDFlying.java
|
||||
new file mode 100644
|
||||
index 000000000..33c51460a
|
||||
index 0000000000..33c51460ab
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDFlying.java
|
||||
@@ -0,0 +1,61 @@
|
||||
@@ -5925,7 +5970,7 @@ index 000000000..33c51460a
|
||||
+}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDFlyingWithSpacebar.java b/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDFlyingWithSpacebar.java
|
||||
new file mode 100644
|
||||
index 000000000..f75375936
|
||||
index 0000000000..f753759361
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDFlyingWithSpacebar.java
|
||||
@@ -0,0 +1,61 @@
|
||||
@@ -5992,7 +6037,7 @@ index 000000000..f75375936
|
||||
+}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDWater.java b/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDWater.java
|
||||
new file mode 100644
|
||||
index 000000000..1b08a0905
|
||||
index 0000000000..1b08a0905b
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/net/pl3x/purpur/controller/ControllerMoveWASDWater.java
|
||||
@@ -0,0 +1,50 @@
|
||||
@@ -6048,7 +6093,7 @@ index 000000000..1b08a0905
|
||||
+}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/entity/DolphinSpit.java b/src/main/java/net/pl3x/purpur/entity/DolphinSpit.java
|
||||
new file mode 100644
|
||||
index 000000000..3b777c54f
|
||||
index 0000000000..3b777c54f9
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/net/pl3x/purpur/entity/DolphinSpit.java
|
||||
@@ -0,0 +1,115 @@
|
||||
@@ -6169,7 +6214,7 @@ index 000000000..3b777c54f
|
||||
+}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/entity/PhantomFlames.java b/src/main/java/net/pl3x/purpur/entity/PhantomFlames.java
|
||||
new file mode 100644
|
||||
index 000000000..f5da00b10
|
||||
index 0000000000..f5da00b100
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/net/pl3x/purpur/entity/PhantomFlames.java
|
||||
@@ -0,0 +1,120 @@
|
||||
@@ -6294,7 +6339,7 @@ index 000000000..f5da00b10
|
||||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
index 1fe253bc7..bf387664c 100644
|
||||
index 1fe253bc72..bf387664c2 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
@@ -1159,4 +1159,26 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
@@ -6325,7 +6370,7 @@ index 1fe253bc7..bf387664c 100644
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 90d8631dd..8bb9449a6 100644
|
||||
index 71306b6ee6..a17f449b54 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -502,6 +502,18 @@ public class CraftEventFactory {
|
||||
|
||||
@@ -6,7 +6,7 @@ Subject: [PATCH] Allow toggling special MobSpawners per world
|
||||
In vanilla, these are all hardcoded on for world type 0 (overworld) and hardcoded off for every other world type. Default config behaviour matches this.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/MobSpawnerTrader.java b/src/main/java/net/minecraft/server/MobSpawnerTrader.java
|
||||
index 8d89f5118..072ec40f7 100644
|
||||
index 8d89f51182..072ec40f75 100644
|
||||
--- a/src/main/java/net/minecraft/server/MobSpawnerTrader.java
|
||||
+++ b/src/main/java/net/minecraft/server/MobSpawnerTrader.java
|
||||
@@ -132,7 +132,17 @@ public class MobSpawnerTrader implements MobSpawner {
|
||||
@@ -29,7 +29,7 @@ index 8d89f5118..072ec40f7 100644
|
||||
if (SpawnerCreature.a(EntityPositionTypes.Surface.ON_GROUND, iworldreader, blockposition2, EntityTypes.WANDERING_TRADER)) {
|
||||
blockposition1 = blockposition2;
|
||||
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
||||
index bdfdb73bc..ab97d076c 100644
|
||||
index bdfdb73bc1..ab97d076c9 100644
|
||||
--- a/src/main/java/net/minecraft/server/World.java
|
||||
+++ b/src/main/java/net/minecraft/server/World.java
|
||||
@@ -156,7 +156,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
|
||||
@@ -42,10 +42,10 @@ index bdfdb73bc..ab97d076c 100644
|
||||
this.generator = gen;
|
||||
this.world = new CraftWorld((WorldServer) this, gen, env);
|
||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
index 4f5b6e3cd..9327911df 100644
|
||||
index b06ab4706f..9bbdd8e789 100644
|
||||
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
@@ -330,7 +330,24 @@ public class WorldServer extends World implements GeneratorAccessSeed {
|
||||
@@ -331,7 +331,24 @@ public class WorldServer extends World implements GeneratorAccessSeed {
|
||||
this.L = new ObjectLinkedOpenHashSet();
|
||||
this.Q = flag1;
|
||||
this.server = minecraftserver;
|
||||
@@ -72,7 +72,7 @@ index 4f5b6e3cd..9327911df 100644
|
||||
this.worldDataServer = (WorldDataServer) iworlddataserver;
|
||||
worldDataServer.world = this;
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 0d4d9ce34..3c91ab0a5 100644
|
||||
index 0d4d9ce345..3c91ab0a58 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -7,6 +7,8 @@ import net.minecraft.server.IRegistry;
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable daylight cycle
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PacketPlayOutUpdateTime.java b/src/main/java/net/minecraft/server/PacketPlayOutUpdateTime.java
|
||||
index 88c3d7efa..fed1ce950 100644
|
||||
index 88c3d7efaf..fed1ce9503 100644
|
||||
--- a/src/main/java/net/minecraft/server/PacketPlayOutUpdateTime.java
|
||||
+++ b/src/main/java/net/minecraft/server/PacketPlayOutUpdateTime.java
|
||||
@@ -5,7 +5,7 @@ import java.io.IOException;
|
||||
@@ -18,7 +18,7 @@ index 88c3d7efa..fed1ce950 100644
|
||||
public PacketPlayOutUpdateTime() {}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
index 9327911df..8733dc21b 100644
|
||||
index 9bbdd8e789..a8b0411907 100644
|
||||
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
@@ -94,6 +94,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
|
||||
@@ -29,7 +29,7 @@ index 9327911df..8733dc21b 100644
|
||||
|
||||
|
||||
// CraftBukkit start
|
||||
@@ -379,6 +380,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
|
||||
@@ -380,6 +381,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
|
||||
this.getServer().addWorld(this.getWorld()); // CraftBukkit
|
||||
|
||||
this.asyncChunkTaskManager = new com.destroystokyo.paper.io.chunk.ChunkTaskManager(this); // Paper
|
||||
@@ -37,7 +37,7 @@ index 9327911df..8733dc21b 100644
|
||||
}
|
||||
|
||||
// Tuinity start - optimise collision
|
||||
@@ -1015,7 +1017,21 @@ public class WorldServer extends World implements GeneratorAccessSeed {
|
||||
@@ -1016,7 +1018,21 @@ public class WorldServer extends World implements GeneratorAccessSeed {
|
||||
this.nextTickListBlock.nextTick(); // Paper
|
||||
this.nextTickListFluid.nextTick(); // Paper
|
||||
this.worldDataServer.u().a(this.server, i);
|
||||
@@ -60,7 +60,7 @@ index 9327911df..8733dc21b 100644
|
||||
this.setDayTime(this.worldData.getDayTime() + 1L);
|
||||
}
|
||||
|
||||
@@ -1024,6 +1040,12 @@ public class WorldServer extends World implements GeneratorAccessSeed {
|
||||
@@ -1025,6 +1041,12 @@ public class WorldServer extends World implements GeneratorAccessSeed {
|
||||
|
||||
public void setDayTime(long i) {
|
||||
this.worldDataServer.setDayTime(i);
|
||||
@@ -74,7 +74,7 @@ index 9327911df..8733dc21b 100644
|
||||
|
||||
public void doMobSpawning(boolean flag, boolean flag1) {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 8e97eb92d..013f1cfb4 100644
|
||||
index 8e97eb92dd..013f1cfb48 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -116,6 +116,13 @@ public class PurpurWorldConfig {
|
||||
|
||||
Reference in New Issue
Block a user