Updated Upstream (Paper)

Upstream has released updates that appear to apply and compile correctly

Paper Changes:
26c37d99d5 create random seeds for features using SecureRandom
589bf2f1bf Upgrade gson to 2.8.8 (Closes #6370)
0a6103597b Get entity default attributes (#6449)
40057019e0 Correctly inflate villager activation bounding box (#6798)
e5f9241d15 Left handed API (#6775)
40ee63496c Add advancement display API (#6175)
9d570042ed Add ItemFactory#getMonsterEgg API (#6772)
55ca459515 rename method to getSpawnEgg
bb397ba74c Add critical damage API (#6275)
f47aeafe00 Add Horse Animation API (#5599)
7a0886180f AT & Mapping fixes (#6809)
5553432644 docs: Update gradle instructions for Java 16 (#6811) [ci skip]
a1f49e4c60 Fix command suggestion leak (#6592)
9472d38f3c Fix method name for Critical damage (#6813)
This commit is contained in:
William Blake Galbreath
2021-10-21 10:58:16 -05:00
parent da3d4a5845
commit 69c7c31f9a
297 changed files with 297 additions and 837 deletions

View File

@@ -1,123 +0,0 @@
From 0000000000000000000000000000000000000000 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
diff --git a/src/main/java/org/bukkit/advancement/Advancement.java b/src/main/java/org/bukkit/advancement/Advancement.java
index 7c5009974ac8d64d0e738e60cec45acb0d4ca89a..432caadba1b08bb94cdb4ccf552e42400e0db338 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;
import java.util.Collection;
import org.bukkit.Keyed;
import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
/**
* Represents an advancement that may be awarded to a player. This class is not
@@ -17,4 +18,12 @@ public interface Advancement extends Keyed {
*/
@NotNull
Collection<String> getCriteria();
+
+ /**
+ * Gets the display properties of this advancement
+ *
+ * @return The display properties
+ */
+ @Nullable
+ AdvancementDisplay getDisplay();
}
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 0000000000000000000000000000000000000000..c2e161e8e14d9949165055b6051708c048e68338
--- /dev/null
+++ b/src/main/java/org/bukkit/advancement/AdvancementDisplay.java
@@ -0,0 +1,53 @@
+package org.bukkit.advancement;
+
+import org.jetbrains.annotations.NotNull;
+
+public interface AdvancementDisplay {
+ /**
+ * Get the title of this advancement
+ *
+ * @return Title text
+ */
+ @NotNull
+ String getTitle();
+
+ /**
+ * Get the description of this advancement
+ *
+ * @return Description text
+ */
+ @NotNull
+ String getDescription();
+
+ /**
+ * Get the frame type of this advancement
+ *
+ * @return Frame type
+ */
+ @NotNull
+ FrameType getFrameType();
+
+ /**
+ * Get if this advancement should be announced in chat when completed
+ *
+ * @return True if should announce when completed
+ */
+ boolean shouldAnnounceChat();
+
+ /**
+ * Set if this advancement should be announced in chat when completed
+ *
+ * @param announceChat True or false
+ *
+ */
+ void shouldAnnounceChat(boolean announceChat);
+
+ /**
+ * Get if this advancement (and all it's children) is hidden from the advancement screen until it has been completed
+ * <p>
+ * This has no effect on root advancements themselves, but will alter their children
+ *
+ * @return True if hidden until completed
+ */
+ boolean isHidden();
+}
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 0000000000000000000000000000000000000000..d1757f3d456ff9efce26ce8baa1d16d896908cc2
--- /dev/null
+++ b/src/main/java/org/bukkit/advancement/FrameType.java
@@ -0,0 +1,27 @@
+package org.bukkit.advancement;
+
+import org.bukkit.ChatColor;
+import org.jetbrains.annotations.NotNull;
+
+public enum FrameType {
+ TASK(ChatColor.GREEN),
+ CHALLENGE(ChatColor.DARK_PURPLE),
+ GOAL(ChatColor.GREEN);
+
+ private final ChatColor color;
+
+ FrameType(ChatColor color) {
+ this.color = color;
+ }
+
+ @NotNull
+ public ChatColor getColor() {
+ return color;
+ }
+
+ @NotNull
+ @Override
+ public String toString() {
+ return "FrameType[name=" + name() + ",color=" + color + "]";
+ }
+}

View File

@@ -1,26 +0,0 @@
From 0000000000000000000000000000000000000000 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] ItemFactory#getMonsterEgg
diff --git a/src/main/java/org/bukkit/inventory/ItemFactory.java b/src/main/java/org/bukkit/inventory/ItemFactory.java
index 0a4466c6ca519c3a5da76ff870fb2a4e3a06effd..858dd1a5df74f9b36966ad55b5b66d4424b00c62 100644
--- a/src/main/java/org/bukkit/inventory/ItemFactory.java
+++ b/src/main/java/org/bukkit/inventory/ItemFactory.java
@@ -242,4 +242,15 @@ public interface ItemFactory {
@Deprecated
net.md_5.bungee.api.chat.hover.content.Content hoverContentOf(@NotNull org.bukkit.entity.Entity entity, @NotNull net.md_5.bungee.api.chat.BaseComponent[] customName);
// Paper end
+
+ // Purpur start
+ /**
+ * Get a monster egg ItemStack from an EntityType
+ *
+ * @param type EntityType
+ * @return ItemStack spawner egg
+ */
+ @Nullable
+ ItemStack getMonsterEgg(@Nullable org.bukkit.entity.EntityType type);
+ // Purpur end
}

View File

@@ -1,56 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Tue, 24 Nov 2020 04:30:34 -0600
Subject: [PATCH] Add critical hit check to EntityDamagedByEntityEvent
diff --git a/src/main/java/org/bukkit/event/entity/EntityDamageByEntityEvent.java b/src/main/java/org/bukkit/event/entity/EntityDamageByEntityEvent.java
index 869bad7405ec7fa67728e90d8b9f2e11b542611f..05fde759bbdf6068f140b4428bbcb355e22d6b28 100644
--- a/src/main/java/org/bukkit/event/entity/EntityDamageByEntityEvent.java
+++ b/src/main/java/org/bukkit/event/entity/EntityDamageByEntityEvent.java
@@ -10,15 +10,28 @@ import org.jetbrains.annotations.NotNull;
*/
public class EntityDamageByEntityEvent extends EntityDamageEvent {
private final Entity damager;
+ private final boolean isCritical; // Purpur
public EntityDamageByEntityEvent(@NotNull final Entity damager, @NotNull final Entity damagee, @NotNull final DamageCause cause, final double damage) {
+ // Purpur start
+ this(damager, damagee, cause, damage, false);
+ }
+ public EntityDamageByEntityEvent(@NotNull final Entity damager, @NotNull final Entity damagee, @NotNull final DamageCause cause, final double damage, boolean isCritical) {
+ // Purpur end
super(damagee, cause, damage);
this.damager = damager;
+ this.isCritical = isCritical; // Purpur
}
public EntityDamageByEntityEvent(@NotNull final Entity damager, @NotNull final Entity damagee, @NotNull final DamageCause cause, @NotNull final Map<DamageModifier, Double> modifiers, @NotNull final Map<DamageModifier, ? extends Function<? super Double, Double>> modifierFunctions) {
+ // Purpur start
+ this(damager, damagee, cause, modifiers, modifierFunctions, false);
+ }
+ public EntityDamageByEntityEvent(@NotNull final Entity damager, @NotNull final Entity damagee, @NotNull final DamageCause cause, @NotNull final Map<DamageModifier, Double> modifiers, @NotNull final Map<DamageModifier, ? extends Function<? super Double, Double>> modifierFunctions, boolean isCritical) {
+ // Purpur end
super(damagee, cause, modifiers, modifierFunctions);
this.damager = damager;
+ this.isCritical = isCritical; // Purpur
}
/**
@@ -30,4 +43,16 @@ public class EntityDamageByEntityEvent extends EntityDamageEvent {
public Entity getDamager() {
return damager;
}
+
+ // Purpur start
+
+ /**
+ * Whether this damage was done by a critical hit
+ *
+ * @return True if critical hit
+ */
+ public boolean isCritical() {
+ return this.isCritical;
+ }
+ // Purpur end
}

View File

@@ -489,7 +489,7 @@ index 3afd5f5c0208a4ee93b5dbfc2aab2b9d2e8a7544..7838731e0e16bdccfb79e74ceb64148f
/**
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index f1b351610185332e9c1e32d4cb7182783d33cc0b..ed67b960689d7b1a686f64f5c77393be56a17ef4 100644
index c6b478fe41dcd6017571c68f3114442f3c9f6415..cc82fdb614110d32b8efb1d3d8a337776dfbf0fd 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -1688,6 +1688,9 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -503,7 +503,7 @@ index f1b351610185332e9c1e32d4cb7182783d33cc0b..ed67b960689d7b1a686f64f5c77393be
@NotNull
diff --git a/src/main/java/org/bukkit/UnsafeValues.java b/src/main/java/org/bukkit/UnsafeValues.java
index 379acee1b5f2d06e6a96f3444783f4a29ca24095..ef3011d74ce9acf02d0ee857033816854134ec0e 100644
index 0b15fe8b5da29bf691c394098f0203a49504242e..919c76a2d95d77571572855b5688914d0f387846 100644
--- a/src/main/java/org/bukkit/UnsafeValues.java
+++ b/src/main/java/org/bukkit/UnsafeValues.java
@@ -87,6 +87,8 @@ public interface UnsafeValues {
@@ -587,34 +587,6 @@ index 14986911b4d0099ea2c91ab2196a771b7dee4c50..d1eed20ea3b27f0800a08b42b62aac40
*/
@NotNull
public static WorldCreator ofKey(@NotNull NamespacedKey worldKey) {
diff --git a/src/main/java/org/bukkit/advancement/AdvancementDisplay.java b/src/main/java/org/bukkit/advancement/AdvancementDisplay.java
index c2e161e8e14d9949165055b6051708c048e68338..2bb3b525a3974b6ccd223b2ba272933c1617ceac 100644
--- a/src/main/java/org/bukkit/advancement/AdvancementDisplay.java
+++ b/src/main/java/org/bukkit/advancement/AdvancementDisplay.java
@@ -2,6 +2,9 @@ package org.bukkit.advancement;
import org.jetbrains.annotations.NotNull;
+/**
+ * Represents an advancement's display
+ */
public interface AdvancementDisplay {
/**
* Get the title of this advancement
diff --git a/src/main/java/org/bukkit/advancement/FrameType.java b/src/main/java/org/bukkit/advancement/FrameType.java
index d1757f3d456ff9efce26ce8baa1d16d896908cc2..a5db52386e11e4b5511ae417a0e7ac92e001de71 100644
--- a/src/main/java/org/bukkit/advancement/FrameType.java
+++ b/src/main/java/org/bukkit/advancement/FrameType.java
@@ -3,6 +3,9 @@ package org.bukkit.advancement;
import org.bukkit.ChatColor;
import org.jetbrains.annotations.NotNull;
+/**
+ * Represents an advancement's display's frame type
+ */
public enum FrameType {
TASK(ChatColor.GREEN),
CHALLENGE(ChatColor.DARK_PURPLE),
diff --git a/src/main/java/org/bukkit/block/Block.java b/src/main/java/org/bukkit/block/Block.java
index 0006a5a53dfa9fc81c608423e8740a9c820659a3..1eac84f8abf71029e9e0626a9fa93446f9d0df02 100644
--- a/src/main/java/org/bukkit/block/Block.java
@@ -880,7 +852,7 @@ index a8feed523e4fbf56679166c71e3576b2e978df8c..6fbfddf950e0db559fc804f27ba4a976
public boolean isTicking();
// Paper end
diff --git a/src/main/java/org/bukkit/entity/EntityType.java b/src/main/java/org/bukkit/entity/EntityType.java
index d36d314383713bac3b11f18d95b0809dce3cd6e0..6a340d660d75968a52005502e6b410e2408140af 100644
index 48aa290dbcf93715ce58d56d6cf3216948f2f3f2..cf5e2f8cfe425172f5c194689e2d923b109c6929 100644
--- a/src/main/java/org/bukkit/entity/EntityType.java
+++ b/src/main/java/org/bukkit/entity/EntityType.java
@@ -20,6 +20,9 @@ import org.jetbrains.annotations.Contract;
@@ -1356,7 +1328,7 @@ index c7b17eabf07b829a02afe7c1f27a5127b6bfea70..d4e2bcf8ce8fc2af851b471490147f00
/**
diff --git a/src/main/java/org/bukkit/inventory/ItemFactory.java b/src/main/java/org/bukkit/inventory/ItemFactory.java
index 858dd1a5df74f9b36966ad55b5b66d4424b00c62..e7dd844f2359fdaf903632bb3761382ee9dc38b5 100644
index 8677e273641a46aae7107361f23f6ded59a50dc0..fc6bbe662b1da5ca7f4e98c6cc4457bf00529fd4 100644
--- a/src/main/java/org/bukkit/inventory/ItemFactory.java
+++ b/src/main/java/org/bukkit/inventory/ItemFactory.java
@@ -148,6 +148,7 @@ public interface ItemFactory {

View File

@@ -1,31 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Mon, 30 Nov 2020 06:02:54 -0600
Subject: [PATCH] Left handed API
diff --git a/src/main/java/org/bukkit/entity/Mob.java b/src/main/java/org/bukkit/entity/Mob.java
index 07bedbc15ba2463d3c629ae68d229286d4033f79..3e03e97daa8959430cf45ed30c0e21a5943bcfed 100644
--- a/src/main/java/org/bukkit/entity/Mob.java
+++ b/src/main/java/org/bukkit/entity/Mob.java
@@ -148,4 +148,20 @@ public interface Mob extends LivingEntity, Lootable {
* @return whether the mob is aware
*/
public boolean isAware();
+
+ // Purpur start
+ /**
+ * Check if Mob is left-handed
+ *
+ * @return True if left-handed
+ */
+ public boolean isLeftHanded();
+
+ /**
+ * Set if Mob is left-handed
+ *
+ * @param leftHanded True if left-handed
+ */
+ public void setLeftHanded(boolean leftHanded);
+ // Purpur end
}

View File

@@ -17,12 +17,12 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
diff --git a/src/main/java/org/bukkit/UnsafeValues.java b/src/main/java/org/bukkit/UnsafeValues.java
index ef3011d74ce9acf02d0ee857033816854134ec0e..b2502aaab690b1414a1adffdf64e5a5456feb99c 100644
index 919c76a2d95d77571572855b5688914d0f387846..df8469f5a8e4262652e04bdd2eddf5fabe5277f2 100644
--- a/src/main/java/org/bukkit/UnsafeValues.java
+++ b/src/main/java/org/bukkit/UnsafeValues.java
@@ -194,4 +194,28 @@ public interface UnsafeValues {
@@ -211,4 +211,28 @@ public interface UnsafeValues {
*/
int getProtocolVersion();
@org.jetbrains.annotations.NotNull org.bukkit.attribute.Attributable getDefaultEntityAttributes(@org.jetbrains.annotations.NotNull NamespacedKey entityKey);
// Paper end
+
+ // Purpur start

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Conflict on change for adventure deprecations
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
index fa3b34c9e79e57d9385c9160ac654cd5d5f54dc7..f4e35cd1a398cc07842c359ec560eed4596732b4 100644
index af9fa63eca06a80f19578a2590a3280948b297ae..5d20d91f44a9f0f94183eaea300d1033f292a28e 100644
--- a/src/main/java/org/bukkit/Bukkit.java
+++ b/src/main/java/org/bukkit/Bukkit.java
@@ -347,7 +347,7 @@ public final class Bukkit {
@@ -72,7 +72,7 @@ index fa3b34c9e79e57d9385c9160ac654cd5d5f54dc7..f4e35cd1a398cc07842c359ec560eed4
return server.getShutdownMessage();
}
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index ed67b960689d7b1a686f64f5c77393be56a17ef4..e89d80128b2944efb7e105b92f8f825afe80affb 100644
index cc82fdb614110d32b8efb1d3d8a337776dfbf0fd..4d15d4b5b23d38599ab227dc1c2a9c25a077e531 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -271,7 +271,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi