diff --git a/.github/CHANGELOG.md b/.github/CHANGELOG.md index 89e2a82a..f8928ce2 100644 --- a/.github/CHANGELOG.md +++ b/.github/CHANGELOG.md @@ -10,6 +10,10 @@ deploy webhooks to print changelog successfully That's all, matcher will stop when detects next line started with `###` match +### 5.1.1 Release +* Fixed liquid flow outside plots and different worlds +* Fixed forceplay console command without theme + ### 5.1.0 Release (10.07.2025) * Added Heads from HeadDatabase (selected on each server start 200 per category) * Added Heads Search function diff --git a/pom.xml b/pom.xml index 6ab6f3b5..20d10895 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ plugily.projects buildbattle - 5.1.0 + 5.1.0-SNAPSHOT1 BuildBattle diff --git a/src/main/java/plugily/projects/buildbattle/arena/ArenaEvents.java b/src/main/java/plugily/projects/buildbattle/arena/ArenaEvents.java index 8319227c..0c0fe9e3 100644 --- a/src/main/java/plugily/projects/buildbattle/arena/ArenaEvents.java +++ b/src/main/java/plugily/projects/buildbattle/arena/ArenaEvents.java @@ -596,11 +596,14 @@ public void onWaterFlowEvent(BlockFromToEvent event) { continue; } for(Plot buildPlot : ((BaseArena) arena).getPlotManager().getPlots()) { + if(buildPlot.getTeleportLocation().getWorld() != toBlock.getWorld()) { + continue; + } if(buildPlot.getCuboid() != null) { if(!buildPlot.getCuboid().isIn(toBlock) && buildPlot.getCuboid().isIn(blockLoc)) { event.setCancelled(true); } - if(!buildPlot.getCuboid().isIn(toBlock)) { + if(!buildPlot.getCuboid().isInWithMarge(toBlock, -1) && buildPlot.getCuboid().isIn(toBlock)) { event.setCancelled(true); } } diff --git a/src/main/java/plugily/projects/buildbattle/commands/arguments/admin/arena/ForcePlayArgument.java b/src/main/java/plugily/projects/buildbattle/commands/arguments/admin/arena/ForcePlayArgument.java index a16cf5f9..8b54c7f7 100644 --- a/src/main/java/plugily/projects/buildbattle/commands/arguments/admin/arena/ForcePlayArgument.java +++ b/src/main/java/plugily/projects/buildbattle/commands/arguments/admin/arena/ForcePlayArgument.java @@ -48,29 +48,33 @@ public ForcePlayArgument(ArgumentsRegistry registry) { @Override public void execute(CommandSender sender, String[] args) { if(args.length == 1) { - //todo translatable new MessageBuilder("&cPlease type arena theme!").prefix().send(sender); return; } BaseArena arena; int themeArgStart = 1; if(!(sender instanceof Player)) { - if(args.length == 2) { - //todo translatable - new MessageBuilder("&cPlease type arena name!").prefix().send(sender); + arena = (BaseArena) registry.getPlugin().getArenaRegistry().getArena(args[1]); + if(args.length == 2 && arena != null) { + BaseArena finalArena = arena; + Bukkit.getOnlinePlayers().forEach(player -> { + registry.getPlugin().getArenaManager().joinAttempt(player, finalArena); + }); + arena.setForceStart(true); return; } - arena = (BaseArena) registry.getPlugin().getArenaRegistry().getArena(args[1]); themeArgStart = 2; } else { arena = (BaseArena) registry.getPlugin().getArenaRegistry().getArena((Player) sender); + if(arena == null) { + arena = (BaseArena) registry.getPlugin().getArenaRegistry().getArena(args[1]); + } } if(arena == null) { new MessageBuilder("COMMANDS_NOT_PLAYING").asKey().send(sender); return; } if(!(arena instanceof BuildArena)) { - //todo translatable new MessageBuilder("&cCan't set theme on this arena type!").prefix().send(sender); return; } @@ -83,8 +87,9 @@ public void execute(CommandSender sender, String[] args) { new MessageBuilder("COMMANDS_THEME_BLACKLISTED").asKey().prefix().send(sender); return; } + BaseArena finalArena1 = arena; Bukkit.getOnlinePlayers().forEach(player -> { - registry.getPlugin().getArenaManager().joinAttempt(player, arena); + registry.getPlugin().getArenaManager().joinAttempt(player, finalArena1); }); arena.setForceStart(true); arena.setTheme(themeName.toString());