From 11767145ba9f2545b54c3b97ff26eea7b807c9f2 Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Mon, 17 Feb 2025 21:20:21 +0000 Subject: [PATCH 01/19] Bump version from 1.3.16 to 1.3.16-SNAPSHOT0 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 22de184d..a6f32e12 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,4 +16,4 @@ # along with this program. If not, see . # group=plugily.projects -version=1.3.16 +version=1.3.16-SNAPSHOT0 From 0cb2a1daacfa29df57cb2f8675b415f4806a9830 Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Tue, 18 Feb 2025 19:42:10 +0100 Subject: [PATCH 02/19] Fixed Progress must be between 0 and 1 --- .../classic/arena/states/PluginStartingState.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/states/PluginStartingState.java b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/states/PluginStartingState.java index 113a1be1..a9610239 100644 --- a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/states/PluginStartingState.java +++ b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/states/PluginStartingState.java @@ -62,9 +62,13 @@ public void handleCall(PluginArena arena) { int timer = arena.getTimer(); double startWaiting = plugin.getConfig().getDouble("Time-Manager.Waiting", 60); - arena.getBossbarManager().setProgress(timer / startWaiting); float exp = (float) (timer / startWaiting); + if (exp > 1) { + exp = 1; + } + + arena.getBossbarManager().setProgress(exp); for(Player player : arena.getPlayers()) { player.setExp(exp); From 7a1897fd4ff425507b3d3ee7c3133916b465ef56 Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Tue, 18 Feb 2025 18:42:59 +0000 Subject: [PATCH 03/19] Bump version from 1.3.16-SNAPSHOT0 to 1.3.16-SNAPSHOT1 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index a6f32e12..1202bd41 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,4 +16,4 @@ # along with this program. If not, see . # group=plugily.projects -version=1.3.16-SNAPSHOT0 +version=1.3.16-SNAPSHOT1 From afbff94eae294d4cd678cd41beda03ea387bfd95 Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Tue, 18 Feb 2025 22:33:34 +0100 Subject: [PATCH 04/19] Changed Potion methods to support all versions --- .../classic/arena/PluginArenaUtils.java | 3 ++- .../settings/SpectatorSettingsMenu.java | 25 ++++++++++--------- .../serialization/InventorySerializer.java | 16 +++++------- 3 files changed, 21 insertions(+), 23 deletions(-) diff --git a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/PluginArenaUtils.java b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/PluginArenaUtils.java index 69f0a1f4..87c3d921 100644 --- a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/PluginArenaUtils.java +++ b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/PluginArenaUtils.java @@ -18,6 +18,7 @@ package plugily.projects.minigamesbox.classic.arena; +import com.cryptomorin.xseries.XPotion; import org.bukkit.GameMode; import org.bukkit.Location; import org.bukkit.Material; @@ -107,7 +108,7 @@ public static CompletableFuture preparePlayerForGame( player.setAllowFlight(true); player.setFlying(true); user.setSpectator(true); - player.addPotionEffect(new PotionEffect(PotionEffectType.NIGHT_VISION, Integer.MAX_VALUE, 0)); + XPotion.NIGHT_VISION.buildPotionEffect(Integer.MAX_VALUE, 1).apply(player); plugin .getSpecialItemManager() .addSpecialItemsOfStage(player, SpecialItem.DisplayStage.SPECTATOR); diff --git a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/events/spectator/settings/SpectatorSettingsMenu.java b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/events/spectator/settings/SpectatorSettingsMenu.java index 5cdaed3b..3e1c29da 100644 --- a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/events/spectator/settings/SpectatorSettingsMenu.java +++ b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/events/spectator/settings/SpectatorSettingsMenu.java @@ -19,6 +19,7 @@ package plugily.projects.minigamesbox.classic.events.spectator.settings; import com.cryptomorin.xseries.XMaterial; +import com.cryptomorin.xseries.XPotion; import org.bukkit.GameMode; import org.bukkit.Material; import org.bukkit.configuration.ConfigurationSection; @@ -115,32 +116,32 @@ private NormalFastInv setupSpectatorSettings() { switch(item.getType()) { case DEFAULT_SPEED: new MessageBuilder("IN_GAME_SPECTATOR_SPECTATOR_MENU_SETTINGS_CHANGED_SPEED").asKey().arena(arena).integer(0).player(player).sendPlayer(); - player.removePotionEffect(PotionEffectType.SPEED); + player.removePotionEffect(XPotion.SPEED.getPotionEffectType()); player.setFlySpeed(0.15f); break; case SPEED1: new MessageBuilder("IN_GAME_SPECTATOR_SPECTATOR_MENU_SETTINGS_CHANGED_SPEED").asKey().arena(arena).integer(1).player(player).sendPlayer(); - player.removePotionEffect(PotionEffectType.SPEED); + player.removePotionEffect(XPotion.SPEED.getPotionEffectType()); player.setFlySpeed(0.2f); - player.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, Integer.MAX_VALUE, 0, false, false)); + XPotion.SPEED.buildPotionEffect(Integer.MAX_VALUE, 1).apply(player); break; case SPEED2: new MessageBuilder("IN_GAME_SPECTATOR_SPECTATOR_MENU_SETTINGS_CHANGED_SPEED").asKey().arena(arena).integer(2).player(player).sendPlayer(); - player.removePotionEffect(PotionEffectType.SPEED); + player.removePotionEffect(XPotion.SPEED.getPotionEffectType()); player.setFlySpeed(0.25f); - player.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, Integer.MAX_VALUE, 1, false, false)); + XPotion.SPEED.buildPotionEffect(Integer.MAX_VALUE, 2).apply(player); break; case SPEED3: new MessageBuilder("IN_GAME_SPECTATOR_SPECTATOR_MENU_SETTINGS_CHANGED_SPEED").asKey().arena(arena).integer(3).player(player).sendPlayer(); - player.removePotionEffect(PotionEffectType.SPEED); + player.removePotionEffect(XPotion.SPEED.getPotionEffectType()); player.setFlySpeed(0.3f); - player.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, Integer.MAX_VALUE, 2, false, false)); + XPotion.SPEED.buildPotionEffect(Integer.MAX_VALUE, 3).apply(player); break; case SPEED4: new MessageBuilder("IN_GAME_SPECTATOR_SPECTATOR_MENU_SETTINGS_CHANGED_SPEED").asKey().arena(arena).integer(4).player(player).sendPlayer(); - player.removePotionEffect(PotionEffectType.SPEED); + player.removePotionEffect(XPotion.SPEED.getPotionEffectType()); player.setFlySpeed(0.35f); - player.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, Integer.MAX_VALUE, 3, false, false)); + XPotion.SPEED.buildPotionEffect(Integer.MAX_VALUE, 4).apply(player); break; case AUTO_TELEPORT: if(autoTeleport.contains(player)) { @@ -152,11 +153,11 @@ private NormalFastInv setupSpectatorSettings() { } break; case NIGHT_VISION: - if(player.getActivePotionEffects().stream().anyMatch(potionEffect -> potionEffect.getType().equals(PotionEffectType.NIGHT_VISION))) { - player.removePotionEffect(PotionEffectType.NIGHT_VISION); + if(player.getActivePotionEffects().stream().anyMatch(potionEffect -> potionEffect.getType().equals(XPotion.NIGHT_VISION.getPotionEffectType()))) { + player.removePotionEffect(XPotion.NIGHT_VISION.getPotionEffectType()); new MessageBuilder("IN_GAME_SPECTATOR_SPECTATOR_MENU_SETTINGS_NIGHT_VISION").asKey().arena(arena).value(new MessageBuilder("IN_GAME_SPECTATOR_SPECTATOR_MENU_SETTINGS_STATUS_DISABLED").asKey().build()).player(player).sendPlayer(); } else { - player.addPotionEffect(new PotionEffect(PotionEffectType.NIGHT_VISION, Integer.MAX_VALUE, 1, false, false)); + XPotion.NIGHT_VISION.buildPotionEffect(Integer.MAX_VALUE, 1).apply(player); new MessageBuilder("IN_GAME_SPECTATOR_SPECTATOR_MENU_SETTINGS_NIGHT_VISION").asKey().arena(arena).value(new MessageBuilder("IN_GAME_SPECTATOR_SPECTATOR_MENU_SETTINGS_STATUS_ENABLED").asKey().build()).player(player).sendPlayer(); } break; diff --git a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/serialization/InventorySerializer.java b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/serialization/InventorySerializer.java index acb8bb1c..ab3dee43 100644 --- a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/serialization/InventorySerializer.java +++ b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/serialization/InventorySerializer.java @@ -19,6 +19,7 @@ package plugily.projects.minigamesbox.classic.utils.serialization; import com.cryptomorin.xseries.XMaterial; +import com.cryptomorin.xseries.XPotion; import org.bukkit.Bukkit; import org.bukkit.GameMode; import org.bukkit.Material; @@ -94,7 +95,7 @@ public static boolean saveInventoryToFile(JavaPlugin plugin, Player player) { for(PotionEffect potion : activeEffects) { activePotions.add(potion.getType().getName() + "#" + potion.getDuration() + "#" + potion.getAmplifier()); - if(potion.getType().equals(PotionEffectType.HEALTH_BOOST)) { + if(potion.getType().equals(XPotion.HEALTH_BOOST.getPotionEffectType())) { // Health boost effect gives +2 hearts per level, health is counted in half hearts so amplifier * 4 maxHealth -= (potion.getAmplifier() + 1) * 4; } @@ -252,17 +253,12 @@ public static void loadInventory(JavaPlugin plugin, Player player) { List activePotions = invConfig.getStringList("Active potion effects"); for(String potion : activePotions) { String[] splited = potion.split("#", 3); - if(splited.length == 0) + if(splited.length == 0){ continue; - - PotionEffectType effectType = PotionEffectType.getByName(splited[0]); - - if(effectType != null) { - try { - player.addPotionEffect(new PotionEffect(effectType, splited.length < 2 ? 30 : Integer.parseInt(splited[1]), - splited.length < 3 ? 1 : Integer.parseInt(splited[2]))); + } + try { + XPotion.of(splited[0]).get().buildPotionEffect(splited.length < 2 ? 30 : Integer.parseInt(splited[1]), splited.length < 3 ? 1 : Integer.parseInt(splited[2])).apply(player); } catch(NumberFormatException ignored) { - } } } } catch(Exception ignored) { From 0f48f8b56ec8f2c8f774a4aeb7950be540a85df2 Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Tue, 18 Feb 2025 21:34:27 +0000 Subject: [PATCH 05/19] Bump version from 1.3.16-SNAPSHOT1 to 1.3.16-SNAPSHOT2 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 1202bd41..a9cb1b14 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,4 +16,4 @@ # along with this program. If not, see . # group=plugily.projects -version=1.3.16-SNAPSHOT1 +version=1.3.16-SNAPSHOT2 From bf0870133f6c66ba1601a8e36719ed6630dc691b Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Tue, 18 Feb 2025 22:35:19 +0100 Subject: [PATCH 06/19] Fixed ItemBuilder.glowEffect --- .../minigamesbox/classic/utils/helper/ItemBuilder.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/helper/ItemBuilder.java b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/helper/ItemBuilder.java index 9912a433..0ff029dc 100644 --- a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/helper/ItemBuilder.java +++ b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/helper/ItemBuilder.java @@ -18,6 +18,7 @@ package plugily.projects.minigamesbox.classic.utils.helper; +import com.cryptomorin.xseries.XEnchantment; import org.bukkit.ChatColor; import org.bukkit.Material; import org.bukkit.enchantments.Enchantment; @@ -93,7 +94,7 @@ public ItemBuilder glowEffect() { if (ServerVersion.Version.isCurrentEqualOrHigher(ServerVersion.Version.v1_21)) { itemMeta.setEnchantmentGlintOverride(true); } else { - this.itemMeta.addEnchant(Enchantment.UNBREAKING, 1, true); + this.itemMeta.addEnchant(XEnchantment.UNBREAKING.get(), 1, true); this.itemMeta.addItemFlags(ItemFlag.HIDE_ENCHANTS); } return this; From 991fc365f510d7cb49dcdb16cfaee5b628a5e43f Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Tue, 18 Feb 2025 21:36:07 +0000 Subject: [PATCH 07/19] Bump version from 1.3.16-SNAPSHOT2 to 1.3.16-SNAPSHOT3 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index a9cb1b14..eae59ccb 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,4 +16,4 @@ # along with this program. If not, see . # group=plugily.projects -version=1.3.16-SNAPSHOT2 +version=1.3.16-SNAPSHOT3 From b74f681a2e536f9ed68ec1ee640b13584c0d4738 Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Thu, 27 Feb 2025 00:26:20 +0100 Subject: [PATCH 08/19] Fixed compatible with java 8 & pom.xml --- .github/maven/api/pom.xml | 113 ++++++++++++++++++++++++++++++++ .github/maven/classic/pom.xml | 18 ++++- .github/maven/database/pom.xml | 2 +- .github/maven/inventory/pom.xml | 2 +- .github/maven/pom.xml | 7 +- .github/maven/utils/pom.xml | 2 +- 6 files changed, 135 insertions(+), 9 deletions(-) create mode 100644 .github/maven/api/pom.xml diff --git a/.github/maven/api/pom.xml b/.github/maven/api/pom.xml new file mode 100644 index 00000000..4337a603 --- /dev/null +++ b/.github/maven/api/pom.xml @@ -0,0 +1,113 @@ + + + + + + minigamesbox + plugily.projects + 1.3.3-java8 + + 4.0.0 + + MiniGamesBox-Api + + 1.8 + UTF-8 + UTF-8 + + + + + + mojang-repo + https://libraries.minecraft.net/ + + + simonsators-repo + https://simonsator.de/repo/ + + + alessiodp-repo + https://repo.alessiodp.com/releases/ + + + plugilyprojects-repo + https://maven.plugily.xyz/releases + + + papi-repo + https://repo.extendedclip.com/content/repositories/placeholderapi/ + + + + + + me.tigerhix.lib + scoreboard + 1.4.5 + compile + true + + + * + * + + + + + plugily.projects + MiniGamesBox-Database + ${project.version} + compile + true + + + com.github.cryptomorin + XSeries + 13.0.0 + true + + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + 3.4.0 + + MiniGamesBox Inventory API docs for v${project.version} + Library box with massive content that could be seen as minigames core. + minecraft/minigamesbox/inventory + false + + + + + + org.apache.maven.wagon + wagon-ssh + 3.5.2 + + + + diff --git a/.github/maven/classic/pom.xml b/.github/maven/classic/pom.xml index 5310331f..4ef4f3c4 100644 --- a/.github/maven/classic/pom.xml +++ b/.github/maven/classic/pom.xml @@ -23,7 +23,7 @@ minigamesbox plugily.projects - 1.3.2-java8 + 1.3.3-java8 4.0.0 @@ -66,7 +66,7 @@ me.tigerhix.lib scoreboard - 1.4.0 + 1.4.5 compile true @@ -79,9 +79,14 @@ com.github.cryptomorin XSeries - 9.4.0 + 13.0.0 true + + org.openjdk.nashorn + nashorn-core + 15.4 + de.simonsator DevelopmentPAFSpigot @@ -120,6 +125,13 @@ compile true + + plugily.projects + MiniGamesBox-Api + ${project.version} + compile + true + plugily.projects MiniGamesBox-Database diff --git a/.github/maven/database/pom.xml b/.github/maven/database/pom.xml index e9cfd408..efa4536a 100644 --- a/.github/maven/database/pom.xml +++ b/.github/maven/database/pom.xml @@ -23,7 +23,7 @@ minigamesbox plugily.projects - 1.3.2-java8 + 1.3.3-java8 4.0.0 diff --git a/.github/maven/inventory/pom.xml b/.github/maven/inventory/pom.xml index 7785cf90..d6487591 100644 --- a/.github/maven/inventory/pom.xml +++ b/.github/maven/inventory/pom.xml @@ -23,7 +23,7 @@ minigamesbox plugily.projects - 1.3.2-java8 + 1.3.3-java8 4.0.0 diff --git a/.github/maven/pom.xml b/.github/maven/pom.xml index dcc76975..e0742883 100644 --- a/.github/maven/pom.xml +++ b/.github/maven/pom.xml @@ -24,7 +24,7 @@ plugily.projects minigamesbox - 1.3.2-java8 + 1.3.3-java8 pom @@ -32,6 +32,7 @@ MiniGamesBox Utils MiniGamesBox Database MiniGamesBox Classic + MiniGamesBox API MiniGamesBox @@ -47,7 +48,7 @@ papermc - https://papermc.io/repo/repository/maven-public/ + https://repo.papermc.io/repository/maven-public/ spigot-repo @@ -71,7 +72,7 @@ io.papermc.paper paper-api - 1.20.1-R0.1-SNAPSHOT + 1.21.1-R0.1-SNAPSHOT provided diff --git a/.github/maven/utils/pom.xml b/.github/maven/utils/pom.xml index efba2374..0cc1e941 100644 --- a/.github/maven/utils/pom.xml +++ b/.github/maven/utils/pom.xml @@ -23,7 +23,7 @@ minigamesbox plugily.projects - 1.3.2-java8 + 1.3.3-java8 4.0.0 From 3fd40355d7e0943b63d781dede492e04048f7513 Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Wed, 26 Feb 2025 23:27:05 +0000 Subject: [PATCH 09/19] Bump version from 1.3.16-SNAPSHOT3 to 1.3.16-SNAPSHOT4 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index eae59ccb..75564902 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,4 +16,4 @@ # along with this program. If not, see . # group=plugily.projects -version=1.3.16-SNAPSHOT3 +version=1.3.16-SNAPSHOT4 From 6b76ed8d15c4b7cfd29e3f4f1957655990f8d22b Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Thu, 27 Feb 2025 19:56:21 +0100 Subject: [PATCH 10/19] Fixed compatible with java 8 --- .github/maven/api/pom.xml | 2 +- .github/maven/classic/pom.xml | 2 +- .github/maven/database/pom.xml | 2 +- .github/maven/inventory/pom.xml | 2 +- .github/maven/pom.xml | 2 +- .github/maven/utils/pom.xml | 2 +- .../classic/utils/migrator/MigratorUtils.java | 9 ++++----- .../services/exception/ReporterService.java | 3 +-- .../utils/services/locale/LocaleService.java | 16 ++++++++-------- .../classic/utils/services/metrics/Metrics.java | 3 +-- .../utils/services/metrics/MetricsService.java | 3 +-- 11 files changed, 21 insertions(+), 25 deletions(-) diff --git a/.github/maven/api/pom.xml b/.github/maven/api/pom.xml index 4337a603..f5ba9282 100644 --- a/.github/maven/api/pom.xml +++ b/.github/maven/api/pom.xml @@ -23,7 +23,7 @@ minigamesbox plugily.projects - 1.3.3-java8 + 1.3.3.1-java8 4.0.0 diff --git a/.github/maven/classic/pom.xml b/.github/maven/classic/pom.xml index 4ef4f3c4..cf400c27 100644 --- a/.github/maven/classic/pom.xml +++ b/.github/maven/classic/pom.xml @@ -23,7 +23,7 @@ minigamesbox plugily.projects - 1.3.3-java8 + 1.3.3.1-java8 4.0.0 diff --git a/.github/maven/database/pom.xml b/.github/maven/database/pom.xml index efa4536a..644cfcef 100644 --- a/.github/maven/database/pom.xml +++ b/.github/maven/database/pom.xml @@ -23,7 +23,7 @@ minigamesbox plugily.projects - 1.3.3-java8 + 1.3.3.1-java8 4.0.0 diff --git a/.github/maven/inventory/pom.xml b/.github/maven/inventory/pom.xml index d6487591..ef81d3a0 100644 --- a/.github/maven/inventory/pom.xml +++ b/.github/maven/inventory/pom.xml @@ -23,7 +23,7 @@ minigamesbox plugily.projects - 1.3.3-java8 + 1.3.3.1-java8 4.0.0 diff --git a/.github/maven/pom.xml b/.github/maven/pom.xml index e0742883..433a4abc 100644 --- a/.github/maven/pom.xml +++ b/.github/maven/pom.xml @@ -24,7 +24,7 @@ plugily.projects minigamesbox - 1.3.3-java8 + 1.3.3.1-java8 pom diff --git a/.github/maven/utils/pom.xml b/.github/maven/utils/pom.xml index 0cc1e941..8a2fc534 100644 --- a/.github/maven/utils/pom.xml +++ b/.github/maven/utils/pom.xml @@ -23,7 +23,7 @@ minigamesbox plugily.projects - 1.3.3-java8 + 1.3.3.1-java8 4.0.0 diff --git a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/migrator/MigratorUtils.java b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/migrator/MigratorUtils.java index 8ca1c457..df3b9bab 100644 --- a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/migrator/MigratorUtils.java +++ b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/migrator/MigratorUtils.java @@ -23,7 +23,6 @@ import java.io.File; import java.io.FileWriter; import java.io.IOException; -import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.util.List; import java.util.stream.Collectors; @@ -48,9 +47,9 @@ public class MigratorUtils { */ public static void removeLineFromFile(File file, String lineToRemove) { try { - List lines = Files.readAllLines(file.toPath(), StandardCharsets.UTF_8); + List lines = Files.readAllLines(file.toPath()); List updatedLines = lines.stream().filter(s -> !s.contains(lineToRemove)).collect(Collectors.toList()); - Files.write(file.toPath(), updatedLines, StandardCharsets.UTF_8); + Files.write(file.toPath(), updatedLines); } catch(IOException e) { e.printStackTrace(); Bukkit.getLogger().warning("[MinigamesBox] Something went horribly wrong with migration! Please contact Plugily Projects!"); @@ -67,11 +66,11 @@ public static void removeLineFromFile(File file, String lineToRemove) { public static void insertAfterLine(File file, String search, String text) { try { int i = 1; - List lines = Files.readAllLines(file.toPath(), StandardCharsets.UTF_8); + List lines = Files.readAllLines(file.toPath()); for(String line : lines) { if(line.contains(search)) { lines.add(i, text); - Files.write(file.toPath(), lines, StandardCharsets.UTF_8); + Files.write(file.toPath(), lines); break; } i++; diff --git a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/services/exception/ReporterService.java b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/services/exception/ReporterService.java index d9d4809a..a3d417bf 100644 --- a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/services/exception/ReporterService.java +++ b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/services/exception/ReporterService.java @@ -24,7 +24,6 @@ import java.io.IOException; import java.io.OutputStream; import java.net.URL; -import java.nio.charset.StandardCharsets; import java.util.logging.Level; /** @@ -57,7 +56,7 @@ public void reportException() { conn.setDoOutput(true); OutputStream os = conn.getOutputStream(); - os.write(("pass=servicereporter&type=" + pluginName + "&pluginversion=" + pluginVersion + "&serverversion=" + serverVersion + "&error=" + error).getBytes(StandardCharsets.UTF_8)); + os.write(("pass=servicereporter&type=" + pluginName + "&pluginversion=" + pluginVersion + "&serverversion=" + serverVersion + "&error=" + error).getBytes("UTF-8")); os.flush(); os.close(); diff --git a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/services/locale/LocaleService.java b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/services/locale/LocaleService.java index 2a5d3b70..ff56fbb5 100644 --- a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/services/locale/LocaleService.java +++ b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/services/locale/LocaleService.java @@ -27,7 +27,7 @@ import javax.net.ssl.HttpsURLConnection; import java.io.*; import java.net.URL; -import java.nio.charset.StandardCharsets; + import java.nio.file.Files; import java.util.Arrays; import java.util.Scanner; @@ -50,7 +50,7 @@ public LocaleService(PluginMain plugin) { return; } this.plugin = plugin; - try(Scanner scanner = new Scanner(requestLocaleFetch(null), StandardCharsets.UTF_8).useDelimiter("\\A")) { + try(Scanner scanner = new Scanner(requestLocaleFetch(null), "UTF-8").useDelimiter("\\A")) { String data = scanner.hasNext() ? scanner.next() : ""; File file = new File(plugin.getDataFolder().getPath() + "/locales/locale_data.yml"); if(!file.exists()) { @@ -100,9 +100,9 @@ private InputStream requestLocaleFetch(ILocale locale) { OutputStream os = conn.getOutputStream(); if(locale == null) { - os.write(("pass=localeservice&type=" + plugin.getName()).getBytes(StandardCharsets.UTF_8)); + os.write(("pass=localeservice&type=" + plugin.getName()).getBytes("UTF-8")); } else { - os.write(("pass=localeservice&type=" + plugin.getName() + "&locale=" + locale.getPrefix()).getBytes(StandardCharsets.UTF_8)); + os.write(("pass=localeservice&type=" + plugin.getName() + "&locale=" + locale.getPrefix()).getBytes("UTF-8")); } os.flush(); os.close(); @@ -138,9 +138,9 @@ public DownloadStatus demandLocaleDownload(ILocale locale) { } private DownloadStatus writeFile(ILocale locale) { - try(Scanner scanner = new Scanner(requestLocaleFetch(locale), StandardCharsets.UTF_8).useDelimiter("\\A")) { + try(Scanner scanner = new Scanner(requestLocaleFetch(locale), "UTF-8").useDelimiter("\\A")) { String data = scanner.hasNext() ? scanner.next() : ""; - try(OutputStreamWriter writer = new OutputStreamWriter(new FileOutputStream(plugin.getDataFolder().getPath() + "/locales/" + locale.getPrefix() + ".yml"), StandardCharsets.UTF_8)) { + try(OutputStreamWriter writer = new OutputStreamWriter(new FileOutputStream(plugin.getDataFolder().getPath() + "/locales/" + locale.getPrefix() + ".yml"), "UTF-8")) { writer.write(data); } return DownloadStatus.SUCCESS; @@ -165,8 +165,8 @@ public boolean isValidVersion() { } private boolean isExact(ILocale locale, File file) { - try(Scanner scanner = new Scanner(requestLocaleFetch(locale), StandardCharsets.UTF_8).useDelimiter("\\A"); - Scanner localScanner = new Scanner(file, StandardCharsets.UTF_8).useDelimiter("\\A")) { + try(Scanner scanner = new Scanner(requestLocaleFetch(locale), "UTF-8").useDelimiter("\\A"); + Scanner localScanner = new Scanner(file, "UTF-8").useDelimiter("\\A")) { String onlineData = scanner.hasNext() ? scanner.next() : ""; String localData = localScanner.hasNext() ? localScanner.next() : ""; diff --git a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/services/metrics/Metrics.java b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/services/metrics/Metrics.java index 3952d814..39226d52 100644 --- a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/services/metrics/Metrics.java +++ b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/services/metrics/Metrics.java @@ -26,7 +26,6 @@ import java.io.InputStreamReader; import java.lang.reflect.Method; import java.net.URL; -import java.nio.charset.StandardCharsets; import java.util.Arrays; import java.util.Collection; import java.util.HashSet; @@ -372,7 +371,7 @@ private static byte[] compress(final String str) throws IOException { } ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); try (GZIPOutputStream gzip = new GZIPOutputStream(outputStream)) { - gzip.write(str.getBytes(StandardCharsets.UTF_8)); + gzip.write(str.getBytes("UTF-8")); } return outputStream.toByteArray(); } diff --git a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/services/metrics/MetricsService.java b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/services/metrics/MetricsService.java index 5620f9f3..0c500f17 100644 --- a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/services/metrics/MetricsService.java +++ b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/utils/services/metrics/MetricsService.java @@ -29,7 +29,6 @@ import java.io.OutputStream; import java.net.InetAddress; import java.net.URL; -import java.nio.charset.StandardCharsets; import java.util.Timer; import java.util.TimerTask; import java.util.logging.Level; @@ -70,7 +69,7 @@ public void run() { try { final byte[] post = ("pass=metricsservice&type=" + plugin.getName() + "&pluginversion=" + plugin.getDescription().getVersion() + "&serverversion=" + plugin.getServer().getBukkitVersion() + "&ip=" + InetAddress.getLocalHost().getHostAddress() + ":" + plugin.getServer().getPort() + - "&playersonline=" + Bukkit.getOnlinePlayers().size()).getBytes(StandardCharsets.UTF_8); + "&playersonline=" + Bukkit.getOnlinePlayers().size()).getBytes("UTF-8"); new Thread(() -> { try { plugin.getLogger().log(Level.FINE, "Metrics data sent!"); From c1123f29e5fabd40f13083714d77b38938b84502 Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Thu, 27 Feb 2025 18:57:21 +0000 Subject: [PATCH 11/19] Bump version from 1.3.16-SNAPSHOT4 to 1.3.16-SNAPSHOT5 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 75564902..bbd2a7cf 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,4 +16,4 @@ # along with this program. If not, see . # group=plugily.projects -version=1.3.16-SNAPSHOT4 +version=1.3.16-SNAPSHOT5 From 2cf6b1c6a20987900dd5ab18ec3fef55fd365a0a Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Fri, 28 Feb 2025 00:03:27 +0100 Subject: [PATCH 12/19] * Changed Scoreboard API (now paket based) (Thanks MrMicky-FR FastBoard) * Changed Scoreboard on lower 1.12.2 now supports 30 chars * Changed Scoreboard on 1.13+ now supports unlimited chars * Changed Scoreboard on 1.20.3 will hide red score numbers * Changed pom files to build java 8 builds without errors --- .github/CHANGELOG.md | 7 ++ .github/maven/api/pom.xml | 13 --- .github/maven/classic/pom.xml | 35 +++++--- MiniGamesBox API/build.gradle.kts | 1 - .../managers/IPluginScoreboardManager.java | 12 ++- MiniGamesBox Classic/build.gradle.kts | 7 +- .../minigamesbox/classic/PluginMain.java | 4 - .../managers/PluginScoreboardManager.java | 82 +++++++++++-------- README.md | 11 +-- 9 files changed, 98 insertions(+), 74 deletions(-) diff --git a/.github/CHANGELOG.md b/.github/CHANGELOG.md index 411f3a36..d720da94 100644 --- a/.github/CHANGELOG.md +++ b/.github/CHANGELOG.md @@ -1,3 +1,10 @@ +### 1.3.16 Release (.03.2025) +* Changed Scoreboard API (now paket based) (Thanks MrMicky-FR FastBoard) +* Changed Scoreboard on lower 1.12.2 now supports 30 chars +* Changed Scoreboard on 1.13+ now supports unlimited chars +* Changed Scoreboard on 1.20.3 will hide red score numbers +* Changed pom files to build java 8 builds without errors + ### (1.3.11-)1.3.15 Release (17.02.2025) * Added 1.21.1-4 support * Added (3) new ConfigOptions for ArmorStands (BLOCK_IN_GAME_ARMOR_STAND_DESTROY, BLOCK_IN_GAME_ARMOR_STAND_CHECK, BLOCK_IN_GAME_ARMOR_STAND_INTERACT) diff --git a/.github/maven/api/pom.xml b/.github/maven/api/pom.xml index f5ba9282..c8942187 100644 --- a/.github/maven/api/pom.xml +++ b/.github/maven/api/pom.xml @@ -59,19 +59,6 @@ - - me.tigerhix.lib - scoreboard - 1.4.5 - compile - true - - - * - * - - - plugily.projects MiniGamesBox-Database diff --git a/.github/maven/classic/pom.xml b/.github/maven/classic/pom.xml index cf400c27..6268ac1a 100644 --- a/.github/maven/classic/pom.xml +++ b/.github/maven/classic/pom.xml @@ -54,6 +54,14 @@ papi-repo https://repo.extendedclip.com/content/repositories/placeholderapi/ + + via-version + https://repo.viaversion.com + + + jitpack + https://jitpack.io + @@ -64,17 +72,22 @@ provided - me.tigerhix.lib - scoreboard - 1.4.5 - compile + fr.mrmicky + fastboard + 2.1.3 true - - - * - * - - + + + com.viaversion + viaversion-api + 5.2.1 + provided + + + com.github.ProtocolSupport + ProtocolSupport + master + provided com.github.cryptomorin @@ -199,7 +212,7 @@ plugily.projects.minigamesbox.classic.utils.version.xseries - me.tigerhix.lib.scoreboard + fr.mrmicky.fastboard plugily.projects.minigamesbox.classic.utils.scoreboard diff --git a/MiniGamesBox API/build.gradle.kts b/MiniGamesBox API/build.gradle.kts index d8e11a69..ce458e6d 100644 --- a/MiniGamesBox API/build.gradle.kts +++ b/MiniGamesBox API/build.gradle.kts @@ -23,7 +23,6 @@ plugins { } dependencies { - implementation("me.tigerhix.lib:scoreboard:1.4.5") { isTransitive = false } compileOnly(project(":MiniGamesBox-Database", "shadow")) compileOnly("com.github.cryptomorin:XSeries:13.0.0") { isTransitive = false } } diff --git a/MiniGamesBox API/src/main/java/plugily/projects/minigamesbox/api/arena/managers/IPluginScoreboardManager.java b/MiniGamesBox API/src/main/java/plugily/projects/minigamesbox/api/arena/managers/IPluginScoreboardManager.java index bf3df7ff..514d967c 100644 --- a/MiniGamesBox API/src/main/java/plugily/projects/minigamesbox/api/arena/managers/IPluginScoreboardManager.java +++ b/MiniGamesBox API/src/main/java/plugily/projects/minigamesbox/api/arena/managers/IPluginScoreboardManager.java @@ -1,6 +1,6 @@ package plugily.projects.minigamesbox.api.arena.managers; -import me.tigerhix.lib.scoreboard.type.Entry; +import org.bukkit.entity.Player; import plugily.projects.minigamesbox.api.user.IUser; import java.util.List; @@ -34,5 +34,13 @@ public interface IPluginScoreboardManager { */ void stopAllScoreboards(); - List formatScoreboard(IUser user); + /** + * Get Lines from the language.yml according to arena state + */ + List getScoreboardLines(); + + /** + * Update lines with defined placeholders + */ + List formatScoreboardLines(List lines, Player player); } diff --git a/MiniGamesBox Classic/build.gradle.kts b/MiniGamesBox Classic/build.gradle.kts index 227e709a..81050b03 100644 --- a/MiniGamesBox Classic/build.gradle.kts +++ b/MiniGamesBox Classic/build.gradle.kts @@ -24,10 +24,11 @@ plugins { repositories { maven("https://repo2.acrylicstyle.xyz/") + maven(uri("https://repo.viaversion.com")) } dependencies { - implementation("me.tigerhix.lib:scoreboard:1.4.5") { isTransitive = false } + implementation("fr.mrmicky:fastboard:2.1.3") { isTransitive = false } implementation("com.github.cryptomorin:XSeries:13.0.0") { isTransitive = false } implementation(project(":MiniGamesBox-API", "shadow")) implementation(project(":MiniGamesBox-Inventory", "shadow")) @@ -37,6 +38,8 @@ dependencies { implementation("io.papermc:paperlib:1.0.8") implementation("org.openjdk.nashorn:nashorn-core:15.4") implementation("org.ow2.asm:asm:9.6") + compileOnly("com.viaversion:viaversion-api:5.2.1") + compileOnly("com.github.ProtocolSupport:ProtocolSupport:master") compileOnly("com.mojang:authlib:3.13.56") compileOnly("de.simonsator:DevelopmentPAFSpigot:1.0.67") compileOnly("de.simonsator:Party-and-Friends-MySQL-Edition-Spigot-API:1.5.4-RELEASE") @@ -59,7 +62,7 @@ tasks { relocate("org.openjdk.nashorn", "plugily.projects.minigamesbox.classic.utils.skript.nashorn") relocate("com.cryptomorin.xseries.particles", "plugily.projects.minigamesbox.classic.utils.version.xseries") relocate("com.cryptomorin.xseries", "plugily.projects.minigamesbox.classic.utils.version.xseries") - relocate("me.tigerhix.lib.scoreboard", "plugily.projects.minigamesbox.classic.utils.scoreboard") + relocate("fr.mrmicky.fastboard", "plugily.projects.minigamesbox.classic.utils.scoreboard") relocate("org.bstats", "plugily.projects.minigamesbox.classic.utils.bstats") relocate("io.papermc.lib", "plugily.projects.minigamesbox.classic.utils.paperlib") } diff --git a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/PluginMain.java b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/PluginMain.java index 66e0dea2..c57627b2 100644 --- a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/PluginMain.java +++ b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/PluginMain.java @@ -18,7 +18,6 @@ package plugily.projects.minigamesbox.classic; -import me.tigerhix.lib.scoreboard.ScoreboardLib; import org.bukkit.Bukkit; import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.entity.ArmorStand; @@ -206,9 +205,6 @@ public void onEnable() { //setup ItemManager ItemManager.register(this); - //setup Scoreboard - ScoreboardLib.setPluginInstance(this); - //initialize default classes initializeDefaultClasses(); diff --git a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/managers/PluginScoreboardManager.java b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/managers/PluginScoreboardManager.java index 62dd62f2..c00bede6 100644 --- a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/managers/PluginScoreboardManager.java +++ b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/managers/PluginScoreboardManager.java @@ -18,11 +18,9 @@ package plugily.projects.minigamesbox.classic.arena.managers; -import me.tigerhix.lib.scoreboard.ScoreboardLib; -import me.tigerhix.lib.scoreboard.common.EntryBuilder; -import me.tigerhix.lib.scoreboard.type.Entry; -import me.tigerhix.lib.scoreboard.type.Scoreboard; -import me.tigerhix.lib.scoreboard.type.ScoreboardHandler; +import com.viaversion.viaversion.api.Via; +import com.viaversion.viaversion.api.protocol.version.ProtocolVersion; +import fr.mrmicky.fastboard.FastBoard; import org.bukkit.Bukkit; import org.bukkit.entity.Player; import plugily.projects.minigamesbox.api.IPluginMain; @@ -31,12 +29,10 @@ import plugily.projects.minigamesbox.api.user.IUser; import plugily.projects.minigamesbox.classic.arena.PluginArena; import plugily.projects.minigamesbox.classic.handlers.language.MessageBuilder; +import plugily.projects.minigamesbox.classic.utils.version.ServerVersion; +import protocolsupport.api.ProtocolSupportAPI; -import java.util.List; -import java.util.Map; -import java.util.Optional; -import java.util.UUID; -import java.util.concurrent.ConcurrentHashMap; +import java.util.*; /** * @author Tigerpanzer_02 @@ -45,9 +41,7 @@ */ public class PluginScoreboardManager implements IPluginScoreboardManager { - private final Map boardMap = new ConcurrentHashMap<>(); - private final Map lastBoardMap = new ConcurrentHashMap<>(); - private final org.bukkit.scoreboard.Scoreboard dummyBoard = Bukkit.getScoreboardManager().getNewScoreboard(); + private final Map boardMap = new HashMap<>(); private final IPluginMain plugin; private final String boardTitle; private final PluginArena arena; @@ -61,51 +55,67 @@ public PluginScoreboardManager(PluginArena arena) { @Override public void createScoreboard(IUser user) { Player player = user.getPlayer(); - lastBoardMap.put(player.getUniqueId(), player.getScoreboard()); - player.setScoreboard(dummyBoard); - Scoreboard scoreboard = ScoreboardLib.createScoreboard(player).setHandler(new ScoreboardHandler() { + FastBoard board = new FastBoard(player) { @Override - public String getTitle(Player player) { - return boardTitle; + public boolean hasLinesMaxLength() { + if(Bukkit.getPluginManager().isPluginEnabled("ViaVersion")) { + try { + return Via.getAPI().getPlayerVersion(getPlayer()) < ProtocolVersion.v1_13.getVersion(); + } catch(Exception ignored) { + //Not using ViaVersion 4 or unable to get ViaVersion return LegacyBoard! + } + } + if(Bukkit.getPluginManager().isPluginEnabled("ProtocolSupport")) { + try { + int version = ProtocolSupportAPI.getProtocolVersion(getPlayer()).getId(); + if(version >= 401) { + return false; + } + } catch(Exception ignored) { + //Can't interact with protocol api + } + } + return !ServerVersion.Version.isCurrentEqualOrHigher(ServerVersion.Version.v1_13); } + }; - @Override - public List getEntries(Player player) { - return formatScoreboard(user); - } - }); - scoreboard.activate(); - boardMap.put(player.getUniqueId(), scoreboard); + board.updateTitle(boardTitle); + board.updateLines(formatScoreboardLines(getScoreboardLines(), player)); + + + boardMap.put(user.getUniqueId(), board); } @Override public void updateScoreboards() { - boardMap.values().forEach(Scoreboard::update); + boardMap.values().forEach(fastBoard -> fastBoard.updateLines(formatScoreboardLines(getScoreboardLines(), fastBoard.getPlayer()))); } @Override public void removeScoreboard(IUser user) { - Optional.ofNullable(boardMap.remove(user.getUniqueId())).ifPresent(Scoreboard::deactivate); - Optional.ofNullable(lastBoardMap.remove(user.getUniqueId())).ifPresent(user.getPlayer()::setScoreboard); + Optional.ofNullable(boardMap.remove(user.getUniqueId())).ifPresent(FastBoard::delete); } @Override public void stopAllScoreboards() { - boardMap.values().forEach(Scoreboard::deactivate); + boardMap.values().forEach(FastBoard::delete); boardMap.clear(); } @Override - public List formatScoreboard(IUser user) { - EntryBuilder builder = new EntryBuilder(); + public List getScoreboardLines() { + return new ArrayList<>(plugin.getLanguageManager().getLanguageList(arena.getArenaState() == IArenaState.FULL_GAME ? "Scoreboard.Content.Waiting" + : "Scoreboard.Content." + arena.getArenaState().getFormattedName())); + } - for (String line : plugin.getLanguageManager().getLanguageList(arena.getArenaState() == IArenaState.FULL_GAME ? "Scoreboard.Content.Waiting" - : "Scoreboard.Content." + arena.getArenaState().getFormattedName())) { - builder.next(new MessageBuilder(line).player(user.getPlayer()).arena(arena).build()); + @Override + public List formatScoreboardLines(List lines, Player player) { + List formattedLines = new ArrayList<>(); + for(String line : lines) { + formattedLines.add(new MessageBuilder(line).player(player).arena(arena).build()); } - - return builder.build(); + return formattedLines; } } diff --git a/README.md b/README.md index 95b2cb8a..8844b9c3 100644 --- a/README.md +++ b/README.md @@ -7,8 +7,9 @@ Library box with massive content that could be seen as minigames core. Used on a ## Open Source Libraries -| Library | Author | License | Used on module | -|------------------------------------------------------|-----------------------------------------------|-------------------------------------------------------------------------------|------------------------| -| [FastInv](https://github.com/MrMicky-FR/FastInv) | [MrMicky](https://github.com/MrMicky-FR) | [MIT License](https://github.com/MrMicky-FR/FastInv/blob/master/LICENSE) | MiniGamesBox Inventory | -| [Commons Box](https://github.com/Plajer/Commons-Box) | [Plajer](https://github.com/Plajer) | [GPLv3](https://github.com/Plajer/Commons-Box/blob/master/LICENSE.md) | MiniGamesBox Classic, Database, Utils | -| [XSeries](https://github.com/CryptoMorin/XSeries) | [CryptoMorin](https://github.com/CryptoMorin) | [MIT License](https://github.com/CryptoMorin/XSeries/blob/master/LICENSE.txt) | MiniGamesBox | +| Library | Author | License | Used on module | +|------------------------------------------------------|-----------------------------------------------|-------------------------------------------------------------------------------|---------------------------------------| +| [FastInv](https://github.com/MrMicky-FR/FastInv) | [MrMicky](https://github.com/MrMicky-FR) | [MIT License](https://github.com/MrMicky-FR/FastInv/blob/master/LICENSE) | MiniGamesBox Inventory | +| [FastBoard](https://github.com/MrMicky-FR/FastBoard) | [MrMicky](https://github.com/MrMicky-FR) | [MIT License](https://github.com/MrMicky-FR/FastInv/blob/master/LICENSE) | MiniGamesBox Classic, Api | +| [Commons Box](https://github.com/Plajer/Commons-Box) | [Plajer](https://github.com/Plajer) | [GPLv3](https://github.com/Plajer/Commons-Box/blob/master/LICENSE.md) | MiniGamesBox Classic, Database, Utils | +| [XSeries](https://github.com/CryptoMorin/XSeries) | [CryptoMorin](https://github.com/CryptoMorin) | [MIT License](https://github.com/CryptoMorin/XSeries/blob/master/LICENSE.txt) | MiniGamesBox | From 436e28da147f0b9bcc0c5f9db990a66d57804d91 Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Thu, 27 Feb 2025 23:04:11 +0000 Subject: [PATCH 13/19] Bump version from 1.3.16-SNAPSHOT5 to 1.3.16-SNAPSHOT6 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index bbd2a7cf..5f5ecdea 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,4 +16,4 @@ # along with this program. If not, see . # group=plugily.projects -version=1.3.16-SNAPSHOT5 +version=1.3.16-SNAPSHOT6 From ce2eb0a1a18a1756a1686feca683f572c6238027 Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Fri, 28 Feb 2025 00:08:13 +0100 Subject: [PATCH 14/19] Updated repositories --- MiniGamesBox Classic/build.gradle.kts | 1 + 1 file changed, 1 insertion(+) diff --git a/MiniGamesBox Classic/build.gradle.kts b/MiniGamesBox Classic/build.gradle.kts index 81050b03..5632d033 100644 --- a/MiniGamesBox Classic/build.gradle.kts +++ b/MiniGamesBox Classic/build.gradle.kts @@ -25,6 +25,7 @@ plugins { repositories { maven("https://repo2.acrylicstyle.xyz/") maven(uri("https://repo.viaversion.com")) + maven(uri("https://jitpack.io")) } dependencies { From 6e24ff4e9157c6a8cf9ac75e728a65b08dde40c0 Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Thu, 27 Feb 2025 23:08:50 +0000 Subject: [PATCH 15/19] Bump version from 1.3.16-SNAPSHOT6 to 1.3.16-SNAPSHOT7 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 5f5ecdea..b1379ea9 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,4 +16,4 @@ # along with this program. If not, see . # group=plugily.projects -version=1.3.16-SNAPSHOT6 +version=1.3.16-SNAPSHOT7 From db8f9034dbf94b809214c4348988389e92073137 Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Fri, 28 Feb 2025 00:33:28 +0100 Subject: [PATCH 16/19] Removed ProtocolSupport as its not updated anymore --- MiniGamesBox Classic/build.gradle.kts | 6 ++++-- .../arena/managers/PluginScoreboardManager.java | 11 ----------- 2 files changed, 4 insertions(+), 13 deletions(-) diff --git a/MiniGamesBox Classic/build.gradle.kts b/MiniGamesBox Classic/build.gradle.kts index 5632d033..5e9992d1 100644 --- a/MiniGamesBox Classic/build.gradle.kts +++ b/MiniGamesBox Classic/build.gradle.kts @@ -25,7 +25,6 @@ plugins { repositories { maven("https://repo2.acrylicstyle.xyz/") maven(uri("https://repo.viaversion.com")) - maven(uri("https://jitpack.io")) } dependencies { @@ -40,7 +39,6 @@ dependencies { implementation("org.openjdk.nashorn:nashorn-core:15.4") implementation("org.ow2.asm:asm:9.6") compileOnly("com.viaversion:viaversion-api:5.2.1") - compileOnly("com.github.ProtocolSupport:ProtocolSupport:master") compileOnly("com.mojang:authlib:3.13.56") compileOnly("de.simonsator:DevelopmentPAFSpigot:1.0.67") compileOnly("de.simonsator:Party-and-Friends-MySQL-Edition-Spigot-API:1.5.4-RELEASE") @@ -68,6 +66,10 @@ tasks { relocate("io.papermc.lib", "plugily.projects.minigamesbox.classic.utils.paperlib") } + javadoc() { + exclude("**/ProtocolSupport/**") + } + processResources { filesMatching("**/plugin.yml") { expand(project.properties) diff --git a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/managers/PluginScoreboardManager.java b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/managers/PluginScoreboardManager.java index c00bede6..6b910e3b 100644 --- a/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/managers/PluginScoreboardManager.java +++ b/MiniGamesBox Classic/src/main/java/plugily/projects/minigamesbox/classic/arena/managers/PluginScoreboardManager.java @@ -30,7 +30,6 @@ import plugily.projects.minigamesbox.classic.arena.PluginArena; import plugily.projects.minigamesbox.classic.handlers.language.MessageBuilder; import plugily.projects.minigamesbox.classic.utils.version.ServerVersion; -import protocolsupport.api.ProtocolSupportAPI; import java.util.*; @@ -66,16 +65,6 @@ public boolean hasLinesMaxLength() { //Not using ViaVersion 4 or unable to get ViaVersion return LegacyBoard! } } - if(Bukkit.getPluginManager().isPluginEnabled("ProtocolSupport")) { - try { - int version = ProtocolSupportAPI.getProtocolVersion(getPlayer()).getId(); - if(version >= 401) { - return false; - } - } catch(Exception ignored) { - //Can't interact with protocol api - } - } return !ServerVersion.Version.isCurrentEqualOrHigher(ServerVersion.Version.v1_13); } }; From ae47c1ab46bf9661ba16ab5ac9e5e0d08b612d7c Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Thu, 27 Feb 2025 23:34:04 +0000 Subject: [PATCH 17/19] Bump version from 1.3.16-SNAPSHOT7 to 1.3.16-SNAPSHOT8 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index b1379ea9..da57b968 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,4 +16,4 @@ # along with this program. If not, see . # group=plugily.projects -version=1.3.16-SNAPSHOT7 +version=1.3.16-SNAPSHOT8 From 6484c5c6dc0977ba291762aa21db3a5741c568cb Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Tue, 4 Mar 2025 19:42:31 +0100 Subject: [PATCH 18/19] Updated CHANGELOG.md --- .github/CHANGELOG.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/CHANGELOG.md b/.github/CHANGELOG.md index d720da94..0159b10d 100644 --- a/.github/CHANGELOG.md +++ b/.github/CHANGELOG.md @@ -1,9 +1,13 @@ -### 1.3.16 Release (.03.2025) +### 1.3.16 Release (04.03.2025) * Changed Scoreboard API (now paket based) (Thanks MrMicky-FR FastBoard) * Changed Scoreboard on lower 1.12.2 now supports 30 chars * Changed Scoreboard on 1.13+ now supports unlimited chars * Changed Scoreboard on 1.20.3 will hide red score numbers * Changed pom files to build java 8 builds without errors +* Changed Potion methods to support all versions +* Removed ProtocolSupport for Scoreboard Actions +* Fixed Progress must be between 0 and 1 +* Fixed ItemBuilder.glowEffect ### (1.3.11-)1.3.15 Release (17.02.2025) * Added 1.21.1-4 support From 8e08d42048c85c70d2b7d8d66390f83336d77784 Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Tue, 4 Mar 2025 18:44:42 +0000 Subject: [PATCH 19/19] Bump version from 1.3.16-SNAPSHOT8 to 1.3.16-SNAPSHOT9 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index da57b968..6863204d 100644 --- a/gradle.properties +++ b/gradle.properties @@ -16,4 +16,4 @@ # along with this program. If not, see . # group=plugily.projects -version=1.3.16-SNAPSHOT8 +version=1.3.16-SNAPSHOT9