Move version command update checking to the implementation

This makes it easier for downstream projects (forks) to replace the
version fetching system with their own. It is as simple as implementing
an interface and overriding the default implementation of
org.bukkit.UnsafeValues#getVersionFetcher()

It also makes it easier for us to organize things like the version
history feature.

Lastly I have updated the paper implementation to check against the site
API rather than against jenkins.
This commit is contained in:
Zach Brown 2019-05-27 04:13:41 -05:00
parent 7fb12d787e
commit 70ce6ce831
No known key found for this signature in database
GPG key ID: CC9DA35FC5450B76
475 changed files with 1472 additions and 1338 deletions

View file

@ -0,0 +1,100 @@
From 210779762b6b255f3c0957958051f6d710eb88fc Mon Sep 17 00:00:00 2001
From: BillyGalbreath <Blake.Galbreath@GMail.com>
Date: Sat, 21 Jul 2018 01:59:53 -0500
Subject: [PATCH] PlayerElytraBoostEvent
diff --git a/src/main/java/com/destroystokyo/paper/event/player/PlayerElytraBoostEvent.java b/src/main/java/com/destroystokyo/paper/event/player/PlayerElytraBoostEvent.java
new file mode 100644
index 00000000..e9a76a25
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/event/player/PlayerElytraBoostEvent.java
@@ -0,0 +1,85 @@
+package com.destroystokyo.paper.event.player;
+
+import org.bukkit.entity.Firework;
+import org.bukkit.entity.Player;
+import org.bukkit.event.Cancellable;
+import org.bukkit.event.HandlerList;
+import org.bukkit.event.player.PlayerEvent;
+import org.bukkit.inventory.ItemStack;
+import org.jetbrains.annotations.NotNull;
+
+/**
+ * Fired when a player boosts elytra flight with a firework
+ */
+public class PlayerElytraBoostEvent extends PlayerEvent implements Cancellable {
+ private static final HandlerList handlers = new HandlerList();
+ private boolean cancelled = false;
+ @NotNull private final ItemStack itemStack;
+ @NotNull private Firework firework;
+ private boolean consume = true;
+
+ public PlayerElytraBoostEvent(@NotNull Player player, @NotNull ItemStack itemStack, @NotNull Firework firework) {
+ super(player);
+ this.itemStack = itemStack;
+ this.firework = firework;
+ }
+
+ /**
+ * Get the firework itemstack used
+ *
+ * @return ItemStack of firework
+ */
+ @NotNull
+ public ItemStack getItemStack() {
+ return itemStack;
+ }
+
+ /**
+ * Get the firework entity that was spawned
+ *
+ * @return Firework entity
+ */
+ @NotNull
+ public Firework getFirework() {
+ return firework;
+ }
+
+ /**
+ * Get whether to consume the firework or not
+ *
+ * @return True to consume
+ */
+ public boolean shouldConsume() {
+ return consume;
+ }
+
+ /**
+ * Set whether to consume the firework or not
+ *
+ * @param consume True to consume
+ */
+ public void setShouldConsume(boolean consume) {
+ this.consume = consume;
+ }
+
+ @NotNull
+ @Override
+ public HandlerList getHandlers() {
+ return handlers;
+ }
+
+ @NotNull
+ public static HandlerList getHandlerList() {
+ return handlers;
+ }
+
+ @Override
+ public boolean isCancelled() {
+ return cancelled;
+ }
+
+ @Override
+ public void setCancelled(boolean cancel) {
+ cancelled = cancel;
+ }
+}
--
2.21.0