3
0
Mirror von https://github.com/PaperMC/Paper.git synchronisiert 2024-12-18 20:40:08 +01:00

[Auto] Updated Upstream (Bukkit/CraftBukkit)

Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
98d3f031 SPIGOT-4376: Add draft BlockDropItemEvent

CraftBukkit Changes:
1057710a SPIGOT-4376: Add draft BlockDropItemEvent
Dieser Commit ist enthalten in:
Aikar 2018-10-31 05:01:59 -04:00
Ursprung f840af3e2b
Commit acd334793f
Es konnte kein GPG-Schlüssel zu dieser Signatur gefunden werden
GPG-Schlüssel-ID: 401ADFC9891FAAFE
15 geänderte Dateien mit 130 neuen und 130 gelöschten Zeilen

Datei anzeigen

@ -1,11 +1,11 @@
From 7ac07ac07ac07ac07ac07ac07ac07ac07ac07ac0 Mon Sep 17 00:00:00 2001
From bbbfb1d1d20ec895f22ede5b5709a915b1f4ba5a Mon Sep 17 00:00:00 2001
From: AlphaBlend <whizkid3000@hotmail.com>
Date: Sun, 16 Oct 2016 23:19:30 -0700
Subject: [PATCH] Add EntityZapEvent
diff --git a/src/main/java/net/minecraft/server/EntityPig.java b/src/main/java/net/minecraft/server/EntityPig.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index fecc7e154d..b405e63e81 100644
--- a/src/main/java/net/minecraft/server/EntityPig.java
+++ b/src/main/java/net/minecraft/server/EntityPig.java
@@ -152,6 +152,12 @@ public class EntityPig extends EntityAnimal {
@ -22,7 +22,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
if (CraftEventFactory.callPigZapEvent(this, entitylightning, entitypigzombie).isCancelled()) {
return;
diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 5e52349064..8195412806 100644
--- a/src/main/java/net/minecraft/server/EntityVillager.java
+++ b/src/main/java/net/minecraft/server/EntityVillager.java
@@ -610,6 +610,12 @@ public class EntityVillager extends EntityAgeable implements NPC, IMerchant {
@ -48,10 +48,10 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
}
}
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 7e0441e64e..e0716a6085 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -723,6 +723,14 @@ public class CraftEventFactory {
@@ -730,6 +730,14 @@ public class CraftEventFactory {
return event;
}

Datei anzeigen

@ -1,11 +1,11 @@
From 7ac07ac07ac07ac07ac07ac07ac07ac07ac07ac0 Mon Sep 17 00:00:00 2001
From 3ee3f95161eaed8a82c83206f39072a5871a0b89 Mon Sep 17 00:00:00 2001
From: AlphaBlend <whizkid3000@hotmail.com>
Date: Thu, 8 Sep 2016 08:48:33 -0700
Subject: [PATCH] Add source to PlayerExpChangeEvent
diff --git a/src/main/java/net/minecraft/server/EntityExperienceOrb.java b/src/main/java/net/minecraft/server/EntityExperienceOrb.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 3155ed9487..1e25ade7cf 100644
--- a/src/main/java/net/minecraft/server/EntityExperienceOrb.java
+++ b/src/main/java/net/minecraft/server/EntityExperienceOrb.java
@@ -185,7 +185,7 @@ public class EntityExperienceOrb extends Entity {
@ -18,7 +18,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
this.die();
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index e0716a6085..47ccf36ed1 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -50,6 +50,7 @@ import org.bukkit.entity.Player;
@ -29,7 +29,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
import org.bukkit.event.Cancellable;
import org.bukkit.event.Event;
import org.bukkit.event.block.*;
@@ -692,6 +693,17 @@ public class CraftEventFactory {
@@ -699,6 +700,17 @@ public class CraftEventFactory {
return event;
}

Datei anzeigen

@ -1,11 +1,11 @@
From 7ac07ac07ac07ac07ac07ac07ac07ac07ac07ac0 Mon Sep 17 00:00:00 2001
From c1e74c7dd9fc42821e7b1a77cd6004dde99e63e4 Mon Sep 17 00:00:00 2001
From: Techcable <Techcable@outlook.com>
Date: Fri, 16 Dec 2016 21:25:39 -0600
Subject: [PATCH] Add ProjectileCollideEvent
diff --git a/src/main/java/net/minecraft/server/EntityArrow.java b/src/main/java/net/minecraft/server/EntityArrow.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 230a23d95d..66e574bd3a 100644
--- a/src/main/java/net/minecraft/server/EntityArrow.java
+++ b/src/main/java/net/minecraft/server/EntityArrow.java
@@ -195,6 +195,16 @@ public abstract class EntityArrow extends Entity implements IProjectile {
@ -26,7 +26,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
this.a(movingobjectposition);
this.impulse = true;
diff --git a/src/main/java/net/minecraft/server/EntityFireball.java b/src/main/java/net/minecraft/server/EntityFireball.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 3e3619d79f..58cc4824cf 100644
--- a/src/main/java/net/minecraft/server/EntityFireball.java
+++ b/src/main/java/net/minecraft/server/EntityFireball.java
@@ -68,6 +68,15 @@ public abstract class EntityFireball extends Entity {
@ -46,7 +46,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
this.a(movingobjectposition);
diff --git a/src/main/java/net/minecraft/server/EntityFishingHook.java b/src/main/java/net/minecraft/server/EntityFishingHook.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index ad42f8ea67..e33ecfcda7 100644
--- a/src/main/java/net/minecraft/server/EntityFishingHook.java
+++ b/src/main/java/net/minecraft/server/EntityFishingHook.java
@@ -245,6 +245,16 @@ public class EntityFishingHook extends Entity {
@ -67,7 +67,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
vec3d1 = new Vec3D(movingobjectposition.pos.x, movingobjectposition.pos.y, movingobjectposition.pos.z);
}
diff --git a/src/main/java/net/minecraft/server/EntityProjectile.java b/src/main/java/net/minecraft/server/EntityProjectile.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index ee402d4140..fc8c0cab55 100644
--- a/src/main/java/net/minecraft/server/EntityProjectile.java
+++ b/src/main/java/net/minecraft/server/EntityProjectile.java
@@ -144,6 +144,15 @@ public abstract class EntityProjectile extends Entity implements IProjectile {
@ -87,10 +87,10 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
if (movingobjectposition.type == MovingObjectPosition.EnumMovingObjectType.BLOCK && this.world.getType(movingobjectposition.a()).getBlock() == Blocks.NETHER_PORTAL) {
this.e(movingobjectposition.a());
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 47ccf36ed1..d0fa9a4dd8 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -827,6 +827,16 @@ public class CraftEventFactory {
@@ -834,6 +834,16 @@ public class CraftEventFactory {
return CraftItemStack.asNMSCopy(bitem);
}

Datei anzeigen

@ -1,4 +1,4 @@
From 1915eebcc8a56f47762305edbb8a0943e23d972a Mon Sep 17 00:00:00 2001
From 9ec95842bd16ba04ce090036fe3e5491fc8ed682 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 19 Dec 2017 16:31:46 -0500
Subject: [PATCH] ExperienceOrbs API for Reason/Source/Triggering player
@ -8,7 +8,7 @@ Adds lots of information about why this orb exists.
Replaces isFromBottle() with logic that persists entity reloads too.
diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java
index bb8b450ac..163ce42c6 100644
index bb8b450ac4..163ce42c61 100644
--- a/src/main/java/net/minecraft/server/Block.java
+++ b/src/main/java/net/minecraft/server/Block.java
@@ -454,13 +454,13 @@ public class Block implements IMaterial {
@ -28,7 +28,7 @@ index bb8b450ac..163ce42c6 100644
}
diff --git a/src/main/java/net/minecraft/server/EntityEnderDragon.java b/src/main/java/net/minecraft/server/EntityEnderDragon.java
index 69c8e245b..8993fe1ad 100644
index 69c8e245bd..8993fe1add 100644
--- a/src/main/java/net/minecraft/server/EntityEnderDragon.java
+++ b/src/main/java/net/minecraft/server/EntityEnderDragon.java
@@ -618,7 +618,7 @@ public class EntityEnderDragon extends EntityInsentient implements IComplex, IMo
@ -41,7 +41,7 @@ index 69c8e245b..8993fe1ad 100644
}
diff --git a/src/main/java/net/minecraft/server/EntityExperienceOrb.java b/src/main/java/net/minecraft/server/EntityExperienceOrb.java
index 1e25ade7c..3e2312b86 100644
index 1e25ade7cf..3e2312b866 100644
--- a/src/main/java/net/minecraft/server/EntityExperienceOrb.java
+++ b/src/main/java/net/minecraft/server/EntityExperienceOrb.java
@@ -15,9 +15,59 @@ public class EntityExperienceOrb extends Entity {
@ -120,7 +120,7 @@ index 1e25ade7c..3e2312b86 100644
public void d(EntityHuman entityhuman) {
diff --git a/src/main/java/net/minecraft/server/EntityFishingHook.java b/src/main/java/net/minecraft/server/EntityFishingHook.java
index e33ecfcda..b164aff93 100644
index e33ecfcda7..b164aff93f 100644
--- a/src/main/java/net/minecraft/server/EntityFishingHook.java
+++ b/src/main/java/net/minecraft/server/EntityFishingHook.java
@@ -467,7 +467,7 @@ public class EntityFishingHook extends Entity {
@ -133,7 +133,7 @@ index e33ecfcda..b164aff93 100644
// CraftBukkit end
if (itemstack1.getItem().a(TagsItem.FISHES)) {
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index b2b575d0e..48bb14805 100644
index b2b575d0e8..48bb14805e 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -354,7 +354,8 @@ public abstract class EntityLiving extends Entity {
@ -147,7 +147,7 @@ index b2b575d0e..48bb14805 100644
this.expToDrop = 0;
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/EntityThrownExpBottle.java b/src/main/java/net/minecraft/server/EntityThrownExpBottle.java
index a5e1939e0..e73dba09a 100644
index a5e1939e05..e73dba09a6 100644
--- a/src/main/java/net/minecraft/server/EntityThrownExpBottle.java
+++ b/src/main/java/net/minecraft/server/EntityThrownExpBottle.java
@@ -36,7 +36,7 @@ public class EntityThrownExpBottle extends EntityProjectile {
@ -160,7 +160,7 @@ index a5e1939e0..e73dba09a 100644
this.die();
diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java
index f05a1483f..70f54b1fb 100644
index f05a1483ff..70f54b1fb9 100644
--- a/src/main/java/net/minecraft/server/EntityVillager.java
+++ b/src/main/java/net/minecraft/server/EntityVillager.java
@@ -411,7 +411,7 @@ public class EntityVillager extends EntityAgeable implements NPC, IMerchant {
@ -173,7 +173,7 @@ index f05a1483f..70f54b1fb 100644
if (this.tradingPlayer instanceof EntityPlayer) {
diff --git a/src/main/java/net/minecraft/server/PathfinderGoalBreed.java b/src/main/java/net/minecraft/server/PathfinderGoalBreed.java
index 4a128f707..b87096467 100644
index 4a128f707b..b870964674 100644
--- a/src/main/java/net/minecraft/server/PathfinderGoalBreed.java
+++ b/src/main/java/net/minecraft/server/PathfinderGoalBreed.java
@@ -122,7 +122,7 @@ public class PathfinderGoalBreed extends PathfinderGoal {
@ -186,10 +186,10 @@ index 4a128f707..b87096467 100644
// CraftBukkit end
}
diff --git a/src/main/java/net/minecraft/server/PlayerInteractManager.java b/src/main/java/net/minecraft/server/PlayerInteractManager.java
index 1bfa7e5e6..4e4418032 100644
index c8cfa3abe4..aa7780eff5 100644
--- a/src/main/java/net/minecraft/server/PlayerInteractManager.java
+++ b/src/main/java/net/minecraft/server/PlayerInteractManager.java
@@ -385,7 +385,7 @@ public class PlayerInteractManager {
@@ -390,7 +390,7 @@ public class PlayerInteractManager {
// CraftBukkit start - Drop event experience
if (flag && event != null) {
@ -199,7 +199,7 @@ index 1bfa7e5e6..4e4418032 100644
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/SlotFurnaceResult.java b/src/main/java/net/minecraft/server/SlotFurnaceResult.java
index 22c47c63c..52e296d46 100644
index 22c47c63c7..52e296d468 100644
--- a/src/main/java/net/minecraft/server/SlotFurnaceResult.java
+++ b/src/main/java/net/minecraft/server/SlotFurnaceResult.java
@@ -9,7 +9,7 @@ import org.bukkit.event.inventory.FurnaceExtractEvent;
@ -221,7 +221,7 @@ index 22c47c63c..52e296d46 100644
}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index dbc8dc4b9..fe53db5d2 100644
index dbc8dc4b9e..fe53db5d22 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -1363,7 +1363,7 @@ public class CraftWorld implements World {
@ -234,7 +234,7 @@ index dbc8dc4b9..fe53db5d2 100644
// not sure what this can do
if (LightningStrike.class.isAssignableFrom(clazz)) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java
index 3a09cab3d..3302af0e4 100644
index 3a09cab3d4..3302af0e45 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java
@@ -18,6 +18,18 @@ public class CraftExperienceOrb extends CraftEntity implements ExperienceOrb {

Datei anzeigen

@ -1,4 +1,4 @@
From 325016cc7a982f737cea5fc4368000ccf7e30564 Mon Sep 17 00:00:00 2001
From 45b4f0ecce04b20a1e43f1a985155ef35e8d33db Mon Sep 17 00:00:00 2001
From: Shane Freeder <theboyetronic@gmail.com>
Date: Sun, 11 Feb 2018 10:43:46 +0000
Subject: [PATCH] Extend Player Interact cancellation
@ -13,10 +13,10 @@ Update adjacent blocks of doors, double plants, pistons and beds
when cancelling interaction.
diff --git a/src/main/java/net/minecraft/server/PlayerInteractManager.java b/src/main/java/net/minecraft/server/PlayerInteractManager.java
index 4e44180329..cae24961fd 100644
index aa7780eff5..23223e89d3 100644
--- a/src/main/java/net/minecraft/server/PlayerInteractManager.java
+++ b/src/main/java/net/minecraft/server/PlayerInteractManager.java
@@ -110,6 +110,11 @@ public class PlayerInteractManager {
@@ -111,6 +111,11 @@ public class PlayerInteractManager {
if (event.isCancelled()) {
// Let the client know the block still exists
((EntityPlayer) this.player).playerConnection.sendPacket(new PacketPlayOutBlockChange(this.world, blockposition));
@ -28,7 +28,7 @@ index 4e44180329..cae24961fd 100644
// Update any tile entity data for this block
TileEntity tileentity = this.world.getTileEntity(blockposition);
if (tileentity != null) {
@@ -460,7 +465,25 @@ public class PlayerInteractManager {
@@ -465,7 +470,25 @@ public class PlayerInteractManager {
((EntityPlayer) entityhuman).playerConnection.sendPacket(new PacketPlayOutBlockChange(world, bottom ? blockposition.up() : blockposition.down()));
} else if (iblockdata.getBlock() instanceof BlockCake) {
((EntityPlayer) entityhuman).getBukkitEntity().sendHealthUpdate(); // SPIGOT-1341 - reset health for cake
@ -55,5 +55,5 @@ index 4e44180329..cae24961fd 100644
enuminteractionresult = (event.useItemInHand() != Event.Result.ALLOW) ? EnumInteractionResult.SUCCESS : EnumInteractionResult.PASS;
} else if (this.gamemode == EnumGamemode.SPECTATOR) {
--
2.19.0
2.19.1

Datei anzeigen

@ -1,4 +1,4 @@
From 7ac07ac07ac07ac07ac07ac07ac07ac07ac07ac0 Mon Sep 17 00:00:00 2001
From ed598cfdc8b7e336c28cac7fb5cc9f22dda94b9f Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sat, 15 Jun 2013 19:51:17 -0400
Subject: [PATCH] EntityShootBowEvent consumeArrow and getArrowItem API
@ -6,7 +6,7 @@ Subject: [PATCH] EntityShootBowEvent consumeArrow and getArrowItem API
Adds ability to get what arrow was shot, and control if it should be consumed.
diff --git a/src/main/java/net/minecraft/server/EntitySkeletonAbstract.java b/src/main/java/net/minecraft/server/EntitySkeletonAbstract.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index f3fca99bcf..9ef0c22de3 100644
--- a/src/main/java/net/minecraft/server/EntitySkeletonAbstract.java
+++ b/src/main/java/net/minecraft/server/EntitySkeletonAbstract.java
@@ -160,7 +160,7 @@ public abstract class EntitySkeletonAbstract extends EntityMonster implements IR
@ -19,7 +19,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
event.getProjectile().remove();
return;
diff --git a/src/main/java/net/minecraft/server/ItemBow.java b/src/main/java/net/minecraft/server/ItemBow.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index b0f7649b82..152b179ce1 100644
--- a/src/main/java/net/minecraft/server/ItemBow.java
+++ b/src/main/java/net/minecraft/server/ItemBow.java
@@ -57,6 +57,7 @@ public class ItemBow extends Item {
@ -58,10 +58,10 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
if (itemstack1.isEmpty()) {
entityhuman.inventory.f(itemstack1);
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index d0fa9a4dd8..d769a913d2 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -257,7 +257,7 @@ public class CraftEventFactory {
@@ -264,7 +264,7 @@ public class CraftEventFactory {
/**
* EntityShootBowEvent
*/
@ -70,7 +70,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
LivingEntity shooter = (LivingEntity) who.getBukkitEntity();
CraftItemStack itemInHand = CraftItemStack.asCraftMirror(itemstack);
Arrow arrow = (Arrow) entityArrow.getBukkitEntity();
@@ -266,7 +266,7 @@ public class CraftEventFactory {
@@ -273,7 +273,7 @@ public class CraftEventFactory {
itemInHand = null;
}

Datei anzeigen

@ -1,4 +1,4 @@
From 7ac07ac07ac07ac07ac07ac07ac07ac07ac07ac0 Mon Sep 17 00:00:00 2001
From bfa18c1f7a973739c5cf1fd896da3edf405e92aa Mon Sep 17 00:00:00 2001
From: Brokkonaut <hannos17@gmx.de>
Date: Sat, 30 Jun 2018 05:45:39 +0200
Subject: [PATCH] Improve ProjectileHitEvent to include the BlockFace where the
@ -6,10 +6,10 @@ Subject: [PATCH] Improve ProjectileHitEvent to include the BlockFace where the
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index d769a913d2..bc175d4c51 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -851,7 +851,7 @@ public class CraftEventFactory {
@@ -858,7 +858,7 @@ public class CraftEventFactory {
hitBlock = entity.getBukkitEntity().getWorld().getBlockAt(blockposition.getX(), blockposition.getY(), blockposition.getZ());
}

Datei anzeigen

@ -1,4 +1,4 @@
From 4d3b6af3a8a4102f3921f0874cccfc0b89602fe8 Mon Sep 17 00:00:00 2001
From 821283c8c5aae41af68928e9508781ffefc04170 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 3 Jul 2018 21:56:23 -0400
Subject: [PATCH] InventoryCloseEvent Reason API
@ -168,10 +168,10 @@ index 5443000bdf..a0c0c96a28 100644
// Check if the fromWorld and toWorld are the same.
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index c11cc55154..138c61f56e 100644
index bc175d4c51..402574f559 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -941,8 +941,19 @@ public class CraftEventFactory {
@@ -948,8 +948,19 @@ public class CraftEventFactory {
return event;
}

Datei anzeigen

@ -1,11 +1,11 @@
From 7ac07ac07ac07ac07ac07ac07ac07ac07ac07ac0 Mon Sep 17 00:00:00 2001
From 5eb8fc0bc3e1d7351cec7484dfadcb53b2d28cd4 Mon Sep 17 00:00:00 2001
From: Hugo Manrique <hugmanrique@gmail.com>
Date: Mon, 23 Jul 2018 14:22:26 +0200
Subject: [PATCH] Vanished players don't have rights
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index e0cd7bd857..801c3fb8e0 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -94,7 +94,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@ -18,7 +18,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
protected int k;
private Entity vehicle;
diff --git a/src/main/java/net/minecraft/server/ItemBlock.java b/src/main/java/net/minecraft/server/ItemBlock.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 1cecccef23..c77d7c16c6 100644
--- a/src/main/java/net/minecraft/server/ItemBlock.java
+++ b/src/main/java/net/minecraft/server/ItemBlock.java
@@ -70,7 +70,8 @@ public class ItemBlock extends Item {
@ -32,7 +32,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
BlockCanBuildEvent event = new BlockCanBuildEvent(CraftBlock.at(blockactioncontext.getWorld(), blockactioncontext.getClickPosition()), CraftBlockData.fromData(iblockdata), defaultReturn);
blockactioncontext.getWorld().getServer().getPluginManager().callEvent(event);
diff --git a/src/main/java/net/minecraft/server/VoxelShape.java b/src/main/java/net/minecraft/server/VoxelShape.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 1ea8464aeb..35b08a5f99 100644
--- a/src/main/java/net/minecraft/server/VoxelShape.java
+++ b/src/main/java/net/minecraft/server/VoxelShape.java
@@ -24,6 +24,7 @@ public abstract class VoxelShape {
@ -44,7 +44,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
if (this.isEmpty()) {
throw new UnsupportedOperationException("No bounds for empty shape.");
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index fa94e41f0f..ad1011a22a 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1595,6 +1595,37 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
@ -86,10 +86,10 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
if (voxelshape.isEmpty()) {
return true;
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 402574f559..de04bd6dfe 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -832,6 +832,14 @@ public class CraftEventFactory {
@@ -839,6 +839,14 @@ public class CraftEventFactory {
Projectile projectile = (Projectile) entity.getBukkitEntity();
org.bukkit.entity.Entity collided = position.entity.getBukkitEntity();
com.destroystokyo.paper.event.entity.ProjectileCollideEvent event = new com.destroystokyo.paper.event.entity.ProjectileCollideEvent(projectile, collided);

Datei anzeigen

@ -1,11 +1,11 @@
From 7ac07ac07ac07ac07ac07ac07ac07ac07ac07ac0 Mon Sep 17 00:00:00 2001
From 9ad5361888bd9985dd45a222e569a890e940549f Mon Sep 17 00:00:00 2001
From: BillyGalbreath <Blake.Galbreath@GMail.com>
Date: Thu, 2 Aug 2018 08:44:35 -0500
Subject: [PATCH] Add hand to bucket events
diff --git a/src/main/java/net/minecraft/server/EntityCow.java b/src/main/java/net/minecraft/server/EntityCow.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 5f4f107d5a..b2e50f8532 100644
--- a/src/main/java/net/minecraft/server/EntityCow.java
+++ b/src/main/java/net/minecraft/server/EntityCow.java
@@ -65,7 +65,7 @@ public class EntityCow extends EntityAnimal {
@ -18,7 +18,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
if (event.isCancelled()) {
return false;
diff --git a/src/main/java/net/minecraft/server/ItemBucket.java b/src/main/java/net/minecraft/server/ItemBucket.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index b63da71512..b0dd30dd12 100644
--- a/src/main/java/net/minecraft/server/ItemBucket.java
+++ b/src/main/java/net/minecraft/server/ItemBucket.java
@@ -35,7 +35,7 @@ public class ItemBucket extends Item {
@ -67,10 +67,10 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
((EntityPlayer) entityhuman).playerConnection.sendPacket(new PacketPlayOutBlockChange(world, blockposition)); // SPIGOT-4238: needed when looking through entity
// TODO: inventory not updated
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index de04bd6dfe..f2dc2d9f5d 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -181,6 +181,20 @@ public class CraftEventFactory {
@@ -188,6 +188,20 @@ public class CraftEventFactory {
}
private static PlayerEvent getPlayerBucketEvent(boolean isFilling, EntityHuman who, int clickedX, int clickedY, int clickedZ, EnumDirection clickedFace, ItemStack itemstack, net.minecraft.server.Item item) {
@ -91,7 +91,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
Player player = (who == null) ? null : (Player) who.getBukkitEntity();
CraftItemStack itemInHand = CraftItemStack.asNewCraftStack(item);
Material bucket = CraftMagicNumbers.getMaterial(itemstack.getItem());
@@ -193,10 +207,10 @@ public class CraftEventFactory {
@@ -200,10 +214,10 @@ public class CraftEventFactory {
PlayerEvent event = null;
if (isFilling) {

Datei anzeigen

@ -1,11 +1,11 @@
From bf5ffa79f05a3980b1b6fbbd843c73a5ec3ebffb Mon Sep 17 00:00:00 2001
From eda7118f1c06e049a257a9423a21c1ef620a4f4f Mon Sep 17 00:00:00 2001
From: stonar96 <minecraft.stonar96@gmail.com>
Date: Mon, 20 Aug 2018 03:03:58 +0200
Subject: [PATCH] Anti-Xray
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index ac07bcc75..ca93fab88 100644
index ac07bcc751..ca93fab889 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -1,7 +1,10 @@
@ -49,7 +49,7 @@ index ac07bcc75..ca93fab88 100644
}
diff --git a/src/main/java/com/destroystokyo/paper/antixray/ChunkPacketBlockController.java b/src/main/java/com/destroystokyo/paper/antixray/ChunkPacketBlockController.java
new file mode 100644
index 000000000..1ba8477bf
index 0000000000..1ba8477bf9
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/antixray/ChunkPacketBlockController.java
@@ -0,0 +1,45 @@
@ -100,7 +100,7 @@ index 000000000..1ba8477bf
+}
diff --git a/src/main/java/com/destroystokyo/paper/antixray/ChunkPacketBlockControllerAntiXray.java b/src/main/java/com/destroystokyo/paper/antixray/ChunkPacketBlockControllerAntiXray.java
new file mode 100644
index 000000000..d00e113ba
index 0000000000..d00e113ba8
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/antixray/ChunkPacketBlockControllerAntiXray.java
@@ -0,0 +1,670 @@
@ -776,7 +776,7 @@ index 000000000..d00e113ba
+}
diff --git a/src/main/java/com/destroystokyo/paper/antixray/ChunkPacketInfo.java b/src/main/java/com/destroystokyo/paper/antixray/ChunkPacketInfo.java
new file mode 100644
index 000000000..a68bace35
index 0000000000..a68bace353
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/antixray/ChunkPacketInfo.java
@@ -0,0 +1,81 @@
@ -863,7 +863,7 @@ index 000000000..a68bace35
+}
diff --git a/src/main/java/com/destroystokyo/paper/antixray/ChunkPacketInfoAntiXray.java b/src/main/java/com/destroystokyo/paper/antixray/ChunkPacketInfoAntiXray.java
new file mode 100644
index 000000000..e255a45fa
index 0000000000..e255a45fa3
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/antixray/ChunkPacketInfoAntiXray.java
@@ -0,0 +1,29 @@
@ -898,7 +898,7 @@ index 000000000..e255a45fa
+}
diff --git a/src/main/java/com/destroystokyo/paper/antixray/DataBitsReader.java b/src/main/java/com/destroystokyo/paper/antixray/DataBitsReader.java
new file mode 100644
index 000000000..cc586827a
index 0000000000..cc586827aa
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/antixray/DataBitsReader.java
@@ -0,0 +1,56 @@
@ -960,7 +960,7 @@ index 000000000..cc586827a
+}
diff --git a/src/main/java/com/destroystokyo/paper/antixray/DataBitsWriter.java b/src/main/java/com/destroystokyo/paper/antixray/DataBitsWriter.java
new file mode 100644
index 000000000..37093419c
index 0000000000..37093419cf
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/antixray/DataBitsWriter.java
@@ -0,0 +1,84 @@
@ -1049,7 +1049,7 @@ index 000000000..37093419c
+ }
+}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 585de1bb2..4e8eb137a 100644
index 585de1bb2f..4e8eb137ae 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -535,7 +535,7 @@ public class Chunk implements IChunkAccess {
@ -1071,7 +1071,7 @@ index 585de1bb2..4e8eb137a 100644
this.initLighting();
}
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
index 2dc5a8594..9b4bc3ff6 100644
index 2dc5a8594a..9b4bc3ff68 100644
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
@@ -859,7 +859,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
@ -1093,7 +1093,7 @@ index 2dc5a8594..9b4bc3ff6 100644
chunksection.getBlocks().a(nbttagcompound, "Palette", "BlockStates");
chunksection.a(new NibbleArray(nbttagcompound.getByteArray("BlockLight")));
diff --git a/src/main/java/net/minecraft/server/ChunkSection.java b/src/main/java/net/minecraft/server/ChunkSection.java
index 7e4c79a1c..bdfc7d81f 100644
index 7e4c79a1ce..bdfc7d81ff 100644
--- a/src/main/java/net/minecraft/server/ChunkSection.java
+++ b/src/main/java/net/minecraft/server/ChunkSection.java
@@ -10,9 +10,15 @@ public class ChunkSection {
@ -1114,7 +1114,7 @@ index 7e4c79a1c..bdfc7d81f 100644
if (flag) {
this.skyLight = new NibbleArray();
diff --git a/src/main/java/net/minecraft/server/ChunkTaskScheduler.java b/src/main/java/net/minecraft/server/ChunkTaskScheduler.java
index 95eb1a84a..34019bd1b 100644
index 95eb1a84ac..34019bd1b3 100644
--- a/src/main/java/net/minecraft/server/ChunkTaskScheduler.java
+++ b/src/main/java/net/minecraft/server/ChunkTaskScheduler.java
@@ -42,7 +42,7 @@ public class ChunkTaskScheduler extends Scheduler<ChunkCoordIntPair, ChunkStatus
@ -1136,7 +1136,7 @@ index 95eb1a84a..34019bd1b 100644
}) : (Scheduler.a) this.progressCache.get(chunkcoordintpair.a());
}
diff --git a/src/main/java/net/minecraft/server/DataPaletteBlock.java b/src/main/java/net/minecraft/server/DataPaletteBlock.java
index 6e7454b13..71a3636be 100644
index 6e7454b134..71a3636be6 100644
--- a/src/main/java/net/minecraft/server/DataPaletteBlock.java
+++ b/src/main/java/net/minecraft/server/DataPaletteBlock.java
@@ -1,5 +1,6 @@
@ -1271,7 +1271,7 @@ index 6e7454b13..71a3636be 100644
int jx = along.length * 64 / 4096;
if (this.h == this.b) {
diff --git a/src/main/java/net/minecraft/server/NetworkManager.java b/src/main/java/net/minecraft/server/NetworkManager.java
index f8facddb4..b2afec5e4 100644
index f8facddb40..b2afec5e4b 100644
--- a/src/main/java/net/minecraft/server/NetworkManager.java
+++ b/src/main/java/net/minecraft/server/NetworkManager.java
@@ -158,8 +158,8 @@ public class NetworkManager extends SimpleChannelInboundHandler<Packet<?>> {
@ -1332,7 +1332,7 @@ index f8facddb4..b2afec5e4 100644
public void a() {
this.o();
diff --git a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java
index 22a262bb6..40ec398ee 100644
index 22a262bb60..40ec398eef 100644
--- a/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java
+++ b/src/main/java/net/minecraft/server/PacketPlayOutMapChunk.java
@@ -1,5 +1,6 @@
@ -1418,7 +1418,7 @@ index 22a262bb6..40ec398ee 100644
if (flag) {
packetdataserializer.writeBytes(chunksection.getSkyLightArray().asBytes());
diff --git a/src/main/java/net/minecraft/server/PlayerChunk.java b/src/main/java/net/minecraft/server/PlayerChunk.java
index a0fcac329..2c7c8adf7 100644
index a0fcac3296..2c7c8adf7c 100644
--- a/src/main/java/net/minecraft/server/PlayerChunk.java
+++ b/src/main/java/net/minecraft/server/PlayerChunk.java
@@ -118,6 +118,8 @@ public class PlayerChunk {
@ -1449,10 +1449,10 @@ index a0fcac329..2c7c8adf7 100644
} else {
this.a((Packet) (new PacketPlayOutMultiBlockChange(this.dirtyCount, this.dirtyBlocks, this.chunk)));
diff --git a/src/main/java/net/minecraft/server/PlayerInteractManager.java b/src/main/java/net/minecraft/server/PlayerInteractManager.java
index cae24961f..a9690fb1c 100644
index 23223e89d3..23fc4d8e14 100644
--- a/src/main/java/net/minecraft/server/PlayerInteractManager.java
+++ b/src/main/java/net/minecraft/server/PlayerInteractManager.java
@@ -206,6 +206,8 @@ public class PlayerInteractManager {
@@ -207,6 +207,8 @@ public class PlayerInteractManager {
}
}
@ -1462,7 +1462,7 @@ index cae24961f..a9690fb1c 100644
public void a(BlockPosition blockposition) {
diff --git a/src/main/java/net/minecraft/server/ProtoChunk.java b/src/main/java/net/minecraft/server/ProtoChunk.java
index 0b79c1b16..6554c7727 100644
index 0b79c1b16c..6554c7727a 100644
--- a/src/main/java/net/minecraft/server/ProtoChunk.java
+++ b/src/main/java/net/minecraft/server/ProtoChunk.java
@@ -40,12 +40,24 @@ public class ProtoChunk implements IChunkAccess {
@ -1510,7 +1510,7 @@ index 0b79c1b16..6554c7727 100644
if (enumskyblock == EnumSkyBlock.SKY) {
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index bb0a23fcb..d239fc6d3 100644
index bb0a23fcba..d239fc6d3a 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1,6 +1,8 @@
@ -1547,7 +1547,7 @@ index bb0a23fcb..d239fc6d3 100644
if (iblockdata1 == null) {
// CraftBukkit start - remove blockstate if failed
diff --git a/src/main/java/org/bukkit/craftbukkit/generator/CraftChunkData.java b/src/main/java/org/bukkit/craftbukkit/generator/CraftChunkData.java
index 550416bef..923d1b282 100644
index 550416bef0..923d1b2821 100644
--- a/src/main/java/org/bukkit/craftbukkit/generator/CraftChunkData.java
+++ b/src/main/java/org/bukkit/craftbukkit/generator/CraftChunkData.java
@@ -17,9 +17,11 @@ import org.bukkit.material.MaterialData;

Datei anzeigen

@ -1,4 +1,4 @@
From 7ac07ac07ac07ac07ac07ac07ac07ac07ac07ac0 Mon Sep 17 00:00:00 2001
From 3237acd9a43b9f26b64bcfa1a18a51ac319ec8e5 Mon Sep 17 00:00:00 2001
From: Phoenix616 <mail@moep.tv>
Date: Tue, 21 Aug 2018 01:39:35 +0100
Subject: [PATCH] Improve death events
@ -15,7 +15,7 @@ items and experience which is otherwise only properly possible by using
internal code.
diff --git a/src/main/java/net/minecraft/server/CombatTracker.java b/src/main/java/net/minecraft/server/CombatTracker.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 9a74601b05..6e60d15ccb 100644
--- a/src/main/java/net/minecraft/server/CombatTracker.java
+++ b/src/main/java/net/minecraft/server/CombatTracker.java
@@ -163,6 +163,7 @@ public class CombatTracker {
@ -27,7 +27,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
int i = this.f ? 300 : 100;
if (this.g && (!this.b.isAlive() || this.b.ticksLived - this.c > i)) {
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 665c85ca47..8abd71dfc7 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -1539,6 +1539,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@ -55,7 +55,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
return SoundCategory.NEUTRAL;
}
diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 35afffedef..e8e7413748 100644
--- a/src/main/java/net/minecraft/server/EntityArmorStand.java
+++ b/src/main/java/net/minecraft/server/EntityArmorStand.java
@@ -629,7 +629,8 @@ public class EntityArmorStand extends EntityLiving {
@ -69,7 +69,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 3a70fa381f..c27807ea2a 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -76,14 +76,14 @@ public abstract class EntityLiving extends Entity {
@ -207,7 +207,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
return this.isBaby() ? (this.random.nextFloat() - this.random.nextFloat()) * 0.2F + 1.5F : (this.random.nextFloat() - this.random.nextFloat()) * 0.2F + 1.0F;
}
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 8901ea8e46..cfc9c8224d 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -75,6 +75,10 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@ -258,7 +258,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
}
}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftSound.java b/src/main/java/org/bukkit/craftbukkit/CraftSound.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 17fab031b4..ee8219e3ba 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftSound.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftSound.java
@@ -674,6 +674,22 @@ public enum CraftSound {
@ -285,7 +285,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
this.minecraftKey = minecraftKey;
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index 905feb0cb9..a5c4781743 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1711,7 +1711,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@ -306,10 +306,10 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
public void injectScaledMaxHealth(Collection<AttributeInstance> collection, boolean force) {
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index 7ac07ac07ac0..7ac07ac07ac0 100644
index f2dc2d9f5d..65f133bc1d 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -438,9 +438,16 @@ public class CraftEventFactory {
@@ -445,9 +445,16 @@ public class CraftEventFactory {
public static EntityDeathEvent callEntityDeathEvent(EntityLiving victim, List<org.bukkit.inventory.ItemStack> drops) {
CraftLivingEntity entity = (CraftLivingEntity) victim.getBukkitEntity();
EntityDeathEvent event = new EntityDeathEvent(entity, drops, victim.getExpReward());
@ -326,7 +326,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
victim.expToDrop = event.getDroppedExp();
for (org.bukkit.inventory.ItemStack stack : event.getDrops()) {
@@ -456,8 +463,15 @@ public class CraftEventFactory {
@@ -463,8 +470,15 @@ public class CraftEventFactory {
CraftPlayer entity = victim.getBukkitEntity();
PlayerDeathEvent event = new PlayerDeathEvent(entity, drops, victim.getExpReward(), 0, deathMessage);
event.setKeepInventory(keepInventory);
@ -342,7 +342,7 @@ index 7ac07ac07ac0..7ac07ac07ac0 100644
victim.keepLevel = event.getKeepLevel();
victim.newLevel = event.getNewLevel();
@@ -478,6 +492,31 @@ public class CraftEventFactory {
@@ -485,6 +499,31 @@ public class CraftEventFactory {
return event;
}

Datei anzeigen

@ -1,4 +1,4 @@
From e2720237c9d98f6fe17d5578784cbea7e826a1da Mon Sep 17 00:00:00 2001
From c3289a26bda694817e0110a865d6807030661c73 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sat, 21 Jul 2018 16:55:04 -0400
Subject: [PATCH] Async Chunk Loading and Generation
@ -43,7 +43,7 @@ reading or writing to the chunk will be safe, so plugins still
should not be touching chunks asynchronously!
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index b703e0848..77d35ac99 100644
index b703e08486..77d35ac99d 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -385,4 +385,57 @@ public class PaperConfig {
@ -106,7 +106,7 @@ index b703e0848..77d35ac99 100644
}
diff --git a/src/main/java/com/destroystokyo/paper/util/PriorityQueuedExecutor.java b/src/main/java/com/destroystokyo/paper/util/PriorityQueuedExecutor.java
new file mode 100644
index 000000000..e589aa356
index 0000000000..e589aa356c
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/util/PriorityQueuedExecutor.java
@@ -0,0 +1,298 @@
@ -409,7 +409,7 @@ index 000000000..e589aa356
+
+}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 246e3bf8b..a08f9e7c2 100644
index 479a84a250..340b756bb4 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -184,6 +184,7 @@ public class Chunk implements IChunkAccess {
@ -421,7 +421,7 @@ index 246e3bf8b..a08f9e7c2 100644
Iterator iterator = protochunk.s().iterator();
diff --git a/src/main/java/net/minecraft/server/ChunkMap.java b/src/main/java/net/minecraft/server/ChunkMap.java
index 39ac032b0..1662e4eba 100644
index 39ac032b0b..1662e4eba5 100644
--- a/src/main/java/net/minecraft/server/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/ChunkMap.java
@@ -14,9 +14,17 @@ public class ChunkMap extends Long2ObjectOpenHashMap<Chunk> {
@ -527,7 +527,7 @@ index 39ac032b0..1662e4eba 100644
public Chunk remove(Object object) {
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index e64cb8051..7a1f84886 100644
index e64cb80514..7a1f848863 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -35,12 +35,12 @@ public class ChunkProviderServer implements IChunkProvider {
@ -677,7 +677,7 @@ index e64cb8051..7a1f84886 100644
}
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
index 9b4bc3ff6..4c22f6d75 100644
index 9b4bc3ff68..4c22f6d756 100644
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
@@ -120,7 +120,7 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
@ -704,7 +704,7 @@ index 9b4bc3ff6..4c22f6d75 100644
completion = new Supplier<NBTTagCompound>() {
public NBTTagCompound get() {
diff --git a/src/main/java/net/minecraft/server/ChunkSection.java b/src/main/java/net/minecraft/server/ChunkSection.java
index bdfc7d81f..a5c4564d6 100644
index bdfc7d81ff..a5c4564d60 100644
--- a/src/main/java/net/minecraft/server/ChunkSection.java
+++ b/src/main/java/net/minecraft/server/ChunkSection.java
@@ -24,7 +24,17 @@ public class ChunkSection {
@ -726,7 +726,7 @@ index bdfc7d81f..a5c4564d6 100644
public IBlockData getType(int i, int j, int k) {
return this.blockIds.a(i, j, k);
diff --git a/src/main/java/net/minecraft/server/ChunkTaskScheduler.java b/src/main/java/net/minecraft/server/ChunkTaskScheduler.java
index 34019bd1b..fc9091c80 100644
index 34019bd1b3..fc9091c801 100644
--- a/src/main/java/net/minecraft/server/ChunkTaskScheduler.java
+++ b/src/main/java/net/minecraft/server/ChunkTaskScheduler.java
@@ -20,13 +20,14 @@ public class ChunkTaskScheduler extends Scheduler<ChunkCoordIntPair, ChunkStatus
@ -797,7 +797,7 @@ index 34019bd1b..fc9091c80 100644
protected ProtoChunk a(ChunkCoordIntPair chunkcoordintpair, ChunkStatus chunkstatus, Map<ChunkCoordIntPair, ProtoChunk> map) {
diff --git a/src/main/java/net/minecraft/server/DataPaletteBlock.java b/src/main/java/net/minecraft/server/DataPaletteBlock.java
index 71a3636be..ff0fe2541 100644
index 71a3636be6..ff0fe25417 100644
--- a/src/main/java/net/minecraft/server/DataPaletteBlock.java
+++ b/src/main/java/net/minecraft/server/DataPaletteBlock.java
@@ -3,7 +3,7 @@ package net.minecraft.server;
@ -882,7 +882,7 @@ index 71a3636be..ff0fe2541 100644
// Paper start - Anti-Xray - Support default methods
diff --git a/src/main/java/net/minecraft/server/DefinedStructureManager.java b/src/main/java/net/minecraft/server/DefinedStructureManager.java
index 271dc41d4..bd15534c2 100644
index 271dc41d45..bd15534c23 100644
--- a/src/main/java/net/minecraft/server/DefinedStructureManager.java
+++ b/src/main/java/net/minecraft/server/DefinedStructureManager.java
@@ -19,7 +19,7 @@ import org.apache.logging.log4j.Logger;
@ -895,7 +895,7 @@ index 271dc41d4..bd15534c2 100644
private final MinecraftServer d;
private final java.nio.file.Path e;
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 13c0c7ee8..552be8cd8 100644
index 13c0c7ee89..552be8cd88 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -209,7 +209,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@ -908,7 +908,7 @@ index 13c0c7ee8..552be8cd8 100644
this.aJ = Sets.newHashSet();
this.aL = new double[] { 0.0D, 0.0D, 0.0D};
diff --git a/src/main/java/net/minecraft/server/IChunkLoader.java b/src/main/java/net/minecraft/server/IChunkLoader.java
index 4698ee99f..dfb45cc4e 100644
index 4698ee99f8..dfb45cc4ea 100644
--- a/src/main/java/net/minecraft/server/IChunkLoader.java
+++ b/src/main/java/net/minecraft/server/IChunkLoader.java
@@ -6,6 +6,8 @@ import javax.annotation.Nullable;
@ -921,7 +921,7 @@ index 4698ee99f..dfb45cc4e 100644
Chunk a(GeneratorAccess generatoraccess, int i, int j, Consumer<Chunk> consumer) throws IOException;
diff --git a/src/main/java/net/minecraft/server/MathHelper.java b/src/main/java/net/minecraft/server/MathHelper.java
index 49fba0979..9ad646f8d 100644
index 49fba0979e..9ad646f8d4 100644
--- a/src/main/java/net/minecraft/server/MathHelper.java
+++ b/src/main/java/net/minecraft/server/MathHelper.java
@@ -142,6 +142,7 @@ public class MathHelper {
@ -933,7 +933,7 @@ index 49fba0979..9ad646f8d 100644
fx = fx % 360.0F;
if (fx >= 180.0F) {
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 763130b03..67722440f 100644
index 763130b036..67722440fd 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -503,6 +503,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@ -1031,7 +1031,7 @@ index 763130b03..67722440f 100644
diff --git a/src/main/java/net/minecraft/server/PaperAsyncChunkProvider.java b/src/main/java/net/minecraft/server/PaperAsyncChunkProvider.java
new file mode 100644
index 000000000..c334462f2
index 0000000000..c334462f20
--- /dev/null
+++ b/src/main/java/net/minecraft/server/PaperAsyncChunkProvider.java
@@ -0,0 +1,619 @@
@ -1655,7 +1655,7 @@ index 000000000..c334462f2
+
+}
diff --git a/src/main/java/net/minecraft/server/PlayerChunk.java b/src/main/java/net/minecraft/server/PlayerChunk.java
index 2c7c8adf7..62c524ef3 100644
index 2c7c8adf7c..62c524ef35 100644
--- a/src/main/java/net/minecraft/server/PlayerChunk.java
+++ b/src/main/java/net/minecraft/server/PlayerChunk.java
@@ -29,16 +29,59 @@ public class PlayerChunk {
@ -1757,7 +1757,7 @@ index 2c7c8adf7..62c524ef3 100644
}
}
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index 95baa1dc8..9f6028586 100644
index 95baa1dc8b..9f60285868 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -27,10 +27,10 @@ public class PlayerChunkMap {
@ -1817,7 +1817,7 @@ index 95baa1dc8..9f6028586 100644
private void e() {
diff --git a/src/main/java/net/minecraft/server/RegionLimitedWorldAccess.java b/src/main/java/net/minecraft/server/RegionLimitedWorldAccess.java
index 9c34319b6..7149b1472 100644
index 9c34319b6e..7149b1472b 100644
--- a/src/main/java/net/minecraft/server/RegionLimitedWorldAccess.java
+++ b/src/main/java/net/minecraft/server/RegionLimitedWorldAccess.java
@@ -35,7 +35,7 @@ public class RegionLimitedWorldAccess implements GeneratorAccess {
@ -1830,7 +1830,7 @@ index 9c34319b6..7149b1472 100644
this.m = world.getChunkProvider().getChunkGenerator().getSettings();
this.i = world.getSeaLevel();
diff --git a/src/main/java/net/minecraft/server/SchedulerBatch.java b/src/main/java/net/minecraft/server/SchedulerBatch.java
index d868149d1..0d45d933e 100644
index d868149d1a..0d45d933ee 100644
--- a/src/main/java/net/minecraft/server/SchedulerBatch.java
+++ b/src/main/java/net/minecraft/server/SchedulerBatch.java
@@ -9,6 +9,7 @@ public class SchedulerBatch<K, T extends SchedulerTask<K, T>, R> {
@ -1885,7 +1885,7 @@ index d868149d1..0d45d933e 100644
}
}
diff --git a/src/main/java/net/minecraft/server/StructurePiece.java b/src/main/java/net/minecraft/server/StructurePiece.java
index a5cf017da..def8730b8 100644
index a5cf017da1..def8730b86 100644
--- a/src/main/java/net/minecraft/server/StructurePiece.java
+++ b/src/main/java/net/minecraft/server/StructurePiece.java
@@ -14,7 +14,7 @@ public abstract class StructurePiece {
@ -1912,7 +1912,7 @@ index a5cf017da..def8730b8 100644
return null;
}
diff --git a/src/main/java/net/minecraft/server/StructureStart.java b/src/main/java/net/minecraft/server/StructureStart.java
index 1926c902a..1117e4ae2 100644
index 1926c902ad..1117e4ae27 100644
--- a/src/main/java/net/minecraft/server/StructureStart.java
+++ b/src/main/java/net/minecraft/server/StructureStart.java
@@ -6,7 +6,7 @@ import java.util.List;
@ -1961,7 +1961,7 @@ index 1926c902a..1117e4ae2 100644
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 016d50d3c..f1495d30c 100644
index 016d50d3cb..f1495d30cb 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -46,7 +46,7 @@ import org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason;
@ -2058,7 +2058,7 @@ index 016d50d3c..f1495d30c 100644
if (entity == null) return false;
if (entity.valid) { MinecraftServer.LOGGER.error("Attempted Double World add on " + entity, new Throwable()); return true; } // Paper
diff --git a/src/main/java/net/minecraft/server/WorldGenStronghold.java b/src/main/java/net/minecraft/server/WorldGenStronghold.java
index fa99fe014..4f49786aa 100644
index fa99fe0146..4f49786aa3 100644
--- a/src/main/java/net/minecraft/server/WorldGenStronghold.java
+++ b/src/main/java/net/minecraft/server/WorldGenStronghold.java
@@ -9,24 +9,29 @@ import java.util.Random;
@ -2205,7 +2205,7 @@ index fa99fe014..4f49786aa 100644
}
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 6e54b71e8..a54ea5a69 100644
index 6e54b71e88..a54ea5a69c 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -731,7 +731,7 @@ public class WorldServer extends World implements IAsyncTaskHandler {
@ -2218,7 +2218,7 @@ index 6e54b71e8..a54ea5a69 100644
}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 6d72db7bd..32bf4e589 100644
index 6d72db7bd3..32bf4e589c 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1014,8 +1014,12 @@ public final class CraftServer implements Server {
@ -2246,7 +2246,7 @@ index 6d72db7bd..32bf4e589 100644
}
}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index 604d1dbb3..fd494e9fc 100644
index 604d1dbb38..fd494e9fc9 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -162,6 +162,16 @@ public class CraftWorld implements World {
@ -2284,7 +2284,7 @@ index 604d1dbb3..fd494e9fc 100644
if (isChunkLoaded(chunkCoordX + x, chunkCoordZ + z)) {
unloadChunk(chunkCoordX + x, chunkCoordZ + z);
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index d6bf1e39b..e5822c83e 100644
index 65f133bc1d..f4d1f58b87 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -78,6 +78,7 @@ public class CraftEventFactory {
@ -2295,7 +2295,7 @@ index d6bf1e39b..e5822c83e 100644
// helper methods
private static boolean canBuild(CraftWorld world, Player player, int x, int z) {
@@ -312,6 +313,7 @@ public class CraftEventFactory {
@@ -319,6 +320,7 @@ public class CraftEventFactory {
CraftServer craftServer = (CraftServer) entity.getServer();
CreatureSpawnEvent event = new CreatureSpawnEvent(entity, spawnReason);
@ -2303,7 +2303,7 @@ index d6bf1e39b..e5822c83e 100644
craftServer.getPluginManager().callEvent(event);
return event;
}
@@ -959,6 +961,7 @@ public class CraftEventFactory {
@@ -966,6 +968,7 @@ public class CraftEventFactory {
}
BlockIgniteEvent event = new BlockIgniteEvent(bukkitWorld.getBlockAt(block.getX(), block.getY(), block.getZ()), cause, igniter);
@ -2311,7 +2311,7 @@ index d6bf1e39b..e5822c83e 100644
world.getServer().getPluginManager().callEvent(event);
return event;
}
@@ -983,6 +986,7 @@ public class CraftEventFactory {
@@ -990,6 +993,7 @@ public class CraftEventFactory {
}
BlockIgniteEvent event = new BlockIgniteEvent(bukkitWorld.getBlockAt(pos.getX(), pos.getY(), pos.getZ()), cause, bukkitIgniter);
@ -2319,7 +2319,7 @@ index d6bf1e39b..e5822c83e 100644
world.getServer().getPluginManager().callEvent(event);
return event;
}
@@ -1190,7 +1194,8 @@ public class CraftEventFactory {
@@ -1197,7 +1201,8 @@ public class CraftEventFactory {
public static BlockPhysicsEvent callBlockPhysicsEvent(GeneratorAccess world, BlockPosition blockposition) {
org.bukkit.block.Block block = CraftBlock.at(world, blockposition);
BlockPhysicsEvent event = new BlockPhysicsEvent(block, block.getBlockData());
@ -2329,7 +2329,7 @@ index d6bf1e39b..e5822c83e 100644
return event;
}
@@ -1226,6 +1231,7 @@ public class CraftEventFactory {
@@ -1233,6 +1238,7 @@ public class CraftEventFactory {
}
EntityPotionEffectEvent event = new EntityPotionEffectEvent((LivingEntity) entity.getBukkitEntity(), bukkitOldEffect, bukkitNewEffect, cause, action, willOverride);
@ -2337,7 +2337,7 @@ index d6bf1e39b..e5822c83e 100644
Bukkit.getPluginManager().callEvent(event);
return event;
@@ -1244,6 +1250,7 @@ public class CraftEventFactory {
@@ -1251,6 +1257,7 @@ public class CraftEventFactory {
blockState.setData(block);
BlockFormEvent event = (entity == null) ? new BlockFormEvent(blockState.getBlock(), blockState) : new EntityBlockFormEvent(entity.getBukkitEntity(), blockState.getBlock(), blockState);
@ -2346,7 +2346,7 @@ index d6bf1e39b..e5822c83e 100644
if (!event.isCancelled()) {
diff --git a/src/main/java/org/bukkit/craftbukkit/generator/CustomChunkGenerator.java b/src/main/java/org/bukkit/craftbukkit/generator/CustomChunkGenerator.java
index 9c2adb235..62c197b80 100644
index 9c2adb2351..62c197b80d 100644
--- a/src/main/java/org/bukkit/craftbukkit/generator/CustomChunkGenerator.java
+++ b/src/main/java/org/bukkit/craftbukkit/generator/CustomChunkGenerator.java
@@ -21,6 +21,7 @@ public class CustomChunkGenerator extends InternalChunkGenerator<GeneratorSettin

@ -1 +1 @@
Subproject commit 99934bd88a6b2976695d03cffddd4d4bba75ef66
Subproject commit 98d3f031c31269cf6997d3c4a92bb36620ad4731

@ -1 +1 @@
Subproject commit f3f2fe5795ecaf5a93d7355a66a6fb6030d527f0
Subproject commit 1057710a78ec00a5812b26ebd800f0b645edde34