geforkt von Mirrors/Paper
e6f8284125
Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: d43a1e72 SPIGOT-2450: Improve scoreboard criteria API, add missing DisplaySlots 9d6e4847 SPIGOT-7122: New Allay Methods from 1.19.1 CraftBukkit Changes: c379a6b4e SPIGOT-2450: Improve scoreboard criteria API, add missing DisplaySlots 051fcced1 SPIGOT-7122: New Allay Methods from 1.19.1
107 Zeilen
3.1 KiB
Diff
107 Zeilen
3.1 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Connor Linfoot <connorlinfoot@me.com>
|
|
Date: Sun, 16 May 2021 15:07:34 +0100
|
|
Subject: [PATCH] Add basic Datapack API
|
|
|
|
|
|
diff --git a/src/main/java/io/papermc/paper/datapack/Datapack.java b/src/main/java/io/papermc/paper/datapack/Datapack.java
|
|
new file mode 100644
|
|
index 0000000000000000000000000000000000000000..7b2ab0be10a21e0496ad1d485ff8cb2c0b92a2cb
|
|
--- /dev/null
|
|
+++ b/src/main/java/io/papermc/paper/datapack/Datapack.java
|
|
@@ -0,0 +1,32 @@
|
|
+package io.papermc.paper.datapack;
|
|
+
|
|
+import org.checkerframework.checker.nullness.qual.NonNull;
|
|
+
|
|
+public interface Datapack {
|
|
+
|
|
+ /**
|
|
+ * @return the name of the pack
|
|
+ */
|
|
+ @NonNull
|
|
+ String getName();
|
|
+
|
|
+ /**
|
|
+ * @return the compatibility of the pack
|
|
+ */
|
|
+ @NonNull
|
|
+ Compatibility getCompatibility();
|
|
+
|
|
+ /**
|
|
+ * @return whether or not the pack is currently enabled
|
|
+ */
|
|
+ boolean isEnabled();
|
|
+
|
|
+ void setEnabled(boolean enabled);
|
|
+
|
|
+ enum Compatibility {
|
|
+ TOO_OLD,
|
|
+ TOO_NEW,
|
|
+ COMPATIBLE,
|
|
+ }
|
|
+
|
|
+}
|
|
diff --git a/src/main/java/io/papermc/paper/datapack/DatapackManager.java b/src/main/java/io/papermc/paper/datapack/DatapackManager.java
|
|
new file mode 100644
|
|
index 0000000000000000000000000000000000000000..58f78d5e91beacaf710f62461cf869f70d08b2a2
|
|
--- /dev/null
|
|
+++ b/src/main/java/io/papermc/paper/datapack/DatapackManager.java
|
|
@@ -0,0 +1,21 @@
|
|
+package io.papermc.paper.datapack;
|
|
+
|
|
+import org.checkerframework.checker.nullness.qual.NonNull;
|
|
+
|
|
+import java.util.Collection;
|
|
+
|
|
+public interface DatapackManager {
|
|
+
|
|
+ /**
|
|
+ * @return all the packs known to the server
|
|
+ */
|
|
+ @NonNull
|
|
+ Collection<Datapack> getPacks();
|
|
+
|
|
+ /**
|
|
+ * @return all the packs which are currently enabled
|
|
+ */
|
|
+ @NonNull
|
|
+ Collection<Datapack> getEnabledPacks();
|
|
+
|
|
+}
|
|
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
|
|
index db44d88bf169f59a759be165094876497487d756..d8e301befb37b540bc246cf58988923b0ab23375 100644
|
|
--- a/src/main/java/org/bukkit/Bukkit.java
|
|
+++ b/src/main/java/org/bukkit/Bukkit.java
|
|
@@ -2387,6 +2387,14 @@ public final class Bukkit {
|
|
public static com.destroystokyo.paper.entity.ai.MobGoals getMobGoals() {
|
|
return server.getMobGoals();
|
|
}
|
|
+
|
|
+ /**
|
|
+ * @return the datapack manager
|
|
+ */
|
|
+ @NotNull
|
|
+ public static io.papermc.paper.datapack.DatapackManager getDatapackManager() {
|
|
+ return server.getDatapackManager();
|
|
+ }
|
|
// Paper end
|
|
|
|
@NotNull
|
|
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
|
|
index 723057dcc769bd29acdb82561ee0126ed467579d..16f631fdde4b63e0ed3162486dba684697bdffa7 100644
|
|
--- a/src/main/java/org/bukkit/Server.java
|
|
+++ b/src/main/java/org/bukkit/Server.java
|
|
@@ -2074,5 +2074,11 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
|
|
*/
|
|
@NotNull
|
|
com.destroystokyo.paper.entity.ai.MobGoals getMobGoals();
|
|
+
|
|
+ /**
|
|
+ * @return the datapack manager
|
|
+ */
|
|
+ @NotNull
|
|
+ io.papermc.paper.datapack.DatapackManager getDatapackManager();
|
|
// Paper end
|
|
}
|