ea855e2b46
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 Developers!: You will need to clean up your work/Minecraft/1.13.2 folder for this Also, restore a patch that was dropped in the last upstream Bukkit Changes: 279eeab3 Fix command description not being set 96e2bb18 Remove debug print from SyntheticEventTest CraftBukkit Changes: d3ed1516 Fix dangerously threaded beacons 217a293d Don't relocate joptsimple to allow --help to work. 1be05a21 Prepare for imminent Java 12 release a49270b2 Mappings Update 5259d80c SPIGOT-4669: Fix PlayerTeleportEvent coordinates for relative teleports Spigot Changes: e6eb36f2 Rebuild patches
106 lines
2.8 KiB
Diff
106 lines
2.8 KiB
Diff
From f16fe791645fb69068ef0d3cf540a6106aa47e1e Mon Sep 17 00:00:00 2001
|
|
From: BillyGalbreath <Blake.Galbreath@GMail.com>
|
|
Date: Fri, 24 Aug 2018 11:50:16 -0500
|
|
Subject: [PATCH] Add More Creeper API
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/event/entity/CreeperIgniteEvent.java b/src/main/java/com/destroystokyo/paper/event/entity/CreeperIgniteEvent.java
|
|
new file mode 100644
|
|
index 000000000..ff10251b6
|
|
--- /dev/null
|
|
+++ b/src/main/java/com/destroystokyo/paper/event/entity/CreeperIgniteEvent.java
|
|
@@ -0,0 +1,54 @@
|
|
+package com.destroystokyo.paper.event.entity;
|
|
+
|
|
+import org.bukkit.entity.Creeper;
|
|
+import org.bukkit.event.Cancellable;
|
|
+import org.bukkit.event.HandlerList;
|
|
+import org.bukkit.event.entity.EntityEvent;
|
|
+import org.jetbrains.annotations.NotNull;
|
|
+
|
|
+/**
|
|
+ * Called when a Creeper is ignite flag is changed (armed/disarmed to explode).
|
|
+ */
|
|
+public class CreeperIgniteEvent extends EntityEvent implements Cancellable {
|
|
+ private static final HandlerList handlers = new HandlerList();
|
|
+ private boolean canceled;
|
|
+ private boolean ignited;
|
|
+
|
|
+ public CreeperIgniteEvent(@NotNull Creeper creeper, boolean ignited) {
|
|
+ super(creeper);
|
|
+ this.ignited = ignited;
|
|
+ }
|
|
+
|
|
+ @NotNull
|
|
+ @Override
|
|
+ public Creeper getEntity() {
|
|
+ return (Creeper) entity;
|
|
+ }
|
|
+
|
|
+ public boolean isIgnited() {
|
|
+ return ignited;
|
|
+ }
|
|
+
|
|
+ public void setIgnited(boolean ignited) {
|
|
+ this.ignited = ignited;
|
|
+ }
|
|
+
|
|
+ public boolean isCancelled() {
|
|
+ return canceled;
|
|
+ }
|
|
+
|
|
+ public void setCancelled(boolean cancel) {
|
|
+ canceled = cancel;
|
|
+ }
|
|
+
|
|
+ @NotNull
|
|
+ @Override
|
|
+ public HandlerList getHandlers() {
|
|
+ return handlers;
|
|
+ }
|
|
+
|
|
+ @NotNull
|
|
+ public static HandlerList getHandlerList() {
|
|
+ return handlers;
|
|
+ }
|
|
+}
|
|
diff --git a/src/main/java/org/bukkit/entity/Creeper.java b/src/main/java/org/bukkit/entity/Creeper.java
|
|
index f957d8368..b9877fb88 100644
|
|
--- a/src/main/java/org/bukkit/entity/Creeper.java
|
|
+++ b/src/main/java/org/bukkit/entity/Creeper.java
|
|
@@ -50,4 +50,32 @@ public interface Creeper extends Monster {
|
|
* @return the explosion radius
|
|
*/
|
|
public int getExplosionRadius();
|
|
+
|
|
+ // Paper start
|
|
+ /**
|
|
+ * Set whether creeper is ignited or not (armed to explode)
|
|
+ *
|
|
+ * @param ignited New ignited state
|
|
+ */
|
|
+ public void setIgnited(boolean ignited);
|
|
+
|
|
+ /**
|
|
+ * Check if creeper is ignited or not (armed to explode)
|
|
+ *
|
|
+ * @return Ignited state
|
|
+ */
|
|
+ public boolean isIgnited();
|
|
+
|
|
+ /**
|
|
+ * Get the number of ticks this creeper has been ignited (armed to explode)
|
|
+ *
|
|
+ * @return Ticks creeper has been ignited
|
|
+ */
|
|
+ public int getFuseTicks();
|
|
+
|
|
+ /**
|
|
+ * Make the creeper explode (no waiting for fuse)
|
|
+ */
|
|
+ public void explode();
|
|
+ // Paper end
|
|
}
|
|
--
|
|
2.21.0
|
|
|