Updated Upstream (Paper)

Upstream has released updates that appear to apply and compile correctly

Paper Changes:
aeb6e7dd2 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#5601)
b0a4f353b fix cancelling block falling causing client desync (fixes #5386) (#5419)
This commit is contained in:
BillyGalbreath
2021-05-09 18:14:49 -05:00
parent a80e5b60e1
commit f5c3dae3d5
31 changed files with 83 additions and 186 deletions

2
Paper

Submodule Paper updated: 8ed45920cf...aeb6e7dd25

View File

@@ -248,10 +248,10 @@ index a1496fe00a2d5ba6c1af054d4327f868b2cd7344..6ca9aa2c438810b5537dc196b3fd89b0
// Spigot start
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 2ea531eaef8c455fdd503f0c0258813fe9136085..a84ea92d02d34cd48174152e0391f1af6c6b5def 100644
index 34b51466ffb281b05f531b3f7deda245ae7fd96a..4a4f041c6acfd335871fa67d6d1c7f723229c8a7 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -1768,23 +1768,63 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -1783,23 +1783,63 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
* Gets the view distance for this player
*
* @return the player's view distance

View File

@@ -81,10 +81,10 @@ index 0000000000000000000000000000000000000000..0c8b3e5e4ba412624357ea5662a78862
+ }
+}
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index a84ea92d02d34cd48174152e0391f1af6c6b5def..023ca23e8c91a6525cc31d483d873dfe14e97da3 100644
index 4a4f041c6acfd335871fa67d6d1c7f723229c8a7..2ab8d8f3439ee2571df5df385f8874909605ff5c 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -2116,4 +2116,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -2131,4 +2131,25 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@Override
Spigot spigot();
// Spigot end

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Player invulnerabilities
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 023ca23e8c91a6525cc31d483d873dfe14e97da3..3dd208c763a71f4211b89a32a936a2317555f265 100644
index 2ab8d8f3439ee2571df5df385f8874909605ff5c..24408c9bac75182d3cb6146aa25c51a45b53a3af 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -2136,5 +2136,26 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -2151,5 +2151,26 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
* Reset the idle timer back to 0
*/
void resetIdleTimer();

View File

@@ -994,10 +994,10 @@ index a6a7429ed2e1eefb2b12b7480ed74fcc3963a864..e8027e1d505dda6effbb1698550016e8
NORMAL(false),
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 3dd208c763a71f4211b89a32a936a2317555f265..2ed61f79fc7a625d00b86ee434d591232518ca3c 100644
index 24408c9bac75182d3cb6146aa25c51a45b53a3af..24059b686cca36f594b2efb18666c646f391cea7 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -1938,6 +1938,8 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -1953,6 +1953,8 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
void resetCooldown();
/**
@@ -1006,7 +1006,7 @@ index 3dd208c763a71f4211b89a32a936a2317555f265..2ed61f79fc7a625d00b86ee434d59123
* @return the client option value of the player
*/
@NotNull
@@ -1977,6 +1979,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -1992,6 +1994,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
// Paper end
// Spigot start

View File

@@ -170,7 +170,7 @@ index 6ea9b54d95d80070c01a612c0ce2ab37f0b4ad41..fe9ec9cb7875df4a40d1c4155e13cca9
/**
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 2ed61f79fc7a625d00b86ee434d591232518ca3c..c0b75477ab8af71e73b37a66568693a84c5bce74 100644
index 24059b686cca36f594b2efb18666c646f391cea7..cf1c631b80b5573a2a8b57e774f4faf57f98235b 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -72,7 +72,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -281,7 +281,7 @@ index 2ed61f79fc7a625d00b86ee434d591232518ca3c..c0b75477ab8af71e73b37a66568693a8
public void sendSignChange(@NotNull Location loc, @Nullable String[] lines, @NotNull DyeColor dyeColor) throws IllegalArgumentException;
/**
@@ -1746,7 +1746,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -1761,7 +1761,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
* @deprecated in favour of {@link #locale()}
*/
@NotNull

View File

@@ -14054,7 +14054,7 @@ index 3c804c7b20a14ea6e510810e2be10c1cc89ff5c1..3738c51b5e673c439d88a7ef7f4614f3
return new TicketType<>(s, comparator, 0L);
}
diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java
index 47fbb8df04b2b77e10314666e87eaef621cffb3b..a42d3c6c227a74d691278a65a9c516f6507b6865 100644
index 7e032845fe9a46d33236444d62405a41e29daa17..a8a2c29874e95dc08b85eb41882fc947108fbe5b 100644
--- a/src/main/java/net/minecraft/server/level/WorldServer.java
+++ b/src/main/java/net/minecraft/server/level/WorldServer.java
@@ -168,12 +168,13 @@ import org.bukkit.event.server.MapInitializeEvent;
@@ -14973,7 +14973,7 @@ index 47fbb8df04b2b77e10314666e87eaef621cffb3b..a42d3c6c227a74d691278a65a9c516f6
throw (IllegalStateException) SystemUtils.c((Throwable) (new IllegalStateException("Removing entity while ticking!")));
} else {
this.removeEntityFromChunk(entity);
@@ -1684,20 +2304,33 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1683,20 +2303,33 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@Override
public void notify(BlockPosition blockposition, IBlockData iblockdata, IBlockData iblockdata1, int i) {
@@ -15009,7 +15009,7 @@ index 47fbb8df04b2b77e10314666e87eaef621cffb3b..a42d3c6c227a74d691278a65a9c516f6
} catch (java.util.ConcurrentModificationException ex) {
// This can happen because the pathfinder update below may trigger a chunk load, which in turn may cause more navigators to register
// In this case we just run the update again across all the iterators as the chunk will then be loaded
@@ -1711,6 +2344,9 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1710,6 +2343,9 @@ public class WorldServer extends World implements GeneratorAccessSeed {
navigationabstract.b(blockposition);
}
}
@@ -16820,20 +16820,10 @@ index c39c50e53549e9cb9d3520bc7e8b7e89cfa20163..5bce47fa8f191bc1d33c04c9865cb0ef
public void closeInventory() {
this.activeContainer = this.defaultContainer;
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java b/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java
index 2f8b3587f527620152609d5be342b328a7621e0f..e440d26c920c4efddf958c61bfdfa508273062cc 100644
index b0e8e9934edbb0cf7ac063e4903452be526afbc7..42c1a7e8d51868c74e92d97f1df8d36fcaab6252 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java
@@ -211,7 +211,9 @@ public abstract class EntityArrow extends IProjectile {
// Paper end
if (object != null && !flag) {
+ if (org.bukkit.craftbukkit.event.CraftEventFactory.callProjectileHitEvent(this, (MovingObjectPosition) object)) { // CraftBukkit - Call event // Paper - make cancellable // Tuinity - implement cancellation properly
this.a((MovingObjectPosition) object);
+ } // Tuinity - implement cancellation properly
this.impulse = true;
}
@@ -545,7 +547,8 @@ public abstract class EntityArrow extends IProjectile {
@@ -545,7 +545,8 @@ public abstract class EntityArrow extends IProjectile {
}
itemstack = item.getItemStack();
}
@@ -16843,101 +16833,6 @@ index 2f8b3587f527620152609d5be342b328a7621e0f..e440d26c920c4efddf958c61bfdfa508
if (this.fromPlayer == EntityArrow.PickupStatus.ALLOWED && !entityhuman.inventory.pickup(itemstack)) {
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityFireball.java b/src/main/java/net/minecraft/world/entity/projectile/EntityFireball.java
index c4248531d4a6a11259d9d78ce1d7683a86840d40..f3077c22445949c484a73ee56eab593f527795a6 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityFireball.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityFireball.java
@@ -83,7 +83,9 @@ public abstract class EntityFireball extends IProjectile {
// Paper end
if (movingobjectposition != null && movingobjectposition.getType() != MovingObjectPosition.EnumMovingObjectType.MISS) { // Paper - add null check in case cancelled
+ if (org.bukkit.craftbukkit.event.CraftEventFactory.callProjectileHitEvent(this, movingobjectposition)) { // CraftBukkit - Call event // Paper - make cancellable // Tuinity - implement cancellation properly
this.a(movingobjectposition);
+ } // Tuinity - implement cancellation properly
// CraftBukkit start - Fire ProjectileHitEvent
if (this.dead) {
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityFireworks.java b/src/main/java/net/minecraft/world/entity/projectile/EntityFireworks.java
index 9cc59439ae2c4e758c44b2a92b78bc328efdfa1b..f9a355c847d778a9aad1987882fc816af92450ba 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityFireworks.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityFireworks.java
@@ -149,7 +149,9 @@ public class EntityFireworks extends IProjectile {
MovingObjectPosition movingobjectposition = ProjectileHelper.a((Entity) this, this::a);
if (!this.noclip) {
+ if (org.bukkit.craftbukkit.event.CraftEventFactory.callProjectileHitEvent(this, movingobjectposition)) { // CraftBukkit - Call event // Paper - make cancellable // Tuinity - implement cancellation properly
this.a(movingobjectposition);
+ } // Tuinity - implement cancellation properly
this.impulse = true;
}
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityFishingHook.java b/src/main/java/net/minecraft/world/entity/projectile/EntityFishingHook.java
index addea9c1309a308b76c93ee71e839c915bc773e8..dc6d279766ccc83a8f450028a09491b1c88f524c 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityFishingHook.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityFishingHook.java
@@ -265,7 +265,9 @@ public class EntityFishingHook extends IProjectile {
private void m() {
MovingObjectPosition movingobjectposition = ProjectileHelper.a((Entity) this, this::a);
+ if (org.bukkit.craftbukkit.event.CraftEventFactory.callProjectileHitEvent(this, movingobjectposition)) { // CraftBukkit - Call event // Paper - make cancellable // Tuinity - implement cancellation properly
this.a(movingobjectposition);
+ } // Tuinity - implement cancellation properly
}
@Override
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityLlamaSpit.java b/src/main/java/net/minecraft/world/entity/projectile/EntityLlamaSpit.java
index 39b34e619cf7ac3ad308f98551c796ac47073484..8aef834a6e8fcf5d44986745affb8f27bc3dfd6b 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityLlamaSpit.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityLlamaSpit.java
@@ -34,7 +34,9 @@ public class EntityLlamaSpit extends IProjectile {
MovingObjectPosition movingobjectposition = ProjectileHelper.a((Entity) this, this::a);
if (movingobjectposition != null) {
+ if (org.bukkit.craftbukkit.event.CraftEventFactory.callProjectileHitEvent(this, movingobjectposition)) { // CraftBukkit - Call event // Paper - make cancellable // Tuinity - implement cancellation properly
this.a(movingobjectposition);
+ } // Tuinity - implement cancellation properly
}
double d0 = this.locX() + vec3d.x;
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityProjectile.java b/src/main/java/net/minecraft/world/entity/projectile/EntityProjectile.java
index 3b379e83b79bd9b46dbdd4a48ac3842abc4dfbb8..e55061b6c04b4bde92404a6ef58ba9a52cd99c1d 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityProjectile.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityProjectile.java
@@ -65,7 +65,7 @@ public abstract class EntityProjectile extends IProjectile {
movingobjectposition = null;
}
}
- if (movingobjectposition != null) {
+ if (movingobjectposition != null && org.bukkit.craftbukkit.event.CraftEventFactory.callProjectileHitEvent(this, movingobjectposition)) { // Tuinity - implement cancellation properly
// Paper end
this.a(movingobjectposition);
} // Paper
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityShulkerBullet.java b/src/main/java/net/minecraft/world/entity/projectile/EntityShulkerBullet.java
index c3dcebad0706386e52ef2d28f2074cb6aed9f9e4..1ae528ccd09a6536b3aac320e6218f03c274d6a9 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityShulkerBullet.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityShulkerBullet.java
@@ -230,7 +230,7 @@ public class EntityShulkerBullet extends IProjectile {
MovingObjectPosition movingobjectposition = ProjectileHelper.a((Entity) this, this::a);
- if (movingobjectposition.getType() != MovingObjectPosition.EnumMovingObjectType.MISS) {
+ if (movingobjectposition.getType() != MovingObjectPosition.EnumMovingObjectType.MISS && org.bukkit.craftbukkit.event.CraftEventFactory.callProjectileHitEvent(this, movingobjectposition)) { // Tuinity - implement cancellation properly
this.a(movingobjectposition);
}
}
diff --git a/src/main/java/net/minecraft/world/entity/projectile/IProjectile.java b/src/main/java/net/minecraft/world/entity/projectile/IProjectile.java
index 9f2e7d345d98f50e6d47cbf4bb35714852fa42da..2e2e4ee98619cfbeaecffa1ebae78ccc1d7666ca 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/IProjectile.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/IProjectile.java
@@ -130,7 +130,7 @@ public abstract class IProjectile extends Entity {
}
protected void a(MovingObjectPosition movingobjectposition) {
- if (!org.bukkit.craftbukkit.event.CraftEventFactory.callProjectileHitEvent(this, movingobjectposition)) return; // CraftBukkit - Call event // Paper - make cancellable
+ // Tuinity - proper cancellation requires moving this into the caller (see method overrides) - TODO this unfortunately means we need to manually inspect each call on update
MovingObjectPosition.EnumMovingObjectType movingobjectposition_enummovingobjecttype = movingobjectposition.getType();
if (movingobjectposition_enummovingobjecttype == MovingObjectPosition.EnumMovingObjectType.ENTITY) {
diff --git a/src/main/java/net/minecraft/world/item/ItemEnderEye.java b/src/main/java/net/minecraft/world/item/ItemEnderEye.java
index f74685a7cdb905af8e9712ca8597e7ed3dc8b120..feedbd8c97c1b1c56eaff359e6a940696d416906 100644
--- a/src/main/java/net/minecraft/world/item/ItemEnderEye.java
@@ -17748,7 +17643,7 @@ index 15096a9c2719b8b4c099f62d0a1c808e56b63a8e..9bbd175f7e20591bbefdbddcb5e998e7
}
}
diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBase.java b/src/main/java/net/minecraft/world/level/block/state/BlockBase.java
index 3fdafc0ff0c4148ec844dbdc1455d17cdcb4a75a..6124b56d935386784371422960a07d518f848cf3 100644
index 0d26250887f80d0c250bcd6bc7de303362427d3e..1d82f719440c95765c01a588f4785d630b8b527a 100644
--- a/src/main/java/net/minecraft/world/level/block/state/BlockBase.java
+++ b/src/main/java/net/minecraft/world/level/block/state/BlockBase.java
@@ -348,21 +348,23 @@ public abstract class BlockBase {
@@ -17873,7 +17768,7 @@ index 3fdafc0ff0c4148ec844dbdc1455d17cdcb4a75a..6124b56d935386784371422960a07d51
}
public final boolean e() { // Paper
@@ -728,9 +784,9 @@ public abstract class BlockBase {
@@ -729,9 +785,9 @@ public abstract class BlockBase {
private static final int f = EnumBlockSupport.values().length;
protected final boolean a;
private final boolean g;
@@ -21085,10 +20980,10 @@ index 295ffab08672d77d88aca368cb5b56f80bc4f1b5..dee4d12a49468d38f077784b219199f0
@Override
public boolean teleport(Location location) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index e5549439b3d4d608cf37dd33b6c8c9e10dfe9328..45e786565ac988abadffda2e7ba3ff1e2880b786 100644
index f150ba393bc62e52840e6ebbf3d7696b670ff7e4..51d68fc13fcb8c30c10e21063f4d658f403df8ce 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2257,15 +2257,70 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2262,15 +2262,70 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
}

View File

@@ -1783,7 +1783,7 @@ index b28995ecfd7f45e6b6197be96c418aa0d05d3383..914c7a1b18151f29183cfe9474313ce1
return this.a(i);
}
diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java
index a42d3c6c227a74d691278a65a9c516f6507b6865..136faf61770011a830cc58259d1dad11830ca808 100644
index a8a2c29874e95dc08b85eb41882fc947108fbe5b..e9c95187b5162e394ddbd528bacb5b1f1fb3a29f 100644
--- a/src/main/java/net/minecraft/server/level/WorldServer.java
+++ b/src/main/java/net/minecraft/server/level/WorldServer.java
@@ -1107,7 +1107,28 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -2337,7 +2337,7 @@ index f2f65dc0612cc232009ea7ff12f5c1ba4e6b15ea..48acef830eb1d919499e9b79dc6a9af4
@Override
diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
index 2d0b83923d58cc7b6918b4e2ff2bece13ca26899..d8028675fc82883d716bcfb44431ca6ac7dfda36 100644
index 3f081177814dc874047e35e294ed18609f082d76..d74ba20808d42acd10c3861b5314afd45fddb438 100644
--- a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
@@ -231,11 +231,17 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@@ -2422,7 +2422,7 @@ index 2df3ae0b72ccb5f816d55fed15396ba5a1affb7f..754a3ea18905b79ae5ae4fc2442c94f0
return false;
}
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityProjectile.java b/src/main/java/net/minecraft/world/entity/projectile/EntityProjectile.java
index e55061b6c04b4bde92404a6ef58ba9a52cd99c1d..24d205dd1f31ece82d5cf516b8642eb0172e1a97 100644
index 8bc65e9c0fa5e134a8eb4e03f0da5b2ccd06cd7c..c48bcb89464ecffeb8805eae460d76ae8b37ccb6 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityProjectile.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityProjectile.java
@@ -4,6 +4,8 @@ import net.minecraft.core.BlockPosition;

View File

@@ -64,7 +64,7 @@ index fb61b6ac167b34486282a24e598020fb96081f28..c42a2813b40152079786dde33231d945
return this.serverStatisticManager;
}
diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java
index 136faf61770011a830cc58259d1dad11830ca808..5cfab6b49d7b1f13fcf90a175c758f40bccea18a 100644
index e9c95187b5162e394ddbd528bacb5b1f1fb3a29f..c3b9f28fbc153bf366093f6288272fd1c3c25a40 100644
--- a/src/main/java/net/minecraft/server/level/WorldServer.java
+++ b/src/main/java/net/minecraft/server/level/WorldServer.java
@@ -1002,7 +1002,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -263,10 +263,10 @@ index 361f7857e461578e90cb71e15027dadaf794cb69..2578a4677d1ee060f687be531e696b7c
+ }
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 45e786565ac988abadffda2e7ba3ff1e2880b786..f4052aaa2235894b996d65c569a083f1a09b59a3 100644
index 51d68fc13fcb8c30c10e21063f4d658f403df8ce..9e07a1e59bf756101a0aaff9891361cc7486854d 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2491,4 +2491,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2496,4 +2496,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
return spigot;
}
// Spigot end

View File

@@ -108,10 +108,10 @@ index 2578a4677d1ee060f687be531e696b7c7be89e84..c441fcea9b2b5a77b801c8a69541cf42
+ }
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index f4052aaa2235894b996d65c569a083f1a09b59a3..1ff48eae5e5b732fbd1e720c55e08a30669bebfa 100644
index 9e07a1e59bf756101a0aaff9891361cc7486854d..1c5bcc17a702f5af514ce4db7f5d096d5f449dd6 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2507,5 +2507,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2512,5 +2512,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
public void resetIdleTimer() {
getHandle().resetIdleTimer();
}

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable villager brain ticks
diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
index d8028675fc82883d716bcfb44431ca6ac7dfda36..5539c4cbea46398e92ab6ec56bb9b821e5f01e02 100644
index d74ba20808d42acd10c3861b5314afd45fddb438..4c2b01774403211bf9af8b5c9f75bfa1b30e1746 100644
--- a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
@@ -127,6 +127,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Zombie horse naturally spawn
diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java
index 5cfab6b49d7b1f13fcf90a175c758f40bccea18a..da73ce172419224e8737e37b91de1d9bb119cbd0 100644
index c3b9f28fbc153bf366093f6288272fd1c3c25a40..ed81ed932abba0ea72668950f2359c6bc5438c03 100644
--- a/src/main/java/net/minecraft/server/level/WorldServer.java
+++ b/src/main/java/net/minecraft/server/level/WorldServer.java
@@ -96,6 +96,7 @@ import net.minecraft.world.entity.ai.village.poi.VillagePlace;

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Villagers follow emerald blocks
diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
index 5539c4cbea46398e92ab6ec56bb9b821e5f01e02..2464f1a5a922a5557e2d00233033714533acad76 100644
index 4c2b01774403211bf9af8b5c9f75bfa1b30e1746..9b23d1a4d65523840c98aa3d9a7b0daffa1723db 100644
--- a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
@@ -59,6 +59,7 @@ import net.minecraft.world.entity.ai.BehaviorController;

View File

@@ -25,7 +25,7 @@ index 92d8c5e716678862deadd7755db8e9270daafeda..4b4578e02fd4be72f20458c54a878892
// Paper start - drop leash variable
PlayerUnleashEntityEvent event = CraftEventFactory.callPlayerUnleashEntityEvent(this, entityhuman, !entityhuman.abilities.canInstantlyBuild);
diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
index 2464f1a5a922a5557e2d00233033714533acad76..aeb3c82afeda3f1688b1b6617c6d05da2e7a3c76 100644
index 9b23d1a4d65523840c98aa3d9a7b0daffa1723db..e588a16eab9ff30e45e49ca074252e74d70d3a85 100644
--- a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
@@ -149,6 +149,11 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation

View File

@@ -6,10 +6,10 @@ Subject: [PATCH] Implement configurable search radius for villagers to spawn
diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
index aeb3c82afeda3f1688b1b6617c6d05da2e7a3c76..2fad37812bfa39872e99c4432e1982d62f65efb7 100644
index e588a16eab9ff30e45e49ca074252e74d70d3a85..e06f7cfe2d7020f4f6c416d5b82958d3821a1529 100644
--- a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
@@ -970,6 +970,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@@ -977,6 +977,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@Nullable
private EntityIronGolem d(WorldServer worldserver) {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable villager breeding
diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
index 2fad37812bfa39872e99c4432e1982d62f65efb7..d3032682af94428419daa02f55b6040090d8df73 100644
index e06f7cfe2d7020f4f6c416d5b82958d3821a1529..e2779521977716aa58bb713de67cb2d9fa8cbe5f 100644
--- a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
@@ -718,7 +718,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Add no-random-tick block list
diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java
index da73ce172419224e8737e37b91de1d9bb119cbd0..6da14a9190a0c863e620d6a065bcd8d86456da53 100644
index ed81ed932abba0ea72668950f2359c6bc5438c03..449822699f5d9f78a89d747f01e16a64064c57cd 100644
--- a/src/main/java/net/minecraft/server/level/WorldServer.java
+++ b/src/main/java/net/minecraft/server/level/WorldServer.java
@@ -532,14 +532,14 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -26,7 +26,7 @@ index da73ce172419224e8737e37b91de1d9bb119cbd0..6da14a9190a0c863e620d6a065bcd8d8
this.nextTickListFluid = new TickListServer<>(this, (fluidtype) -> {
return fluidtype == null || fluidtype == FluidTypes.EMPTY;
diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBase.java b/src/main/java/net/minecraft/world/level/block/state/BlockBase.java
index 6124b56d935386784371422960a07d518f848cf3..e5f66cdf95b6073545efc8d1527b0a5e2741f79d 100644
index 1d82f719440c95765c01a588f4785d630b8b527a..0ea0a1fc5f4d879d48bbdf24731dabec10dbccd1 100644
--- a/src/main/java/net/minecraft/world/level/block/state/BlockBase.java
+++ b/src/main/java/net/minecraft/world/level/block/state/BlockBase.java
@@ -671,10 +671,12 @@ public abstract class BlockBase {

View File

@@ -88,7 +88,7 @@ index da708df0dc50ea02441f9db2bfd52f04d9a8e3da..867a6b7fe1788b20f8d0f4f1e42dd52b
public void playerTick() {
diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java
index 6da14a9190a0c863e620d6a065bcd8d86456da53..bf08a625d169aae69115a9385dfd6dfb444ce03d 100644
index 449822699f5d9f78a89d747f01e16a64064c57cd..132cf3beabc9206c7ba5fb557bb487fa813cc5a7 100644
--- a/src/main/java/net/minecraft/server/level/WorldServer.java
+++ b/src/main/java/net/minecraft/server/level/WorldServer.java
@@ -216,6 +216,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -5315,7 +5315,7 @@ index 3d85501791fce621335f34bf508becb74b80210d..da2220b08a9cd9c2d7d3fd06702e6690
PiglinBruteAI.b(this);
PiglinBruteAI.c(this);
diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
index d3032682af94428419daa02f55b6040090d8df73..a0f0d5e0909da5cfe87078d4722b030635cfeadd 100644
index e2779521977716aa58bb713de67cb2d9fa8cbe5f..bd56b7a009a8bcbdd353d7bdcb2a2a7310ab45cc 100644
--- a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
@@ -32,6 +32,7 @@ import net.minecraft.network.syncher.DataWatcherObject;
@@ -5444,7 +5444,7 @@ index 1b130b50888113d515ce1e200a157c3bbff3b625..fedfb18e71300807a83e2ed2729fe192
+ // Purpur end
}
diff --git a/src/main/java/net/minecraft/world/entity/projectile/IProjectile.java b/src/main/java/net/minecraft/world/entity/projectile/IProjectile.java
index 2e2e4ee98619cfbeaecffa1ebae78ccc1d7666ca..3914081629669aea19d50530db996728bbfa607f 100644
index 8fe98404ebb8b3b5d1fdac0896b27da10736026d..390023a7a825eed850a13572b719f47ed534c003 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/IProjectile.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/IProjectile.java
@@ -24,7 +24,7 @@ public abstract class IProjectile extends Entity {
@@ -5454,9 +5454,9 @@ index 2e2e4ee98619cfbeaecffa1ebae78ccc1d7666ca..3914081629669aea19d50530db996728
- private boolean d;
+ private boolean d; public boolean leftOwner() { return d; } public void setLeftOwner(boolean leftOwner) { this.d = leftOwner; } // Purpur - OBFHELPER
IProjectile(EntityTypes<? extends IProjectile> entitytypes, World world) {
super(entitytypes, world);
@@ -86,6 +86,7 @@ public abstract class IProjectile extends Entity {
// CraftBukkit start
private boolean hitCancelled = false;
@@ -90,6 +90,7 @@ public abstract class IProjectile extends Entity {
super.tick();
}
@@ -5464,7 +5464,7 @@ index 2e2e4ee98619cfbeaecffa1ebae78ccc1d7666ca..3914081629669aea19d50530db996728
private boolean h() {
Entity entity = this.getShooter();
@@ -149,7 +150,7 @@ public abstract class IProjectile extends Entity {
@@ -167,7 +168,7 @@ public abstract class IProjectile extends Entity {
iblockdata.a(this.world, iblockdata, movingobjectpositionblock, this);
}
@@ -6885,10 +6885,10 @@ index dee4d12a49468d38f077784b219199f0070786f2..c524a0994f1c9ef1d0534403efa4e448
+ // 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 ac89b7f0de0e5015c599648dc93cbcae760744f2..c44a15cd7b2d67c77eac7a1d2a7e9569f9dce48c 100644
index b14cec316b16e46d54d389650372c5c9ce1e5a4d..81ea6ffb6be8a7aed281c6538f0535bbaf00b068 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -544,6 +544,18 @@ public class CraftEventFactory {
@@ -545,6 +545,18 @@ public class CraftEventFactory {
}
craftServer.getPluginManager().callEvent(event);
@@ -6907,7 +6907,7 @@ index ac89b7f0de0e5015c599648dc93cbcae760744f2..c44a15cd7b2d67c77eac7a1d2a7e9569
return event;
}
@@ -944,6 +956,7 @@ public class CraftEventFactory {
@@ -948,6 +960,7 @@ public class CraftEventFactory {
damageCause = DamageCause.ENTITY_EXPLOSION;
}
event = new EntityDamageByEntityEvent(damager.getBukkitEntity(), entity.getBukkitEntity(), damageCause, modifiers, modifierFunctions);
@@ -6915,7 +6915,7 @@ index ac89b7f0de0e5015c599648dc93cbcae760744f2..c44a15cd7b2d67c77eac7a1d2a7e9569
}
event.setCancelled(cancelled);
@@ -1028,6 +1041,7 @@ public class CraftEventFactory {
@@ -1032,6 +1045,7 @@ public class CraftEventFactory {
if (!event.isCancelled()) {
event.getEntity().setLastDamageCause(event);
}
@@ -6923,7 +6923,7 @@ index ac89b7f0de0e5015c599648dc93cbcae760744f2..c44a15cd7b2d67c77eac7a1d2a7e9569
return event;
}
@@ -1077,6 +1091,7 @@ public class CraftEventFactory {
@@ -1081,6 +1095,7 @@ public class CraftEventFactory {
EntityDamageEvent event;
if (damager != null) {
event = new EntityDamageByEntityEvent(damager.getBukkitEntity(), damagee.getBukkitEntity(), cause, modifiers, modifierFunctions);

View File

@@ -17,13 +17,13 @@ index fb7d5fa53c51766f348271285a2e921be1ca0497..1bc6380a805c1f76ffde67951d32d911
return this == block;
}
diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBase.java b/src/main/java/net/minecraft/world/level/block/state/BlockBase.java
index e5f66cdf95b6073545efc8d1527b0a5e2741f79d..23a3b1b317b6b3e9d812f5a7b09b099b0528c59e 100644
index 0ea0a1fc5f4d879d48bbdf24731dabec10dbccd1..df595dc52858807479584ce8da49390a25695990 100644
--- a/src/main/java/net/minecraft/world/level/block/state/BlockBase.java
+++ b/src/main/java/net/minecraft/world/level/block/state/BlockBase.java
@@ -741,6 +741,7 @@ public abstract class BlockBase {
return this.getBlock().a(tag) && predicate.test(this);
@@ -742,6 +742,7 @@ public abstract class BlockBase {
}
public final boolean isSameInstance(Block block) { return a(block); } // Paper - OBFHELPER
+ public boolean equals(Block block) { return a(block); } // Purpur - OBFHELPER
public boolean a(Block block) {
return this.getBlock().a(block);

View File

@@ -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/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java
index bf08a625d169aae69115a9385dfd6dfb444ce03d..ed0e5282a0718768ed2e7ab7f56b1dfa82403335 100644
index 132cf3beabc9206c7ba5fb557bb487fa813cc5a7..9d5d71d9bfe24a0a5504fd9f70fbfed1591570f2 100644
--- a/src/main/java/net/minecraft/server/level/WorldServer.java
+++ b/src/main/java/net/minecraft/server/level/WorldServer.java
@@ -92,6 +92,7 @@ import net.minecraft.world.entity.EnumCreatureType;

View File

@@ -6,7 +6,7 @@ Subject: [PATCH] Despawn rate config options per projectile type
Default values of -1 respect vanilla behaviour.
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java b/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java
index e440d26c920c4efddf958c61bfdfa508273062cc..3ee404effe339a5742926255da6a9c41d1bc9367 100644
index 42c1a7e8d51868c74e92d97f1df8d36fcaab6252..5775a28cb9d94b94b6e6bbc810fe31260810632e 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java
@@ -61,7 +61,7 @@ public abstract class EntityArrow extends IProjectile {
@@ -18,7 +18,7 @@ index e440d26c920c4efddf958c61bfdfa508273062cc..3ee404effe339a5742926255da6a9c41
private double damage;
public int knockbackStrength;
private SoundEffect ak;
@@ -295,13 +295,23 @@ public abstract class EntityArrow extends IProjectile {
@@ -293,13 +293,23 @@ public abstract class EntityArrow extends IProjectile {
}
@@ -96,10 +96,10 @@ index efdf5bc4f07231690c680429b3f77bd07970eee0..cf2c691357c41a7e7044f7a719144db2
+ // Purpur end
}
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityFireworks.java b/src/main/java/net/minecraft/world/entity/projectile/EntityFireworks.java
index f9a355c847d778a9aad1987882fc816af92450ba..9b4b8b1a0f7654c9c30ca614cac6f485f82db5ef 100644
index ca7a10c4b04766d7eb55be9252e96ef939e76df3..6a6ed24640c152bd5d6637b30ccce3efdf8a4856 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityFireworks.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityFireworks.java
@@ -325,4 +325,11 @@ public class EntityFireworks extends IProjectile {
@@ -323,4 +323,11 @@ public class EntityFireworks extends IProjectile {
public Packet<?> P() {
return new PacketPlayOutSpawnEntity(this);
}
@@ -112,10 +112,10 @@ index f9a355c847d778a9aad1987882fc816af92450ba..9b4b8b1a0f7654c9c30ca614cac6f485
+ // Purpur end
}
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityFishingHook.java b/src/main/java/net/minecraft/world/entity/projectile/EntityFishingHook.java
index dc6d279766ccc83a8f450028a09491b1c88f524c..5a5773209183331d849368c6b300367ac0ebe203 100644
index 45f0f004e97b20e5c6c5b1f205b088bf8aa86017..242ba2c1feb07f9e582a722f34e6362dd84f27cc 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityFishingHook.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityFishingHook.java
@@ -617,4 +617,11 @@ public class EntityFishingHook extends IProjectile {
@@ -615,4 +615,11 @@ public class EntityFishingHook extends IProjectile {
private HookState() {}
}
@@ -144,10 +144,10 @@ index cf2663d9883654f53b327246d85ee63c3990cd71..e860737bacfea0a1d728dbaaf41d6216
+ // Purpur end
}
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityLlamaSpit.java b/src/main/java/net/minecraft/world/entity/projectile/EntityLlamaSpit.java
index 8aef834a6e8fcf5d44986745affb8f27bc3dfd6b..0bfb80331cea6bd2cf85a9475b6416691edd8b0b 100644
index 6f497fc1b1eb33d0d9dfb0dc014b25b7eeb0dfac..56de41fc11720f4a37ee4e1e7cbec1b2dbe3ab76 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityLlamaSpit.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityLlamaSpit.java
@@ -88,4 +88,11 @@ public class EntityLlamaSpit extends IProjectile {
@@ -86,4 +86,11 @@ public class EntityLlamaSpit extends IProjectile {
public Packet<?> P() {
return new PacketPlayOutSpawnEntity(this);
}
@@ -176,7 +176,7 @@ index dbc0afc5fb9e358a3e6d596692f57fb28303c4da..a3344719bcf178df5b63cda6f6a854c2
+ // Purpur end
}
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityShulkerBullet.java b/src/main/java/net/minecraft/world/entity/projectile/EntityShulkerBullet.java
index 1ae528ccd09a6536b3aac320e6218f03c274d6a9..cfc1376bfed9399daa6f27f54780ccf8e05753c6 100644
index 24076f3de298173e293507f2024105532f833455..96c609aa888b4fb83db6eddba259bd553fe0dd0a 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityShulkerBullet.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityShulkerBullet.java
@@ -337,4 +337,11 @@ public class EntityShulkerBullet extends IProjectile {
@@ -257,16 +257,18 @@ index 021a7e31dc3650c0c404a893374528e6a63dfbad..2fe0e32a1158cccb3060f5a986c9fc41
+ // Purpur end
}
diff --git a/src/main/java/net/minecraft/world/entity/projectile/IProjectile.java b/src/main/java/net/minecraft/world/entity/projectile/IProjectile.java
index 3914081629669aea19d50530db996728bbfa607f..62fa5be9090c8789e91bf9b9f614e74a4a6babdd 100644
index 390023a7a825eed850a13572b719f47ed534c003..8df2b646df701b4d21f956b9870d7c09c13e2b6d 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/IProjectile.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/IProjectile.java
@@ -25,11 +25,25 @@ public abstract class IProjectile extends Entity {
@@ -25,6 +25,7 @@ public abstract class IProjectile extends Entity {
private UUID shooter;
private int c;
private boolean d; public boolean leftOwner() { return d; } public void setLeftOwner(boolean leftOwner) { this.d = leftOwner; } // Purpur - OBFHELPER
+ public int despawnCounter; // Purpur - moved from EntityArrow
IProjectile(EntityTypes<? extends IProjectile> entitytypes, World world) {
// CraftBukkit start
private boolean hitCancelled = false;
@@ -34,6 +35,19 @@ public abstract class IProjectile extends Entity {
super(entitytypes, world);
}
@@ -286,7 +288,7 @@ index 3914081629669aea19d50530db996728bbfa607f..62fa5be9090c8789e91bf9b9f614e74a
public void setShooter(@Nullable Entity entity) {
if (entity != null) {
this.shooter = entity.getUniqueID();
@@ -84,6 +98,12 @@ public abstract class IProjectile extends Entity {
@@ -88,6 +102,12 @@ public abstract class IProjectile extends Entity {
}
super.tick();

View File

@@ -18,7 +18,7 @@ index 3086ee023685781d94e2fb99fc8dff5264f01165..74c1047305cac5673e274096709c757e
public PacketPlayOutUpdateTime() {}
diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java
index ed0e5282a0718768ed2e7ab7f56b1dfa82403335..5fe1665275cadf276a1560f7b13765e7f191ee61 100644
index 9d5d71d9bfe24a0a5504fd9f70fbfed1591570f2..e76e54fb833ce69968d08f78836acf23e6436653 100644
--- a/src/main/java/net/minecraft/server/level/WorldServer.java
+++ b/src/main/java/net/minecraft/server/level/WorldServer.java
@@ -64,6 +64,7 @@ import net.minecraft.network.protocol.game.PacketPlayOutExplosion;

View File

@@ -7,10 +7,10 @@ This prevents keeping arrows alive indefinitely (such as when the block
the arrow is stuck in gets removed, like a piston head going up/down)
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java b/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java
index 3ee404effe339a5742926255da6a9c41d1bc9367..6f0a306449844dc50426202262219d0e952459cc 100644
index 5775a28cb9d94b94b6e6bbc810fe31260810632e..7861b9e28b0fcc7ab931498fc7c96404456b9998 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java
@@ -283,7 +283,7 @@ public abstract class EntityArrow extends IProjectile {
@@ -281,7 +281,7 @@ public abstract class EntityArrow extends IProjectile {
Vec3D vec3d = this.getMot();
this.setMot(vec3d.d((double) (this.random.nextFloat() * 0.2F), (double) (this.random.nextFloat() * 0.2F), (double) (this.random.nextFloat() * 0.2F)));

View File

@@ -33,10 +33,10 @@ index fedfb18e71300807a83e2ed2729fe192a8f9aa33..af10d5aea7909ee9f38982264233f0a4
if (flag5) {
if (i > 0) {
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index c44a15cd7b2d67c77eac7a1d2a7e9569f9dce48c..ad325f58198fcae7b9cae55e4c9675c8498838d1 100644
index 81ea6ffb6be8a7aed281c6538f0535bbaf00b068..064256873da7660815aeb416a6cfe55c24e6838d 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -1090,7 +1090,7 @@ public class CraftEventFactory {
@@ -1094,7 +1094,7 @@ public class CraftEventFactory {
private static EntityDamageEvent callEntityDamageEvent(Entity damager, Entity damagee, DamageCause cause, Map<DamageModifier, Double> modifiers, Map<DamageModifier, Function<? super Double, Double>> modifierFunctions, boolean cancelled) {
EntityDamageEvent event;
if (damager != null) {

View File

@@ -30,7 +30,7 @@ index 48e6a4c588ef39a4bde067d79b96a656c68750ce..ac7bad10697c6fde7d512753992d5971
// Paper start - add target parameter
return this.a(blockposition, null, i);
diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
index a0f0d5e0909da5cfe87078d4722b030635cfeadd..bc14e242f97f9f6d8e581d12319c95ae5f70f250 100644
index bd56b7a009a8bcbdd353d7bdcb2a2a7310ab45cc..45739558f10687870b475711735342d839859e03 100644
--- a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
@@ -89,6 +89,7 @@ import net.minecraft.world.level.IWorldReader;

View File

@@ -186,7 +186,7 @@ index 25c10973c74f98224dd1d2ae5e7178b9781374aa..d50b5632f0e53147ea23109f1ed627b4
behaviorcontroller.removeMemory(MemoryModuleType.SECONDARY_JOB_SITE);
}
diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
index bc14e242f97f9f6d8e581d12319c95ae5f70f250..0924e0c13b3c57e46f6dc40232707088f96e98c7 100644
index 45739558f10687870b475711735342d839859e03..0699d835da44296ede8ee6458a7bf8ebccc313ae 100644
--- a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
@@ -203,7 +203,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@@ -198,7 +198,7 @@ index bc14e242f97f9f6d8e581d12319c95ae5f70f250..0924e0c13b3c57e46f6dc40232707088
}
behaviorcontroller.a(Activity.CORE, Behaviors.a(villagerprofession, 0.5F));
@@ -944,6 +944,11 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@@ -951,6 +951,11 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
}
public boolean canPlant() {

View File

@@ -56,7 +56,7 @@ index 3622ea01edfb9dfaab254ceaf09582d9e8993174..070de6c066b2e293e0bc0ea9722a9a3d
public void sendAll(Packet<?> packet) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 1ff48eae5e5b732fbd1e720c55e08a30669bebfa..ca465a53a0c6232f912287704fc63cdcc59a28bd 100644
index 1c5bcc17a702f5af514ce4db7f5d096d5f449dd6..e204374c8f17ca5514e9bcfd24d411069285de29 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1444,7 +1444,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {

View File

@@ -1367,7 +1367,7 @@ index da2220b08a9cd9c2d7d3fd06702e6690e12f095e..c441d6b2ce29d914a29c2f39d70adb14
public static AttributeProvider.Builder eS() {
diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
index 0924e0c13b3c57e46f6dc40232707088f96e98c7..16933de70a23414859019e19545bfa5baa38091a 100644
index 0699d835da44296ede8ee6458a7bf8ebccc313ae..f911cd4cf2ad82e81b09f92063abd573797fe5d6 100644
--- a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
@@ -167,6 +167,11 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation

View File

@@ -82,7 +82,7 @@ index d918194e45953764fa3fd286b715714330a60941..70496562faa89e92da34a4f7b891f845
if (this.exitPortal == null && this.world.getTypeKey() == DimensionManager.THE_END) { // CraftBukkit - work in alternate worlds
this.a((WorldServer) this.world);
diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBase.java b/src/main/java/net/minecraft/world/level/block/state/BlockBase.java
index 23a3b1b317b6b3e9d812f5a7b09b099b0528c59e..4f40c6c3397596c81147fae4a6a51bfd517643d2 100644
index df595dc52858807479584ce8da49390a25695990..0990eb8b2e2d8a5f7c1a2640727d86c37a50298e 100644
--- a/src/main/java/net/minecraft/world/level/block/state/BlockBase.java
+++ b/src/main/java/net/minecraft/world/level/block/state/BlockBase.java
@@ -303,6 +303,7 @@ public abstract class BlockBase {
@@ -123,7 +123,7 @@ index c524a0994f1c9ef1d0534403efa4e4481955b2f3..a80f664d2cf713fd751421be3735e2f4
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index ca465a53a0c6232f912287704fc63cdcc59a28bd..37564214c6595dfc07534124f749bf65002325c2 100644
index e204374c8f17ca5514e9bcfd24d411069285de29..7e0b3aa37af39db2bc2f630e479008dd9a443776 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -126,6 +126,7 @@ import org.bukkit.entity.EntityType;

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Config for skipping night
diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java
index 5fe1665275cadf276a1560f7b13765e7f191ee61..01d6691ec3284ac0d29025b1a67743f9845bf74b 100644
index e76e54fb833ce69968d08f78836acf23e6436653..db91e4ca583f676fe74d35a2368b3c39ab58cd9a 100644
--- a/src/main/java/net/minecraft/server/level/WorldServer.java
+++ b/src/main/java/net/minecraft/server/level/WorldServer.java
@@ -1028,7 +1028,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Add config for villager trading
diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
index 16933de70a23414859019e19545bfa5baa38091a..a02748bff911415d95bea344f179ad27ff9d6092 100644
index f911cd4cf2ad82e81b09f92063abd573797fe5d6..4903d79ad1036df8f52aded6ddaca604d4a8434a 100644
--- a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
@@ -373,7 +373,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation