geforkt von Mirrors/Paper
Added new plugin.yml option 'load', possible values are 'startup' and 'postworld' (default postworld)
By: Dinnerbone <dinnerbone@dinnerbone.com>
Dieser Commit ist enthalten in:
Ursprung
e2779f623c
Commit
ba32a78b3b
@ -24,6 +24,7 @@ public final class PluginDescriptionFile {
|
|||||||
private ArrayList<String> authors = new ArrayList<String>();
|
private ArrayList<String> authors = new ArrayList<String>();
|
||||||
private String website = null;
|
private String website = null;
|
||||||
private boolean database = false;
|
private boolean database = false;
|
||||||
|
private PluginLoadOrder order = PluginLoadOrder.POSTWORLD;
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
public PluginDescriptionFile(final InputStream stream) throws InvalidDescriptionException {
|
public PluginDescriptionFile(final InputStream stream) throws InvalidDescriptionException {
|
||||||
@ -108,6 +109,10 @@ public final class PluginDescriptionFile {
|
|||||||
return softDepend;
|
return softDepend;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public PluginLoadOrder getLoad() {
|
||||||
|
return order;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the description of this plugin
|
* Gets the description of this plugin
|
||||||
*
|
*
|
||||||
@ -213,6 +218,16 @@ public final class PluginDescriptionFile {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (map.containsKey("load")) {
|
||||||
|
try {
|
||||||
|
order = PluginLoadOrder.valueOf(((String)map.get("load")).toUpperCase().replaceAll("\\W", ""));
|
||||||
|
} catch (ClassCastException ex) {
|
||||||
|
throw new InvalidDescriptionException(ex, "load is of wrong type");
|
||||||
|
} catch (IllegalArgumentException ex) {
|
||||||
|
throw new InvalidDescriptionException(ex, "load is not a valid choice");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (map.containsKey("author")) {
|
if (map.containsKey("author")) {
|
||||||
try {
|
try {
|
||||||
String extra = (String) map.get("author");
|
String extra = (String) map.get("author");
|
||||||
@ -241,6 +256,7 @@ public final class PluginDescriptionFile {
|
|||||||
map.put("main", main);
|
map.put("main", main);
|
||||||
map.put("version", version);
|
map.put("version", version);
|
||||||
map.put("database", database);
|
map.put("database", database);
|
||||||
|
map.put("order", order.toString());
|
||||||
|
|
||||||
if (commands != null) {
|
if (commands != null) {
|
||||||
map.put("command", commands);
|
map.put("command", commands);
|
||||||
|
16
paper-api/src/main/java/org/bukkit/plugin/PluginLoadOrder.java
Normale Datei
16
paper-api/src/main/java/org/bukkit/plugin/PluginLoadOrder.java
Normale Datei
@ -0,0 +1,16 @@
|
|||||||
|
|
||||||
|
package org.bukkit.plugin;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Represents the order in which a plugin should be initialized and enabled
|
||||||
|
*/
|
||||||
|
public enum PluginLoadOrder {
|
||||||
|
/**
|
||||||
|
* Indicates that the plugin will be loaded at startup
|
||||||
|
*/
|
||||||
|
STARTUP,
|
||||||
|
/**
|
||||||
|
* Indicates that the plugin will be loaded after the first/default world was created
|
||||||
|
*/
|
||||||
|
POSTWORLD
|
||||||
|
}
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren