From dcc0955adcc6b2c0fb66f3fe8cf5d7d8ef291481 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 20:10:10 +0000 Subject: [PATCH 01/21] Bump version from 5.0.13 to 5.0.13-SNAPSHOT0 --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index 54a54728..8e218e02 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -49,7 +49,7 @@ dependencies { } group = "plugily.projects" -version = "5.0.13" +version = "5.0.13-SNAPSHOT0" description = "BuildBattle" java { From ff862633eacdcd734af21187bd7774c6965b5760 Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Tue, 4 Mar 2025 19:32:26 +0100 Subject: [PATCH 02/21] Fixed NoSuchFieldError: Class org.bukkit.enchantments.Enchantment on some mc versions (e.g. 1.20) --- .../projects/buildbattle/handlers/themes/vote/VoteMenu.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/plugily/projects/buildbattle/handlers/themes/vote/VoteMenu.java b/src/main/java/plugily/projects/buildbattle/handlers/themes/vote/VoteMenu.java index 437e6451..8d62726b 100644 --- a/src/main/java/plugily/projects/buildbattle/handlers/themes/vote/VoteMenu.java +++ b/src/main/java/plugily/projects/buildbattle/handlers/themes/vote/VoteMenu.java @@ -21,7 +21,6 @@ package plugily.projects.buildbattle.handlers.themes.vote; import org.bukkit.Material; -import org.bukkit.enchantments.Enchantment; import org.bukkit.entity.HumanEntity; import org.bukkit.entity.Player; import org.bukkit.event.inventory.InventoryClickEvent; @@ -37,6 +36,7 @@ import plugily.projects.minigamesbox.api.user.IUser; import plugily.projects.minigamesbox.classic.handlers.language.MessageBuilder; import plugily.projects.minigamesbox.classic.utils.helper.ItemBuilder; +import plugily.projects.minigamesbox.classic.utils.version.xseries.XEnchantment; import plugily.projects.minigamesbox.classic.utils.version.xseries.XMaterial; import plugily.projects.minigamesbox.inventory.common.item.ClickableItem; import plugily.projects.minigamesbox.inventory.common.item.SimpleClickableItem; @@ -183,7 +183,7 @@ public void updatePlayerGui(Player player, NormalFastInv gui) { ItemBuilder itemBuilder = new ItemBuilder(clickableSignItem.getItem()).removeLore(); itemBuilder.lore(new MessageBuilder("MENU_THEME_ITEM_LORE").asKey().arena(arena).value(theme).integer((int) percent).build().split(";")); if(theme.equals(playerVote)) { - itemBuilder.enchantment(Enchantment.UNBREAKING, 1).flags(ItemFlag.HIDE_ENCHANTS); + itemBuilder.enchantment(XEnchantment.UNBREAKING.get(), 1).flags(ItemFlag.HIDE_ENCHANTS); } else { itemBuilder.removeEnchants().removeFlags(); } From 48c1f81696c2cabe0e8a2000f294247198d20c66 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:32:35 +0000 Subject: [PATCH 03/21] Bump version from 5.0.13-SNAPSHOT0 to 5.0.13-SNAPSHOT1 --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index 8e218e02..8a23fbdb 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -49,7 +49,7 @@ dependencies { } group = "plugily.projects" -version = "5.0.13-SNAPSHOT0" +version = "5.0.13-SNAPSHOT1" description = "BuildBattle" java { From d7ff2f4afbaa9d2c471f2162e9e48dee902e7526 Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Tue, 4 Mar 2025 22:34:00 +0100 Subject: [PATCH 04/21] Updated ScoreboardManager to match new ScoreboardApi --- .github/CHANGELOG.md | 3 ++ build.gradle.kts | 2 +- .../arena/managers/ScoreboardManager.java | 39 ++++++++----------- 3 files changed, 20 insertions(+), 24 deletions(-) diff --git a/.github/CHANGELOG.md b/.github/CHANGELOG.md index 1168bb07..dc0186c1 100644 --- a/.github/CHANGELOG.md +++ b/.github/CHANGELOG.md @@ -10,6 +10,9 @@ deploy webhooks to print changelog successfully That's all, matcher will stop when detects next line started with `###` match +### 5.0.14 Release (04.03.2025) +* Updated to minigamesbox 1.3.17 + ### 5.0.13 Release (18.02.2025) * Fixed Progress must be between 0 and 1 diff --git a/build.gradle.kts b/build.gradle.kts index 8a23fbdb..180986da 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -42,7 +42,7 @@ repositories { } dependencies { - implementation("plugily.projects:MiniGamesBox-Classic:1.3.16-SNAPSHOT1") { isTransitive = false } + implementation("plugily.projects:MiniGamesBox-Classic:1.3.17") { isTransitive = false } compileOnly("io.papermc.paper:paper-api:1.21.4-R0.1-SNAPSHOT") compileOnly("net.citizensnpcs:citizensapi:2.0.31-SNAPSHOT") compileOnly("org.jetbrains:annotations:24.0.1") diff --git a/src/main/java/plugily/projects/buildbattle/arena/managers/ScoreboardManager.java b/src/main/java/plugily/projects/buildbattle/arena/managers/ScoreboardManager.java index 32164d29..b90c217c 100644 --- a/src/main/java/plugily/projects/buildbattle/arena/managers/ScoreboardManager.java +++ b/src/main/java/plugily/projects/buildbattle/arena/managers/ScoreboardManager.java @@ -23,14 +23,11 @@ import org.bukkit.entity.Player; import plugily.projects.buildbattle.arena.BaseArena; import plugily.projects.buildbattle.arena.GuessArena; -import plugily.projects.minigamesbox.api.arena.IPluginArena; -import plugily.projects.minigamesbox.api.user.IUser; import plugily.projects.minigamesbox.classic.arena.PluginArena; import plugily.projects.minigamesbox.classic.arena.managers.PluginScoreboardManager; import plugily.projects.minigamesbox.classic.handlers.language.MessageBuilder; -import plugily.projects.minigamesbox.classic.utils.scoreboard.common.EntryBuilder; -import plugily.projects.minigamesbox.classic.utils.scoreboard.type.Entry; +import java.util.ArrayList; import java.util.List; /** @@ -47,47 +44,43 @@ public ScoreboardManager(PluginArena arena) { } @Override - public List formatScoreboard(IUser user) { - EntryBuilder builder = new EntryBuilder(); - List lines; - IPluginArena userArena = user.getArena(); + public List formatScoreboardLines(List lines, Player player) { + List changedLines = new ArrayList<>(); - switch (userArena.getArenaState()) { + switch (arena.getArenaState()) { case FULL_GAME: { - lines = userArena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content.Starting"); + lines = arena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content.Starting"); break; } case IN_GAME: { - if(userArena instanceof GuessArena) { - lines = userArena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content." + userArena.getArenaState().getFormattedName() + ".Guess-The-Build" + (((GuessArena) userArena).getArenaInGameState() == BaseArena.ArenaInGameState.PLOT_VOTING ? "-Waiting" : "")); + if(arena instanceof GuessArena) { + lines = arena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content." + arena.getArenaState().getFormattedName() + ".Guess-The-Build" + (((GuessArena) arena).getArenaInGameState() == BaseArena.ArenaInGameState.PLOT_VOTING ? "-Waiting" : "")); } else { - if(userArena.getArenaOption("PLOT_MEMBER_SIZE") <= 1) { - lines = userArena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content." + userArena.getArenaState().getFormattedName() + ".Classic"); + if(arena.getArenaOption("PLOT_MEMBER_SIZE") <= 1) { + lines = arena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content." + arena.getArenaState().getFormattedName() + ".Classic"); } else { - lines = userArena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content." + userArena.getArenaState().getFormattedName() + ".Teams"); + lines = arena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content." + arena.getArenaState().getFormattedName() + ".Teams"); } } break; } case ENDING: { - if(userArena instanceof GuessArena) { - lines = userArena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content." + userArena.getArenaState().getFormattedName() + ".Guess-The-Build"); + if(arena instanceof GuessArena) { + lines = arena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content." + arena.getArenaState().getFormattedName() + ".Guess-The-Build"); } else { - lines = userArena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content." + userArena.getArenaState().getFormattedName() + ".Classic"); + lines = arena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content." + arena.getArenaState().getFormattedName() + ".Classic"); } break; } default: { - lines = userArena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content." + userArena.getArenaState().getFormattedName()); + lines = arena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content." + arena.getArenaState().getFormattedName()); } } - Player player = user.getPlayer(); - for(String line : lines) { - builder.next(new MessageBuilder(line).player(player).arena(arena).build()); + changedLines.add(new MessageBuilder(line).player(player).arena(arena).build()); } - return builder.build(); + return changedLines; } } From 7bd250ae6ca90e6d3f05110da7851d909f2531f5 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 21:34:07 +0000 Subject: [PATCH 05/21] Bump version from 5.0.13-SNAPSHOT1 to 5.0.13-SNAPSHOT2 --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index 180986da..f8efc39c 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -49,7 +49,7 @@ dependencies { } group = "plugily.projects" -version = "5.0.13-SNAPSHOT1" +version = "5.0.13-SNAPSHOT2" description = "BuildBattle" java { From 93ad28e94706c38d4ce4b99ddfd6fcce0f87a71d Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Tue, 4 Mar 2025 22:46:19 +0100 Subject: [PATCH 06/21] Updated ScoreboardManager to match new ScoreboardApi --- .../buildbattle/arena/managers/ScoreboardManager.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/main/java/plugily/projects/buildbattle/arena/managers/ScoreboardManager.java b/src/main/java/plugily/projects/buildbattle/arena/managers/ScoreboardManager.java index b90c217c..5e46b99f 100644 --- a/src/main/java/plugily/projects/buildbattle/arena/managers/ScoreboardManager.java +++ b/src/main/java/plugily/projects/buildbattle/arena/managers/ScoreboardManager.java @@ -23,6 +23,7 @@ import org.bukkit.entity.Player; import plugily.projects.buildbattle.arena.BaseArena; import plugily.projects.buildbattle.arena.GuessArena; +import plugily.projects.minigamesbox.api.arena.IArenaState; import plugily.projects.minigamesbox.classic.arena.PluginArena; import plugily.projects.minigamesbox.classic.arena.managers.PluginScoreboardManager; import plugily.projects.minigamesbox.classic.handlers.language.MessageBuilder; @@ -48,10 +49,6 @@ public List formatScoreboardLines(List lines, Player player) { List changedLines = new ArrayList<>(); switch (arena.getArenaState()) { - case FULL_GAME: { - lines = arena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content.Starting"); - break; - } case IN_GAME: { if(arena instanceof GuessArena) { lines = arena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content." + arena.getArenaState().getFormattedName() + ".Guess-The-Build" + (((GuessArena) arena).getArenaInGameState() == BaseArena.ArenaInGameState.PLOT_VOTING ? "-Waiting" : "")); @@ -73,7 +70,9 @@ public List formatScoreboardLines(List lines, Player player) { break; } default: { - lines = arena.getPlugin().getLanguageManager().getLanguageList("Scoreboard.Content." + arena.getArenaState().getFormattedName()); + lines = arena.getPlugin().getLanguageManager().getLanguageList(arena.getArenaState() == IArenaState.FULL_GAME ? "Scoreboard.Content.Starting" + : "Scoreboard.Content." + arena.getArenaState().getFormattedName()); + } } From eb8df062d7e518db59b47534e9a6b574f2fec685 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 21:46:27 +0000 Subject: [PATCH 07/21] Bump version from 5.0.13-SNAPSHOT2 to 5.0.13-SNAPSHOT3 --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index f8efc39c..b96d8342 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -49,7 +49,7 @@ dependencies { } group = "plugily.projects" -version = "5.0.13-SNAPSHOT2" +version = "5.0.13-SNAPSHOT3" description = "BuildBattle" java { From 7acf0be3ce48c74305f44b9c10f61756f331818f Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Sat, 8 Mar 2025 10:05:00 +0100 Subject: [PATCH 08/21] Changed plot distribution on team mode tries to create only full plots now Fixed plot distribution in same cases lets spectators into the plot as member Fixed game ending due to not enough players counted spectators --- .github/CHANGELOG.md | 5 ++- .../buildbattle/arena/ArenaManager.java | 2 +- .../buildbattle/arena/BuildArena.java | 35 +++++++++++-------- .../buildbattle/arena/GuessArena.java | 8 ++--- .../arena/states/build/InGameState.java | 8 +++-- 5 files changed, 34 insertions(+), 24 deletions(-) diff --git a/.github/CHANGELOG.md b/.github/CHANGELOG.md index dc0186c1..3ead6ddd 100644 --- a/.github/CHANGELOG.md +++ b/.github/CHANGELOG.md @@ -10,7 +10,10 @@ deploy webhooks to print changelog successfully That's all, matcher will stop when detects next line started with `###` match -### 5.0.14 Release (04.03.2025) +### 5.0.14 Release (08.03.2025) +* Changed plot distribution on team mode tries to create only full plots now +* Fixed plot distribution in same cases lets spectators into the plot as member +* Fixed game ending due to not enough players counted spectators * Updated to minigamesbox 1.3.17 ### 5.0.13 Release (18.02.2025) diff --git a/src/main/java/plugily/projects/buildbattle/arena/ArenaManager.java b/src/main/java/plugily/projects/buildbattle/arena/ArenaManager.java index cf260997..ac2d438c 100644 --- a/src/main/java/plugily/projects/buildbattle/arena/ArenaManager.java +++ b/src/main/java/plugily/projects/buildbattle/arena/ArenaManager.java @@ -56,7 +56,7 @@ public void additionalPartyJoin(Player player, IPluginArena arena, Player partyL List plots = pluginArena.getPlotManager().getPlots(); Plot partyPlot = plots.get(plots.size() == 1 ? 0 : plugin.getRandom().nextInt(plots.size())); - if(arena.getPlayers().contains(partyLeader)) { + if(arena.getPlayersLeft().contains(partyLeader)) { Plot partyLeaderPlot = pluginArena.getPlotManager().getPlot(partyLeader); if(partyLeaderPlot != null) { partyPlot = partyLeaderPlot; diff --git a/src/main/java/plugily/projects/buildbattle/arena/BuildArena.java b/src/main/java/plugily/projects/buildbattle/arena/BuildArena.java index f6669e0a..bebe90ab 100644 --- a/src/main/java/plugily/projects/buildbattle/arena/BuildArena.java +++ b/src/main/java/plugily/projects/buildbattle/arena/BuildArena.java @@ -30,6 +30,7 @@ import plugily.projects.minigamesbox.api.arena.IArenaState; import java.util.*; +import java.util.stream.Collectors; /** * @author Tigerpanzer_02 @@ -89,7 +90,7 @@ public Queue getQueue() { @Override public void distributePlots() { - int neededPlots = getPlayers().size() / getArenaOption("PLOT_MEMBER_SIZE"); + int neededPlots = getPlayersLeft().size() / getArenaOption("PLOT_MEMBER_SIZE"); if(getPlotManager().getPlots().size() < neededPlots) { getPlugin().getMessageUtils().errorOccurred(); getPlugin().getDebugger().sendConsoleMsg("&c[Build Battle] [PLOT WARNING] Not enough plots in arena " + getId() + "! Lacks " + (neededPlots - getPlotManager().getPlots().size()) + " plots"); @@ -111,23 +112,27 @@ public void distributePlots() { } break; case TEAM: - for(Player player : getPlayers()) { - // get base with min players - Plot minPlayers = getPlotManager().getPlots().stream().min(Comparator.comparing(Plot::getMembersSize)).get(); - // add player to min base if he got no base - Plot playerPlot = getPlotManager().getPlot(player); - if(playerPlot == null) { - minPlayers.addMember(player, this, true); - } - // fallback - if(playerPlot == null) { - getPlotManager().getPlots().get(0).addMember(player, this, true); + int plotMemberSize = getArenaOption("PLOT_MEMBER_SIZE"); + int neededDividedPlots = getPlayersLeft().size() / plotMemberSize; + int currentDividedPlots = (int) getPlotManager().getPlots().stream().filter(plot -> plot.getMembersSize() > 0).count(); + + + if(neededDividedPlots > currentDividedPlots) { + List fullPlots = getPlotManager().getPlots().stream().filter(plot -> plot.getMembersSize() == plotMemberSize).collect(Collectors.toList()); + List playersToMove = getPlayersLeft().stream().filter(player -> fullPlots.stream().noneMatch(plot -> plot.getMembers().contains(player))).collect(Collectors.toList()); + if(!playersToMove.isEmpty()) { + for(int i = 0; i < playersToMove.size(); i++) { + Player move = playersToMove.get(i); + List emptyPlots = getPlotManager().getPlots().stream().filter(plot -> plot.getMembersSize() < plotMemberSize).collect(Collectors.toList()); + Plot maxEmptyPlot = emptyPlots.stream().max(Comparator.comparing(Plot::getMembersSize)).get(); + maxEmptyPlot.addMember(move, this, true); + } } } //check if not only one plot got players Plot maxPlayers = getPlotManager().getPlots().stream().max(Comparator.comparing(Plot::getMembersSize)).get(); Plot minPlayers = getPlotManager().getPlots().stream().min(Comparator.comparing(Plot::getMembersSize)).get(); - if(maxPlayers.getMembersSize() == getPlayers().size()) { + if(maxPlayers.getMembersSize() == getPlayersLeft().size()) { for(int i = 0; i < maxPlayers.getMembersSize() / 2; i++) { Player move = maxPlayers.getMembers().get(i); minPlayers.addMember(move, this, true); @@ -149,14 +154,14 @@ public void distributePlots() { @Override public boolean enoughPlayersToContinue() { - int size = getPlayers().size(); + int size = getPlayersLeft().size(); int memberSize = getArenaOption("PLOT_MEMBER_SIZE"); if(size > memberSize) { return true; } if(size == memberSize) { - return !new HashSet<>(getPlotManager().getPlot(getPlayersLeft().get(0)).getMembers()).containsAll(getPlayers()); + return !new HashSet<>(getPlotManager().getPlot(getPlayersLeft().get(0)).getMembers()).containsAll(getPlayersLeft()); } return false; } diff --git a/src/main/java/plugily/projects/buildbattle/arena/GuessArena.java b/src/main/java/plugily/projects/buildbattle/arena/GuessArena.java index 5923082d..02fe0198 100644 --- a/src/main/java/plugily/projects/buildbattle/arena/GuessArena.java +++ b/src/main/java/plugily/projects/buildbattle/arena/GuessArena.java @@ -76,8 +76,8 @@ public void cleanUpArena() { } @Override - public void distributePlots() { - int neededPlots = getPlayers().size() / plotMemberSize; + public void distributePlots() { + int neededPlots = getPlayersLeft().size() / plotMemberSize; if(getPlotManager().getPlots().size() < neededPlots) { getPlugin().getMessageUtils().errorOccurred(); getPlugin().getDebugger().sendConsoleMsg("&c[Build Battle] [PLOT WARNING] Not enough plots in arena " + getId() + "! Lacks " + (neededPlots - getPlotManager().getPlots().size()) + " plots"); @@ -108,13 +108,13 @@ public void distributePlots() { @Override public boolean enoughPlayersToContinue() { - int size = getPlayers().size(); + int size = getPlayersLeft().size(); if(size > plotMemberSize) { return true; } if(size == plotMemberSize) { - return !new HashSet<>(getPlotManager().getPlot(getPlayersLeft().get(0)).getMembers()).containsAll(getPlayers()); + return !new HashSet<>(getPlotManager().getPlot(getPlayersLeft().get(0)).getMembers()).containsAll(getPlayersLeft()); } return false; } diff --git a/src/main/java/plugily/projects/buildbattle/arena/states/build/InGameState.java b/src/main/java/plugily/projects/buildbattle/arena/states/build/InGameState.java index 8b2c26fc..3c99e3e4 100644 --- a/src/main/java/plugily/projects/buildbattle/arena/states/build/InGameState.java +++ b/src/main/java/plugily/projects/buildbattle/arena/states/build/InGameState.java @@ -63,11 +63,13 @@ public void handleCall(PluginArena arena) { new MessageBuilder("IN_GAME_MESSAGES_PLOT_GTB_THEME_NAME").asKey().arena(pluginArena).sendArena(); } - for(Player player : pluginArena.getPlayers()) { + for(Player player : pluginArena.getPlayersLeft()) { player.closeInventory(); player.setGameMode(GameMode.CREATIVE); VersionUtils.setCollidable(player, false); } + // second time after voting as sometimes world switch causing no teleportation! + pluginArena.getPlotManager().teleportToPlots(); } else { handleThemeVoting(pluginArena); } @@ -180,7 +182,7 @@ private void adjustStatistics(BuildArena pluginArena) { } private void handleThemeVoting(BuildArena pluginArena) { - for(Player player : pluginArena.getPlayers()) { + for(Player player : pluginArena.getPlayersLeft()) { pluginArena.getVoteMenu().updateInventory(player); } } @@ -268,7 +270,7 @@ public void voteRoutine(BuildArena pluginArena) { String formattedMembers = plot.getFormattedMembers(); boolean hidePlotOwner = getPlugin().getConfigPreferences().getOption("PLOT_HIDE_OWNER"); - for(Player player : pluginArena.getPlayers()) { + for(Player player : pluginArena.getPlayersLeft()) { VersionUtils.teleport(player, teleportLoc); player.setPlayerWeather(plot.getWeatherType()); player.setPlayerTime(Plot.Time.format(plot.getTime(), player.getWorld().getTime()), false); From 41483063acd16dee5957e32443200108cef0babd Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Sat, 8 Mar 2025 09:05:53 +0000 Subject: [PATCH 09/21] Bump version from 5.0.13-SNAPSHOT3 to 5.0.13-SNAPSHOT4 --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index b96d8342..411fd61e 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -49,7 +49,7 @@ dependencies { } group = "plugily.projects" -version = "5.0.13-SNAPSHOT3" +version = "5.0.13-SNAPSHOT4" description = "BuildBattle" java { From ba3258e3c5ae58ada6f8cbe426200a8eccde2aae Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Thu, 13 Mar 2025 17:39:30 +0100 Subject: [PATCH 10/21] Moved from gradle to maven to support java 8 language level again --- .../building/build.gradle.kts | 0 gradlew => .github/building/gradlew | 0 gradlew.bat => .github/building/gradlew.bat | 0 .github/{maven => building}/pom.xml | 0 .../building/settings.gradle.kts | 0 .github/workflows/deploy-development.yml | 31 ++- .github/workflows/deploy-master.yml | 31 ++- pom.xml | 208 ++++++++++++++++++ 8 files changed, 250 insertions(+), 20 deletions(-) rename build.gradle.kts => .github/building/build.gradle.kts (100%) rename gradlew => .github/building/gradlew (100%) rename gradlew.bat => .github/building/gradlew.bat (100%) rename .github/{maven => building}/pom.xml (100%) rename settings.gradle.kts => .github/building/settings.gradle.kts (100%) create mode 100644 pom.xml diff --git a/build.gradle.kts b/.github/building/build.gradle.kts similarity index 100% rename from build.gradle.kts rename to .github/building/build.gradle.kts diff --git a/gradlew b/.github/building/gradlew similarity index 100% rename from gradlew rename to .github/building/gradlew diff --git a/gradlew.bat b/.github/building/gradlew.bat similarity index 100% rename from gradlew.bat rename to .github/building/gradlew.bat diff --git a/.github/maven/pom.xml b/.github/building/pom.xml similarity index 100% rename from .github/maven/pom.xml rename to .github/building/pom.xml diff --git a/settings.gradle.kts b/.github/building/settings.gradle.kts similarity index 100% rename from settings.gradle.kts rename to .github/building/settings.gradle.kts diff --git a/.github/workflows/deploy-development.yml b/.github/workflows/deploy-development.yml index 9d9a75aa..d24de707 100644 --- a/.github/workflows/deploy-development.yml +++ b/.github/workflows/deploy-development.yml @@ -10,11 +10,9 @@ jobs: steps: - name: Checkout Latest Commit uses: actions/checkout@v4.2.2 - - name: Grant execute permission for gradlew - run: chmod +x gradlew - name: Bump Version id: bump - uses: Plugily-Projects/version-bump-action@v8 + uses: Plugily-Projects/version-bump-action@v10 with: github-token: ${{ secrets.github_token }} auto-version-bump: true @@ -34,10 +32,23 @@ jobs: distribution: 'temurin' java-version: '21' java-package: jdk - - name: Grant execute permission for gradlew - run: chmod +x gradlew - - name: Publish with Gradle - run: ./gradlew publishMavenPublicationToSnapshotsRepository - env: - MAVEN_USERNAME: ${{ secrets.SNAPSHOTSUSERNAME }} - MAVEN_PASSWORD: ${{ secrets.SNAPSHOTSPASSWORD }} + - name: Set up Maven + uses: stCarolas/setup-maven@v5 + with: + maven-version: 3.8.2 + - name: Cache + uses: actions/cache@v4.2.2 + with: + path: ~/.m2/repository + key: maven-${{ hashFiles('**/pom.xml') }} + restore-keys: maven- + - name: Publish with Maven + uses: s4u/maven-settings-action@v3.1.0 + with: + servers: | + [{ + "id": "Snapshot", + "username": "${{ secrets.SNAPSHOTSUSERNAME }}", + "password": "${{ secrets.SNAPSHOTSPASSWORD }}" + }] + - run: mvn clean verify compile package site:site javadoc:javadoc javadoc:jar deploy -DaltDeploymentRepository=Snapshot::https://maven.plugily.xyz/snapshots -f pom.xml diff --git a/.github/workflows/deploy-master.yml b/.github/workflows/deploy-master.yml index c08a2056..172d2f22 100644 --- a/.github/workflows/deploy-master.yml +++ b/.github/workflows/deploy-master.yml @@ -12,11 +12,9 @@ jobs: steps: - name: Checkout Latest Commit uses: actions/checkout@v4.2.2 - - name: Grant execute permission for gradlew - run: chmod +x gradlew - name: Bump Version id: bump - uses: Plugily-Projects/version-bump-action@v8 + uses: Plugily-Projects/version-bump-action@v10 with: github-token: ${{ secrets.github_token }} auto-version-bump: false @@ -37,10 +35,23 @@ jobs: distribution: 'temurin' java-version: '21' java-package: jdk - - name: Grant execute permission for gradlew - run: chmod +x gradlew - - name: Publish with Gradle - run: ./gradlew publishMavenPublicationToReleasesRepository - env: - MAVEN_USERNAME: ${{ secrets.RELEASESUSERNAME }} - MAVEN_PASSWORD: ${{ secrets.RELEASESPASSWORD }} + - name: Set up Maven + uses: stCarolas/setup-maven@v5 + with: + maven-version: 3.8.2 + - name: Cache + uses: actions/cache@v4.2.2 + with: + path: ~/.m2/repository + key: maven-${{ hashFiles('**/pom.xml') }} + restore-keys: maven- + - name: Publish with Maven + uses: s4u/maven-settings-action@v3.1.0 + with: + servers: | + [{ + "id": "Release", + "username": "${{ secrets.RELEASESUSERNAME }}", + "password": "${{ secrets.RELEASESPASSWORD }}" + }] + - run: mvn clean verify compile package site:site javadoc:javadoc javadoc:jar deploy -DaltDeploymentRepository=Release::https://maven.plugily.xyz/releases -f pom.xml diff --git a/pom.xml b/pom.xml new file mode 100644 index 00000000..64ffb577 --- /dev/null +++ b/pom.xml @@ -0,0 +1,208 @@ + + + + + 4.0.0 + + plugily.projects + buildbattle + 5.0.13-SNAPSHOT4 + BuildBattle + + + 1.8 + UTF-8 + + + + + papermc + https://repo.papermc.io/repository/maven-public/ + + + plugilyprojects + https://maven.plugily.xyz/releases + + + plugilyprojects-snapshots + https://maven.plugily.xyz/snapshots + + + jitpack + https://jitpack.io + + + codemc-repo + https://repo.codemc.org/repository/maven-public/ + + + spigot-repo + https://hub.spigotmc.org/nexus/content/repositories/snapshots/ + + + citizens-repo + http://repo.citizensnpcs.co/ + + + + + + io.papermc.paper + paper-api + 1.21.4-R0.1-SNAPSHOT + provided + + + + org.jetbrains + annotations + 23.0.0 + compile + + + plugily.projects + MiniGamesBox-Classic + 1.3.17-SNAPSHOT10 + compile + true + + + net.citizensnpcs + citizensapi + 2.0.26-SNAPSHOT + provided + + + ch.ethz.globis.phtree + phtree + + + + + + + + + src/main/resources + true + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.14.0 + + ${java.version} + ${java.version} + + + + org.apache.maven.plugins + maven-site-plugin + 3.21.0 + + + org.apache.maven.plugins + maven-deploy-plugin + 3.1.4 + + + org.apache.maven.plugins + maven-project-info-reports-plugin + 3.9.0 + + + org.apache.maven.plugins + maven-javadoc-plugin + 3.11.2 + + Murder Mystery API docs for v${project.version} + Minecraft survival minigame. + Be the murderer, innocent or the detective! Don't be killed during the game to win! API + documentation for hooking Murder Mystery with your plugin. + + + + + org.apache.maven.plugins + maven-jar-plugin + 3.4.2 + + + org.apache.maven.plugins + maven-shade-plugin + 3.6.0 + + + package + + shade + + + + + com.zaxxer.hikari + plugily.projects.buildbattle.database.hikari + + + plugily.projects.minigamesbox + plugily.projects.buildbattle.minigamesbox + + + false + + + + + + + + plugily.projects + betty-maven-plugin + 1.0.2 + + ${project.basedir}/CHANGELOG.md + + + + + + + org.apache.maven.wagon + wagon-ssh + 3.5.3 + + + + + + Release + https://maven.plugily.xyz/releases + + + Snapshot + https://maven.plugily.xyz/snapshots + + + \ No newline at end of file From 24c5e605df8ffbea68b6c4dc0dfd97f440222a0f Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Thu, 13 Mar 2025 16:39:53 +0000 Subject: [PATCH 11/21] Bump version from 5.0.13-SNAPSHOT4 to 5.0.13-SNAPSHOT5 --- pom.xml | 2 +- pom.xml.versionsBackup | 208 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 209 insertions(+), 1 deletion(-) create mode 100644 pom.xml.versionsBackup diff --git a/pom.xml b/pom.xml index 64ffb577..4f247a7d 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ plugily.projects buildbattle - 5.0.13-SNAPSHOT4 + 5.0.13-SNAPSHOT5 BuildBattle diff --git a/pom.xml.versionsBackup b/pom.xml.versionsBackup new file mode 100644 index 00000000..64ffb577 --- /dev/null +++ b/pom.xml.versionsBackup @@ -0,0 +1,208 @@ + + + + + 4.0.0 + + plugily.projects + buildbattle + 5.0.13-SNAPSHOT4 + BuildBattle + + + 1.8 + UTF-8 + + + + + papermc + https://repo.papermc.io/repository/maven-public/ + + + plugilyprojects + https://maven.plugily.xyz/releases + + + plugilyprojects-snapshots + https://maven.plugily.xyz/snapshots + + + jitpack + https://jitpack.io + + + codemc-repo + https://repo.codemc.org/repository/maven-public/ + + + spigot-repo + https://hub.spigotmc.org/nexus/content/repositories/snapshots/ + + + citizens-repo + http://repo.citizensnpcs.co/ + + + + + + io.papermc.paper + paper-api + 1.21.4-R0.1-SNAPSHOT + provided + + + + org.jetbrains + annotations + 23.0.0 + compile + + + plugily.projects + MiniGamesBox-Classic + 1.3.17-SNAPSHOT10 + compile + true + + + net.citizensnpcs + citizensapi + 2.0.26-SNAPSHOT + provided + + + ch.ethz.globis.phtree + phtree + + + + + + + + + src/main/resources + true + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.14.0 + + ${java.version} + ${java.version} + + + + org.apache.maven.plugins + maven-site-plugin + 3.21.0 + + + org.apache.maven.plugins + maven-deploy-plugin + 3.1.4 + + + org.apache.maven.plugins + maven-project-info-reports-plugin + 3.9.0 + + + org.apache.maven.plugins + maven-javadoc-plugin + 3.11.2 + + Murder Mystery API docs for v${project.version} + Minecraft survival minigame. + Be the murderer, innocent or the detective! Don't be killed during the game to win! API + documentation for hooking Murder Mystery with your plugin. + + + + + org.apache.maven.plugins + maven-jar-plugin + 3.4.2 + + + org.apache.maven.plugins + maven-shade-plugin + 3.6.0 + + + package + + shade + + + + + com.zaxxer.hikari + plugily.projects.buildbattle.database.hikari + + + plugily.projects.minigamesbox + plugily.projects.buildbattle.minigamesbox + + + false + + + + + + + + plugily.projects + betty-maven-plugin + 1.0.2 + + ${project.basedir}/CHANGELOG.md + + + + + + + org.apache.maven.wagon + wagon-ssh + 3.5.3 + + + + + + Release + https://maven.plugily.xyz/releases + + + Snapshot + https://maven.plugily.xyz/snapshots + + + \ No newline at end of file From 46e5720599e4214a62cebbd4212d86513f4f1f03 Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Thu, 13 Mar 2025 18:11:05 +0100 Subject: [PATCH 12/21] Moved from gradle to maven to support java 8 language level again --- .github/building/pom.xml | 62 +++++++++++++++++++++++----------------- pom.xml | 12 ++++---- 2 files changed, 42 insertions(+), 32 deletions(-) diff --git a/.github/building/pom.xml b/.github/building/pom.xml index cc13afb0..23d4c421 100644 --- a/.github/building/pom.xml +++ b/.github/building/pom.xml @@ -26,7 +26,7 @@ plugily.projects buildbattle - 5.0.0 + 5.0.13-SNAPSHOT5 BuildBattle @@ -37,7 +37,7 @@ papermc - https://papermc.io/repo/repository/maven-public/ + https://repo.papermc.io/repository/maven-public/ plugilyprojects @@ -69,7 +69,7 @@ io.papermc.paper paper-api - 1.19.1-R0.1-SNAPSHOT + 1.21.4-R0.1-SNAPSHOT provided @@ -77,12 +77,12 @@ org.jetbrains annotations 23.0.0 - compile + provided plugily.projects MiniGamesBox-Classic - 1.2.0-SNAPSHOT51 + 1.3.17-SNAPSHOT12 compile true @@ -108,41 +108,51 @@ - - org.apache.maven.plugins - maven-site-plugin - 3.12.0 - org.apache.maven.plugins maven-compiler-plugin - 3.10.1 - - compile - + 3.14.0 ${java.version} ${java.version} + + org.apache.maven.plugins + maven-site-plugin + 3.21.0 + + + org.apache.maven.plugins + maven-deploy-plugin + 3.1.4 + + + org.apache.maven.plugins + maven-project-info-reports-plugin + 3.9.0 + org.apache.maven.plugins maven-javadoc-plugin - 3.4.0 + 3.11.2 - minecraft/buildbattle - false + BuildBattle API docs for v${project.version} + Minecraft building minigame. + The goal is to build the best you can! You must compete with other players in this building game. + Who will be the best? Have fun using it! Leave a good rating if you really like it. + org.apache.maven.plugins maven-jar-plugin - 3.2.2 + 3.4.2 org.apache.maven.plugins maven-shade-plugin - 3.3.0 + 3.6.0 package @@ -159,10 +169,6 @@ plugily.projects.minigamesbox plugily.projects.buildbattle.minigamesbox - - plugily.projects.commonsbox - plugily.projects.buildbattle.commonsbox - false @@ -185,14 +191,18 @@ org.apache.maven.wagon wagon-ssh - 3.5.2 + 3.5.3 - plugily-projects + Release https://maven.plugily.xyz/releases + + Snapshot + https://maven.plugily.xyz/snapshots + - + \ No newline at end of file diff --git a/pom.xml b/pom.xml index 4f247a7d..23d4c421 100644 --- a/pom.xml +++ b/pom.xml @@ -77,12 +77,12 @@ org.jetbrains annotations 23.0.0 - compile + provided plugily.projects MiniGamesBox-Classic - 1.3.17-SNAPSHOT10 + 1.3.17-SNAPSHOT12 compile true @@ -137,10 +137,10 @@ maven-javadoc-plugin 3.11.2 - Murder Mystery API docs for v${project.version} - Minecraft survival minigame. - Be the murderer, innocent or the detective! Don't be killed during the game to win! API - documentation for hooking Murder Mystery with your plugin. + BuildBattle API docs for v${project.version} + Minecraft building minigame. + The goal is to build the best you can! You must compete with other players in this building game. + Who will be the best? Have fun using it! Leave a good rating if you really like it. From 3a0d1b07101000adac590dff2aafa3c20a4c39d0 Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Thu, 13 Mar 2025 17:11:30 +0000 Subject: [PATCH 13/21] Bump version from 5.0.13-SNAPSHOT5 to 5.0.13-SNAPSHOT6 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 23d4c421..f9d388bb 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ plugily.projects buildbattle - 5.0.13-SNAPSHOT5 + 5.0.13-SNAPSHOT6 BuildBattle From 97753f023005147d58f5cb58a9c166038c51fa61 Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Thu, 13 Mar 2025 18:12:59 +0100 Subject: [PATCH 14/21] Update citiziens repo --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index f9d388bb..ab23fa9d 100644 --- a/pom.xml +++ b/pom.xml @@ -61,7 +61,7 @@ citizens-repo - http://repo.citizensnpcs.co/ + https://repo.citizensnpcs.co/ From 8351961afdefffa5d26b38ba82cfed83a6f4c349 Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Thu, 13 Mar 2025 17:13:19 +0000 Subject: [PATCH 15/21] Bump version from 5.0.13-SNAPSHOT6 to 5.0.13-SNAPSHOT7 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ab23fa9d..f0c21e10 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ plugily.projects buildbattle - 5.0.13-SNAPSHOT6 + 5.0.13-SNAPSHOT7 BuildBattle From b2fe4dbadb48f86031c3133060f0b58fc22571ec Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Thu, 13 Mar 2025 18:28:51 +0100 Subject: [PATCH 16/21] MinimizeJar --- pom.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/pom.xml b/pom.xml index f0c21e10..e169ca8a 100644 --- a/pom.xml +++ b/pom.xml @@ -160,6 +160,7 @@ shade + true com.zaxxer.hikari From d0a709ed8fb5179a5cba3f0315a7527d143809b0 Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Thu, 13 Mar 2025 17:29:22 +0000 Subject: [PATCH 17/21] Bump version from 5.0.13-SNAPSHOT7 to 5.0.13-SNAPSHOT8 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index e169ca8a..af3ec575 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ plugily.projects buildbattle - 5.0.13-SNAPSHOT7 + 5.0.13-SNAPSHOT8 BuildBattle From 38ed2e06d690b84830aff993b7a3773f18bb7956 Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Thu, 13 Mar 2025 20:12:31 +0100 Subject: [PATCH 18/21] Fixed ${description} invalid --- src/main/resources/plugin.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 08f9e820..987c3834 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -1,4 +1,4 @@ -name: ${description} +name: BuildBattle main: plugily.projects.buildbattle.Main authors: [ PlugilyProjects, Tigerpanzer_02, Tigerpanzer, Plajer, TomTheDeveloper ] version: ${version} From e18f8cee8f29cfe92afde485f4645a410be7a382 Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Thu, 13 Mar 2025 19:12:46 +0000 Subject: [PATCH 19/21] Bump version from 5.0.13-SNAPSHOT8 to 5.0.13-SNAPSHOT9 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index af3ec575..599a0fa7 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ plugily.projects buildbattle - 5.0.13-SNAPSHOT8 + 5.0.13-SNAPSHOT9 BuildBattle From 54e2035a2f35621f8005a345111e505150f5e51e Mon Sep 17 00:00:00 2001 From: Tigerpanzer_02 <37453987+Tigerpanzer02@users.noreply.github.com> Date: Thu, 13 Mar 2025 21:19:58 +0100 Subject: [PATCH 20/21] Updated CHANGELOG.md --- .github/CHANGELOG.md | 4 ++-- pom.xml | 6 +----- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/.github/CHANGELOG.md b/.github/CHANGELOG.md index 3ead6ddd..15e2f295 100644 --- a/.github/CHANGELOG.md +++ b/.github/CHANGELOG.md @@ -10,11 +10,11 @@ deploy webhooks to print changelog successfully That's all, matcher will stop when detects next line started with `###` match -### 5.0.14 Release (08.03.2025) +### 5.0.14 Release (13.03.2025) * Changed plot distribution on team mode tries to create only full plots now * Fixed plot distribution in same cases lets spectators into the plot as member * Fixed game ending due to not enough players counted spectators -* Updated to minigamesbox 1.3.17 +* Updated to minigamesbox 1.4.0 ### 5.0.13 Release (18.02.2025) * Fixed Progress must be between 0 and 1 diff --git a/pom.xml b/pom.xml index 599a0fa7..9a4ee55c 100644 --- a/pom.xml +++ b/pom.xml @@ -51,10 +51,6 @@ jitpack https://jitpack.io - - codemc-repo - https://repo.codemc.org/repository/maven-public/ - spigot-repo https://hub.spigotmc.org/nexus/content/repositories/snapshots/ @@ -82,7 +78,7 @@ plugily.projects MiniGamesBox-Classic - 1.3.17-SNAPSHOT12 + 1.4.0 compile true From f76df32aff9047879d890b31772662b27320b953 Mon Sep 17 00:00:00 2001 From: "version-bump[github-action]" <41898282+version-bump[github-action]@users.noreply.github.com> Date: Thu, 13 Mar 2025 20:20:14 +0000 Subject: [PATCH 21/21] Bump version from 5.0.13-SNAPSHOT9 to 5.0.13-SNAPSHOT10 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 9a4ee55c..94c7e235 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ plugily.projects buildbattle - 5.0.13-SNAPSHOT9 + 5.0.13-SNAPSHOT10 BuildBattle