add paper 1.20.6+ supports
This commit is contained in:
@@ -61,8 +61,10 @@ public class GroovyManager {
|
||||
public static Object eval(String expression, Player player){
|
||||
Binding binding = new Binding();
|
||||
binding.setVariable("player",player);
|
||||
if (player != null){
|
||||
binding.setVariable("itemStack",player.getItemInHand());
|
||||
binding.setVariable("world",player.getWorld());
|
||||
}
|
||||
GroovyShell shell = new GroovyShell(GroovyManager.class.getClassLoader(),binding,compilerConfig);
|
||||
return shell.evaluate(lib+expression);
|
||||
}
|
||||
|
||||
@@ -1,12 +1,16 @@
|
||||
package pers.xanadu.enderdragon.util;
|
||||
|
||||
import lombok.Getter;
|
||||
import org.bukkit.Bukkit;
|
||||
import pers.xanadu.enderdragon.EnderDragon;
|
||||
import pers.xanadu.enderdragon.config.Lang;
|
||||
import pers.xanadu.enderdragon.nms.BossBar.IBossBarManager;
|
||||
import pers.xanadu.enderdragon.nms.NMSItem.INMSItemManager;
|
||||
import pers.xanadu.enderdragon.nms.RespawnAnchor.IRespawnAnchorManager;
|
||||
import pers.xanadu.enderdragon.nms.WorldData.IWorldDataManager;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
|
||||
import static org.bukkit.Bukkit.getServer;
|
||||
|
||||
public class Version {
|
||||
@@ -24,14 +28,22 @@ public class Version {
|
||||
public static void init(){
|
||||
try {
|
||||
version = getServer().getClass().getPackage().getName().split("\\.")[3];
|
||||
} catch (Throwable throwable) {
|
||||
try{
|
||||
//paper 1.20.6+
|
||||
Class<?> clazz = Class.forName("io.papermc.paper.util.MappingEnvironment");
|
||||
Field LEGACY_CB_VERSION = clazz.getField("LEGACY_CB_VERSION");
|
||||
version = (String) LEGACY_CB_VERSION.get(null);
|
||||
}catch (ReflectiveOperationException e){
|
||||
throwable.printStackTrace();
|
||||
Lang.warn("Failed to get nms-version!");
|
||||
Bukkit.getServer().getPluginManager().disablePlugin(EnderDragon.plugin);
|
||||
}
|
||||
}
|
||||
String[] mc_version = getServer().getBukkitVersion().split("-")[0].split("\\.");
|
||||
mcMainVersion = Integer.parseInt(mc_version[1]);
|
||||
if(mc_version.length<=2) mcPatchVersion = 0;
|
||||
else mcPatchVersion = Integer.parseInt(mc_version[2]);
|
||||
} catch (Throwable throwable) {
|
||||
throwable.printStackTrace();
|
||||
Lang.warn("Failed to get nms-version!");
|
||||
}
|
||||
Lang.info("Found version: " + version);
|
||||
try{
|
||||
Class.forName("net.minecraftforge.server.ServerMain");
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
name: EnderDragon
|
||||
version: 2.5.2
|
||||
version: 2.5.3
|
||||
main: pers.xanadu.enderdragon.EnderDragon
|
||||
author: Xanadu13
|
||||
api-version: 1.13
|
||||
|
||||
Reference in New Issue
Block a user