3in1: Update Upstream, Remove useless patches, Fix cramming/colliding bug

This commit is contained in:
William Blake Galbreath
2019-07-29 20:53:47 -05:00
parent 75774b7422
commit 9db1fe9d28
75 changed files with 421 additions and 1452 deletions

View File

@@ -1,4 +1,4 @@
From 9112a0d950d5df2e9823791ed630151758e6d388 Mon Sep 17 00:00:00 2001
From aa4788e6e4adcf6fe0f5cb3c9093fca7d8717eb8 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Sun, 26 May 2019 15:18:40 -0500
Subject: [PATCH] Bring back server name

View File

@@ -1,88 +0,0 @@
From 6ea8d9ee2c3ef9e7ab8195adc60b025838161e68 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Fri, 3 May 2019 23:39:28 -0500
Subject: [PATCH] PlayerFeedAnimalEvent
---
.../purpur/event/PlayerFeedAnimalEvent.java | 69 +++++++++++++++++++
1 file changed, 69 insertions(+)
create mode 100644 src/main/java/net/pl3x/purpur/event/PlayerFeedAnimalEvent.java
diff --git a/src/main/java/net/pl3x/purpur/event/PlayerFeedAnimalEvent.java b/src/main/java/net/pl3x/purpur/event/PlayerFeedAnimalEvent.java
new file mode 100644
index 00000000..0174eb90
--- /dev/null
+++ b/src/main/java/net/pl3x/purpur/event/PlayerFeedAnimalEvent.java
@@ -0,0 +1,69 @@
+package net.pl3x.purpur.event;
+
+import org.bukkit.entity.Animals;
+import org.bukkit.entity.Player;
+import org.bukkit.event.Cancellable;
+import org.bukkit.event.HandlerList;
+import org.bukkit.event.entity.EntityEvent;
+import org.bukkit.inventory.ItemStack;
+import org.jetbrains.annotations.NotNull;
+
+public class PlayerFeedAnimalEvent extends EntityEvent implements Cancellable {
+ private static final HandlerList handlers = new HandlerList();
+ private final Player player;
+ private final ItemStack itemStack;
+ private boolean cancel;
+
+ public PlayerFeedAnimalEvent(@NotNull Animals entity, @NotNull Player player, @NotNull ItemStack food) {
+ super(entity);
+ this.player = player;
+ this.itemStack = food;
+ }
+
+ @Override
+ @NotNull
+ public Animals getEntity() {
+ return (Animals) entity;
+ }
+
+ /**
+ * Returns the player involved in this event
+ *
+ * @return Player who is involved in this event
+ */
+ @NotNull
+ public Player getPlayer() {
+ return player;
+ }
+
+ /**
+ * Gets the ItemStack being fed to this animal
+ *
+ * @return ItemStack being fed
+ */
+ @NotNull
+ public ItemStack getItemStack() {
+ return itemStack;
+ }
+
+ @Override
+ public boolean isCancelled() {
+ return cancel;
+ }
+
+ @Override
+ public void setCancelled(boolean cancel) {
+ this.cancel = cancel;
+ }
+
+ @Override
+ @NotNull
+ public HandlerList getHandlers() {
+ return handlers;
+ }
+
+ @NotNull
+ public static HandlerList getHandlerList() {
+ return handlers;
+ }
+}
--
2.20.1

View File

@@ -1,4 +1,4 @@
From a90a0924488b32baed8ce6d36c94a74b11c857f3 Mon Sep 17 00:00:00 2001
From 1e48e4bb7fdee96019ee7217e9826aaa8df2c14c Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Fri, 3 May 2019 23:21:23 -0500
Subject: [PATCH] cows to mooshroom when fed mushrooms
@@ -9,7 +9,7 @@ Subject: [PATCH] cows to mooshroom when fed mushrooms
2 files changed, 12 insertions(+)
diff --git a/src/main/java/com/destroystokyo/paper/event/entity/EntityTransformedEvent.java b/src/main/java/com/destroystokyo/paper/event/entity/EntityTransformedEvent.java
index 12194f1f..8b2e533d 100644
index 12194f1fc..8b2e533d3 100644
--- a/src/main/java/com/destroystokyo/paper/event/entity/EntityTransformedEvent.java
+++ b/src/main/java/com/destroystokyo/paper/event/entity/EntityTransformedEvent.java
@@ -83,6 +83,12 @@ public class EntityTransformedEvent extends EntityEvent implements Cancellable {
@@ -26,7 +26,7 @@ index 12194f1f..8b2e533d 100644
* When a pig turns to a zombiepigman
*/
diff --git a/src/main/java/org/bukkit/event/entity/EntityTransformEvent.java b/src/main/java/org/bukkit/event/entity/EntityTransformEvent.java
index 1370380a..b1c26519 100644
index 1370380ae..b1c265194 100644
--- a/src/main/java/org/bukkit/event/entity/EntityTransformEvent.java
+++ b/src/main/java/org/bukkit/event/entity/EntityTransformEvent.java
@@ -96,6 +96,12 @@ public class EntityTransformEvent extends EntityEvent implements Cancellable {

View File

@@ -1,31 +0,0 @@
From 0598f218844ed5949808033cb1502ae3f2eab089 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Fri, 3 May 2019 23:45:26 -0500
Subject: [PATCH] Expose Animals#isBreedingItem(ItemStack)
---
src/main/java/org/bukkit/entity/Animals.java | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/src/main/java/org/bukkit/entity/Animals.java b/src/main/java/org/bukkit/entity/Animals.java
index 1047481e..939f131f 100644
--- a/src/main/java/org/bukkit/entity/Animals.java
+++ b/src/main/java/org/bukkit/entity/Animals.java
@@ -50,4 +50,14 @@ public interface Animals extends Ageable {
* @param ticks the love mode ticks. Must be positive
*/
void setLoveModeTicks(int ticks);
+
+ // Purpur start
+ /**
+ * Whether or not this animal can be bred using this ItemStack
+ *
+ * @param itemstack ItemStack to check
+ * @return True if animal can be bred with ItemStack
+ */
+ boolean isBreedingItem(@Nullable org.bukkit.inventory.ItemStack itemstack);
+ // Purpur end
}
--
2.20.1

View File

@@ -1,4 +1,4 @@
From 58b35093b4a79b959e6737877fccc4d322bce0fb Mon Sep 17 00:00:00 2001
From 79e01bbeefe94343e21159ad58547e0af028ea5b Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Sun, 5 May 2019 12:58:19 -0500
Subject: [PATCH] Implement LivingEntity safeFallDistance
@@ -8,7 +8,7 @@ Subject: [PATCH] Implement LivingEntity safeFallDistance
1 file changed, 16 insertions(+)
diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java
index a78f390d..f47a6869 100644
index a78f390d7..f47a6869f 100644
--- a/src/main/java/org/bukkit/entity/LivingEntity.java
+++ b/src/main/java/org/bukkit/entity/LivingEntity.java
@@ -681,4 +681,20 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource

View File

@@ -1,4 +1,4 @@
From 4926faa24f641cd5c916e86736812ab54e2ab2b8 Mon Sep 17 00:00:00 2001
From ec82ba52f74b2cd9cb328e4ee9424b30f2e5c018 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Fri, 3 May 2019 06:08:35 -0500
Subject: [PATCH] Integrate ridables
@@ -9,7 +9,7 @@ Subject: [PATCH] Integrate ridables
2 files changed, 30 insertions(+)
diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java
index f47a6869..3a896185 100644
index f47a6869f..3a8961853 100644
--- a/src/main/java/org/bukkit/entity/LivingEntity.java
+++ b/src/main/java/org/bukkit/entity/LivingEntity.java
@@ -696,5 +696,19 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource
@@ -33,7 +33,7 @@ index f47a6869..3a896185 100644
// Purpur end
}
diff --git a/src/main/java/org/bukkit/entity/Mob.java b/src/main/java/org/bukkit/entity/Mob.java
index 784db447..b3a9c1a4 100644
index 784db447d..b3a9c1a45 100644
--- a/src/main/java/org/bukkit/entity/Mob.java
+++ b/src/main/java/org/bukkit/entity/Mob.java
@@ -42,4 +42,20 @@ public interface Mob extends LivingEntity, Lootable {

View File

@@ -1,4 +1,4 @@
From 38fc23f121ddbb18c56c79ab52be2553203d7ba9 Mon Sep 17 00:00:00 2001
From 2fae1badaf27a72abd830879c8624fddbc749eb3 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Wed, 29 May 2019 23:38:50 -0500
Subject: [PATCH] Add village raid spawn reason
@@ -8,7 +8,7 @@ Subject: [PATCH] Add village raid spawn reason
1 file changed, 6 insertions(+)
diff --git a/src/main/java/org/bukkit/event/entity/CreatureSpawnEvent.java b/src/main/java/org/bukkit/event/entity/CreatureSpawnEvent.java
index 161ea7f5..784f29f8 100644
index 17aa6722b..323322510 100644
--- a/src/main/java/org/bukkit/event/entity/CreatureSpawnEvent.java
+++ b/src/main/java/org/bukkit/event/entity/CreatureSpawnEvent.java
@@ -95,6 +95,12 @@ public class CreatureSpawnEvent extends EntitySpawnEvent {

View File

@@ -1,4 +1,4 @@
From 43add2c57d404f64bf9f1e0185ef8c3886785aa6 Mon Sep 17 00:00:00 2001
From 7ed154e449e138a75afd69e67f0752ed8350486f Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Fri, 31 May 2019 00:08:28 -0500
Subject: [PATCH] Add ExecuteCommandEvent

View File

@@ -1,39 +0,0 @@
From 7f69da2581011dde6ac74c582689857039f0b417 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Sat, 11 May 2019 02:12:41 -0500
Subject: [PATCH] Villager shops
---
src/main/java/org/bukkit/entity/EntityType.java | 1 +
src/main/java/org/bukkit/entity/VillagerShop.java | 7 +++++++
2 files changed, 8 insertions(+)
create mode 100644 src/main/java/org/bukkit/entity/VillagerShop.java
diff --git a/src/main/java/org/bukkit/entity/EntityType.java b/src/main/java/org/bukkit/entity/EntityType.java
index 527cb045..ebe5d0e8 100644
--- a/src/main/java/org/bukkit/entity/EntityType.java
+++ b/src/main/java/org/bukkit/entity/EntityType.java
@@ -271,6 +271,7 @@ public enum EntityType implements Keyed {
*/
LIGHTNING("lightning_bolt", LightningStrike.class, -1, false),
PLAYER("player", Player.class, -1, false),
+ VILLAGER_SHOP("villager_shop", VillagerShop.class, -1),
/**
* An unknown entity without an Entity Class
*/
diff --git a/src/main/java/org/bukkit/entity/VillagerShop.java b/src/main/java/org/bukkit/entity/VillagerShop.java
new file mode 100644
index 00000000..57b0503b
--- /dev/null
+++ b/src/main/java/org/bukkit/entity/VillagerShop.java
@@ -0,0 +1,7 @@
+package org.bukkit.entity;
+
+/**
+ * Represents a villager shop
+ */
+public interface VillagerShop extends AbstractVillager {
+}
--
2.20.1

View File

@@ -1,4 +1,4 @@
From 6c32c9076b079fe824e24327006e5d1b6982fed1 Mon Sep 17 00:00:00 2001
From a6b15c0844a089b5b6644d49d5729d24de7dcafc Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Fri, 31 May 2019 21:24:21 -0500
Subject: [PATCH] Advancement API Additions
@@ -12,7 +12,7 @@ Subject: [PATCH] Advancement API Additions
create mode 100644 src/main/java/org/bukkit/advancement/FrameType.java
diff --git a/src/main/java/org/bukkit/advancement/Advancement.java b/src/main/java/org/bukkit/advancement/Advancement.java
index 7c500997..432caadb 100644
index 7c5009974..432caadba 100644
--- a/src/main/java/org/bukkit/advancement/Advancement.java
+++ b/src/main/java/org/bukkit/advancement/Advancement.java
@@ -3,6 +3,7 @@ package org.bukkit.advancement;
@@ -38,7 +38,7 @@ index 7c500997..432caadb 100644
}
diff --git a/src/main/java/org/bukkit/advancement/AdvancementDisplay.java b/src/main/java/org/bukkit/advancement/AdvancementDisplay.java
new file mode 100644
index 00000000..09b9f77d
index 000000000..09b9f77d6
--- /dev/null
+++ b/src/main/java/org/bukkit/advancement/AdvancementDisplay.java
@@ -0,0 +1,45 @@
@@ -89,7 +89,7 @@ index 00000000..09b9f77d
+}
diff --git a/src/main/java/org/bukkit/advancement/FrameType.java b/src/main/java/org/bukkit/advancement/FrameType.java
new file mode 100644
index 00000000..d1757f3d
index 000000000..d1757f3d4
--- /dev/null
+++ b/src/main/java/org/bukkit/advancement/FrameType.java
@@ -0,0 +1,27 @@

View File

@@ -1,4 +1,4 @@
From 6e35aa8c329b3e93f32e2974247e23e42bf2b082 Mon Sep 17 00:00:00 2001
From 7ed511aafa501fbfcf86c18a0f2b04ec9ba859e2 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Fri, 5 Jul 2019 16:37:04 -0500
Subject: [PATCH] Implement ItemFactory#getMonsterEgg
@@ -8,7 +8,7 @@ Subject: [PATCH] Implement ItemFactory#getMonsterEgg
1 file changed, 11 insertions(+)
diff --git a/src/main/java/org/bukkit/inventory/ItemFactory.java b/src/main/java/org/bukkit/inventory/ItemFactory.java
index 03ba2265..630c15d2 100644
index 03ba22659..630c15d23 100644
--- a/src/main/java/org/bukkit/inventory/ItemFactory.java
+++ b/src/main/java/org/bukkit/inventory/ItemFactory.java
@@ -166,4 +166,15 @@ public interface ItemFactory {

View File

@@ -1,4 +1,4 @@
From 79526b3135fab05e371454352b1f7e76ada80fe0 Mon Sep 17 00:00:00 2001
From fee2dae7b361e8f2581abf84d1ea9f7a6eab0adf Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Fri, 5 Jul 2019 18:21:15 -0500
Subject: [PATCH] Implement PlayerSetSpawnerTypeWithEggEvent
@@ -10,7 +10,7 @@ Subject: [PATCH] Implement PlayerSetSpawnerTypeWithEggEvent
diff --git a/src/main/java/net/pl3x/purpur/event/PlayerSetSpawnerTypeWithEggEvent.java b/src/main/java/net/pl3x/purpur/event/PlayerSetSpawnerTypeWithEggEvent.java
new file mode 100644
index 00000000..c050b75e
index 000000000..c050b75e9
--- /dev/null
+++ b/src/main/java/net/pl3x/purpur/event/PlayerSetSpawnerTypeWithEggEvent.java
@@ -0,0 +1,85 @@

View File

@@ -1,4 +1,4 @@
From d61ca685a5582c32b1db00d43cbedc2639b1a0db Mon Sep 17 00:00:00 2001
From ce6fc9af1404461cd623734326aa93ad7789e163 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Fri, 12 Jul 2019 02:09:58 -0500
Subject: [PATCH] Implement ChunkTooLargeEvent

View File

@@ -1,4 +1,4 @@
From 32525a0275809f982d4a3bd9dbc37d760198aa26 Mon Sep 17 00:00:00 2001
From c39b728c52e814a1a45386141e4d3d4021ca5dd3 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Tue, 23 Jul 2019 06:50:55 -0500
Subject: [PATCH] Allow inventory resizing

View File

@@ -1,173 +0,0 @@
From da238cff8dd0f47ebd11b15dbfbd36fbecf25fe4 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Thu, 6 Jun 2019 23:23:45 -0500
Subject: [PATCH] Block and Fluid Tick Events
---
.../purpur/event/block/BlockTickEvent.java | 52 +++++++++++++++++++
.../purpur/event/block/FluidTickEvent.java | 52 +++++++++++++++++++
src/main/java/org/bukkit/World.java | 30 +++++++++++
3 files changed, 134 insertions(+)
create mode 100644 src/main/java/net/pl3x/purpur/event/block/BlockTickEvent.java
create mode 100644 src/main/java/net/pl3x/purpur/event/block/FluidTickEvent.java
diff --git a/src/main/java/net/pl3x/purpur/event/block/BlockTickEvent.java b/src/main/java/net/pl3x/purpur/event/block/BlockTickEvent.java
new file mode 100644
index 000000000..e467052a0
--- /dev/null
+++ b/src/main/java/net/pl3x/purpur/event/block/BlockTickEvent.java
@@ -0,0 +1,52 @@
+package net.pl3x.purpur.event.block;
+
+import org.bukkit.World;
+import org.bukkit.event.Cancellable;
+import org.bukkit.event.HandlerList;
+import org.bukkit.event.block.BlockEvent;
+import org.jetbrains.annotations.NotNull;
+
+/**
+ * Called when a block is ticked by the server.
+ */
+public class BlockTickEvent extends BlockEvent implements Cancellable {
+ private static final HandlerList handlers = new HandlerList();
+ private final boolean isRandomTick;
+ private boolean cancelled;
+
+ public BlockTickEvent(@NotNull World world, int x, int y, int z) {
+ this(world, x, y, z, false);
+ }
+
+ public BlockTickEvent(@NotNull World world, int x, int y, int z, boolean isRandomTick) {
+ super(world.getBlockAt(x, y, z));
+ this.isRandomTick = isRandomTick;
+ }
+
+ /**
+ * Check if this is a random tick
+ *
+ * @return True if random
+ */
+ public boolean isRandomTick() {
+ return isRandomTick;
+ }
+
+ public boolean isCancelled() {
+ return cancelled;
+ }
+
+ public void setCancelled(boolean cancel) {
+ cancelled = cancel;
+ }
+
+ @NotNull
+ public HandlerList getHandlers() {
+ return handlers;
+ }
+
+ @NotNull
+ public static HandlerList getHandlerList() {
+ return handlers;
+ }
+}
diff --git a/src/main/java/net/pl3x/purpur/event/block/FluidTickEvent.java b/src/main/java/net/pl3x/purpur/event/block/FluidTickEvent.java
new file mode 100644
index 000000000..9cd1e3dde
--- /dev/null
+++ b/src/main/java/net/pl3x/purpur/event/block/FluidTickEvent.java
@@ -0,0 +1,52 @@
+package net.pl3x.purpur.event.block;
+
+import org.bukkit.World;
+import org.bukkit.event.Cancellable;
+import org.bukkit.event.HandlerList;
+import org.bukkit.event.block.BlockEvent;
+import org.jetbrains.annotations.NotNull;
+
+/**
+ * Called when a fluid is ticked by the server.
+ */
+public class FluidTickEvent extends BlockEvent implements Cancellable {
+ private static final HandlerList handlers = new HandlerList();
+ private final boolean isRandomTick;
+ private boolean cancelled;
+
+ public FluidTickEvent(@NotNull World world, int x, int y, int z) {
+ this(world, x, y, z, false);
+ }
+
+ public FluidTickEvent(@NotNull World world, int x, int y, int z, boolean isRandomTick) {
+ super(world.getBlockAt(x, y, z));
+ this.isRandomTick = isRandomTick;
+ }
+
+ /**
+ * Check if this is a random tick
+ *
+ * @return True if random
+ */
+ public boolean isRandomTick() {
+ return isRandomTick;
+ }
+
+ public boolean isCancelled() {
+ return cancelled;
+ }
+
+ public void setCancelled(boolean cancel) {
+ cancelled = cancel;
+ }
+
+ @NotNull
+ public HandlerList getHandlers() {
+ return handlers;
+ }
+
+ @NotNull
+ public static HandlerList getHandlerList() {
+ return handlers;
+ }
+}
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
index 1e7b633c1..8794160e6 100644
--- a/src/main/java/org/bukkit/World.java
+++ b/src/main/java/org/bukkit/World.java
@@ -2900,6 +2900,36 @@ public interface World extends PluginMessageRecipient, Metadatable {
@Nullable
public Location locateNearestStructure(@NotNull Location origin, @NotNull StructureType structureType, int radius, boolean findUnexplored);
+ // Purpur start
+ /**
+ * Get if {@link net.pl3x.purpur.event.block.BlockTickEvent} is enabled for this world
+ *
+ * @return True if enabled
+ */
+ boolean isBlockTickEventEnabled();
+
+ /**
+ * Set if {@link net.pl3x.purpur.event.block.BlockTickEvent} is enabled for this world
+ *
+ * @param enabled True to enable
+ */
+ void setBlockTickEventEnabled(boolean enabled);
+
+ /**
+ * Get if {@link net.pl3x.purpur.event.block.FluidTickEvent} is enabled for this world
+ *
+ * @return True if enabled
+ */
+ boolean isFluidTickEventEnabled();
+
+ /**
+ * Set if {@link net.pl3x.purpur.event.block.FluidTickEvent} is enabled for this world
+ *
+ * @param enabled True to enable
+ */
+ void setFluidTickEventEnabled(boolean enabled);
+ // Purpur end
+
// Spigot start
public class Spigot
{
--
2.20.1

View File

@@ -1,4 +1,4 @@
From 605cb47bd65ebc8e0877113b2f76bb3cf6ef7b48 Mon Sep 17 00:00:00 2001
From 69c75b5e59e75f1e3399efcfc9e203548520b46d Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Tue, 23 Jul 2019 10:07:24 -0500
Subject: [PATCH] Implement lagging threshold