From 9b6f40d89494e3157d8f91da6bc5b25d7ab4a5f5 Mon Sep 17 00:00:00 2001 From: Xiao-MoMi <70987828+Xiao-MoMi@users.noreply.github.com> Date: Mon, 1 Aug 2022 01:24:00 +0800 Subject: [PATCH] 1.8.2 --- build.gradle | 2 +- .../customnameplates/ConfigManager.java | 10 ++++++++- .../bossbar/adventure/TimerTaskA.java | 3 ++- .../bossbar/protocollib/TimerTaskP.java | 4 +++- .../customnameplates/hook/TABHook.java | 3 --- .../resource/ResourceManager.java | 22 +++++++++++++++++-- src/main/resources/config.yml | 6 +++-- src/main/resources/plugin.yml | 1 + 8 files changed, 40 insertions(+), 11 deletions(-) diff --git a/build.gradle b/build.gradle index 955631b..88447dd 100644 --- a/build.gradle +++ b/build.gradle @@ -4,7 +4,7 @@ plugins { } group = 'net.momirealms' -version = '1.8.0-PRE-2' +version = '1.8.1' repositories { mavenCentral() diff --git a/src/main/java/net/momirealms/customnameplates/ConfigManager.java b/src/main/java/net/momirealms/customnameplates/ConfigManager.java index 4556b32..f020492 100644 --- a/src/main/java/net/momirealms/customnameplates/ConfigManager.java +++ b/src/main/java/net/momirealms/customnameplates/ConfigManager.java @@ -72,6 +72,7 @@ public class ConfigManager { public static char start; public static String folder_path; public static String bg_folder_path; + public static String ss_folder_path; public static String font; public static String default_nameplate; public static String player_prefix; @@ -87,6 +88,7 @@ public class ConfigManager { public static boolean hideSuffix; public static boolean anotherFont; public static boolean tab; + public static boolean oraxen; public static int fontOffset; public static void ReloadConfig(){ CustomNameplates.instance.saveDefaultConfig(); @@ -100,6 +102,7 @@ public class ConfigManager { start = start_char.charAt(0); folder_path = config.getString("config.nameplate-folder-path","font\\nameplates\\"); bg_folder_path = config.getString("config.background-folder-path","font\\backgrounds\\"); + ss_folder_path = config.getString("config.space-split-folder-path","font\\"); default_nameplate = config.getString("config.default-nameplate"); player_prefix = config.getString("config.prefix"); player_suffix = config.getString("config.suffix"); @@ -129,7 +132,12 @@ public class ConfigManager { if (tab){ if(CustomNameplates.instance.getServer().getPluginManager().getPlugin("TAB") == null){ tab = false; - CustomNameplates.instance.getLogger().warning("Failed to initialize TAB!"); + } + } + oraxen = config.getBoolean("config.integrations.Oraxen",false); + if (oraxen){ + if(CustomNameplates.instance.getServer().getPluginManager().getPlugin("Oraxen") == null){ + oraxen = false; } } diff --git a/src/main/java/net/momirealms/customnameplates/bossbar/adventure/TimerTaskA.java b/src/main/java/net/momirealms/customnameplates/bossbar/adventure/TimerTaskA.java index c36756d..f2dca90 100644 --- a/src/main/java/net/momirealms/customnameplates/bossbar/adventure/TimerTaskA.java +++ b/src/main/java/net/momirealms/customnameplates/bossbar/adventure/TimerTaskA.java @@ -27,7 +27,7 @@ import java.util.HashMap; public class TimerTaskA { - private final HashMap bossbarCache = new HashMap<>(); + private HashMap bossbarCache = new HashMap<>(); public TimerTaskA(Player player){ ConfigManager.bossbarsA.forEach((key, bossbarConfig) -> { @@ -43,5 +43,6 @@ public class TimerTaskA { value.hideBossbar(); Bukkit.getScheduler().cancelTask(key); }); + bossbarCache = null; } } \ No newline at end of file diff --git a/src/main/java/net/momirealms/customnameplates/bossbar/protocollib/TimerTaskP.java b/src/main/java/net/momirealms/customnameplates/bossbar/protocollib/TimerTaskP.java index aeb0f44..9e3d2b9 100644 --- a/src/main/java/net/momirealms/customnameplates/bossbar/protocollib/TimerTaskP.java +++ b/src/main/java/net/momirealms/customnameplates/bossbar/protocollib/TimerTaskP.java @@ -10,7 +10,7 @@ import java.util.HashMap; public class TimerTaskP { - private final HashMap bossbarCache = new HashMap<>(); + private HashMap bossbarCache = new HashMap<>(); public TimerTaskP(Player player){ ConfigManager.bossbarsP.forEach((key, bossbarConfig) -> { @@ -18,6 +18,7 @@ public class TimerTaskP { bossbar.showBossbar(); BukkitTask task = bossbar.runTaskTimerAsynchronously(CustomNameplates.instance, 1,1); bossbarCache.put(task.getTaskId(), bossbar); + }); } @@ -25,5 +26,6 @@ public class TimerTaskP { bossbarCache.forEach((key,value)-> { Bukkit.getScheduler().cancelTask(key); }); + bossbarCache = null; } } diff --git a/src/main/java/net/momirealms/customnameplates/hook/TABHook.java b/src/main/java/net/momirealms/customnameplates/hook/TABHook.java index 1a11acf..a48bdad 100644 --- a/src/main/java/net/momirealms/customnameplates/hook/TABHook.java +++ b/src/main/java/net/momirealms/customnameplates/hook/TABHook.java @@ -9,12 +9,9 @@ public class TABHook { TAB tab = TAB.getInstance(); TabPlayer tabPlayer = tab.getPlayer(playerName); String name = tabPlayer.getTeamName(); - if (name == null) { - //System.out.println("TAB没有" + playerName); return playerName; } - //System.out.println("太好啦,有team" + name); return name; } } diff --git a/src/main/java/net/momirealms/customnameplates/resource/ResourceManager.java b/src/main/java/net/momirealms/customnameplates/resource/ResourceManager.java index 38af867..7db6835 100644 --- a/src/main/java/net/momirealms/customnameplates/resource/ResourceManager.java +++ b/src/main/java/net/momirealms/customnameplates/resource/ResourceManager.java @@ -95,6 +95,7 @@ public class ResourceManager { jsonObject_1.add("providers", jsonArray_1); if (ConfigManager.MainConfig.anotherFont){ + JsonObject jsonObject_2 = new JsonObject(); jsonObject_2.add("type", new JsonPrimitive("bitmap")); jsonObject_2.add("file", new JsonPrimitive("minecraft:font/ascii.png")); @@ -119,6 +120,14 @@ public class ResourceManager { jsonArray_2.add("\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000"); jsonObject_2.add("chars", jsonArray_2); jsonArray_1.add(jsonObject_2); + + JsonObject jsonObject_3 = new JsonObject(); + jsonObject_3.add("type", new JsonPrimitive("space")); + JsonObject jsonObject_4 = new JsonObject(); + jsonObject_4.add(" ", new JsonPrimitive(4)); + jsonObject_4.add("", new JsonPrimitive(0)); + jsonObject_3.add("advances", jsonObject_4); + jsonArray_1.add(jsonObject_3); } if (ConfigManager.nameplate){ @@ -161,7 +170,7 @@ public class ResourceManager { CustomNameplates.instance.saveResource("space_split.png", false); //复制space_split.png try{ - FileUtils.copyFile(new File(CustomNameplates.instance.getDataFolder(),"space_split.png"), new File(t_file.getPath() + File.separator + "space_split.png")); + FileUtils.copyFile(new File(CustomNameplates.instance.getDataFolder(),"space_split.png"), new File(t_file.getPath() + File.separator + ConfigManager.MainConfig.ss_folder_path + "space_split.png")); }catch (IOException e){ e.printStackTrace(); AdventureManager.consoleMessage("[CustomNameplates] Error! Failed to copy space_split.png to resource pack..."); @@ -187,6 +196,15 @@ public class ResourceManager { AdventureManager.consoleMessage("[CustomNameplates] Error! Failed to copy files to ItemsAdder..."); } } + if (ConfigManager.MainConfig.oraxen){ + try{ + FileUtils.copyDirectory(g_file, new File(Bukkit.getPluginManager().getPlugin("Oraxen").getDataFolder() + File.separator + "pack"+ File.separator + "assets")); + AdventureManager.consoleMessage("[CustomNameplates] Detected Oraxen! Automatically sent rp to Oraxen folder!"); + }catch (IOException e){ + e.printStackTrace(); + AdventureManager.consoleMessage("[CustomNameplates] Error! Failed to copy files to Oraxen..."); + } + } } private void saveDefaultResources() { @@ -263,7 +281,7 @@ public class ResourceManager { private JsonObject getNegativeFontChar(int height, char character) { JsonObject jsonObject = new JsonObject(); jsonObject.add("type", new JsonPrimitive("bitmap")); - jsonObject.add("file", new JsonPrimitive(ConfigManager.MainConfig.namespace + ":space_split.png")); + jsonObject.add("file", new JsonPrimitive(ConfigManager.MainConfig.namespace + ":" + ConfigManager.MainConfig.ss_folder_path.replaceAll("\\\\","/") + "space_split.png")); jsonObject.add("ascent", new JsonPrimitive(-5000)); jsonObject.add("height", new JsonPrimitive(height)); final JsonArray jsonArray = new JsonArray(); diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index a0d4fbd..c93b844 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -9,11 +9,12 @@ config: # Require restart to register papi PlaceholderAPI: true # When enabled, the plugin will automatically place the nameplates - # folder into the resource pack generated by ItemsAdder. + # folder into the resource pack generated by ItemsAdder/Oraxen. ItemsAdder: false + Oraxen: false # When enabled, the plugin will hook into TAB's team management # require a restart to apply this - TAB: false + TAB: true # Your namespace # If you don't know how font works, don't change this @@ -33,6 +34,7 @@ config: # This is useful for those who want to keep their resource pack structure in order. nameplate-folder-path: 'font\nameplates\' background-folder-path: 'font\backgrounds\' + space-split-folder-path: 'font\' # The initial character of all nameplates. # 뀁 is the first character of Korean \ub001. diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index cc6c5d9..9a702e5 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -9,6 +9,7 @@ softdepend: - ItemsAdder - PlaceholderAPI - TAB + - Oraxen commands: customnameplates: usage: /customnameplates help