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.
81 lines
2.3 KiB
Diff
81 lines
2.3 KiB
Diff
From 2afe98b5368ce6cb6dd2099aef2f44e685a7c100 Mon Sep 17 00:00:00 2001
|
|
From: BillyGalbreath <Blake.Galbreath@GMail.com>
|
|
Date: Fri, 27 Jul 2018 22:36:17 -0500
|
|
Subject: [PATCH] SkeletonHorse Additions
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/event/entity/SkeletonHorseTrapEvent.java b/src/main/java/com/destroystokyo/paper/event/entity/SkeletonHorseTrapEvent.java
|
|
new file mode 100644
|
|
index 00000000..d79dbcd6
|
|
--- /dev/null
|
|
+++ b/src/main/java/com/destroystokyo/paper/event/entity/SkeletonHorseTrapEvent.java
|
|
@@ -0,0 +1,47 @@
|
|
+package com.destroystokyo.paper.event.entity;
|
|
+
|
|
+import org.bukkit.entity.SkeletonHorse;
|
|
+import org.bukkit.event.Cancellable;
|
|
+import org.bukkit.event.HandlerList;
|
|
+import org.bukkit.event.entity.EntityEvent;
|
|
+import org.jetbrains.annotations.NotNull;
|
|
+
|
|
+/**
|
|
+ * Event called when a player gets close to a skeleton horse and triggers the lightning trap
|
|
+ */
|
|
+public class SkeletonHorseTrapEvent extends EntityEvent implements Cancellable {
|
|
+ private static final HandlerList handlers = new HandlerList();
|
|
+ private boolean cancelled;
|
|
+
|
|
+ public SkeletonHorseTrapEvent(@NotNull SkeletonHorse horse) {
|
|
+ super(horse);
|
|
+ }
|
|
+
|
|
+ @NotNull
|
|
+ @Override
|
|
+ public SkeletonHorse getEntity() {
|
|
+ return (SkeletonHorse) super.getEntity();
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ public boolean isCancelled() {
|
|
+ return cancelled;
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ public void setCancelled(boolean cancel) {
|
|
+ this.cancelled = cancel;
|
|
+ }
|
|
+
|
|
+ @NotNull
|
|
+ @Override
|
|
+ public HandlerList getHandlers() {
|
|
+ return handlers;
|
|
+ }
|
|
+
|
|
+ @NotNull
|
|
+ public static HandlerList getHandlerList() {
|
|
+ return handlers;
|
|
+ }
|
|
+}
|
|
+
|
|
diff --git a/src/main/java/org/bukkit/entity/SkeletonHorse.java b/src/main/java/org/bukkit/entity/SkeletonHorse.java
|
|
index b2c6b6a8..ba998346 100644
|
|
--- a/src/main/java/org/bukkit/entity/SkeletonHorse.java
|
|
+++ b/src/main/java/org/bukkit/entity/SkeletonHorse.java
|
|
@@ -3,4 +3,12 @@ package org.bukkit.entity;
|
|
/**
|
|
* Represents a SkeletonHorse - variant of {@link AbstractHorse}.
|
|
*/
|
|
-public interface SkeletonHorse extends AbstractHorse { }
|
|
+public interface SkeletonHorse extends AbstractHorse {
|
|
+ // Paper start
|
|
+ int getTrapTime();
|
|
+
|
|
+ boolean isTrap();
|
|
+
|
|
+ void setTrap(boolean trap);
|
|
+ // Paper end
|
|
+}
|
|
--
|
|
2.21.0
|
|
|