From 7eeab85f04fead37a40f9a7a09cc74d2ffc06669 Mon Sep 17 00:00:00 2001 From: FireML <106587317+FireML@users.noreply.github.com> Date: Sat, 1 Apr 2023 11:45:54 +0100 Subject: [PATCH 01/31] Payment for tilling dirt --- .../com/gamingmesh/jobs/listeners/JobsPaymentListener.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java index 8eb06e19..2393b896 100644 --- a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java +++ b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java @@ -488,7 +488,8 @@ public final class JobsPaymentListener implements Listener { return; // A tool should not trigger a BlockPlaceEvent (fixes stripping logs bug #940) - if (CMIMaterial.get(event.getItemInHand().getType()).isTool()) + // Allow this to trigger with a hoe so players can get paid for farmland. + if (CMIMaterial.get(event.getItemInHand().getType()).isTool() && !event.getItemInHand().getType().toString().endsWith("_HOE")) return; Block block = event.getBlock(); From af9c9b3b753d1bccd225e38b59cd211456e9ab45 Mon Sep 17 00:00:00 2001 From: Heliosares Date: Mon, 10 Apr 2023 13:15:21 -0400 Subject: [PATCH 02/31] Fix [#1587] --- src/main/java/com/gamingmesh/jobs/Jobs.java | 14 +++++++++++++- .../jobs/listeners/JobsPaymentListener.java | 4 ++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/Jobs.java b/src/main/java/com/gamingmesh/jobs/Jobs.java index bfcc9c01..427c7b39 100644 --- a/src/main/java/com/gamingmesh/jobs/Jobs.java +++ b/src/main/java/com/gamingmesh/jobs/Jobs.java @@ -1416,15 +1416,27 @@ public final class Jobs extends JavaPlugin { return 9 * level - 158; } - public static void perform(JobsPlayer jPlayer, ActionInfo info, BufferedPayment payment, Job job) { + public static void perform(JobsPlayer jPlayer, ActionInfo info, BufferedPayment payment, Job job, Block block, Entity ent, LivingEntity victim) { double expPayment = payment.get(CurrencyType.EXP); + JobsPrePaymentEvent jobsPrePaymentEvent = new JobsPrePaymentEvent(jPlayer.getPlayer(), noneJob, payment.get(CurrencyType.MONEY), + payment.get(CurrencyType.POINTS), block, ent, victim, info); + Bukkit.getServer().getPluginManager().callEvent(jobsPrePaymentEvent); + // If event is canceled, don't do anything + if (jobsPrePaymentEvent.isCancelled()) + return; + + payment.set(CurrencyType.MONEY, jobsPrePaymentEvent.getAmount()); + payment.set(CurrencyType.POINTS, jobsPrePaymentEvent.getPoints()); + JobsExpGainEvent jobsExpGainEvent = new JobsExpGainEvent(payment.getOfflinePlayer(), job, expPayment); Bukkit.getServer().getPluginManager().callEvent(jobsExpGainEvent); // If event is canceled, don't do anything if (jobsExpGainEvent.isCancelled()) return; + payment.set(CurrencyType.EXP, jobsExpGainEvent.getExp()); + boolean limited = true; for (CurrencyType one : CurrencyType.values()) { if (jPlayer.isUnderLimit(one, payment.get(one))) { diff --git a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java index 8eb06e19..d3642523 100644 --- a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java +++ b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java @@ -447,7 +447,7 @@ public final class JobsPaymentListener implements Listener { if (fp != null) { if (fp.getTime() > System.currentTimeMillis() && (fp.getInfo().getName().equalsIgnoreCase(bInfo.getName()) || fp.getInfo().getNameWithSub().equalsIgnoreCase(bInfo.getNameWithSub()))) { - Jobs.perform(fp.getPlayer(), fp.getInfo(), fp.getPayment(), fp.getJob()); + Jobs.perform(fp.getPlayer(), fp.getInfo(), fp.getPayment(), fp.getJob(), block, null, null); return; } Jobs.FASTPAYMENT.remove(player.getUniqueId()); @@ -1974,7 +1974,7 @@ public final class JobsPaymentListener implements Listener { if (fp.getTime() > System.currentTimeMillis() - 50L && (fp.getInfo().getName().equalsIgnoreCase(bInfo.getName()) || fp.getInfo().getNameWithSub().equalsIgnoreCase(bInfo.getNameWithSub()))) { - Jobs.perform(fp.getPlayer(), fp.getInfo(), fp.getPayment(), fp.getJob()); + Jobs.perform(fp.getPlayer(), fp.getInfo(), fp.getPayment(), fp.getJob(), block, null, null); breakCache.put(CMILocation.toString(block.getLocation(), ":", true, true), uuid); fp.setTime(System.currentTimeMillis() + 45); } From 8bdd49d98829f00d6708fa4ec4a424956d690521 Mon Sep 17 00:00:00 2001 From: Zrips Date: Fri, 21 Apr 2023 13:58:52 +0300 Subject: [PATCH 03/31] Cleanup --- src/main/java/com/gamingmesh/jobs/Jobs.java | 1 - .../jobs/config/BlockProtectionManager.java | 3 +- .../jobs/listeners/JobsListener.java | 847 +++++++++--------- .../jobs/listeners/JobsPayment14Listener.java | 2 - .../jobs/listeners/JobsPaymentListener.java | 5 +- 5 files changed, 426 insertions(+), 432 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/Jobs.java b/src/main/java/com/gamingmesh/jobs/Jobs.java index bfcc9c01..e4bb8d94 100644 --- a/src/main/java/com/gamingmesh/jobs/Jobs.java +++ b/src/main/java/com/gamingmesh/jobs/Jobs.java @@ -116,7 +116,6 @@ import net.Zrips.CMILib.Colors.CMIChatColor; import net.Zrips.CMILib.Container.PageInfo; import net.Zrips.CMILib.Items.CMIMaterial; import net.Zrips.CMILib.Locale.LC; -import net.Zrips.CMILib.Logs.CMIDebug; import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.RawMessages.RawMessage; import net.Zrips.CMILib.Version.Version; diff --git a/src/main/java/com/gamingmesh/jobs/config/BlockProtectionManager.java b/src/main/java/com/gamingmesh/jobs/config/BlockProtectionManager.java index 4d420364..fe56cf8a 100644 --- a/src/main/java/com/gamingmesh/jobs/config/BlockProtectionManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/BlockProtectionManager.java @@ -16,7 +16,6 @@ import com.gamingmesh.jobs.container.DBAction; import net.Zrips.CMILib.Container.CMIBlock; import net.Zrips.CMILib.Container.CMIBlock.Bisect; import net.Zrips.CMILib.Items.CMIMaterial; -import net.Zrips.CMILib.Logs.CMIDebug; public class BlockProtectionManager { @@ -80,7 +79,7 @@ public class BlockProtectionManager { public BlockProtection addP(Location loc, Long time, boolean paid, boolean cache) { - if (time == 0) + if (time == null || time == 0) return null; String v = loc.getBlockX() + ":" + loc.getBlockY() + ":" + loc.getBlockZ(); diff --git a/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java b/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java index 94fbb087..12383444 100644 --- a/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java +++ b/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java @@ -98,78 +98,79 @@ public class JobsListener implements Listener { private final Map interactDelay = new HashMap<>(); public JobsListener(Jobs plugin) { - this.plugin = plugin; + this.plugin = plugin; } private boolean isInteractOk(Player player) { - Long delay = interactDelay.get(player.getUniqueId()); - if (delay == null) { - interactDelay.put(player.getUniqueId(), System.currentTimeMillis()); - return true; - } + Long delay = interactDelay.get(player.getUniqueId()); + if (delay == null) { + interactDelay.put(player.getUniqueId(), System.currentTimeMillis()); + return true; + } - long time = System.currentTimeMillis() - delay; - interactDelay.put(player.getUniqueId(), System.currentTimeMillis()); - return time > 100; + long time = System.currentTimeMillis() - delay; + interactDelay.put(player.getUniqueId(), System.currentTimeMillis()); + return time > 100; } @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) public void onBlockFromToEvent(BlockFromToEvent event) { - if (!Jobs.getGCManager().useBlockProtection) - return; - if (!Jobs.getGCManager().ignoreOreGenerators) - return; - if (!Jobs.getGCManager().canPerformActionInWorld(event.getBlock().getWorld())) - return; - Jobs.getBpManager().remove(event.getToBlock()); + if (!Jobs.getGCManager().useBlockProtection) + return; + if (!Jobs.getGCManager().ignoreOreGenerators) + return; + if (!Jobs.getGCManager().canPerformActionInWorld(event.getBlock().getWorld())) + return; + Jobs.getBpManager().remove(event.getToBlock()); } @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) public void onJoin(PlayerJoinEvent event) { - if (Jobs.getGCManager().isShowNewVersion() && event.getPlayer().hasPermission("jobs.versioncheck")) - Jobs.getVersionCheckManager().VersionCheck(event.getPlayer()); + if (Jobs.getGCManager().isShowNewVersion() && event.getPlayer().hasPermission("jobs.versioncheck")) + Jobs.getVersionCheckManager().VersionCheck(event.getPlayer()); } @EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true) public void onSelection(PlayerInteractEvent event) { - if (event.getClickedBlock() == null || event.getAction() != Action.LEFT_CLICK_BLOCK && event.getAction() != Action.RIGHT_CLICK_BLOCK) - return; + if (event.getClickedBlock() == null || event.getAction() != Action.LEFT_CLICK_BLOCK && event.getAction() != Action.RIGHT_CLICK_BLOCK) + return; - Player player = event.getPlayer(); - if (CMIItemStack.getItemInMainHand(player).getType() != CMIMaterial.get(Jobs.getGCManager().getSelectionTool()).getMaterial()) - return; + Player player = event.getPlayer(); + + if (CMIItemStack.getItemInMainHand(player).getType() != CMIMaterial.get(Jobs.getGCManager().getSelectionTool()).getMaterial()) + return; - if (!Jobs.getGCManager().canPerformActionInWorld(event.getPlayer().getWorld()) || !player.hasPermission("jobs.area.select")) - return; + if (!Jobs.getGCManager().canPerformActionInWorld(event.getPlayer().getWorld()) || !player.hasPermission("jobs.area.select")) + return; - if (player.getGameMode() == GameMode.CREATIVE) - event.setCancelled(true); + if (player.getGameMode() == GameMode.CREATIVE) + event.setCancelled(true); - Location loc = event.getClickedBlock().getLocation(); + Location loc = event.getClickedBlock().getLocation(); - if (event.getAction() == Action.LEFT_CLICK_BLOCK) { - Jobs.getSelectionManager().placeLoc1(player, loc); - player.sendMessage(Jobs.getLanguage().getMessage("command.area.output.selected1", "%x%", loc.getBlockX(), "%y%", loc.getBlockY(), "%z%", loc.getBlockZ())); - event.setCancelled(true); - } else if (event.getAction() == Action.RIGHT_CLICK_BLOCK) { - Jobs.getSelectionManager().placeLoc2(player, loc); - player.sendMessage(Jobs.getLanguage().getMessage("command.area.output.selected2", "%x%", loc.getBlockX(), "%y%", loc.getBlockY(), "%z%", loc.getBlockZ())); - event.setCancelled(true); - } + if (event.getAction() == Action.LEFT_CLICK_BLOCK) { + Jobs.getSelectionManager().placeLoc1(player, loc); + player.sendMessage(Jobs.getLanguage().getMessage("command.area.output.selected1", "%x%", loc.getBlockX(), "%y%", loc.getBlockY(), "%z%", loc.getBlockZ())); + event.setCancelled(true); + } else if (event.getAction() == Action.RIGHT_CLICK_BLOCK) { + Jobs.getSelectionManager().placeLoc2(player, loc); + player.sendMessage(Jobs.getLanguage().getMessage("command.area.output.selected2", "%x%", loc.getBlockX(), "%y%", loc.getBlockY(), "%z%", loc.getBlockZ())); + event.setCancelled(true); + } - if (Jobs.getSelectionManager().hasPlacedBoth(player)) { - plugin.getServer().getPluginManager().callEvent(new JobsAreaSelectionEvent(player, Jobs.getSelectionManager().getSelectionCuboid(player))); - } + if (Jobs.getSelectionManager().hasPlacedBoth(player)) { + plugin.getServer().getPluginManager().callEvent(new JobsAreaSelectionEvent(player, Jobs.getSelectionManager().getSelectionCuboid(player))); + } } @EventHandler(priority = EventPriority.HIGHEST) public void onPlayerJoin(final PlayerJoinEvent event) { - if (!Jobs.getGCManager().MultiServerCompatability()) - Jobs.getPlayerManager().playerJoin(event.getPlayer()); - else { - plugin.getServer().getScheduler().runTaskLater(plugin, () -> Jobs.getPlayerManager().playerJoin(event.getPlayer()), 40L); - } + if (!Jobs.getGCManager().MultiServerCompatability()) + Jobs.getPlayerManager().playerJoin(event.getPlayer()); + else { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> Jobs.getPlayerManager().playerJoin(event.getPlayer()), 40L); + } } // @EventHandler(priority = EventPriority.MONITOR) @@ -186,539 +187,539 @@ public class JobsListener implements Listener { @EventHandler(priority = EventPriority.MONITOR) public void onPlayerQuit(PlayerQuitEvent event) { - Jobs.getPlayerManager().playerQuit(event.getPlayer()); + Jobs.getPlayerManager().playerQuit(event.getPlayer()); } @EventHandler(priority = EventPriority.MONITOR) public void onPlayerWorldChange(PlayerChangedWorldEvent event) { - Jobs.getPermissionHandler().recalculatePermissions(Jobs.getPlayerManager().getJobsPlayer(event.getPlayer())); + Jobs.getPermissionHandler().recalculatePermissions(Jobs.getPlayerManager().getJobsPlayer(event.getPlayer())); } @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) public void onSignInteract(PlayerInteractEvent event) { - if (!Jobs.getGCManager().SignsEnabled || event.getAction() != Action.RIGHT_CLICK_BLOCK) - return; + if (!Jobs.getGCManager().SignsEnabled || event.getAction() != Action.RIGHT_CLICK_BLOCK) + return; - Block block = event.getClickedBlock(); - if (block == null || !(block.getState() instanceof Sign)) - return; + Block block = event.getClickedBlock(); + if (block == null || !(block.getState() instanceof Sign)) + return; - Player player = event.getPlayer(); - if (!isInteractOk(player)) - return; + Player player = event.getPlayer(); + if (!isInteractOk(player)) + return; - Sign sign = (Sign) block.getState(); + Sign sign = (Sign) block.getState(); - if (!CMIChatColor.stripColor(plugin.getComplement().getLine(sign, 0)).equalsIgnoreCase( - CMIChatColor.stripColor(Jobs.getLanguage().getMessage("signs.topline")))) - return; + if (!CMIChatColor.stripColor(plugin.getComplement().getLine(sign, 0)).equalsIgnoreCase( + CMIChatColor.stripColor(Jobs.getLanguage().getMessage("signs.topline")))) + return; - String command = CMIChatColor.stripColor(plugin.getComplement().getLine(sign, 1)); - for (String key : Jobs.getLanguageManager().signKeys) { - if (command.equalsIgnoreCase(CMIChatColor.stripColor(Jobs.getLanguage().getMessage("signs.secondline." + key)))) { - command = key; - break; - } - } + String command = CMIChatColor.stripColor(plugin.getComplement().getLine(sign, 1)); + for (String key : Jobs.getLanguageManager().signKeys) { + if (command.equalsIgnoreCase(CMIChatColor.stripColor(Jobs.getLanguage().getMessage("signs.secondline." + key)))) { + command = key; + break; + } + } - player.performCommand("jobs " + command + " " + CMIChatColor.stripColor(plugin.getComplement().getLine(sign, 2)) - + " " + CMIChatColor.stripColor(plugin.getComplement() - .getLine(sign, 3)).replace(" ", "")); // Replace trailing spaces at 3rd line to parse command + player.performCommand("jobs " + command + " " + CMIChatColor.stripColor(plugin.getComplement().getLine(sign, 2)) + + " " + CMIChatColor.stripColor(plugin.getComplement() + .getLine(sign, 3)).replace(" ", "")); // Replace trailing spaces at 3rd line to parse command } @EventHandler(priority = EventPriority.LOW, ignoreCancelled = true) public void onSignDestroy(BlockBreakEvent event) { - if (!Jobs.getGCManager().SignsEnabled) - return; + if (!Jobs.getGCManager().SignsEnabled) + return; - Block block = event.getBlock(); - if (!(block.getState() instanceof Sign)) - return; + Block block = event.getBlock(); + if (!(block.getState() instanceof Sign)) + return; - Player player = event.getPlayer(); - if (plugin.getComplement().getLine((Sign) block.getState(), 0).contains(Jobs.getLanguage().getMessage("signs.topline")) - && !player.hasPermission("jobs.command.signs")) { - event.setCancelled(true); - player.sendMessage(Jobs.getLanguage().getMessage("signs.cantdestroy")); - return; - } + Player player = event.getPlayer(); + if (plugin.getComplement().getLine((Sign) block.getState(), 0).contains(Jobs.getLanguage().getMessage("signs.topline")) + && !player.hasPermission("jobs.command.signs")) { + event.setCancelled(true); + player.sendMessage(Jobs.getLanguage().getMessage("signs.cantdestroy")); + return; + } - if (Jobs.getSignUtil().getSign(block.getLocation()) == null) - return; + if (Jobs.getSignUtil().getSign(block.getLocation()) == null) + return; - if (!player.hasPermission("jobs.command.signs")) { - event.setCancelled(true); - player.sendMessage(Jobs.getLanguage().getMessage("signs.cantdestroy")); - return; - } + if (!player.hasPermission("jobs.command.signs")) { + event.setCancelled(true); + player.sendMessage(Jobs.getLanguage().getMessage("signs.cantdestroy")); + return; + } - if (Jobs.getSignUtil().removeSign(block.getLocation())) - Jobs.getSignUtil().saveSigns(); + if (Jobs.getSignUtil().removeSign(block.getLocation())) + Jobs.getSignUtil().saveSigns(); } @EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true) public void onSignTopListCreate(SignChangeEvent event) { - if (!Jobs.getGCManager().SignsEnabled) - return; + if (!Jobs.getGCManager().SignsEnabled) + return; - Block block = event.getBlock(); - if (!(block.getState() instanceof Sign)) - return; + Block block = event.getBlock(); + if (!(block.getState() instanceof Sign)) + return; - if (!CMIChatColor.stripColor(plugin.getComplement().getLine(event, 0)).equalsIgnoreCase("[Jobs]")) - return; + if (!CMIChatColor.stripColor(plugin.getComplement().getLine(event, 0)).equalsIgnoreCase("[Jobs]")) + return; - final SignTopType type = SignTopType.getType(CMIChatColor.stripColor(plugin.getComplement().getLine(event, 1))); - if (type == null) - return; + final SignTopType type = SignTopType.getType(CMIChatColor.stripColor(plugin.getComplement().getLine(event, 1))); + if (type == null) + return; - Player player = event.getPlayer(); - if (!player.hasPermission("jobs.command.signs")) { - event.setCancelled(true); - player.sendMessage(Jobs.getLanguage().getMessage("signs.cantcreate")); - return; - } + Player player = event.getPlayer(); + if (!player.hasPermission("jobs.command.signs")) { + event.setCancelled(true); + player.sendMessage(Jobs.getLanguage().getMessage("signs.cantcreate")); + return; + } - final Job job = Jobs.getJob(CMIChatColor.stripColor(plugin.getComplement().getLine(event, 2)).toLowerCase()); - if (type == SignTopType.toplist && job == null) { - player.sendMessage(Jobs.getLanguage().getMessage("command.top.error.nojob")); - return; - } + final Job job = Jobs.getJob(CMIChatColor.stripColor(plugin.getComplement().getLine(event, 2)).toLowerCase()); + if (type == SignTopType.toplist && job == null) { + player.sendMessage(Jobs.getLanguage().getMessage("command.top.error.nojob")); + return; + } - boolean special = false; - String numberString = CMIChatColor.stripColor(plugin.getComplement().getLine(event, 3)).toLowerCase(); - if (numberString.contains("s")) { - numberString = numberString.replace("s", ""); - special = true; - } + boolean special = false; + String numberString = CMIChatColor.stripColor(plugin.getComplement().getLine(event, 3)).toLowerCase(); + if (numberString.contains("s")) { + numberString = numberString.replace("s", ""); + special = true; + } - int number = 0; - try { - number = Integer.parseInt(numberString); - } catch (NumberFormatException e) { - CMIMessages.sendMessage(player, LC.info_UseInteger); - return; - } + int number = 0; + try { + number = Integer.parseInt(numberString); + } catch (NumberFormatException e) { + CMIMessages.sendMessage(player, LC.info_UseInteger); + return; + } - jobsSign signInfo = new jobsSign(); + jobsSign signInfo = new jobsSign(); - signInfo.setLoc(block.getLocation()); - signInfo.setNumber(number); - if (job != null) - signInfo.setJobName(job.getName()); - signInfo.setType(type); - signInfo.setSpecial(special); + signInfo.setLoc(block.getLocation()); + signInfo.setNumber(number); + if (job != null) + signInfo.setJobName(job.getName()); + signInfo.setType(type); + signInfo.setSpecial(special); - final SignUtil signUtil = Jobs.getSignUtil(); - signUtil.addSign(signInfo); - signUtil.saveSigns(); + final SignUtil signUtil = Jobs.getSignUtil(); + signUtil.addSign(signInfo); + signUtil.saveSigns(); - event.setCancelled(true); + event.setCancelled(true); - plugin.getServer().getScheduler().runTaskLater(plugin, () -> signUtil.signUpdate(job, type), 1L); + plugin.getServer().getScheduler().runTaskLater(plugin, () -> signUtil.signUpdate(job, type), 1L); } @EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true) public void onSignChange(SignChangeEvent event) { - if (!Jobs.getGCManager().SignsEnabled) - return; + if (!Jobs.getGCManager().SignsEnabled) + return; - String line1 = CMIChatColor.stripColor(plugin.getComplement().getLine(event, 1)); + String line1 = CMIChatColor.stripColor(plugin.getComplement().getLine(event, 1)); - if (CMIChatColor.stripColor(plugin.getComplement().getLine(event, 0)) - .equalsIgnoreCase(CMIChatColor.stripColor(Jobs.getLanguage().getMessage("signs.topline"))) && !line1.equalsIgnoreCase("toplist")) - event.setLine(0, convert(Jobs.getLanguage().getMessage("signs.topline"))); - else - return; + if (CMIChatColor.stripColor(plugin.getComplement().getLine(event, 0)) + .equalsIgnoreCase(CMIChatColor.stripColor(Jobs.getLanguage().getMessage("signs.topline"))) && !line1.equalsIgnoreCase("toplist")) + event.setLine(0, convert(Jobs.getLanguage().getMessage("signs.topline"))); + else + return; - if (!event.getPlayer().hasPermission("jobs.command.signs")) { - event.setCancelled(true); - event.getPlayer().sendMessage(Jobs.getLanguage().getMessage("signs.cantcreate")); - return; - } + if (!event.getPlayer().hasPermission("jobs.command.signs")) { + event.setCancelled(true); + event.getPlayer().sendMessage(Jobs.getLanguage().getMessage("signs.cantcreate")); + return; + } - for (String key : Jobs.getLanguageManager().signKeys) { - String secondLine = Jobs.getLanguage().getMessage("signs.secondline." + key); + for (String key : Jobs.getLanguageManager().signKeys) { + String secondLine = Jobs.getLanguage().getMessage("signs.secondline." + key); - if (line1.equalsIgnoreCase(CMIChatColor.stripColor(secondLine))) { - event.setLine(1, convert(secondLine)); - break; - } - } + if (line1.equalsIgnoreCase(CMIChatColor.stripColor(secondLine))) { + event.setLine(1, convert(secondLine)); + break; + } + } - Job job = Jobs.getJob(CMIChatColor.stripColor(plugin.getComplement().getLine(event, 2))); - if (job == null) - return; + Job job = Jobs.getJob(CMIChatColor.stripColor(plugin.getComplement().getLine(event, 2))); + if (job == null) + return; - String color = Jobs.getGCManager().SignsColorizeJobName ? job.getChatColor().toString() : ""; - event.setLine(2, convert(color + job.getDisplayName())); + String color = Jobs.getGCManager().SignsColorizeJobName ? job.getChatColor().toString() : ""; + event.setLine(2, convert(color + job.getDisplayName())); } private final Pattern pattern = Pattern.compile("&([0-9a-fk-or])"); private String convert(String line) { - return pattern.matcher(CMIChatColor.translate(line)).replaceAll("\u00a7$1"); + return pattern.matcher(CMIChatColor.translate(line)).replaceAll("\u00a7$1"); } @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) public void onWorldLoad(WorldLoadEvent event) { - PluginManager pm = plugin.getServer().getPluginManager(); - String name = event.getWorld().getName().toLowerCase(); - if (pm.getPermission("jobs.world." + name) == null && !PermissionHandler.worldsRegistered.contains(name)) { - pm.addPermission(new Permission("jobs.world." + name, PermissionDefault.TRUE)); - PermissionHandler.worldsRegistered.add(name); - } + PluginManager pm = plugin.getServer().getPluginManager(); + String name = event.getWorld().getName().toLowerCase(); + if (pm.getPermission("jobs.world." + name) == null && !PermissionHandler.worldsRegistered.contains(name)) { + pm.addPermission(new Permission("jobs.world." + name, PermissionDefault.TRUE)); + PermissionHandler.worldsRegistered.add(name); + } } @EventHandler(priority = EventPriority.LOW, ignoreCancelled = true) public void onCropGrown(final BlockGrowEvent event) { - if (Jobs.getGCManager().canPerformActionInWorld(event.getBlock().getWorld())) { - plugin.getServer().getScheduler().runTaskLater(plugin, () -> Jobs.getBpManager().remove(event.getBlock()), 1L); - } + if (Jobs.getGCManager().canPerformActionInWorld(event.getBlock().getWorld())) { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> Jobs.getBpManager().remove(event.getBlock()), 1L); + } } @EventHandler(priority = EventPriority.LOW, ignoreCancelled = true) public void onTreeGrown(final StructureGrowEvent event) { - if (!event.getBlocks().isEmpty() && Jobs.getGCManager().canPerformActionInWorld(event.getBlocks().get(0).getWorld())) { - plugin.getServer().getScheduler().runTaskLater(plugin, () -> event.getBlocks().forEach(blockState -> Jobs.getBpManager().remove(blockState.getBlock())), 1L); - } + if (!event.getBlocks().isEmpty() && Jobs.getGCManager().canPerformActionInWorld(event.getBlocks().get(0).getWorld())) { + plugin.getServer().getScheduler().runTaskLater(plugin, () -> event.getBlocks().forEach(blockState -> Jobs.getBpManager().remove(blockState.getBlock())), 1L); + } } private static boolean usingLimitedItem(ItemStack iih, JobsPlayer jPlayer) { - CMINBT nbt = new CMINBT(iih); - Integer i = nbt.getInt("JobsLimited"); + CMINBT nbt = new CMINBT(iih); + Integer i = nbt.getInt("JobsLimited"); - if (i == null) - return false; + if (i == null) + return false; - Job job = Jobs.getJob(i); - if (job == null) - return false; + Job job = Jobs.getJob(i); + if (job == null) + return false; - JobProgression prog = jPlayer.getJobProgression(job); - if (prog == null) - return false; + JobProgression prog = jPlayer.getJobProgression(job); + if (prog == null) + return false; - String node = nbt.getString("JobsLimitedNode"); - if (node == null) - return false; + String node = nbt.getString("JobsLimitedNode"); + if (node == null) + return false; - for (JobLimitedItems oneItem : job.getLimitedItems().values()) { - if (prog.getLevel() >= oneItem.getLevel() || !oneItem.getNode().equalsIgnoreCase(node)) - continue; + for (JobLimitedItems oneItem : job.getLimitedItems().values()) { + if (prog.getLevel() >= oneItem.getLevel() || !oneItem.getNode().equalsIgnoreCase(node)) + continue; - CMIActionBar.send(jPlayer.getPlayer(), Jobs.getLanguage().getMessage("limitedItem.error.levelup", "[jobname]", job.getDisplayName())); - return true; - } + CMIActionBar.send(jPlayer.getPlayer(), Jobs.getLanguage().getMessage("limitedItem.error.levelup", "[jobname]", job.getDisplayName())); + return true; + } - return false; + return false; } @EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true) public void onLimitedItemInteract(PlayerInteractEvent event) { - if (!Jobs.hasLimitedItems()) { - return; - } + if (!Jobs.hasLimitedItems()) { + return; + } - Player player = event.getPlayer(); - ItemStack iih = null; - try { - if (Version.isCurrentHigher(Version.v1_8_R3) && event.getHand() != EquipmentSlot.HAND) { - iih = CMIItemStack.getItemInOffHand(player); - } else { - iih = CMIItemStack.getItemInMainHand(player); - } - } catch (Exception e) { - iih = CMIItemStack.getItemInMainHand(player); - } + Player player = event.getPlayer(); + ItemStack iih = null; + try { + if (Version.isCurrentHigher(Version.v1_8_R3) && event.getHand() != EquipmentSlot.HAND) { + iih = CMIItemStack.getItemInOffHand(player); + } else { + iih = CMIItemStack.getItemInMainHand(player); + } + } catch (Exception e) { + iih = CMIItemStack.getItemInMainHand(player); + } - if (iih == null || iih.getType() == Material.AIR) - return; + if (iih == null || iih.getType() == Material.AIR) + return; - if (event.getClickedBlock() != null && !Jobs.getGCManager().canPerformActionInWorld(event.getClickedBlock().getWorld())) - return; + if (event.getClickedBlock() != null && !Jobs.getGCManager().canPerformActionInWorld(event.getClickedBlock().getWorld())) + return; - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(player); - if (jPlayer == null) - return; + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(player); + if (jPlayer == null) + return; - Map enchants = new HashMap<>(iih.getEnchantments()); - if (enchants.isEmpty()) { - return; - } + Map enchants = new HashMap<>(iih.getEnchantments()); + if (enchants.isEmpty()) { + return; + } - if (usingLimitedItem(iih, jPlayer)) { - event.setCancelled(true); - } + if (usingLimitedItem(iih, jPlayer)) { + event.setCancelled(true); + } - String name = null; - List lore = new ArrayList<>(); + String name = null; + List lore = new ArrayList<>(); - if (iih.hasItemMeta()) { - ItemMeta meta = iih.getItemMeta(); - if (meta.hasDisplayName()) - name = meta.getDisplayName(); - if (meta.hasLore()) - lore = meta.getLore(); - } + if (iih.hasItemMeta()) { + ItemMeta meta = iih.getItemMeta(); + if (meta.hasDisplayName()) + name = meta.getDisplayName(); + if (meta.hasLore()) + lore = meta.getLore(); + } - String meinOk = null; - String itemNode = null; - CMIMaterial mat = CMIMaterial.get(iih); + String meinOk = null; + String itemNode = null; + CMIMaterial mat = CMIMaterial.get(iih); - Integer jobId = null; - mein: for (JobProgression one : jPlayer.getJobProgression()) { - for (JobLimitedItems oneItem : one.getJob().getLimitedItems().values()) { - if (one.getLevel() >= oneItem.getLevel() || !isThisItem(oneItem, mat, name, lore, enchants)) - continue; - jobId = one.getJob().getId(); - meinOk = one.getJob().getDisplayName(); - itemNode = oneItem.getNode(); - break mein; - } - } + Integer jobId = null; + mein: for (JobProgression one : jPlayer.getJobProgression()) { + for (JobLimitedItems oneItem : one.getJob().getLimitedItems().values()) { + if (one.getLevel() >= oneItem.getLevel() || !isThisItem(oneItem, mat, name, lore, enchants)) + continue; + jobId = one.getJob().getId(); + meinOk = one.getJob().getDisplayName(); + itemNode = oneItem.getNode(); + break mein; + } + } - if (meinOk != null) { - event.setCancelled(true); - CMIActionBar.send(player, Jobs.getLanguage().getMessage("limitedItem.error.levelup", "[jobname]", meinOk)); + if (meinOk != null) { + event.setCancelled(true); + CMIActionBar.send(player, Jobs.getLanguage().getMessage("limitedItem.error.levelup", "[jobname]", meinOk)); - CMINBT nbt = new CMINBT(iih); - nbt.setInt("JobsLimited", jobId); - iih = (ItemStack) nbt.setString("JobsLimitedNode", itemNode); - try { - if (Version.isCurrentHigher(Version.v1_8_R3) && event.getHand() != EquipmentSlot.HAND) { - CMIItemStack.setItemInOffHand(player, iih); - } else { - CMIItemStack.setItemInMainHand(player, iih); - } - } catch (Exception e) { - CMIItemStack.setItemInMainHand(player, iih); - } - } + CMINBT nbt = new CMINBT(iih); + nbt.setInt("JobsLimited", jobId); + iih = (ItemStack) nbt.setString("JobsLimitedNode", itemNode); + try { + if (Version.isCurrentHigher(Version.v1_8_R3) && event.getHand() != EquipmentSlot.HAND) { + CMIItemStack.setItemInOffHand(player, iih); + } else { + CMIItemStack.setItemInMainHand(player, iih); + } + } catch (Exception e) { + CMIItemStack.setItemInMainHand(player, iih); + } + } } private static boolean isThisItem(JobLimitedItems oneItem, CMIMaterial mat, String name, List lore, Map enchants) { - if (oneItem.getType() != mat) - return false; + if (oneItem.getType() != mat) + return false; - if (oneItem.getName() != null && !CMIChatColor.translate(oneItem.getName()).equalsIgnoreCase(name)) { - return false; - } + if (oneItem.getName() != null && !CMIChatColor.translate(oneItem.getName()).equalsIgnoreCase(name)) { + return false; + } - for (String onelore : oneItem.getLore()) { - if (!lore.contains(onelore)) { - return false; - } - } + for (String onelore : oneItem.getLore()) { + if (!lore.contains(onelore)) { + return false; + } + } - for (Entry oneE : enchants.entrySet()) { - Integer value = oneItem.getEnchants().get(oneE.getKey()); + for (Entry oneE : enchants.entrySet()) { + Integer value = oneItem.getEnchants().get(oneE.getKey()); - if (value != null && value <= oneE.getValue()) { - return true; - } - } + if (value != null && value <= oneE.getValue()) { + return true; + } + } - return false; + return false; } @EventHandler(ignoreCancelled = true) public void onChunkChangeMove(PlayerMoveEvent event) { - if (!event.getPlayer().isOnline() || !Jobs.getGCManager().canPerformActionInWorld(event.getTo().getWorld())) - return; + if (!event.getPlayer().isOnline() || !Jobs.getGCManager().canPerformActionInWorld(event.getTo().getWorld())) + return; - Chunk from = event.getFrom().getChunk(); - Chunk to = event.getTo().getChunk(); - if (from != to) { - plugin.getServer().getPluginManager().callEvent(new JobsChunkChangeEvent(event.getPlayer(), from, to)); - } + Chunk from = event.getFrom().getChunk(); + Chunk to = event.getTo().getChunk(); + if (from != to) { + plugin.getServer().getPluginManager().callEvent(new JobsChunkChangeEvent(event.getPlayer(), from, to)); + } } @EventHandler(ignoreCancelled = true) public void onInventoryClick(InventoryClickEvent event) { - boolean shift = false, numberkey = false; + boolean shift = false, numberkey = false; - if (event.getClick() == ClickType.SHIFT_LEFT || event.getClick() == ClickType.SHIFT_RIGHT) - shift = true; + if (event.getClick() == ClickType.SHIFT_LEFT || event.getClick() == ClickType.SHIFT_RIGHT) + shift = true; - if (event.getClick() == ClickType.NUMBER_KEY) - numberkey = true; + if (event.getClick() == ClickType.NUMBER_KEY) + numberkey = true; - SlotType slotType = event.getSlotType(); + SlotType slotType = event.getSlotType(); - if ((slotType != SlotType.ARMOR || slotType != SlotType.QUICKBAR) && event.getInventory().getType() != InventoryType.CRAFTING) - return; + if ((slotType != SlotType.ARMOR || slotType != SlotType.QUICKBAR) && event.getInventory().getType() != InventoryType.CRAFTING) + return; - if (!(event.getWhoClicked() instanceof Player) || event.getCurrentItem() == null) - return; + if (!(event.getWhoClicked() instanceof Player) || event.getCurrentItem() == null) + return; - ArmorTypes newArmorType = ArmorTypes.matchType(shift ? event.getCurrentItem() : event.getCursor()); - if (!shift && newArmorType != null && event.getRawSlot() != newArmorType.getSlot()) - return; + ArmorTypes newArmorType = ArmorTypes.matchType(shift ? event.getCurrentItem() : event.getCursor()); + if (!shift && newArmorType != null && event.getRawSlot() != newArmorType.getSlot()) + return; - if (shift) { - newArmorType = ArmorTypes.matchType(event.getCurrentItem()); - if (newArmorType == null) - return; + if (shift) { + newArmorType = ArmorTypes.matchType(event.getCurrentItem()); + if (newArmorType == null) + return; - boolean equipping = true; - if (event.getRawSlot() == newArmorType.getSlot()) - equipping = false; + boolean equipping = true; + if (event.getRawSlot() == newArmorType.getSlot()) + equipping = false; - Player player = (Player) event.getWhoClicked(); - PlayerInventory inv = player.getInventory(); + Player player = (Player) event.getWhoClicked(); + PlayerInventory inv = player.getInventory(); - if (newArmorType == ArmorTypes.HELMET && - (equipping ? inv.getHelmet() == null : inv.getHelmet() != null) || - (newArmorType == ArmorTypes.CHESTPLATE || newArmorType == ArmorTypes.ELYTRA) && - (equipping ? inv.getChestplate() == null : inv.getChestplate() != null) || - newArmorType == ArmorTypes.LEGGINGS && - (equipping ? inv.getLeggings() == null : inv.getLeggings() != null) || - newArmorType == ArmorTypes.BOOTS && - (equipping ? inv.getBoots() == null : inv.getBoots() != null)) { - JobsArmorChangeEvent armorEquipEvent = new JobsArmorChangeEvent(player, EquipMethod.SHIFT_CLICK, newArmorType, equipping ? null : event - .getCurrentItem(), equipping ? event.getCurrentItem() : null); - plugin.getServer().getPluginManager().callEvent(armorEquipEvent); - if (armorEquipEvent.isCancelled()) { - event.setCancelled(true); - } - } - } else { - ItemStack newArmorPiece = event.getCursor(); - ItemStack oldArmorPiece = event.getCurrentItem(); - if (numberkey) { - org.bukkit.inventory.Inventory clicked = Version.isCurrentHigher(Version.v1_8_R1) ? event.getInventory() : event.getClickedInventory(); - if (clicked != null && clicked.getType() == InventoryType.PLAYER) { - ItemStack hotbarItem = clicked.getItem(event.getHotbarButton()); - if (hotbarItem != null) { - newArmorType = ArmorTypes.matchType(hotbarItem); - newArmorPiece = hotbarItem; - oldArmorPiece = clicked.getItem(event.getSlot()); - } else - newArmorType = ArmorTypes.matchType(oldArmorPiece != null && oldArmorPiece.getType() != Material.AIR ? oldArmorPiece : event.getCursor()); - } - } else - newArmorType = ArmorTypes.matchType(oldArmorPiece != null && oldArmorPiece.getType() != Material.AIR ? oldArmorPiece : event.getCursor()); + if (newArmorType == ArmorTypes.HELMET && + (equipping ? inv.getHelmet() == null : inv.getHelmet() != null) || + (newArmorType == ArmorTypes.CHESTPLATE || newArmorType == ArmorTypes.ELYTRA) && + (equipping ? inv.getChestplate() == null : inv.getChestplate() != null) || + newArmorType == ArmorTypes.LEGGINGS && + (equipping ? inv.getLeggings() == null : inv.getLeggings() != null) || + newArmorType == ArmorTypes.BOOTS && + (equipping ? inv.getBoots() == null : inv.getBoots() != null)) { + JobsArmorChangeEvent armorEquipEvent = new JobsArmorChangeEvent(player, EquipMethod.SHIFT_CLICK, newArmorType, equipping ? null : event + .getCurrentItem(), equipping ? event.getCurrentItem() : null); + plugin.getServer().getPluginManager().callEvent(armorEquipEvent); + if (armorEquipEvent.isCancelled()) { + event.setCancelled(true); + } + } + } else { + ItemStack newArmorPiece = event.getCursor(); + ItemStack oldArmorPiece = event.getCurrentItem(); + if (numberkey) { + org.bukkit.inventory.Inventory clicked = Version.isCurrentHigher(Version.v1_8_R1) ? event.getInventory() : event.getClickedInventory(); + if (clicked != null && clicked.getType() == InventoryType.PLAYER) { + ItemStack hotbarItem = clicked.getItem(event.getHotbarButton()); + if (hotbarItem != null) { + newArmorType = ArmorTypes.matchType(hotbarItem); + newArmorPiece = hotbarItem; + oldArmorPiece = clicked.getItem(event.getSlot()); + } else + newArmorType = ArmorTypes.matchType(oldArmorPiece != null && oldArmorPiece.getType() != Material.AIR ? oldArmorPiece : event.getCursor()); + } + } else + newArmorType = ArmorTypes.matchType(oldArmorPiece != null && oldArmorPiece.getType() != Material.AIR ? oldArmorPiece : event.getCursor()); - if (newArmorType != null && event.getRawSlot() == newArmorType.getSlot()) { - EquipMethod method = EquipMethod.DRAG; - if (event.getAction() == InventoryAction.HOTBAR_SWAP || numberkey) - method = EquipMethod.HOTBAR_SWAP; - JobsArmorChangeEvent armorEquipEvent = new JobsArmorChangeEvent((Player) event.getWhoClicked(), method, newArmorType, oldArmorPiece, newArmorPiece); - plugin.getServer().getPluginManager().callEvent(armorEquipEvent); - if (armorEquipEvent.isCancelled()) - event.setCancelled(true); - } - } + if (newArmorType != null && event.getRawSlot() == newArmorType.getSlot()) { + EquipMethod method = EquipMethod.DRAG; + if (event.getAction() == InventoryAction.HOTBAR_SWAP || numberkey) + method = EquipMethod.HOTBAR_SWAP; + JobsArmorChangeEvent armorEquipEvent = new JobsArmorChangeEvent((Player) event.getWhoClicked(), method, newArmorType, oldArmorPiece, newArmorPiece); + plugin.getServer().getPluginManager().callEvent(armorEquipEvent); + if (armorEquipEvent.isCancelled()) + event.setCancelled(true); + } + } } @EventHandler public void playerInteractEvent(PlayerInteractEvent event) { - if (event.getAction() == Action.PHYSICAL) - return; + if (event.getAction() == Action.PHYSICAL) + return; - if (event.getAction() != Action.RIGHT_CLICK_AIR && event.getAction() != Action.RIGHT_CLICK_BLOCK) - return; + if (event.getAction() != Action.RIGHT_CLICK_AIR && event.getAction() != Action.RIGHT_CLICK_BLOCK) + return; - ArmorTypes newArmorType = ArmorTypes.matchType(event.getItem()); - if (newArmorType == null) - return; + ArmorTypes newArmorType = ArmorTypes.matchType(event.getItem()); + if (newArmorType == null) + return; - PlayerInventory inv = event.getPlayer().getInventory(); + PlayerInventory inv = event.getPlayer().getInventory(); - if (newArmorType == ArmorTypes.HELMET && - inv.getHelmet() == null || - (newArmorType == ArmorTypes.CHESTPLATE || newArmorType == ArmorTypes.ELYTRA) && - inv.getChestplate() == null || - newArmorType == ArmorTypes.LEGGINGS && - inv.getLeggings() == null || - newArmorType == ArmorTypes.BOOTS && - inv.getBoots() == null) { - JobsArmorChangeEvent armorEquipEvent = new JobsArmorChangeEvent(event.getPlayer(), EquipMethod.HOTBAR, ArmorTypes.matchType(event.getItem()), null, event - .getItem()); - plugin.getServer().getPluginManager().callEvent(armorEquipEvent); - if (armorEquipEvent.isCancelled()) { - event.setCancelled(true); - event.getPlayer().updateInventory(); - } - } + if (newArmorType == ArmorTypes.HELMET && + inv.getHelmet() == null || + (newArmorType == ArmorTypes.CHESTPLATE || newArmorType == ArmorTypes.ELYTRA) && + inv.getChestplate() == null || + newArmorType == ArmorTypes.LEGGINGS && + inv.getLeggings() == null || + newArmorType == ArmorTypes.BOOTS && + inv.getBoots() == null) { + JobsArmorChangeEvent armorEquipEvent = new JobsArmorChangeEvent(event.getPlayer(), EquipMethod.HOTBAR, ArmorTypes.matchType(event.getItem()), null, event + .getItem()); + plugin.getServer().getPluginManager().callEvent(armorEquipEvent); + if (armorEquipEvent.isCancelled()) { + event.setCancelled(true); + event.getPlayer().updateInventory(); + } + } } @EventHandler(ignoreCancelled = true) public void dispenserFireEvent(BlockDispenseEvent event) { - ItemStack item = event.getItem(); - ArmorTypes type = ArmorTypes.matchType(item); - if (type == null) - return; + ItemStack item = event.getItem(); + ArmorTypes type = ArmorTypes.matchType(item); + if (type == null) + return; - Location loc = event.getBlock().getLocation(); - for (Player p : loc.getWorld().getPlayers()) { - Location ploc = p.getLocation(); - if (loc.getBlockY() - ploc.getBlockY() >= -1 && loc.getBlockY() - ploc.getBlockY() <= 1) { + Location loc = event.getBlock().getLocation(); + for (Player p : loc.getWorld().getPlayers()) { + Location ploc = p.getLocation(); + if (loc.getBlockY() - ploc.getBlockY() >= -1 && loc.getBlockY() - ploc.getBlockY() <= 1) { - if (p.getInventory().getHelmet() == null && type == ArmorTypes.HELMET || - p.getInventory().getChestplate() == null && (type == ArmorTypes.CHESTPLATE || type == ArmorTypes.ELYTRA) || - p.getInventory().getLeggings() == null && type == ArmorTypes.LEGGINGS || - p.getInventory().getBoots() == null && type == ArmorTypes.BOOTS) { + if (p.getInventory().getHelmet() == null && type == ArmorTypes.HELMET || + p.getInventory().getChestplate() == null && (type == ArmorTypes.CHESTPLATE || type == ArmorTypes.ELYTRA) || + p.getInventory().getLeggings() == null && type == ArmorTypes.LEGGINGS || + p.getInventory().getBoots() == null && type == ArmorTypes.BOOTS) { - if (!(event.getBlock().getState() instanceof Dispenser)) - continue; + if (!(event.getBlock().getState() instanceof Dispenser)) + continue; - Dispenser dispenser = (Dispenser) event.getBlock().getState(); - BlockFace directionFacing = null; - if (Version.isCurrentEqualOrLower(Version.v1_13_R2)) { - org.bukkit.material.Dispenser dis = (org.bukkit.material.Dispenser) dispenser.getData(); - directionFacing = dis.getFacing(); - } else { - org.bukkit.block.data.type.Dispenser dis = (org.bukkit.block.data.type.Dispenser) dispenser.getBlockData(); - directionFacing = dis.getFacing(); - } + Dispenser dispenser = (Dispenser) event.getBlock().getState(); + BlockFace directionFacing = null; + if (Version.isCurrentEqualOrLower(Version.v1_13_R2)) { + org.bukkit.material.Dispenser dis = (org.bukkit.material.Dispenser) dispenser.getData(); + directionFacing = dis.getFacing(); + } else { + org.bukkit.block.data.type.Dispenser dis = (org.bukkit.block.data.type.Dispenser) dispenser.getBlockData(); + directionFacing = dis.getFacing(); + } - if (directionFacing == BlockFace.EAST && - ploc.getBlockX() != loc.getBlockX() && - ploc.getX() <= loc.getX() + 2.3 && - ploc.getX() >= loc.getX() || - directionFacing == BlockFace.WEST && - ploc.getX() >= loc.getX() - 1.3 && - ploc.getX() <= loc.getX() || - directionFacing == BlockFace.SOUTH && - ploc.getBlockZ() != loc.getBlockZ() && - ploc.getZ() <= loc.getZ() + 2.3 && - ploc.getZ() >= loc.getZ() || - directionFacing == BlockFace.NORTH && - ploc.getZ() >= loc.getZ() - 1.3 && - ploc.getZ() <= loc.getZ()) { + if (directionFacing == BlockFace.EAST && + ploc.getBlockX() != loc.getBlockX() && + ploc.getX() <= loc.getX() + 2.3 && + ploc.getX() >= loc.getX() || + directionFacing == BlockFace.WEST && + ploc.getX() >= loc.getX() - 1.3 && + ploc.getX() <= loc.getX() || + directionFacing == BlockFace.SOUTH && + ploc.getBlockZ() != loc.getBlockZ() && + ploc.getZ() <= loc.getZ() + 2.3 && + ploc.getZ() >= loc.getZ() || + directionFacing == BlockFace.NORTH && + ploc.getZ() >= loc.getZ() - 1.3 && + ploc.getZ() <= loc.getZ()) { - JobsArmorChangeEvent armorEquipEvent = new JobsArmorChangeEvent(p, EquipMethod.DISPENSER, type, null, item); - plugin.getServer().getPluginManager().callEvent(armorEquipEvent); - if (armorEquipEvent.isCancelled()) { - event.setCancelled(true); - return; - } - } - } - } - } + JobsArmorChangeEvent armorEquipEvent = new JobsArmorChangeEvent(p, EquipMethod.DISPENSER, type, null, item); + plugin.getServer().getPluginManager().callEvent(armorEquipEvent); + if (armorEquipEvent.isCancelled()) { + event.setCancelled(true); + return; + } + } + } + } + } } @EventHandler public void jobsArmorChangeEvent(JobsArmorChangeEvent event) { - Jobs.getPlayerManager().resetItemBonusCache(event.getPlayer().getUniqueId()); + Jobs.getPlayerManager().resetItemBonusCache(event.getPlayer().getUniqueId()); } @EventHandler public void playerItemHeldEvent(PlayerItemHeldEvent event) { - Jobs.getPlayerManager().resetItemBonusCache(event.getPlayer().getUniqueId()); + Jobs.getPlayerManager().resetItemBonusCache(event.getPlayer().getUniqueId()); } @EventHandler public void playerItemBreakEvent(PlayerItemBreakEvent event) { - Jobs.getPlayerManager().resetItemBonusCache(event.getPlayer().getUniqueId()); + Jobs.getPlayerManager().resetItemBonusCache(event.getPlayer().getUniqueId()); } @EventHandler public void playerItemBreakEvent(InventoryClickEvent event) { - Jobs.getPlayerManager().resetItemBonusCache(((Player) event.getWhoClicked()).getUniqueId()); + Jobs.getPlayerManager().resetItemBonusCache(((Player) event.getWhoClicked()).getUniqueId()); } } diff --git a/src/main/java/com/gamingmesh/jobs/listeners/JobsPayment14Listener.java b/src/main/java/com/gamingmesh/jobs/listeners/JobsPayment14Listener.java index 9ecff662..9e2729ed 100644 --- a/src/main/java/com/gamingmesh/jobs/listeners/JobsPayment14Listener.java +++ b/src/main/java/com/gamingmesh/jobs/listeners/JobsPayment14Listener.java @@ -24,8 +24,6 @@ import com.gamingmesh.jobs.actions.ItemActionInfo; import com.gamingmesh.jobs.container.ActionType; import com.gamingmesh.jobs.container.PlayerCamp; -import net.Zrips.CMILib.Logs.CMIDebug; - public final class JobsPayment14Listener implements Listener { // BlockCookEvent does not have "cooking owner" diff --git a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java index 8eb06e19..28fac998 100644 --- a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java +++ b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java @@ -26,7 +26,6 @@ import java.util.Map.Entry; import java.util.UUID; import java.util.concurrent.TimeUnit; -import com.gamingmesh.jobs.config.GeneralConfigManager; import org.bukkit.Bukkit; import org.bukkit.GameMode; import org.bukkit.Location; @@ -72,8 +71,8 @@ import org.bukkit.event.inventory.InventoryAction; import org.bukkit.event.inventory.InventoryClickEvent; import org.bukkit.event.inventory.InventoryMoveItemEvent; import org.bukkit.event.inventory.InventoryType; -import org.bukkit.event.inventory.PrepareAnvilEvent; import org.bukkit.event.inventory.InventoryType.SlotType; +import org.bukkit.event.inventory.PrepareAnvilEvent; import org.bukkit.event.player.PlayerFishEvent; import org.bukkit.event.player.PlayerInteractEntityEvent; import org.bukkit.event.player.PlayerInteractEvent; @@ -90,7 +89,6 @@ import org.bukkit.inventory.meta.PotionMeta; import org.bukkit.metadata.FixedMetadataValue; import org.bukkit.metadata.MetadataValue; import org.bukkit.permissions.PermissionAttachmentInfo; -import org.checkerframework.checker.nullness.qual.Nullable; import com.bgsoftware.wildstacker.api.enums.StackSplit; import com.gamingmesh.jobs.ItemBoostManager; @@ -132,7 +130,6 @@ import net.Zrips.CMILib.Entities.CMIEntityType; import net.Zrips.CMILib.Items.CMIItemStack; import net.Zrips.CMILib.Items.CMIMaterial; import net.Zrips.CMILib.Locale.LC; -import net.Zrips.CMILib.Logs.CMIDebug; import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.Version.Version; From 5c1321ecd477277a6ddf201719f1367e4a23e889 Mon Sep 17 00:00:00 2001 From: Zrips Date: Fri, 21 Apr 2023 14:11:17 +0300 Subject: [PATCH 04/31] Centralizing auto pagination --- src/main/java/com/gamingmesh/jobs/Jobs.java | 44 ------ .../jobs/commands/JobsCommands.java | 25 ++-- .../gamingmesh/jobs/commands/list/browse.java | 2 +- .../jobs/commands/list/editjobs.java | 2 +- .../gamingmesh/jobs/commands/list/gtop.java | 124 ++++++++--------- .../jobs/commands/list/placeholders.java | 102 +++++++------- .../gamingmesh/jobs/commands/list/top.java | 130 +++++++++--------- 7 files changed, 189 insertions(+), 240 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/Jobs.java b/src/main/java/com/gamingmesh/jobs/Jobs.java index e4bb8d94..8490cfa3 100644 --- a/src/main/java/com/gamingmesh/jobs/Jobs.java +++ b/src/main/java/com/gamingmesh/jobs/Jobs.java @@ -1471,50 +1471,6 @@ public final class Jobs extends JavaPlugin { } - public void showPagination(CommandSender sender, PageInfo pi, String cmd) { - showPagination(sender, pi.getTotalPages(), pi.getCurrentPage(), pi.getTotalEntries(), cmd, null); - } - - public void showPagination(CommandSender sender, PageInfo pi, String cmd, String pagePref) { - showPagination(sender, pi.getTotalPages(), pi.getCurrentPage(), pi.getTotalEntries(), cmd, pagePref); - } - - public void showPagination(CommandSender sender, int pageCount, int currentPage, int totalEntries, String cmd, String pagePref) { - if (!(sender instanceof Player)) - return; - - if (!cmd.startsWith("/")) - cmd = "/" + cmd; - - if (pageCount == 1) - return; - - String pagePrefix = pagePref == null ? "" : pagePref; - - int nextPage = currentPage + 1; - nextPage = currentPage < pageCount ? nextPage : currentPage; - - int prevpage = currentPage - 1; - if (currentPage <= 1) { - prevpage = currentPage; - } - - RawMessage rm = new RawMessage() - .addText((currentPage > 1 ? LC.info_prevPage.getLocale() : LC.info_prevPageOff.getLocale())) - .addHover(currentPage > 1 ? LC.info_prevPageHover.getLocale() : LC.info_lastPageHover.getLocale()) - .addCommand(currentPage > 1 ? cmd + " " + pagePrefix + prevpage : cmd + " " + pagePrefix + pageCount); - - rm.addText(LC.info_pageCount.getLocale("[current]", currentPage, "[total]", pageCount)) - .addHover(LC.info_pageCountHover.getLocale("[totalEntries]", totalEntries)); - - rm.addText(pageCount > currentPage ? LC.info_nextPage.getLocale() : LC.info_nextPageOff.getLocale()) - .addHover(pageCount > currentPage ? LC.info_nextPageHover.getLocale() : LC.info_firstPageHover.getLocale()) - .addCommand(pageCount > currentPage ? cmd + " " + pagePrefix + nextPage : cmd + " " + pagePrefix + 1); - - if (pageCount != 0) - rm.show(sender); - } - public static boolean hasLimitedItems() { return hasLimitedItems; } diff --git a/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java b/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java index 8d7e2d90..ce9d2264 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java +++ b/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java @@ -14,6 +14,8 @@ import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import com.gamingmesh.jobs.Jobs; +import com.gamingmesh.jobs.commands.list.info; +import com.gamingmesh.jobs.commands.list.playerinfo; import com.gamingmesh.jobs.container.ActionType; import com.gamingmesh.jobs.container.Boost; import com.gamingmesh.jobs.container.CurrencyType; @@ -28,7 +30,6 @@ import net.Zrips.CMILib.ActionBar.CMIActionBar; import net.Zrips.CMILib.Container.CMIArray; import net.Zrips.CMILib.Container.PageInfo; import net.Zrips.CMILib.Locale.LC; -import net.Zrips.CMILib.Logs.CMIDebug; import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.RawMessages.RawMessage; @@ -162,18 +163,12 @@ public class JobsCommands implements CommandExecutor { boolean pl = sender instanceof Player; - // Old format -// sender.sendMessage(Jobs.getLanguage().getMessage("command.help.output.title")); for (String one : commands) { if (!pi.isEntryOk()) continue; if (pi.isBreak()) break; - // Old format -// sender.sendMessage(Jobs.getLanguage().getMessage("command.help.output.cmdInfoFormat", "[command]", getUsage(one), "[description]", Jobs.getLanguage().getMessage("command." + one -// + ".help.info"))); - if (pl) { rm.addText("\n" + getUsage(one)); rm.addHover(Jobs.getLanguage().getMessage("command." + one + ".help.info")); @@ -182,12 +177,10 @@ public class JobsCommands implements CommandExecutor { rm.addText("\n" + Jobs.getLanguage().getMessage("command.help.output.cmdInfoFormat", "[command]", getUsage(one), "[description]", Jobs.getLanguage().getMessage("command." + one + ".help.info"))); } - } - rm.show(sender); - plugin.showPagination(sender, pi, LABEL + " ?"); + pi.autoPagination(sender, LABEL + " ?"); return true; } @@ -333,9 +326,9 @@ public class JobsCommands implements CommandExecutor { String pName = player.getName(); if (sender.getName().equalsIgnoreCase(pName)) - plugin.showPagination(sender, pi, "jobs info " + job.getName() + t); + pi.autoPagination(sender, LABEL + " " + info.class.getSimpleName() + " " + job.getName() + t); else - plugin.showPagination(sender, pi, "jobs playerinfo " + pName + " " + job.getName() + t); + pi.autoPagination(sender, LABEL + " " + playerinfo.class.getSimpleName() + " " + job.getName() + t); } } @@ -356,11 +349,11 @@ public class JobsCommands implements CommandExecutor { message.append(":\n"); JobProgression prog = player.getJobProgression(job); - + if (prog == null) { - prog = player.getArchivedJobProgression(job); - } - + prog = player.getArchivedJobProgression(job); + } + int level = prog != null ? prog.getLevel() : 1; int numjobs = player.progression.size(); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/browse.java b/src/main/java/com/gamingmesh/jobs/commands/list/browse.java index 89188b3b..20f0ebdd 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/browse.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/browse.java @@ -113,7 +113,7 @@ public class browse implements Cmd { rm.show(sender); } - plugin.showPagination(sender, pi, "jobs browse", "-p:"); + pi.autoPagination(sender, "jobs browse", "-p:"); } else { sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.output.jobHeader", "[jobname]", j.getName())); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/editjobs.java b/src/main/java/com/gamingmesh/jobs/commands/list/editjobs.java index 32fe6aec..34451021 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/editjobs.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/editjobs.java @@ -117,7 +117,7 @@ public class editjobs implements Cmd { rm.show(sender); Util.getJobsEditorMap().remove(player.getUniqueId()); - plugin.showPagination(sender, pi, "jobs editjobs list " + job.getName() + " " + actionT.getName()); + pi.autoPagination(sender, "jobs editjobs list " + job.getName() + " " + actionT.getName()); return true; } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/gtop.java b/src/main/java/com/gamingmesh/jobs/commands/list/gtop.java index b72f81c8..00bcf410 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/gtop.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/gtop.java @@ -20,79 +20,79 @@ public class gtop implements Cmd { @Override public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (!(sender instanceof Player)) { - CMIMessages.sendMessage(sender, LC.info_Ingame); - return false; - } + if (!(sender instanceof Player)) { + CMIMessages.sendMessage(sender, LC.info_Ingame); + return false; + } - if (args.length > 1) { - Jobs.getCommandManager().sendUsage(sender, "gtop"); - return true; - } + if (args.length > 1) { + Jobs.getCommandManager().sendUsage(sender, "gtop"); + return true; + } - Player player = (Player) sender; - int page = 1; - if (args.length == 1) { - if (args[0].equalsIgnoreCase("clear")) { - player.getScoreboard().clearSlot(DisplaySlot.SIDEBAR); - CMIScoreboard.removeScoreBoard(player); - return true; - } + Player player = (Player) sender; + int page = 1; + if (args.length == 1) { + if (args[0].equalsIgnoreCase("clear")) { + player.getScoreboard().clearSlot(DisplaySlot.SIDEBAR); + CMIScoreboard.removeScoreBoard(player); + return true; + } - try { - page = Integer.parseInt(args[0]); - } catch (NumberFormatException e) { - return true; - } - } + try { + page = Integer.parseInt(args[0]); + } catch (NumberFormatException e) { + return true; + } + } - if (page < 1) - page = 1; + if (page < 1) + page = 1; - int amount = Jobs.getGCManager().JobsTopAmount; - PageInfo pi = new PageInfo(amount, Jobs.getPlayerManager().getPlayersCache().size(), page); + int amount = Jobs.getGCManager().JobsTopAmount; + PageInfo pi = new PageInfo(amount, Jobs.getPlayerManager().getPlayersCache().size(), page); - List FullList = Jobs.getJobsDAO().getGlobalTopList(pi.getStart()); - if (FullList.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.gtop.error.nojob")); - return true; - } + List FullList = Jobs.getJobsDAO().getGlobalTopList(pi.getStart()); + if (FullList.isEmpty()) { + sender.sendMessage(Jobs.getLanguage().getMessage("command.gtop.error.nojob")); + return true; + } - if (!Jobs.getGCManager().ShowToplistInScoreboard) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.gtop.output.topline", "%amount%", amount)); + if (!Jobs.getGCManager().ShowToplistInScoreboard) { + sender.sendMessage(Jobs.getLanguage().getMessage("command.gtop.output.topline", "%amount%", amount)); - int i = 0; - for (TopList One : FullList) { - if (i >= amount) - break; + int i = 0; + for (TopList One : FullList) { + if (i >= amount) + break; - sender.sendMessage(Jobs.getLanguage().getMessage("command.gtop.output.list", - "%number%", pi.getPositionForOutput(i), - "%playername%", One.getPlayerInfo().getName(), - "%playerdisplayname%", One.getPlayerInfo().getDisplayName(), - "%level%", One.getLevel(), - "%exp%", One.getExp())); - ++i; - } - } else { - List ls = new ArrayList<>(); - int i = 0; - for (TopList one : FullList) { - if (i >= amount) - break; + sender.sendMessage(Jobs.getLanguage().getMessage("command.gtop.output.list", + "%number%", pi.getPositionForOutput(i), + "%playername%", One.getPlayerInfo().getName(), + "%playerdisplayname%", One.getPlayerInfo().getDisplayName(), + "%level%", One.getLevel(), + "%exp%", One.getExp())); + ++i; + } + } else { + List ls = new ArrayList<>(); + int i = 0; + for (TopList one : FullList) { + if (i >= amount) + break; - ls.add(Jobs.getLanguage().getMessage("scoreboard.line", - "%number%", pi.getPositionForOutput(i), - "%playername%", one.getPlayerInfo().getName(), - "%playerdisplayname%", one.getPlayerInfo().getDisplayName(), - "%level%", one.getLevel())); - ++i; - } + ls.add(Jobs.getLanguage().getMessage("scoreboard.line", + "%number%", pi.getPositionForOutput(i), + "%playername%", one.getPlayerInfo().getName(), + "%playerdisplayname%", one.getPlayerInfo().getDisplayName(), + "%level%", one.getLevel())); + ++i; + } - CMIScoreboard.show(player, Jobs.getLanguage().getMessage("scoreboard.gtopline"), ls, Jobs.getGCManager().ToplistInScoreboardInterval); - } + CMIScoreboard.show(player, Jobs.getLanguage().getMessage("scoreboard.gtopline"), ls, Jobs.getGCManager().ToplistInScoreboardInterval); + } - plugin.showPagination(sender, pi, "jobs gtop"); - return true; + pi.autoPagination(sender, "jobs gtop"); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/placeholders.java b/src/main/java/com/gamingmesh/jobs/commands/list/placeholders.java index 7b7e41ec..da5e4b49 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/placeholders.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/placeholders.java @@ -16,61 +16,61 @@ public class placeholders implements Cmd { @Override public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - boolean isPlayer = sender instanceof Player; - Player player = isPlayer ? (Player) sender : null; + boolean isPlayer = sender instanceof Player; + Player player = isPlayer ? (Player) sender : null; - int page = 1; - if (args.length > 0) { - if (isPlayer) { - if (args[0].startsWith("-p:")) { - try { - page = Integer.parseInt(args[0].substring("-p:".length())); - } catch (NumberFormatException e) { - } - } - } else { - player = Bukkit.getPlayer(args[0]); - if (player == null) { - Jobs.consoleMsg("&cPlayer cannot be null!"); - return false; - } - } - } + int page = 1; + if (args.length > 0) { + if (isPlayer) { + if (args[0].startsWith("-p:")) { + try { + page = Integer.parseInt(args[0].substring("-p:".length())); + } catch (NumberFormatException e) { + } + } + } else { + player = Bukkit.getPlayer(args[0]); + if (player == null) { + Jobs.consoleMsg("&cPlayer cannot be null!"); + return false; + } + } + } - if (args.length >= 2 && args[0].equalsIgnoreCase("parse")) { - String placeholder = args[1]; - JobsPlaceholderType type = plugin.getPlaceholderAPIManager().getPlaceHolderType(player, placeholder); + if (args.length >= 2 && args[0].equalsIgnoreCase("parse")) { + String placeholder = args[1]; + JobsPlaceholderType type = plugin.getPlaceholderAPIManager().getPlaceHolderType(player, placeholder); - sender.sendMessage(Jobs.getLanguage().getMessage("command.placeholders.output.parse", - "[placeholder]", placeholder, - "[source]", type == null ? "Unknown" : type.name(), - "[result]", plugin.getPlaceholderAPIManager().updatePlaceHolders(player, placeholder))); + sender.sendMessage(Jobs.getLanguage().getMessage("command.placeholders.output.parse", + "[placeholder]", placeholder, + "[source]", type == null ? "Unknown" : type.name(), + "[result]", plugin.getPlaceholderAPIManager().updatePlaceHolders(player, placeholder))); - return true; - } + return true; + } - JobsPlaceHolders[] values = JobsPlaceHolders.values(); - PageInfo pi = new PageInfo(isPlayer ? Jobs.getGCManager().PlaceholdersPage : values.length, values.length, page); + JobsPlaceHolders[] values = JobsPlaceHolders.values(); + PageInfo pi = new PageInfo(isPlayer ? Jobs.getGCManager().PlaceholdersPage : values.length, values.length, page); - for (JobsPlaceHolders one : values) { - if (pi.isBreak()) - break; + for (JobsPlaceHolders one : values) { + if (pi.isBreak()) + break; - if (!pi.isEntryOk()) - continue; + if (!pi.isEntryOk()) + continue; - RawMessage rm = new RawMessage(); - String extra = ""; + RawMessage rm = new RawMessage(); + String extra = ""; - if (player != null && !one.isComplex()) - extra = plugin.getPlaceholderAPIManager().updatePlaceHolders(player, Jobs.getLanguage().getMessage("command.placeholders.output.outputResult", - "[result]", plugin.getPlaceholderAPIManager().updatePlaceHolders(player, one.getFull()))); + if (player != null && !one.isComplex()) + extra = plugin.getPlaceholderAPIManager().updatePlaceHolders(player, Jobs.getLanguage().getMessage("command.placeholders.output.outputResult", + "[result]", plugin.getPlaceholderAPIManager().updatePlaceHolders(player, one.getFull()))); - String place = one.getFull(); - String hover = ""; - if (plugin.isPlaceholderAPIEnabled()) { - hover = place = one.getFull(); - } + String place = one.getFull(); + String hover = ""; + if (plugin.isPlaceholderAPIEnabled()) { + hover = place = one.getFull(); + } // For MVdWPlaceholderAPI // if (plugin.isMVdWPlaceholderAPIEnabled()) { // if (!plugin.isPlaceholderAPIEnabled()) { @@ -82,12 +82,12 @@ public class placeholders implements Cmd { // else // hover += "\n" + "{" + one.getFull().substring(1, one.getFull().length() - 2) + "}"; // } - rm.addText(Jobs.getLanguage().getMessage("command.placeholders.output.list", "[place]", pi.getPositionForOutput(), "[placeholder]", place) + extra) - .addHover(hover).addSuggestion(one.getFull()).show(sender); - } + rm.addText(Jobs.getLanguage().getMessage("command.placeholders.output.list", "[place]", pi.getPositionForOutput(), "[placeholder]", place) + extra) + .addHover(hover).addSuggestion(one.getFull()).show(sender); + } - if (player != null) - plugin.showPagination(sender, pi, "jobs placeholders", "-p:"); - return true; + if (player != null) + pi.autoPagination(sender, "jobs placeholders", "-p:"); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/top.java b/src/main/java/com/gamingmesh/jobs/commands/list/top.java index 85c49159..696ec8fd 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/top.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/top.java @@ -21,83 +21,83 @@ public class top implements Cmd { @Override public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (!(sender instanceof Player)) { - CMIMessages.sendMessage(sender, LC.info_Ingame); - return false; - } + if (!(sender instanceof Player)) { + CMIMessages.sendMessage(sender, LC.info_Ingame); + return false; + } - if (args.length != 1 && args.length != 2) { - Jobs.getCommandManager().sendUsage(sender, "top"); - return false; - } + if (args.length != 1 && args.length != 2) { + Jobs.getCommandManager().sendUsage(sender, "top"); + return false; + } - Player player = (Player) sender; - if (args[0].equalsIgnoreCase("clear")) { - player.getScoreboard().clearSlot(DisplaySlot.SIDEBAR); - CMIScoreboard.removeScoreBoard(player); - return true; - } + Player player = (Player) sender; + if (args[0].equalsIgnoreCase("clear")) { + player.getScoreboard().clearSlot(DisplaySlot.SIDEBAR); + CMIScoreboard.removeScoreBoard(player); + return true; + } - int page = 1; - if (args.length == 2) { - try { - page = Integer.parseInt(args[1]); - } catch (NumberFormatException e) { - return true; - } - } - if (page < 1) - page = 1; + int page = 1; + if (args.length == 2) { + try { + page = Integer.parseInt(args[1]); + } catch (NumberFormatException e) { + return true; + } + } + if (page < 1) + page = 1; - Job job = Jobs.getJob(args[0]); - if (job == null) { - player.sendMessage(Jobs.getLanguage().getMessage("command.top.error.nojob")); - return false; - } + Job job = Jobs.getJob(args[0]); + if (job == null) { + player.sendMessage(Jobs.getLanguage().getMessage("command.top.error.nojob")); + return false; + } - int workingIn = Jobs.getUsedSlots(job); - PageInfo pi = new PageInfo(Jobs.getGCManager().JobsTopAmount, workingIn, page); + int workingIn = Jobs.getUsedSlots(job); + PageInfo pi = new PageInfo(Jobs.getGCManager().JobsTopAmount, workingIn, page); - List fullList = Jobs.getJobsDAO().toplist(job.getName(), pi.getStart()); - if (fullList.isEmpty()) { - CMIMessages.sendMessage(sender, LC.info_NoInformation); - return true; - } + List fullList = Jobs.getJobsDAO().toplist(job.getName(), pi.getStart()); + if (fullList.isEmpty()) { + CMIMessages.sendMessage(sender, LC.info_NoInformation); + return true; + } - player.sendMessage(Jobs.getLanguage().getMessage("command.top.help.info")); + player.sendMessage(Jobs.getLanguage().getMessage("command.top.help.info")); - int place = 1; + int place = 1; - if (!Jobs.getGCManager().ShowToplistInScoreboard) { - player.sendMessage(Jobs.getLanguage().getMessage("command.top.output.topline", "%jobname%", job.getName(), "%amount%", Jobs.getGCManager().JobsTopAmount)); - for (TopList one : fullList) { - if (place > Jobs.getGCManager().JobsTopAmount) - break; + if (!Jobs.getGCManager().ShowToplistInScoreboard) { + player.sendMessage(Jobs.getLanguage().getMessage("command.top.output.topline", "%jobname%", job.getName(), "%amount%", Jobs.getGCManager().JobsTopAmount)); + for (TopList one : fullList) { + if (place > Jobs.getGCManager().JobsTopAmount) + break; - player.sendMessage(Jobs.getLanguage().getMessage("command.top.output.list", - "%number%", ((page - 1) * Jobs.getGCManager().JobsTopAmount) + place, - "%playername%", one.getPlayerInfo().getName(), - "%playerdisplayname%", one.getPlayerInfo().getDisplayName(), - "%level%", one.getLevel(), - "%exp%", one.getExp())); - place++; - } - plugin.showPagination(sender, pi, "jobs top " + job.getName()); - } else { - List ls = new ArrayList<>(); + player.sendMessage(Jobs.getLanguage().getMessage("command.top.output.list", + "%number%", ((page - 1) * Jobs.getGCManager().JobsTopAmount) + place, + "%playername%", one.getPlayerInfo().getName(), + "%playerdisplayname%", one.getPlayerInfo().getDisplayName(), + "%level%", one.getLevel(), + "%exp%", one.getExp())); + place++; + } + pi.autoPagination(sender, "jobs top " + job.getName()); + } else { + List ls = new ArrayList<>(); - for (TopList one : fullList) { - if (place > Jobs.getGCManager().JobsTopAmount) - break; - ls.add(Jobs.getLanguage().getMessage("scoreboard.line", "%number%", ((page - 1) * Jobs.getGCManager().JobsTopAmount) + place, - "%playername%", one.getPlayerInfo().getName(), "%playerdisplayname%", one.getPlayerInfo().getDisplayName(), "%level%", one.getLevel())); - place++; - } + for (TopList one : fullList) { + if (place > Jobs.getGCManager().JobsTopAmount) + break; + ls.add(Jobs.getLanguage().getMessage("scoreboard.line", "%number%", ((page - 1) * Jobs.getGCManager().JobsTopAmount) + place, + "%playername%", one.getPlayerInfo().getName(), "%playerdisplayname%", one.getPlayerInfo().getDisplayName(), "%level%", one.getLevel())); + place++; + } - CMIScoreboard.show(player, Jobs.getLanguage().getMessage("scoreboard.topline", "%jobname%", job.getName()), ls, Jobs.getGCManager().ToplistInScoreboardInterval); + CMIScoreboard.show(player, Jobs.getLanguage().getMessage("scoreboard.topline", "%jobname%", job.getName()), ls, Jobs.getGCManager().ToplistInScoreboardInterval); - plugin.showPagination(sender, pi, "jobs top " + job.getName()); - } - return true; + pi.autoPagination(sender, "jobs top " + job.getName()); + } + return true; } } From 6294aece859aa788987e902f8c3eab1edda3823a Mon Sep 17 00:00:00 2001 From: Zrips Date: Fri, 21 Apr 2023 14:36:32 +0300 Subject: [PATCH 05/31] Code cleanup --- .../com/gamingmesh/jobs/HookEconomyTask.java | 7 +- .../com/gamingmesh/jobs/ItemBoostManager.java | 3 +- src/main/java/com/gamingmesh/jobs/Jobs.java | 19 +- .../com/gamingmesh/jobs/PlayerManager.java | 29 +- .../com/gamingmesh/jobs/Signs/SignUtil.java | 3 +- .../jobs/commands/list/convert.java | 2 +- .../gamingmesh/jobs/commands/list/glog.java | 5 +- .../gamingmesh/jobs/commands/list/log.java | 4 +- .../jobs/commands/list/placeholders.java | 3 +- .../gamingmesh/jobs/commands/list/quests.java | 1 - .../gamingmesh/jobs/config/ConfigManager.java | 14 +- .../jobs/config/ExploreManager.java | 12 +- .../jobs/config/GeneralConfigManager.java | 6 +- .../jobs/config/NameTranslatorManager.java | 26 +- .../jobs/config/RestrictedAreaManager.java | 292 +++++++++--------- .../jobs/config/RestrictedBlockManager.java | 105 +++---- .../jobs/config/ScheduleManager.java | 10 +- .../gamingmesh/jobs/config/ShopManager.java | 2 +- .../gamingmesh/jobs/config/TitleManager.java | 3 +- .../jobs/container/JobProgression.java | 4 +- .../com/gamingmesh/jobs/container/Log.java | 4 +- .../jobs/container/QuestProgression.java | 7 +- .../blockOwnerShip/BlockOwnerShip.java | 3 +- .../java/com/gamingmesh/jobs/dao/JobsDAO.java | 18 +- .../com/gamingmesh/jobs/dao/JobsManager.java | 8 +- .../com/gamingmesh/jobs/dao/JobsMySQL.java | 28 +- .../com/gamingmesh/jobs/dao/JobsSQLite.java | 22 +- .../gamingmesh/jobs/hooks/HookManager.java | 16 +- .../jobs/hooks/McMMO/McMMOManager.java | 6 +- .../jobs/hooks/MythicMobs/MythicMobs4.java | 7 +- .../jobs/hooks/MythicMobs/MythicMobs5.java | 7 +- .../com/gamingmesh/jobs/i18n/Language.java | 9 +- .../jobs/listeners/JobsPaymentListener.java | 4 +- .../com/gamingmesh/jobs/stuff/Loging.java | 4 +- .../jobs/stuff/PerformCommands.java | 25 -- .../com/gamingmesh/jobs/stuff/Sorting.java | 43 --- .../com/gamingmesh/jobs/stuff/TimeManage.java | 17 - .../java/com/gamingmesh/jobs/stuff/Util.java | 47 +-- .../gamingmesh/jobs/stuff/VersionChecker.java | 6 +- .../jobs/tasks/BufferedPaymentThread.java | 8 +- .../jobs/tasks/DatabaseSaveThread.java | 8 +- 41 files changed, 374 insertions(+), 473 deletions(-) delete mode 100644 src/main/java/com/gamingmesh/jobs/stuff/PerformCommands.java delete mode 100644 src/main/java/com/gamingmesh/jobs/stuff/TimeManage.java diff --git a/src/main/java/com/gamingmesh/jobs/HookEconomyTask.java b/src/main/java/com/gamingmesh/jobs/HookEconomyTask.java index 9c7244ff..ab51d1e7 100644 --- a/src/main/java/com/gamingmesh/jobs/HookEconomyTask.java +++ b/src/main/java/com/gamingmesh/jobs/HookEconomyTask.java @@ -18,13 +18,14 @@ package com.gamingmesh.jobs; -import net.milkbowl.vault.economy.Economy; - import org.bukkit.plugin.RegisteredServiceProvider; import com.gamingmesh.jobs.economy.BlackholeEconomy; import com.gamingmesh.jobs.economy.VaultEconomy; +import net.Zrips.CMILib.Messages.CMIMessages; +import net.milkbowl.vault.economy.Economy; + public class HookEconomyTask implements Runnable { private Jobs plugin; @@ -72,7 +73,7 @@ public class HookEconomyTask implements Runnable { } Jobs.setEconomy(new VaultEconomy(provider.getProvider())); - Jobs.consoleMsg("&e[" + plugin.getDescription().getName() + "] Successfully linked with Vault. (" + provider.getProvider().getName() + ")"); + CMIMessages.consoleMessage("&e[" + plugin.getDescription().getName() + "] Successfully linked with Vault. (" + provider.getProvider().getName() + ")"); return hookResult.pass; } diff --git a/src/main/java/com/gamingmesh/jobs/ItemBoostManager.java b/src/main/java/com/gamingmesh/jobs/ItemBoostManager.java index 100d15fd..2f8ed29e 100644 --- a/src/main/java/com/gamingmesh/jobs/ItemBoostManager.java +++ b/src/main/java/com/gamingmesh/jobs/ItemBoostManager.java @@ -22,6 +22,7 @@ import com.gamingmesh.jobs.container.JobItems; import net.Zrips.CMILib.Colors.CMIChatColor; import net.Zrips.CMILib.FileHandler.ConfigReader; import net.Zrips.CMILib.Items.CMIMaterial; +import net.Zrips.CMILib.Messages.CMIMessages; public final class ItemBoostManager { @@ -228,7 +229,7 @@ public final class ItemBoostManager { } cfg.save(); - Jobs.consoleMsg("&eLoaded &6" + ITEMS.size() + " &eboosted items"); + CMIMessages.consoleMessage("&eLoaded &6" + ITEMS.size() + " &eboosted items"); } /** diff --git a/src/main/java/com/gamingmesh/jobs/Jobs.java b/src/main/java/com/gamingmesh/jobs/Jobs.java index 66c52e3b..f37a750d 100644 --- a/src/main/java/com/gamingmesh/jobs/Jobs.java +++ b/src/main/java/com/gamingmesh/jobs/Jobs.java @@ -34,7 +34,6 @@ import java.util.logging.Logger; import org.bukkit.Bukkit; import org.bukkit.block.Block; -import org.bukkit.command.CommandSender; import org.bukkit.entity.Entity; import org.bukkit.entity.LivingEntity; import org.bukkit.entity.Player; @@ -112,8 +111,6 @@ import com.gamingmesh.jobs.tasks.BufferedPaymentThread; import com.gamingmesh.jobs.tasks.DatabaseSaveThread; import net.Zrips.CMILib.ActionBar.CMIActionBar; -import net.Zrips.CMILib.Colors.CMIChatColor; -import net.Zrips.CMILib.Container.PageInfo; import net.Zrips.CMILib.Items.CMIMaterial; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; @@ -267,7 +264,7 @@ public final class Jobs extends JavaPlugin { try { if (Integer.parseInt(papi .getDescription().getVersion().replaceAll("[^\\d]", "")) >= 2100 && new PlaceholderAPIHook(this).register()) { - consoleMsg("&6PlaceholderAPI &ehooked."); + CMIMessages.consoleMessage("&6PlaceholderAPI &ehooked."); } } catch (NumberFormatException ex) { return false; @@ -566,7 +563,7 @@ public final class Jobs extends JavaPlugin { getPlayerManager().addPlayerToCache(jPlayer); } if (!getPlayerManager().getPlayersCache().isEmpty()) - consoleMsg("&ePreloaded &6" + getPlayerManager().getPlayersCache().size() + " &eplayers data in &6" + ((int) ((System.currentTimeMillis() - time) / 1000.0D * 100.0D) / 100.0D)); + CMIMessages.consoleMessage("&ePreloaded &6" + getPlayerManager().getPlayersCache().size() + " &eplayers data in &6" + ((int) ((System.currentTimeMillis() - time) / 1000.0D * 100.0D) / 100.0D)); } public static void convertDatabase() { @@ -596,7 +593,7 @@ public final class Jobs extends JavaPlugin { // Jobs.getJobsDAO().saveBlockProtection(); } catch (SQLException e) { e.printStackTrace(); - Jobs.consoleMsg("&cCan't write data to data base, please send error log to dev's."); + CMIMessages.consoleMessage("&cCan't write data to data base, please send error log to dev's."); return; } @@ -773,7 +770,7 @@ public final class Jobs extends JavaPlugin { getCommandManager().fillCommands(); getDBManager().getDB().triggerTableIdUpdate(); - consoleMsg("&ePlugin has been enabled successfully."); + CMIMessages.consoleMessage("&ePlugin has been enabled successfully."); } catch (Throwable e) { e.printStackTrace(); System.out.println("There was some issues when starting plugin. Please contact dev about this. Plugin will be disabled."); @@ -1257,7 +1254,7 @@ public final class Jobs extends JavaPlugin { jPlayer.getUpdateBossBarFor().add(prog.getJob().getName()); } catch (Throwable e) { e.printStackTrace(); - consoleMsg("&c[Jobs] Some issues with boss bar feature accured, try disabling it to avoid it."); + CMIMessages.consoleMessage("&c[Jobs] Some issues with boss bar feature accured, try disabling it to avoid it."); } Map payments = new HashMap<>(); @@ -1460,12 +1457,6 @@ public final class Jobs extends JavaPlugin { getPlayerManager().performLevelUp(jPlayer, prog.getJob(), oldLevel); } - public static void consoleMsg(String msg) { - if (msg != null) { - Bukkit.getServer().getConsoleSender().sendMessage(CMIChatColor.translate(msg)); - } - } - public static SelectionManager getSelectionManager() { return smanager; } diff --git a/src/main/java/com/gamingmesh/jobs/PlayerManager.java b/src/main/java/com/gamingmesh/jobs/PlayerManager.java index dae17e93..f57c230c 100644 --- a/src/main/java/com/gamingmesh/jobs/PlayerManager.java +++ b/src/main/java/com/gamingmesh/jobs/PlayerManager.java @@ -31,8 +31,8 @@ import java.util.concurrent.ThreadLocalRandom; import org.bukkit.Bukkit; import org.bukkit.Color; import org.bukkit.FireworkEffect; -import org.bukkit.Material; import org.bukkit.FireworkEffect.Type; +import org.bukkit.Material; import org.bukkit.entity.Entity; import org.bukkit.entity.Firework; import org.bukkit.entity.LivingEntity; @@ -40,8 +40,6 @@ import org.bukkit.entity.Player; import org.bukkit.entity.Tameable; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.FireworkMeta; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; import com.gamingmesh.jobs.api.JobsJoinEvent; import com.gamingmesh.jobs.api.JobsLeaveEvent; @@ -62,13 +60,11 @@ import com.gamingmesh.jobs.dao.JobsDAO; import com.gamingmesh.jobs.dao.JobsDAOData; import com.gamingmesh.jobs.economy.PaymentData; import com.gamingmesh.jobs.hooks.HookManager; -import com.gamingmesh.jobs.stuff.PerformCommands; import com.gamingmesh.jobs.stuff.Util; import net.Zrips.CMILib.ActionBar.CMIActionBar; import net.Zrips.CMILib.Items.CMIItemStack; import net.Zrips.CMILib.Items.CMIMaterial; -import net.Zrips.CMILib.Logs.CMIDebug; import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.NBT.CMINBT; import net.Zrips.CMILib.Version.Version; @@ -336,7 +332,7 @@ public class PlayerManager { i++; if (y++ >= 1000) { - Jobs.consoleMsg("&e[Jobs] Saved " + i + "/" + total + " players data"); + CMIMessages.consoleMessage("&e[Jobs] Saved " + i + "/" + total + " players data"); y = 0; } } @@ -452,6 +448,14 @@ public class PlayerManager { return jPlayer; } + private static void performCommandsOnJoin(JobsPlayer jPlayer, Job job) { + String pName = jPlayer.getName(); + + for (String one : job.getCmdOnJoin()) { + Bukkit.dispatchCommand(Bukkit.getConsoleSender(), one.replace("[name]", pName).replace("[jobname]", job.getName())); + } + } + /** * Causes player to join to the given job. * @@ -476,7 +480,7 @@ public class PlayerManager { Jobs.getJobsDAO().joinJob(jPlayer, jPlayer.getJobProgression(job)); jPlayer.setLeftTime(job); - PerformCommands.performCommandsOnJoin(jPlayer, job); + performCommandsOnJoin(jPlayer, job); Jobs.takeSlot(job); Jobs.getSignUtil().updateAllSign(job); @@ -485,6 +489,13 @@ public class PlayerManager { jPlayer.maxJobsEquation = getMaxJobs(jPlayer); } + private static void performCommandsOnLeave(JobsPlayer jPlayer, Job job) { + String pName = jPlayer.getName(); + for (String one : job.getCmdOnLeave()) { + Bukkit.dispatchCommand(Bukkit.getConsoleSender(), one.replace("[name]", pName).replace("[jobname]", job.getName())); + } + } + /** * Causes player to leave the given job. * @@ -510,7 +521,7 @@ public class PlayerManager { if (!Jobs.getJobsDAO().quitJob(jPlayer, job)) return false; - PerformCommands.performCommandsOnLeave(jPlayer, job); + performCommandsOnLeave(jPlayer, job); Jobs.leaveSlot(job); jPlayer.getLeftTimes().remove(jPlayer.getUniqueId()); @@ -1199,7 +1210,7 @@ public class PlayerManager { for (Job one : Jobs.getJobs()) { if (jPlayer.progression.size() >= playerMaxJobs) return; - + if (one.getMaxSlots() != null && Jobs.getUsedSlots(one) >= one.getMaxSlots()) continue; diff --git a/src/main/java/com/gamingmesh/jobs/Signs/SignUtil.java b/src/main/java/com/gamingmesh/jobs/Signs/SignUtil.java index ed5e1d75..77337bb0 100644 --- a/src/main/java/com/gamingmesh/jobs/Signs/SignUtil.java +++ b/src/main/java/com/gamingmesh/jobs/Signs/SignUtil.java @@ -22,6 +22,7 @@ import com.gamingmesh.jobs.container.TopList; import net.Zrips.CMILib.FileHandler.ConfigReader; import net.Zrips.CMILib.Items.CMIMaterial; +import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.Version.Version; public class SignUtil { @@ -130,7 +131,7 @@ public class SignUtil { } if (!signsByLocation.isEmpty()) { - Jobs.consoleMsg("&e[Jobs] Loaded " + signsByLocation.size() + " top list signs"); + CMIMessages.consoleMessage("&e[Jobs] Loaded " + signsByLocation.size() + " top list signs"); } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/convert.java b/src/main/java/com/gamingmesh/jobs/commands/list/convert.java index 0d691d78..d7b64544 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/convert.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/convert.java @@ -30,7 +30,7 @@ public class convert implements Cmd { Bukkit.getScheduler().runTaskAsynchronously(plugin, () -> { Jobs.convertDatabase(); - Jobs.consoleMsg("&eDatabase was converted from &2" + from + " &eto &2" + to + "&e!"); + CMIMessages.consoleMessage("&eDatabase was converted from &2" + from + " &eto &2" + to + "&e!"); }); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/glog.java b/src/main/java/com/gamingmesh/jobs/commands/list/glog.java index 241bc1ad..c1dd523e 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/glog.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/glog.java @@ -16,7 +16,8 @@ import com.gamingmesh.jobs.container.Log; import com.gamingmesh.jobs.container.LogAmounts; import com.gamingmesh.jobs.container.PlayerInfo; import com.gamingmesh.jobs.stuff.Sorting; -import com.gamingmesh.jobs.stuff.TimeManage; + +import net.Zrips.CMILib.Time.CMITimeManager; public class glog implements Cmd { @@ -31,7 +32,7 @@ public class glog implements Cmd { @Override public void run() { Map unsortMap = new HashMap<>(); - int time = TimeManage.timeInInt(); + int time = CMITimeManager.timeInInt(); for (Integer oneP : Jobs.getJobsDAO().getLognameList(time, time)) { PlayerInfo info = Jobs.getPlayerManager().getPlayerInfo(oneP); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/log.java b/src/main/java/com/gamingmesh/jobs/commands/list/log.java index 33728b09..52f22058 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/log.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/log.java @@ -15,8 +15,8 @@ import com.gamingmesh.jobs.container.CurrencyType; import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.container.Log; import com.gamingmesh.jobs.container.LogAmounts; -import com.gamingmesh.jobs.stuff.Sorting; +import net.Zrips.CMILib.Container.CMISort; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; @@ -65,7 +65,7 @@ public class log implements Cmd { } } - unsortMap = Sorting.sortDoubleDESC(unsortMap); + unsortMap = CMISort.sortDoubleDESC(unsortMap); if (unsortMap.isEmpty()) { sender.sendMessage(Jobs.getLanguage().getMessage("command.log.output.nodata")); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/placeholders.java b/src/main/java/com/gamingmesh/jobs/commands/list/placeholders.java index da5e4b49..b9f53e37 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/placeholders.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/placeholders.java @@ -10,6 +10,7 @@ import com.gamingmesh.jobs.Placeholders.Placeholder.JobsPlaceholderType; import com.gamingmesh.jobs.commands.Cmd; import net.Zrips.CMILib.Container.PageInfo; +import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.RawMessages.RawMessage; public class placeholders implements Cmd { @@ -31,7 +32,7 @@ public class placeholders implements Cmd { } else { player = Bukkit.getPlayer(args[0]); if (player == null) { - Jobs.consoleMsg("&cPlayer cannot be null!"); + CMIMessages.consoleMessage("&cPlayer cannot be null!"); return false; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/quests.java b/src/main/java/com/gamingmesh/jobs/commands/list/quests.java index 56920dbc..d43557b2 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/quests.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/quests.java @@ -14,7 +14,6 @@ import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.container.Quest; import com.gamingmesh.jobs.container.QuestObjective; import com.gamingmesh.jobs.container.QuestProgression; -import com.gamingmesh.jobs.stuff.TimeManage; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; diff --git a/src/main/java/com/gamingmesh/jobs/config/ConfigManager.java b/src/main/java/com/gamingmesh/jobs/config/ConfigManager.java index 1d043e16..0821b358 100644 --- a/src/main/java/com/gamingmesh/jobs/config/ConfigManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/ConfigManager.java @@ -60,7 +60,7 @@ import net.Zrips.CMILib.Equations.ParseError; import net.Zrips.CMILib.Equations.Parser; import net.Zrips.CMILib.FileHandler.ConfigReader; import net.Zrips.CMILib.Items.CMIMaterial; -import net.Zrips.CMILib.Logs.CMIDebug; +import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.Version.Version; public class ConfigManager { @@ -964,7 +964,7 @@ public class ConfigManager { Jobs.setJobs(jobs); if (!jobs.isEmpty()) { - Jobs.consoleMsg("&eLoaded &6" + jobs.size() + " &ejobs"); + CMIMessages.consoleMessage("&eLoaded &6" + jobs.size() + " &ejobs"); } ItemBoostManager.load(); @@ -1314,7 +1314,7 @@ public class ConfigManager { jobItems.put(node.toLowerCase(), new JobItems(node, CMIMaterial.get(id), 1, name, lore, enchants, b, new ArrayList())); } - Jobs.consoleMsg("&cRemove Items section from " + jobKey + " job, as of Jobs 4.10.0 version this was moved to boostedItems.yml file!"); + CMIMessages.consoleMessage("&cRemove Items section from " + jobKey + " job, as of Jobs 4.10.0 version this was moved to boostedItems.yml file!"); } // Limited Items @@ -1415,8 +1415,8 @@ public class ConfigManager { } } - for (String oneObjective : sqsection.getStringList("Objectives")) { - List objectives = QuestObjective.get(oneObjective, jobFullName); + for (String oneObjective : sqsection.getStringList("Objectives")) { + List objectives = QuestObjective.get(oneObjective, jobFullName); quest.addObjectives(objectives); } @@ -1434,13 +1434,13 @@ public class ConfigManager { quests.add(quest); } catch (Exception e) { - Jobs.consoleMsg("&cCan't load &6" + one + " &cquest for &6" + jobFullName); + CMIMessages.consoleMessage("&cCan't load &6" + one + " &cquest for &6" + jobFullName); e.printStackTrace(); } } job.setQuests(quests); - Jobs.consoleMsg("&eLoaded &6" + quests.size() + " &equests for &6" + jobFullName); + CMIMessages.consoleMessage("&eLoaded &6" + quests.size() + " &equests for &6" + jobFullName); } job.setMaxDailyQuests(jobSection.getInt("maxDailyQuests", 1)); diff --git a/src/main/java/com/gamingmesh/jobs/config/ExploreManager.java b/src/main/java/com/gamingmesh/jobs/config/ExploreManager.java index 574e0ee4..f9cf4e75 100644 --- a/src/main/java/com/gamingmesh/jobs/config/ExploreManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/ExploreManager.java @@ -17,7 +17,7 @@ import com.gamingmesh.jobs.container.JobsWorld; import com.gamingmesh.jobs.dao.JobsDAO.ExploreDataTableFields; import com.gamingmesh.jobs.stuff.Util; -import net.Zrips.CMILib.Logs.CMIDebug; +import net.Zrips.CMILib.Messages.CMIMessages; public class ExploreManager { @@ -48,11 +48,11 @@ public class ExploreManager { if (!exploreEnabled) return; - Jobs.consoleMsg("&eLoading explorer data"); + CMIMessages.consoleMessage("&eLoading explorer data"); Long time = System.currentTimeMillis(); Jobs.getJobsDAO().loadExplore(); int size = getSize(); - Jobs.consoleMsg("&eLoaded explorer data" + (size != 0 ? " (&6" + size + "&e)" : " ") + " in " + (System.currentTimeMillis() - time) + " ms"); + CMIMessages.consoleMessage("&eLoaded explorer data" + (size != 0 ? " (&6" + size + "&e)" : " ") + " in " + (System.currentTimeMillis() - time) + " ms"); } public Map> getWorlds() { @@ -149,17 +149,17 @@ public class ExploreManager { } public void resetRegion(String worldname) { - Jobs.consoleMsg("&eReseting explorer data. World: " + worldname); + CMIMessages.consoleMessage("&eReseting explorer data. World: " + worldname); Map> worlds = getWorlds(); worlds.put(worldname, new HashMap()); boolean r = Jobs.getJobsDAO().deleteExploredWorld(worldname); if (!r) { - Jobs.consoleMsg("&eFailed in DAO."); + CMIMessages.consoleMessage("&eFailed in DAO."); return; } - Jobs.consoleMsg("&eCompleted to reset explorer data."); + CMIMessages.consoleMessage("&eCompleted to reset explorer data."); } } diff --git a/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java b/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java index 0340dcec..08e845c1 100644 --- a/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java @@ -40,12 +40,12 @@ import com.gamingmesh.jobs.container.CurrencyLimit; import com.gamingmesh.jobs.container.CurrencyType; import net.Zrips.CMILib.CMILib; -import net.Zrips.CMILib.Container.CMIArray; import net.Zrips.CMILib.Container.CMIList; import net.Zrips.CMILib.Equations.Parser; import net.Zrips.CMILib.FileHandler.ConfigReader; import net.Zrips.CMILib.Items.CMIItemStack; import net.Zrips.CMILib.Items.CMIMaterial; +import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.Version.Version; public class GeneralConfigManager { @@ -543,7 +543,7 @@ public class GeneralConfigManager { CMIMaterial mat = CMIMaterial.get(mName); if (mat == CMIMaterial.NONE) { - Jobs.consoleMsg("Failed to recognize " + one + " entry from config file"); + CMIMessages.consoleMessage("Failed to recognize " + one + " entry from config file"); continue; } @@ -644,7 +644,7 @@ public class GeneralConfigManager { DynamicPaymentEquation.setVariable("totaljobs", 10); DynamicPaymentEquation.setVariable("jobstotalplayers", 10); } catch (Throwable e) { - Jobs.consoleMsg("&cDynamic payment equation has an invalid property. Disabling feature!"); + CMIMessages.consoleMessage("&cDynamic payment equation has an invalid property. Disabling feature!"); useDynamicPayment = false; } diff --git a/src/main/java/com/gamingmesh/jobs/config/NameTranslatorManager.java b/src/main/java/com/gamingmesh/jobs/config/NameTranslatorManager.java index 62959b50..80b8b77d 100644 --- a/src/main/java/com/gamingmesh/jobs/config/NameTranslatorManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/NameTranslatorManager.java @@ -26,7 +26,7 @@ import net.Zrips.CMILib.Container.CMIText; import net.Zrips.CMILib.Entities.CMIEntityType; import net.Zrips.CMILib.FileHandler.ConfigReader; import net.Zrips.CMILib.Items.CMIMaterial; -import net.Zrips.CMILib.Logs.CMIDebug; +import net.Zrips.CMILib.Messages.CMIMessages; public class NameTranslatorManager { @@ -231,9 +231,9 @@ public class NameTranslatorManager { } if (listOfNames.size() > 0) - Jobs.consoleMsg("&eLoaded &6" + listOfNames.size() + " &ecustom item names"); + CMIMessages.consoleMessage("&eLoaded &6" + listOfNames.size() + " &ecustom item names"); } else - Jobs.consoleMsg("&cThe ItemList section not found in &6" + itemFile.fileName + " &cfile."); + CMIMessages.consoleMessage("&cThe ItemList section not found in &6" + itemFile.fileName + " &cfile."); if ((section = itemFile.getConfig().getConfigurationSection("EntityList")) != null) { listOfEntities.clear(); @@ -252,9 +252,9 @@ public class NameTranslatorManager { } if (!listOfEntities.isEmpty()) - Jobs.consoleMsg("&eLoaded &6" + listOfEntities.size() + " &ecustom entity names"); + CMIMessages.consoleMessage("&eLoaded &6" + listOfEntities.size() + " &ecustom entity names"); } else - Jobs.consoleMsg("&cThe EntityList section not found in &6" + itemFile.fileName + " &cfile."); + CMIMessages.consoleMessage("&cThe EntityList section not found in &6" + itemFile.fileName + " &cfile."); if ((section = itemFile.getConfig().getConfigurationSection("MythicEntityList")) != null) { listOfMMEntities.clear(); @@ -265,9 +265,9 @@ public class NameTranslatorManager { } if (listOfMMEntities.size() > 0) - Jobs.consoleMsg("&eLoaded &6" + listOfMMEntities.size() + " &ecustom MythicMobs names"); + CMIMessages.consoleMessage("&eLoaded &6" + listOfMMEntities.size() + " &ecustom MythicMobs names"); } else - Jobs.consoleMsg("&cThe MythicEntityList section not found in &6" + itemFile.fileName + " &cfile."); + CMIMessages.consoleMessage("&cThe MythicEntityList section not found in &6" + itemFile.fileName + " &cfile."); if ((section = itemFile.getConfig().getConfigurationSection("EnchantList")) != null) { listOfEnchants.clear(); @@ -277,9 +277,9 @@ public class NameTranslatorManager { } if (listOfEnchants.size() > 0) - Jobs.consoleMsg("&eLoaded &6" + listOfEnchants.size() + " &ecustom enchant names"); + CMIMessages.consoleMessage("&eLoaded &6" + listOfEnchants.size() + " &ecustom enchant names"); } else - Jobs.consoleMsg("&cThe EnchantList section not found in &6" + itemFile.fileName + " &cfile."); + CMIMessages.consoleMessage("&cThe EnchantList section not found in &6" + itemFile.fileName + " &cfile."); if ((section = itemFile.getConfig().getConfigurationSection("PotionEffects")) != null) { listOfPotionEffects.clear(); @@ -289,9 +289,9 @@ public class NameTranslatorManager { } if (listOfPotionEffects.size() > 0) - Jobs.consoleMsg("&eLoaded &6" + listOfPotionEffects.size() + " &ecustom enchant names"); + CMIMessages.consoleMessage("&eLoaded &6" + listOfPotionEffects.size() + " &ecustom enchant names"); } else - Jobs.consoleMsg("&cThe PotionEffects section not found in &6" + itemFile.fileName + " &cfile."); + CMIMessages.consoleMessage("&cThe PotionEffects section not found in &6" + itemFile.fileName + " &cfile."); if ((section = itemFile.getConfig().getConfigurationSection("ColorList")) != null) { listOfColors.clear(); @@ -304,9 +304,9 @@ public class NameTranslatorManager { } if (!listOfColors.isEmpty()) - Jobs.consoleMsg("&eLoaded &6" + listOfColors.size() + " &ecustom color names"); + CMIMessages.consoleMessage("&eLoaded &6" + listOfColors.size() + " &ecustom color names"); } else - Jobs.consoleMsg("&cThe ColorList section not found in &6" + itemFile.fileName + " &cfile."); + CMIMessages.consoleMessage("&cThe ColorList section not found in &6" + itemFile.fileName + " &cfile."); } @SuppressWarnings("deprecation") diff --git a/src/main/java/com/gamingmesh/jobs/config/RestrictedAreaManager.java b/src/main/java/com/gamingmesh/jobs/config/RestrictedAreaManager.java index 48196e73..47fb4e5a 100644 --- a/src/main/java/com/gamingmesh/jobs/config/RestrictedAreaManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/RestrictedAreaManager.java @@ -20,6 +20,8 @@ import com.gamingmesh.jobs.container.CuboidArea; import com.gamingmesh.jobs.container.RestrictedArea; import com.gamingmesh.jobs.hooks.HookManager; +import net.Zrips.CMILib.Messages.CMIMessages; + public class RestrictedAreaManager { protected final Map restrictedAreas = new HashMap<>(); @@ -27,43 +29,43 @@ public class RestrictedAreaManager { private boolean worldGuardArea = false; public boolean isExist(String name) { - for (String area : restrictedAreas.keySet()) { - if (area.equalsIgnoreCase(name)) - return true; - } - return false; + for (String area : restrictedAreas.keySet()) { + if (area.equalsIgnoreCase(name)) + return true; + } + return false; } public void addNew(RestrictedArea ra) { - addNew(ra, false); + addNew(ra, false); } public void addNew(RestrictedArea ra, boolean save) { - restrictedAreas.put(ra.getName(), ra); - if (save) - save(); + restrictedAreas.put(ra.getName(), ra); + if (save) + save(); } public void remove(String name) { - for (String area : restrictedAreas.keySet()) { - if (area.equalsIgnoreCase(name)) { - restrictedAreas.remove(area); - break; - } - } - File f = new File(Jobs.getFolder(), "restrictedAreas.yml"); - if (f.exists()) { - YamlConfiguration conf = YamlConfiguration.loadConfiguration(f); - conf.options().indent(2); - conf.options().copyDefaults(true); - addHeader(new StringBuilder()); - conf.set("restrictedareas." + name, null); - try { - conf.save(f); - } catch (IOException e) { - e.printStackTrace(); - } - } + for (String area : restrictedAreas.keySet()) { + if (area.equalsIgnoreCase(name)) { + restrictedAreas.remove(area); + break; + } + } + File f = new File(Jobs.getFolder(), "restrictedAreas.yml"); + if (f.exists()) { + YamlConfiguration conf = YamlConfiguration.loadConfiguration(f); + conf.options().indent(2); + conf.options().copyDefaults(true); + addHeader(new StringBuilder()); + conf.set("restrictedareas." + name, null); + try { + conf.save(f); + } catch (IOException e) { + e.printStackTrace(); + } + } } /** @@ -74,44 +76,44 @@ public class RestrictedAreaManager { */ @Deprecated public Map getRestrictedAres() { - return restrictedAreas; + return restrictedAreas; } public Map getRestrictedAreas() { - return restrictedAreas; + return restrictedAreas; } private void save() { - File f = new File(Jobs.getFolder(), "restrictedAreas.yml"); - YamlConfiguration conf = YamlConfiguration.loadConfiguration(f); + File f = new File(Jobs.getFolder(), "restrictedAreas.yml"); + YamlConfiguration conf = YamlConfiguration.loadConfiguration(f); - conf.options().indent(2); - conf.options().copyDefaults(true); + conf.options().indent(2); + conf.options().copyDefaults(true); - addHeader(new StringBuilder()); + addHeader(new StringBuilder()); - for (Entry area : restrictedAreas.entrySet()) { - String areaKey = area.getKey(); - CuboidArea cuboid = area.getValue().getCuboidArea(); - conf.set("restrictedareas." + areaKey + ".multiplier", area.getValue().getMultiplier()); + for (Entry area : restrictedAreas.entrySet()) { + String areaKey = area.getKey(); + CuboidArea cuboid = area.getValue().getCuboidArea(); + conf.set("restrictedareas." + areaKey + ".multiplier", area.getValue().getMultiplier()); - if (area.getValue().getWgName() == null) { - conf.set("restrictedareas." + areaKey + ".world", cuboid.getWorld().getName()); - conf.set("restrictedareas." + areaKey + ".point1.x", cuboid.getLowLoc().getBlockX()); - conf.set("restrictedareas." + areaKey + ".point1.y", cuboid.getLowLoc().getBlockY()); - conf.set("restrictedareas." + areaKey + ".point1.z", cuboid.getLowLoc().getBlockZ()); - conf.set("restrictedareas." + areaKey + ".point2.x", cuboid.getHighLoc().getBlockX()); - conf.set("restrictedareas." + areaKey + ".point2.y", cuboid.getHighLoc().getBlockY()); - conf.set("restrictedareas." + areaKey + ".point2.z", cuboid.getHighLoc().getBlockZ()); - } else - conf.set("restrictedareas." + areaKey + ".WG", true); - } + if (area.getValue().getWgName() == null) { + conf.set("restrictedareas." + areaKey + ".world", cuboid.getWorld().getName()); + conf.set("restrictedareas." + areaKey + ".point1.x", cuboid.getLowLoc().getBlockX()); + conf.set("restrictedareas." + areaKey + ".point1.y", cuboid.getLowLoc().getBlockY()); + conf.set("restrictedareas." + areaKey + ".point1.z", cuboid.getLowLoc().getBlockZ()); + conf.set("restrictedareas." + areaKey + ".point2.x", cuboid.getHighLoc().getBlockX()); + conf.set("restrictedareas." + areaKey + ".point2.y", cuboid.getHighLoc().getBlockY()); + conf.set("restrictedareas." + areaKey + ".point2.z", cuboid.getHighLoc().getBlockZ()); + } else + conf.set("restrictedareas." + areaKey + ".WG", true); + } - try { - conf.save(f); - } catch (IOException e) { - e.printStackTrace(); - } + try { + conf.save(f); + } catch (IOException e) { + e.printStackTrace(); + } } /** @@ -120,74 +122,74 @@ public class RestrictedAreaManager { * @return - the multiplier */ public double getRestrictedMultiplier(Player player) { - if (player == null) - return 0D; - for (RestrictedArea area : getRestrictedAreasByLoc(player.getLocation())) { - if (area.inRestrictedArea(player.getLocation()) || (area.getWgName() != null && HookManager.getWorldGuardManager() != null - && HookManager.getWorldGuardManager().inArea(player.getLocation(), area.getWgName()))) - return area.getMultiplier(); - } - return 0D; + if (player == null) + return 0D; + for (RestrictedArea area : getRestrictedAreasByLoc(player.getLocation())) { + if (area.inRestrictedArea(player.getLocation()) || (area.getWgName() != null && HookManager.getWorldGuardManager() != null + && HookManager.getWorldGuardManager().inArea(player.getLocation(), area.getWgName()))) + return area.getMultiplier(); + } + return 0D; } public List getRestrictedAreasByLoc(Location loc) { - List areas = new ArrayList<>(); - for (RestrictedArea area : restrictedAreas.values()) { - if (area.inRestrictedArea(loc)) - areas.add(area); - } + List areas = new ArrayList<>(); + for (RestrictedArea area : restrictedAreas.values()) { + if (area.inRestrictedArea(loc)) + areas.add(area); + } - if (worldGuardArea && HookManager.getWorldGuardManager() != null) - areas.addAll(HookManager.getWorldGuardManager().getArea(loc)); + if (worldGuardArea && HookManager.getWorldGuardManager() != null) + areas.addAll(HookManager.getWorldGuardManager().getArea(loc)); - return areas; + return areas; } public List getRestrictedAreasByName(String name) { - List areas = new ArrayList<>(); - for (Entry area : restrictedAreas.entrySet()) { - if (area.getKey().equalsIgnoreCase(name)) - areas.add(area.getValue()); - } - return areas; + List areas = new ArrayList<>(); + for (Entry area : restrictedAreas.entrySet()) { + if (area.getKey().equalsIgnoreCase(name)) + areas.add(area.getValue()); + } + return areas; } private static StringBuilder addHeader(StringBuilder header) { - String sep = System.lineSeparator(); + String sep = System.lineSeparator(); - header.append("Restricted area configuration"); - header.append(sep) - .append(sep) - .append("Configures restricted areas where you cannot get experience or money").append(sep) - .append("when performing a job.").append(sep).append(sep) - .append("The multiplier changes the experience/money gains in an area.").append(sep) - .append("A multiplier of 0.0 means no bonus, while 0.5 means you will get 50% more the normal income").append(sep) - .append("While -0.5 means that you will get 50% less the normal income").append(sep) - .append(sep) - .append("restrictedareas:").append(sep) - .append(" area1:").append(sep) - .append(" world: 'world'").append(sep) - .append(" multiplier: 0.0").append(sep) - .append(" point1:").append(sep) - .append(" x: 125").append(sep) - .append(" y: 0").append(sep) - .append(" z: 125").append(sep) - .append(" point2:").append(sep) - .append(" x: 150").append(sep) - .append(" y: 100").append(sep) - .append(" z: 150").append(sep) - .append(" area2:").append(sep) - .append(" world: 'world_nether'").append(sep) - .append(" multiplier: 0.0").append(sep) - .append(" point1:").append(sep) - .append(" x: -100").append(sep) - .append(" y: 0").append(sep) - .append(" z: -100").append(sep) - .append(" point2:").append(sep) - .append(" x: -150").append(sep) - .append(" y: 100").append(sep) - .append(" z: -150"); - return header; + header.append("Restricted area configuration"); + header.append(sep) + .append(sep) + .append("Configures restricted areas where you cannot get experience or money").append(sep) + .append("when performing a job.").append(sep).append(sep) + .append("The multiplier changes the experience/money gains in an area.").append(sep) + .append("A multiplier of 0.0 means no bonus, while 0.5 means you will get 50% more the normal income").append(sep) + .append("While -0.5 means that you will get 50% less the normal income").append(sep) + .append(sep) + .append("restrictedareas:").append(sep) + .append(" area1:").append(sep) + .append(" world: 'world'").append(sep) + .append(" multiplier: 0.0").append(sep) + .append(" point1:").append(sep) + .append(" x: 125").append(sep) + .append(" y: 0").append(sep) + .append(" z: 125").append(sep) + .append(" point2:").append(sep) + .append(" x: 150").append(sep) + .append(" y: 100").append(sep) + .append(" z: 150").append(sep) + .append(" area2:").append(sep) + .append(" world: 'world_nether'").append(sep) + .append(" multiplier: 0.0").append(sep) + .append(" point1:").append(sep) + .append(" x: -100").append(sep) + .append(" y: 0").append(sep) + .append(" z: -100").append(sep) + .append(" point2:").append(sep) + .append(" x: -150").append(sep) + .append(" y: 100").append(sep) + .append(" z: -150"); + return header; } /** @@ -196,47 +198,47 @@ public class RestrictedAreaManager { * loads from Jobs/restrictedAreas.yml */ public void load() { - restrictedAreas.clear(); + restrictedAreas.clear(); - File f = new File(Jobs.getFolder(), "restrictedAreas.yml"); - YamlConfiguration conf = YamlConfiguration.loadConfiguration(f); + File f = new File(Jobs.getFolder(), "restrictedAreas.yml"); + YamlConfiguration conf = YamlConfiguration.loadConfiguration(f); - conf.options().indent(2); - conf.options().copyDefaults(true); + conf.options().indent(2); + conf.options().copyDefaults(true); - StringBuilder header = addHeader(new StringBuilder()); - conf.options().header(header.toString()); + StringBuilder header = addHeader(new StringBuilder()); + conf.options().header(header.toString()); - ConfigurationSection areaSection = conf.getConfigurationSection("restrictedareas"); - if (areaSection != null) { - for (String areaKey : areaSection.getKeys(false)) { - double multiplier = areaSection.getDouble(areaKey + ".multiplier"); + ConfigurationSection areaSection = conf.getConfigurationSection("restrictedareas"); + if (areaSection != null) { + for (String areaKey : areaSection.getKeys(false)) { + double multiplier = areaSection.getDouble(areaKey + ".multiplier"); - if (areaSection.isBoolean(areaKey + ".WG")) { - addNew(new RestrictedArea(areaKey, areaKey, multiplier)); - worldGuardArea = true; - } else { - World world = Bukkit.getServer().getWorld(areaSection.getString(areaKey + ".world", "")); - if (world == null) - continue; - Location point1 = new Location(world, areaSection.getDouble(areaKey + ".point1.x"), areaSection.getDouble(areaKey - + ".point1.y"), areaSection.getDouble(areaKey + ".point1.z")); + if (areaSection.isBoolean(areaKey + ".WG")) { + addNew(new RestrictedArea(areaKey, areaKey, multiplier)); + worldGuardArea = true; + } else { + World world = Bukkit.getServer().getWorld(areaSection.getString(areaKey + ".world", "")); + if (world == null) + continue; + Location point1 = new Location(world, areaSection.getDouble(areaKey + ".point1.x"), areaSection.getDouble(areaKey + + ".point1.y"), areaSection.getDouble(areaKey + ".point1.z")); - Location point2 = new Location(world, areaSection.getDouble(areaKey + ".point2.x"), areaSection.getDouble(areaKey - + ".point2.y"), areaSection.getDouble(areaKey + ".point2.z")); - addNew(new RestrictedArea(areaKey, new CuboidArea(point1, point2), multiplier)); - } - } - } + Location point2 = new Location(world, areaSection.getDouble(areaKey + ".point2.x"), areaSection.getDouble(areaKey + + ".point2.y"), areaSection.getDouble(areaKey + ".point2.z")); + addNew(new RestrictedArea(areaKey, new CuboidArea(point1, point2), multiplier)); + } + } + } - int size = restrictedAreas.size(); - if (size > 0) - Jobs.consoleMsg("&e[Jobs] Loaded " + size + " restricted areas!"); + int size = restrictedAreas.size(); + if (size > 0) + CMIMessages.consoleMessage("&e[Jobs] Loaded " + size + " restricted areas!"); - try { - conf.save(f); - } catch (IOException e) { - e.printStackTrace(); - } + try { + conf.save(f); + } catch (IOException e) { + e.printStackTrace(); + } } } diff --git a/src/main/java/com/gamingmesh/jobs/config/RestrictedBlockManager.java b/src/main/java/com/gamingmesh/jobs/config/RestrictedBlockManager.java index da7584d0..48d75bb3 100644 --- a/src/main/java/com/gamingmesh/jobs/config/RestrictedBlockManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/RestrictedBlockManager.java @@ -8,6 +8,7 @@ import com.gamingmesh.jobs.Jobs; import net.Zrips.CMILib.FileHandler.ConfigReader; import net.Zrips.CMILib.Items.CMIItemStack; import net.Zrips.CMILib.Items.CMIMaterial; +import net.Zrips.CMILib.Messages.CMIMessages; public class RestrictedBlockManager { @@ -18,69 +19,69 @@ public class RestrictedBlockManager { * loads from Jobs/restrictedBlocks.yml */ public void load() { - if (!Jobs.getGCManager().useBlockProtection) - return; + if (!Jobs.getGCManager().useBlockProtection) + return; - ConfigReader cfg = null; - try { - cfg = new ConfigReader(Jobs.getInstance(), "restrictedBlocks.yml"); - } catch (Exception e) { - e.printStackTrace(); - } + ConfigReader cfg = null; + try { + cfg = new ConfigReader(Jobs.getInstance(), "restrictedBlocks.yml"); + } catch (Exception e) { + e.printStackTrace(); + } - if (cfg == null) - return; + if (cfg == null) + return; - cfg.addComment("blocksTimer", "Block protected by timer in sec", - "Category name can be any you like to be easily recognized", - "id can be actual block id (use /jobs blockinfo to get correct id) or use block name", - "By setting time to -1 will keep block protected until global cleanup, mainly used for structure blocks like diamond", - "Set to 0 if you want to disable protection on specific blocks", - "If you want to have default value for all blocks, enable GlobalBlockTimer in generalConfig file"); + cfg.addComment("blocksTimer", "Block protected by timer in sec", + "Category name can be any you like to be easily recognized", + "id can be actual block id (use /jobs blockinfo to get correct id) or use block name", + "By setting time to -1 will keep block protected until global cleanup, mainly used for structure blocks like diamond", + "Set to 0 if you want to disable protection on specific blocks", + "If you want to have default value for all blocks, enable GlobalBlockTimer in generalConfig file"); - org.bukkit.configuration.ConfigurationSection section = cfg.getC().getConfigurationSection("blocksTimer"); - if (section != null) { - for (String one : section.getKeys(false)) { - if ((section.isString(one + ".id") || section.isInt(one + ".id")) && section.isInt(one + ".cd")) { - CMIItemStack cm = CMIMaterial.get(section.getString(one + ".id")).newCMIItemStack(); - CMIMaterial mat = cm == null ? null : cm.getCMIType(); + org.bukkit.configuration.ConfigurationSection section = cfg.getC().getConfigurationSection("blocksTimer"); + if (section != null) { + for (String one : section.getKeys(false)) { + if ((section.isString(one + ".id") || section.isInt(one + ".id")) && section.isInt(one + ".cd")) { + CMIItemStack cm = CMIMaterial.get(section.getString(one + ".id")).newCMIItemStack(); + CMIMaterial mat = cm == null ? null : cm.getCMIType(); - if (mat == null || !mat.isBlock()) { - Jobs.consoleMsg("&eYour defined (&6" + one + "&e) protected block id/name is not correct!"); - continue; - } + if (mat == null || !mat.isBlock()) { + CMIMessages.consoleMessage("&eYour defined (&6" + one + "&e) protected block id/name is not correct!"); + continue; + } - int cd = section.getInt(one + ".cd"); - restrictedBlocksTimer.put(mat, cd); - cfg.set("blocksTimer." + mat.name(), cd); - } else { - CMIMaterial mat = CMIMaterial.get(one); - if (mat == CMIMaterial.NONE) - continue; + int cd = section.getInt(one + ".cd"); + restrictedBlocksTimer.put(mat, cd); + cfg.set("blocksTimer." + mat.name(), cd); + } else { + CMIMaterial mat = CMIMaterial.get(one); + if (mat == CMIMaterial.NONE) + continue; - int timer = cfg.get("blocksTimer." + one, -99); - if (timer == -99) { - cfg.set("blocksTimer." + one, null); - continue; - } + int timer = cfg.get("blocksTimer." + one, -99); + if (timer == -99) { + cfg.set("blocksTimer." + one, null); + continue; + } - cfg.set("blocksTimer." + one, null); - cfg.get("blocksTimer." + mat.name(), timer); + cfg.set("blocksTimer." + one, null); + cfg.get("blocksTimer." + mat.name(), timer); - if (!mat.isBlock()) { - Jobs.consoleMsg("&e[Jobs] Your defined (" + one + ") protected block id/name is not correct!"); - continue; - } + if (!mat.isBlock()) { + CMIMessages.consoleMessage("&e[Jobs] Your defined (" + one + ") protected block id/name is not correct!"); + continue; + } - restrictedBlocksTimer.put(mat, timer); - } - } - } + restrictedBlocksTimer.put(mat, timer); + } + } + } - int size = restrictedBlocksTimer.size(); - if (size > 0) - Jobs.consoleMsg("&eLoaded &6" + size + " &eprotected blocks timers"); + int size = restrictedBlocksTimer.size(); + if (size > 0) + CMIMessages.consoleMessage("&eLoaded &6" + size + " &eprotected blocks timers"); - cfg.save(); + cfg.save(); } } diff --git a/src/main/java/com/gamingmesh/jobs/config/ScheduleManager.java b/src/main/java/com/gamingmesh/jobs/config/ScheduleManager.java index 4c9cef7f..e2a33536 100644 --- a/src/main/java/com/gamingmesh/jobs/config/ScheduleManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/ScheduleManager.java @@ -7,20 +7,20 @@ import java.util.Calendar; import java.util.Date; import java.util.List; -import com.gamingmesh.jobs.api.JobsScheduleStartEvent; -import com.gamingmesh.jobs.api.JobsScheduleStopEvent; import org.bukkit.Bukkit; import org.bukkit.configuration.ConfigurationSection; import org.bukkit.configuration.file.YamlConfiguration; import org.bukkit.scheduler.BukkitTask; import com.gamingmesh.jobs.Jobs; +import com.gamingmesh.jobs.api.JobsScheduleStartEvent; +import com.gamingmesh.jobs.api.JobsScheduleStopEvent; import com.gamingmesh.jobs.container.BoostMultiplier; import com.gamingmesh.jobs.container.CurrencyType; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.Schedule; -import net.Zrips.CMILib.Logs.CMIDebug; +import net.Zrips.CMILib.Messages.CMIMessages; public class ScheduleManager { @@ -180,7 +180,7 @@ public class ScheduleManager { !path.isList("Days") && !path.isString("Days") || !path.isList("Jobs") && !path.isString("Jobs")) { - Jobs.consoleMsg("&cIncorect scheduler format detected for " + oneSection + " scheduler!"); + CMIMessages.consoleMessage("&cIncorect scheduler format detected for " + oneSection + " scheduler!"); continue; } @@ -228,6 +228,6 @@ public class ScheduleManager { } if (!BOOSTSCHEDULE.isEmpty()) - Jobs.consoleMsg("&eLoaded " + BOOSTSCHEDULE.size() + " schedulers!"); + CMIMessages.consoleMessage("&eLoaded " + BOOSTSCHEDULE.size() + " schedulers!"); } } diff --git a/src/main/java/com/gamingmesh/jobs/config/ShopManager.java b/src/main/java/com/gamingmesh/jobs/config/ShopManager.java index b0894df1..75530ae5 100644 --- a/src/main/java/com/gamingmesh/jobs/config/ShopManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/ShopManager.java @@ -497,6 +497,6 @@ public class ShopManager { } if (!list.isEmpty()) - Jobs.consoleMsg("&eLoaded &6" + list.size() + " &eshop items"); + CMIMessages.consoleMessage("&eLoaded &6" + list.size() + " &eshop items"); } } diff --git a/src/main/java/com/gamingmesh/jobs/config/TitleManager.java b/src/main/java/com/gamingmesh/jobs/config/TitleManager.java index d46b0293..cdae3322 100644 --- a/src/main/java/com/gamingmesh/jobs/config/TitleManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/TitleManager.java @@ -11,6 +11,7 @@ import com.gamingmesh.jobs.container.Title; import net.Zrips.CMILib.Colors.CMIChatColor; import net.Zrips.CMILib.FileHandler.ConfigReader; +import net.Zrips.CMILib.Messages.CMIMessages; public class TitleManager { @@ -157,6 +158,6 @@ public class TitleManager { int size = titles.size(); if (size > 0) - Jobs.consoleMsg("&eLoaded &6" + size + " &etitles"); + CMIMessages.consoleMessage("&eLoaded &6" + size + " &etitles"); } } diff --git a/src/main/java/com/gamingmesh/jobs/container/JobProgression.java b/src/main/java/com/gamingmesh/jobs/container/JobProgression.java index 6cce09dc..247e3ac9 100644 --- a/src/main/java/com/gamingmesh/jobs/container/JobProgression.java +++ b/src/main/java/com/gamingmesh/jobs/container/JobProgression.java @@ -22,9 +22,9 @@ import java.util.HashMap; import java.util.Map; import com.gamingmesh.jobs.Jobs; -import com.gamingmesh.jobs.stuff.TimeManage; import com.gamingmesh.jobs.stuff.Util; +import net.Zrips.CMILib.Container.CMINumber; import net.Zrips.CMILib.Time.CMITimeManager; public class JobProgression { @@ -146,7 +146,7 @@ public class JobProgression { */ public String getLevelFormatted() { if (Jobs.getGCManager().RomanNumbers) - return Util.toRoman(level); + return CMINumber.toRoman(level); return String.valueOf(level); } diff --git a/src/main/java/com/gamingmesh/jobs/container/Log.java b/src/main/java/com/gamingmesh/jobs/container/Log.java index cec97c5a..998c54b8 100644 --- a/src/main/java/com/gamingmesh/jobs/container/Log.java +++ b/src/main/java/com/gamingmesh/jobs/container/Log.java @@ -3,7 +3,7 @@ package com.gamingmesh.jobs.container; import java.util.HashMap; import java.util.Map; -import com.gamingmesh.jobs.stuff.TimeManage; +import net.Zrips.CMILib.Time.CMITimeManager; public final class Log { @@ -36,7 +36,7 @@ public final class Log { } public void setDate() { - this.day = TimeManage.timeInInt(); + this.day = CMITimeManager.timeInInt(); } public int getDate() { diff --git a/src/main/java/com/gamingmesh/jobs/container/QuestProgression.java b/src/main/java/com/gamingmesh/jobs/container/QuestProgression.java index 4e59859e..6829e3bc 100644 --- a/src/main/java/com/gamingmesh/jobs/container/QuestProgression.java +++ b/src/main/java/com/gamingmesh/jobs/container/QuestProgression.java @@ -4,15 +4,12 @@ import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; -import com.gamingmesh.jobs.actions.EnchantActionInfo; -import com.gamingmesh.jobs.stuff.Util; - -import net.Zrips.CMILib.Logs.CMIDebug; - import org.bukkit.Bukkit; import org.bukkit.event.server.ServerCommandEvent; import com.gamingmesh.jobs.Jobs; +import com.gamingmesh.jobs.actions.EnchantActionInfo; +import com.gamingmesh.jobs.stuff.Util; public class QuestProgression { diff --git a/src/main/java/com/gamingmesh/jobs/container/blockOwnerShip/BlockOwnerShip.java b/src/main/java/com/gamingmesh/jobs/container/blockOwnerShip/BlockOwnerShip.java index 8ae0fbe3..2717f1d5 100644 --- a/src/main/java/com/gamingmesh/jobs/container/blockOwnerShip/BlockOwnerShip.java +++ b/src/main/java/com/gamingmesh/jobs/container/blockOwnerShip/BlockOwnerShip.java @@ -24,6 +24,7 @@ import com.gamingmesh.jobs.stuff.blockLoc; import net.Zrips.CMILib.Container.CMILocation; import net.Zrips.CMILib.Items.CMIMaterial; +import net.Zrips.CMILib.Messages.CMIMessages; public class BlockOwnerShip { @@ -380,7 +381,7 @@ public class BlockOwnerShip { } if (total > 0) { - Jobs.consoleMsg("&eLoaded &6" + total + " " + path.toLowerCase() + " &efor reassigning."); + CMIMessages.consoleMessage("&eLoaded &6" + total + " " + path.toLowerCase() + " &efor reassigning."); } } diff --git a/src/main/java/com/gamingmesh/jobs/dao/JobsDAO.java b/src/main/java/com/gamingmesh/jobs/dao/JobsDAO.java index 191832f7..0ec3d9ec 100644 --- a/src/main/java/com/gamingmesh/jobs/dao/JobsDAO.java +++ b/src/main/java/com/gamingmesh/jobs/dao/JobsDAO.java @@ -41,10 +41,10 @@ import com.gamingmesh.jobs.container.PlayerPoints; import com.gamingmesh.jobs.container.TopList; import com.gamingmesh.jobs.dao.JobsManager.DataBaseType; import com.gamingmesh.jobs.economy.PaymentData; -import com.gamingmesh.jobs.stuff.TimeManage; import com.gamingmesh.jobs.stuff.Util; import net.Zrips.CMILib.Messages.CMIMessages; +import net.Zrips.CMILib.Time.CMITimeManager; public abstract class JobsDAO { @@ -819,7 +819,7 @@ public abstract class JobsDAO { PreparedStatement prest = null; ResultSet res = null; try { - int time = TimeManage.timeInInt(); + int time = CMITimeManager.timeInInt(); prest = conn.prepareStatement("SELECT * FROM `" + DBTables.LogTable.getTableName() + "` WHERE `" + LogTableFields.time.getCollumn() + "` = ? ;"); prest.setInt(1, time); res = prest.executeQuery(); @@ -1017,9 +1017,9 @@ public abstract class JobsDAO { // Lets convert old fields if (!converted) { Bukkit.getServer().getScheduler().runTaskLater(plugin, () -> { - Jobs.consoleMsg("&6[Jobs] Converting to new database format"); + CMIMessages.consoleMessage("&6[Jobs] Converting to new database format"); convertID(); - Jobs.consoleMsg("&6[Jobs] Converted to new database format"); + CMIMessages.consoleMessage("&6[Jobs] Converted to new database format"); converted = true; }, 60L); } @@ -2311,7 +2311,7 @@ public abstract class JobsDAO { PreparedStatement prest = null; ResultSet res = null; try { - int time = TimeManage.timeInInt(); + int time = CMITimeManager.timeInInt(); prest = conn.prepareStatement("SELECT * FROM `" + DBTables.LogTable.getTableName() + "` WHERE `" + LogTableFields.userid.getCollumn() + "` = ? AND `" + LogTableFields.time.getCollumn() + "` = ? ;"); prest.setInt(1, player.getUserId()); @@ -2508,12 +2508,12 @@ public abstract class JobsDAO { i++; if (ii++ >= 100000) { - Jobs.consoleMsg("&6[Jobs] Loading (" + i + ") BP"); + CMIMessages.consoleMessage("&6[Jobs] Loading (" + i + ") BP"); ii = 0; } } if (i > 0) { - Jobs.consoleMsg("&e[Jobs] Loaded " + i + " block protection entries. " + (System.currentTimeMillis() - timer) + "ms"); + CMIMessages.consoleMessage("&e[Jobs] Loaded " + i + " block protection entries. " + (System.currentTimeMillis() - timer) + "ms"); } } catch (SQLException e) { e.printStackTrace(); @@ -2577,7 +2577,7 @@ public abstract class JobsDAO { conn.setAutoCommit(true); if (i > 0) - Jobs.consoleMsg("&e[Jobs] Saved " + i + " new explorer entries."); + CMIMessages.consoleMessage("&e[Jobs] Saved " + i + " new explorer entries."); } catch (SQLException e) { e.printStackTrace(); } finally { @@ -2624,7 +2624,7 @@ public abstract class JobsDAO { conn.setAutoCommit(true); if (i > 0) - Jobs.consoleMsg("&e[Jobs] Updated " + i + " explorer entries."); + CMIMessages.consoleMessage("&e[Jobs] Updated " + i + " explorer entries."); } catch (SQLException e) { e.printStackTrace(); diff --git a/src/main/java/com/gamingmesh/jobs/dao/JobsManager.java b/src/main/java/com/gamingmesh/jobs/dao/JobsManager.java index 5071a0c3..cb47de79 100644 --- a/src/main/java/com/gamingmesh/jobs/dao/JobsManager.java +++ b/src/main/java/com/gamingmesh/jobs/dao/JobsManager.java @@ -6,7 +6,7 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.container.LoadStatus; import net.Zrips.CMILib.FileHandler.ConfigReader; -import net.Zrips.CMILib.Logs.CMIDebug; +import net.Zrips.CMILib.Messages.CMIMessages; public class JobsManager { private JobsDAO dao; @@ -70,9 +70,9 @@ public class JobsManager { public void start() { if (Jobs.getJobsDAO() != null) { - Jobs.consoleMsg("&eClosing existing database connection..."); + CMIMessages.consoleMessage("&eClosing existing database connection..."); Jobs.getJobsDAO().closeConnections(); - Jobs.consoleMsg("&eClosed"); + CMIMessages.consoleMessage("&eClosed"); } ConfigReader c = Jobs.getGCManager().getConfig(); @@ -100,7 +100,7 @@ public class JobsManager { } } else { if (!storageMethod.equalsIgnoreCase("sqlite")) { - Jobs.consoleMsg("&cInvalid storage method! Changing method to sqlite!"); + CMIMessages.consoleMessage("&cInvalid storage method! Changing method to sqlite!"); c.set("storage.method", "sqlite"); } diff --git a/src/main/java/com/gamingmesh/jobs/dao/JobsMySQL.java b/src/main/java/com/gamingmesh/jobs/dao/JobsMySQL.java index fa84c7c6..61856d49 100644 --- a/src/main/java/com/gamingmesh/jobs/dao/JobsMySQL.java +++ b/src/main/java/com/gamingmesh/jobs/dao/JobsMySQL.java @@ -8,7 +8,7 @@ import java.sql.Statement; import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.dao.JobsManager.DataBaseType; -import net.Zrips.CMILib.Logs.CMIDebug; +import net.Zrips.CMILib.Messages.CMIMessages; public class JobsMySQL extends JobsDAO { @@ -52,7 +52,7 @@ public class JobsMySQL extends JobsDAO { protected void checkUpdate() throws SQLException { JobsConnection conn = getConnection(); if (conn == null) { - Jobs.consoleMsg("&cCould not run database updates! Could not connect to MySQL!"); + CMIMessages.consoleMessage("&cCould not run database updates! Could not connect to MySQL!"); return; } @@ -77,7 +77,7 @@ public class JobsMySQL extends JobsDAO { @Override public boolean createTable(String query) { if (query == null || query.isEmpty()) { - Jobs.consoleMsg("&cCould not create table: query is empty or null."); + CMIMessages.consoleMessage("&cCould not create table: query is empty or null."); return false; } JobsConnection conn = getConnection(); @@ -88,7 +88,7 @@ public class JobsMySQL extends JobsDAO { statement = conn.createStatement(); statement.execute(query); } catch (SQLException e) { - Jobs.consoleMsg("&cCould not create table, SQLException: " + e.getMessage()); + CMIMessages.consoleMessage("&cCould not create table, SQLException: " + e.getMessage()); return false; } finally { close(statement); @@ -111,7 +111,7 @@ public class JobsMySQL extends JobsDAO { tables.close(); return false; } catch (SQLException e) { - Jobs.consoleMsg("Not a table |" + "SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME ='" + table + "';" + "|"); + CMIMessages.consoleMessage("Not a table |" + "SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME ='" + table + "';" + "|"); } PreparedStatement insert = null; @@ -125,7 +125,7 @@ public class JobsMySQL extends JobsDAO { return true; } } catch (SQLException e) { - Jobs.consoleMsg("Not a table |" + "SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME ='" + table + "';" + "|"); + CMIMessages.consoleMessage("Not a table |" + "SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME ='" + table + "';" + "|"); } finally { close(res); close(insert); @@ -140,14 +140,14 @@ public class JobsMySQL extends JobsDAO { try { statement = getConnection().createStatement(); } catch (SQLException e) { - Jobs.consoleMsg("&cCould not check if its collumn, SQLException: " + e.getMessage()); + CMIMessages.consoleMessage("&cCould not check if its collumn, SQLException: " + e.getMessage()); return false; } try { statement.executeQuery("SELECT `" + collumn + "` FROM `" + table + "`;"); return true; } catch (SQLException e) { - Jobs.consoleMsg("Not a collumn |" + "SELECT " + collumn + " FROM " + table + "|"); + CMIMessages.consoleMessage("Not a collumn |" + "SELECT " + collumn + " FROM " + table + "|"); return false; } finally { close(statement); @@ -160,11 +160,11 @@ public class JobsMySQL extends JobsDAO { try { statement = getConnection().createStatement(); } catch (SQLException e) { - Jobs.consoleMsg("&cCould not add new collumn, SQLException: " + e.getMessage()); + CMIMessages.consoleMessage("&cCould not add new collumn, SQLException: " + e.getMessage()); return false; } try { - Jobs.consoleMsg("Creating collumn |" + "ALTER TABLE `" + table + "` ADD COLUMN `" + collumn + "` " + type + ";" + "|"); + CMIMessages.consoleMessage("Creating collumn |" + "ALTER TABLE `" + table + "` ADD COLUMN `" + collumn + "` " + type + ";" + "|"); statement.executeUpdate("ALTER TABLE `" + table + "` ADD COLUMN `" + collumn + "` " + type + ";"); return true; } catch (SQLException e) { @@ -179,14 +179,14 @@ public class JobsMySQL extends JobsDAO { Statement statement = null; try { if (!isTable(table)) { - Jobs.consoleMsg("&cTable \"" + table + "\" does not exist."); + CMIMessages.consoleMessage("&cTable \"" + table + "\" does not exist."); return false; } statement = getConnection().createStatement(); statement.executeUpdate("DELETE FROM " + table + ";"); return true; } catch (SQLException e) { - Jobs.consoleMsg("&cCould not wipe table, SQLException: " + e.getMessage()); + CMIMessages.consoleMessage("&cCould not wipe table, SQLException: " + e.getMessage()); e.printStackTrace(); return false; } finally { @@ -199,14 +199,14 @@ public class JobsMySQL extends JobsDAO { Statement statement = null; try { if (!isTable(table)) { - Jobs.consoleMsg("&cTable \"" + table + "\" does not exist."); + CMIMessages.consoleMessage("&cTable \"" + table + "\" does not exist."); return false; } statement = getConnection().createStatement(); statement.executeUpdate("DROP TABLE IF EXISTS `" + table + "`;"); return true; } catch (SQLException e) { - Jobs.consoleMsg("&cCould not wipe table, SQLException: " + e.getMessage()); + CMIMessages.consoleMessage("&cCould not wipe table, SQLException: " + e.getMessage()); e.printStackTrace(); return false; } finally { diff --git a/src/main/java/com/gamingmesh/jobs/dao/JobsSQLite.java b/src/main/java/com/gamingmesh/jobs/dao/JobsSQLite.java index aafc7d59..537931f6 100644 --- a/src/main/java/com/gamingmesh/jobs/dao/JobsSQLite.java +++ b/src/main/java/com/gamingmesh/jobs/dao/JobsSQLite.java @@ -8,6 +8,8 @@ import java.sql.Statement; import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.dao.JobsManager.DataBaseType; +import net.Zrips.CMILib.Messages.CMIMessages; + public class JobsSQLite extends JobsDAO { public void initialize() { @@ -32,7 +34,7 @@ public class JobsSQLite extends JobsDAO { protected void checkUpdate() throws SQLException { JobsConnection conn = getConnection(); if (conn == null) { - Jobs.consoleMsg("&cCould not run database updates! Could not connect to MySQL!"); + CMIMessages.consoleMessage("&cCould not run database updates! Could not connect to MySQL!"); return; } @@ -59,7 +61,7 @@ public class JobsSQLite extends JobsDAO { Statement statement = null; try { if (query == null || query.isEmpty()) { - Jobs.consoleMsg("&cCould not create table: query is empty or null."); + CMIMessages.consoleMessage("&cCould not create table: query is empty or null."); return false; } @@ -67,7 +69,7 @@ public class JobsSQLite extends JobsDAO { statement.execute(query); return true; } catch (SQLException e) { - Jobs.consoleMsg("&cCould not create table, SQLException: " + e.getMessage()); + CMIMessages.consoleMessage("&cCould not create table, SQLException: " + e.getMessage()); return false; } finally { close(statement); @@ -85,7 +87,7 @@ public class JobsSQLite extends JobsDAO { tables.close(); return false; } catch (SQLException e) { - Jobs.consoleMsg("&cCould not check if table \"" + table + "\" exists, SQLException: " + e.getMessage()); + CMIMessages.consoleMessage("&cCould not check if table \"" + table + "\" exists, SQLException: " + e.getMessage()); return false; } } @@ -101,7 +103,7 @@ public class JobsSQLite extends JobsDAO { tables.close(); return false; } catch (SQLException e) { - Jobs.consoleMsg("&cCould not check if table \"" + table + "\" exists, SQLException: " + e.getMessage()); + CMIMessages.consoleMessage("&cCould not check if table \"" + table + "\" exists, SQLException: " + e.getMessage()); return false; } } @@ -112,7 +114,7 @@ public class JobsSQLite extends JobsDAO { try { statement = getConnection().createStatement(); } catch (SQLException e) { - Jobs.consoleMsg("&cCould not add new collumn, SQLException: " + e.getMessage()); + CMIMessages.consoleMessage("&cCould not add new collumn, SQLException: " + e.getMessage()); return false; } try { @@ -130,7 +132,7 @@ public class JobsSQLite extends JobsDAO { Statement statement = null; try { if (!isTable(table)) { - Jobs.consoleMsg("&cTable \"" + table + "\" does not exist."); + CMIMessages.consoleMessage("&cTable \"" + table + "\" does not exist."); return false; } statement = getConnection().createStatement(); @@ -139,7 +141,7 @@ public class JobsSQLite extends JobsDAO { } catch (SQLException e) { if (!(e.getMessage().toLowerCase().contains("locking") || e.getMessage().toLowerCase().contains("locked")) && !e.toString().contains("not return ResultSet")) - Jobs.consoleMsg("&cError in wipeTable() query: " + e); + CMIMessages.consoleMessage("&cError in wipeTable() query: " + e); return false; } finally { close(statement); @@ -151,7 +153,7 @@ public class JobsSQLite extends JobsDAO { Statement statement = null; try { if (!isTable(table)) { - Jobs.consoleMsg("&cTable \"" + table + "\" does not exist."); + CMIMessages.consoleMessage("&cTable \"" + table + "\" does not exist."); return false; } statement = getConnection().createStatement(); @@ -160,7 +162,7 @@ public class JobsSQLite extends JobsDAO { } catch (SQLException e) { if (!(e.getMessage().toLowerCase().contains("locking") || e.getMessage().toLowerCase().contains("locked")) && !e.toString().contains("not return ResultSet")) - Jobs.consoleMsg("&cError in dropTable() query: " + e); + CMIMessages.consoleMessage("&cError in dropTable() query: " + e); return false; } finally { close(statement); diff --git a/src/main/java/com/gamingmesh/jobs/hooks/HookManager.java b/src/main/java/com/gamingmesh/jobs/hooks/HookManager.java index 3f6c8868..7f5c65c1 100644 --- a/src/main/java/com/gamingmesh/jobs/hooks/HookManager.java +++ b/src/main/java/com/gamingmesh/jobs/hooks/HookManager.java @@ -15,6 +15,8 @@ import com.gamingmesh.jobs.hooks.WorldGuard.WorldGuardManager; import com.gamingmesh.jobs.hooks.stackMob.StackMobHandler; import com.gamingmesh.jobs.hooks.wildStacker.WildStackerHandler; +import net.Zrips.CMILib.Messages.CMIMessages; + public class HookManager { private static McMMOManager McMMOManager; @@ -88,7 +90,7 @@ public class HookManager { private static boolean setWorldGuard() { if (JobsHook.WorldGuard.isEnabled()) { worldGuardManager = new WorldGuardManager(); - Jobs.consoleMsg("&eWorldGuard detected."); + CMIMessages.consoleMessage("&eWorldGuard detected."); return true; } @@ -102,14 +104,14 @@ public class HookManager { try { Class.forName("io.lumine.xikage.mythicmobs.api.bukkit.BukkitAPIHelper"); MythicManager = new MythicMobs4(PLUGIN); - Jobs.consoleMsg("&eMythicMobs 4.x detected."); + CMIMessages.consoleMessage("&eMythicMobs 4.x detected."); } catch (ClassNotFoundException ex) { try { Class.forName("io.lumine.mythic.bukkit.BukkitAPIHelper"); MythicManager = new MythicMobs5(PLUGIN); - Jobs.consoleMsg("&eMythicMobs 5.x detected."); + CMIMessages.consoleMessage("&eMythicMobs 5.x detected."); } catch (ClassNotFoundException e) { - Jobs.consoleMsg("&cYour MythicMobs version is not supported by Jobs! Supported versions: 4.9.1+"); + CMIMessages.consoleMessage("&cYour MythicMobs version is not supported by Jobs! Supported versions: 4.9.1+"); } } } @@ -118,17 +120,17 @@ public class HookManager { try { Class.forName("com.gmail.nossr50.datatypes.skills.SuperAbilityType"); pm.registerEvents(new McMMO2_X_listener(), PLUGIN); - Jobs.consoleMsg("&eRegistered McMMO 2.x listener"); + CMIMessages.consoleMessage("&eRegistered McMMO 2.x listener"); } catch (ClassNotFoundException e) { pm.registerEvents(new McMMO1_X_listener(), PLUGIN); - Jobs.consoleMsg("&eRegistered McMMO 1.x listener"); + CMIMessages.consoleMessage("&eRegistered McMMO 1.x listener"); } } private static void setMyPetManager() { if (JobsHook.MyPet.isEnabled()) { myPetManager = new MyPetManager(); - Jobs.consoleMsg("&eMyPet detected."); + CMIMessages.consoleMessage("&eMyPet detected."); } } diff --git a/src/main/java/com/gamingmesh/jobs/hooks/McMMO/McMMOManager.java b/src/main/java/com/gamingmesh/jobs/hooks/McMMO/McMMOManager.java index e73576cf..3044e189 100644 --- a/src/main/java/com/gamingmesh/jobs/hooks/McMMO/McMMOManager.java +++ b/src/main/java/com/gamingmesh/jobs/hooks/McMMO/McMMOManager.java @@ -10,6 +10,8 @@ import org.bukkit.plugin.Plugin; import com.gamingmesh.jobs.Jobs; import com.gmail.nossr50.datatypes.skills.SuperAbilityType; +import net.Zrips.CMILib.Messages.CMIMessages; + public class McMMOManager { public boolean mcMMOPresent = false; @@ -100,13 +102,13 @@ public class McMMOManager { mcMMOPresent = false; } if (!mcMMOPresent) - Jobs.consoleMsg("&6mcMMO was found - &cBut your McMMO version is outdated, please update for full support."); + CMIMessages.consoleMessage("&6mcMMO was found - &cBut your McMMO version is outdated, please update for full support."); // Still enabling event listener for repair return true; } - Jobs.consoleMsg("&6mcMMO" + McMMO.getDescription().getVersion() + " was found - Enabling capabilities."); + CMIMessages.consoleMessage("&6mcMMO" + McMMO.getDescription().getVersion() + " was found - Enabling capabilities."); return true; } diff --git a/src/main/java/com/gamingmesh/jobs/hooks/MythicMobs/MythicMobs4.java b/src/main/java/com/gamingmesh/jobs/hooks/MythicMobs/MythicMobs4.java index f189e022..13818813 100644 --- a/src/main/java/com/gamingmesh/jobs/hooks/MythicMobs/MythicMobs4.java +++ b/src/main/java/com/gamingmesh/jobs/hooks/MythicMobs/MythicMobs4.java @@ -8,6 +8,7 @@ import com.gamingmesh.jobs.Jobs; import io.lumine.xikage.mythicmobs.MythicMobs; import io.lumine.xikage.mythicmobs.api.bukkit.BukkitAPIHelper; import io.lumine.xikage.mythicmobs.mobs.MythicMob; +import net.Zrips.CMILib.Messages.CMIMessages; public class MythicMobs4 implements MythicMobInterface { @@ -40,12 +41,12 @@ public class MythicMobs4 implements MythicMobInterface { Class.forName("io.lumine.xikage.mythicmobs.MythicMobs"); } catch (ClassNotFoundException e) { // Disabling - Jobs.consoleMsg("&e[Jobs] &6MythicMobs was found - &cBut your version is outdated, please update for full support."); + CMIMessages.consoleMessage("&e[Jobs] &6MythicMobs was found - &cBut your version is outdated, please update for full support."); return false; } apiHelper = ((MythicMobs) mm).getAPIHelper(); - Jobs.consoleMsg("&e[Jobs] &6MythicMobs was found - Enabling capabilities."); + CMIMessages.consoleMessage("&e[Jobs] &6MythicMobs was found - Enabling capabilities."); return true; } @@ -64,7 +65,7 @@ public class MythicMobs4 implements MythicMobInterface { if (!failed) { failed = true; e.printStackTrace(); - Jobs.consoleMsg("&cEncountered error when checking MythicMob entity name. Support for mythicMobs will be suspended for time beying. Please report this issue."); + CMIMessages.consoleMessage("&cEncountered error when checking MythicMob entity name. Support for mythicMobs will be suspended for time beying. Please report this issue."); } } diff --git a/src/main/java/com/gamingmesh/jobs/hooks/MythicMobs/MythicMobs5.java b/src/main/java/com/gamingmesh/jobs/hooks/MythicMobs/MythicMobs5.java index b842ab2d..21b17a48 100644 --- a/src/main/java/com/gamingmesh/jobs/hooks/MythicMobs/MythicMobs5.java +++ b/src/main/java/com/gamingmesh/jobs/hooks/MythicMobs/MythicMobs5.java @@ -8,6 +8,7 @@ import com.gamingmesh.jobs.Jobs; import io.lumine.mythic.api.mobs.MythicMob; import io.lumine.mythic.bukkit.BukkitAPIHelper; import io.lumine.mythic.bukkit.MythicBukkit; +import net.Zrips.CMILib.Messages.CMIMessages; //import io.lumine.xikage.mythicmobs.MythicMobs; //import io.lumine.xikage.mythicmobs.api.bukkit.BukkitAPIHelper; @@ -44,12 +45,12 @@ public class MythicMobs5 implements MythicMobInterface { Class.forName("io.lumine.mythic.bukkit.events.MythicMobDeathEvent"); } catch (ClassNotFoundException e) { // Disabling - Jobs.consoleMsg("&e[Jobs] &6MythicMobs was found - &cBut your version is outdated, please update for full support."); + CMIMessages.consoleMessage("&e[Jobs] &6MythicMobs was found - &cBut your version is outdated, please update for full support."); return false; } apiHelper = ((MythicBukkit) mm).getAPIHelper(); - Jobs.consoleMsg("&e[Jobs] &6MythicMobs was found - Enabling capabilities."); + CMIMessages.consoleMessage("&e[Jobs] &6MythicMobs was found - Enabling capabilities."); return true; } @@ -68,7 +69,7 @@ public class MythicMobs5 implements MythicMobInterface { if (!failed) { failed = true; e.printStackTrace(); - Jobs.consoleMsg("&cEncountered error when checking MythicMob entity name. Support for mythicMobs will be suspended for time beying. Please report this issue."); + CMIMessages.consoleMessage("&cEncountered error when checking MythicMob entity name. Support for mythicMobs will be suspended for time beying. Please report this issue."); } } diff --git a/src/main/java/com/gamingmesh/jobs/i18n/Language.java b/src/main/java/com/gamingmesh/jobs/i18n/Language.java index 2b3b9420..09a28ad0 100644 --- a/src/main/java/com/gamingmesh/jobs/i18n/Language.java +++ b/src/main/java/com/gamingmesh/jobs/i18n/Language.java @@ -31,6 +31,7 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.config.YmlMaker; import net.Zrips.CMILib.Colors.CMIChatColor; +import net.Zrips.CMILib.Messages.CMIMessages; public class Language { @@ -71,8 +72,8 @@ public class Language { else msg = customlocale.isString(key) ? CMIChatColor.translate(customlocale.getString(key)) : missing; } catch (Exception e) { - Jobs.consoleMsg("&e[Jobs] &2Can't read language file for: " + key); - Jobs.consoleMsg(e.getLocalizedMessage()); + CMIMessages.consoleMessage("&e[Jobs] &2Can't read language file for: " + key); + CMIMessages.consoleMessage(e.getLocalizedMessage()); return ""; } @@ -96,8 +97,8 @@ public class Language { msg += one; } } catch (Exception e) { - Jobs.consoleMsg("&e[Jobs] &2Can't read language file for: " + key); - Jobs.consoleMsg(e.getLocalizedMessage()); + CMIMessages.consoleMessage("&e[Jobs] &2Can't read language file for: " + key); + CMIMessages.consoleMessage(e.getLocalizedMessage()); return ""; } } diff --git a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java index 8c452879..7e5b3aa0 100644 --- a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java +++ b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java @@ -398,7 +398,7 @@ public final class JobsPaymentListener implements Listener { if (player == null) return; - if (Jobs.getGCManager().blockOwnershipRange > 0 && Util.getDistance(player.getLocation(), block.getLocation()) > Jobs.getGCManager().blockOwnershipRange) + if (Jobs.getGCManager().blockOwnershipRange > 0 && CMILocation.getDistance(player.getLocation(), block.getLocation()) > Jobs.getGCManager().blockOwnershipRange) return; if (!Jobs.getPermissionHandler().hasWorldPermission(player)) @@ -1222,7 +1222,7 @@ public final class JobsPaymentListener implements Listener { if (bos.isDisabled(uuid, block.getLocation())) return; - if (Jobs.getGCManager().blockOwnershipRange > 0 && Util.getDistance(player.getLocation(), block.getLocation()) > Jobs.getGCManager().blockOwnershipRange) + if (Jobs.getGCManager().blockOwnershipRange > 0 && CMILocation.getDistance(player.getLocation(), block.getLocation()) > Jobs.getGCManager().blockOwnershipRange) return; if (!Jobs.getPermissionHandler().hasWorldPermission(player)) diff --git a/src/main/java/com/gamingmesh/jobs/stuff/Loging.java b/src/main/java/com/gamingmesh/jobs/stuff/Loging.java index a2c8f9e6..9b36a9db 100644 --- a/src/main/java/com/gamingmesh/jobs/stuff/Loging.java +++ b/src/main/java/com/gamingmesh/jobs/stuff/Loging.java @@ -8,6 +8,8 @@ import com.gamingmesh.jobs.container.CurrencyType; import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.container.Log; +import net.Zrips.CMILib.Time.CMITimeManager; + public class Loging { public void recordToLog(JobsPlayer jPlayer, ActionInfo info, Map amounts) { @@ -17,7 +19,7 @@ public class Loging { public void recordToLog(JobsPlayer jPlayer, String actionName, String item, Map amounts) { Map logList = jPlayer.getLog(); Log l = logList.values().stream().findFirst().orElse(null); - if (l != null && TimeManage.timeInInt() != l.getDate()) { + if (l != null && CMITimeManager.timeInInt() != l.getDate()) { Jobs.getJobsDAO().saveLog(jPlayer); jPlayer.getLog().clear(); } diff --git a/src/main/java/com/gamingmesh/jobs/stuff/PerformCommands.java b/src/main/java/com/gamingmesh/jobs/stuff/PerformCommands.java deleted file mode 100644 index c459b53a..00000000 --- a/src/main/java/com/gamingmesh/jobs/stuff/PerformCommands.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.gamingmesh.jobs.stuff; - -import org.bukkit.Bukkit; - -import com.gamingmesh.jobs.container.Job; -import com.gamingmesh.jobs.container.JobsPlayer; - -public final class PerformCommands { - - public static void performCommandsOnLeave(JobsPlayer jPlayer, Job job) { - String pName = jPlayer.getName(); - - for (String one : job.getCmdOnLeave()) { - Bukkit.dispatchCommand(Bukkit.getConsoleSender(), one.replace("[name]", pName).replace("[jobname]", job.getName())); - } - } - - public static void performCommandsOnJoin(JobsPlayer jPlayer, Job job) { - String pName = jPlayer.getName(); - - for (String one : job.getCmdOnJoin()) { - Bukkit.dispatchCommand(Bukkit.getConsoleSender(), one.replace("[name]", pName).replace("[jobname]", job.getName())); - } - } -} diff --git a/src/main/java/com/gamingmesh/jobs/stuff/Sorting.java b/src/main/java/com/gamingmesh/jobs/stuff/Sorting.java index cea5046d..8ef7f12f 100644 --- a/src/main/java/com/gamingmesh/jobs/stuff/Sorting.java +++ b/src/main/java/com/gamingmesh/jobs/stuff/Sorting.java @@ -11,49 +11,6 @@ import java.util.Map; import com.gamingmesh.jobs.container.LogAmounts; public class Sorting { - public static Map sortDESC(Map unsortMap) { - - // Convert Map to List - List> list = new LinkedList<>(unsortMap.entrySet()); - - // Sort list with comparator, to compare the Map values - Collections.sort(list, new Comparator>() { - @Override - public int compare(Map.Entry o1, Map.Entry o2) { - return (o2.getValue()).compareTo(o1.getValue()); - } - }); - - // Convert sorted map back to a Map - Map sortedMap = new LinkedHashMap<>(); - for (Iterator> it = list.iterator(); it.hasNext();) { - Map.Entry entry = it.next(); - sortedMap.put(entry.getKey(), entry.getValue()); - } - return sortedMap; - } - - public static Map sortDoubleDESC(Map unsortMap) { - - // Convert Map to List - List> list = new LinkedList<>(unsortMap.entrySet()); - - // Sort list with comparator, to compare the Map values - Collections.sort(list, new Comparator>() { - @Override - public int compare(Map.Entry o1, Map.Entry o2) { - return (o2.getValue()).compareTo(o1.getValue()); - } - }); - - // Convert sorted map back to a Map - Map sortedMap = new LinkedHashMap<>(); - for (Iterator> it = list.iterator(); it.hasNext();) { - Map.Entry entry = it.next(); - sortedMap.put(entry.getKey(), entry.getValue()); - } - return sortedMap; - } public static Map sortDoubleDESCByLog(Map unsortMap) { diff --git a/src/main/java/com/gamingmesh/jobs/stuff/TimeManage.java b/src/main/java/com/gamingmesh/jobs/stuff/TimeManage.java deleted file mode 100644 index 9410d2d5..00000000 --- a/src/main/java/com/gamingmesh/jobs/stuff/TimeManage.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.gamingmesh.jobs.stuff; - -import java.text.SimpleDateFormat; -import java.util.Calendar; - -public class TimeManage { - - public static int timeInInt() { - return timeInInt(System.currentTimeMillis()); - } - - public static int timeInInt(Long time) { - Calendar calendar = Calendar.getInstance(); - calendar.setTimeInMillis(time); - return Integer.valueOf(new SimpleDateFormat("YYMMdd").format(calendar.getTime())); - } -} diff --git a/src/main/java/com/gamingmesh/jobs/stuff/Util.java b/src/main/java/com/gamingmesh/jobs/stuff/Util.java index 50f47a2b..8f1be8a8 100644 --- a/src/main/java/com/gamingmesh/jobs/stuff/Util.java +++ b/src/main/java/com/gamingmesh/jobs/stuff/Util.java @@ -9,19 +9,15 @@ import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; -import java.util.TreeMap; import java.util.UUID; import java.util.jar.JarEntry; import java.util.jar.JarFile; -import com.gamingmesh.jobs.CMILib.CMIEnchantment; -import com.gamingmesh.jobs.actions.EnchantActionInfo; import org.bukkit.Bukkit; import org.bukkit.Color; import org.bukkit.Location; import org.bukkit.Material; import org.bukkit.OfflinePlayer; -import org.bukkit.World; import org.bukkit.attribute.Attribute; import org.bukkit.block.Block; import org.bukkit.entity.Entity; @@ -38,6 +34,8 @@ import org.bukkit.potion.PotionType; import org.bukkit.util.BlockIterator; import com.gamingmesh.jobs.Jobs; +import com.gamingmesh.jobs.CMILib.CMIEnchantment; +import com.gamingmesh.jobs.actions.EnchantActionInfo; import com.gamingmesh.jobs.container.JobsWorld; import net.Zrips.CMILib.Items.CMIMaterial; @@ -46,38 +44,12 @@ import net.Zrips.CMILib.Version.Version; @SuppressWarnings("deprecation") public final class Util { - private static Map jobsEditorMap = new HashMap<>(), questsEditorMap = new HashMap<>(); - + private static Map jobsEditorMap = new HashMap<>(); + private static Map questsEditorMap = new HashMap<>(); private static Map jobsWorlds = new HashMap<>(); public static final List LEAVECONFIRM = new ArrayList<>(); - private final static TreeMap map = new TreeMap(); - - static { - map.put(1000, "M"); - map.put(900, "CM"); - map.put(500, "D"); - map.put(400, "CD"); - map.put(100, "C"); - map.put(90, "XC"); - map.put(50, "L"); - map.put(40, "XL"); - map.put(10, "X"); - map.put(9, "IX"); - map.put(5, "V"); - map.put(4, "IV"); - map.put(1, "I"); - } - - public final static String toRoman(int number) { - int l = map.floorKey(number); - if (number == l) { - return map.get(number); - } - return map.get(l) + toRoman(number - l); - } - public static List getPistonRetractBlocks(BlockPistonRetractEvent event) { if (Version.isCurrentEqualOrHigher(Version.v1_8_R1)) { return new ArrayList<>(event.getBlocks()); @@ -88,17 +60,6 @@ public final class Util { return blocks; } - public static double getDistance(Location loc1, Location loc2) { - if (loc1 == null || loc2 == null || loc1.getWorld() != loc2.getWorld()) - return Integer.MAX_VALUE; - - try { - return loc1.distance(loc2); - } catch (Throwable e) { - return Integer.MAX_VALUE; - } - } - public static String getRealType(Entity entity) { if (Version.isCurrentEqualOrHigher(Version.v1_11_R1)) { return entity.getType().name(); diff --git a/src/main/java/com/gamingmesh/jobs/stuff/VersionChecker.java b/src/main/java/com/gamingmesh/jobs/stuff/VersionChecker.java index 58fbf75c..7a3843db 100644 --- a/src/main/java/com/gamingmesh/jobs/stuff/VersionChecker.java +++ b/src/main/java/com/gamingmesh/jobs/stuff/VersionChecker.java @@ -12,6 +12,8 @@ import org.bukkit.entity.Player; import com.gamingmesh.jobs.Jobs; +import net.Zrips.CMILib.Messages.CMIMessages; + public final class VersionChecker { private Jobs plugin; @@ -44,7 +46,7 @@ public final class VersionChecker { if (player != null) player.sendMessage(one); else - Jobs.consoleMsg(one); + CMIMessages.consoleMessage(one); }); } @@ -55,7 +57,7 @@ public final class VersionChecker { if (version.length() <= 8) return version; } catch (Throwable t) { - Jobs.consoleMsg("&cFailed to check for " + plugin.getDescription().getName() + " update on spigot web page."); + CMIMessages.consoleMessage("&cFailed to check for " + plugin.getDescription().getName() + " update on spigot web page."); } return null; } diff --git a/src/main/java/com/gamingmesh/jobs/tasks/BufferedPaymentThread.java b/src/main/java/com/gamingmesh/jobs/tasks/BufferedPaymentThread.java index 2bf41829..a5fe6949 100644 --- a/src/main/java/com/gamingmesh/jobs/tasks/BufferedPaymentThread.java +++ b/src/main/java/com/gamingmesh/jobs/tasks/BufferedPaymentThread.java @@ -21,6 +21,8 @@ package com.gamingmesh.jobs.tasks; import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.economy.BufferedEconomy; +import net.Zrips.CMILib.Messages.CMIMessages; + public class BufferedPaymentThread extends Thread { private volatile boolean running = true; private int sleep; @@ -35,7 +37,7 @@ public class BufferedPaymentThread extends Thread { @Override public void run() { - Jobs.consoleMsg("&eStarted buffered payment thread."); + CMIMessages.consoleMessage("&eStarted buffered payment thread."); while (running) { try { @@ -50,11 +52,11 @@ public class BufferedPaymentThread extends Thread { economy.payAll(); } catch (Throwable t) { t.printStackTrace(); - Jobs.consoleMsg("&c[Jobs] Exception in BufferedPaymentThread, stopping economy payments!"); + CMIMessages.consoleMessage("&c[Jobs] Exception in BufferedPaymentThread, stopping economy payments!"); running = false; } } - Jobs.consoleMsg("&eBuffered payment thread shutdown."); + CMIMessages.consoleMessage("&eBuffered payment thread shutdown."); } public void shutdown() { diff --git a/src/main/java/com/gamingmesh/jobs/tasks/DatabaseSaveThread.java b/src/main/java/com/gamingmesh/jobs/tasks/DatabaseSaveThread.java index d53325e0..0c4994fd 100644 --- a/src/main/java/com/gamingmesh/jobs/tasks/DatabaseSaveThread.java +++ b/src/main/java/com/gamingmesh/jobs/tasks/DatabaseSaveThread.java @@ -20,6 +20,8 @@ package com.gamingmesh.jobs.tasks; import com.gamingmesh.jobs.Jobs; +import net.Zrips.CMILib.Messages.CMIMessages; + public class DatabaseSaveThread extends Thread { private volatile boolean running = true; @@ -33,7 +35,7 @@ public class DatabaseSaveThread extends Thread { @Override public void run() { - Jobs.consoleMsg("&eStarted database save task."); + CMIMessages.consoleMessage("&eStarted database save task."); while (running) { try { @@ -46,12 +48,12 @@ public class DatabaseSaveThread extends Thread { Jobs.getPlayerManager().saveAll(); } catch (Throwable t) { t.printStackTrace(); - Jobs.consoleMsg("&c[Jobs] Exception in DatabaseSaveTask, stopping auto save!"); + CMIMessages.consoleMessage("&c[Jobs] Exception in DatabaseSaveTask, stopping auto save!"); running = false; } } - Jobs.consoleMsg("&eDatabase save task shutdown!"); + CMIMessages.consoleMessage("&eDatabase save task shutdown!"); } From 9b291b299b3961e4dae3e0060c21cc656ec1eb5c Mon Sep 17 00:00:00 2001 From: Zrips Date: Mon, 24 Apr 2023 12:57:57 +0300 Subject: [PATCH 06/31] Sign check fix --- .../com/gamingmesh/jobs/Signs/SignUtil.java | 508 +++++++++--------- 1 file changed, 252 insertions(+), 256 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/Signs/SignUtil.java b/src/main/java/com/gamingmesh/jobs/Signs/SignUtil.java index 77337bb0..a42941c2 100644 --- a/src/main/java/com/gamingmesh/jobs/Signs/SignUtil.java +++ b/src/main/java/com/gamingmesh/jobs/Signs/SignUtil.java @@ -21,7 +21,6 @@ import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.TopList; import net.Zrips.CMILib.FileHandler.ConfigReader; -import net.Zrips.CMILib.Items.CMIMaterial; import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.Version.Version; @@ -33,345 +32,342 @@ public class SignUtil { private Jobs plugin; public SignUtil(Jobs plugin) { - this.plugin = plugin; + this.plugin = plugin; } public Map> getSigns() { - return signsByType; + return signsByType; } public boolean removeSign(Location loc) { - jobsSign jSign = signsByLocation.remove(jobsSign.locToBlockString(loc)); - if (jSign == null) - return false; + jobsSign jSign = signsByLocation.remove(jobsSign.locToBlockString(loc)); + if (jSign == null) + return false; - Map sub = signsByType.get(jSign.getIdentifier().toLowerCase()); - if (sub != null) { - sub.remove(jSign.locToBlockString()); - } + Map sub = signsByType.get(jSign.getIdentifier().toLowerCase()); + if (sub != null) { + sub.remove(jSign.locToBlockString()); + } - return true; + return true; } public jobsSign getSign(Location loc) { - return loc == null ? null : signsByLocation.get(jobsSign.locToBlockString(loc)); + return loc == null ? null : signsByLocation.get(jobsSign.locToBlockString(loc)); } public void addSign(jobsSign jSign) { - if (jSign == null) - return; + if (jSign == null) + return; - String locToBlockString = jSign.locToBlockString(); + String locToBlockString = jSign.locToBlockString(); - signsByLocation.put(locToBlockString, jSign); + signsByLocation.put(locToBlockString, jSign); - String identifier = jSign.getIdentifier().toLowerCase(); - Map old = signsByType.get(identifier); - if (old == null) { - old = new HashMap<>(); - signsByType.put(identifier, old); - } + String identifier = jSign.getIdentifier().toLowerCase(); + Map old = signsByType.get(identifier); + if (old == null) { + old = new HashMap<>(); + signsByType.put(identifier, old); + } - old.put(locToBlockString, jSign); - signsByType.put(identifier, old); + old.put(locToBlockString, jSign); + signsByType.put(identifier, old); } public void loadSigns() { - if (!Jobs.getGCManager().SignsEnabled) - return; + if (!Jobs.getGCManager().SignsEnabled) + return; - signsByType.clear(); - signsByLocation.clear(); + signsByType.clear(); + signsByLocation.clear(); - File file = new File(Jobs.getFolder(), "Signs.yml"); - ConfigurationSection confCategory = YamlConfiguration.loadConfiguration(file).getConfigurationSection("Signs"); - if (confCategory == null) - return; + File file = new File(Jobs.getFolder(), "Signs.yml"); + ConfigurationSection confCategory = YamlConfiguration.loadConfiguration(file).getConfigurationSection("Signs"); + if (confCategory == null) + return; - List categoriesList = new ArrayList<>(confCategory.getKeys(false)); - if (categoriesList.isEmpty()) - return; + List categoriesList = new ArrayList<>(confCategory.getKeys(false)); + if (categoriesList.isEmpty()) + return; - for (String category : categoriesList) { - ConfigurationSection nameSection = confCategory.getConfigurationSection(category); - if (nameSection == null) - continue; + for (String category : categoriesList) { + ConfigurationSection nameSection = confCategory.getConfigurationSection(category); + if (nameSection == null) + continue; - jobsSign newTemp = new jobsSign(); + jobsSign newTemp = new jobsSign(); - if (nameSection.isString("World")) { - newTemp.setWorldName(nameSection.getString("World")); - newTemp.setX((int) nameSection.getDouble("X")); - newTemp.setY((int) nameSection.getDouble("Y")); - newTemp.setZ((int) nameSection.getDouble("Z")); - } else { - newTemp.setLoc(nameSection.getString("Loc")); - } - if (nameSection.isString("Type")) - newTemp.setType(SignTopType.getType(nameSection.getString("Type"))); + if (nameSection.isString("World")) { + newTemp.setWorldName(nameSection.getString("World")); + newTemp.setX((int) nameSection.getDouble("X")); + newTemp.setY((int) nameSection.getDouble("Y")); + newTemp.setZ((int) nameSection.getDouble("Z")); + } else { + newTemp.setLoc(nameSection.getString("Loc")); + } + if (nameSection.isString("Type")) + newTemp.setType(SignTopType.getType(nameSection.getString("Type"))); - newTemp.setNumber(nameSection.getInt("Number")); - if (nameSection.isString("JobName")) { - SignTopType t = SignTopType.getType(nameSection.getString("JobName")); - if (t == null) - newTemp.setJobName(nameSection.getString("JobName")); - } - newTemp.setSpecial(nameSection.getBoolean("Special")); + newTemp.setNumber(nameSection.getInt("Number")); + if (nameSection.isString("JobName")) { + SignTopType t = SignTopType.getType(nameSection.getString("JobName")); + if (t == null) + newTemp.setJobName(nameSection.getString("JobName")); + } + newTemp.setSpecial(nameSection.getBoolean("Special")); - String identifier = newTemp.getIdentifier().toLowerCase(); - Map old = signsByType.get(identifier); - if (old == null) { - old = new HashMap<>(); - signsByType.put(identifier, old); - } + String identifier = newTemp.getIdentifier().toLowerCase(); + Map old = signsByType.get(identifier); + if (old == null) { + old = new HashMap<>(); + signsByType.put(identifier, old); + } - String loc = newTemp.locToBlockString(); - old.put(loc, newTemp); - signsByLocation.put(loc, newTemp); - } + String loc = newTemp.locToBlockString(); + old.put(loc, newTemp); + signsByLocation.put(loc, newTemp); + } - if (!signsByLocation.isEmpty()) { - CMIMessages.consoleMessage("&e[Jobs] Loaded " + signsByLocation.size() + " top list signs"); - } + if (!signsByLocation.isEmpty()) { + CMIMessages.consoleMessage("&e[Jobs] Loaded " + signsByLocation.size() + " top list signs"); + } } public void saveSigns() { - File f = new File(Jobs.getFolder(), "Signs.yml"); - YamlConfiguration conf = YamlConfiguration.loadConfiguration(f); + File f = new File(Jobs.getFolder(), "Signs.yml"); + YamlConfiguration conf = YamlConfiguration.loadConfiguration(f); - ConfigReader reader = null; - try { - reader = new ConfigReader(f); - } catch (Exception e1) { - e1.printStackTrace(); - } - if (reader == null) - return; - conf.options().copyDefaults(true); - reader.addComment("Signs", "DO NOT EDIT THIS FILE BY HAND!"); + ConfigReader reader = null; + try { + reader = new ConfigReader(f); + } catch (Exception e1) { + e1.printStackTrace(); + } + if (reader == null) + return; + conf.options().copyDefaults(true); + reader.addComment("Signs", "DO NOT EDIT THIS FILE BY HAND!"); - if (!conf.isConfigurationSection("Signs")) - conf.createSection("Signs"); + if (!conf.isConfigurationSection("Signs")) + conf.createSection("Signs"); - int i = 0; - for (jobsSign sign : signsByLocation.values()) { - String path = "Signs." + ++i; - reader.set(path + ".Loc", sign.locToBlockString()); - reader.set(path + ".Number", sign.getNumber()); - reader.set(path + ".Type", sign.getType().toString()); - reader.set(path + ".JobName", sign.getJobName()); - reader.set(path + ".Special", sign.isSpecial()); - } + int i = 0; + for (jobsSign sign : signsByLocation.values()) { + String path = "Signs." + ++i; + reader.set(path + ".Loc", sign.locToBlockString()); + reader.set(path + ".Number", sign.getNumber()); + reader.set(path + ".Type", sign.getType().toString()); + reader.set(path + ".JobName", sign.getJobName()); + reader.set(path + ".Special", sign.isSpecial()); + } - try { - reader.save(f); - } catch (IOException e) { - e.printStackTrace(); - } + try { + reader.save(f); + } catch (IOException e) { + e.printStackTrace(); + } } public void updateAllSign(Job job) { - for (SignTopType types : SignTopType.values()) { - if (types != SignTopType.questtoplist) - signUpdate(job, types); - } + for (SignTopType types : SignTopType.values()) { + if (types != SignTopType.questtoplist) + signUpdate(job, types); + } } public boolean signUpdate(Job job) { - return signUpdate(job, SignTopType.toplist); + return signUpdate(job, SignTopType.toplist); } public boolean signUpdate(Job job, SignTopType type) { - if (!Jobs.getGCManager().SignsEnabled) - return true; + if (!Jobs.getGCManager().SignsEnabled) + return true; - if (type == null) - type = SignTopType.toplist; + if (type == null) + type = SignTopType.toplist; - String jobNameOrType = jobsSign.getIdentifier(job, type).toLowerCase(); + String jobNameOrType = jobsSign.getIdentifier(job, type).toLowerCase(); - Map signs = signsByType.get(jobNameOrType); - if (signs == null || signs.isEmpty()) - return false; + Map signs = signsByType.get(jobNameOrType); + if (signs == null || signs.isEmpty()) + return false; - List playerList = new ArrayList<>(); + List playerList = new ArrayList<>(); - switch (type) { - case gtoplist: - playerList = Jobs.getJobsDAO().getGlobalTopList(0); - break; - case questtoplist: - playerList = Jobs.getJobsDAO().getQuestTopList(0); - break; - default: - break; - } + switch (type) { + case gtoplist: + playerList = Jobs.getJobsDAO().getGlobalTopList(0); + break; + case questtoplist: + playerList = Jobs.getJobsDAO().getQuestTopList(0); + break; + default: + break; + } - int timelapse = 1; + int timelapse = 1; - Map> temp = new HashMap<>(); + Map> temp = new HashMap<>(); - boolean save = false; - for (jobsSign jSign : new HashMap<>(signs).values()) { - Location loc = jSign.getLocation(); - if (loc == null) - continue; + boolean save = false; + for (jobsSign jSign : new HashMap<>(signs).values()) { + Location loc = jSign.getLocation(); + if (loc == null) + continue; - Block block = loc.getBlock(); - if (!(block.getState() instanceof Sign)) { - if (!jobNameOrType.isEmpty()) { - Map tt = signsByType.get(jobNameOrType); - if (tt != null) { - tt.remove(jSign.locToBlockString()); - } - } + Block block = loc.getBlock(); + if (!(block.getState() instanceof Sign)) { + if (!jobNameOrType.isEmpty()) { + Map tt = signsByType.get(jobNameOrType); + if (tt != null) { + tt.remove(jSign.locToBlockString()); + } + } - signsByLocation.remove(jSign.locToBlockString()); - save = true; - continue; - } + signsByLocation.remove(jSign.locToBlockString()); + save = true; + continue; + } - String signJobName = jSign.getJobName(); - if (type == SignTopType.toplist && (playerList = temp.get(signJobName)) == null) { - playerList = Jobs.getJobsDAO().toplist(signJobName); - temp.put(signJobName, playerList); - } + String signJobName = jSign.getJobName(); + if (type == SignTopType.toplist && (playerList = temp.get(signJobName)) == null) { + playerList = Jobs.getJobsDAO().toplist(signJobName); + temp.put(signJobName, playerList); + } - if (Jobs.getJob(jSign.getJobName()) != null) - signJobName = Jobs.getJob(jSign.getJobName()).getDisplayName(); + if (Jobs.getJob(jSign.getJobName()) != null) + signJobName = Jobs.getJob(jSign.getJobName()).getDisplayName(); - if (playerList.isEmpty()) - continue; + if (playerList.isEmpty()) + continue; - int number = jSign.getNumber() - 1; - Sign sign = (Sign) block.getState(); + int number = jSign.getNumber() - 1; + Sign sign = (Sign) block.getState(); - if (!jSign.isSpecial()) { - for (int i = 0; i < 4; i++) { - if (i + number >= playerList.size()) { - plugin.getComplement().setLine(sign, i, ""); - continue; - } + if (!jSign.isSpecial()) { + for (int i = 0; i < 4; i++) { + if (i + number >= playerList.size()) { + plugin.getComplement().setLine(sign, i, ""); + continue; + } - TopList pl = playerList.get(i + number); - String playerName = pl.getPlayerInfo().getName(); - if (playerName.length() > 15) { - // We need to split 10 char of name, because of sign rows - playerName = playerName.split("(?<=\\G.{10})", 2)[0] + "~"; - } + TopList pl = playerList.get(i + number); + String playerName = pl.getPlayerInfo().getName(); + if (playerName.length() > 15) { + // We need to split 10 char of name, because of sign rows + playerName = playerName.split("(?<=\\G.{10})", 2)[0] + "~"; + } - String line = ""; - switch (type) { - case toplist: - case gtoplist: - line = Jobs.getLanguage().getMessage("signs.List", "[number]", i + number + 1, "[player]", playerName, "[level]", pl.getLevel()); - break; - case questtoplist: - line = Jobs.getLanguage().getMessage("signs.questList", "[number]", i + number + 1, "[player]", playerName, "[quests]", pl.getLevel()); - break; - default: - break; - } + String line = ""; + switch (type) { + case toplist: + case gtoplist: + line = Jobs.getLanguage().getMessage("signs.List", "[number]", i + number + 1, "[player]", playerName, "[level]", pl.getLevel()); + break; + case questtoplist: + line = Jobs.getLanguage().getMessage("signs.questList", "[number]", i + number + 1, "[player]", playerName, "[quests]", pl.getLevel()); + break; + default: + break; + } - if (!line.isEmpty()) - sign.setLine(i, line); - } - sign.update(); - if (!updateHead(sign, playerList.get(0).getPlayerInfo().getName(), timelapse)) { - timelapse--; - } - } else { - if (jSign.getNumber() > playerList.size()) - continue; + if (!line.isEmpty()) + sign.setLine(i, line); + } + sign.update(); + if (!updateHead(sign, playerList.get(0).getPlayerInfo().getName(), timelapse)) { + timelapse--; + } + } else { + if (jSign.getNumber() > playerList.size()) + continue; - TopList pl = playerList.get(jSign.getNumber() - 1); - String playerName = pl.getPlayerInfo().getName(); - if (playerName.length() > 15) { - playerName = playerName.split("(?<=\\G.{10})", 2)[0] + "~"; - } + TopList pl = playerList.get(jSign.getNumber() - 1); + String playerName = pl.getPlayerInfo().getName(); + if (playerName.length() > 15) { + playerName = playerName.split("(?<=\\G.{10})", 2)[0] + "~"; + } - int no = jSign.getNumber() + number + 1; - sign.setLine(0, translateSignLine("signs.SpecialList.p" + jSign.getNumber(), no, playerName, pl.getLevel(), signJobName)); - sign.setLine(1, translateSignLine("signs.SpecialList.name", no, playerName, pl.getLevel(), signJobName)); + int no = jSign.getNumber() + number + 1; + sign.setLine(0, translateSignLine("signs.SpecialList.p" + jSign.getNumber(), no, playerName, pl.getLevel(), signJobName)); + sign.setLine(1, translateSignLine("signs.SpecialList.name", no, playerName, pl.getLevel(), signJobName)); - switch (type) { - case toplist: - case gtoplist: - sign.setLine(2, translateSignLine("signs.SpecialList.level", no, playerName, pl.getLevel(), signJobName)); - break; - case questtoplist: - sign.setLine(2, Jobs.getLanguage().getMessage("signs.SpecialList.quests", "[number]", no, "[player]", playerName, "[quests]", pl.getLevel(), "[job]", signJobName)); - break; - default: - break; - } + switch (type) { + case toplist: + case gtoplist: + sign.setLine(2, translateSignLine("signs.SpecialList.level", no, playerName, pl.getLevel(), signJobName)); + break; + case questtoplist: + sign.setLine(2, Jobs.getLanguage().getMessage("signs.SpecialList.quests", "[number]", no, "[player]", playerName, "[quests]", pl.getLevel(), "[job]", signJobName)); + break; + default: + break; + } - sign.setLine(3, translateSignLine("signs.SpecialList.bottom", no, playerName, pl.getLevel(), signJobName)); - sign.update(); - if (!updateHead(sign, pl.getPlayerInfo().getName(), timelapse)) { - timelapse--; - } - } - timelapse++; - } + sign.setLine(3, translateSignLine("signs.SpecialList.bottom", no, playerName, pl.getLevel(), signJobName)); + sign.update(); + if (!updateHead(sign, pl.getPlayerInfo().getName(), timelapse)) { + timelapse--; + } + } + timelapse++; + } - if (save) - saveSigns(); + if (save) + saveSigns(); - return true; + return true; } private static String translateSignLine(String path, int number, String playerName, int level, String jobname) { - return Jobs.getLanguage().getMessage(path, - "[number]", number, - "[player]", playerName, - "[level]", level, - "[job]", jobname); + return Jobs.getLanguage().getMessage(path, + "[number]", number, + "[player]", playerName, + "[level]", level, + "[job]", jobname); } @SuppressWarnings("deprecation") public boolean updateHead(final Sign sign, final String playerName, int timelapse) { - if (playerName == null) - return false; + if (playerName == null) + return false; - if (timelapse < 1) { - timelapse = 1; - } + if (timelapse < 1) { + timelapse = 1; + } - BlockFace directionFacing = null; - if (Version.isCurrentEqualOrLower(Version.v1_13_R2)) { - org.bukkit.material.Sign signMat = (org.bukkit.material.Sign) sign.getData(); - directionFacing = signMat.getFacing(); - } else { - if (CMIMaterial.isWallSign(sign.getType())) { - org.bukkit.block.data.type.WallSign data = (org.bukkit.block.data.type.WallSign) sign.getBlockData(); - directionFacing = data.getFacing(); - } else { - org.bukkit.block.data.type.Sign data = (org.bukkit.block.data.type.Sign) sign.getBlockData(); - directionFacing = data.getRotation(); - } - } + BlockFace directionFacing = null; + if (Version.isCurrentEqualOrLower(Version.v1_13_R2)) { + org.bukkit.material.Sign signMat = (org.bukkit.material.Sign) sign.getData(); + directionFacing = signMat.getFacing(); + } else { + if (sign.getBlockData() instanceof org.bukkit.block.data.type.WallSign) + directionFacing = ((org.bukkit.block.data.type.WallSign) sign.getBlockData()).getFacing(); + else if (sign.getBlockData() instanceof org.bukkit.block.data.type.Sign) + directionFacing = ((org.bukkit.block.data.type.Sign) sign.getBlockData()).getRotation(); + } - final Location loc = sign.getLocation().clone(); - loc.add(0, 1, 0); + final Location loc = sign.getLocation().clone(); + loc.add(0, 1, 0); - if (directionFacing != null && !(loc.getBlock().getState() instanceof Skull)) - loc.add(directionFacing.getOppositeFace().getModX(), 0, directionFacing.getOppositeFace().getModZ()); + if (directionFacing != null && !(loc.getBlock().getState() instanceof Skull)) + loc.add(directionFacing.getOppositeFace().getModX(), 0, directionFacing.getOppositeFace().getModZ()); - Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() { - @Override - public void run() { - if (!(loc.getBlock().getState() instanceof Skull)) - return; + Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() { + @Override + public void run() { + if (!(loc.getBlock().getState() instanceof Skull)) + return; - Skull skull = (Skull) loc.getBlock().getState(); - if (playerName.equalsIgnoreCase(skull.getOwner())) - return; + Skull skull = (Skull) loc.getBlock().getState(); + if (playerName.equalsIgnoreCase(skull.getOwner())) + return; - skull.setOwner(playerName); - skull.update(); - } - }, timelapse * Jobs.getGCManager().InfoUpdateInterval * 20L); - return true; + skull.setOwner(playerName); + skull.update(); + } + }, timelapse * Jobs.getGCManager().InfoUpdateInterval * 20L); + return true; } } From 3bfb0f60cc05be7e51fd3964ec27d9b30a80bc49 Mon Sep 17 00:00:00 2001 From: Zrips Date: Mon, 24 Apr 2023 14:11:32 +0300 Subject: [PATCH 07/31] Reseting limits at specific time of the day --- .../gamingmesh/jobs/commands/list/limit.java | 7 +- .../jobs/config/GeneralConfigManager.java | 21 +++- .../jobs/container/CurrencyLimit.java | 72 ++++++++--- .../gamingmesh/jobs/container/resetTime.java | 58 +++++++++ .../gamingmesh/jobs/economy/LimitsData.java | 63 ++++++++-- .../gamingmesh/jobs/economy/PaymentData.java | 118 ++++++++++-------- 6 files changed, 255 insertions(+), 84 deletions(-) create mode 100644 src/main/java/com/gamingmesh/jobs/container/resetTime.java diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/limit.java b/src/main/java/com/gamingmesh/jobs/commands/list/limit.java index 8bacf748..343c63b4 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/limit.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/limit.java @@ -10,6 +10,7 @@ import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.economy.PaymentData; import net.Zrips.CMILib.Locale.LC; +import net.Zrips.CMILib.Logs.CMIDebug; import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.Time.CMITimeManager; @@ -54,8 +55,10 @@ public class limit implements Cmd { continue; PaymentData limit = JPlayer.getPaymentLimit(); - if (limit.getLeftTime(type) <= 0) - limit.resetLimits(type); + if (limit.getLeftTime(type) <= 0) { + CMIDebug.d("reset", type); + limit.resetLimits(type); + } if (limit.getLeftTime(type) > 0) { String typeName = type.getName().toLowerCase(); diff --git a/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java b/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java index 08e845c1..c067aff7 100644 --- a/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java @@ -95,7 +95,8 @@ public class GeneralConfigManager { SignsColorizeJobName, ShowToplistInScoreboard, useGlobalTimer, useSilkTouchProtection, UseCustomNames, PreventSlimeSplit, PreventMagmaCubeSplit, PreventHopperFillUps, PreventBrewingStandFillUps, informOnPaymentDisable, BrowseUseNewLook, payExploringWhenGliding = false, resetExploringData = false, disablePaymentIfMaxLevelReached, disablePaymentIfRiding, - boostedItemsInOffHand = false, boostedItemsInMainHand, boostedArmorItems, boostedItemsSlotSpecific, multiplyBoostedExtraValues, addPermissionBoost, highestPermissionBoost /*, preventCropResizePayment*/, + boostedItemsInOffHand = false, boostedItemsInMainHand, boostedArmorItems, boostedItemsSlotSpecific, multiplyBoostedExtraValues, addPermissionBoost, + highestPermissionBoost /*, preventCropResizePayment*/, payItemDurabilityLoss, applyToNegativeIncome, useMinimumOveralPayment, useMinimumOveralPoints, useMinimumOveralExp, useBreederFinder, CancelCowMilking, fixAtMaxLevel, TitleChangeChat, TitleChangeActionBar, LevelChangeChat, @@ -543,7 +544,7 @@ public class GeneralConfigManager { CMIMaterial mat = CMIMaterial.get(mName); if (mat == CMIMaterial.NONE) { - CMIMessages.consoleMessage("Failed to recognize " + one + " entry from config file"); + CMIMessages.consoleMessage("Failed to recognize " + one + " entry from config file"); continue; } @@ -702,8 +703,14 @@ public class GeneralConfigManager { Jobs.getPluginLogger().warning("MoneyLimit has an invalid value. Disabling money limit!"); limit.setEnabled(false); } + c.addComment("Economy.Limit.Money.TimeLimit", "Time in seconds: 60 = 1 min, 3600 = 1 hour, 86400 = 24 hours"); limit.setTimeLimit(c.get("Economy.Limit.Money.TimeLimit", 3600)); + + c.addComment("Economy.Limit.Money.ResetTime", "Time in 24 hour format when limit should reset. This will override TimeLimit if defined", + "Example: '00:00:00' will reset timer at midnight, '04:30:00' will reset at 4:30 in the morning", "Set to empty field if you want to use TimeLimit"); + limit.setResetsAt(c.get("Economy.Limit.Money.ResetTime", "")); + c.addComment("Economy.Limit.Money.AnnouncementDelay", "Delay between announcements about reached money limit", "Keep this from 30 to 5 min (300), as players can get annoyed of constant message displaying"); limit.setAnnouncementDelay(c.get("Economy.Limit.Money.AnnouncementDelay", 30)); @@ -736,6 +743,11 @@ public class GeneralConfigManager { } c.addComment("Economy.Limit.Point.TimeLimit", "Time in seconds: 60 = 1 min, 3600 = 1 hour, 86400 = 24 hours"); limit.setTimeLimit(c.get("Economy.Limit.Point.TimeLimit", 3600)); + + c.addComment("Economy.Limit.Point.ResetTime", "Time in 24 hour format when limit should reset. This will override TimeLimit if defined", + "Example: '00:00:00' will reset timer at midnight, '04:30:00' will reset at 4:30 in the morning", "Set to empty field if you want to use TimeLimit"); + limit.setResetsAt(c.get("Economy.Limit.Point.ResetTime", "")); + c.addComment("Economy.Limit.Point.AnnouncementDelay", "Delay between announcements about reached limit", "Keep this from 30 to 5 min (300), as players can get annoyed of constant message displaying"); limit.setAnnouncementDelay(c.get("Economy.Limit.Point.AnnouncementDelay", 30)); @@ -768,6 +780,11 @@ public class GeneralConfigManager { } c.addComment("Economy.Limit.Exp.TimeLimit", "Time in seconds: 60 = 1 min, 3600 = 1 hour, 86400 = 24 hours"); limit.setTimeLimit(c.get("Economy.Limit.Exp.TimeLimit", 3600)); + + c.addComment("Economy.Limit.Exp.ResetTime", "Time in 24 hour format when limit should reset. This will override TimeLimit if defined", + "Example: '00:00:00' will reset timer at midnight, '04:30:00' will reset at 4:30 in the morning", "Set to empty field if you want to use TimeLimit"); + limit.setResetsAt(c.get("Economy.Limit.Exp.ResetTime", "")); + c.addComment("Economy.Limit.Exp.AnnouncementDelay", "Delay between announcements about reached Exp limit", "Keep this from 30 to 5 min (300), as players can get annoyed of constant message displaying"); limit.setAnnouncementDelay(c.get("Economy.Limit.Exp.AnnouncementDelay", 30)); diff --git a/src/main/java/com/gamingmesh/jobs/container/CurrencyLimit.java b/src/main/java/com/gamingmesh/jobs/container/CurrencyLimit.java index 5da39948..7d71d8dc 100644 --- a/src/main/java/com/gamingmesh/jobs/container/CurrencyLimit.java +++ b/src/main/java/com/gamingmesh/jobs/container/CurrencyLimit.java @@ -4,66 +4,104 @@ import java.util.ArrayList; import java.util.List; import net.Zrips.CMILib.Equations.Parser; +import net.Zrips.CMILib.Messages.CMIMessages; public class CurrencyLimit { private boolean enabled; private List stopWith; - private int timeLimit; + private int timeLimit = 0; + private resetTime resetsAt = null; private int announcementDelay; private Parser maxEquation; public CurrencyLimit(boolean enabled, List stopWith, int timeLimit, int announcementDelay, Parser maxEquation) { - this.enabled = enabled; - setStopWith(stopWith); - this.timeLimit = timeLimit; - this.announcementDelay = announcementDelay; + this.enabled = enabled; + setStopWith(stopWith); + this.timeLimit = timeLimit; + this.announcementDelay = announcementDelay; - setMaxEquation(maxEquation); + setMaxEquation(maxEquation); } public CurrencyLimit() { } public boolean isEnabled() { - return enabled; + return enabled; } public void setEnabled(boolean enabled) { - this.enabled = enabled; + this.enabled = enabled; } public List getStopWith() { - return stopWith; + return stopWith; } public void setStopWith(List stopWith) { - this.stopWith = stopWith == null ? new ArrayList<>() : stopWith; + this.stopWith = stopWith == null ? new ArrayList<>() : stopWith; } public int getTimeLimit() { - return timeLimit; + return timeLimit; } public void setTimeLimit(int timeLimit) { - this.timeLimit = timeLimit; + this.timeLimit = timeLimit; } public int getAnnouncementDelay() { - return announcementDelay; + return announcementDelay; } public void setAnnouncementDelay(int announcementDelay) { - this.announcementDelay = announcementDelay; + this.announcementDelay = announcementDelay; } public Parser getMaxEquation() { - return maxEquation; + return maxEquation; } public void setMaxEquation(Parser maxEquation) { - if (maxEquation != null) - this.maxEquation = maxEquation; + if (maxEquation != null) + this.maxEquation = maxEquation; } + public resetTime getResetsAt() { + + return resetsAt; + } + + public void setResetsAt(int hour, int minute, int second) { + this.resetsAt = new resetTime(hour, minute, second); + } + + public void setResetsAt(String resetsAt) { + + if (resetsAt.isEmpty()) + return; + + int hour = 0; + int minute = 0; + int second = 0; + + String[] split = resetsAt.split(":"); + try { + hour = Integer.parseInt(split[0]); + + if (split.length >= 2) { + minute = Integer.parseInt(split[1]); + } + if (split.length >= 3) { + second = Integer.parseInt(split[2]); + } + + } catch (Throwable e) { + CMIMessages.consoleMessage("Failed to recognize reset time as " + resetsAt); + return; + } + + setResetsAt(hour, minute, second); + } } diff --git a/src/main/java/com/gamingmesh/jobs/container/resetTime.java b/src/main/java/com/gamingmesh/jobs/container/resetTime.java new file mode 100644 index 00000000..614e4a7c --- /dev/null +++ b/src/main/java/com/gamingmesh/jobs/container/resetTime.java @@ -0,0 +1,58 @@ +package com.gamingmesh.jobs.container; + +import java.util.Calendar; +import java.util.Date; + +public class resetTime { + + private int hour = 0; + private int minute = 0; + private int second = 0; + + public resetTime(int hour, int minute, int second) { + this.hour = hour % 24; + this.minute = minute % 60; + this.second = second % 60; + } + + public int getHour() { + return hour; + } + + public void setHour(int hour) { + this.hour = hour; + } + + public int getMinute() { + return minute; + } + + public void setMinute(int minute) { + this.minute = minute; + } + + public int getSecond() { + return second; + } + + public void setSecond(int second) { + this.second = second; + } + + public long toMili() { + + Calendar calendar = Calendar.getInstance(); + calendar.setTime(new Date()); + + calendar.set(Calendar.HOUR_OF_DAY, hour); + calendar.set(Calendar.MINUTE, minute); + calendar.set(Calendar.SECOND, second); + + if (calendar.getTimeInMillis() < System.currentTimeMillis()) { + calendar.add(Calendar.DAY_OF_YEAR, 1); + } + + return calendar.getTimeInMillis(); + } + +} diff --git a/src/main/java/com/gamingmesh/jobs/economy/LimitsData.java b/src/main/java/com/gamingmesh/jobs/economy/LimitsData.java index a86babe4..073c028c 100644 --- a/src/main/java/com/gamingmesh/jobs/economy/LimitsData.java +++ b/src/main/java/com/gamingmesh/jobs/economy/LimitsData.java @@ -1,57 +1,94 @@ package com.gamingmesh.jobs.economy; +import java.util.Calendar; +import java.util.Date; + +import com.gamingmesh.jobs.Jobs; +import com.gamingmesh.jobs.container.CurrencyLimit; import com.gamingmesh.jobs.container.CurrencyType; public class LimitsData { private CurrencyType type = null; private double amount = 0D; private long paymentsTime = 0L; + private long resetsAt = 0L; private boolean reseted = false; + @Deprecated public LimitsData(CurrencyType type, long paymentsTime) { - this(type, paymentsTime, 0D); + this(type, paymentsTime, 0D); } + @Deprecated public LimitsData(CurrencyType type, long paymentsTime, double payment) { - this.type = type; - this.paymentsTime = paymentsTime; - this.amount = payment; + this.type = type; + this.paymentsTime = paymentsTime; + CurrencyLimit limit = Jobs.getGCManager().getLimit(type); + if (limit.getResetsAt() != null) { + Calendar calendar = Calendar.getInstance(); + calendar.setTime(new Date()); + resetsAt = limit.getResetsAt().toMili(); + } else + resetsAt = (limit.getTimeLimit() * 100L) + System.currentTimeMillis(); + this.amount = payment; + } + + public LimitsData(CurrencyType type, double payment) { + this.type = type; + this.paymentsTime = System.currentTimeMillis(); + CurrencyLimit limit = Jobs.getGCManager().getLimit(type); + + if (limit.getResetsAt() != null) { + Calendar calendar = Calendar.getInstance(); + calendar.setTime(new Date()); + resetsAt = limit.getResetsAt().toMili(); + } else + resetsAt = (limit.getTimeLimit() * 100L) + System.currentTimeMillis(); + this.amount = payment; } public boolean isReseted() { - return reseted; + return reseted; } public void setReseted(boolean reseted) { - this.reseted = reseted; + this.reseted = reseted; } public CurrencyType getType() { - return type; + return type; } public void setType(CurrencyType type) { - this.type = type; + this.type = type; } public double getAmount() { - return this.amount; + return this.amount; } public double addAmount(double amount) { - return this.amount += amount; + return this.amount += amount; } public void setAmount(double payment) { - this.amount = payment; + this.amount = payment; } public long getPaymentsTime() { - return paymentsTime; + return paymentsTime; } public void setPaymentsTime(long paymentsTime) { - this.paymentsTime = paymentsTime; + this.paymentsTime = paymentsTime; + } + + public long getResetsAt() { + return resetsAt; + } + + public void setResetsAt(long resetsAt) { + this.resetsAt = resetsAt; } } diff --git a/src/main/java/com/gamingmesh/jobs/economy/PaymentData.java b/src/main/java/com/gamingmesh/jobs/economy/PaymentData.java index c73702f4..390dd924 100644 --- a/src/main/java/com/gamingmesh/jobs/economy/PaymentData.java +++ b/src/main/java/com/gamingmesh/jobs/economy/PaymentData.java @@ -3,6 +3,7 @@ package com.gamingmesh.jobs.economy; import java.util.HashMap; import com.gamingmesh.jobs.Jobs; +import com.gamingmesh.jobs.container.CurrencyLimit; import com.gamingmesh.jobs.container.CurrencyType; public class PaymentData { @@ -13,119 +14,136 @@ public class PaymentData { private boolean informed = false; - public PaymentData(Long time, Double Payment, Double Points, Double Exp, Long lastAnnouced, boolean Informed) { - payments.put(CurrencyType.EXP, new LimitsData(CurrencyType.EXP, time, Exp)); - payments.put(CurrencyType.MONEY, new LimitsData(CurrencyType.MONEY, time, Payment)); - payments.put(CurrencyType.POINTS, new LimitsData(CurrencyType.POINTS, time, Points)); - this.lastAnnouced = lastAnnouced; - this.informed = Informed; - } +// public PaymentData(Long time, Double Payment, Double Points, Double Exp, Long lastAnnouced, boolean Informed) { +// payments.put(CurrencyType.EXP, new LimitsData(CurrencyType.EXP, time, Exp)); +// payments.put(CurrencyType.MONEY, new LimitsData(CurrencyType.MONEY, time, Payment)); +// payments.put(CurrencyType.POINTS, new LimitsData(CurrencyType.POINTS, time, Points)); +// this.lastAnnouced = lastAnnouced; +// this.informed = Informed; +// } public PaymentData(CurrencyType type, Double amount) { - for (CurrencyType one : CurrencyType.values()) { - if (one != type) - payments.put(one, new LimitsData(one, System.currentTimeMillis(), 0D)); - } - payments.put(type, new LimitsData(type, System.currentTimeMillis(), amount)); + for (CurrencyType one : CurrencyType.values()) { + if (one != type) + payments.put(one, new LimitsData(one, 0D)); + } + payments.put(type, new LimitsData(type, amount)); } public PaymentData() { - resetLimits(); + resetLimits(); } public Long getTime(CurrencyType type) { - return payments.get(type).getPaymentsTime(); + return payments.get(type).getPaymentsTime(); } public void setReseted(CurrencyType type, boolean reseted) { - payments.get(type).setReseted(reseted); + payments.get(type).setReseted(reseted); } public boolean isReseted(CurrencyType type) { - return payments.get(type).isReseted(); + return payments.get(type).isReseted(); } public double getAmount(CurrencyType type) { - if (type == null) - return 0D; + if (type == null) + return 0D; - LimitsData data = payments.get(type); - return data == null ? 0D : (int) (data.getAmount() * 100) / 100D; + LimitsData data = payments.get(type); + return data == null ? 0D : (int) (data.getAmount() * 100) / 100D; } public long getLastAnnounced() { - return lastAnnouced; + return lastAnnouced; } public boolean isAnnounceTime(int t) { - if (lastAnnouced + (t * 1000) > System.currentTimeMillis()) - return false; + if (lastAnnouced + (t * 1000) > System.currentTimeMillis()) + return false; - setAnnouncementTime(); - return true; + setAnnouncementTime(); + return true; } public void setAnnouncementTime() { - this.lastAnnouced = System.currentTimeMillis(); + this.lastAnnouced = System.currentTimeMillis(); } public void addNewAmount(CurrencyType type, Double Payment) { - addNewAmount(type, Payment, null); + addNewAmount(type, Payment, null); } public void addNewAmount(CurrencyType type, Double Payment, Long time) { - payments.put(type, new LimitsData(type, time == null ? System.currentTimeMillis() : time, Payment)); + +// payments.put(type, new LimitsData(type, time == null ? System.currentTimeMillis() : time, Payment)); + + LimitsData data = new LimitsData(type, Payment); + + if (time != null) + data.setPaymentsTime(time); + + payments.put(type, data); } public void addAmount(CurrencyType type, double payment) { - payments.get(type).addAmount(payment); + payments.get(type).addAmount(payment); } public long getLeftTime(CurrencyType type) { - long left = getTime(type) + (Jobs.getGCManager().getLimit(type).getTimeLimit() * 1000); - return left > System.currentTimeMillis() ? left - System.currentTimeMillis() : 0L; + + CurrencyLimit limit = Jobs.getGCManager().getLimit(type); + if (limit.getResetsAt() != null) { + LimitsData data = payments.get(type); + if (data.getResetsAt() < System.currentTimeMillis()) + return 0L; + return data.getResetsAt() - System.currentTimeMillis(); + } + + long left = getTime(type) + (limit.getTimeLimit() * 1000); + return left > System.currentTimeMillis() ? left - System.currentTimeMillis() : 0L; } public boolean isOverLimit(CurrencyType type, int limit) { - return payments.get(type).getAmount() >= limit; + return payments.get(type).getAmount() >= limit; } public double percentOverLimit(CurrencyType type, int limit) { - return ((payments.get(type).getAmount() / limit) - 1) * 100; + return ((payments.get(type).getAmount() / limit) - 1) * 100; } public boolean isOverTimeLimit(CurrencyType type) { - if (getTime(type) + (Jobs.getGCManager().getLimit(type).getTimeLimit() * 1000) > System.currentTimeMillis()) { - return false; - } - if (informed) - informed = false; - resetLimits(); - return true; + if (getLeftTime(type) > 0) { + return false; + } + if (informed) + informed = false; + resetLimits(); + return true; } public void resetLimits() { - for (CurrencyType type : CurrencyType.values()) { - addNewAmount(type, 0D); - setReseted(type, true); - } + for (CurrencyType type : CurrencyType.values()) { + addNewAmount(type, 0D); + setReseted(type, true); + } } public void resetLimits(CurrencyType type) { - addNewAmount(type, 0D); - setReseted(type, true); + addNewAmount(type, 0D); + setReseted(type, true); } public boolean isReachedLimit(CurrencyType type, int money) { - isOverTimeLimit(type); - return isOverLimit(type, money); + isOverTimeLimit(type); + return isOverLimit(type, money); } public boolean isInformed() { - return informed; + return informed; } public void setInformed(boolean informed) { - this.informed = informed; + this.informed = informed; } } From 2346e7d6234398b14370733deef90f3f5878888f Mon Sep 17 00:00:00 2001 From: Zrips Date: Tue, 2 May 2023 16:38:04 +0300 Subject: [PATCH 08/31] Single command for boosts --- .../jobs/commands/JobsCommands.java | 15 +- .../gamingmesh/jobs/commands/list/boost.java | 177 ++++++++++++++++++ .../jobs/commands/list/expboost.java | 106 ----------- .../jobs/commands/list/moneyboost.java | 106 ----------- .../jobs/commands/list/pointboost.java | 106 ----------- .../jobs/config/GeneralConfigManager.java | 9 +- .../jobs/config/LanguageManager.java | 62 +++--- .../jobs/container/BoostMultiplier.java | 70 +++---- .../jobs/container/CurrencyType.java | 43 +++-- .../gamingmesh/jobs/container/JobInfo.java | 130 ++++++------- .../gamingmesh/jobs/stuff/TabComplete.java | 2 +- 11 files changed, 351 insertions(+), 475 deletions(-) create mode 100644 src/main/java/com/gamingmesh/jobs/commands/list/boost.java delete mode 100644 src/main/java/com/gamingmesh/jobs/commands/list/expboost.java delete mode 100644 src/main/java/com/gamingmesh/jobs/commands/list/moneyboost.java delete mode 100644 src/main/java/com/gamingmesh/jobs/commands/list/pointboost.java diff --git a/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java b/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java index ce9d2264..2f7c199f 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java +++ b/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java @@ -270,14 +270,17 @@ public class JobsCommands implements CommandExecutor { List message = new ArrayList<>(); - if (job.getBoost().get(CurrencyType.EXP) != 0D) - message.add(Jobs.getLanguage().getMessage("command.expboost.output.infostats", "%boost%", (job.getBoost().get(CurrencyType.EXP)) + 1)); + for (CurrencyType one : CurrencyType.values()) { + double boost = job.getBoost().get(one); + if (boost != 0D) { - if (job.getBoost().get(CurrencyType.MONEY) != 0D) - message.add(Jobs.getLanguage().getMessage("command.moneyboost.output.infostats", "%boost%", (job.getBoost().get(CurrencyType.MONEY)) + 1)); + String boostAmount = String.valueOf(boost + 1); + if (boost % 1 == 0) + boostAmount = String.valueOf((int) boost + 1); - if (job.getBoost().get(CurrencyType.POINTS) != 0D) - message.add(Jobs.getLanguage().getMessage("command.pointboost.output.infostats", "%boost%", (job.getBoost().get(CurrencyType.POINTS)) + 1)); + message.add(Jobs.getLanguage().getMessage("command.boost.output.infostats", "%boost%", boostAmount, "%type%", one.getDisplayName())); + } + } if (Jobs.getGCManager().useDynamicPayment) { int bonus = (int) ((job.getBonus() * 100) / 100.0); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/boost.java b/src/main/java/com/gamingmesh/jobs/commands/list/boost.java new file mode 100644 index 00000000..2a18584c --- /dev/null +++ b/src/main/java/com/gamingmesh/jobs/commands/list/boost.java @@ -0,0 +1,177 @@ +package com.gamingmesh.jobs.commands.list; + +import org.bukkit.command.CommandSender; + +import com.gamingmesh.jobs.Jobs; +import com.gamingmesh.jobs.commands.Cmd; +import com.gamingmesh.jobs.container.CurrencyType; +import com.gamingmesh.jobs.container.Job; + +import net.Zrips.CMILib.Locale.LC; +import net.Zrips.CMILib.Logs.CMIDebug; +import net.Zrips.CMILib.RawMessages.RawMessage; +import net.Zrips.CMILib.Time.CMITimeManager; +import net.Zrips.CMILib.Time.timeModifier; + +public class boost implements Cmd { + + @Override + public boolean perform(Jobs plugin, CommandSender sender, String[] args) { + + Double rate = null; + Long timeDuration = null; + Job job = null; + boolean allJobs = false; + boolean reset = false; + CurrencyType type = null; + + for (String one : args) { + + if (type == null) { + type = CurrencyType.getByName(one); + if (type != null) + continue; + } + + if (one.equalsIgnoreCase("all")) { + allJobs = true; + continue; + } + + if (one.equalsIgnoreCase("reset")) { + reset = true; + continue; + } + + if (job == null) { + job = Jobs.getJob(one); + if (job != null) + continue; + } + + if (rate == null) { + try { + rate = Double.parseDouble(one); + continue; + } catch (NumberFormatException e) { + } + } + + try { + Long t = timeModifier.getTimeRangeFromString(one); + if (timeDuration == null && t != null) { + timeDuration = t; + continue; + } + } catch (Exception e) { + } + } + + if (job == null && rate == null) { + LC.info_Spliter.sendMessage(sender); + for (Job one : Jobs.getJobs()) { + showBoosts(sender, one); + } + return true; + } + + if (job != null && rate == null) { + LC.info_Spliter.sendMessage(sender); + showBoosts(sender, job); + return true; + } + + if (rate == null) + rate = 1D; + + if (timeDuration == null) + timeDuration = 0L; + + if (reset) { + if (allJobs) { + if (type == null) { + for (Job one : Jobs.getJobs()) { + for (CurrencyType curr : CurrencyType.values()) { + one.addBoost(curr, 1.0); + } + } + sender.sendMessage(Jobs.getLanguage().getMessage("command.boost.output.allreset")); + } else { + for (Job one : Jobs.getJobs()) { + one.addBoost(type, 1.0); + } + sender.sendMessage(Jobs.getLanguage().getMessage("command.boost.output.alltypereset", "%type%", type.getDisplayName())); + } + } else if (job != null) { + if (type == null) { + for (CurrencyType curr : CurrencyType.values()) { + job.addBoost(curr, 1.0); + } + sender.sendMessage(Jobs.getLanguage().getMessage("command.moneyboost.output.jobsboostreset", "%jobname%", job.getName())); + } else { + job.addBoost(type, 1.0); + sender.sendMessage(Jobs.getLanguage().getMessage("command.moneyboost.output.jobstypeboostreset", "%jobname%", job.getName(), "%type%", type.getDisplayName())); + } + } else { + return false; + } + return true; + } + + if (job == null || allJobs) { + for (Job one : Jobs.getJobs()) { + if (type == null) { + for (CurrencyType curr : CurrencyType.values()) { + one.addBoost(curr, rate, timeDuration); + } + } else { + one.addBoost(type, rate, timeDuration); + } + + sender.sendMessage(Jobs.getLanguage().getMessage("command.boost.output.boostadded", "%boost%", rate, "%jobname%", one.getName())); + } + } else { + if (type == null) { + for (CurrencyType curr : CurrencyType.values()) { + job.addBoost(curr, rate, timeDuration); + } + } else { + job.addBoost(type, rate, timeDuration); + } + CMIDebug.d(timeDuration); + sender.sendMessage(Jobs.getLanguage().getMessage("command.boost.output.boostadded", "%boost%", rate, "%jobname%", job.getName())); + } + + return true; + } + + private void showBoosts(CommandSender sender, Job job) { + RawMessage rm = new RawMessage(); + String msg = Jobs.getLanguage().getMessage("command.boost.output.boostStats", "%jobname%", job.getDisplayName()); + String[] split = msg.split("%payments%"); + + rm.addText(split[0]); + +// String msg = Jobs.getLanguage().getMessage("command.boost.output.boostStats", "%jobname%", job.getDisplayName()); + for (CurrencyType curr : CurrencyType.values()) { + + double boost = job.getBoost().get(curr); + + String boostAmount = String.valueOf(boost); + if (boost % 1 == 0) + boostAmount = String.valueOf((int) boost); + + if (curr.isEnabled()) { + rm.addText(Jobs.getLanguage().getMessage("general.info.paymentTypeValued." + curr.toString(), "%amount%", boostAmount) + " "); + } + + if (job.getBoost().getTime(curr) != null && job.getBoost().isValid(curr)) { + rm.addHover(CMITimeManager.to24hourShort(job.getBoost().getTime(curr) - System.currentTimeMillis())); + CMIDebug.c(job.getBoost().getTime(curr) - System.currentTimeMillis()); + } + } + if (split.length > 1) + rm.addText(split[1]); + rm.show(sender); + } +} diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/expboost.java b/src/main/java/com/gamingmesh/jobs/commands/list/expboost.java deleted file mode 100644 index 59caf9b8..00000000 --- a/src/main/java/com/gamingmesh/jobs/commands/list/expboost.java +++ /dev/null @@ -1,106 +0,0 @@ -package com.gamingmesh.jobs.commands.list; - -import org.bukkit.command.CommandSender; - -import com.gamingmesh.jobs.Jobs; -import com.gamingmesh.jobs.commands.Cmd; -import com.gamingmesh.jobs.container.CurrencyType; -import com.gamingmesh.jobs.container.Job; - -import net.Zrips.CMILib.Time.timeModifier; - -public class expboost implements Cmd { - - @Override - public boolean perform(Jobs plugin, CommandSender sender, String[] args) { - if (args.length > 3 || args.length <= 1) { - Jobs.getCommandManager().sendUsage(sender, "expboost"); - return true; - } - - Double rate = null; - Long timeDuration = null; - String jobName = null; - boolean reset = false; - - for (String one : args) { - if (one.equalsIgnoreCase("reset")) { - reset = true; - continue; - } - - if (jobName == null) { - jobName = one; - continue; - } - - if (rate == null) { - try { - rate = Double.parseDouble(one); - continue; - } catch (NumberFormatException e) { - } - } - - try { - Long t = timeModifier.getTimeRangeFromString(one); - if (t != null) - timeDuration = t; - continue; - } catch (Exception e) { - } - } - - if (!reset && rate == null || jobName == null) { - Jobs.getCommandManager().sendUsage(sender, "expboost"); - return false; - } - - if (rate == null) - rate = 1D; - - if (timeDuration == null) - timeDuration = 0L; - - if (!reset && jobName.equalsIgnoreCase("all")) { - for (Job job : Jobs.getJobs()) { - job.addBoost(CurrencyType.EXP, rate, timeDuration); - } - sender.sendMessage(Jobs.getLanguage().getMessage("command.expboost.output.boostalladded", "%boost%", rate)); - return true; - } - - if (reset) { - if (jobName.equalsIgnoreCase("all")) { - for (Job one : Jobs.getJobs()) { - one.addBoost(CurrencyType.EXP, 1.0); - } - - sender.sendMessage(Jobs.getLanguage().getMessage("command.expboost.output.allreset")); - } else if (args.length > 1) { - Job job = Jobs.getJob(jobName); - if (job == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } - - job.addBoost(CurrencyType.EXP, 1.0); - - sender.sendMessage(Jobs.getLanguage().getMessage("command.expboost.output.jobsboostreset", "%jobname%", job.getName())); - } - - return true; - } - - Job job = Jobs.getJob(jobName); - if (job == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } - - job.addBoost(CurrencyType.EXP, rate, timeDuration); - sender.sendMessage(Jobs.getLanguage().getMessage("command.expboost.output.boostadded", "%boost%", rate, - "%jobname%", job.getName())); - return true; - } -} diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/moneyboost.java b/src/main/java/com/gamingmesh/jobs/commands/list/moneyboost.java deleted file mode 100644 index 42f01588..00000000 --- a/src/main/java/com/gamingmesh/jobs/commands/list/moneyboost.java +++ /dev/null @@ -1,106 +0,0 @@ -package com.gamingmesh.jobs.commands.list; - -import org.bukkit.command.CommandSender; - -import com.gamingmesh.jobs.Jobs; -import com.gamingmesh.jobs.commands.Cmd; -import com.gamingmesh.jobs.container.CurrencyType; -import com.gamingmesh.jobs.container.Job; - -import net.Zrips.CMILib.Time.timeModifier; - -public class moneyboost implements Cmd { - - @Override - public boolean perform(Jobs plugin, CommandSender sender, String[] args) { - if (args.length > 3 || args.length <= 1) { - Jobs.getCommandManager().sendUsage(sender, "moneyboost"); - return true; - } - - Double rate = null; - Long timeDuration = null; - String jobName = null; - boolean reset = false; - - for (String one : args) { - if (one.equalsIgnoreCase("reset")) { - reset = true; - continue; - } - - if (jobName == null) { - jobName = one; - continue; - } - - if (rate == null) { - try { - rate = Double.parseDouble(one); - continue; - } catch (NumberFormatException e) { - } - } - - try { - Long t = timeModifier.getTimeRangeFromString(one); - if (t != null) - timeDuration = t; - continue; - } catch (Exception e) { - } - } - - if (!reset && rate == null || jobName == null) { - Jobs.getCommandManager().sendUsage(sender, "moneyboost"); - return false; - } - - if (rate == null) - rate = 1D; - - if (timeDuration == null) - timeDuration = 0L; - - if (!reset && jobName.equalsIgnoreCase("all")) { - for (Job job : Jobs.getJobs()) { - job.addBoost(CurrencyType.MONEY, rate, timeDuration); - } - sender.sendMessage(Jobs.getLanguage().getMessage("command.moneyboost.output.boostalladded", "%boost%", rate)); - return true; - } - - if (reset) { - if (jobName.equalsIgnoreCase("all")) { - for (Job one : Jobs.getJobs()) { - one.addBoost(CurrencyType.MONEY, 1.0); - } - - sender.sendMessage(Jobs.getLanguage().getMessage("command.moneyboost.output.allreset")); - } else if (args.length > 1) { - Job job = Jobs.getJob(jobName); - if (job == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } - - job.addBoost(CurrencyType.MONEY, 1.0); - - sender.sendMessage(Jobs.getLanguage().getMessage("command.moneyboost.output.jobsboostreset", "%jobname%", job.getName())); - } - - return true; - } - - Job job = Jobs.getJob(jobName); - if (job == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } - - job.addBoost(CurrencyType.MONEY, rate, timeDuration); - sender.sendMessage(Jobs.getLanguage().getMessage("command.moneyboost.output.boostadded", "%boost%", rate, - "%jobname%", job.getName())); - return true; - } -} diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/pointboost.java b/src/main/java/com/gamingmesh/jobs/commands/list/pointboost.java deleted file mode 100644 index 0b9c99ea..00000000 --- a/src/main/java/com/gamingmesh/jobs/commands/list/pointboost.java +++ /dev/null @@ -1,106 +0,0 @@ -package com.gamingmesh.jobs.commands.list; - -import org.bukkit.command.CommandSender; - -import com.gamingmesh.jobs.Jobs; -import com.gamingmesh.jobs.commands.Cmd; -import com.gamingmesh.jobs.container.CurrencyType; -import com.gamingmesh.jobs.container.Job; - -import net.Zrips.CMILib.Time.timeModifier; - -public class pointboost implements Cmd { - - @Override - public boolean perform(Jobs plugin, CommandSender sender, String[] args) { - if (args.length > 3 || args.length <= 1) { - Jobs.getCommandManager().sendUsage(sender, "pointboost"); - return true; - } - - Double rate = null; - Long timeDuration = null; - String jobName = null; - boolean reset = false; - - for (String one : args) { - if (one.equalsIgnoreCase("reset")) { - reset = true; - continue; - } - - if (jobName == null) { - jobName = one; - continue; - } - - if (rate == null) { - try { - rate = Double.parseDouble(one); - continue; - } catch (NumberFormatException e) { - } - } - - try { - Long t = timeModifier.getTimeRangeFromString(one); - if (t != null) - timeDuration = t; - continue; - } catch (Exception e) { - } - } - - if (!reset && rate == null || jobName == null) { - Jobs.getCommandManager().sendUsage(sender, "moneyboost"); - return false; - } - - if (rate == null) - rate = 1D; - - if (timeDuration == null) - timeDuration = 0L; - - if (!reset && jobName.equalsIgnoreCase("all")) { - for (Job job : Jobs.getJobs()) { - job.addBoost(CurrencyType.POINTS, rate, timeDuration); - } - sender.sendMessage(Jobs.getLanguage().getMessage("command.pointboost.output.boostalladded", "%boost%", rate)); - return true; - } - - if (reset) { - if (jobName.equalsIgnoreCase("all")) { - for (Job one : Jobs.getJobs()) { - one.addBoost(CurrencyType.POINTS, 1.0); - } - - sender.sendMessage(Jobs.getLanguage().getMessage("command.pointboost.output.allreset")); - } else if (args.length > 1) { - Job job = Jobs.getJob(jobName); - if (job == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } - - job.addBoost(CurrencyType.POINTS, 1.0); - - sender.sendMessage(Jobs.getLanguage().getMessage("command.pointboost.output.jobsboostreset", "%jobname%", job.getName())); - } - - return true; - } - - Job job = Jobs.getJob(jobName); - if (job == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } - - job.addBoost(CurrencyType.POINTS, rate, timeDuration); - sender.sendMessage(Jobs.getLanguage().getMessage("command.pointboost.output.boostadded", "%boost%", rate, - "%jobname%", job.getName())); - return true; - } -} diff --git a/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java b/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java index c067aff7..13413c3c 100644 --- a/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java @@ -107,7 +107,7 @@ public class GeneralConfigManager { EnableConfirmation, jobsInfoOpensBrowse, MonsterDamageUse, useMaxPaymentCurve, blockOwnershipTakeOver, hideJobsInfoWithoutPermission, UseTaxes, TransferToServerAccount, TakeFromPlayersPayment, AutoJobJoinUse, AllowDelevel, RomanNumbers, BossBarEnabled = false, BossBarShowOnEachAction = false, BossBarsMessageByDefault = false, ExploreCompact, DBCleaningJobsUse, DBCleaningUsersUse, - DisabledWorldsUse, UseAsWhiteListWorldList, PaymentMethodsMoney, PaymentMethodsPoints, PaymentMethodsExp, MythicMobsEnabled, + DisabledWorldsUse, UseAsWhiteListWorldList, MythicMobsEnabled, LoggingUse, payForCombiningItems, BlastFurnacesReassign = false, SmokerReassign = false, payForStackedEntities, payForAbove = false, payForEachVTradeItem, allowEnchantingBoostedItems, bossBarAsync = false, preventShopItemEnchanting; @@ -586,9 +586,10 @@ public class GeneralConfigManager { c.addComment("Economy.PaymentMethods", "By disabling one of these, players no longer will get particular payment.", "Useful for removing particular payment method without editing whole jobConfig file"); - PaymentMethodsMoney = c.get("Economy.PaymentMethods.Money", true); - PaymentMethodsPoints = c.get("Economy.PaymentMethods.Points", true); - PaymentMethodsExp = c.get("Economy.PaymentMethods.Exp", true); + + for (CurrencyType one : CurrencyType.values()) { + one.setEnabled(c.get("Economy.PaymentMethods." + one.getName(), true)); + } c.addComment("Economy.GeneralMulti", "Can be used to change payment amounts for all jobs and all actions if you want to readjust them", diff --git a/src/main/java/com/gamingmesh/jobs/config/LanguageManager.java b/src/main/java/com/gamingmesh/jobs/config/LanguageManager.java index c0071f1e..2c6d9442 100644 --- a/src/main/java/com/gamingmesh/jobs/config/LanguageManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/LanguageManager.java @@ -7,6 +7,7 @@ import java.util.Iterator; import java.util.List; import com.gamingmesh.jobs.Jobs; +import com.gamingmesh.jobs.container.CurrencyType; import com.gamingmesh.jobs.stuff.Util; import net.Zrips.CMILib.FileHandler.ConfigReader; @@ -79,6 +80,19 @@ public class LanguageManager { c.get("limitedItem.error.levelup", "&cYou need to level up in [jobname] to use this item!"); c.get("general.info.toplineseparator", "&7*********************** &6%playerdisplayname% &7***********************"); c.get("general.info.separator", "&7*******************************************************"); + + for (CurrencyType curr : CurrencyType.values()) { + c.get("general.info.paymentType." + curr.toString(), curr.getName()); + + String color = "&2"; + if (curr.equals(CurrencyType.POINTS)) + color = "&6"; + else if (curr.equals(CurrencyType.EXP)) + color = "&e"; + + c.get("general.info.paymentTypeValued." + curr.toString(), color + curr.getName() + ": %amount%"); + } + c.get("general.info.invalidPage", "&cInvalid page"); c.get("general.info.blocks.furnace", "Furnace"); c.get("general.info.blocks.smoker", "Smoker"); @@ -107,35 +121,17 @@ public class LanguageManager { c.get("command.help.output.title", "&e-------&e ======= &6Jobs &e======= &e-------"); - c.get("command.moneyboost.help.info", "Boosts money gain for all players"); - c.get("command.moneyboost.help.args", "[jobname]/all/reset [time]/[rate]"); - Jobs.getGCManager().getCommandArgs().put("moneyboost", Arrays.asList("[jobname]%%all%%reset", "[time]%%2", "%%2")); - c.get("command.moneyboost.output.allreset", "All money boosts turned off"); - c.get("command.moneyboost.output.jobsboostreset", "Money boost has been turned off for %jobname%"); - c.get("command.moneyboost.output.nothingtoreset", "Nothing to reset"); - c.get("command.moneyboost.output.boostalladded", "Money boost of %boost% added for all jobs!"); - c.get("command.moneyboost.output.boostadded", "Money boost of &e%boost% &aadded for &e%jobname%!"); - c.get("command.moneyboost.output.infostats", "&c-----> &aMoney rate x%boost% enabled&c <-------"); - - c.get("command.pointboost.help.info", "Boosts point gain for all players"); - c.get("command.pointboost.help.args", "[jobname]/all/reset [time]/[rate]"); - Jobs.getGCManager().getCommandArgs().put("pointboost", Arrays.asList("[jobname]%%all%%reset", "[time]%%2", "%%2")); - c.get("command.pointboost.output.allreset", "All point boosts turned off"); - c.get("command.pointboost.output.jobsboostreset", "Point boost has been turned off for %jobname%"); - c.get("command.pointboost.output.nothingtoreset", "Nothing to reset"); - c.get("command.pointboost.output.boostalladded", "Points boost of %boost% added for all jobs!"); - c.get("command.pointboost.output.boostadded", "Points boost of &e%boost% &aadded for &e%jobname%!"); - c.get("command.pointboost.output.infostats", "&c-----> &aPoints rate x%boost% enabled&c <-------"); - - c.get("command.expboost.help.info", "Boosts exp gain for all players"); - c.get("command.expboost.help.args", "[jobname]/all/reset [time]/[rate]"); - Jobs.getGCManager().getCommandArgs().put("expboost", Arrays.asList("[jobname]%%all%%reset", "[time]%%2", "%%2")); - c.get("command.expboost.output.allreset", "All exp boosts turned off"); - c.get("command.expboost.output.jobsboostreset", "Exp boost has been turned off for %jobname%"); - c.get("command.expboost.output.nothingtoreset", "Nothing to reset"); - c.get("command.expboost.output.boostalladded", "Exp boost of %boost% added for all jobs!"); - c.get("command.expboost.output.boostadded", "Exp boost of &e%boost% &aadded for &e%jobname%!"); - c.get("command.expboost.output.infostats", "&c-----> &aExp rate x%boost% enabled&c <-------"); + c.get("command.boost.help.info", "Boosts jobs gains for all players"); + c.get("command.boost.help.args", "exp/money/points [jobname]/all/reset [rate] [time]"); + Jobs.getGCManager().getCommandArgs().put("boost", Arrays.asList("[jobname]", "reset%%exp%%money%%points", "[time]%%2", "%%2")); + c.get("command.boost.output.allreset", "&aAll boosts turned off"); + c.get("command.boost.output.alltypereset", "&aAll &e%type% &aboosts turned off"); + c.get("command.boost.output.jobsboostreset", "&aBoost has been turned off for &e%jobname%"); + c.get("command.boost.output.jobstypeboostreset", "&e%type% &aboost has been turned off for &e%jobname%"); + c.get("command.boost.output.nothingtoreset", "Nothing to reset"); + c.get("command.boost.output.boostadded", "&aBoost of &e%boost% &aadded for &e%jobname%!"); + c.get("command.boost.output.infostats", "&c-----> &a%type% rate x%boost% enabled&c <-------"); + c.get("command.boost.output.boostStats", "&6%payments% &e%jobname%"); c.get("command.schedule.help.info", "Enables the given scheduler"); c.get("command.schedule.help.args", "enable [scheduleName] [untilTime]"); @@ -248,9 +244,9 @@ public class LanguageManager { c.get("command.editjobs.help.modify.lookHover", "&6Press to grab info from block you are looking"); c.get("command.editquests.help.info", "Edit job quests."); - c.get("command.editquests.help.args", "(page)"); + c.get("command.editquests.help.args", "(page)"); c.get("command.editquests.help.output.list", "&6[questName] &7- &f[jobName]"); - + c.get("command.editquests.help.output.name", "&eName: &f"); c.get("command.editquests.help.output.job", " &eJob: &f"); c.get("command.editquests.help.output.chance", " &eChance: &f"); @@ -301,11 +297,11 @@ public class LanguageManager { c.get("command.shop.help.info", "Opens special jobs shop."); c.get("command.shop.help.args", ""); c.get("command.shop.info.title", "&e------- &8Jobs shop &e-------"); - + c.get("command.shop.info.haveColor", "&2"); c.get("command.shop.info.pointsPrice", "&ePoint cost: &c%currentpoints%&e/&6%price%"); c.get("command.shop.info.moneyPrice", "&eMoney cost: &c%currentbalance%&e/&6%price%"); - + c.get("command.shop.info.reqJobs", "&eRequired jobs:"); c.get("command.shop.info.reqJobsList", " &6%jobsname%&e: &e%level% lvl"); c.get("command.shop.info.reqTotalLevel", "&6Required total level: &e%totalLevel%"); diff --git a/src/main/java/com/gamingmesh/jobs/container/BoostMultiplier.java b/src/main/java/com/gamingmesh/jobs/container/BoostMultiplier.java index da6a834a..bf43a86f 100644 --- a/src/main/java/com/gamingmesh/jobs/container/BoostMultiplier.java +++ b/src/main/java/com/gamingmesh/jobs/container/BoostMultiplier.java @@ -9,65 +9,67 @@ public class BoostMultiplier implements Cloneable { @Override public BoostMultiplier clone() { - BoostMultiplier boost = new BoostMultiplier(); - for (CurrencyType type : CurrencyType.values()) { - boost.add(type, map.get(type)); - } - return boost; + BoostMultiplier boost = new BoostMultiplier(); + for (CurrencyType type : CurrencyType.values()) { + boost.add(type, map.get(type)); + } + return boost; } public BoostMultiplier() { - for (CurrencyType one : CurrencyType.values()) { - map.put(one, 0D); - } + for (CurrencyType one : CurrencyType.values()) { + map.put(one, 0D); + } } public BoostMultiplier add(CurrencyType type, double amount) { - map.put(type, amount); - return this; + map.put(type, amount); + timers.remove(type); + return this; } public BoostMultiplier add(CurrencyType type, double amount, long time) { - timers.put(type, time); - return add(type, amount); + add(type, amount); + timers.put(type, time); + return this; } public BoostMultiplier add(double amount) { - if (amount != 0) { - for (CurrencyType one : CurrencyType.values()) { - map.put(one, amount); - } - } - return this; + if (amount != 0) { + for (CurrencyType one : CurrencyType.values()) { + map.put(one, amount); + } + } + return this; } public double get(CurrencyType type) { - if (!isValid(type)) - return 0D; - return map.getOrDefault(type, 0D); + if (!isValid(type)) + return 0D; + return map.getOrDefault(type, 0D); } public Long getTime(CurrencyType type) { - return timers.get(type); + return timers.get(type); } public boolean isValid(CurrencyType type) { - Long time = getTime(type); - if (time == null) - return true; + Long time = getTime(type); + if (time == null) + return true; - if (time < System.currentTimeMillis()) { - map.remove(type); - timers.remove(type); - return false; - } + if (time < System.currentTimeMillis()) { + map.remove(type); + timers.remove(type); + return false; + } - return true; + return true; } public void add(BoostMultiplier armorboost) { - for (CurrencyType one : CurrencyType.values()) { - map.put(one, get(one) + armorboost.get(one)); - } + for (CurrencyType one : CurrencyType.values()) { + map.put(one, get(one) + armorboost.get(one)); + } } } diff --git a/src/main/java/com/gamingmesh/jobs/container/CurrencyType.java b/src/main/java/com/gamingmesh/jobs/container/CurrencyType.java index 88484c0d..a1537f35 100644 --- a/src/main/java/com/gamingmesh/jobs/container/CurrencyType.java +++ b/src/main/java/com/gamingmesh/jobs/container/CurrencyType.java @@ -18,6 +18,8 @@ package com.gamingmesh.jobs.container; +import com.gamingmesh.jobs.Jobs; + public enum CurrencyType { MONEY("Money", 1), EXP("Exp", 2), @@ -25,33 +27,46 @@ public enum CurrencyType { private String name; private int id = 0; + private boolean enabled = true; CurrencyType(String name, int id) { - this.name = name; - this.id = id; + this.name = name; + this.id = id; } public String getName() { - return name; + return name; } public static CurrencyType getByName(String name) { - for (CurrencyType one : values()) { - if (one.getName().equalsIgnoreCase(name)) - return one; - } - return null; + for (CurrencyType one : values()) { + if (one.getName().equalsIgnoreCase(name)) + return one; + } + return null; } public static CurrencyType get(int id) { - for (CurrencyType one : values()) { - if (one.getId() == id) - return one; - } - return null; + for (CurrencyType one : values()) { + if (one.getId() == id) + return one; + } + return null; } public int getId() { - return id; + return id; + } + + public String getDisplayName() { + return Jobs.getLanguage().getMessage("general.info.paymentType." + this.toString()); + } + + public boolean isEnabled() { + return enabled; + } + + public void setEnabled(boolean enabled) { + this.enabled = enabled; } } diff --git a/src/main/java/com/gamingmesh/jobs/container/JobInfo.java b/src/main/java/com/gamingmesh/jobs/container/JobInfo.java index 4e2c639b..4c8cc33c 100644 --- a/src/main/java/com/gamingmesh/jobs/container/JobInfo.java +++ b/src/main/java/com/gamingmesh/jobs/container/JobInfo.java @@ -38,127 +38,127 @@ public class JobInfo { private Integer softIncomeLevelLimit, softExpLevelLimit, softPointsLevelLimit; public JobInfo(ActionType actionType, int id, String meta, String name, double baseIncome, Parser moneyEquation, double baseXp, Parser xpEquation, - Parser pointsEquation, double basePoints, int fromLevel, int untilLevel, String configPath) { - this(actionType, id, meta, name, baseIncome, moneyEquation, baseXp, xpEquation, pointsEquation, basePoints, fromLevel, untilLevel, configPath, null, null, null); + Parser pointsEquation, double basePoints, int fromLevel, int untilLevel, String configPath) { + this(actionType, id, meta, name, baseIncome, moneyEquation, baseXp, xpEquation, pointsEquation, basePoints, fromLevel, untilLevel, configPath, null, null, null); } public JobInfo(ActionType actionType, int id, String meta, String name, double baseIncome, Parser moneyEquation, double baseXp, Parser xpEquation, - Parser pointsEquation, double basePoints, int fromLevel, int untilLevel, String configPath, Integer softIncomeLevelLimit, Integer softExpLevelLimit, Integer softPointsLevelLimit) { - this.actionType = actionType; - this.id = id; - this.meta = meta; - this.name = name; - this.baseIncome = baseIncome; - this.moneyEquation = moneyEquation; - this.pointsEquation = pointsEquation; - this.basePoints = basePoints; - this.baseXp = baseXp; - this.xpEquation = xpEquation; - this.fromLevel = fromLevel; - this.untilLevel = untilLevel; - this.configPath = configPath; - this.softIncomeLevelLimit = softIncomeLevelLimit; - this.softExpLevelLimit = softExpLevelLimit; - this.softPointsLevelLimit = softPointsLevelLimit; + Parser pointsEquation, double basePoints, int fromLevel, int untilLevel, String configPath, Integer softIncomeLevelLimit, Integer softExpLevelLimit, Integer softPointsLevelLimit) { + this.actionType = actionType; + this.id = id; + this.meta = meta; + this.name = name; + this.baseIncome = baseIncome; + this.moneyEquation = moneyEquation; + this.pointsEquation = pointsEquation; + this.basePoints = basePoints; + this.baseXp = baseXp; + this.xpEquation = xpEquation; + this.fromLevel = fromLevel; + this.untilLevel = untilLevel; + this.configPath = configPath; + this.softIncomeLevelLimit = softIncomeLevelLimit; + this.softExpLevelLimit = softExpLevelLimit; + this.softPointsLevelLimit = softPointsLevelLimit; } public int getFromLevel() { - return fromLevel; + return fromLevel; } public int getUntilLevel() { - return untilLevel; + return untilLevel; } public boolean isInLevelRange(int level) { - return level >= fromLevel && (level <= untilLevel || untilLevel == -1); + return level >= fromLevel && (level <= untilLevel || untilLevel == -1); } public String getName() { - return name; + return name; } public String getRealisticName() { - String materialName = name.toLowerCase().replace('_', ' '); - materialName = Character.toUpperCase(materialName.charAt(0)) + materialName.substring(1); - materialName = Jobs.getNameTranslatorManager().translate(actionType == ActionType.MMKILL ? name : materialName, this); - materialName = CMIChatColor.translate(materialName); - return materialName; + String materialName = name.toLowerCase().replace('_', ' '); + materialName = Character.toUpperCase(materialName.charAt(0)) + materialName.substring(1); + materialName = Jobs.getNameTranslatorManager().translate(actionType == ActionType.MMKILL ? name : materialName, this); + materialName = CMIChatColor.translate(materialName); + return materialName; } public int getId() { - return id; + return id; } public ActionType getActionType() { - return actionType; + return actionType; } public String getMeta() { - return meta; + return meta; } public double getBaseIncome() { - return baseIncome; + return baseIncome; } public double getBaseXp() { - return baseXp; + return baseXp; } public double getBasePoints() { - return basePoints; + return basePoints; } public double getIncome(double level, int numjobs, int maxJobs) { - if (softIncomeLevelLimit != null && level > softIncomeLevelLimit) - level = softIncomeLevelLimit; - if (baseIncome == 0 || !Jobs.getGCManager().PaymentMethodsMoney) - return 0; - moneyEquation.setVariable("joblevel", level); - moneyEquation.setVariable("numjobs", numjobs); - moneyEquation.setVariable("maxjobs", maxJobs); - moneyEquation.setVariable("baseincome", baseIncome); - return moneyEquation.getValue(); + if (softIncomeLevelLimit != null && level > softIncomeLevelLimit) + level = softIncomeLevelLimit; + if (baseIncome == 0 || !CurrencyType.MONEY.isEnabled()) + return 0; + moneyEquation.setVariable("joblevel", level); + moneyEquation.setVariable("numjobs", numjobs); + moneyEquation.setVariable("maxjobs", maxJobs); + moneyEquation.setVariable("baseincome", baseIncome); + return moneyEquation.getValue(); } public double getExperience(double level, int numjobs, int maxJobs) { - if (softExpLevelLimit != null && level > softExpLevelLimit) - level = softExpLevelLimit; - if (baseXp == 0 || !Jobs.getGCManager().PaymentMethodsExp) - return 0; - xpEquation.setVariable("joblevel", level); - xpEquation.setVariable("numjobs", numjobs); - xpEquation.setVariable("maxjobs", maxJobs); - xpEquation.setVariable("baseexperience", baseXp); - return xpEquation.getValue(); + if (softExpLevelLimit != null && level > softExpLevelLimit) + level = softExpLevelLimit; + if (baseXp == 0 || !CurrencyType.EXP.isEnabled()) + return 0; + xpEquation.setVariable("joblevel", level); + xpEquation.setVariable("numjobs", numjobs); + xpEquation.setVariable("maxjobs", maxJobs); + xpEquation.setVariable("baseexperience", baseXp); + return xpEquation.getValue(); } public double getPoints(double level, int numjobs, int maxJobs) { - if (softPointsLevelLimit != null && level > softPointsLevelLimit) - level = softPointsLevelLimit; - if (basePoints == 0 || !Jobs.getGCManager().PaymentMethodsPoints) - return 0; - pointsEquation.setVariable("joblevel", level); - pointsEquation.setVariable("numjobs", numjobs); - pointsEquation.setVariable("maxjobs", maxJobs); - pointsEquation.setVariable("basepoints", basePoints); - return pointsEquation.getValue(); + if (softPointsLevelLimit != null && level > softPointsLevelLimit) + level = softPointsLevelLimit; + if (basePoints == 0 || !CurrencyType.POINTS.isEnabled()) + return 0; + pointsEquation.setVariable("joblevel", level); + pointsEquation.setVariable("numjobs", numjobs); + pointsEquation.setVariable("maxjobs", maxJobs); + pointsEquation.setVariable("basepoints", basePoints); + return pointsEquation.getValue(); } public String getConfigPath() { - return configPath; + return configPath; } public void setBaseIncome(double baseIncome) { - this.baseIncome = baseIncome; + this.baseIncome = baseIncome; } public void setBaseXp(double baseXp) { - this.baseXp = baseXp; + this.baseXp = baseXp; } public void setBasePoints(double basePoints) { - this.basePoints = basePoints; + this.basePoints = basePoints; } } diff --git a/src/main/java/com/gamingmesh/jobs/stuff/TabComplete.java b/src/main/java/com/gamingmesh/jobs/stuff/TabComplete.java index 7bba46c2..7c210025 100644 --- a/src/main/java/com/gamingmesh/jobs/stuff/TabComplete.java +++ b/src/main/java/com/gamingmesh/jobs/stuff/TabComplete.java @@ -60,7 +60,7 @@ public final class TabComplete implements TabCompleter { temp.addAll(Jobs.getScheduleManager().getConf().getConfig().getConfigurationSection("Boost").getKeys(false)); break; case "[time]": - temp.add("1hour10minute20s"); + temp.add("1h10m20s"); break; case "[questname]": case "[quest]": From 5ecb3456a3d3046c509becee8373e369c5d1db3a Mon Sep 17 00:00:00 2001 From: Zrips Date: Tue, 2 May 2023 16:42:26 +0300 Subject: [PATCH 09/31] Option to disable jobs shop --- .../gamingmesh/jobs/commands/list/shop.java | 39 +++++++++++-------- .../jobs/config/GeneralConfigManager.java | 7 +++- 2 files changed, 28 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/shop.java b/src/main/java/com/gamingmesh/jobs/commands/list/shop.java index 2b4ceb9b..3d2e569d 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/shop.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/shop.java @@ -2,35 +2,40 @@ package com.gamingmesh.jobs.commands.list; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; + import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import net.Zrips.CMILib.Locale.LC; -import net.Zrips.CMILib.Messages.CMIMessages; public class shop implements Cmd { @Override public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (!(sender instanceof Player)) { - CMIMessages.sendMessage(sender, LC.info_Ingame); - return true; - } + if (!Jobs.getGCManager().jobsshopenabled) { + LC.info_FeatureNotEnabled.sendMessage(sender); + return true; + } - if (args.length != 0 && args.length != 1) { - Jobs.getCommandManager().sendUsage(sender, "shop"); - return true; - } + if (!(sender instanceof Player)) { + LC.info_Ingame.sendMessage(sender); + return true; + } - int page = 1; - if (args.length == 1) - try { - page = Integer.parseInt(args[0]); - } catch (NumberFormatException e) { - } + if (args.length != 0 && args.length != 1) { + Jobs.getCommandManager().sendUsage(sender, "shop"); + return true; + } - Jobs.getShopManager().openShopGui((Player) sender, page); - return true; + int page = 1; + if (args.length == 1) + try { + page = Integer.parseInt(args[0]); + } catch (NumberFormatException e) { + } + + Jobs.getShopManager().openShopGui((Player) sender, page); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java b/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java index 13413c3c..90180c64 100644 --- a/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java @@ -96,7 +96,7 @@ public class GeneralConfigManager { PreventSlimeSplit, PreventMagmaCubeSplit, PreventHopperFillUps, PreventBrewingStandFillUps, informOnPaymentDisable, BrowseUseNewLook, payExploringWhenGliding = false, resetExploringData = false, disablePaymentIfMaxLevelReached, disablePaymentIfRiding, boostedItemsInOffHand = false, boostedItemsInMainHand, boostedArmorItems, boostedItemsSlotSpecific, multiplyBoostedExtraValues, addPermissionBoost, - highestPermissionBoost /*, preventCropResizePayment*/, + highestPermissionBoost, payItemDurabilityLoss, applyToNegativeIncome, useMinimumOveralPayment, useMinimumOveralPoints, useMinimumOveralExp, useBreederFinder, CancelCowMilking, fixAtMaxLevel, TitleChangeChat, TitleChangeActionBar, LevelChangeChat, @@ -110,6 +110,8 @@ public class GeneralConfigManager { DisabledWorldsUse, UseAsWhiteListWorldList, MythicMobsEnabled, LoggingUse, payForCombiningItems, BlastFurnacesReassign = false, SmokerReassign = false, payForStackedEntities, payForAbove = false, payForEachVTradeItem, allowEnchantingBoostedItems, bossBarAsync = false, preventShopItemEnchanting; + + public boolean jobsshopenabled; public ItemStack guiInfoButton; public int InfoButtonSlot = 9; @@ -450,6 +452,9 @@ public class GeneralConfigManager { c.addComment("prevent-shop-item-enchanting", "Prevent players to enchant items from the shop in the anvil with enchanted books"); preventShopItemEnchanting = c.get("prevent-shop-item-enchanting", true); + + c.addComment("jobs-shop-enabled", "Enables or disables jobs shop"); + jobsshopenabled = c.get("jobs-shop-enabled", true); c.addComment("enable-pay-near-spawner", "Option to allow payment to be made when killing mobs from a spawner.", From bc4e9343fc3d620468fbbdfee63f3b8d9d9e1472 Mon Sep 17 00:00:00 2001 From: Zrips Date: Tue, 2 May 2023 16:47:49 +0300 Subject: [PATCH 10/31] Option to disable daily quests --- src/main/java/com/gamingmesh/jobs/Jobs.java | 5 +- .../jobs/commands/list/editquests.java | 6 +- .../gamingmesh/jobs/commands/list/quests.java | 194 +++++++++--------- .../jobs/commands/list/resetquest.java | 68 +++--- .../jobs/commands/list/resetquesttotal.java | 73 ++++--- .../jobs/commands/list/skipquest.java | 150 +++++++------- .../jobs/config/GeneralConfigManager.java | 4 + 7 files changed, 269 insertions(+), 231 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/Jobs.java b/src/main/java/com/gamingmesh/jobs/Jobs.java index f37a750d..abe5c32a 100644 --- a/src/main/java/com/gamingmesh/jobs/Jobs.java +++ b/src/main/java/com/gamingmesh/jobs/Jobs.java @@ -912,6 +912,9 @@ public final class Jobs extends JavaPlugin { } private static void checkDailyQuests(JobsPlayer jPlayer, Job job, ActionInfo info) { + if (!Jobs.getGCManager().DailyQuestsEnabled) { + return; + } if (!job.getQuests().isEmpty()) { for (QuestProgression one : jPlayer.getQuestProgressions(job, info.getType())) { one.processQuest(jPlayer, info); @@ -1416,7 +1419,7 @@ public final class Jobs extends JavaPlugin { double expPayment = payment.get(CurrencyType.EXP); JobsPrePaymentEvent jobsPrePaymentEvent = new JobsPrePaymentEvent(jPlayer.getPlayer(), noneJob, payment.get(CurrencyType.MONEY), - payment.get(CurrencyType.POINTS), block, ent, victim, info); + payment.get(CurrencyType.POINTS), block, ent, victim, info); Bukkit.getServer().getPluginManager().callEvent(jobsPrePaymentEvent); // If event is canceled, don't do anything if (jobsPrePaymentEvent.isCancelled()) diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/editquests.java b/src/main/java/com/gamingmesh/jobs/commands/list/editquests.java index e1099090..4a2acfb0 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/editquests.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/editquests.java @@ -55,7 +55,11 @@ public class editquests implements Cmd { int page = 0; Action action = null; - + + if (!Jobs.getGCManager().DailyQuestsEnabled) { + LC.info_FeatureNotEnabled.sendMessage(sender); + } + for (String one : args) { if (page == 0) { try { diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/quests.java b/src/main/java/com/gamingmesh/jobs/commands/list/quests.java index d43557b2..f53d5dc6 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/quests.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/quests.java @@ -24,127 +24,133 @@ public class quests implements Cmd { @Override public boolean perform(Jobs plugin, final CommandSender sender, String[] args) { - JobsPlayer jPlayer = null; - boolean isPlayer = sender instanceof Player; - if (args.length >= 1 && !args[0].equalsIgnoreCase("stop") && !args[0].equalsIgnoreCase("start")) { - if (!Jobs.hasPermission(sender, "jobs.command.admin.quests", true)) - return true; + if (!Jobs.getGCManager().DailyQuestsEnabled) { + LC.info_FeatureNotEnabled.sendMessage(sender); + return true; + } - jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - } else if (isPlayer) - jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); + JobsPlayer jPlayer = null; + boolean isPlayer = sender instanceof Player; - if (jPlayer == null) { - if (args.length >= 1) - CMIMessages.sendMessage(sender, LC.info_NoInformation); - else - Jobs.getCommandManager().sendUsage(sender, "quests"); - return true; - } + if (args.length >= 1 && !args[0].equalsIgnoreCase("stop") && !args[0].equalsIgnoreCase("start")) { + if (!Jobs.hasPermission(sender, "jobs.command.admin.quests", true)) + return true; - List questProgs = jPlayer.getQuestProgressions(); + jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + } else if (isPlayer) + jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); - if (questProgs.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.quests.error.noquests")); - return true; - } + if (jPlayer == null) { + if (args.length >= 1) + CMIMessages.sendMessage(sender, LC.info_NoInformation); + else + Jobs.getCommandManager().sendUsage(sender, "quests"); + return true; + } - if (args.length >= 1) { - Boolean stopped = null; - String cmd = args[args.length == 1 ? 0 : 1]; + List questProgs = jPlayer.getQuestProgressions(); - if (cmd.equalsIgnoreCase("stop") && Jobs.hasPermission(sender, "jobs.command.admin.quests.stop", false)) { - stopped = true; - } else if (cmd.equalsIgnoreCase("start") && Jobs.hasPermission(sender, "jobs.command.admin.quests.start", false)) { - stopped = false; - } + if (questProgs.isEmpty()) { + sender.sendMessage(Jobs.getLanguage().getMessage("command.quests.error.noquests")); + return true; + } - if (stopped != null) { - for (QuestProgression q : questProgs) { - q.getQuest().setStopped(stopped); - } + if (args.length >= 1) { + Boolean stopped = null; + String cmd = args[args.length == 1 ? 0 : 1]; - sender.sendMessage(Jobs.getLanguage().getMessage("command.quests.status.changed", "%status%", - stopped ? Jobs.getLanguage().getMessage("command.quests.status.stopped") : Jobs.getLanguage().getMessage("command.quests.status.started"))); - return true; - } - } + if (cmd.equalsIgnoreCase("stop") && Jobs.hasPermission(sender, "jobs.command.admin.quests.stop", false)) { + stopped = true; + } else if (cmd.equalsIgnoreCase("start") && Jobs.hasPermission(sender, "jobs.command.admin.quests.start", false)) { + stopped = false; + } - sender.sendMessage(Jobs.getLanguage().getMessage("command.quests.toplineseparator", "[playerName]", jPlayer.getName(), "[questsDone]", jPlayer.getDoneQuests())); + if (stopped != null) { + for (QuestProgression q : questProgs) { + q.getQuest().setStopped(stopped); + } - for (JobProgression jobProg : jPlayer.progression) { - List list = jPlayer.getQuestProgressions(jobProg.getJob()); + sender.sendMessage(Jobs.getLanguage().getMessage("command.quests.status.changed", "%status%", + stopped ? Jobs.getLanguage().getMessage("command.quests.status.stopped") : Jobs.getLanguage().getMessage("command.quests.status.started"))); + return true; + } + } - for (QuestProgression q : list) { - int totalAmountNeeded = q.getTotalAmountNeeded(); - int totalAmountDone = q.getTotalAmountDone(); + sender.sendMessage(Jobs.getLanguage().getMessage("command.quests.toplineseparator", "[playerName]", jPlayer.getName(), "[questsDone]", jPlayer.getDoneQuests())); - String progressLine = Jobs.getCommandManager().jobProgressMessage(totalAmountNeeded, totalAmountDone); + for (JobProgression jobProg : jPlayer.progression) { + List list = jPlayer.getQuestProgressions(jobProg.getJob()); - boolean completed = q.isCompleted(); + for (QuestProgression q : list) { + int totalAmountNeeded = q.getTotalAmountNeeded(); + int totalAmountDone = q.getTotalAmountDone(); - if (completed) - progressLine = Jobs.getLanguage().getMessage("command.quests.output.completed"); + String progressLine = Jobs.getCommandManager().jobProgressMessage(totalAmountNeeded, totalAmountDone); - Quest quest = q.getQuest(); + boolean completed = q.isCompleted(); - String msg = Jobs.getLanguage().getMessage("command.quests.output.questLine", "[progress]", - progressLine, "[questName]", quest.getQuestName(), "[done]", totalAmountDone, "[required]", totalAmountNeeded); + if (completed) + progressLine = Jobs.getLanguage().getMessage("command.quests.output.completed"); - if (!isPlayer) { - sender.sendMessage(msg); - continue; - } + Quest quest = q.getQuest(); - RawMessage rm = new RawMessage(); + String msg = Jobs.getLanguage().getMessage("command.quests.output.questLine", "[progress]", + progressLine, "[questName]", quest.getQuestName(), "[done]", totalAmountDone, "[required]", totalAmountNeeded); - String hoverMsg = Jobs.getLanguage().getMessage("command.quests.output.hover"); - List hoverList = new ArrayList<>(); + if (!isPlayer) { + sender.sendMessage(msg); + continue; + } - for (String current : hoverMsg.split("\n")) { - current = current.replace("[jobName]", jobProg.getJob().getName()) - .replace("[time]", CMITimeManager.to24hourShort(q.getValidUntil() - System.currentTimeMillis())); + RawMessage rm = new RawMessage(); - if (current.contains("[desc]")) { - hoverList.addAll(quest.getDescription()); - } else { - hoverList.add(current); - } - } + String hoverMsg = Jobs.getLanguage().getMessage("command.quests.output.hover"); + List hoverList = new ArrayList<>(); - for (java.util.Map oneAction : quest.getObjectives().values()) { - for (Entry oneObjective : oneAction.entrySet()) { - hoverList.add(Jobs.getLanguage().getMessage("command.info.output." + oneObjective.getValue().getAction().toString().toLowerCase() + ".info") + " " + - Jobs.getNameTranslatorManager().translate(oneObjective.getKey(), oneObjective.getValue().getAction(), oneObjective.getValue().getTargetId(), oneObjective.getValue() - .getTargetMeta(), oneObjective.getValue().getTargetName()) - + " " + q.getAmountDone(oneObjective.getValue()) + "/" - + oneObjective.getValue().getAmount()); - } - } + for (String current : hoverMsg.split("\n")) { + current = current.replace("[jobName]", jobProg.getJob().getName()) + .replace("[time]", CMITimeManager.to24hourShort(q.getValidUntil() - System.currentTimeMillis())); - String hover = ""; - for (String one : hoverList) { - if (!hover.isEmpty()) - hover += "\n"; + if (current.contains("[desc]")) { + hoverList.addAll(quest.getDescription()); + } else { + hoverList.add(current); + } + } - hover += one; - } + for (java.util.Map oneAction : quest.getObjectives().values()) { + for (Entry oneObjective : oneAction.entrySet()) { + hoverList.add(Jobs.getLanguage().getMessage("command.info.output." + oneObjective.getValue().getAction().toString().toLowerCase() + ".info") + " " + + Jobs.getNameTranslatorManager().translate(oneObjective.getKey(), oneObjective.getValue().getAction(), oneObjective.getValue().getTargetId(), oneObjective.getValue() + .getTargetMeta(), oneObjective.getValue().getTargetName()) + + " " + q.getAmountDone(oneObjective.getValue()) + "/" + + oneObjective.getValue().getAmount()); + } + } - if (list.size() < jobProg.getJob().getQuests().size() && Jobs.getGCManager().getDailyQuestsSkips() > jPlayer.getSkippedQuests() && !completed) { - if (Jobs.getGCManager().getDailyQuestsSkips() > 0) { - hover += "\n" + Jobs.getLanguage().getMessage("command.quests.output.skip"); - hover += "\n" + Jobs.getLanguage().getMessage("command.quests.output.skips", "[skips]", (Jobs.getGCManager().getDailyQuestsSkips() - jPlayer.getSkippedQuests())); - } - rm.addText(msg).addHover(hover).addCommand("jobs skipquest " + jobProg.getJob().getName() + " " + quest.getConfigName() + " " + jPlayer.getName()); - } else - rm.addText(msg).addHover(hover); + String hover = ""; + for (String one : hoverList) { + if (!hover.isEmpty()) + hover += "\n"; - rm.show(sender); - } - } + hover += one; + } - sender.sendMessage(Jobs.getLanguage().getMessage("general.info.separator")); - return true; + if (list.size() < jobProg.getJob().getQuests().size() && Jobs.getGCManager().getDailyQuestsSkips() > jPlayer.getSkippedQuests() && !completed) { + if (Jobs.getGCManager().getDailyQuestsSkips() > 0) { + hover += "\n" + Jobs.getLanguage().getMessage("command.quests.output.skip"); + hover += "\n" + Jobs.getLanguage().getMessage("command.quests.output.skips", "[skips]", (Jobs.getGCManager().getDailyQuestsSkips() - jPlayer.getSkippedQuests())); + } + rm.addText(msg).addHover(hover).addCommand("jobs skipquest " + jobProg.getJob().getName() + " " + quest.getConfigName() + " " + jPlayer.getName()); + } else + rm.addText(msg).addHover(hover); + + rm.show(sender); + } + } + + sender.sendMessage(Jobs.getLanguage().getMessage("general.info.separator")); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/resetquest.java b/src/main/java/com/gamingmesh/jobs/commands/list/resetquest.java index 75c1e0b0..d3fee368 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/resetquest.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/resetquest.java @@ -11,47 +11,55 @@ import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.container.QuestProgression; +import net.Zrips.CMILib.Locale.LC; + public class resetquest implements Cmd { @Override public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (args.length != 0 && args.length != 1 && args.length != 2) { - Jobs.getCommandManager().sendUsage(sender, "resetquest"); - return true; - } + + if (!Jobs.getGCManager().DailyQuestsEnabled) { + LC.info_FeatureNotEnabled.sendMessage(sender); + return true; + } + + if (args.length != 0 && args.length != 1 && args.length != 2) { + Jobs.getCommandManager().sendUsage(sender, "resetquest"); + return true; + } - JobsPlayer jPlayer = null; - Job job = null; + JobsPlayer jPlayer = null; + Job job = null; - for (String one : args) { - if (job == null) { - job = Jobs.getJob(one); - if (job != null) - continue; - } - jPlayer = Jobs.getPlayerManager().getJobsPlayer(one); - } + for (String one : args) { + if (job == null) { + job = Jobs.getJob(one); + if (job != null) + continue; + } + jPlayer = Jobs.getPlayerManager().getJobsPlayer(one); + } - if (jPlayer == null && sender instanceof Player) - jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); + if (jPlayer == null && sender instanceof Player) + jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); - if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args.length > 0 ? args[0] : "")); - return true; - } + if (jPlayer == null) { + sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args.length > 0 ? args[0] : "")); + return true; + } - List quests = jPlayer.getQuestProgressions(); + List quests = jPlayer.getQuestProgressions(); - if (job != null) - quests = jPlayer.getQuestProgressions(job); + if (job != null) + quests = jPlayer.getQuestProgressions(job); - if (quests.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.resetquest.output.noQuests")); - return true; - } + if (quests.isEmpty()) { + sender.sendMessage(Jobs.getLanguage().getMessage("command.resetquest.output.noQuests")); + return true; + } - jPlayer.resetQuests(quests); - sender.sendMessage(Jobs.getLanguage().getMessage("command.resetquest.output.reseted", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getName())); - return true; + jPlayer.resetQuests(quests); + sender.sendMessage(Jobs.getLanguage().getMessage("command.resetquest.output.reseted", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getName())); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/resetquesttotal.java b/src/main/java/com/gamingmesh/jobs/commands/list/resetquesttotal.java index daaf28e4..6157158d 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/resetquesttotal.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/resetquesttotal.java @@ -11,48 +11,55 @@ import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobsPlayer; +import net.Zrips.CMILib.Locale.LC; + public class resetquesttotal implements Cmd { @Override public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (args.length != 0 && args.length != 1) { - Jobs.getCommandManager().sendUsage(sender, "resetquesttotal"); - return true; - } + if (!Jobs.getGCManager().DailyQuestsEnabled) { + LC.info_FeatureNotEnabled.sendMessage(sender); + return true; + } + + if (args.length != 0 && args.length != 1) { + Jobs.getCommandManager().sendUsage(sender, "resetquesttotal"); + return true; + } - if (args.length > 0 && args[0].equalsIgnoreCase("all")) { - for (Entry pl : Jobs.getPlayerManager().getPlayersCache().entrySet()) { - pl.getValue().setDoneQuests(0); - } - Jobs.getJobsDAO().resetDoneQuests(); - sender.sendMessage(Jobs.getLanguage().getMessage("command.resetquesttotal.output.reseted", "%playername%", Jobs.getPlayerManager().getPlayersCache().size())); - return true; - } + if (args.length > 0 && args[0].equalsIgnoreCase("all")) { + for (Entry pl : Jobs.getPlayerManager().getPlayersCache().entrySet()) { + pl.getValue().setDoneQuests(0); + } + Jobs.getJobsDAO().resetDoneQuests(); + sender.sendMessage(Jobs.getLanguage().getMessage("command.resetquesttotal.output.reseted", "%playername%", Jobs.getPlayerManager().getPlayersCache().size())); + return true; + } - JobsPlayer jPlayer = null; - Job job = null; + JobsPlayer jPlayer = null; + Job job = null; - for (String one : args) { - if (job == null) { - job = Jobs.getJob(one); - if (job != null) - continue; - } - jPlayer = Jobs.getPlayerManager().getJobsPlayer(one); - } + for (String one : args) { + if (job == null) { + job = Jobs.getJob(one); + if (job != null) + continue; + } + jPlayer = Jobs.getPlayerManager().getJobsPlayer(one); + } - if (jPlayer == null && sender instanceof Player) - jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); + if (jPlayer == null && sender instanceof Player) + jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); - if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args.length > 0 ? args[0] : "")); - return true; - } + if (jPlayer == null) { + sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args.length > 0 ? args[0] : "")); + return true; + } - jPlayer.setDoneQuests(0); - jPlayer.setSaved(false); - jPlayer.save(); - sender.sendMessage(Jobs.getLanguage().getMessage("command.resetquesttotal.output.reseted", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getDisplayName())); - return true; + jPlayer.setDoneQuests(0); + jPlayer.setSaved(false); + jPlayer.save(); + sender.sendMessage(Jobs.getLanguage().getMessage("command.resetquesttotal.output.reseted", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getDisplayName())); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java b/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java index 05ac85b0..427c4670 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java @@ -13,102 +13,108 @@ import com.gamingmesh.jobs.container.Quest; import com.gamingmesh.jobs.container.QuestProgression; import com.gamingmesh.jobs.economy.BufferedEconomy; +import net.Zrips.CMILib.Locale.LC; + public class skipquest implements Cmd { @Override public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (args.length != 2 && args.length != 3) { - Jobs.getCommandManager().sendUsage(sender, "skipquest"); - return true; - } + if (!Jobs.getGCManager().DailyQuestsEnabled) { + LC.info_FeatureNotEnabled.sendMessage(sender); + return true; + } + if (args.length != 2 && args.length != 3) { + Jobs.getCommandManager().sendUsage(sender, "skipquest"); + return true; + } - JobsPlayer jPlayer = null; - Job job = null; - String questName = ""; + JobsPlayer jPlayer = null; + Job job = null; + String questName = ""; - for (String one : args) { - if (job == null) { - job = Jobs.getJob(one); - if (job != null) - continue; - } - if (jPlayer == null) { - jPlayer = Jobs.getPlayerManager().getJobsPlayer(one); - if (jPlayer != null) - continue; - } + for (String one : args) { + if (job == null) { + job = Jobs.getJob(one); + if (job != null) + continue; + } + if (jPlayer == null) { + jPlayer = Jobs.getPlayerManager().getJobsPlayer(one); + if (jPlayer != null) + continue; + } - if (!questName.isEmpty()) - questName += " "; - questName += one; - } + if (!questName.isEmpty()) + questName += " "; + questName += one; + } - if (jPlayer == null && sender instanceof Player) - jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); + if (jPlayer == null && sender instanceof Player) + jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); - if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args.length > 0 ? args[0] : "")); - return true; - } + if (jPlayer == null) { + sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args.length > 0 ? args[0] : "")); + return true; + } - List quests = jPlayer.getQuestProgressions(); + List quests = jPlayer.getQuestProgressions(); - if (job != null) - quests = jPlayer.getQuestProgressions(job); + if (job != null) + quests = jPlayer.getQuestProgressions(job); - if (quests == null || quests.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.resetquest.output.noQuests")); - return true; - } + if (quests == null || quests.isEmpty()) { + sender.sendMessage(Jobs.getLanguage().getMessage("command.resetquest.output.noQuests")); + return true; + } - Quest old = null; + Quest old = null; - for (QuestProgression one : quests) { - Quest q = one.getQuest(); + for (QuestProgression one : quests) { + Quest q = one.getQuest(); - if (q.getQuestName().equalsIgnoreCase(questName) || q.getConfigName().equalsIgnoreCase(questName)) { - old = q; - break; - } - } + if (q.getQuestName().equalsIgnoreCase(questName) || q.getConfigName().equalsIgnoreCase(questName)) { + old = q; + break; + } + } - if (old == null) { - return false; - } + if (old == null) { + return false; + } - // Do not skip the completed quests - for (QuestProgression q : quests) { - if (q.getQuest().getQuestName().equals(old.getQuestName()) && q.isCompleted()) { - return false; - } - } + // Do not skip the completed quests + for (QuestProgression q : quests) { + if (q.getQuest().getQuestName().equals(old.getQuestName()) && q.isCompleted()) { + return false; + } + } - if (Jobs.getGCManager().getDailyQuestsSkips() <= jPlayer.getSkippedQuests()) { - return false; - } + if (Jobs.getGCManager().getDailyQuestsSkips() <= jPlayer.getSkippedQuests()) { + return false; + } - double amount = Jobs.getGCManager().skipQuestCost; - BufferedEconomy econ = Jobs.getEconomy(); - Player player = jPlayer.getPlayer(); + double amount = Jobs.getGCManager().skipQuestCost; + BufferedEconomy econ = Jobs.getEconomy(); + Player player = jPlayer.getPlayer(); - if (amount > 0 && player != null) { - if (!econ.getEconomy().hasMoney(player, amount)) { - sender.sendMessage(Jobs.getLanguage().getMessage("economy.error.nomoney")); - return false; - } + if (amount > 0 && player != null) { + if (!econ.getEconomy().hasMoney(player, amount)) { + sender.sendMessage(Jobs.getLanguage().getMessage("economy.error.nomoney")); + return false; + } - econ.getEconomy().withdrawPlayer(player, amount); - } + econ.getEconomy().withdrawPlayer(player, amount); + } - jPlayer.replaceQuest(old); + jPlayer.replaceQuest(old); - if (player != null) - plugin.getServer().dispatchCommand(player, "jobs quests"); + if (player != null) + plugin.getServer().dispatchCommand(player, "jobs quests"); - if (amount > 0) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.skipquest.output.questSkipForCost", "%amount%", amount)); - } + if (amount > 0) { + sender.sendMessage(Jobs.getLanguage().getMessage("command.skipquest.output.questSkipForCost", "%amount%", amount)); + } - return true; + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java b/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java index 90180c64..a4a98967 100644 --- a/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/GeneralConfigManager.java @@ -112,6 +112,7 @@ public class GeneralConfigManager { payForEachVTradeItem, allowEnchantingBoostedItems, bossBarAsync = false, preventShopItemEnchanting; public boolean jobsshopenabled; + public boolean DailyQuestsEnabled; public ItemStack guiInfoButton; public int InfoButtonSlot = 9; @@ -422,6 +423,9 @@ public class GeneralConfigManager { c.addComment("broadcast.on-level-up.levels", "For what levels you want to broadcast message? Keep it at 0 if you want for all of them"); BroadcastingLevelUpLevels = c.getIntList("broadcast.on-level-up.levels", Arrays.asList(0)); + c.addComment("DailyQuests.Enabled", "Enables or disables daily quests"); + DailyQuestsEnabled = c.get("DailyQuests.Enabled", true); + c.addComment("DailyQuests.ResetTime", "Defines time in 24hour format when we want to give out new daily quests", "Any daily quests given before reset will be invalid and new ones will be given out"); ResetTimeHour = c.get("DailyQuests.ResetTime.Hour", 4); From 84cb2cef92bf85fbb181ea08142f9cf37c273155 Mon Sep 17 00:00:00 2001 From: Zrips Date: Wed, 3 May 2023 11:47:45 +0300 Subject: [PATCH 11/31] Top command to support console --- .../gamingmesh/jobs/commands/list/top.java | 27 +++++++++---------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/top.java b/src/main/java/com/gamingmesh/jobs/commands/list/top.java index 696ec8fd..573d4179 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/top.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/top.java @@ -11,6 +11,7 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.TopList; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Container.PageInfo; import net.Zrips.CMILib.Locale.LC; @@ -21,20 +22,19 @@ public class top implements Cmd { @Override public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (!(sender instanceof Player)) { - CMIMessages.sendMessage(sender, LC.info_Ingame); - return false; - } if (args.length != 1 && args.length != 2) { Jobs.getCommandManager().sendUsage(sender, "top"); return false; } - Player player = (Player) sender; + Player player = sender instanceof Player p ? p : null; + if (args[0].equalsIgnoreCase("clear")) { - player.getScoreboard().clearSlot(DisplaySlot.SIDEBAR); - CMIScoreboard.removeScoreBoard(player); + if (player != null) { + player.getScoreboard().clearSlot(DisplaySlot.SIDEBAR); + CMIScoreboard.removeScoreBoard(player); + } return true; } @@ -51,7 +51,7 @@ public class top implements Cmd { Job job = Jobs.getJob(args[0]); if (job == null) { - player.sendMessage(Jobs.getLanguage().getMessage("command.top.error.nojob")); + Language.sendMessage(sender, "command.top.error.nojob"); return false; } @@ -64,22 +64,21 @@ public class top implements Cmd { return true; } - player.sendMessage(Jobs.getLanguage().getMessage("command.top.help.info")); - int place = 1; - if (!Jobs.getGCManager().ShowToplistInScoreboard) { - player.sendMessage(Jobs.getLanguage().getMessage("command.top.output.topline", "%jobname%", job.getName(), "%amount%", Jobs.getGCManager().JobsTopAmount)); + if (!Jobs.getGCManager().ShowToplistInScoreboard || player == null) { + Language.sendMessage(sender, "command.top.output.topline", "%jobname%", job.getName(), "%amount%", Jobs.getGCManager().JobsTopAmount); + for (TopList one : fullList) { if (place > Jobs.getGCManager().JobsTopAmount) break; - player.sendMessage(Jobs.getLanguage().getMessage("command.top.output.list", + Language.sendMessage(sender, "command.top.output.list", "%number%", ((page - 1) * Jobs.getGCManager().JobsTopAmount) + place, "%playername%", one.getPlayerInfo().getName(), "%playerdisplayname%", one.getPlayerInfo().getDisplayName(), "%level%", one.getLevel(), - "%exp%", one.getExp())); + "%exp%", one.getExp()); place++; } pi.autoPagination(sender, "jobs top " + job.getName()); From 9b935c53e9d4545e7d46c6b5f33c1d9e40799cac Mon Sep 17 00:00:00 2001 From: Zrips Date: Wed, 3 May 2023 12:04:00 +0300 Subject: [PATCH 12/31] Lets accept Null as command perform return for more control over it --- .../com/gamingmesh/jobs/commands/Cmd.java | 2 +- .../jobs/commands/JobsCommands.java | 13 +++- .../jobs/commands/list/archive.java | 8 +-- .../gamingmesh/jobs/commands/list/area.java | 2 +- .../jobs/commands/list/blockinfo.java | 2 +- .../gamingmesh/jobs/commands/list/bonus.java | 2 +- .../gamingmesh/jobs/commands/list/boost.java | 2 +- .../com/gamingmesh/jobs/commands/list/bp.java | 2 +- .../gamingmesh/jobs/commands/list/browse.java | 2 +- .../jobs/commands/list/clearownership.java | 2 +- .../jobs/commands/list/convert.java | 2 +- .../gamingmesh/jobs/commands/list/demote.java | 2 +- .../jobs/commands/list/edititembonus.java | 2 +- .../jobs/commands/list/editjobs.java | 2 +- .../jobs/commands/list/editpoints.java | 2 +- .../jobs/commands/list/editquests.java | 2 +- .../gamingmesh/jobs/commands/list/employ.java | 2 +- .../jobs/commands/list/entitylist.java | 2 +- .../gamingmesh/jobs/commands/list/exp.java | 2 +- .../jobs/commands/list/explored.java | 2 +- .../gamingmesh/jobs/commands/list/fire.java | 2 +- .../jobs/commands/list/fireall.java | 2 +- .../gamingmesh/jobs/commands/list/give.java | 2 +- .../gamingmesh/jobs/commands/list/glog.java | 2 +- .../jobs/commands/list/grantxp.java | 2 +- .../gamingmesh/jobs/commands/list/gtop.java | 2 +- .../gamingmesh/jobs/commands/list/info.java | 2 +- .../jobs/commands/list/itembonus.java | 2 +- .../jobs/commands/list/iteminfo.java | 2 +- .../gamingmesh/jobs/commands/list/join.java | 2 +- .../gamingmesh/jobs/commands/list/leave.java | 2 +- .../jobs/commands/list/leaveall.java | 2 +- .../gamingmesh/jobs/commands/list/level.java | 2 +- .../gamingmesh/jobs/commands/list/limit.java | 2 +- .../gamingmesh/jobs/commands/list/log.java | 2 +- .../jobs/commands/list/ownedblocks.java | 2 +- .../jobs/commands/list/placeholders.java | 2 +- .../jobs/commands/list/playerinfo.java | 2 +- .../gamingmesh/jobs/commands/list/points.java | 2 +- .../jobs/commands/list/promote.java | 2 +- .../gamingmesh/jobs/commands/list/quests.java | 2 +- .../gamingmesh/jobs/commands/list/reload.java | 2 +- .../jobs/commands/list/removexp.java | 2 +- .../commands/list/resetexploreregion.java | 2 +- .../jobs/commands/list/resetlimit.java | 2 +- .../jobs/commands/list/resetquest.java | 2 +- .../jobs/commands/list/resetquesttotal.java | 2 +- .../jobs/commands/list/schedule.java | 2 +- .../gamingmesh/jobs/commands/list/shop.java | 2 +- .../jobs/commands/list/signupdate.java | 2 +- .../jobs/commands/list/skipquest.java | 2 +- .../gamingmesh/jobs/commands/list/stats.java | 59 ++++++++++--------- .../gamingmesh/jobs/commands/list/toggle.java | 2 +- .../gamingmesh/jobs/commands/list/top.java | 2 +- .../jobs/commands/list/transfer.java | 2 +- .../jobs/commands/list/version.java | 2 +- 56 files changed, 98 insertions(+), 88 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/commands/Cmd.java b/src/main/java/com/gamingmesh/jobs/commands/Cmd.java index 08b9f84f..f2b4e6cc 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/Cmd.java +++ b/src/main/java/com/gamingmesh/jobs/commands/Cmd.java @@ -5,5 +5,5 @@ import org.bukkit.command.CommandSender; import com.gamingmesh.jobs.Jobs; public interface Cmd { - boolean perform(Jobs plugin, CommandSender sender, String[] args); + Boolean perform(Jobs plugin, CommandSender sender, String[] args); } diff --git a/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java b/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java index 2f7c199f..4ba9d72e 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java +++ b/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java @@ -114,7 +114,12 @@ public class JobsCommands implements CommandExecutor { return true; } - return cmdClass.perform(plugin, sender, myArgs) || help(sender, 1); + Boolean result = cmdClass.perform(plugin, sender, myArgs); + + if (result != null && !result) + sendUsage(sender, cmd); + + return result == null || !result ? false : true; } private static String[] reduceArgs(String[] args) { @@ -417,6 +422,10 @@ public class JobsCommands implements CommandExecutor { * @return the message */ public String jobStatsMessage(JobProgression jobProg) { + return jobStatsMessage(jobProg, true); + } + + public String jobStatsMessage(JobProgression jobProg, boolean progressBar) { boolean isMaxLevelReached = jobProg.getLevel() == jobProg.getJob().getMaxLevel(); String path = "command.stats.output." + (isMaxLevelReached ? "max-level" : "message"); @@ -428,7 +437,7 @@ public class JobsCommands implements CommandExecutor { "%jobxp%", Math.round(jobProg.getExperience() * 100.0) / 100.0, "%jobmaxxp%", jobProg.getMaxExperience(), "%titlename%", title == null ? "Unknown" : title.getName()); - return " " + (isMaxLevelReached ? "" : jobProgressMessage(jobProg.getMaxExperience(), jobProg.getExperience())) + " " + message; + return " " + (isMaxLevelReached ? "" : progressBar ? jobProgressMessage(jobProg.getMaxExperience(), jobProg.getExperience()) : "") + " " + message; } public String jobProgressMessage(double max, double current) { diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/archive.java b/src/main/java/com/gamingmesh/jobs/commands/list/archive.java index fe05db70..d5256354 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/archive.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/archive.java @@ -16,11 +16,11 @@ import net.Zrips.CMILib.RawMessages.RawMessage; public class archive implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { JobsPlayer jPlayer = null; if (args.length >= 1) { if (!Jobs.hasPermission(sender, "jobs.command.admin.archive", true)) { - return true; + return null; } jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); @@ -31,13 +31,13 @@ public class archive implements Cmd { if (jPlayer == null) { if (args.length >= 1) sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args[0])); - return true; + return null; } Set allJobs = jPlayer.getArchivedJobs().getArchivedJobs(); if (allJobs.isEmpty()) { sender.sendMessage(Jobs.getLanguage().getMessage("command.archive.error.nojob")); - return true; + return null; } sender.sendMessage(Jobs.getLanguage().getMessage("general.info.toplineseparator", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getDisplayName())); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/area.java b/src/main/java/com/gamingmesh/jobs/commands/list/area.java index 30637c39..5e5c8a2c 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/area.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/area.java @@ -20,7 +20,7 @@ import net.Zrips.CMILib.Messages.CMIMessages; public class area implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!(sender instanceof Player)) { CMIMessages.sendMessage(sender, LC.info_Ingame); return false; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/blockinfo.java b/src/main/java/com/gamingmesh/jobs/commands/list/blockinfo.java index 2aa7c03d..10b3dbff 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/blockinfo.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/blockinfo.java @@ -18,7 +18,7 @@ public class blockinfo implements Cmd { @Override @SuppressWarnings("deprecation") - public boolean perform(Jobs plugin, CommandSender sender, String[] args) { + public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { if (!(sender instanceof Player)) { CMIMessages.sendMessage(sender, LC.info_Ingame); return false; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/bonus.java b/src/main/java/com/gamingmesh/jobs/commands/list/bonus.java index f176ed45..abefff10 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/bonus.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/bonus.java @@ -21,7 +21,7 @@ import net.Zrips.CMILib.RawMessages.RawMessage; public class bonus implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!(sender instanceof Player)) { CMIMessages.sendMessage(sender, LC.info_Ingame); return false; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/boost.java b/src/main/java/com/gamingmesh/jobs/commands/list/boost.java index 2a18584c..6b78dfa1 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/boost.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/boost.java @@ -16,7 +16,7 @@ import net.Zrips.CMILib.Time.timeModifier; public class boost implements Cmd { @Override - public boolean perform(Jobs plugin, CommandSender sender, String[] args) { + public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { Double rate = null; Long timeDuration = null; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/bp.java b/src/main/java/com/gamingmesh/jobs/commands/list/bp.java index d026c992..b88b1ab0 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/bp.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/bp.java @@ -23,7 +23,7 @@ public class bp implements Cmd { @SuppressWarnings("deprecation") @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!(sender instanceof Player)) { CMIMessages.sendMessage(sender, LC.info_Ingame); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/browse.java b/src/main/java/com/gamingmesh/jobs/commands/list/browse.java index 20f0ebdd..c7ef76f1 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/browse.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/browse.java @@ -17,7 +17,7 @@ import net.Zrips.CMILib.RawMessages.RawMessage; public class browse implements Cmd { @Override - public boolean perform(Jobs plugin, CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, CommandSender sender, final String[] args) { boolean senderIsPlayer = sender instanceof Player; if (Jobs.getGCManager().BrowseUseNewLook) { diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/clearownership.java b/src/main/java/com/gamingmesh/jobs/commands/list/clearownership.java index b1dbb7de..bf0e51e4 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/clearownership.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/clearownership.java @@ -18,7 +18,7 @@ import net.Zrips.CMILib.Messages.CMIMessages; public class clearownership implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { JobsPlayer jPlayer = null; String location = null; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/convert.java b/src/main/java/com/gamingmesh/jobs/commands/list/convert.java index d7b64544..ac46d08e 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/convert.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/convert.java @@ -14,7 +14,7 @@ import net.Zrips.CMILib.Messages.CMIMessages; public class convert implements Cmd { @Override - public boolean perform(Jobs plugin, CommandSender sender, String[] args) { + public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { if (sender instanceof Player) { CMIMessages.sendMessage(sender, LC.info_FromConsole); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/demote.java b/src/main/java/com/gamingmesh/jobs/commands/list/demote.java index ce86a1ef..66d02cd4 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/demote.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/demote.java @@ -13,7 +13,7 @@ import net.Zrips.CMILib.Colors.CMIChatColor; public class demote implements Cmd { @Override - public boolean perform(Jobs plugin, CommandSender sender, String[] args) { + public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { if (args.length < 3) { Jobs.getCommandManager().sendUsage(sender, "demote"); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/edititembonus.java b/src/main/java/com/gamingmesh/jobs/commands/list/edititembonus.java index 19a314c4..75672d98 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/edititembonus.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/edititembonus.java @@ -35,7 +35,7 @@ public class edititembonus implements Cmd { } @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!(sender instanceof Player)) { CMIMessages.sendMessage(sender, LC.info_Ingame); return false; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/editjobs.java b/src/main/java/com/gamingmesh/jobs/commands/list/editjobs.java index 34451021..27623960 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/editjobs.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/editjobs.java @@ -27,7 +27,7 @@ public class editjobs implements Cmd { @SuppressWarnings("deprecation") @Override - public boolean perform(Jobs plugin, CommandSender sender, String[] args) { + public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { if (!(sender instanceof Player)) return false; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/editpoints.java b/src/main/java/com/gamingmesh/jobs/commands/list/editpoints.java index 05c3aed8..e2ad2485 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/editpoints.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/editpoints.java @@ -12,7 +12,7 @@ import net.Zrips.CMILib.Messages.CMIMessages; public class editpoints implements Cmd { @Override - public boolean perform(Jobs plugin, CommandSender sender, String[] args) { + public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { if (args.length != 3) { Jobs.getCommandManager().sendUsage(sender, "editpoints"); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/editquests.java b/src/main/java/com/gamingmesh/jobs/commands/list/editquests.java index 4a2acfb0..21f6f007 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/editquests.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/editquests.java @@ -50,7 +50,7 @@ public class editquests implements Cmd { static HashMap> tempObjectives = new HashMap>(); @Override - public boolean perform(Jobs plugin, final CommandSender sender, String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, String[] args) { int page = 0; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/employ.java b/src/main/java/com/gamingmesh/jobs/commands/list/employ.java index d7e6e575..ef623b12 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/employ.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/employ.java @@ -11,7 +11,7 @@ import com.gamingmesh.jobs.container.JobsPlayer; public class employ implements Cmd { @Override - public boolean perform(Jobs plugin, CommandSender sender, String[] args) { + public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { if (args.length < 2) { Jobs.getCommandManager().sendUsage(sender, "employ"); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/entitylist.java b/src/main/java/com/gamingmesh/jobs/commands/list/entitylist.java index 7c890ce4..ec5a3dcb 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/entitylist.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/entitylist.java @@ -11,7 +11,7 @@ import net.Zrips.CMILib.Colors.CMIChatColor; public class entitylist implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (args.length != 0) { Jobs.getCommandManager().sendUsage(sender, "entitylist"); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/exp.java b/src/main/java/com/gamingmesh/jobs/commands/list/exp.java index 4a4a1fc6..0205b987 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/exp.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/exp.java @@ -21,7 +21,7 @@ public class exp implements Cmd { Random rand = new Random(); @Override - public boolean perform(Jobs plugin, CommandSender sender, String[] args) { + public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { if (args.length < 4) { Jobs.getCommandManager().sendUsage(sender, "exp"); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/explored.java b/src/main/java/com/gamingmesh/jobs/commands/list/explored.java index 67cdc125..0d609391 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/explored.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/explored.java @@ -14,7 +14,7 @@ import com.gamingmesh.jobs.container.PlayerInfo; public class explored implements Cmd { @Override - public boolean perform(Jobs plugin, CommandSender sender, String[] args) { + public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { if (!(sender instanceof Player)) return false; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/fire.java b/src/main/java/com/gamingmesh/jobs/commands/list/fire.java index 8abeed29..fceb6594 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/fire.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/fire.java @@ -11,7 +11,7 @@ import com.gamingmesh.jobs.container.JobsPlayer; public class fire implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (args.length < 2) { Jobs.getCommandManager().sendUsage(sender, "fire"); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/fireall.java b/src/main/java/com/gamingmesh/jobs/commands/list/fireall.java index 05c5442e..6ff808b5 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/fireall.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/fireall.java @@ -15,7 +15,7 @@ import net.Zrips.CMILib.Messages.CMIMessages; public class fireall implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (args.length < 1) { Jobs.getCommandManager().sendUsage(sender, "fireall"); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/give.java b/src/main/java/com/gamingmesh/jobs/commands/list/give.java index 5ef59a05..4e90ebec 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/give.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/give.java @@ -27,7 +27,7 @@ public class give implements Cmd { } @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { Player player = null; Job job = null; actions name = null; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/glog.java b/src/main/java/com/gamingmesh/jobs/commands/list/glog.java index c1dd523e..9392d267 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/glog.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/glog.java @@ -22,7 +22,7 @@ import net.Zrips.CMILib.Time.CMITimeManager; public class glog implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (args.length != 0) { Jobs.getCommandManager().sendUsage(sender, "glog"); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/grantxp.java b/src/main/java/com/gamingmesh/jobs/commands/list/grantxp.java index 709ada3b..6416125c 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/grantxp.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/grantxp.java @@ -12,7 +12,7 @@ import com.gamingmesh.jobs.container.JobsPlayer; public class grantxp implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (args.length < 3) { Jobs.getCommandManager().sendUsage(sender, "grantxp"); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/gtop.java b/src/main/java/com/gamingmesh/jobs/commands/list/gtop.java index 00bcf410..26f7a309 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/gtop.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/gtop.java @@ -19,7 +19,7 @@ import net.Zrips.CMILib.Scoreboards.CMIScoreboard; public class gtop implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!(sender instanceof Player)) { CMIMessages.sendMessage(sender, LC.info_Ingame); return false; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/info.java b/src/main/java/com/gamingmesh/jobs/commands/list/info.java index 7143fa6d..3da731b6 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/info.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/info.java @@ -15,7 +15,7 @@ import net.Zrips.CMILib.Messages.CMIMessages; public class info implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!(sender instanceof Player)) { CMIMessages.sendMessage(sender, LC.info_Ingame); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/itembonus.java b/src/main/java/com/gamingmesh/jobs/commands/list/itembonus.java index 6e247260..ba1c787c 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/itembonus.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/itembonus.java @@ -27,7 +27,7 @@ import net.Zrips.CMILib.RawMessages.RawMessage; public class itembonus implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!(sender instanceof Player)) { CMIMessages.sendMessage(sender, LC.info_Ingame); return false; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/iteminfo.java b/src/main/java/com/gamingmesh/jobs/commands/list/iteminfo.java index 3cf23e5e..d9bea691 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/iteminfo.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/iteminfo.java @@ -19,7 +19,7 @@ public class iteminfo implements Cmd { @Override @SuppressWarnings("deprecation") - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!(sender instanceof Player)) { CMIMessages.sendMessage(sender, LC.info_Ingame); return false; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/join.java b/src/main/java/com/gamingmesh/jobs/commands/list/join.java index 048b8a8c..eeeebce6 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/join.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/join.java @@ -16,7 +16,7 @@ import net.Zrips.CMILib.RawMessages.RawMessage; public class join implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!(sender instanceof Player)) { CMIMessages.sendMessage(sender, LC.info_Ingame); return false; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/leave.java b/src/main/java/com/gamingmesh/jobs/commands/list/leave.java index b097c468..65fad255 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/leave.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/leave.java @@ -15,7 +15,7 @@ import net.Zrips.CMILib.Messages.CMIMessages; public class leave implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!(sender instanceof Player)) return false; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/leaveall.java b/src/main/java/com/gamingmesh/jobs/commands/list/leaveall.java index 7b3c9e7f..3076f123 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/leaveall.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/leaveall.java @@ -17,7 +17,7 @@ import net.Zrips.CMILib.Messages.CMIMessages; public class leaveall implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!(sender instanceof Player)) { CMIMessages.sendMessage(sender, LC.info_Ingame); return false; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/level.java b/src/main/java/com/gamingmesh/jobs/commands/list/level.java index e9b2d4da..c0bf5d1e 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/level.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/level.java @@ -17,7 +17,7 @@ public class level implements Cmd { } @Override - public boolean perform(Jobs plugin, CommandSender sender, String[] args) { + public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { if (args.length < 4) { Jobs.getCommandManager().sendUsage(sender, "level"); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/limit.java b/src/main/java/com/gamingmesh/jobs/commands/list/limit.java index 343c63b4..f23dec61 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/limit.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/limit.java @@ -17,7 +17,7 @@ import net.Zrips.CMILib.Time.CMITimeManager; public class limit implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (args.length != 0 && args.length != 1) { Jobs.getCommandManager().sendUsage(sender, "limit"); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/log.java b/src/main/java/com/gamingmesh/jobs/commands/list/log.java index 52f22058..903fc1ca 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/log.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/log.java @@ -23,7 +23,7 @@ import net.Zrips.CMILib.Messages.CMIMessages; public class log implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!(sender instanceof Player) && args.length != 1) { CMIMessages.sendMessage(sender, LC.info_Ingame); return false; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/ownedblocks.java b/src/main/java/com/gamingmesh/jobs/commands/list/ownedblocks.java index 31624d61..62516c77 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/ownedblocks.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/ownedblocks.java @@ -26,7 +26,7 @@ import net.Zrips.CMILib.RawMessages.RawMessage; public class ownedblocks implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { JobsPlayer jPlayer = null; if (args.length >= 1) { if (!Jobs.hasPermission(sender, "jobs.command.admin.ownedblocks", true)) diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/placeholders.java b/src/main/java/com/gamingmesh/jobs/commands/list/placeholders.java index b9f53e37..cedc88e6 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/placeholders.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/placeholders.java @@ -16,7 +16,7 @@ import net.Zrips.CMILib.RawMessages.RawMessage; public class placeholders implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { boolean isPlayer = sender instanceof Player; Player player = isPlayer ? (Player) sender : null; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/playerinfo.java b/src/main/java/com/gamingmesh/jobs/commands/list/playerinfo.java index 3aed487b..84ccf0bb 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/playerinfo.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/playerinfo.java @@ -10,7 +10,7 @@ import com.gamingmesh.jobs.container.JobsPlayer; public class playerinfo implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (args.length < 2) { Jobs.getCommandManager().sendUsage(sender, "playerinfo"); Jobs.getCommandManager().sendValidActions(sender); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/points.java b/src/main/java/com/gamingmesh/jobs/commands/list/points.java index 6800b743..a640cb3d 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/points.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/points.java @@ -14,7 +14,7 @@ import net.Zrips.CMILib.Messages.CMIMessages; public class points implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (args.length != 0 && args.length != 1) { Jobs.getCommandManager().sendUsage(sender, "points"); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/promote.java b/src/main/java/com/gamingmesh/jobs/commands/list/promote.java index d588202b..04084435 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/promote.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/promote.java @@ -11,7 +11,7 @@ import com.gamingmesh.jobs.container.JobsPlayer; public class promote implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (args.length < 3) { Jobs.getCommandManager().sendUsage(sender, "promote"); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/quests.java b/src/main/java/com/gamingmesh/jobs/commands/list/quests.java index f53d5dc6..805d8120 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/quests.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/quests.java @@ -23,7 +23,7 @@ import net.Zrips.CMILib.Time.CMITimeManager; public class quests implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, String[] args) { if (!Jobs.getGCManager().DailyQuestsEnabled) { LC.info_FeatureNotEnabled.sendMessage(sender); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/reload.java b/src/main/java/com/gamingmesh/jobs/commands/list/reload.java index bc20c934..0fc70d90 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/reload.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/reload.java @@ -8,7 +8,7 @@ import com.gamingmesh.jobs.commands.Cmd; public class reload implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { Jobs.reload(); sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.success")); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/removexp.java b/src/main/java/com/gamingmesh/jobs/commands/list/removexp.java index 6aaeb528..a26890c9 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/removexp.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/removexp.java @@ -11,7 +11,7 @@ import com.gamingmesh.jobs.container.JobsPlayer; public class removexp implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (args.length < 3) { Jobs.getCommandManager().sendUsage(sender, "removexp"); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/resetexploreregion.java b/src/main/java/com/gamingmesh/jobs/commands/list/resetexploreregion.java index 4eed1a05..ecb2eb53 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/resetexploreregion.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/resetexploreregion.java @@ -11,7 +11,7 @@ public class resetexploreregion implements Cmd { private static String REGEX = "^[0-9a-zA-Z_-]+$"; @Override - public boolean perform(Jobs plugin, CommandSender sender, String[] args) { + public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { if (args.length != 2 || !WORLD.equals(args[0])) { Jobs.getCommandManager().sendUsage(sender, "resetexploreregion"); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/resetlimit.java b/src/main/java/com/gamingmesh/jobs/commands/list/resetlimit.java index 6bf6d018..794f1c6d 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/resetlimit.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/resetlimit.java @@ -8,7 +8,7 @@ import com.gamingmesh.jobs.container.JobsPlayer; public class resetlimit implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (args.length != 1) { Jobs.getCommandManager().sendUsage(sender, "resetlimit"); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/resetquest.java b/src/main/java/com/gamingmesh/jobs/commands/list/resetquest.java index d3fee368..d3bcf71a 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/resetquest.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/resetquest.java @@ -16,7 +16,7 @@ import net.Zrips.CMILib.Locale.LC; public class resetquest implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!Jobs.getGCManager().DailyQuestsEnabled) { LC.info_FeatureNotEnabled.sendMessage(sender); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/resetquesttotal.java b/src/main/java/com/gamingmesh/jobs/commands/list/resetquesttotal.java index 6157158d..c35206bf 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/resetquesttotal.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/resetquesttotal.java @@ -16,7 +16,7 @@ import net.Zrips.CMILib.Locale.LC; public class resetquesttotal implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!Jobs.getGCManager().DailyQuestsEnabled) { LC.info_FeatureNotEnabled.sendMessage(sender); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/schedule.java b/src/main/java/com/gamingmesh/jobs/commands/list/schedule.java index 10d5daf8..cb7fac49 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/schedule.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/schedule.java @@ -13,7 +13,7 @@ import com.gamingmesh.jobs.commands.Cmd; public class schedule implements Cmd { @Override - public boolean perform(final Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(final Jobs plugin, final CommandSender sender, final String[] args) { if (args.length < 2) { Jobs.getCommandManager().sendUsage(sender, "schedule"); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/shop.java b/src/main/java/com/gamingmesh/jobs/commands/list/shop.java index 3d2e569d..07c719fc 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/shop.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/shop.java @@ -11,7 +11,7 @@ import net.Zrips.CMILib.Locale.LC; public class shop implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!Jobs.getGCManager().jobsshopenabled) { LC.info_FeatureNotEnabled.sendMessage(sender); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/signupdate.java b/src/main/java/com/gamingmesh/jobs/commands/list/signupdate.java index cc345a24..29357564 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/signupdate.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/signupdate.java @@ -10,7 +10,7 @@ import com.gamingmesh.jobs.container.Job; public class signupdate implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!Jobs.getGCManager().SignsEnabled) return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java b/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java index 427c4670..0c63b33e 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java @@ -18,7 +18,7 @@ import net.Zrips.CMILib.Locale.LC; public class skipquest implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!Jobs.getGCManager().DailyQuestsEnabled) { LC.info_FeatureNotEnabled.sendMessage(sender); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/stats.java b/src/main/java/com/gamingmesh/jobs/commands/list/stats.java index 3ac24194..87a37459 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/stats.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/stats.java @@ -8,6 +8,7 @@ import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.commands.JobsCommands; import com.gamingmesh.jobs.container.JobProgression; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; @@ -16,42 +17,42 @@ import net.Zrips.CMILib.RawMessages.RawMessage; public class stats implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - JobsPlayer jPlayer = null; - if (args.length >= 1) { - if (!Jobs.hasPermission(sender, "jobs.command.admin.stats", true)) - return true; - jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - } else if (sender instanceof Player) - jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); + JobsPlayer jPlayer = null; + if (args.length >= 1) { + if (!Jobs.hasPermission(sender, "jobs.command.admin.stats", true)) + return true; + jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + } else if (sender instanceof Player p) + jPlayer = Jobs.getPlayerManager().getJobsPlayer(p); - if (jPlayer == null) { - if (args.length >= 1) - CMIMessages.sendMessage(sender, LC.info_NoInformation); - else - Jobs.getCommandManager().sendUsage(sender, "stats"); - return true; - } + if (jPlayer == null) { + if (args.length >= 1) + CMIMessages.sendMessage(sender, LC.info_NoInformation); + else + Jobs.getCommandManager().sendUsage(sender, "stats"); + return true; + } - if (jPlayer.progression.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.stats.error.nojob")); - return true; - } + if (jPlayer.progression.isEmpty()) { + Language.sendMessage(sender, "command.stats.error.nojob"); + return true; + } - sender.sendMessage(Jobs.getLanguage().getMessage("general.info.toplineseparator", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getDisplayName())); + Language.sendMessage(sender, "general.info.toplineseparator", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getDisplayName()); - String leftClick = Jobs.getLanguage().getMessage("command.info.gui.leftClick"); + String leftClick = Jobs.getLanguage().getMessage("command.info.gui.leftClick"); - String pref = JobsCommands.LABEL + " " + info.class.getSimpleName() + " "; + String pref = JobsCommands.LABEL + " " + info.class.getSimpleName() + " "; - for (JobProgression jobProg : jPlayer.getJobProgression()) { - for (String msg : Jobs.getCommandManager().jobStatsMessage(jobProg).split("\n")) { - new RawMessage().addText(msg).addHover(leftClick).addCommand(pref + jobProg.getJob().getName()).show(sender); - } - } + for (JobProgression jobProg : jPlayer.getJobProgression()) { + for (String msg : Jobs.getCommandManager().jobStatsMessage(jobProg, sender instanceof Player).split("\n")) { + new RawMessage().addText(msg).addHover(leftClick).addCommand(pref + jobProg.getJob().getName()).show(sender); + } + } - sender.sendMessage(Jobs.getLanguage().getMessage("general.info.separator")); - return true; + Language.sendMessage(sender, "general.info.separator"); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/toggle.java b/src/main/java/com/gamingmesh/jobs/commands/list/toggle.java index 3aa83c9e..3869cc3f 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/toggle.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/toggle.java @@ -15,7 +15,7 @@ import net.Zrips.CMILib.Messages.CMIMessages; public class toggle implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!(sender instanceof Player)) { CMIMessages.sendMessage(sender, LC.info_Ingame); return false; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/top.java b/src/main/java/com/gamingmesh/jobs/commands/list/top.java index 573d4179..09a1a3e2 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/top.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/top.java @@ -21,7 +21,7 @@ import net.Zrips.CMILib.Scoreboards.CMIScoreboard; public class top implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (args.length != 1 && args.length != 2) { Jobs.getCommandManager().sendUsage(sender, "top"); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/transfer.java b/src/main/java/com/gamingmesh/jobs/commands/list/transfer.java index 5f8c44ad..91ee0ce9 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/transfer.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/transfer.java @@ -11,7 +11,7 @@ import com.gamingmesh.jobs.container.JobsPlayer; public class transfer implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (args.length < 3) { Jobs.getCommandManager().sendUsage(sender, "transfer"); return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/version.java b/src/main/java/com/gamingmesh/jobs/commands/list/version.java index 0bca2436..ebe8c6a6 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/version.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/version.java @@ -18,7 +18,7 @@ import net.milkbowl.vault.economy.Economy; public class version implements Cmd { @Override - public boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { + public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() { @Override From e2b9f370af82d807ac737bd02034abc2b7fe6c63 Mon Sep 17 00:00:00 2001 From: Zrips Date: Wed, 3 May 2023 13:38:08 +0300 Subject: [PATCH 13/31] Message handling cleanup --- .../jobs/commands/JobsCommands.java | 5 +- .../jobs/commands/list/archive.java | 69 +- .../gamingmesh/jobs/commands/list/area.java | 239 +++---- .../jobs/commands/list/blockinfo.java | 7 +- .../gamingmesh/jobs/commands/list/bonus.java | 119 ++-- .../gamingmesh/jobs/commands/list/boost.java | 16 +- .../com/gamingmesh/jobs/commands/list/bp.java | 5 +- .../gamingmesh/jobs/commands/list/browse.java | 38 +- .../jobs/commands/list/clearownership.java | 9 +- .../jobs/commands/list/convert.java | 3 +- .../gamingmesh/jobs/commands/list/demote.java | 73 +- .../jobs/commands/list/edititembonus.java | 140 ++-- .../jobs/commands/list/editjobs.java | 650 +++++++++--------- .../jobs/commands/list/editpoints.java | 92 +-- .../jobs/commands/list/editquests.java | 2 +- .../gamingmesh/jobs/commands/list/employ.java | 70 +- .../jobs/commands/list/entitylist.java | 50 +- .../gamingmesh/jobs/commands/list/exp.java | 13 +- .../jobs/commands/list/explored.java | 69 +- .../gamingmesh/jobs/commands/list/fire.java | 50 +- .../jobs/commands/list/fireall.java | 72 +- .../gamingmesh/jobs/commands/list/give.java | 140 ++-- .../gamingmesh/jobs/commands/list/glog.java | 150 ++-- .../jobs/commands/list/grantxp.java | 76 +- .../gamingmesh/jobs/commands/list/gtop.java | 14 +- .../gamingmesh/jobs/commands/list/info.java | 92 +-- .../jobs/commands/list/itembonus.java | 2 +- .../jobs/commands/list/iteminfo.java | 5 +- .../gamingmesh/jobs/commands/list/join.java | 118 ++-- .../gamingmesh/jobs/commands/list/leave.java | 70 +- .../jobs/commands/list/leaveall.java | 53 +- .../gamingmesh/jobs/commands/list/level.java | 178 ++--- .../gamingmesh/jobs/commands/list/limit.java | 88 +-- .../gamingmesh/jobs/commands/list/log.java | 170 ++--- .../jobs/commands/list/ownedblocks.java | 92 +-- .../jobs/commands/list/placeholders.java | 16 +- .../jobs/commands/list/playerinfo.java | 52 +- .../gamingmesh/jobs/commands/list/points.java | 52 +- .../jobs/commands/list/promote.java | 84 +-- .../gamingmesh/jobs/commands/list/quests.java | 13 +- .../gamingmesh/jobs/commands/list/reload.java | 7 +- .../jobs/commands/list/removexp.java | 74 +- .../commands/list/resetexploreregion.java | 32 +- .../jobs/commands/list/resetlimit.java | 44 +- .../jobs/commands/list/resetquest.java | 14 +- .../jobs/commands/list/resetquesttotal.java | 10 +- .../jobs/commands/list/schedule.java | 11 +- .../gamingmesh/jobs/commands/list/shop.java | 7 +- .../jobs/commands/list/signupdate.java | 53 +- .../jobs/commands/list/skipquest.java | 21 +- .../gamingmesh/jobs/commands/list/stats.java | 4 +- .../gamingmesh/jobs/commands/list/toggle.java | 70 +- .../gamingmesh/jobs/commands/list/top.java | 7 +- .../jobs/commands/list/transfer.java | 69 +- 54 files changed, 1841 insertions(+), 1838 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java b/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java index 4ba9d72e..2c805590 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java +++ b/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java @@ -24,6 +24,7 @@ import com.gamingmesh.jobs.container.JobInfo; import com.gamingmesh.jobs.container.JobProgression; import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.container.Title; +import com.gamingmesh.jobs.i18n.Language; import com.gamingmesh.jobs.stuff.Util; import net.Zrips.CMILib.ActionBar.CMIActionBar; @@ -267,7 +268,7 @@ public class JobsCommands implements CommandExecutor { public void jobInfoMessage(CommandSender sender, JobsPlayer player, Job job, String type, int page) { if (job == null) { // job doesn't exist - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); + Language.sendMessage(sender, "general.error.job"); return; } @@ -316,7 +317,7 @@ public class JobsCommands implements CommandExecutor { PageInfo pi = new PageInfo(15, message.size(), page); if (page > pi.getTotalPages()) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.info.invalidPage")); + Language.sendMessage(sender, "general.info.invalidPage"); return; } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/archive.java b/src/main/java/com/gamingmesh/jobs/commands/list/archive.java index d5256354..5f8dc616 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/archive.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/archive.java @@ -10,6 +10,7 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.JobProgression; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.RawMessages.RawMessage; @@ -17,43 +18,43 @@ public class archive implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - JobsPlayer jPlayer = null; - if (args.length >= 1) { - if (!Jobs.hasPermission(sender, "jobs.command.admin.archive", true)) { - return null; - } - jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + JobsPlayer jPlayer = null; + if (args.length >= 1) { + if (!Jobs.hasPermission(sender, "jobs.command.admin.archive", true)) { + return null; + } + jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - } else if (sender instanceof Player) { - jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); - } + } else if (sender instanceof Player) { + jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); + } - if (jPlayer == null) { - if (args.length >= 1) - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args[0])); - return null; - } + if (jPlayer == null) { + if (args.length >= 1) + Language.sendMessage(sender, "general.error.noinfoByPlayer", "%playername%", args[0]); + return null; + } - Set allJobs = jPlayer.getArchivedJobs().getArchivedJobs(); - if (allJobs.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.archive.error.nojob")); - return null; - } - - sender.sendMessage(Jobs.getLanguage().getMessage("general.info.toplineseparator", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getDisplayName())); - for (JobProgression jobInfo : allJobs) { - RawMessage rm = new RawMessage(); - if (jobInfo.canRejoin()) - rm.addText(ChatColor.GREEN + "+" + Jobs.getCommandManager().jobStatsMessageArchive(jPlayer, jobInfo)) - .addHover(Jobs.getLanguage().getMessage("command.join.rejoin")).addCommand("jobs join " + jobInfo.getJob().getName()); - else - rm.addText(ChatColor.RED + "-" + Jobs.getCommandManager().jobStatsMessageArchive(jPlayer, jobInfo)) - .addHover(Jobs.getLanguage().getMessage("command.join.error.rejoin", "[time]", jobInfo - .getRejoinTimeMessage())); - rm.show(sender); - } + Set allJobs = jPlayer.getArchivedJobs().getArchivedJobs(); + if (allJobs.isEmpty()) { + Language.sendMessage(sender, "command.archive.error.nojob"); + return null; + } - sender.sendMessage(Jobs.getLanguage().getMessage("general.info.separator")); - return true; + Language.sendMessage(sender, "general.info.toplineseparator", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getDisplayName()); + for (JobProgression jobInfo : allJobs) { + RawMessage rm = new RawMessage(); + if (jobInfo.canRejoin()) + rm.addText(ChatColor.GREEN + "+" + Jobs.getCommandManager().jobStatsMessageArchive(jPlayer, jobInfo)) + .addHover(Jobs.getLanguage().getMessage("command.join.rejoin")).addCommand("jobs join " + jobInfo.getJob().getName()); + else + rm.addText(ChatColor.RED + "-" + Jobs.getCommandManager().jobStatsMessageArchive(jPlayer, jobInfo)) + .addHover(Jobs.getLanguage().getMessage("command.join.error.rejoin", "[time]", jobInfo + .getRejoinTimeMessage())); + rm.show(sender); + } + + Language.sendMessage(sender, "general.info.separator"); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/area.java b/src/main/java/com/gamingmesh/jobs/commands/list/area.java index 5e5c8a2c..06ce46ae 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/area.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/area.java @@ -12,6 +12,7 @@ import com.gamingmesh.jobs.config.RestrictedAreaManager; import com.gamingmesh.jobs.container.CuboidArea; import com.gamingmesh.jobs.container.RestrictedArea; import com.gamingmesh.jobs.hooks.HookManager; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Items.CMIMaterial; import net.Zrips.CMILib.Locale.LC; @@ -21,150 +22,150 @@ public class area implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (!(sender instanceof Player)) { - CMIMessages.sendMessage(sender, LC.info_Ingame); - return false; - } + if (!(sender instanceof Player)) { + CMIMessages.sendMessage(sender, LC.info_Ingame); + return false; + } - Player player = (Player) sender; + Player player = (Player) sender; - if (args.length == 3) { - if (args[0].equalsIgnoreCase("add")) { - if (!Jobs.hasPermission(player, "jobs.area.add", true)) - return true; + if (args.length == 3) { + if (args[0].equalsIgnoreCase("add")) { + if (!Jobs.hasPermission(player, "jobs.area.add", true)) + return true; - double bonus = 0D; - try { - bonus = Double.parseDouble(args[2]); - } catch (NumberFormatException e) { - return false; - } + double bonus = 0D; + try { + bonus = Double.parseDouble(args[2]); + } catch (NumberFormatException e) { + return false; + } - boolean wg = false; + boolean wg = false; - String name = args[1]; - if (name.startsWith("wg:")) { - wg = true; - name = name.substring("wg:".length(), name.length()); - } + String name = args[1]; + if (name.startsWith("wg:")) { + wg = true; + name = name.substring("wg:".length(), name.length()); + } - RestrictedAreaManager ra = Jobs.getRestrictedAreaManager(); + RestrictedAreaManager ra = Jobs.getRestrictedAreaManager(); - if (ra.isExist(name)) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.area.output.exist")); - return true; - } + if (ra.isExist(name)) { + Language.sendMessage(sender, "command.area.output.exist"); + return true; + } - if (!wg && !Jobs.getSelectionManager().hasPlacedBoth(player)) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.area.output.select", - "%tool%", CMIMaterial.get(Jobs.getGCManager().getSelectionTool()).getName())); - return true; - } - if (wg && HookManager.getWorldGuardManager() != null) { - com.sk89q.worldguard.protection.regions.ProtectedRegion protectedRegion = HookManager.getWorldGuardManager().getProtectedRegionByName(name); + if (!wg && !Jobs.getSelectionManager().hasPlacedBoth(player)) { + Language.sendMessage(sender, "command.area.output.select", + "%tool%", CMIMaterial.get(Jobs.getGCManager().getSelectionTool()).getName()); + return true; + } + if (wg && HookManager.getWorldGuardManager() != null) { + com.sk89q.worldguard.protection.regions.ProtectedRegion protectedRegion = HookManager.getWorldGuardManager().getProtectedRegionByName(name); - if (protectedRegion == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.area.output.wgDontExist")); - return true; - } - name = protectedRegion.getId(); - } + if (protectedRegion == null) { + Language.sendMessage(sender, "command.area.output.wgDontExist"); + return true; + } + name = protectedRegion.getId(); + } - if (!wg) - ra.addNew(new RestrictedArea(name, Jobs.getSelectionManager().getSelectionCuboid(player), bonus), true); - else - ra.addNew(new RestrictedArea(name, name, bonus), true); - sender.sendMessage(Jobs.getLanguage().getMessage("command.area.output.addedNew", "%bonus%", bonus)); - return true; - } - } + if (!wg) + ra.addNew(new RestrictedArea(name, Jobs.getSelectionManager().getSelectionCuboid(player), bonus), true); + else + ra.addNew(new RestrictedArea(name, name, bonus), true); + Language.sendMessage(sender, "command.area.output.addedNew", "%bonus%", bonus); + return true; + } + } - if (args.length == 2) { - if (args[0].equalsIgnoreCase("remove")) { - if (!Jobs.hasPermission(player, "jobs.area.remove", true)) - return true; + if (args.length == 2) { + if (args[0].equalsIgnoreCase("remove")) { + if (!Jobs.hasPermission(player, "jobs.area.remove", true)) + return true; - RestrictedAreaManager ra = Jobs.getRestrictedAreaManager(); - String name = args[1]; + RestrictedAreaManager ra = Jobs.getRestrictedAreaManager(); + String name = args[1]; - if (!ra.isExist(name)) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.area.output.dontExist")); - return true; - } + if (!ra.isExist(name)) { + Language.sendMessage(sender, "command.area.output.dontExist"); + return true; + } - ra.remove(name); - sender.sendMessage(Jobs.getLanguage().getMessage("command.area.output.removed", "%name%", name)); - return true; - } - } + ra.remove(name); + Language.sendMessage(sender, "command.area.output.removed", "%name%", name); + return true; + } + } - if (args.length == 1 && args[0].equalsIgnoreCase("info")) { + if (args.length == 1 && args[0].equalsIgnoreCase("info")) { - List areas = Jobs.getRestrictedAreaManager().getRestrictedAreasByLoc(player.getLocation()); + List areas = Jobs.getRestrictedAreaManager().getRestrictedAreasByLoc(player.getLocation()); - String msg = ""; + String msg = ""; - for (RestrictedArea area : areas) { - if (!msg.isEmpty()) - msg += ", "; - msg += area.getName(); - } + for (RestrictedArea area : areas) { + if (!msg.isEmpty()) + msg += ", "; + msg += area.getName(); + } - if (msg.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.area.output.noAreasByLoc")); - return true; - } - sender.sendMessage(Jobs.getLanguage().getMessage("command.area.output.areaList", "%list%", msg)); - return true; - } + if (msg.isEmpty()) { + Language.sendMessage(sender, "command.area.output.noAreasByLoc"); + return true; + } + Language.sendMessage(sender, "command.area.output.areaList", "%list%", msg); + return true; + } - if (args.length == 1 && args[0].equalsIgnoreCase("list")) { + if (args.length == 1 && args[0].equalsIgnoreCase("list")) { - java.util.Map areas = Jobs.getRestrictedAreaManager().getRestrictedAreas(); - if (areas.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.area.output.noAreas")); - return true; - } + java.util.Map areas = Jobs.getRestrictedAreaManager().getRestrictedAreas(); + if (areas.isEmpty()) { + sender.sendMessage(Jobs.getLanguage().getMessage("command.area.output.noAreas")); + return true; + } - sender.sendMessage(Jobs.getLanguage().getMessage("general.info.separator")); - int i = 0; - for (Entry area : areas.entrySet()) { - i++; - CuboidArea cuboid = area.getValue().getCuboidArea(); - if (area.getValue().getWgName() == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.area.output.list", "%number%", i, - "%areaname%", area.getKey(), - "%worldname%", cuboid.getWorld().getName(), - "%x1%", cuboid.getLowLoc().getBlockX(), - "%y1%", cuboid.getLowLoc().getBlockY(), - "%z1%", cuboid.getLowLoc().getBlockZ(), - "%x2%", cuboid.getHighLoc().getBlockX(), - "%y2%", cuboid.getHighLoc().getBlockY(), - "%z2%", cuboid.getHighLoc().getBlockZ(), - "%bonus%", area.getValue().getMultiplier())); - } else { - sender.sendMessage(Jobs.getLanguage().getMessage("command.area.output.wgList", "%number%", i, - "%areaname%", area.getKey(), - "%bonus%", area.getValue().getMultiplier())); - } - } - sender.sendMessage(Jobs.getLanguage().getMessage("general.info.separator")); - return true; - } + sender.sendMessage(Jobs.getLanguage().getMessage("general.info.separator")); + int i = 0; + for (Entry area : areas.entrySet()) { + i++; + CuboidArea cuboid = area.getValue().getCuboidArea(); + if (area.getValue().getWgName() == null) { + Language.sendMessage(sender, "command.area.output.list", "%number%", i, + "%areaname%", area.getKey(), + "%worldname%", cuboid.getWorld().getName(), + "%x1%", cuboid.getLowLoc().getBlockX(), + "%y1%", cuboid.getLowLoc().getBlockY(), + "%z1%", cuboid.getLowLoc().getBlockZ(), + "%x2%", cuboid.getHighLoc().getBlockX(), + "%y2%", cuboid.getHighLoc().getBlockY(), + "%z2%", cuboid.getHighLoc().getBlockZ(), + "%bonus%", area.getValue().getMultiplier()); + } else { + Language.sendMessage(sender, "command.area.output.wgList", "%number%", i, + "%areaname%", area.getKey(), + "%bonus%", area.getValue().getMultiplier()); + } + } + Language.sendMessage(sender, "general.info.separator"); + return true; + } - if (args.length > 0) { - if (args[0].equalsIgnoreCase("add")) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.area.help.addUsage")); - return true; - } + if (args.length > 0) { + if (args[0].equalsIgnoreCase("add")) { + Language.sendMessage(sender, "command.area.help.addUsage"); + return true; + } - if (args[0].equalsIgnoreCase("remove")) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.area.help.removeUsage")); - return true; - } - } + if (args[0].equalsIgnoreCase("remove")) { + Language.sendMessage(sender, "command.area.help.removeUsage"); + return true; + } + } - return false; + return false; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/blockinfo.java b/src/main/java/com/gamingmesh/jobs/commands/list/blockinfo.java index 10b3dbff..20940495 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/blockinfo.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/blockinfo.java @@ -21,12 +21,7 @@ public class blockinfo implements Cmd { public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { if (!(sender instanceof Player)) { CMIMessages.sendMessage(sender, LC.info_Ingame); - return false; - } - - if (args.length != 0) { - Jobs.getCommandManager().sendUsage(sender, "blockinfo"); - return true; + return null; } Block block = Util.getTargetBlock((Player) sender, 15); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/bonus.java b/src/main/java/com/gamingmesh/jobs/commands/list/bonus.java index abefff10..5b563739 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/bonus.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/bonus.java @@ -13,6 +13,7 @@ import com.gamingmesh.jobs.container.CurrencyType; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.hooks.HookManager; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; @@ -22,86 +23,84 @@ public class bonus implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (!(sender instanceof Player)) { - CMIMessages.sendMessage(sender, LC.info_Ingame); - return false; - } + if (!(sender instanceof Player)) { + CMIMessages.sendMessage(sender, LC.info_Ingame); + return null; + } - if (args.length != 1) { - Jobs.getCommandManager().sendUsage(sender, "bonus"); - return true; - } + if (args.length != 1) { + Jobs.getCommandManager().sendUsage(sender, "bonus"); + return true; + } - Player player = (Player) sender; - Job job = Jobs.getJob(args[0]); - if (job == null) { - player.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } + Player player = (Player) sender; + Job job = Jobs.getJob(args[0]); + if (job == null) { + Language.sendMessage(sender, "general.error.job"); + return true; + } - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(player); - if (jPlayer == null) - return false; + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(player); + if (jPlayer == null) + return false; - Boost boost = Jobs.getPlayerManager().getFinalBonus(jPlayer, job, true, true); + Boost boost = Jobs.getPlayerManager().getFinalBonus(jPlayer, job, true, true); - player.sendMessage(Jobs.getLanguage().getMessage("command.bonus.output.topline")); + Language.sendMessage(sender, "command.bonus.output.topline"); - printBoost(sender, boost, BoostOf.Permission); - printBoost(sender, boost, BoostOf.Item); - printBoost(sender, boost, BoostOf.Global); - if (Jobs.getGCManager().useDynamicPayment) - printBoost(sender, boost, BoostOf.Dynamic); - printBoost(sender, boost, BoostOf.Area); - if (Jobs.getGCManager().payNearSpawner()) - printBoost(sender, boost, BoostOf.NearSpawner); - printBoost(sender, boost, BoostOf.PetPay); + printBoost(sender, boost, BoostOf.Permission); + printBoost(sender, boost, BoostOf.Item); + printBoost(sender, boost, BoostOf.Global); + if (Jobs.getGCManager().useDynamicPayment) + printBoost(sender, boost, BoostOf.Dynamic); + printBoost(sender, boost, BoostOf.Area); + if (Jobs.getGCManager().payNearSpawner()) + printBoost(sender, boost, BoostOf.NearSpawner); + printBoost(sender, boost, BoostOf.PetPay); - if (HookManager.getMcMMOManager().mcMMOPresent || - HookManager.getMcMMOManager().mcMMOOverHaul && boost.get(BoostOf.McMMO, CurrencyType.EXP) != 0D) - printBoost(sender, boost, BoostOf.McMMO); + if (HookManager.getMcMMOManager().mcMMOPresent || + HookManager.getMcMMOManager().mcMMOOverHaul && boost.get(BoostOf.McMMO, CurrencyType.EXP) != 0D) + printBoost(sender, boost, BoostOf.McMMO); - player.sendMessage(Jobs.getLanguage().getMessage("general.info.separator")); + Language.sendMessage(sender, "general.info.separator"); - RawMessage rm = new RawMessage(); - String msg = Jobs.getLanguage().getMessage("command.bonus.output.final", - "%money%", formatText(boost.getFinal(CurrencyType.MONEY, true, true)), - "%points%", formatText(boost.getFinal(CurrencyType.POINTS, true, true)), - "%exp%", formatText(boost.getFinal(CurrencyType.EXP, true, true))); - - String msg2 = Jobs.getLanguage().getMessage("command.bonus.output.final", - "%money%", formatText(boost.getFinal(CurrencyType.MONEY, true, false)), - "%points%", formatText(boost.getFinal(CurrencyType.POINTS, true, false)), - "%exp%", formatText(boost.getFinal(CurrencyType.EXP, true, false))); + RawMessage rm = new RawMessage(); + String msg = Jobs.getLanguage().getMessage("command.bonus.output.final", + "%money%", formatText(boost.getFinal(CurrencyType.MONEY, true, true)), + "%points%", formatText(boost.getFinal(CurrencyType.POINTS, true, true)), + "%exp%", formatText(boost.getFinal(CurrencyType.EXP, true, true))); - rm.addText(msg).addHover(Arrays.asList(Jobs.getLanguage().getMessage("command.bonus.output.finalExplanation"), msg2)); - - - - rm.build(); - rm.show(player); + String msg2 = Jobs.getLanguage().getMessage("command.bonus.output.final", + "%money%", formatText(boost.getFinal(CurrencyType.MONEY, true, false)), + "%points%", formatText(boost.getFinal(CurrencyType.POINTS, true, false)), + "%exp%", formatText(boost.getFinal(CurrencyType.EXP, true, false))); - return true; + rm.addText(msg).addHover(Arrays.asList(Jobs.getLanguage().getMessage("command.bonus.output.finalExplanation"), msg2)); + + rm.build(); + rm.show(player); + + return true; } private static void printBoost(CommandSender sender, Boost boost, BoostOf type) { - String prefix = Jobs.getLanguage().getMessage("command.bonus.output.specialPrefix"); - if (type != BoostOf.NearSpawner && type != BoostOf.PetPay) - prefix = ""; + String prefix = Jobs.getLanguage().getMessage("command.bonus.output.specialPrefix"); + if (type != BoostOf.NearSpawner && type != BoostOf.PetPay) + prefix = ""; - String msg = Jobs.getLanguage().getMessage("command.bonus.output." + type.name().toLowerCase(), - "%money%", formatText(boost.get(type, CurrencyType.MONEY, true)), - "%points%", formatText(boost.get(type, CurrencyType.POINTS, true)), - "%exp%", formatText(boost.get(type, CurrencyType.EXP, true))); + String msg = Jobs.getLanguage().getMessage("command.bonus.output." + type.name().toLowerCase(), + "%money%", formatText(boost.get(type, CurrencyType.MONEY, true)), + "%points%", formatText(boost.get(type, CurrencyType.POINTS, true)), + "%exp%", formatText(boost.get(type, CurrencyType.EXP, true))); - if ((type == BoostOf.NearSpawner || type == BoostOf.PetPay) && msg.startsWith(" ")) - msg = msg.substring(1, msg.length()); + if ((type == BoostOf.NearSpawner || type == BoostOf.PetPay) && msg.startsWith(" ")) + msg = msg.substring(1, msg.length()); - sender.sendMessage(prefix + msg); + CMIMessages.sendMessage(sender, prefix + msg); } private static String formatText(double amount) { - return ((amount > 0 ? "+" : "") + amount + "%"); + return ((amount > 0 ? "+" : "") + amount + "%"); } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/boost.java b/src/main/java/com/gamingmesh/jobs/commands/list/boost.java index 6b78dfa1..d46ef79d 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/boost.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/boost.java @@ -6,6 +6,7 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.CurrencyType; import com.gamingmesh.jobs.container.Job; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Logs.CMIDebug; @@ -95,22 +96,22 @@ public class boost implements Cmd { one.addBoost(curr, 1.0); } } - sender.sendMessage(Jobs.getLanguage().getMessage("command.boost.output.allreset")); + Language.sendMessage(sender, "command.boost.output.allreset"); } else { for (Job one : Jobs.getJobs()) { one.addBoost(type, 1.0); } - sender.sendMessage(Jobs.getLanguage().getMessage("command.boost.output.alltypereset", "%type%", type.getDisplayName())); + Language.sendMessage(sender, "command.boost.output.alltypereset", "%type%", type.getDisplayName()); } } else if (job != null) { if (type == null) { for (CurrencyType curr : CurrencyType.values()) { job.addBoost(curr, 1.0); } - sender.sendMessage(Jobs.getLanguage().getMessage("command.moneyboost.output.jobsboostreset", "%jobname%", job.getName())); + Language.sendMessage(sender, "command.moneyboost.output.jobsboostreset", "%jobname%", job.getName()); } else { job.addBoost(type, 1.0); - sender.sendMessage(Jobs.getLanguage().getMessage("command.moneyboost.output.jobstypeboostreset", "%jobname%", job.getName(), "%type%", type.getDisplayName())); + Language.sendMessage(sender, "command.moneyboost.output.jobstypeboostreset", "%jobname%", job.getName(), "%type%", type.getDisplayName()); } } else { return false; @@ -128,7 +129,7 @@ public class boost implements Cmd { one.addBoost(type, rate, timeDuration); } - sender.sendMessage(Jobs.getLanguage().getMessage("command.boost.output.boostadded", "%boost%", rate, "%jobname%", one.getName())); + Language.sendMessage(sender, "command.boost.output.boostadded", "%boost%", rate, "%jobname%", one.getName()); } } else { if (type == null) { @@ -138,14 +139,13 @@ public class boost implements Cmd { } else { job.addBoost(type, rate, timeDuration); } - CMIDebug.d(timeDuration); - sender.sendMessage(Jobs.getLanguage().getMessage("command.boost.output.boostadded", "%boost%", rate, "%jobname%", job.getName())); + Language.sendMessage(sender, "command.boost.output.boostadded", "%boost%", rate, "%jobname%", job.getName()); } return true; } - private void showBoosts(CommandSender sender, Job job) { + private static void showBoosts(CommandSender sender, Job job) { RawMessage rm = new RawMessage(); String msg = Jobs.getLanguage().getMessage("command.boost.output.boostStats", "%jobname%", job.getDisplayName()); String[] split = msg.split("%payments%"); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/bp.java b/src/main/java/com/gamingmesh/jobs/commands/list/bp.java index b88b1ab0..12f39dd8 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/bp.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/bp.java @@ -13,6 +13,7 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.BlockProtection; import com.gamingmesh.jobs.container.DBAction; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Items.CMIMaterial; import net.Zrips.CMILib.Locale.LC; @@ -73,9 +74,9 @@ public class bp implements Cmd { } if (changedBlocks.isEmpty()) - sender.sendMessage(Jobs.getLanguage().getMessage("command.bp.output.notFound")); + Language.sendMessage(sender, "command.bp.output.notFound"); else - sender.sendMessage(Jobs.getLanguage().getMessage("command.bp.output.found", "%amount%", changedBlocks.size())); + Language.sendMessage(sender, "command.bp.output.found", "%amount%", changedBlocks.size()); Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() { @Override diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/browse.java b/src/main/java/com/gamingmesh/jobs/commands/list/browse.java index c7ef76f1..b68989cb 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/browse.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/browse.java @@ -9,9 +9,11 @@ import org.bukkit.entity.Player; import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Colors.CMIChatColor; import net.Zrips.CMILib.Container.PageInfo; +import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.RawMessages.RawMessage; public class browse implements Cmd { @@ -22,7 +24,7 @@ public class browse implements Cmd { if (Jobs.getGCManager().BrowseUseNewLook) { if (Jobs.getJobs().isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.error.nojobs")); + Language.sendMessage(sender, "command.browse.error.nojobs"); return true; } @@ -60,7 +62,7 @@ public class browse implements Cmd { if (senderIsPlayer) { if (j == null) { PageInfo pi = new PageInfo(Jobs.getGCManager().getBrowseAmountToShow(), jobList.size(), page); - sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.output.newHeader", "[amount]", jobList.size())); + Language.sendMessage(sender, "command.browse.output.newHeader", "[amount]", jobList.size()); for (Job one : jobList) { if (!pi.isEntryOk()) continue; @@ -116,25 +118,25 @@ public class browse implements Cmd { pi.autoPagination(sender, "jobs browse", "-p:"); } else { - sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.output.jobHeader", "[jobname]", j.getName())); + Language.sendMessage(sender, "command.browse.output.jobHeader", "[jobname]", j.getName()); int maxLevel = j.getMaxLevel(sender); if (maxLevel > 0) - sender.sendMessage(Jobs.getLanguage().getMessage("command.info.help.newMax", "[max]", maxLevel)); + Language.sendMessage(sender, "command.info.help.newMax", "[max]", maxLevel); if (Jobs.getGCManager().ShowTotalWorkers) - sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.output.totalWorkers", "[amount]", j.getTotalPlayers())); + Language.sendMessage(sender, "command.browse.output.totalWorkers", "[amount]", j.getTotalPlayers()); if (Jobs.getGCManager().useDynamicPayment && Jobs.getGCManager().ShowPenaltyBonus) { int bonus = (int) (j.getBonus() * 100); if (bonus < 0) - sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.output.penalty", "[amount]", bonus * -1)); + Language.sendMessage(sender, "command.browse.output.penalty", "[amount]", bonus * -1); else - sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.output.bonus", "[amount]", bonus)); + Language.sendMessage(sender, "command.browse.output.bonus", "[amount]", bonus); } for (String one : j.getFullDescription()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.output.description", "[description]", one)); + Language.sendMessage(sender, "command.browse.output.description", "[description]", one); } RawMessage rm = new RawMessage(); @@ -148,7 +150,7 @@ public class browse implements Cmd { } } else { if (j == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.output.console.newHeader", "[amount]", jobList.size(), "\\n", "\n")); + Language.sendMessage(sender, "command.browse.output.console.newHeader", "[amount]", jobList.size(), "\\n", "\n"); for (Job one : jobList) { String msg = ""; @@ -177,14 +179,14 @@ public class browse implements Cmd { msg += Jobs.getLanguage().getMessage("command.browse.output.console.list", "[jobname]", one.getName()); - sender.sendMessage(msg); + CMIMessages.sendMessage(sender, msg); } } else { - sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.output.jobHeader", "[jobname]", j.getName())); + Language.sendMessage(sender, "command.browse.output.jobHeader", "[jobname]", j.getName()); int maxLevel = j.getMaxLevel(sender); if (maxLevel > 0) - sender.sendMessage(Jobs.getLanguage().getMessage("command.info.help.newMax", "[max]", maxLevel)); + Language.sendMessage(sender, "command.info.help.newMax", "[max]", maxLevel); if (Jobs.getGCManager().ShowTotalWorkers) sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.output.totalWorkers", "[amount]", j.getTotalPlayers())); @@ -192,13 +194,13 @@ public class browse implements Cmd { if (Jobs.getGCManager().useDynamicPayment && Jobs.getGCManager().ShowPenaltyBonus) { int bonus = (int) (j.getBonus() * 100); if (bonus < 0) - sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.output.penalty", "[amount]", bonus * -1)); + Language.sendMessage(sender, "command.browse.output.penalty", "[amount]", bonus * -1); else - sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.output.bonus", "[amount]", bonus)); + Language.sendMessage(sender, "command.browse.output.bonus", "[amount]", bonus); } for (String one : j.getFullDescription()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.output.description", "[description]", one)); + Language.sendMessage(sender, "command.browse.output.description", "[description]", one); } } } @@ -245,7 +247,7 @@ public class browse implements Cmd { } if (lines.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.error.nojobs")); + Language.sendMessage(sender, "command.browse.error.nojobs"); return true; } @@ -260,9 +262,9 @@ public class browse implements Cmd { } if (Jobs.getGCManager().JobsGUIShowChatBrowse) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.output.header")); + Language.sendMessage(sender, "command.browse.output.header"); lines.forEach(sender::sendMessage); - sender.sendMessage(Jobs.getLanguage().getMessage("command.browse.output.footer")); + Language.sendMessage(sender, "command.browse.output.footer"); } } return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/clearownership.java b/src/main/java/com/gamingmesh/jobs/commands/list/clearownership.java index bf0e51e4..541b906d 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/clearownership.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/clearownership.java @@ -11,6 +11,7 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.container.blockOwnerShip.BlockTypes; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; @@ -47,8 +48,8 @@ public class clearownership implements Cmd { if (args.length >= 1) CMIMessages.sendMessage(sender, LC.info_NoInformation); else - Jobs.getCommandManager().sendUsage(sender, "clearownership"); - return true; + return false; + return null; } final UUID uuid = jPlayer.getUniqueId(); @@ -64,8 +65,8 @@ public class clearownership implements Cmd { } } - sender.sendMessage(Jobs.getLanguage().getMessage("command.clearownership.output.cleared", "[furnaces]", amounts.getOrDefault(BlockTypes.FURNACE, 0), "[brewing]", amounts.getOrDefault( - BlockTypes.BREWING_STAND, 0), "[smoker]", amounts.getOrDefault(BlockTypes.SMOKER, 0), "[blast]", amounts.getOrDefault(BlockTypes.BLAST_FURNACE, 0))); + Language.sendMessage(sender,"command.clearownership.output.cleared", "[furnaces]", amounts.getOrDefault(BlockTypes.FURNACE, 0), "[brewing]", amounts.getOrDefault( + BlockTypes.BREWING_STAND, 0), "[smoker]", amounts.getOrDefault(BlockTypes.SMOKER, 0), "[blast]", amounts.getOrDefault(BlockTypes.BLAST_FURNACE, 0)); return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/convert.java b/src/main/java/com/gamingmesh/jobs/commands/list/convert.java index ac46d08e..dbe929e1 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/convert.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/convert.java @@ -21,8 +21,7 @@ public class convert implements Cmd { } if (args.length > 0) { - Jobs.getCommandManager().sendUsage(sender, "convert"); - return true; + return false; } String from = Jobs.getDBManager().getDbType() == DataBaseType.SqLite ? "SQLite" : "MySQL"; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/demote.java b/src/main/java/com/gamingmesh/jobs/commands/list/demote.java index 66d02cd4..b87b3a7a 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/demote.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/demote.java @@ -7,6 +7,7 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Colors.CMIChatColor; @@ -14,48 +15,46 @@ public class demote implements Cmd { @Override public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { - if (args.length < 3) { - Jobs.getCommandManager().sendUsage(sender, "demote"); - return true; - } + if (args.length < 3) { + return false; + } - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args[0])); - return true; - } + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + if (jPlayer == null) { + Language.sendMessage(sender, "general.error.noinfoByPlayer", "%playername%", args[0]); + return true; + } - Job job = Jobs.getJob(args[1]); - if (job == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } + Job job = Jobs.getJob(args[1]); + if (job == null) { + Language.sendMessage(sender, "general.error.job"); + return true; + } - try { - // check if player already has the job - if (jPlayer.isInJob(job)) { - int levelsLost = 0; - try { - levelsLost = Integer.parseInt(args[2]); - } catch (NumberFormatException ex) { - return true; - } + try { + // check if player already has the job + if (jPlayer.isInJob(job)) { + int levelsLost = 0; + try { + levelsLost = Integer.parseInt(args[2]); + } catch (NumberFormatException ex) { + return true; + } - Jobs.getPlayerManager().demoteJob(jPlayer, job, levelsLost); + Jobs.getPlayerManager().demoteJob(jPlayer, job, levelsLost); - Player player = jPlayer.getPlayer(); - if (player != null) { - String message = Jobs.getLanguage().getMessage("command.demote.output.target", - "%jobname%", job.getDisplayName() + CMIChatColor.WHITE, - "%levelslost%", levelsLost); - player.sendMessage(message); - } + Player player = jPlayer.getPlayer(); + if (player != null) { + Language.sendMessage(sender, "command.demote.output.target", + "%jobname%", job.getDisplayName() + CMIChatColor.WHITE, + "%levelslost%", levelsLost); + } - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.success")); - } - } catch (Throwable e) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.error")); - } - return true; + Language.sendMessage(sender, "general.admin.success"); + } + } catch (Throwable e) { + Language.sendMessage(sender, "general.admin.error"); + } + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/edititembonus.java b/src/main/java/com/gamingmesh/jobs/commands/list/edititembonus.java index 75672d98..ca132e6e 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/edititembonus.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/edititembonus.java @@ -13,6 +13,7 @@ import com.gamingmesh.jobs.container.CurrencyType; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobItems; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Colors.CMIChatColor; import net.Zrips.CMILib.Items.CMIItemStack; @@ -23,37 +24,37 @@ import net.Zrips.CMILib.NBT.CMINBT; public class edititembonus implements Cmd { private enum actions { - list, add, remove; + list, add, remove; - public static actions getByname(String name) { - for (actions one : actions.values()) { - if (one.name().equalsIgnoreCase(name)) - return one; - } - return null; - } + public static actions getByname(String name) { + for (actions one : actions.values()) { + if (one.name().equalsIgnoreCase(name)) + return one; + } + return null; + } } @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (!(sender instanceof Player)) { - CMIMessages.sendMessage(sender, LC.info_Ingame); - return false; - } + if (!(sender instanceof Player)) { + CMIMessages.sendMessage(sender, LC.info_Ingame); + return null; + } - if (args.length < 1) - return false; + if (args.length < 1) + return false; - actions action = null; + actions action = null; // Job job = null; - JobItems jobitem = null; + JobItems jobitem = null; - for (String one : args) { - if (action == null) { - action = actions.getByname(one); - if (action != null) - continue; - } + for (String one : args) { + if (action == null) { + action = actions.getByname(one); + if (action != null) + continue; + } // if (job == null) { // job = Jobs.getJob(one); // if (job != null) @@ -61,68 +62,67 @@ public class edititembonus implements Cmd { // } // if (job != null) { - jobitem = ItemBoostManager.getItemByKey(one); + jobitem = ItemBoostManager.getItemByKey(one); // } - } + } - if (action == null) - return false; + if (action == null) + return false; - Player player = (Player) sender; - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(player); - if (jPlayer == null) - return false; + Player player = (Player) sender; + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(player); + if (jPlayer == null) + return false; - ItemStack iih = CMIItemStack.getItemInMainHand(player); - if (iih == null || iih.getType() == Material.AIR) - return false; + ItemStack iih = CMIItemStack.getItemInMainHand(player); + if (iih == null || iih.getType() == Material.AIR) + return false; - switch (action) { - case add: - if (jobitem == null) - return false; - iih = (ItemStack) new CMINBT(iih).setString("JobsItemBoost", jobitem.getNode()); - CMIItemStack.setItemInMainHand(player, iih); - break; - case list: - break; - case remove: - iih = (ItemStack) new CMINBT(iih).remove("JobsItemBoost"); - CMIItemStack.setItemInMainHand(player, iih); - break; - default: - break; - } + switch (action) { + case add: + if (jobitem == null) + return false; + iih = (ItemStack) new CMINBT(iih).setString("JobsItemBoost", jobitem.getNode()); + CMIItemStack.setItemInMainHand(player, iih); + break; + case list: + break; + case remove: + iih = (ItemStack) new CMINBT(iih).remove("JobsItemBoost"); + CMIItemStack.setItemInMainHand(player, iih); + break; + default: + break; + } - sender.sendMessage(Jobs.getLanguage().getMessage("command.bonus.output.topline")); + Language.sendMessage(sender, "command.bonus.output.topline"); - Object key = new CMINBT(iih).getString("JobsItemBoost"); - if (key == null) - return true; + Object key = new CMINBT(iih).getString("JobsItemBoost"); + if (key == null) + return true; - JobItems item = ItemBoostManager.getItemByKey(key.toString()); - if (item == null) - return true; + JobItems item = ItemBoostManager.getItemByKey(key.toString()); + if (item == null) + return true; - BoostMultiplier boost = item.getBoost(); + BoostMultiplier boost = item.getBoost(); - String mc = CMIChatColor.DARK_GREEN.toString(), - pc = CMIChatColor.GOLD.toString(), - ec = CMIChatColor.YELLOW.toString(); + String mc = CMIChatColor.DARK_GREEN.toString(); + String pc = CMIChatColor.GOLD.toString(); + String ec = CMIChatColor.YELLOW.toString(); - for (Job one : item.getJobs()) { - String msg = Jobs.getLanguage().getMessage("command.itembonus.output.list", - "[jobname]", one.getName(), - "%money%", mc + formatText((int) (boost.get(CurrencyType.MONEY) * 100)), - "%points%", pc + formatText((int) (boost.get(CurrencyType.POINTS) * 100)), - "%exp%", ec + formatText((int) (boost.get(CurrencyType.EXP) * 100))); - sender.sendMessage(msg); - } - return true; + for (Job one : item.getJobs()) { + Language.sendMessage(sender, "command.itembonus.output.list", + "[jobname]", one.getName(), + "%money%", mc + formatText((int) (boost.get(CurrencyType.MONEY) * 100)), + "%points%", pc + formatText((int) (boost.get(CurrencyType.POINTS) * 100)), + "%exp%", ec + formatText((int) (boost.get(CurrencyType.EXP) * 100))); + } + return true; } private static String formatText(double amount) { - return ((amount > 0 ? "+" : "") + amount + "%"); + return ((amount > 0 ? "+" : "") + amount + "%"); } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/editjobs.java b/src/main/java/com/gamingmesh/jobs/commands/list/editjobs.java index 27623960..3ab29b44 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/editjobs.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/editjobs.java @@ -20,6 +20,7 @@ import net.Zrips.CMILib.Colors.CMIChatColor; import net.Zrips.CMILib.Container.PageInfo; import net.Zrips.CMILib.Items.CMIItemStack; import net.Zrips.CMILib.Items.CMIMaterial; +import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.RawMessages.RawMessage; import net.Zrips.CMILib.Version.Version; @@ -29,408 +30,413 @@ public class editjobs implements Cmd { @Override public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { - if (!(sender instanceof Player)) - return false; + if (!(sender instanceof Player)) { + LC.info_Ingame.sendMessage(sender); + return false; + } - Player player = (Player) sender; + Player player = (Player) sender; - if (args.length == 0) - args = new String[] { "list" }; + if (args.length == 0) + args = new String[] { "list" }; - switch (args[0]) { - case "list": - if (args.length == 1) { - showPath(player, null, null, null); + switch (args[0]) { + case "list": + if (args.length == 1) { + showPath(player, null, null, null); - for (Job one : Jobs.getJobs()) { - RawMessage rm = new RawMessage(); - rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.list.jobs", "%jobname%", one.getJobDisplayName()), one.getName(), "jobs editjobs list " + one.getName()); - rm.show(sender); - } + for (Job one : Jobs.getJobs()) { + RawMessage rm = new RawMessage(); + rm.addText(Jobs.getLanguage().getMessage("command.editjobs.help.list.jobs", "%jobname%", one.getDisplayName())) + .addHover(one.getName()) + .addCommand("jobs editjobs list " + one.getName()); + rm.show(sender); + } - Util.getJobsEditorMap().remove(player.getUniqueId()); - return true; - } + Util.getJobsEditorMap().remove(player.getUniqueId()); + return true; + } - if (args.length == 2) { - Job job = Jobs.getJob(args[1]); - if (job == null) - return false; + if (args.length == 2) { + Job job = Jobs.getJob(args[1]); + if (job == null) + return false; - showPath(player, job, null, null); + showPath(player, job, null, null); - for (ActionType oneI : ActionType.values()) { - List action = job.getJobInfo(oneI); - if (action == null || action.isEmpty()) - continue; + for (ActionType oneI : ActionType.values()) { + List action = job.getJobInfo(oneI); + if (action == null || action.isEmpty()) + continue; - RawMessage rm = new RawMessage(); - rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.list.actions", "%actionname%", oneI.getName()), oneI.getName(), "jobs editjobs list " + job.getName() + " " + oneI.getName() - + " 1"); - rm.show(sender); - } + RawMessage rm = new RawMessage(); + rm.addText(Jobs.getLanguage().getMessage("command.editjobs.help.list.actions", "%actionname%", oneI.getName())) + .addHover(oneI.getName()) + .addCommand("jobs editjobs list " + job.getName() + " " + oneI.getName() + " 1"); + rm.show(sender); + } - Util.getJobsEditorMap().remove(player.getUniqueId()); - return true; - } + Util.getJobsEditorMap().remove(player.getUniqueId()); + return true; + } - if (args.length == 4) { - Integer page = null; - try { - page = Integer.parseInt(args[3]); - } catch (NumberFormatException e) { - } + if (args.length == 4) { + Integer page = null; + try { + page = Integer.parseInt(args[3]); + } catch (NumberFormatException e) { + } - if (page != null) { - Job job = Jobs.getJob(args[1]); - if (job == null) - return false; + if (page != null) { + Job job = Jobs.getJob(args[1]); + if (job == null) + return false; - ActionType actionT = ActionType.getByName(args[2]); - if (actionT == null) - return false; + ActionType actionT = ActionType.getByName(args[2]); + if (actionT == null) + return false; - List action = job.getJobInfo(actionT); - if (action == null || action.isEmpty()) - return false; + List action = job.getJobInfo(actionT); + if (action == null || action.isEmpty()) + return false; - showPath(player, job, actionT, null); + showPath(player, job, actionT, null); - PageInfo pi = new PageInfo(15, action.size(), page); + PageInfo pi = new PageInfo(15, action.size(), page); - for (JobInfo one : action) { - if (!pi.isEntryOk()) - continue; + for (JobInfo one : action) { + if (!pi.isEntryOk()) + continue; - String materialName = one.getRealisticName(); + String materialName = one.getRealisticName(); - RawMessage rm = new RawMessage(); - rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.list.material", "%materialname%", materialName), one.getName(), "jobs editjobs list " + job.getName() + " " + actionT - .getName() + " " + one.getName()); - rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.list.materialRemove"), "&cRemove", "jobs editjobs remove " + job.getName() + " " + actionT.getName() + " " + one - .getName()); - rm.show(sender); - } + RawMessage rm = new RawMessage(); + rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.list.material", "%materialname%", materialName), one.getName(), "jobs editjobs list " + job.getName() + " " + actionT + .getName() + " " + one.getName()); + rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.list.materialRemove"), "&cRemove", "jobs editjobs remove " + job.getName() + " " + actionT.getName() + " " + one + .getName()); + rm.show(sender); + } - RawMessage rm = new RawMessage(); - rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.list.materialAdd"), "&eAdd new", "jobs editjobs add " + job.getName() + " " + actionT.getName()); - rm.show(sender); - Util.getJobsEditorMap().remove(player.getUniqueId()); + RawMessage rm = new RawMessage(); + rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.list.materialAdd"), "&eAdd new", "jobs editjobs add " + job.getName() + " " + actionT.getName()); + rm.show(sender); + Util.getJobsEditorMap().remove(player.getUniqueId()); pi.autoPagination(sender, "jobs editjobs list " + job.getName() + " " + actionT.getName()); - return true; - } + return true; + } - Job job = Jobs.getJob(args[1]); - if (job == null) - return false; + Job job = Jobs.getJob(args[1]); + if (job == null) + return false; - ActionType actionT = ActionType.getByName(args[2]); - if (actionT == null) - return false; + ActionType actionT = ActionType.getByName(args[2]); + if (actionT == null) + return false; - List action = job.getJobInfo(actionT); - if (action == null || action.isEmpty()) - return false; + List action = job.getJobInfo(actionT); + if (action == null || action.isEmpty()) + return false; - JobInfo jInfo = null; - for (JobInfo one : action) { - if (one.getName().equalsIgnoreCase(args[3])) { - jInfo = one; - break; - } - } + JobInfo jInfo = null; + for (JobInfo one : action) { + if (one.getName().equalsIgnoreCase(args[3])) { + jInfo = one; + break; + } + } - if (jInfo == null) - return false; + if (jInfo == null) + return false; - showPath(player, job, actionT, jInfo); + showPath(player, job, actionT, jInfo); - RawMessage rm = new RawMessage(); - rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.list.money", "%amount%", jInfo.getBaseIncome()), "&e" + jInfo.getBaseIncome(), "jobs editjobs modify " + job.getName() + " " - + actionT.getName() + " " + jInfo.getName() + " money "); - rm.show(sender); + RawMessage rm = new RawMessage(); + rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.list.money", "%amount%", jInfo.getBaseIncome()), "&e" + jInfo.getBaseIncome(), "jobs editjobs modify " + job.getName() + " " + + actionT.getName() + " " + jInfo.getName() + " money "); + rm.show(sender); - rm = new RawMessage(); - rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.list.points", "%amount%", jInfo.getBasePoints()), "&e" + jInfo.getBasePoints(), "jobs editjobs modify " + job.getName() + " " - + actionT.getName() + " " + jInfo.getName() - + " points "); - rm.show(sender); + rm = new RawMessage(); + rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.list.points", "%amount%", jInfo.getBasePoints()), "&e" + jInfo.getBasePoints(), "jobs editjobs modify " + job.getName() + " " + + actionT.getName() + " " + jInfo.getName() + + " points "); + rm.show(sender); - rm = new RawMessage(); - rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.list.exp", "%amount%", jInfo.getBaseXp()), "&e" + jInfo.getBaseXp(), "jobs editjobs modify " + job.getName() + " " + actionT - .getName() + " " + jInfo.getName() + " exp "); - rm.show(sender); - Util.getJobsEditorMap().remove(player.getUniqueId()); - return true; - } - break; - case "modify": - if (args.length == 5) { - Job job = Jobs.getJob(args[1]); - if (job == null) - return false; + rm = new RawMessage(); + rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.list.exp", "%amount%", jInfo.getBaseXp()), "&e" + jInfo.getBaseXp(), "jobs editjobs modify " + job.getName() + " " + actionT + .getName() + " " + jInfo.getName() + " exp "); + rm.show(sender); + Util.getJobsEditorMap().remove(player.getUniqueId()); + return true; + } + break; + case "modify": + if (args.length == 5) { + Job job = Jobs.getJob(args[1]); + if (job == null) + return false; - ActionType actionT = ActionType.getByName(args[2]); - if (actionT == null) - return false; + ActionType actionT = ActionType.getByName(args[2]); + if (actionT == null) + return false; - List action = job.getJobInfo(actionT); - if (action == null || action.isEmpty()) - return false; + List action = job.getJobInfo(actionT); + if (action == null || action.isEmpty()) + return false; - JobInfo jInfo = null; - for (JobInfo one : action) { - if (one.getName().equalsIgnoreCase(args[3])) { - jInfo = one; - break; - } - } + JobInfo jInfo = null; + for (JobInfo one : action) { + if (one.getName().equalsIgnoreCase(args[3])) { + jInfo = one; + break; + } + } - if (jInfo == null) - return false; + if (jInfo == null) + return false; - CurrencyType type = CurrencyType.getByName(args[4]); - if (type == null) - return false; + CurrencyType type = CurrencyType.getByName(args[4]); + if (type == null) + return false; - Util.getJobsEditorMap().put(player.getUniqueId(), "jobs editjobs modify " + job.getName() + " " + actionT.getName() + " " + jInfo.getName() + " " + type.getName() + " "); - sender.sendMessage(Jobs.getLanguage().getMessage("command.editjobs.help.modify.newValue")); - return true; - } + Util.getJobsEditorMap().put(player.getUniqueId(), "jobs editjobs modify " + job.getName() + " " + actionT.getName() + " " + jInfo.getName() + " " + type.getName() + " "); + sender.sendMessage(Jobs.getLanguage().getMessage("command.editjobs.help.modify.newValue")); + return true; + } - if (args.length == 6) { - Job job = Jobs.getJob(args[1]); - if (job == null) - return false; + if (args.length == 6) { + Job job = Jobs.getJob(args[1]); + if (job == null) + return false; - ActionType actionT = ActionType.getByName(args[2]); - if (actionT == null) - return false; + ActionType actionT = ActionType.getByName(args[2]); + if (actionT == null) + return false; - List action = job.getJobInfo(actionT); - if (action == null || action.isEmpty()) - return false; + List action = job.getJobInfo(actionT); + if (action == null || action.isEmpty()) + return false; - JobInfo jInfo = null; - for (JobInfo one : action) { - if (one.getName().equalsIgnoreCase(args[3])) { - jInfo = one; - break; - } - } + JobInfo jInfo = null; + for (JobInfo one : action) { + if (one.getName().equalsIgnoreCase(args[3])) { + jInfo = one; + break; + } + } - if (jInfo == null) - return false; + if (jInfo == null) + return false; - CurrencyType type = CurrencyType.getByName(args[4]); - if (type == null) - return false; + CurrencyType type = CurrencyType.getByName(args[4]); + if (type == null) + return false; - Double value = null; - try { - value = Double.parseDouble(args[5]); - } catch (Exception e) { - return false; - } + Double value = null; + try { + value = Double.parseDouble(args[5]); + } catch (Exception e) { + return false; + } - String sType = null; - switch (type) { - case EXP: - sType = "experience"; - jInfo.setBaseXp(value); - break; - case MONEY: - sType = "income"; - jInfo.setBaseIncome(value); - break; - case POINTS: - sType = "points"; - jInfo.setBasePoints(value); - break; - default: - break; - } - - Jobs.getConfigManager().changeJobsSettings(args[1], jInfo.getConfigPath() + "/" + sType, value); - player.performCommand("jobs editjobs list " + job.getName() + " " + actionT.getName() + " " + jInfo.getName()); - Util.getJobsEditorMap().remove(player.getUniqueId()); - return true; - } + String sType = null; + switch (type) { + case EXP: + sType = "experience"; + jInfo.setBaseXp(value); + break; + case MONEY: + sType = "income"; + jInfo.setBaseIncome(value); + break; + case POINTS: + sType = "points"; + jInfo.setBasePoints(value); + break; + default: + break; + } - break; - case "remove": - // remove miner break stone:1 + Jobs.getConfigManager().changeJobsSettings(args[1], jInfo.getConfigPath() + "/" + sType, value); + player.performCommand("jobs editjobs list " + job.getName() + " " + actionT.getName() + " " + jInfo.getName()); + Util.getJobsEditorMap().remove(player.getUniqueId()); + return true; + } - if (args.length == 4) { - Job job = Jobs.getJob(args[1]); - if (job == null) - return false; + break; + case "remove": + // remove miner break stone:1 - ActionType actionT = ActionType.getByName(args[2]); - if (actionT == null) - return false; + if (args.length == 4) { + Job job = Jobs.getJob(args[1]); + if (job == null) + return false; - List action = job.getJobInfo(actionT); - if (action == null || action.isEmpty()) - return false; + ActionType actionT = ActionType.getByName(args[2]); + if (actionT == null) + return false; - JobInfo jInfo = null; - for (JobInfo info : action) { - if (!info.getName().equalsIgnoreCase(args[3])) - continue; - jInfo = info; - break; - } + List action = job.getJobInfo(actionT); + if (action == null || action.isEmpty()) + return false; - if (jInfo == null) { - return true; - } + JobInfo jInfo = null; + for (JobInfo info : action) { + if (!info.getName().equalsIgnoreCase(args[3])) + continue; + jInfo = info; + break; + } - action.remove(jInfo); - Jobs.getConfigManager().changeJobsSettings(args[1], jInfo.getConfigPath(), null); - player.performCommand("jobs editjobs list " + job.getName() + " " + actionT.getName() + " 1"); - Util.getJobsEditorMap().remove(player.getUniqueId()); - return true; - } - break; - case "add": - // add miner break stone:1 + if (jInfo == null) { + return true; + } - if (args.length == 3) { - Job job = Jobs.getJob(args[1]); - if (job == null) - return false; + action.remove(jInfo); + Jobs.getConfigManager().changeJobsSettings(args[1], jInfo.getConfigPath(), null); + player.performCommand("jobs editjobs list " + job.getName() + " " + actionT.getName() + " 1"); + Util.getJobsEditorMap().remove(player.getUniqueId()); + return true; + } + break; + case "add": + // add miner break stone:1 - ActionType actionT = ActionType.getByName(args[2]); - if (actionT == null) - return false; + if (args.length == 3) { + Job job = Jobs.getJob(args[1]); + if (job == null) + return false; - List action = job.getJobInfo(actionT); - if (action == null || action.isEmpty()) - return false; + ActionType actionT = ActionType.getByName(args[2]); + if (actionT == null) + return false; - RawMessage rm = new RawMessage(); - rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.modify.enter")); - rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.modify.hand"), Jobs.getLanguage().getMessage("command.editjobs.help.modify.handHover"), "jobs editjobs add " + job.getName() - + " " + actionT.getName() + " hand"); - rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.modify.or")); - rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.modify.look"), Jobs.getLanguage().getMessage("command.editjobs.help.modify.lookHover"), "jobs editjobs add " + job.getName() - + " " + actionT.getName() + " looking"); - rm.show(sender); + List action = job.getJobInfo(actionT); + if (action == null || action.isEmpty()) + return false; - Util.getJobsEditorMap().put(player.getUniqueId(), "jobs editjobs add " + job.getName() + " " + actionT.getName() + " "); - return true; - } + RawMessage rm = new RawMessage(); + rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.modify.enter")); + rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.modify.hand"), Jobs.getLanguage().getMessage("command.editjobs.help.modify.handHover"), "jobs editjobs add " + job.getName() + + " " + actionT.getName() + " hand"); + rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.modify.or")); + rm.add(Jobs.getLanguage().getMessage("command.editjobs.help.modify.look"), Jobs.getLanguage().getMessage("command.editjobs.help.modify.lookHover"), "jobs editjobs add " + job.getName() + + " " + actionT.getName() + " looking"); + rm.show(sender); - if (args.length == 4) { - Job job = Jobs.getJob(args[1]); - if (job == null) - return false; + Util.getJobsEditorMap().put(player.getUniqueId(), "jobs editjobs add " + job.getName() + " " + actionT.getName() + " "); + return true; + } - ActionType actionT = ActionType.getByName(args[2]); - if (actionT == null) - return false; + if (args.length == 4) { + Job job = Jobs.getJob(args[1]); + if (job == null) + return false; - List action = job.getJobInfo(actionT); - if (action == null || action.isEmpty()) - return false; + ActionType actionT = ActionType.getByName(args[2]); + if (actionT == null) + return false; - String key = args[3]; - switch (args[3]) { - case "hand": - ItemStack item = CMIItemStack.getItemInMainHand(player); - key = CMIMaterial.get(item).getName() + (Version.isCurrentEqualOrHigher(Version.v1_13_R1) ? "" : "-" + item.getData().getData()); - break; - case "offhand": - item = CMIItemStack.getItemInOffHand(player); - key = CMIMaterial.get(item).getName() + (Version.isCurrentEqualOrHigher(Version.v1_13_R1) ? "" : "-" + item.getData().getData()); - break; - case "looking": - case "lookingat": - Block block = Util.getTargetBlock(player, 30); - key = CMIMaterial.get(block).getName() + (Version.isCurrentEqualOrHigher(Version.v1_13_R1) ? "" : "-" + block.getData()); - break; - default: - break; - } + List action = job.getJobInfo(actionT); + if (action == null || action.isEmpty()) + return false; - KeyValues keyValue = Jobs.getConfigManager().getKeyValue(key, actionT, job.getName()); - if (keyValue == null) - return false; + String key = args[3]; + switch (args[3]) { + case "hand": + ItemStack item = CMIItemStack.getItemInMainHand(player); + key = CMIMaterial.get(item).getName() + (Version.isCurrentEqualOrHigher(Version.v1_13_R1) ? "" : "-" + item.getData().getData()); + break; + case "offhand": + item = CMIItemStack.getItemInOffHand(player); + key = CMIMaterial.get(item).getName() + (Version.isCurrentEqualOrHigher(Version.v1_13_R1) ? "" : "-" + item.getData().getData()); + break; + case "looking": + case "lookingat": + Block block = Util.getTargetBlock(player, 30); + key = CMIMaterial.get(block).getName() + (Version.isCurrentEqualOrHigher(Version.v1_13_R1) ? "" : "-" + block.getData()); + break; + default: + break; + } - String type = keyValue.getType(), - subType = keyValue.getSubType(), - meta = keyValue.getMeta(); - int id = keyValue.getId(); + KeyValues keyValue = Jobs.getConfigManager().getKeyValue(key, actionT, job.getName()); + if (keyValue == null) + return false; - double income = 0D, - points = 0D, - experience = 0D; + String type = keyValue.getType(), + subType = keyValue.getSubType(), + meta = keyValue.getMeta(); + int id = keyValue.getId(); - int fromlevel = 1; - int untilLevel = -1; + double income = 0D, + points = 0D, + experience = 0D; - JobInfo jInfo = new JobInfo(actionT, id, meta, type + subType, income, job.getMoneyEquation(), experience, job.getXpEquation(), job.getPointsEquation(), points, fromlevel, - untilLevel, job.getName() + "/" + actionT.getName() + "/" + (type + subType).replace(":", "-")); + int fromlevel = 1; + int untilLevel = -1; - for (JobInfo info : job.getJobInfo(actionT)) { - if (info.getName().equalsIgnoreCase(jInfo.getName())) { - player.performCommand("jobs editjobs list " + job.getName() + " " + actionT.getName() + " " + jInfo.getName()); - return true; - } - } + JobInfo jInfo = new JobInfo(actionT, id, meta, type + subType, income, job.getMoneyEquation(), experience, job.getXpEquation(), job.getPointsEquation(), points, fromlevel, + untilLevel, job.getName() + "/" + actionT.getName() + "/" + (type + subType).replace(":", "-")); - action.add(jInfo); - player.performCommand("jobs editjobs list " + job.getName() + " " + actionT.getName() + " " + jInfo.getName()); + for (JobInfo info : job.getJobInfo(actionT)) { + if (info.getName().equalsIgnoreCase(jInfo.getName())) { + player.performCommand("jobs editjobs list " + job.getName() + " " + actionT.getName() + " " + jInfo.getName()); + return true; + } + } - Jobs.getConfigManager().changeJobsSettings(args[1], jInfo.getConfigPath() + "/income", 0); - Jobs.getConfigManager().changeJobsSettings(args[1], jInfo.getConfigPath() + "/points", 0); - Jobs.getConfigManager().changeJobsSettings(args[1], jInfo.getConfigPath() + "/experience", 0); + action.add(jInfo); + player.performCommand("jobs editjobs list " + job.getName() + " " + actionT.getName() + " " + jInfo.getName()); - Util.getJobsEditorMap().remove(player.getUniqueId()); - return true; - } + Jobs.getConfigManager().changeJobsSettings(args[1], jInfo.getConfigPath() + "/income", 0); + Jobs.getConfigManager().changeJobsSettings(args[1], jInfo.getConfigPath() + "/points", 0); + Jobs.getConfigManager().changeJobsSettings(args[1], jInfo.getConfigPath() + "/experience", 0); - break; - default: - break; - } + Util.getJobsEditorMap().remove(player.getUniqueId()); + return true; + } - return true; + break; + default: + break; + } + + return true; } private static void showPath(Player player, Job job, ActionType action, JobInfo jInfo) { - RawMessage rm = new RawMessage(); - rm.addText(Jobs.getLanguage().getMessage("command.editjobs.help.list.job")).addHover("&eJob list") - .addCommand("jobs editjobs").show(player); + RawMessage rm = new RawMessage(); + rm.addText(Jobs.getLanguage().getMessage("command.editjobs.help.list.job")).addHover("&eJob list") + .addCommand("jobs editjobs").show(player); - if (job != null) { - rm = new RawMessage(); - rm.addText(Jobs.getLanguage().getMessage("command.editjobs.help.list.jobs", "%jobname%", job.getDisplayName())) - .addHover(job.getName()).addCommand("jobs editjobs list " + job.getName()); - rm.show(player); - } + if (job != null) { + rm = new RawMessage(); + rm.addText(Jobs.getLanguage().getMessage("command.editjobs.help.list.jobs", "%jobname%", job.getDisplayName())) + .addHover(job.getName()).addCommand("jobs editjobs list " + job.getName()); + rm.show(player); + } - if (action != null && job != null) { - rm = new RawMessage(); + if (action != null && job != null) { + rm = new RawMessage(); - rm.addText(Jobs.getLanguage().getMessage("command.editjobs.help.list.actions", "%actionname%", action.getName())) - .addHover(action.getName()).addCommand("jobs editjobs list " + job.getName() + " " + action.getName() + " 1") - .show(player); - } + rm.addText(Jobs.getLanguage().getMessage("command.editjobs.help.list.actions", "%actionname%", action.getName())) + .addHover(action.getName()).addCommand("jobs editjobs list " + job.getName() + " " + action.getName() + " 1") + .show(player); + } - if (action != null && job != null && jInfo != null) { - rm = new RawMessage(); + if (action != null && job != null && jInfo != null) { + rm = new RawMessage(); - String materialName = jInfo.getName().toLowerCase().replace('_', ' '); - materialName = Character.toUpperCase(materialName.charAt(0)) + materialName.substring(1); - materialName = Jobs.getNameTranslatorManager().translate(materialName, jInfo); - materialName = CMIChatColor.translate(materialName); + String materialName = jInfo.getName().toLowerCase().replace('_', ' '); + materialName = Character.toUpperCase(materialName.charAt(0)) + materialName.substring(1); + materialName = Jobs.getNameTranslatorManager().translate(materialName, jInfo); + materialName = CMIChatColor.translate(materialName); - rm.addText(Jobs.getLanguage().getMessage("command.editjobs.help.list.material", "%materialname%", jInfo.getName())) - .addHover(jInfo.getName()).addCommand("jobs editjobs list " + job.getName() + " " + action.getName() - + " " + materialName).show(player); - } + rm.addText(Jobs.getLanguage().getMessage("command.editjobs.help.list.material", "%materialname%", jInfo.getName())) + .addHover(jInfo.getName()).addCommand("jobs editjobs list " + job.getName() + " " + action.getName() + + " " + materialName).show(player); + } } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/editpoints.java b/src/main/java/com/gamingmesh/jobs/commands/list/editpoints.java index e2ad2485..36ca7a53 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/editpoints.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/editpoints.java @@ -5,6 +5,7 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.container.PlayerPoints; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; @@ -13,55 +14,54 @@ public class editpoints implements Cmd { @Override public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { - if (args.length != 3) { - Jobs.getCommandManager().sendUsage(sender, "editpoints"); - return true; - } + if (args.length != 3) { + return false; + } - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[1]); - if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args[1])); - return true; - } + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[1]); + if (jPlayer == null) { + Language.sendMessage(sender, "general.error.noinfoByPlayer", "%playername%", args[1]); + return true; + } - double amount = 0; - try { - amount = Double.parseDouble(args[2]); - } catch (NumberFormatException e) { - CMIMessages.sendMessage(sender, LC.info_UseInteger); - return true; - } + double amount = 0; + try { + amount = Double.parseDouble(args[2]); + } catch (NumberFormatException e) { + CMIMessages.sendMessage(sender, LC.info_UseInteger); + return false; + } - PlayerPoints pointInfo = jPlayer.getPointsData(); - switch (args[0].toLowerCase()) { - case "take": - pointInfo.takePoints(amount); - sender.sendMessage(Jobs.getLanguage().getMessage("command.editpoints.output.take", - "%playername%", jPlayer.getName(), - "%playerdisplayname%", jPlayer.getDisplayName(), - "%amount%", amount, - "%total%", (int) (pointInfo.getCurrentPoints() * 100) / 100D)); - break; - case "add": - pointInfo.addPoints(amount); - sender.sendMessage(Jobs.getLanguage().getMessage("command.editpoints.output.add", - "%playername%", jPlayer.getName(), - "%playerdisplayname%", jPlayer.getDisplayName(), - "%amount%", amount, - "%total%", (int) (pointInfo.getCurrentPoints() * 100) / 100D)); - break; - case "set": - pointInfo.setPoints(amount); - sender.sendMessage(Jobs.getLanguage().getMessage("command.editpoints.output.set", - "%playername%", jPlayer.getName(), - "%playerdisplayname%", jPlayer.getDisplayName(), - "%amount%", amount)); - break; - default: - break; - } + PlayerPoints pointInfo = jPlayer.getPointsData(); + switch (args[0].toLowerCase()) { + case "take": + pointInfo.takePoints(amount); + Language.sendMessage(sender, "command.editpoints.output.take", + "%playername%", jPlayer.getName(), + "%playerdisplayname%", jPlayer.getDisplayName(), + "%amount%", amount, + "%total%", (int) (pointInfo.getCurrentPoints() * 100) / 100D); + break; + case "add": + pointInfo.addPoints(amount); + Language.sendMessage(sender, "command.editpoints.output.add", + "%playername%", jPlayer.getName(), + "%playerdisplayname%", jPlayer.getDisplayName(), + "%amount%", amount, + "%total%", (int) (pointInfo.getCurrentPoints() * 100) / 100D); + break; + case "set": + pointInfo.setPoints(amount); + Language.sendMessage(sender, "command.editpoints.output.set", + "%playername%", jPlayer.getName(), + "%playerdisplayname%", jPlayer.getDisplayName(), + "%amount%", amount); + break; + default: + break; + } - Jobs.getJobsDAO().savePoints(jPlayer); - return true; + Jobs.getJobsDAO().savePoints(jPlayer); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/editquests.java b/src/main/java/com/gamingmesh/jobs/commands/list/editquests.java index 21f6f007..d98ce1a4 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/editquests.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/editquests.java @@ -28,7 +28,6 @@ import net.Zrips.CMILib.Container.CMIText; import net.Zrips.CMILib.Container.PageInfo; import net.Zrips.CMILib.FileHandler.ConfigReader; import net.Zrips.CMILib.Locale.LC; -import net.Zrips.CMILib.Logs.CMIDebug; import net.Zrips.CMILib.RawMessages.RawMessage; import net.Zrips.CMILib.RawMessages.RawMessageCommand; @@ -56,6 +55,7 @@ public class editquests implements Cmd { Action action = null; + // Only informing here and not canceling command if (!Jobs.getGCManager().DailyQuestsEnabled) { LC.info_FeatureNotEnabled.sendMessage(sender); } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/employ.java b/src/main/java/com/gamingmesh/jobs/commands/list/employ.java index ef623b12..3095820f 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/employ.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/employ.java @@ -7,52 +7,50 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; public class employ implements Cmd { @Override public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { - if (args.length < 2) { - Jobs.getCommandManager().sendUsage(sender, "employ"); - return true; - } + if (args.length < 2) { + return false; + } - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args[0])); - return true; - } + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + if (jPlayer == null) { + Language.sendMessage(sender, "general.error.noinfoByPlayer", "%playername%", args[0]); + return true; + } - Job job = Jobs.getJob(args[1]); - if (job == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } + Job job = Jobs.getJob(args[1]); + if (job == null) { + Language.sendMessage(sender, "general.error.job"); + return true; + } - if (jPlayer.isInJob(job)) { - // already in job message - sender.sendMessage(Jobs.getLanguage().getMessage("command.employ.error.alreadyin", "%jobname%", job.getDisplayName())); - return true; - } + if (jPlayer.isInJob(job)) { + // already in job message + Language.sendMessage(sender, "command.employ.error.alreadyin", "%jobname%", job.getDisplayName()); + return true; + } - if (job.getMaxSlots() != null && Jobs.getUsedSlots(job) >= job.getMaxSlots()) { - String message = Jobs.getLanguage().getMessage("command.employ.error.fullslots"); - message = message.replace("%jobname%", job.getDisplayName()); - sender.sendMessage(message); - return true; - } + if (job.getMaxSlots() != null && Jobs.getUsedSlots(job) >= job.getMaxSlots()) { + Language.sendMessage(sender, "command.employ.error.fullslots", "%jobname%", job.getDisplayName()); + return true; + } - try { - // check if player already has the job - Jobs.getPlayerManager().joinJob(jPlayer, job); - Player player = jPlayer.getPlayer(); - if (player != null) - player.sendMessage(Jobs.getLanguage().getMessage("command.employ.output.target", "%jobname%", job.getDisplayName())); + try { + // check if player already has the job + Jobs.getPlayerManager().joinJob(jPlayer, job); + Player player = jPlayer.getPlayer(); + if (player != null) + Language.sendMessage(player, "command.employ.output.target", "%jobname%", job.getDisplayName()); - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.success")); - } catch (Throwable e) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.error")); - } - return true; + Language.sendMessage(sender, "general.admin.success"); + } catch (Throwable e) { + Language.sendMessage(sender, "general.admin.error"); + } + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/entitylist.java b/src/main/java/com/gamingmesh/jobs/commands/list/entitylist.java index ec5a3dcb..a9ce5048 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/entitylist.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/entitylist.java @@ -6,43 +6,41 @@ import org.bukkit.entity.EntityType; import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; -import net.Zrips.CMILib.Colors.CMIChatColor; +import net.Zrips.CMILib.Container.CMIText; +import net.Zrips.CMILib.Locale.LC; +import net.Zrips.CMILib.Messages.CMIMessages; public class entitylist implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (args.length != 0) { - Jobs.getCommandManager().sendUsage(sender, "entitylist"); - return true; - } + + StringBuilder msg = new StringBuilder(); + String c1 = "&e"; + String c2 = "&6"; - String msg = "", - c1 = "&e", - c2 = "&6"; + int i = 0; + for (EntityType type : EntityType.values()) { + if (!type.isAlive() || !type.isSpawnable()) + continue; - int i = 0; - for (EntityType type : EntityType.values()) { - if (!type.isAlive() || !type.isSpawnable()) - continue; + i++; - i++; + if (!msg.isEmpty()) + msg.append(LC.info_ListSpliter.getLocale()); - if (!msg.isEmpty()) - msg += ", "; + if (i > 1) { + msg.append(c1); + i = 0; + } else { + msg.append(c2); + } - if (i > 1) { - msg += c1; - i = 0; - } else { - msg += c2; - } + msg.append(CMIText.firstToUpperCase(type.name())); + } - msg += type.name().toLowerCase(); - } - - sender.sendMessage(CMIChatColor.translate(msg)); - return true; + CMIMessages.sendMessage(sender, msg.toString()); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/exp.java b/src/main/java/com/gamingmesh/jobs/commands/list/exp.java index 0205b987..e6c3cc92 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/exp.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/exp.java @@ -24,8 +24,7 @@ public class exp implements Cmd { public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { if (args.length < 4) { - Jobs.getCommandManager().sendUsage(sender, "exp"); - return true; + return false; } boolean silent = false; @@ -120,20 +119,20 @@ public class exp implements Cmd { Player player = jPlayer.getPlayer(); if (player == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.give.output.notonline")); + Language.sendMessage(sender, "general.give.output.notonline"); return true; } if (!silent) - player.sendMessage(Jobs.getLanguage().getMessage("command.exp.output.target", "%jobname%", job.getDisplayName(), "%level%", prog.getLevelFormatted(), "%exp%", prog - .getExperience())); + Language.sendMessage(player, "command.exp.output.target", "%jobname%", job.getDisplayName(), "%level%", prog.getLevelFormatted(), "%exp%", prog + .getExperience()); if (!silentAdmin) - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.success")); + Language.sendMessage(sender, "general.admin.success"); } catch (Exception e) { if (!silentAdmin) - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.error")); + Language.sendMessage(sender, "general.admin.error"); e.printStackTrace(); } return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/explored.java b/src/main/java/com/gamingmesh/jobs/commands/list/explored.java index 0d609391..aaa046aa 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/explored.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/explored.java @@ -10,51 +10,56 @@ import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.ExploreChunk; import com.gamingmesh.jobs.container.ExploreRegion; import com.gamingmesh.jobs.container.PlayerInfo; +import com.gamingmesh.jobs.i18n.Language; + +import net.Zrips.CMILib.Locale.LC; public class explored implements Cmd { @Override public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { - if (!(sender instanceof Player)) - return false; + if (!(sender instanceof Player)) { + LC.info_Ingame.sendMessage(sender); + return null; + } - Player player = (Player) sender; - Map exploreRegion = Jobs.getExploreManager().getWorlds().get(player.getWorld().getName()); + Player player = (Player) sender; + Map exploreRegion = Jobs.getExploreManager().getWorlds().get(player.getWorld().getName()); - if (exploreRegion == null) { - player.sendMessage(Jobs.getLanguage().getMessage("command.explored.error.noexplore")); - return true; - } + if (exploreRegion == null) { + Language.sendMessage(sender, "command.explored.error.noexplore"); + return true; + } - int RegionX = (int) Math.floor(player.getLocation().getChunk().getX() / 32D); - int RegionZ = (int) Math.floor(player.getLocation().getChunk().getZ() / 32D); - ExploreRegion region = exploreRegion.get(RegionX + ":" + RegionZ); - if (region == null) { - player.sendMessage(Jobs.getLanguage().getMessage("command.explored.error.noexplore")); - return true; - } + int RegionX = (int) Math.floor(player.getLocation().getChunk().getX() / 32D); + int RegionZ = (int) Math.floor(player.getLocation().getChunk().getZ() / 32D); + ExploreRegion region = exploreRegion.get(RegionX + ":" + RegionZ); + if (region == null) { + Language.sendMessage(sender, "command.explored.error.noexplore"); + return true; + } - ExploreChunk chunk = region.getChunk(player.getLocation().getChunk()); + ExploreChunk chunk = region.getChunk(player.getLocation().getChunk()); - if (chunk == null) { - player.sendMessage(Jobs.getLanguage().getMessage("command.explored.error.noexplore")); - return true; - } + if (chunk == null) { + Language.sendMessage(sender, "command.explored.error.noexplore"); + return true; + } - if (Jobs.getGCManager().ExploreCompact && chunk.isFullyExplored()) { - player.sendMessage(Jobs.getLanguage().getMessage("command.explored.fullExplore")); - return true; - } + if (Jobs.getGCManager().ExploreCompact && chunk.isFullyExplored()) { + Language.sendMessage(sender, "command.explored.fullExplore"); + return true; + } - java.util.List players = chunk.getPlayers(); + java.util.List players = chunk.getPlayers(); - for (int i = 0; i < players.size(); i++) { - PlayerInfo ji = Jobs.getPlayerManager().getPlayerInfo(players.get(i)); - if (ji != null) - player.sendMessage(Jobs.getLanguage().getMessage("command.explored.list", "%place%", i + 1, "%playername%", ji.getName())); - } - player.sendMessage(Jobs.getLanguage().getMessage("general.info.separator")); + for (int i = 0; i < players.size(); i++) { + PlayerInfo ji = Jobs.getPlayerManager().getPlayerInfo(players.get(i)); + if (ji != null) + Language.sendMessage(sender, "command.explored.list", "%place%", i + 1, "%playername%", ji.getName()); + } + Language.sendMessage(sender, "general.info.separator"); - return true; + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/fire.java b/src/main/java/com/gamingmesh/jobs/commands/list/fire.java index fceb6594..e211ef81 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/fire.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/fire.java @@ -7,41 +7,41 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; public class fire implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (args.length < 2) { - Jobs.getCommandManager().sendUsage(sender, "fire"); - return true; - } + if (args.length < 2) { + return false; + } - Job job = Jobs.getJob(args[1]); - if (job == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } + Job job = Jobs.getJob(args[1]); + if (job == null) { + Language.sendMessage(sender, "general.error.job"); + return true; + } - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args[0])); - return true; - } + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + if (jPlayer == null) { + Language.sendMessage(sender, "general.error.noinfoByPlayer", "%playername%", args[0]); + return true; + } - if (!jPlayer.isInJob(job)) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.fire.error.nojob", "%jobname%", job.getDisplayName())); - return true; - } + if (!jPlayer.isInJob(job)) { + Language.sendMessage(sender, "command.fire.error.nojob", "%jobname%", job.getDisplayName()); + return true; + } - if (Jobs.getPlayerManager().leaveJob(jPlayer, job)) { - Player player = jPlayer.getPlayer(); - if (player != null) - player.sendMessage(Jobs.getLanguage().getMessage("command.fire.output.target", "%jobname%", job.getDisplayName())); + if (Jobs.getPlayerManager().leaveJob(jPlayer, job)) { + Player player = jPlayer.getPlayer(); + if (player != null) + Language.sendMessage(player, "command.fire.output.target", "%jobname%", job.getDisplayName()); - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.success")); - } + Language.sendMessage(sender, "general.admin.success"); + } - return true; + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/fireall.java b/src/main/java/com/gamingmesh/jobs/commands/list/fireall.java index 6ff808b5..26935030 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/fireall.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/fireall.java @@ -8,6 +8,7 @@ import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.JobProgression; import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.dao.JobsDAO.DBTables; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; @@ -16,49 +17,48 @@ public class fireall implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (args.length < 1) { - Jobs.getCommandManager().sendUsage(sender, "fireall"); - return true; - } + if (args.length < 1) { + return false; + } - if (args[0].equalsIgnoreCase("all")) { - if (sender instanceof Player) { - CMIMessages.sendMessage(sender, LC.info_FromConsole); - return true; - } + if (args[0].equalsIgnoreCase("all")) { + if (sender instanceof Player) { + CMIMessages.sendMessage(sender, LC.info_FromConsole); + return true; + } - Jobs.getDBManager().getDB().truncate(DBTables.JobsTable.getTableName()); + Jobs.getDBManager().getDB().truncate(DBTables.JobsTable.getTableName()); - for (JobsPlayer one : Jobs.getPlayerManager().getPlayersCache().values()) { - for (JobProgression job : one.getJobProgression()) { - Jobs.getJobsDAO().recordToArchive(one, job.getJob()); - } - one.leaveAllJobs(); - // No need to save as we are clearing database with more efficient method - one.setSaved(true); - } + for (JobsPlayer one : Jobs.getPlayerManager().getPlayersCache().values()) { + for (JobProgression job : one.getJobProgression()) { + Jobs.getJobsDAO().recordToArchive(one, job.getJob()); + } + one.leaveAllJobs(); + // No need to save as we are clearing database with more efficient method + one.setSaved(true); + } - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.success")); - return true; - } + Language.sendMessage(sender, "general.admin.success"); + return true; + } - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args[0])); - return true; - } + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + if (jPlayer == null) { + Language.sendMessage(sender, "general.error.noinfoByPlayer", "%playername%", args[0]); + return true; + } - if (jPlayer.progression.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.fireall.error.nojobs")); - return true; - } + if (jPlayer.progression.isEmpty()) { + Language.sendMessage(sender, "command.fireall.error.nojobs"); + return true; + } - Jobs.getPlayerManager().leaveAllJobs(jPlayer); - Player player = jPlayer.getPlayer(); - if (player != null) - player.sendMessage(Jobs.getLanguage().getMessage("command.fireall.output.target")); + Jobs.getPlayerManager().leaveAllJobs(jPlayer); + Player player = jPlayer.getPlayer(); + if (player != null) + Language.sendMessage(player, "command.fireall.output.target"); - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.success")); - return true; + Language.sendMessage(sender, "general.admin.success"); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/give.java b/src/main/java/com/gamingmesh/jobs/commands/list/give.java index 4e90ebec..a631bb71 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/give.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/give.java @@ -11,96 +11,98 @@ import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobItems; import com.gamingmesh.jobs.container.JobLimitedItems; +import com.gamingmesh.jobs.i18n.Language; import com.gamingmesh.jobs.stuff.GiveItem; public class give implements Cmd { private enum actions { - items, limiteditems; - public static actions getByname(String name) { - for (actions one : actions.values()) { - if (one.name().equalsIgnoreCase(name)) - return one; - } - return null; - } + items, limiteditems; + + public static actions getByname(String name) { + for (actions one : actions.values()) { + if (one.name().equalsIgnoreCase(name)) + return one; + } + return null; + } } @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - Player player = null; - Job job = null; - actions name = null; - String itemName = null; + Player player = null; + Job job = null; + actions name = null; + String itemName = null; - for (String one : args) { - if (player == null) { - player = Bukkit.getPlayer(one); - if (player != null) - continue; - } + for (String one : args) { + if (player == null) { + player = Bukkit.getPlayer(one); + if (player != null) + continue; + } - if (job == null) { - job = Jobs.getJob(one); - if (job != null) - continue; - } + if (job == null) { + job = Jobs.getJob(one); + if (job != null) + continue; + } - if (name == null) { - name = actions.getByname(one); - if (name != null) - continue; - } - itemName = one; - } + if (name == null) { + name = actions.getByname(one); + if (name != null) + continue; + } + itemName = one; + } - if (player == null && sender instanceof Player) - player = (Player) sender; + if (player == null && sender instanceof Player) + player = (Player) sender; - if (player == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.give.output.notonline")); - return true; - } + if (player == null) { + Language.sendMessage(sender, "command.give.output.notonline"); + return null; + } - if (name == null) - name = actions.items; + if (name == null) + name = actions.items; - if (itemName == null) { - Jobs.getCommandManager().sendUsage(sender, "give"); - return true; - } + if (itemName == null) { + Jobs.getCommandManager().sendUsage(sender, "give"); + return true; + } - switch (name) { - case items: - JobItems jItem = ItemBoostManager.getItemByKey(itemName); - ItemStack item = jItem == null ? null : jItem.getItemStack(player); + switch (name) { + case items: + JobItems jItem = ItemBoostManager.getItemByKey(itemName); + ItemStack item = jItem == null ? null : jItem.getItemStack(player); - if (item == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.give.output.noitem")); - return true; - } + if (item == null) { + Language.sendMessage(sender, "command.give.output.noitem"); + return true; + } - GiveItem.giveItemForPlayer(player, item); - break; - case limiteditems: - if (job == null) { - Jobs.getCommandManager().sendUsage(sender, "give"); - return true; - } + GiveItem.giveItemForPlayer(player, item); + break; + case limiteditems: + if (job == null) { + Jobs.getCommandManager().sendUsage(sender, "give"); + return true; + } - JobLimitedItems jLItem = job.getLimitedItems().get(itemName.toLowerCase()); - ItemStack limItem = jLItem == null ? null : jLItem.getItemStack(player); + JobLimitedItems jLItem = job.getLimitedItems().get(itemName.toLowerCase()); + ItemStack limItem = jLItem == null ? null : jLItem.getItemStack(player); - if (limItem == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.give.output.noitem")); - return true; - } + if (limItem == null) { + Language.sendMessage(sender, "command.give.output.noitem"); + return true; + } - GiveItem.giveItemForPlayer(player, limItem); - break; - default: - break; - } - return true; + GiveItem.giveItemForPlayer(player, limItem); + break; + default: + break; + } + return true; } } \ No newline at end of file diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/glog.java b/src/main/java/com/gamingmesh/jobs/commands/list/glog.java index 9392d267..ffdf5171 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/glog.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/glog.java @@ -15,6 +15,7 @@ import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.container.Log; import com.gamingmesh.jobs.container.LogAmounts; import com.gamingmesh.jobs.container.PlayerInfo; +import com.gamingmesh.jobs.i18n.Language; import com.gamingmesh.jobs.stuff.Sorting; import net.Zrips.CMILib.Time.CMITimeManager; @@ -23,100 +24,99 @@ public class glog implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (args.length != 0) { - Jobs.getCommandManager().sendUsage(sender, "glog"); - return true; - } + if (args.length != 0) { + return false; + } - Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() { - @Override - public void run() { - Map unsortMap = new HashMap<>(); - int time = CMITimeManager.timeInInt(); + Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() { + @Override + public void run() { + Map unsortMap = new HashMap<>(); + int time = CMITimeManager.timeInInt(); - for (Integer oneP : Jobs.getJobsDAO().getLognameList(time, time)) { - PlayerInfo info = Jobs.getPlayerManager().getPlayerInfo(oneP); - if (info == null) - continue; + for (Integer oneP : Jobs.getJobsDAO().getLognameList(time, time)) { + PlayerInfo info = Jobs.getPlayerManager().getPlayerInfo(oneP); + if (info == null) + continue; - String name = info.getName(); - if (name == null) - continue; + String name = info.getName(); + if (name == null) + continue; - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(info.getUuid()); - if (jPlayer == null) - continue; + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(info.getUuid()); + if (jPlayer == null) + continue; - Map logList = jPlayer.getLog(); - if (logList == null || logList.isEmpty()) - continue; + Map logList = jPlayer.getLog(); + if (logList == null || logList.isEmpty()) + continue; - for (Log l : logList.values()) { - for (LogAmounts amounts : l.getAmountList().values()) { - amounts.setUsername(name); - amounts.setAction(l.getActionType()); - unsortMap.put(amounts, amounts.get(CurrencyType.MONEY)); - } - } - } + for (Log l : logList.values()) { + for (LogAmounts amounts : l.getAmountList().values()) { + amounts.setUsername(name); + amounts.setAction(l.getActionType()); + unsortMap.put(amounts, amounts.get(CurrencyType.MONEY)); + } + } + } - unsortMap = Sorting.sortDoubleDESCByLog(unsortMap); - if (unsortMap.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.glog.output.nodata")); - return; - } + unsortMap = Sorting.sortDoubleDESCByLog(unsortMap); + if (unsortMap.isEmpty()) { + Language.sendMessage(sender, "command.glog.output.nodata"); + return; + } - int count = 1, max = 10; + int count = 1, max = 10; - double totalMoney = 0, - totalExp = 0, - totalPoints = 0; + double totalMoney = 0, + totalExp = 0, + totalPoints = 0; - sender.sendMessage(Jobs.getLanguage().getMessage("command.glog.output.topline")); - for (LogAmounts info : unsortMap.keySet()) { - double money = info.get(CurrencyType.MONEY); - totalMoney += money; + Language.sendMessage(sender, "command.glog.output.topline"); + for (LogAmounts info : unsortMap.keySet()) { + double money = info.get(CurrencyType.MONEY); + totalMoney += money; - String moneyS = ""; - if (money != 0D) - moneyS = Jobs.getLanguage().getMessage("command.glog.output.money", "%amount%", money); + String moneyS = ""; + if (money != 0D) + moneyS = Jobs.getLanguage().getMessage("command.glog.output.money", "%amount%", money); - double exp = info.get(CurrencyType.EXP); - totalExp += exp; + double exp = info.get(CurrencyType.EXP); + totalExp += exp; - String expS = ""; - if (exp != 0D) - expS = Jobs.getLanguage().getMessage("command.glog.output.exp", "%amount%", exp); + String expS = ""; + if (exp != 0D) + expS = Jobs.getLanguage().getMessage("command.glog.output.exp", "%amount%", exp); - double points = info.get(CurrencyType.POINTS); - totalPoints += points; + double points = info.get(CurrencyType.POINTS); + totalPoints += points; - String pointsS = ""; - if (points != 0D) - pointsS = Jobs.getLanguage().getMessage("command.glog.output.points", "%amount%", points); + String pointsS = ""; + if (points != 0D) + pointsS = Jobs.getLanguage().getMessage("command.glog.output.points", "%amount%", points); - sender.sendMessage(Jobs.getLanguage().getMessage("command.glog.output.ls", - "%number%", count, - "%action%", info.getAction(), - "%item%", info.getItemName().replace(":0", "").replace('_', ' ').toLowerCase(), - "%qty%", info.getCount(), - "%money%", moneyS, - "%exp%", expS, - "%points%", pointsS)); + Language.sendMessage(sender, "command.glog.output.ls", + "%number%", count, + "%action%", info.getAction(), + "%item%", info.getItemName().replace(":0", "").replace('_', ' ').toLowerCase(), + "%qty%", info.getCount(), + "%money%", moneyS, + "%exp%", expS, + "%points%", pointsS); - count++; + count++; - if (count > max) - break; - } + if (count > max) + break; + } - NumberFormat format = NumberFormat.getInstance(Locale.ENGLISH); - sender.sendMessage(Jobs.getLanguage().getMessage("command.glog.output.totalIncomes", "%money%", format.format(totalMoney), - "%exp%", format.format(totalExp), "%points%", format.format(totalPoints))); + NumberFormat format = NumberFormat.getInstance(Locale.ENGLISH); + Language.sendMessage(sender, "command.glog.output.totalIncomes", "%money%", format.format(totalMoney), + "%exp%", format.format(totalExp), "%points%", format.format(totalPoints)); - sender.sendMessage(Jobs.getLanguage().getMessage("command.glog.output.bottomline")); - } - }); - return true; + Language.sendMessage(sender, "command.glog.output.bottomline"); + } + }); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/grantxp.java b/src/main/java/com/gamingmesh/jobs/commands/list/grantxp.java index 6416125c..9f892088 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/grantxp.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/grantxp.java @@ -8,53 +8,53 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; public class grantxp implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (args.length < 3) { - Jobs.getCommandManager().sendUsage(sender, "grantxp"); - return true; - } + if (args.length < 3) { + return false; + } - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args[0])); - return true; - } + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + if (jPlayer == null) { + Language.sendMessage(sender, "general.error.noinfoByPlayer", "%playername%", args[0]); + return true; + } - Job job = Jobs.getJob(args[1]); - if (job == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } - double xpGained; - try { - xpGained = Double.parseDouble(args[2]); - } catch (NumberFormatException e) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.error")); - return true; - } - if (xpGained <= 0) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.error")); - return true; - } + Job job = Jobs.getJob(args[1]); + if (job == null) { + Language.sendMessage(sender, "general.error.job"); + return true; + } + double xpGained; + try { + xpGained = Double.parseDouble(args[2]); + } catch (NumberFormatException e) { + Language.sendMessage(sender, "general.admin.error"); + return true; + } + if (xpGained <= 0) { + Language.sendMessage(sender, "general.admin.error"); + return true; + } - // check if player already has the job - if (jPlayer.isInJob(job)) { - Jobs.getPlayerManager().addExperience(jPlayer, job, xpGained); + // check if player already has the job + if (jPlayer.isInJob(job)) { + Jobs.getPlayerManager().addExperience(jPlayer, job, xpGained); - Player player = jPlayer.getPlayer(); - if (player != null) { - String message = Jobs.getLanguage().getMessage("command.grantxp.output.target", - "%jobname%", job.getDisplayName(), - "%xpgained%", xpGained); - player.sendMessage(message); - } + Player player = jPlayer.getPlayer(); + if (player != null) { + String message = Jobs.getLanguage().getMessage("command.grantxp.output.target", + "%jobname%", job.getDisplayName(), + "%xpgained%", xpGained); + player.sendMessage(message); + } - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.success")); - } - return true; + Language.sendMessage(sender, "general.admin.success"); + } + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/gtop.java b/src/main/java/com/gamingmesh/jobs/commands/list/gtop.java index 26f7a309..6eaab9cd 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/gtop.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/gtop.java @@ -10,6 +10,7 @@ import org.bukkit.scoreboard.DisplaySlot; import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.TopList; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Container.PageInfo; import net.Zrips.CMILib.Locale.LC; @@ -22,12 +23,11 @@ public class gtop implements Cmd { public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!(sender instanceof Player)) { CMIMessages.sendMessage(sender, LC.info_Ingame); - return false; + return null; } if (args.length > 1) { - Jobs.getCommandManager().sendUsage(sender, "gtop"); - return true; + return false; } Player player = (Player) sender; @@ -54,24 +54,24 @@ public class gtop implements Cmd { List FullList = Jobs.getJobsDAO().getGlobalTopList(pi.getStart()); if (FullList.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.gtop.error.nojob")); + Language.sendMessage(sender, "command.gtop.error.nojob"); return true; } if (!Jobs.getGCManager().ShowToplistInScoreboard) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.gtop.output.topline", "%amount%", amount)); + Language.sendMessage(sender, "command.gtop.output.topline", "%amount%", amount); int i = 0; for (TopList One : FullList) { if (i >= amount) break; - sender.sendMessage(Jobs.getLanguage().getMessage("command.gtop.output.list", + Language.sendMessage(sender, "command.gtop.output.list", "%number%", pi.getPositionForOutput(i), "%playername%", One.getPlayerInfo().getName(), "%playerdisplayname%", One.getPlayerInfo().getDisplayName(), "%level%", One.getLevel(), - "%exp%", One.getExp())); + "%exp%", One.getExp()); ++i; } } else { diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/info.java b/src/main/java/com/gamingmesh/jobs/commands/list/info.java index 3da731b6..160b1fe9 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/info.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/info.java @@ -8,6 +8,7 @@ import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.ActionType; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; @@ -17,60 +18,59 @@ public class info implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (!(sender instanceof Player)) { - CMIMessages.sendMessage(sender, LC.info_Ingame); - return false; - } + if (!(sender instanceof Player)) { + CMIMessages.sendMessage(sender, LC.info_Ingame); + return null; + } - if (args.length < 1) { - Jobs.getCommandManager().sendUsage(sender, "info"); - Jobs.getCommandManager().sendValidActions(sender); - return true; - } + if (args.length < 1) { + Jobs.getCommandManager().sendValidActions(sender); + return false; + } - Player pSender = (Player) sender; - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(pSender); - if (jPlayer == null) { - pSender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", pSender.getName())); - return true; - } + Player pSender = (Player) sender; + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(pSender); + if (jPlayer == null) { + Language.sendMessage(sender, "general.error.noinfoByPlayer", "%playername%", pSender.getName()); + return true; + } - Job job = Jobs.getJob(args[0]); - if (job == null) { - pSender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } + Job job = Jobs.getJob(args[0]); + if (job == null) { + Language.sendMessage(sender, "general.error.job"); + return true; + } - if (Jobs.getGCManager().hideJobsInfoWithoutPermission && !Jobs.getCommandManager().hasJobPermission(pSender, job)) { - CMIMessages.sendMessage(pSender, LC.info_NoPermission); - return true; - } + if (Jobs.getGCManager().hideJobsInfoWithoutPermission && !Jobs.getCommandManager().hasJobPermission(pSender, job)) { + CMIMessages.sendMessage(pSender, LC.info_NoPermission); + return true; + } - if (Jobs.getGCManager().jobsInfoOpensBrowse) { - plugin.getGUIManager().openJobsBrowseGUI(pSender, job, true); - return true; - } + if (Jobs.getGCManager().jobsInfoOpensBrowse) { + plugin.getGUIManager().openJobsBrowseGUI(pSender, job, true); + return true; + } - int page = 1; - String type = null; + int page = 1; + String type = null; - for (int i = 1; i < args.length; i++) { - String one = args[i]; - if (type == null) { - ActionType t = ActionType.getByName(one); - if (t != null) { - type = t.getName(); - continue; - } - } - try { - page = Integer.parseInt(args[i]); - } catch (NumberFormatException e) { - } - } + for (int i = 1; i < args.length; i++) { + String one = args[i]; + if (type == null) { + ActionType t = ActionType.getByName(one); + if (t != null) { + type = t.getName(); + continue; + } + } + try { + page = Integer.parseInt(args[i]); + } catch (NumberFormatException e) { + } + } - Jobs.getCommandManager().jobInfoMessage(pSender, jPlayer, job, type, page); - return true; + Jobs.getCommandManager().jobInfoMessage(pSender, jPlayer, job, type, page); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/itembonus.java b/src/main/java/com/gamingmesh/jobs/commands/list/itembonus.java index ba1c787c..144de83e 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/itembonus.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/itembonus.java @@ -30,7 +30,7 @@ public class itembonus implements Cmd { public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!(sender instanceof Player)) { CMIMessages.sendMessage(sender, LC.info_Ingame); - return false; + return null; } Player player = (Player) sender; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/iteminfo.java b/src/main/java/com/gamingmesh/jobs/commands/list/iteminfo.java index d9bea691..c2f8f48b 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/iteminfo.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/iteminfo.java @@ -22,12 +22,11 @@ public class iteminfo implements Cmd { public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!(sender instanceof Player)) { CMIMessages.sendMessage(sender, LC.info_Ingame); - return false; + return null; } if (args.length != 0) { - Jobs.getCommandManager().sendUsage(sender, "iteminfo"); - return true; + return false; } ItemStack iih = CMIItemStack.getItemInMainHand((Player) sender); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/join.java b/src/main/java/com/gamingmesh/jobs/commands/list/join.java index eeeebce6..acee655f 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/join.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/join.java @@ -8,6 +8,7 @@ import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobProgression; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; @@ -17,76 +18,75 @@ public class join implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (!(sender instanceof Player)) { - CMIMessages.sendMessage(sender, LC.info_Ingame); - return false; - } + if (!(sender instanceof Player)) { + CMIMessages.sendMessage(sender, LC.info_Ingame); + return null; + } - if (args.length != 1 && args.length != 0 && args.length != 2) { - Jobs.getCommandManager().sendUsage(sender, "join"); - return true; - } + if (args.length != 1 && args.length != 0 && args.length != 2) { + return false; + } - if (args.length == 0) { - plugin.getServer().dispatchCommand(sender, "jobs browse"); - return true; - } + if (args.length == 0) { + plugin.getServer().dispatchCommand(sender, "jobs browse"); + return null; + } - Job job = Jobs.getJob(args[0]); - if (job == null) { - // job does not exist - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } + Job job = Jobs.getJob(args[0]); + if (job == null) { + // job does not exist + sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); + return true; + } - if (!Jobs.getCommandManager().hasJobPermission(sender, job)) { - // The player do not have permission to join the job - CMIMessages.sendMessage(sender, LC.info_NoPermission); - return true; - } + if (!Jobs.getCommandManager().hasJobPermission(sender, job)) { + // The player do not have permission to join the job + CMIMessages.sendMessage(sender, LC.info_NoPermission); + return true; + } - Player pSender = (Player) sender; - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(pSender); - if (jPlayer == null) { // Load player into cache - Jobs.getPlayerManager().playerJoin(pSender); - jPlayer = Jobs.getPlayerManager().getJobsPlayer(pSender); - } + Player pSender = (Player) sender; + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(pSender); + if (jPlayer == null) { // Load player into cache + Jobs.getPlayerManager().playerJoin(pSender); + jPlayer = Jobs.getPlayerManager().getJobsPlayer(pSender); + } - if (jPlayer == null) { - return true; - } + if (jPlayer == null) { + return true; + } - if (jPlayer.isInJob(job)) { - // already in job message - pSender.sendMessage(Jobs.getLanguage().getMessage("command.join.error.alreadyin", "%jobname%", job.getDisplayName())); - return true; - } + if (jPlayer.isInJob(job)) { + // already in job message + Language.sendMessage(sender, "command.join.error.alreadyin", "%jobname%", job.getDisplayName()); + return true; + } - if (job.getMaxSlots() != null && Jobs.getUsedSlots(job) >= job.getMaxSlots()) { - pSender.sendMessage(Jobs.getLanguage().getMessage("command.join.error.fullslots", "%jobname%", job.getDisplayName())); - return true; - } + if (job.getMaxSlots() != null && Jobs.getUsedSlots(job) >= job.getMaxSlots()) { + Language.sendMessage(sender, "command.join.error.fullslots", "%jobname%", job.getDisplayName()); + return true; + } - if (!job.isIgnoreMaxJobs() && !Jobs.getPlayerManager().getJobsLimit(jPlayer, (short) jPlayer.progression.size())) { - pSender.sendMessage(Jobs.getLanguage().getMessage("command.join.error.maxjobs")); - return true; - } + if (!job.isIgnoreMaxJobs() && !Jobs.getPlayerManager().getJobsLimit(jPlayer, (short) jPlayer.progression.size())) { + Language.sendMessage(sender, "command.join.error.maxjobs"); + return true; + } - if (args.length == 2 && args[1].equalsIgnoreCase("-needConfirmation")) { - new RawMessage().addText(Jobs.getLanguage().getMessage("command.join.confirm", "[jobname]", job.getName())) - .addHover(Jobs.getLanguage().getMessage("command.join.confirm", "[jobname]", job.getName())) - .addCommand("jobs join " + job.getName()).show(pSender); - return true; - } + if (args.length == 2 && args[1].equalsIgnoreCase("-needConfirmation")) { + new RawMessage().addText(Jobs.getLanguage().getMessage("command.join.confirm", "[jobname]", job.getName())) + .addHover(Jobs.getLanguage().getMessage("command.join.confirm", "[jobname]", job.getName())) + .addCommand("jobs join " + job.getName()).show(pSender); + return true; + } - JobProgression ajp = jPlayer.getArchivedJobProgression(job); - if (ajp != null && !ajp.canRejoin()) { - pSender.sendMessage(Jobs.getLanguage().getMessage("command.join.error.rejoin", "[time]", ajp.getRejoinTimeMessage())); - return true; - } + JobProgression ajp = jPlayer.getArchivedJobProgression(job); + if (ajp != null && !ajp.canRejoin()) { + Language.sendMessage(sender, "command.join.error.rejoin", "[time]", ajp.getRejoinTimeMessage()); + return true; + } - Jobs.getPlayerManager().joinJob(jPlayer, job); - pSender.sendMessage(Jobs.getLanguage().getMessage("command.join.success", "%jobname%", job.getDisplayName())); - return true; + Jobs.getPlayerManager().joinJob(jPlayer, job); + Language.sendMessage(sender, "command.join.success", "%jobname%", job.getDisplayName()); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/leave.java b/src/main/java/com/gamingmesh/jobs/commands/list/leave.java index 65fad255..76ac0762 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/leave.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/leave.java @@ -7,6 +7,7 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; import com.gamingmesh.jobs.stuff.Util; import net.Zrips.CMILib.Locale.LC; @@ -16,50 +17,51 @@ public class leave implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (!(sender instanceof Player)) - return false; + if (!(sender instanceof Player)) { + LC.info_Ingame.sendMessage(sender); + return null; + } - if (args.length < 1) { - Jobs.getCommandManager().sendUsage(sender, "leave"); - return true; - } + if (args.length < 1) { + return false; + } - Player pSender = (Player) sender; - Job job = Jobs.getJob(args[0]); - if (job == null) { - pSender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } + Player pSender = (Player) sender; + Job job = Jobs.getJob(args[0]); + if (job == null) { + Language.sendMessage(sender, "general.error.job"); + return true; + } - if (Jobs.getGCManager().UsePerPermissionForLeaving && !pSender.hasPermission("jobs.command.leave." + args[0].toLowerCase())) { - CMIMessages.sendMessage(pSender, LC.info_NoPermission); - return true; - } + if (Jobs.getGCManager().UsePerPermissionForLeaving && !pSender.hasPermission("jobs.command.leave." + args[0].toLowerCase())) { + CMIMessages.sendMessage(sender, LC.info_NoPermission); + return true; + } - if (Jobs.getGCManager().EnableConfirmation) { - java.util.UUID uuid = pSender.getUniqueId(); + if (Jobs.getGCManager().EnableConfirmation) { + java.util.UUID uuid = pSender.getUniqueId(); - if (!Util.LEAVECONFIRM.contains(uuid)) { - Util.LEAVECONFIRM.add(uuid); + if (!Util.LEAVECONFIRM.contains(uuid)) { + Util.LEAVECONFIRM.add(uuid); - plugin.getServer().getScheduler().runTaskLater(plugin, () -> Util.LEAVECONFIRM.remove(uuid), - 20 * Jobs.getGCManager().ConfirmExpiryTime); + plugin.getServer().getScheduler().runTaskLater(plugin, () -> Util.LEAVECONFIRM.remove(uuid), + 20 * Jobs.getGCManager().ConfirmExpiryTime); - pSender.sendMessage(Jobs.getLanguage().getMessage("command.leave.confirmationNeed", "[jobname]", - job.getDisplayName(), "[time]", Jobs.getGCManager().ConfirmExpiryTime)); - return true; - } + Language.sendMessage(sender, "command.leave.confirmationNeed", "[jobname]", + job.getDisplayName(), "[time]", Jobs.getGCManager().ConfirmExpiryTime); + return true; + } - Util.LEAVECONFIRM.remove(uuid); - } + Util.LEAVECONFIRM.remove(uuid); + } - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(pSender); + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(pSender); - if (Jobs.getPlayerManager().leaveJob(jPlayer, job)) - pSender.sendMessage(Jobs.getLanguage().getMessage("command.leave.success", "%jobname%", job.getDisplayName(), "[jobname]", job.getDisplayName())); - else - pSender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); + if (Jobs.getPlayerManager().leaveJob(jPlayer, job)) + Language.sendMessage(sender, "command.leave.success", "%jobname%", job.getDisplayName(), "[jobname]", job.getDisplayName()); + else + Language.sendMessage(sender, "general.error.job"); - return true; + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/leaveall.java b/src/main/java/com/gamingmesh/jobs/commands/list/leaveall.java index 3076f123..d1ecb80c 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/leaveall.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/leaveall.java @@ -9,6 +9,7 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.JobProgression; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; import com.gamingmesh.jobs.stuff.Util; import net.Zrips.CMILib.Locale.LC; @@ -18,39 +19,39 @@ public class leaveall implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (!(sender instanceof Player)) { - CMIMessages.sendMessage(sender, LC.info_Ingame); - return false; - } + if (!(sender instanceof Player)) { + CMIMessages.sendMessage(sender, LC.info_Ingame); + return null; + } - Player pSender = (Player) sender; - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(pSender); + Player pSender = (Player) sender; + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(pSender); - List jobs = jPlayer.getJobProgression(); - if (jobs.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.leaveall.error.nojobs")); - return true; - } + List jobs = jPlayer.getJobProgression(); + if (jobs.isEmpty()) { + Language.sendMessage(sender, "command.leaveall.error.nojobs"); + return true; + } - if (Jobs.getGCManager().EnableConfirmation) { - java.util.UUID uuid = pSender.getUniqueId(); + if (Jobs.getGCManager().EnableConfirmation) { + java.util.UUID uuid = pSender.getUniqueId(); - if (!Util.LEAVECONFIRM.contains(uuid)) { - Util.LEAVECONFIRM.add(uuid); + if (!Util.LEAVECONFIRM.contains(uuid)) { + Util.LEAVECONFIRM.add(uuid); - plugin.getServer().getScheduler().runTaskLater(plugin, () -> Util.LEAVECONFIRM.remove(uuid), - 20 * Jobs.getGCManager().ConfirmExpiryTime); + plugin.getServer().getScheduler().runTaskLater(plugin, () -> Util.LEAVECONFIRM.remove(uuid), + 20 * Jobs.getGCManager().ConfirmExpiryTime); - pSender.sendMessage(Jobs.getLanguage().getMessage("command.leaveall.confirmationNeed", "[time]", - Jobs.getGCManager().ConfirmExpiryTime)); - return true; - } + Language.sendMessage(pSender, "command.leaveall.confirmationNeed", "[time]", + Jobs.getGCManager().ConfirmExpiryTime); + return true; + } - Util.LEAVECONFIRM.remove(uuid); - } + Util.LEAVECONFIRM.remove(uuid); + } - Jobs.getPlayerManager().leaveAllJobs(jPlayer); - sender.sendMessage(Jobs.getLanguage().getMessage("command.leaveall.success")); - return true; + Jobs.getPlayerManager().leaveAllJobs(jPlayer); + Language.sendMessage(sender, "command.leaveall.success"); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/level.java b/src/main/java/com/gamingmesh/jobs/commands/list/level.java index c0bf5d1e..f5186f9d 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/level.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/level.java @@ -9,118 +9,118 @@ import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobProgression; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; public class level implements Cmd { private enum Action { - Set, Add, Take + Set, Add, Take } @Override public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { - if (args.length < 4) { - Jobs.getCommandManager().sendUsage(sender, "level"); - return true; - } + if (args.length < 4) { + return false; + } - Action action = Action.Add; - int amount = 0; - String playerName = null; - Job job = null; + Action action = Action.Add; + int amount = 0; + String playerName = null; + Job job = null; - for (String one : args) { - switch (one.toLowerCase()) { - case "set": - action = Action.Set; - continue; - case "add": - action = Action.Add; - continue; - case "take": - action = Action.Take; - continue; - default: - break; - } + for (String one : args) { + switch (one.toLowerCase()) { + case "set": + action = Action.Set; + continue; + case "add": + action = Action.Add; + continue; + case "take": + action = Action.Take; + continue; + default: + break; + } - try { - amount = Integer.parseInt(one); - continue; - } catch (NumberFormatException e) { - } + try { + amount = Integer.parseInt(one); + continue; + } catch (NumberFormatException e) { + } - if (job == null && (job = Jobs.getJob(one)) != null) - continue; + if (job == null && (job = Jobs.getJob(one)) != null) + continue; - playerName = one; - } + playerName = one; + } - if (playerName == null) - return false; + if (playerName == null) + return false; - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(playerName); - if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args[0])); - return true; - } + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(playerName); + if (jPlayer == null) { + Language.sendMessage(sender, "general.error.noinfoByPlayer", "%playername%", args[0]); + return true; + } - if (job == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } + if (job == null) { + Language.sendMessage(sender, "general.error.job"); + return true; + } - try { - // check if player already has the job - if (jPlayer.isInJob(job)) { - JobProgression prog = jPlayer.getJobProgression(job); - int total = 0; + try { + // check if player already has the job + if (jPlayer.isInJob(job)) { + JobProgression prog = jPlayer.getJobProgression(job); + int total = 0; - switch (action) { - case Set: - prog.setLevel(amount); - break; - case Add: - int oldLevel = prog.getLevel(); - total = (oldLevel + amount); + switch (action) { + case Set: + prog.setLevel(amount); + break; + case Add: + int oldLevel = prog.getLevel(); + total = (oldLevel + amount); - if (prog.setLevel(total)) { - JobsLevelUpEvent levelUpEvent = new JobsLevelUpEvent(jPlayer, job, prog.getLevel(), - Jobs.getTitleManager().getTitle(oldLevel, prog.getJob().getName()), - Jobs.getTitleManager().getTitle(prog.getLevel(), prog.getJob().getName()), - Jobs.getGCManager().SoundLevelupSound, - Jobs.getGCManager().SoundLevelupVolume, - Jobs.getGCManager().SoundLevelupPitch, - Jobs.getGCManager().SoundTitleChangeSound, - Jobs.getGCManager().SoundTitleChangeVolume, - Jobs.getGCManager().SoundTitleChangePitch); + if (prog.setLevel(total)) { + JobsLevelUpEvent levelUpEvent = new JobsLevelUpEvent(jPlayer, job, prog.getLevel(), + Jobs.getTitleManager().getTitle(oldLevel, prog.getJob().getName()), + Jobs.getTitleManager().getTitle(prog.getLevel(), prog.getJob().getName()), + Jobs.getGCManager().SoundLevelupSound, + Jobs.getGCManager().SoundLevelupVolume, + Jobs.getGCManager().SoundLevelupPitch, + Jobs.getGCManager().SoundTitleChangeSound, + Jobs.getGCManager().SoundTitleChangeVolume, + Jobs.getGCManager().SoundTitleChangePitch); - plugin.getServer().getPluginManager().callEvent(levelUpEvent); + plugin.getServer().getPluginManager().callEvent(levelUpEvent); - // If event is cancelled, don't do anything - if (levelUpEvent.isCancelled()) - return true; - } + // If event is cancelled, don't do anything + if (levelUpEvent.isCancelled()) + return true; + } - break; - case Take: - total = (prog.getLevel() - amount); - prog.setLevel(total); - break; - default: - break; - } + break; + case Take: + total = (prog.getLevel() - amount); + prog.setLevel(total); + break; + default: + break; + } - Player player = jPlayer.getPlayer(); - if (player != null) - player.sendMessage(Jobs.getLanguage().getMessage("command.level.output.target", "%jobname%", job.getDisplayName(), "%level%", prog.getLevel(), - "%exp%", String.format(Jobs.getGCManager().getDecimalPlacesExp(), prog.getExperience()))); + Player player = jPlayer.getPlayer(); + if (player != null) + Language.sendMessage(player, "command.level.output.target", "%jobname%", job.getDisplayName(), "%level%", prog.getLevel(), + "%exp%", String.format(Jobs.getGCManager().getDecimalPlacesExp(), prog.getExperience())); - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.success")); - } else - sender.sendMessage(Jobs.getLanguage().getMessage("command.level.error.nojob")); - } catch (Exception e) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.error")); - } - return true; + Language.sendMessage(sender, "general.admin.success"); + } else + Language.sendMessage(sender, "command.level.error.nojob"); + } catch (Exception e) { + Language.sendMessage(sender, "general.admin.error"); + } + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/limit.java b/src/main/java/com/gamingmesh/jobs/commands/list/limit.java index f23dec61..d54c547d 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/limit.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/limit.java @@ -8,6 +8,7 @@ import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.CurrencyType; import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.economy.PaymentData; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Logs.CMIDebug; @@ -18,57 +19,56 @@ public class limit implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (args.length != 0 && args.length != 1) { - Jobs.getCommandManager().sendUsage(sender, "limit"); - return true; - } + if (args.length != 0 && args.length != 1) { + return false; + } - JobsPlayer JPlayer = null; - if (args.length >= 1) - JPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - else if (sender instanceof Player) - JPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); + JobsPlayer JPlayer = null; + if (args.length >= 1) + JPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + else if (sender instanceof Player) + JPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); - boolean disabled = true; - for (CurrencyType type : CurrencyType.values()) { - if (Jobs.getGCManager().getLimit(type).isEnabled()) { - disabled = false; - break; - } - } + boolean disabled = true; + for (CurrencyType type : CurrencyType.values()) { + if (Jobs.getGCManager().getLimit(type).isEnabled()) { + disabled = false; + break; + } + } - if (disabled) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.limit.output.notenabled")); - return true; - } + if (disabled) { + Language.sendMessage(sender,"command.limit.output.notenabled"); + return true; + } - if (JPlayer == null) { - if (args.length >= 1) - CMIMessages.sendMessage(sender, LC.info_NoInformation); - else if (!(sender instanceof Player)) - Jobs.getCommandManager().sendUsage(sender, "limit"); - return true; - } + if (JPlayer == null) { + if (args.length >= 1) + CMIMessages.sendMessage(sender, LC.info_NoInformation); + else if (!(sender instanceof Player)) + Jobs.getCommandManager().sendUsage(sender, "limit"); + return true; + } - for (CurrencyType type : CurrencyType.values()) { - if (!Jobs.getGCManager().getLimit(type).isEnabled()) - continue; - PaymentData limit = JPlayer.getPaymentLimit(); + for (CurrencyType type : CurrencyType.values()) { + if (!Jobs.getGCManager().getLimit(type).isEnabled()) + continue; + PaymentData limit = JPlayer.getPaymentLimit(); - if (limit.getLeftTime(type) <= 0) { - CMIDebug.d("reset", type); - limit.resetLimits(type); - } + if (limit.getLeftTime(type) <= 0) { + CMIDebug.d("reset", type); + limit.resetLimits(type); + } - if (limit.getLeftTime(type) > 0) { - String typeName = type.getName().toLowerCase(); + if (limit.getLeftTime(type) > 0) { + String typeName = type.getName().toLowerCase(); - sender.sendMessage(Jobs.getLanguage().getMessage("command.limit.output." + typeName + "time", "%time%", CMITimeManager.to24hourShort(limit.getLeftTime(type)))); - sender.sendMessage(Jobs.getLanguage().getMessage("command.limit.output." + typeName + "Limit", - "%current%", (int) (limit.getAmount(type) * 100) / 100D, - "%total%", JPlayer.getLimit(type))); - } - } - return true; + Language.sendMessage(sender, "command.limit.output." + typeName + "time", "%time%", CMITimeManager.to24hourShort(limit.getLeftTime(type))); + Language.sendMessage(sender, "command.limit.output." + typeName + "Limit", + "%current%", (int) (limit.getAmount(type) * 100) / 100D, + "%total%", JPlayer.getLimit(type)); + } + } + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/log.java b/src/main/java/com/gamingmesh/jobs/commands/list/log.java index 903fc1ca..3a83b75e 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/log.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/log.java @@ -15,6 +15,7 @@ import com.gamingmesh.jobs.container.CurrencyType; import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.container.Log; import com.gamingmesh.jobs.container.LogAmounts; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Container.CMISort; import net.Zrips.CMILib.Locale.LC; @@ -24,113 +25,112 @@ public class log implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (!(sender instanceof Player) && args.length != 1) { - CMIMessages.sendMessage(sender, LC.info_Ingame); - return false; - } + if (!(sender instanceof Player) && args.length != 1) { + CMIMessages.sendMessage(sender, LC.info_Ingame); + return null; + } - if (args.length != 1 && args.length != 0) { - Jobs.getCommandManager().sendUsage(sender, "log"); - return true; - } + if (args.length != 1 && args.length != 0) { + return false; + } - JobsPlayer JPlayer = null; - if (args.length == 0) - JPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); - else if (args.length == 1) { - if (!Jobs.hasPermission(sender, "jobs.command.log.others", true)) - return true; + JobsPlayer JPlayer = null; + if (args.length == 0) + JPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); + else if (args.length == 1) { + if (!Jobs.hasPermission(sender, "jobs.command.log.others", true)) + return null; - JPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - } + JPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + } - if (JPlayer == null) { - Jobs.getCommandManager().sendUsage(sender, "log"); - return true; - } + if (JPlayer == null) { + Jobs.getCommandManager().sendUsage(sender, "log"); + return true; + } - Map logList = JPlayer.getLog(); - if (logList == null || logList.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.log.output.bottomline")); - sender.sendMessage(Jobs.getLanguage().getMessage("command.log.output.nodata")); - sender.sendMessage(Jobs.getLanguage().getMessage("command.log.output.bottomline")); - return true; - } + Map logList = JPlayer.getLog(); + if (logList == null || logList.isEmpty()) { + Language.sendMessage(sender, "command.log.output.bottomline"); + Language.sendMessage(sender, "command.log.output.nodata"); + Language.sendMessage(sender, "command.log.output.bottomline"); + return true; + } - Map unsortMap = new HashMap<>(); + Map unsortMap = new HashMap<>(); - for (Log l : logList.values()) { - for (Entry oneMap : l.getAmountList().entrySet()) { - unsortMap.put(oneMap.getKey(), oneMap.getValue().get(CurrencyType.MONEY)); - } - } + for (Log l : logList.values()) { + for (Entry oneMap : l.getAmountList().entrySet()) { + unsortMap.put(oneMap.getKey(), oneMap.getValue().get(CurrencyType.MONEY)); + } + } - unsortMap = CMISort.sortDoubleDESC(unsortMap); - if (unsortMap.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.log.output.nodata")); - return true; - } + unsortMap = CMISort.sortDoubleDESC(unsortMap); + if (unsortMap.isEmpty()) { + Language.sendMessage(sender, "command.log.output.nodata"); + return true; + } - int count = 0; - int max = 10; + int count = 0; + int max = 10; - sender.sendMessage(Jobs.getLanguage().getMessage("command.log.output.topline", "%playername%", JPlayer.getName(), "%playerdisplayname%", JPlayer.getDisplayName())); - for (Log one : logList.values()) { - double totalMoney = 0, totalExp = 0, totalPoints = 0; + Language.sendMessage(sender, "command.log.output.topline", "%playername%", JPlayer.getName(), "%playerdisplayname%", JPlayer.getDisplayName()); + for (Log one : logList.values()) { + double totalMoney = 0, totalExp = 0, totalPoints = 0; - for (String oneSorted : unsortMap.keySet()) { - for (Entry oneMap : one.getAmountList().entrySet()) { - if (oneMap.getKey().equalsIgnoreCase(oneSorted)) { - count++; + for (String oneSorted : unsortMap.keySet()) { + for (Entry oneMap : one.getAmountList().entrySet()) { + if (oneMap.getKey().equalsIgnoreCase(oneSorted)) { + count++; - LogAmounts amounts = oneMap.getValue(); + LogAmounts amounts = oneMap.getValue(); - double money = amounts.get(CurrencyType.MONEY); - totalMoney = totalMoney + money; + double money = amounts.get(CurrencyType.MONEY); + totalMoney = totalMoney + money; - String moneyS = ""; - if (money != 0D) - moneyS = Jobs.getLanguage().getMessage("command.log.output.money", "%amount%", money); + String moneyS = ""; + if (money != 0D) + moneyS = Jobs.getLanguage().getMessage("command.log.output.money", "%amount%", money); - double exp = amounts.get(CurrencyType.EXP); - totalExp = totalExp + exp; + double exp = amounts.get(CurrencyType.EXP); + totalExp = totalExp + exp; - String expS = ""; - if (exp != 0D) - expS = Jobs.getLanguage().getMessage("command.log.output.exp", "%amount%", exp); + String expS = ""; + if (exp != 0D) + expS = Jobs.getLanguage().getMessage("command.log.output.exp", "%amount%", exp); - double points = amounts.get(CurrencyType.POINTS); - totalPoints = totalPoints + points; + double points = amounts.get(CurrencyType.POINTS); + totalPoints = totalPoints + points; - String pointsS = ""; - if (points != 0D) - pointsS = Jobs.getLanguage().getMessage("command.log.output.points", "%amount%", points); + String pointsS = ""; + if (points != 0D) + pointsS = Jobs.getLanguage().getMessage("command.log.output.points", "%amount%", points); - sender.sendMessage(Jobs.getLanguage().getMessage("command.log.output.ls", - "%number%", count, - "%action%", one.getActionType(), - "%item%", amounts.getItemName().replace(":0", "").replace('_', ' ').toLowerCase(), - "%qty%", amounts.getCount(), - "%money%", moneyS, - "%exp%", expS, - "%points%", pointsS)); - break; - } - } + Language.sendMessage(sender, "command.log.output.ls", + "%number%", count, + "%action%", one.getActionType(), + "%item%", amounts.getItemName().replace(":0", "").replace('_', ' ').toLowerCase(), + "%qty%", amounts.getCount(), + "%money%", moneyS, + "%exp%", expS, + "%points%", pointsS); + break; + } + } - if (count > max) - break; - } + if (count > max) + break; + } - NumberFormat format = NumberFormat.getInstance(Locale.ENGLISH); - sender.sendMessage(Jobs.getLanguage().getMessage("command.log.output.totalIncomes", "%money%", format.format(totalMoney), - "%exp%", format.format(totalExp), "%points%", format.format(totalPoints))); + NumberFormat format = NumberFormat.getInstance(Locale.ENGLISH); + Language.sendMessage(sender, "command.log.output.totalIncomes", "%money%", format.format(totalMoney), + "%exp%", format.format(totalExp), "%points%", format.format(totalPoints)); - if (count > max) - break; - } + if (count > max) + break; + } - sender.sendMessage(Jobs.getLanguage().getMessage("command.log.output.bottomline")); - return true; + Language.sendMessage(sender, "command.log.output.bottomline"); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/ownedblocks.java b/src/main/java/com/gamingmesh/jobs/commands/list/ownedblocks.java index 62516c77..0e900423 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/ownedblocks.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/ownedblocks.java @@ -27,65 +27,65 @@ public class ownedblocks implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - JobsPlayer jPlayer = null; - if (args.length >= 1) { - if (!Jobs.hasPermission(sender, "jobs.command.admin.ownedblocks", true)) - return true; - jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - } else if (sender instanceof Player) - jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); + JobsPlayer jPlayer = null; + if (args.length >= 1) { + if (!Jobs.hasPermission(sender, "jobs.command.admin.ownedblocks", true)) + return null; + jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + } else if (sender instanceof Player) + jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); - if (jPlayer == null) { - if (args.length >= 1) - CMIMessages.sendMessage(sender, LC.info_NoInformation); - else - Jobs.getCommandManager().sendUsage(sender, "ownedblocks"); - return true; - } + if (jPlayer == null) { + if (args.length >= 1) + CMIMessages.sendMessage(sender, LC.info_NoInformation); + else + return false; + return null; + } - final JobsPlayer jp = jPlayer; + final JobsPlayer jp = jPlayer; - RawMessage rm = new RawMessage(); + RawMessage rm = new RawMessage(); - Snd snd = new Snd(); - snd.setSender(sender); - snd.setTargetName(jp.getName()); + Snd snd = new Snd(); + snd.setSender(sender); + snd.setTargetName(jp.getName()); - rm.addText(LC.info_PlayerSpliter.getLocale(snd)); + rm.addText(LC.info_PlayerSpliter.getLocale(snd)); - int i = 0; - for (BlockTypes type : BlockTypes.values()) { + int i = 0; + for (BlockTypes type : BlockTypes.values()) { - Optional ownerShip = plugin.getBlockOwnerShip(type); + Optional ownerShip = plugin.getBlockOwnerShip(type); - if (!ownerShip.isPresent()) - continue; + if (!ownerShip.isPresent()) + continue; - HashMap records = ownerShip.get().getBlockOwnerShips().get(jp.getUniqueId()); - if (records == null) - continue; + HashMap records = ownerShip.get().getBlockOwnerShips().get(jp.getUniqueId()); + if (records == null) + continue; - for (Entry record : records.entrySet()) { - i++; - rm.addText("\n"); + for (Entry record : records.entrySet()) { + i++; + rm.addText("\n"); - CMIMaterial material = CMIMaterial.get(type.toString()); + CMIMaterial material = CMIMaterial.get(type.toString()); - CMILocation loc = CMILocation.fromString(record.getKey(), ":"); + CMILocation loc = CMILocation.fromString(record.getKey(), ":"); - rm.addText(Jobs.getLanguage().getMessage("command.ownedblocks.output.list", "[place]", i, "[type]", material.getName(), "[location]", LC.Location_Full.getLocale((Location) loc))); - rm.addHover(Jobs.getLanguage().getMessage("command.ownedblocks.output.listHover", "[location]", LC.Location_Full.getLocale((Location) loc))); - rm.addCommand(JobsCommands.LABEL + " " + clearownership.class.getSimpleName() + " " + jp.getName() + " " + record.getKey()); - if (record.getValue().isDisabled()) { - rm.addText(Jobs.getLanguage().getMessage("command.ownedblocks.output.disabled")); - rm.addHover(Jobs.getLanguage().getMessage("command.ownedblocks.output.disabledHover")); - } - } - } - rm.show(sender); - if (i == 0) - LC.info_nothingToShow.sendMessage(sender); + rm.addText(Jobs.getLanguage().getMessage("command.ownedblocks.output.list", "[place]", i, "[type]", material.getName(), "[location]", LC.Location_Full.getLocale((Location) loc))); + rm.addHover(Jobs.getLanguage().getMessage("command.ownedblocks.output.listHover", "[location]", LC.Location_Full.getLocale((Location) loc))); + rm.addCommand(JobsCommands.LABEL + " " + clearownership.class.getSimpleName() + " " + jp.getName() + " " + record.getKey()); + if (record.getValue().isDisabled()) { + rm.addText(Jobs.getLanguage().getMessage("command.ownedblocks.output.disabled")); + rm.addHover(Jobs.getLanguage().getMessage("command.ownedblocks.output.disabledHover")); + } + } + } + rm.show(sender); + if (i == 0) + LC.info_nothingToShow.sendMessage(sender); - return true; + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/placeholders.java b/src/main/java/com/gamingmesh/jobs/commands/list/placeholders.java index cedc88e6..9bd47e1c 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/placeholders.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/placeholders.java @@ -8,6 +8,7 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.Placeholders.Placeholder.JobsPlaceHolders; import com.gamingmesh.jobs.Placeholders.Placeholder.JobsPlaceholderType; import com.gamingmesh.jobs.commands.Cmd; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Container.PageInfo; import net.Zrips.CMILib.Messages.CMIMessages; @@ -42,10 +43,10 @@ public class placeholders implements Cmd { String placeholder = args[1]; JobsPlaceholderType type = plugin.getPlaceholderAPIManager().getPlaceHolderType(player, placeholder); - sender.sendMessage(Jobs.getLanguage().getMessage("command.placeholders.output.parse", + Language.sendMessage(sender, "command.placeholders.output.parse", "[placeholder]", placeholder, "[source]", type == null ? "Unknown" : type.name(), - "[result]", plugin.getPlaceholderAPIManager().updatePlaceHolders(player, placeholder))); + "[result]", plugin.getPlaceholderAPIManager().updatePlaceHolders(player, placeholder)); return true; } @@ -72,17 +73,6 @@ public class placeholders implements Cmd { if (plugin.isPlaceholderAPIEnabled()) { hover = place = one.getFull(); } -// For MVdWPlaceholderAPI -// if (plugin.isMVdWPlaceholderAPIEnabled()) { -// if (!plugin.isPlaceholderAPIEnabled()) { -// place = one.getFull().substring(1, one.getFull().length() - 2); -// place = "{" + place + "}"; -// } -// if (hover.isEmpty()) -// hover = one.getFull(); -// else -// hover += "\n" + "{" + one.getFull().substring(1, one.getFull().length() - 2) + "}"; -// } rm.addText(Jobs.getLanguage().getMessage("command.placeholders.output.list", "[place]", pi.getPositionForOutput(), "[placeholder]", place) + extra) .addHover(hover).addSuggestion(one.getFull()).show(sender); } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/playerinfo.java b/src/main/java/com/gamingmesh/jobs/commands/list/playerinfo.java index 84ccf0bb..9b8203d3 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/playerinfo.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/playerinfo.java @@ -6,40 +6,40 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; public class playerinfo implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (args.length < 2) { - Jobs.getCommandManager().sendUsage(sender, "playerinfo"); - Jobs.getCommandManager().sendValidActions(sender); - return true; - } + if (args.length < 2) { + Jobs.getCommandManager().sendValidActions(sender); + return false; + } - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args[0])); - return true; - } + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + if (jPlayer == null) { + Language.sendMessage(sender, "general.error.noinfoByPlayer", "%playername%", args[0]); + return true; + } - Job job = Jobs.getJob(args[1]); - if (job == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } + Job job = Jobs.getJob(args[1]); + if (job == null) { + Language.sendMessage(sender, "general.error.job"); + return true; + } - int page = 1; - String type = ""; - if (args.length >= 3) { - try { - page = Integer.parseInt(args[2]); - } catch (NumberFormatException e) { - type = args[2]; - } - } + int page = 1; + String type = ""; + if (args.length >= 3) { + try { + page = Integer.parseInt(args[2]); + } catch (NumberFormatException e) { + type = args[2]; + } + } - Jobs.getCommandManager().jobInfoMessage(sender, jPlayer, job, type, page); - return true; + Jobs.getCommandManager().jobInfoMessage(sender, jPlayer, job, type, page); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/points.java b/src/main/java/com/gamingmesh/jobs/commands/list/points.java index a640cb3d..c53a53f2 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/points.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/points.java @@ -7,6 +7,7 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.container.PlayerPoints; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; @@ -16,35 +17,34 @@ public class points implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (args.length != 0 && args.length != 1) { - Jobs.getCommandManager().sendUsage(sender, "points"); - return true; - } + if (args.length != 0 && args.length != 1) { + return false; + } - JobsPlayer jPlayer = null; - if (args.length >= 1) { - if (!Jobs.hasPermission(sender, "jobs.command.admin.points", true)) { - return true; - } - jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - } else if (sender instanceof Player) { - jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); - } + JobsPlayer jPlayer = null; + if (args.length >= 1) { + if (!Jobs.hasPermission(sender, "jobs.command.admin.points", true)) { + return true; + } + jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + } else if (sender instanceof Player) { + jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); + } - if (jPlayer == null) { - if (args.length >= 1) - CMIMessages.sendMessage(sender, LC.info_NoInformation); - else - Jobs.getCommandManager().sendUsage(sender, "points"); - return true; - } + if (jPlayer == null) { + if (args.length >= 1) + CMIMessages.sendMessage(sender, LC.info_NoInformation); + else + Jobs.getCommandManager().sendUsage(sender, "points"); + return true; + } - PlayerPoints pointInfo = jPlayer.getPointsData(); + PlayerPoints pointInfo = jPlayer.getPointsData(); - sender.sendMessage(Jobs.getLanguage().getMessage("general.info.toplineseparator", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getDisplayName())); - sender.sendMessage(Jobs.getLanguage().getMessage("command.points.currentpoints", "%currentpoints%", (int) (pointInfo.getCurrentPoints() * 100) / 100D)); - sender.sendMessage(Jobs.getLanguage().getMessage("command.points.totalpoints", "%totalpoints%", (int) (pointInfo.getTotalPoints() * 100) / 100D)); - sender.sendMessage(Jobs.getLanguage().getMessage("general.info.separator")); - return true; + Language.sendMessage(sender, "general.info.toplineseparator", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getDisplayName()); + Language.sendMessage(sender, "command.points.currentpoints", "%currentpoints%", (int) (pointInfo.getCurrentPoints() * 100) / 100D); + Language.sendMessage(sender, "command.points.totalpoints", "%totalpoints%", (int) (pointInfo.getTotalPoints() * 100) / 100D); + Language.sendMessage(sender, "general.info.separator"); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/promote.java b/src/main/java/com/gamingmesh/jobs/commands/list/promote.java index 04084435..0d534f53 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/promote.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/promote.java @@ -7,62 +7,62 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; public class promote implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (args.length < 3) { - Jobs.getCommandManager().sendUsage(sender, "promote"); - return true; - } + if (args.length < 3) { + return false; + } - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args[0])); - return true; - } + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + if (jPlayer == null) { + Language.sendMessage(sender, "general.error.noinfoByPlayer", "%playername%", args[0]); + return true; + } - Job job = Jobs.getJob(args[1]); - if (job == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } + Job job = Jobs.getJob(args[1]); + if (job == null) { + Language.sendMessage(sender, "general.error.job"); + return true; + } - // check if player already has the job - if (!jPlayer.isInJob(job)) - return false; + // check if player already has the job + if (!jPlayer.isInJob(job)) + return false; - try { + try { - int levelsGained = -1; - try { - levelsGained = Integer.parseInt(args[2]); - } catch (NumberFormatException ex) { - return false; - } + int levelsGained = -1; + try { + levelsGained = Integer.parseInt(args[2]); + } catch (NumberFormatException ex) { + return false; + } - boolean commands = false; - for (String one : args) { - if (one.equalsIgnoreCase("-cmd")) { - commands = true; - continue; - } - } + boolean commands = false; + for (String one : args) { + if (one.equalsIgnoreCase("-cmd")) { + commands = true; + continue; + } + } - Jobs.getPlayerManager().promoteJob(jPlayer, job, levelsGained, commands); + Jobs.getPlayerManager().promoteJob(jPlayer, job, levelsGained, commands); - Player player = jPlayer.getPlayer(); - if (player != null) - player.sendMessage(Jobs.getLanguage().getMessage("command.promote.output.target", - "%jobname%", job.getDisplayName(), - "%levelsgained%", levelsGained)); + Player player = jPlayer.getPlayer(); + if (player != null) + Language.sendMessage(player, "command.promote.output.target", + "%jobname%", job.getDisplayName(), + "%levelsgained%", levelsGained); - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.success")); + Language.sendMessage(sender, "general.admin.success"); - } catch (Throwable e) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.error")); - } - return true; + } catch (Throwable e) { + Language.sendMessage(sender, "general.admin.error"); + } + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/quests.java b/src/main/java/com/gamingmesh/jobs/commands/list/quests.java index 805d8120..871e882a 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/quests.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/quests.java @@ -14,6 +14,7 @@ import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.container.Quest; import com.gamingmesh.jobs.container.QuestObjective; import com.gamingmesh.jobs.container.QuestProgression; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; @@ -27,7 +28,7 @@ public class quests implements Cmd { if (!Jobs.getGCManager().DailyQuestsEnabled) { LC.info_FeatureNotEnabled.sendMessage(sender); - return true; + return null; } JobsPlayer jPlayer = null; @@ -35,7 +36,7 @@ public class quests implements Cmd { if (args.length >= 1 && !args[0].equalsIgnoreCase("stop") && !args[0].equalsIgnoreCase("start")) { if (!Jobs.hasPermission(sender, "jobs.command.admin.quests", true)) - return true; + return null; jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); } else if (isPlayer) @@ -52,7 +53,7 @@ public class quests implements Cmd { List questProgs = jPlayer.getQuestProgressions(); if (questProgs.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.quests.error.noquests")); + Language.sendMessage(sender, "command.quests.error.noquests"); return true; } @@ -71,13 +72,13 @@ public class quests implements Cmd { q.getQuest().setStopped(stopped); } - sender.sendMessage(Jobs.getLanguage().getMessage("command.quests.status.changed", "%status%", - stopped ? Jobs.getLanguage().getMessage("command.quests.status.stopped") : Jobs.getLanguage().getMessage("command.quests.status.started"))); + Language.sendMessage(sender, "command.quests.status.changed", "%status%", + stopped ? Jobs.getLanguage().getMessage("command.quests.status.stopped") : Jobs.getLanguage().getMessage("command.quests.status.started")); return true; } } - sender.sendMessage(Jobs.getLanguage().getMessage("command.quests.toplineseparator", "[playerName]", jPlayer.getName(), "[questsDone]", jPlayer.getDoneQuests())); + Language.sendMessage(sender, "command.quests.toplineseparator", "[playerName]", jPlayer.getName(), "[questsDone]", jPlayer.getDoneQuests()); for (JobProgression jobProg : jPlayer.progression) { List list = jPlayer.getQuestProgressions(jobProg.getJob()); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/reload.java b/src/main/java/com/gamingmesh/jobs/commands/list/reload.java index 0fc70d90..e0a5b3ba 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/reload.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/reload.java @@ -4,13 +4,14 @@ import org.bukkit.command.CommandSender; import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; +import com.gamingmesh.jobs.i18n.Language; public class reload implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - Jobs.reload(); - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.success")); - return true; + Jobs.reload(); + Language.sendMessage(sender, "general.admin.success"); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/removexp.java b/src/main/java/com/gamingmesh/jobs/commands/list/removexp.java index a26890c9..01f4cd9f 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/removexp.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/removexp.java @@ -7,52 +7,52 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; public class removexp implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (args.length < 3) { - Jobs.getCommandManager().sendUsage(sender, "removexp"); - return true; - } + if (args.length < 3) { + return false; + } - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args[0])); - return true; - } + if (jPlayer == null) { + Language.sendMessage(sender, "general.error.noinfoByPlayer", "%playername%", args[0]); + return true; + } - Job job = Jobs.getJob(args[1]); - if (job == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } - double xpLost = 0D; - try { - xpLost = Double.parseDouble(args[2]); - } catch (NumberFormatException e) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.error")); - return true; - } - if (xpLost <= 0 || xpLost > Double.MAX_VALUE) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.error")); - return true; - } - // check if player already has the job - if (jPlayer.isInJob(job)) { - Jobs.getPlayerManager().removeExperience(jPlayer, job, xpLost); + Job job = Jobs.getJob(args[1]); + if (job == null) { + Language.sendMessage(sender, "general.error.job"); + return null; + } + double xpLost = 0D; + try { + xpLost = Double.parseDouble(args[2]); + } catch (NumberFormatException e) { + Language.sendMessage(sender, "general.admin.error"); + return true; + } + if (xpLost <= 0 || xpLost > Double.MAX_VALUE) { + Language.sendMessage(sender, "general.admin.error"); + return true; + } + // check if player already has the job + if (jPlayer.isInJob(job)) { + Jobs.getPlayerManager().removeExperience(jPlayer, job, xpLost); - Player player = jPlayer.getPlayer(); - if (player != null) { - player.sendMessage(Jobs.getLanguage().getMessage("command.removexp.output.target", - "%jobname%", job.getDisplayName(), - "%xplost%", xpLost)); - } + Player player = jPlayer.getPlayer(); + if (player != null) { + Language.sendMessage(player, "command.removexp.output.target", + "%jobname%", job.getDisplayName(), + "%xplost%", xpLost); + } - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.success")); - } - return true; + Language.sendMessage(sender, "general.admin.success"); + } + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/resetexploreregion.java b/src/main/java/com/gamingmesh/jobs/commands/list/resetexploreregion.java index ecb2eb53..1d08d370 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/resetexploreregion.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/resetexploreregion.java @@ -4,6 +4,7 @@ import org.bukkit.command.CommandSender; import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; +import com.gamingmesh.jobs.i18n.Language; public class resetexploreregion implements Cmd { @@ -12,24 +13,23 @@ public class resetexploreregion implements Cmd { @Override public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { - if (args.length != 2 || !WORLD.equals(args[0])) { - Jobs.getCommandManager().sendUsage(sender, "resetexploreregion"); - return true; - } + if (args.length != 2 || !WORLD.equals(args[0])) { + return false; + } - if (!Jobs.getGCManager().resetExploringData) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.resetexploreregion.output.notenabled")); - return true; - } + if (!Jobs.getGCManager().resetExploringData) { + Language.sendMessage(sender, "command.resetexploreregion.output.notenabled"); + return true; + } - final String worldName = args[1]; - if (!worldName.matches(REGEX)) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.resetexploreregion.output.invalidname")); - return true; - } + final String worldName = args[1]; + if (!worldName.matches(REGEX)) { + Language.sendMessage(sender, "command.resetexploreregion.output.invalidname"); + return true; + } - Jobs.getExploreManager().resetRegion(worldName); - sender.sendMessage(Jobs.getLanguage().getMessage("command.resetexploreregion.output.reseted", "%worldname%", worldName)); - return true; + Jobs.getExploreManager().resetRegion(worldName); + Language.sendMessage(sender, "command.resetexploreregion.output.reseted", "%worldname%", worldName); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/resetlimit.java b/src/main/java/com/gamingmesh/jobs/commands/list/resetlimit.java index 794f1c6d..4ac77a30 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/resetlimit.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/resetlimit.java @@ -4,36 +4,36 @@ import org.bukkit.command.CommandSender; import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; public class resetlimit implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (args.length != 1) { - Jobs.getCommandManager().sendUsage(sender, "resetlimit"); - return true; - } + if (args.length != 1) { + return false; + } - if (args[0].equalsIgnoreCase("all")) { - for (org.bukkit.entity.Player pl : org.bukkit.Bukkit.getOnlinePlayers()) { - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(pl); - if (jPlayer != null) { - jPlayer.resetPaymentLimit(); - } - } + if (args[0].equalsIgnoreCase("all")) { + for (org.bukkit.entity.Player pl : org.bukkit.Bukkit.getOnlinePlayers()) { + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(pl); + if (jPlayer != null) { + jPlayer.resetPaymentLimit(); + } + } - sender.sendMessage(Jobs.getLanguage().getMessage("command.resetlimit.output.reseted", "%playername%", "")); - return true; - } + Language.sendMessage(sender, "command.resetlimit.output.reseted", "%playername%", ""); + return true; + } - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args[0])); - return true; - } + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + if (jPlayer == null) { + Language.sendMessage(sender, "general.error.noinfoByPlayer", "%playername%", args[0]); + return true; + } - jPlayer.resetPaymentLimit(); - sender.sendMessage(Jobs.getLanguage().getMessage("command.resetlimit.output.reseted", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getDisplayName())); - return true; + jPlayer.resetPaymentLimit(); + Language.sendMessage(sender, "command.resetlimit.output.reseted", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getDisplayName()); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/resetquest.java b/src/main/java/com/gamingmesh/jobs/commands/list/resetquest.java index d3bcf71a..2bbe8da3 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/resetquest.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/resetquest.java @@ -10,6 +10,7 @@ import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.container.QuestProgression; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Locale.LC; @@ -17,15 +18,14 @@ public class resetquest implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - + if (!Jobs.getGCManager().DailyQuestsEnabled) { LC.info_FeatureNotEnabled.sendMessage(sender); return true; } - + if (args.length != 0 && args.length != 1 && args.length != 2) { - Jobs.getCommandManager().sendUsage(sender, "resetquest"); - return true; + return false; } JobsPlayer jPlayer = null; @@ -44,7 +44,7 @@ public class resetquest implements Cmd { jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args.length > 0 ? args[0] : "")); + Language.sendMessage(sender, "general.error.noinfoByPlayer", "%playername%", args.length > 0 ? args[0] : ""); return true; } @@ -54,12 +54,12 @@ public class resetquest implements Cmd { quests = jPlayer.getQuestProgressions(job); if (quests.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.resetquest.output.noQuests")); + Language.sendMessage(sender, "command.resetquest.output.noQuests"); return true; } jPlayer.resetQuests(quests); - sender.sendMessage(Jobs.getLanguage().getMessage("command.resetquest.output.reseted", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getName())); + Language.sendMessage(sender, "command.resetquest.output.reseted", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getName()); return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/resetquesttotal.java b/src/main/java/com/gamingmesh/jobs/commands/list/resetquesttotal.java index c35206bf..e3b5df6e 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/resetquesttotal.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/resetquesttotal.java @@ -10,6 +10,7 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Locale.LC; @@ -23,8 +24,7 @@ public class resetquesttotal implements Cmd { } if (args.length != 0 && args.length != 1) { - Jobs.getCommandManager().sendUsage(sender, "resetquesttotal"); - return true; + return false; } if (args.length > 0 && args[0].equalsIgnoreCase("all")) { @@ -32,7 +32,7 @@ public class resetquesttotal implements Cmd { pl.getValue().setDoneQuests(0); } Jobs.getJobsDAO().resetDoneQuests(); - sender.sendMessage(Jobs.getLanguage().getMessage("command.resetquesttotal.output.reseted", "%playername%", Jobs.getPlayerManager().getPlayersCache().size())); + Language.sendMessage(sender,"command.resetquesttotal.output.reseted", "%playername%", Jobs.getPlayerManager().getPlayersCache().size()); return true; } @@ -52,14 +52,14 @@ public class resetquesttotal implements Cmd { jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args.length > 0 ? args[0] : "")); + Language.sendMessage(sender,"general.error.noinfoByPlayer", "%playername%", args.length > 0 ? args[0] : ""); return true; } jPlayer.setDoneQuests(0); jPlayer.setSaved(false); jPlayer.save(); - sender.sendMessage(Jobs.getLanguage().getMessage("command.resetquesttotal.output.reseted", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getDisplayName())); + Language.sendMessage(sender,"command.resetquesttotal.output.reseted", "%playername%", jPlayer.getName(), "%playerdisplayname%", jPlayer.getDisplayName()); return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/schedule.java b/src/main/java/com/gamingmesh/jobs/commands/list/schedule.java index cb7fac49..fe05fa7a 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/schedule.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/schedule.java @@ -9,6 +9,7 @@ import org.bukkit.configuration.file.FileConfiguration; import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; +import com.gamingmesh.jobs.i18n.Language; public class schedule implements Cmd { @@ -16,7 +17,7 @@ public class schedule implements Cmd { public Boolean perform(final Jobs plugin, final CommandSender sender, final String[] args) { if (args.length < 2) { Jobs.getCommandManager().sendUsage(sender, "schedule"); - return true; + return null; } if (args[0].equalsIgnoreCase("enable")) { @@ -32,12 +33,12 @@ public class schedule implements Cmd { ConfigurationSection path = c.getConfigurationSection("Boost." + name); if (path == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.schedule.output.noScheduleFound")); - return false; + Language.sendMessage(sender,"command.schedule.output.noScheduleFound"); + return null; } if (path.getBoolean("Enabled")) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.schedule.output.alreadyEnabled")); + Language.sendMessage(sender,"command.schedule.output.alreadyEnabled"); return true; } @@ -63,7 +64,7 @@ public class schedule implements Cmd { Jobs.getScheduleManager().load(); Jobs.getScheduleManager().start(); - sender.sendMessage(Jobs.getLanguage().getMessage("command.schedule.output.enabled", "%until%", until, "%from%", from)); + Language.sendMessage(sender,"command.schedule.output.enabled", "%until%", until, "%from%", from); } return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/shop.java b/src/main/java/com/gamingmesh/jobs/commands/list/shop.java index 07c719fc..ed2b7b33 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/shop.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/shop.java @@ -15,17 +15,16 @@ public class shop implements Cmd { if (!Jobs.getGCManager().jobsshopenabled) { LC.info_FeatureNotEnabled.sendMessage(sender); - return true; + return null; } if (!(sender instanceof Player)) { LC.info_Ingame.sendMessage(sender); - return true; + return null; } if (args.length != 0 && args.length != 1) { - Jobs.getCommandManager().sendUsage(sender, "shop"); - return true; + return false; } int page = 1; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/signupdate.java b/src/main/java/com/gamingmesh/jobs/commands/list/signupdate.java index 29357564..f7d94731 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/signupdate.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/signupdate.java @@ -6,40 +6,43 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.Signs.SignTopType; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; +import com.gamingmesh.jobs.i18n.Language; + +import net.Zrips.CMILib.Locale.LC; public class signupdate implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (!Jobs.getGCManager().SignsEnabled) - return true; + if (!Jobs.getGCManager().SignsEnabled) { + LC.info_FeatureNotEnabled.sendMessage(sender); + return null; + } - if (args.length != 1) { - Jobs.getCommandManager().sendUsage(sender, "signupdate"); - return true; - } + if (args.length != 1) { + return false; + } - if (args[0].equalsIgnoreCase("all")) { - Jobs.getJobs().forEach(Jobs.getSignUtil()::signUpdate); - return true; - } + if (args[0].equalsIgnoreCase("all")) { + Jobs.getJobs().forEach(Jobs.getSignUtil()::signUpdate); + return true; + } - Job oldjob = Jobs.getJob(args[0]); - if (oldjob == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } + Job oldjob = Jobs.getJob(args[0]); + if (oldjob == null) { + Language.sendMessage(sender, "general.error.job"); + return null; + } - if (args.length == 2) { - SignTopType type = SignTopType.getType(args[1]); - if (type != null) { - Jobs.getSignUtil().signUpdate(oldjob, type); - } + if (args.length == 2) { + SignTopType type = SignTopType.getType(args[1]); + if (type != null) { + Jobs.getSignUtil().signUpdate(oldjob, type); + } + return true; + } - return true; - } - - Jobs.getSignUtil().signUpdate(oldjob); - return true; + Jobs.getSignUtil().signUpdate(oldjob); + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java b/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java index 0c63b33e..32961c9d 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java @@ -12,6 +12,7 @@ import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.container.Quest; import com.gamingmesh.jobs.container.QuestProgression; import com.gamingmesh.jobs.economy.BufferedEconomy; +import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Locale.LC; @@ -21,11 +22,11 @@ public class skipquest implements Cmd { public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (!Jobs.getGCManager().DailyQuestsEnabled) { LC.info_FeatureNotEnabled.sendMessage(sender); - return true; + return null; } + if (args.length != 2 && args.length != 3) { - Jobs.getCommandManager().sendUsage(sender, "skipquest"); - return true; + return false; } JobsPlayer jPlayer = null; @@ -53,8 +54,8 @@ public class skipquest implements Cmd { jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args.length > 0 ? args[0] : "")); - return true; + Language.sendMessage(sender, "general.error.noinfoByPlayer", "%playername%", args.length > 0 ? args[0] : ""); + return null; } List quests = jPlayer.getQuestProgressions(); @@ -63,8 +64,8 @@ public class skipquest implements Cmd { quests = jPlayer.getQuestProgressions(job); if (quests == null || quests.isEmpty()) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.resetquest.output.noQuests")); - return true; + Language.sendMessage(sender, "command.resetquest.output.noQuests"); + return null; } Quest old = null; @@ -99,8 +100,8 @@ public class skipquest implements Cmd { if (amount > 0 && player != null) { if (!econ.getEconomy().hasMoney(player, amount)) { - sender.sendMessage(Jobs.getLanguage().getMessage("economy.error.nomoney")); - return false; + Language.sendMessage(sender, "economy.error.nomoney"); + return null; } econ.getEconomy().withdrawPlayer(player, amount); @@ -112,7 +113,7 @@ public class skipquest implements Cmd { plugin.getServer().dispatchCommand(player, "jobs quests"); if (amount > 0) { - sender.sendMessage(Jobs.getLanguage().getMessage("command.skipquest.output.questSkipForCost", "%amount%", amount)); + Language.sendMessage(sender, "command.skipquest.output.questSkipForCost", "%amount%", amount); } return true; diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/stats.java b/src/main/java/com/gamingmesh/jobs/commands/list/stats.java index 87a37459..16d6e018 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/stats.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/stats.java @@ -24,8 +24,8 @@ public class stats implements Cmd { if (!Jobs.hasPermission(sender, "jobs.command.admin.stats", true)) return true; jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - } else if (sender instanceof Player p) - jPlayer = Jobs.getPlayerManager().getJobsPlayer(p); + } else if (sender instanceof Player) + jPlayer = Jobs.getPlayerManager().getJobsPlayer((Player) sender); if (jPlayer == null) { if (args.length >= 1) diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/toggle.java b/src/main/java/com/gamingmesh/jobs/commands/list/toggle.java index 3869cc3f..5fc0647e 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/toggle.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/toggle.java @@ -7,6 +7,7 @@ import org.bukkit.entity.Player; import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; import com.gamingmesh.jobs.stuff.ToggleBarHandling; import net.Zrips.CMILib.Locale.LC; @@ -16,48 +17,47 @@ public class toggle implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (!(sender instanceof Player)) { - CMIMessages.sendMessage(sender, LC.info_Ingame); - return false; - } + if (!(sender instanceof Player)) { + CMIMessages.sendMessage(sender, LC.info_Ingame); + return null; + } - boolean isBossbar = false, isActionbar = false; - if (args.length != 1 || (!(isBossbar = args[0].equalsIgnoreCase("bossbar")) && !(isActionbar = args[0].equalsIgnoreCase("actionbar")))) { - Jobs.getCommandManager().sendUsage(sender, "toggle"); - return true; - } + boolean isBossbar = false, isActionbar = false; + if (args.length != 1 || (!(isBossbar = args[0].equalsIgnoreCase("bossbar")) && !(isActionbar = args[0].equalsIgnoreCase("actionbar")))) { + return false; + } - Player player = (Player) sender; - String playerUUID = player.getUniqueId().toString(); + Player player = (Player) sender; + String playerUUID = player.getUniqueId().toString(); - if (isActionbar) { - Boolean ex = ToggleBarHandling.getActionBarToggle().get(playerUUID); + if (isActionbar) { + Boolean ex = ToggleBarHandling.getActionBarToggle().get(playerUUID); - if (ex == null || ex.booleanValue()) { - ToggleBarHandling.getActionBarToggle().put(playerUUID, false); - sender.sendMessage(Jobs.getLanguage().getMessage("command.toggle.output.off")); - } else { - ToggleBarHandling.getActionBarToggle().put(playerUUID, true); - sender.sendMessage(Jobs.getLanguage().getMessage("command.toggle.output.on")); - } - } + if (ex == null || ex.booleanValue()) { + ToggleBarHandling.getActionBarToggle().put(playerUUID, false); + Language.sendMessage(sender, "command.toggle.output.off"); + } else { + ToggleBarHandling.getActionBarToggle().put(playerUUID, true); + Language.sendMessage(sender, "command.toggle.output.on"); + } + } - if (isBossbar) { - Boolean ex = ToggleBarHandling.getBossBarToggle().get(playerUUID); + if (isBossbar) { + Boolean ex = ToggleBarHandling.getBossBarToggle().get(playerUUID); - if (ex == null || ex.booleanValue()) { - ToggleBarHandling.getBossBarToggle().put(playerUUID, false); - sender.sendMessage(Jobs.getLanguage().getMessage("command.toggle.output.off")); + if (ex == null || ex.booleanValue()) { + ToggleBarHandling.getBossBarToggle().put(playerUUID, false); + Language.sendMessage(sender, "command.toggle.output.off"); - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(player.getUniqueId()); - if (jPlayer != null) - jPlayer.hideBossBars(); - } else { - ToggleBarHandling.getBossBarToggle().put(playerUUID, true); - sender.sendMessage(Jobs.getLanguage().getMessage("command.toggle.output.on")); - } - } + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(player.getUniqueId()); + if (jPlayer != null) + jPlayer.hideBossBars(); + } else { + ToggleBarHandling.getBossBarToggle().put(playerUUID, true); + Language.sendMessage(sender, "command.toggle.output.on"); + } + } - return true; + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/top.java b/src/main/java/com/gamingmesh/jobs/commands/list/top.java index 09a1a3e2..09dc77b5 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/top.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/top.java @@ -24,11 +24,10 @@ public class top implements Cmd { public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { if (args.length != 1 && args.length != 2) { - Jobs.getCommandManager().sendUsage(sender, "top"); return false; } - Player player = sender instanceof Player p ? p : null; + Player player = sender instanceof Player ? (Player) sender : null; if (args[0].equalsIgnoreCase("clear")) { if (player != null) { @@ -43,7 +42,7 @@ public class top implements Cmd { try { page = Integer.parseInt(args[1]); } catch (NumberFormatException e) { - return true; + return false; } } if (page < 1) @@ -52,7 +51,7 @@ public class top implements Cmd { Job job = Jobs.getJob(args[0]); if (job == null) { Language.sendMessage(sender, "command.top.error.nojob"); - return false; + return null; } int workingIn = Jobs.getUsedSlots(job); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/transfer.java b/src/main/java/com/gamingmesh/jobs/commands/list/transfer.java index 91ee0ce9..8a8df026 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/transfer.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/transfer.java @@ -7,51 +7,50 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.commands.Cmd; import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.JobsPlayer; +import com.gamingmesh.jobs.i18n.Language; public class transfer implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - if (args.length < 3) { - Jobs.getCommandManager().sendUsage(sender, "transfer"); - return true; - } + if (args.length < 3) { + return false; + } - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); - if (jPlayer == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.noinfoByPlayer", "%playername%", args[0])); - return true; - } + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(args[0]); + if (jPlayer == null) { + Language.sendMessage(sender, "general.error.noinfoByPlayer", "%playername%", args[0]); + return true; + } - Job oldjob = Jobs.getJob(args[1]); - if (oldjob == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } + Job oldjob = Jobs.getJob(args[1]); + if (oldjob == null) { + Language.sendMessage(sender, "general.error.job"); + return true; + } - Job newjob = Jobs.getJob(args[2]); - if (newjob == null) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.error.job")); - return true; - } + Job newjob = Jobs.getJob(args[2]); + if (newjob == null) { + Language.sendMessage(sender, "general.error.job"); + return true; + } - try { - if (jPlayer.isInJob(oldjob) && !jPlayer.isInJob(newjob)) { - Jobs.getPlayerManager().transferJob(jPlayer, oldjob, newjob); + try { + if (jPlayer.isInJob(oldjob) && !jPlayer.isInJob(newjob)) { + Jobs.getPlayerManager().transferJob(jPlayer, oldjob, newjob); - Player player = jPlayer.getPlayer(); - if (player != null) { - player.sendMessage(Jobs.getLanguage().getMessage("command.transfer.output.target", - "%oldjobname%", oldjob.getDisplayName(), - "%newjobname%", newjob.getDisplayName())); - } + Player player = jPlayer.getPlayer(); + if (player != null) { + Language.sendMessage(player, "command.transfer.output.target", + "%oldjobname%", oldjob.getDisplayName(), + "%newjobname%", newjob.getDisplayName()); + } + Language.sendMessage(sender, "general.admin.success"); + } + } catch (Exception e) { + Language.sendMessage(sender, "general.admin.error"); + } - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.success")); - } - } catch (Exception e) { - sender.sendMessage(Jobs.getLanguage().getMessage("general.admin.error")); - } - - return true; + return true; } } From 86c94786cfb12f24068fd2303db31ce0ab78a0f9 Mon Sep 17 00:00:00 2001 From: Zrips Date: Wed, 3 May 2023 14:26:04 +0300 Subject: [PATCH 14/31] Optimize permission check --- .../java/com/gamingmesh/jobs/PermissionManager.java | 12 +++++++++--- .../com/gamingmesh/jobs/commands/list/boost.java | 1 - .../gamingmesh/jobs/commands/list/entitylist.java | 2 +- .../gamingmesh/jobs/container/QuestProgression.java | 9 +++++---- .../com/gamingmesh/jobs/listeners/JobsListener.java | 6 +++--- 5 files changed, 18 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/PermissionManager.java b/src/main/java/com/gamingmesh/jobs/PermissionManager.java index 01ee9281..c89f6e55 100644 --- a/src/main/java/com/gamingmesh/jobs/PermissionManager.java +++ b/src/main/java/com/gamingmesh/jobs/PermissionManager.java @@ -53,7 +53,9 @@ public class PermissionManager { jobs_maxblastfurnaces_AMOUNT(remade("jobs.maxblastfurnaces.%AMOUNT%"), 30), jobs_maxsmokers_AMOUNT(remade("jobs.maxsmokers.%AMOUNT%"), 30), jobs_maxbrewingstands_AMOUNT(remade("jobs.maxbrewingstands.%AMOUNT%"), 30), - jobs_world_WORLDNAME(remade("jobs.world.%WORLDNAME%"), 2); + jobs_world_WORLDNAME(remade("jobs.world.%WORLDNAME%"), 2), + jobs_maxquest_JOBNAME_AMOUNT(remade("jobs.maxquest.%JOBNAME%.%AMOUNT%"), 30), + jobs_maxquest_all_AMOUNT(remade("jobs.maxquest.all.%AMOUNT%"), 30); private int reload; private List perms; @@ -93,7 +95,7 @@ public class PermissionManager { } private int getDelay(String perm) { - return permDelay.getOrDefault(perm, 1); + return permDelay.getOrDefault(perm, 1000); } public PermissionManager() { @@ -165,7 +167,11 @@ public class PermissionManager { double amount = Double.NEGATIVE_INFINITY; permissionInfo permInfo = jPlayer.getPermissionsCache(perm); + if (force || getDelay(perm) + permInfo.getTime() < System.currentTimeMillis()) { + + CMIDebug.c("get", force, getDelay(perm) + permInfo.getTime() < System.currentTimeMillis(), getDelay(perm), permInfo.getTime(), perm); + Map perms = getAll(player, perm); for (Map.Entry permission : perms.entrySet()) { if (!permission.getKey().startsWith(perm) || !permission.getValue()) @@ -176,7 +182,7 @@ public class PermissionManager { if (amount == Double.NEGATIVE_INFINITY) amount = 0D; amount += temp; - }else if (temp > amount) + } else if (temp > amount) amount = temp; } catch (NumberFormatException ex) { Jobs.getPluginLogger().log(java.util.logging.Level.WARNING, ex.getLocalizedMessage()); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/boost.java b/src/main/java/com/gamingmesh/jobs/commands/list/boost.java index d46ef79d..8248709f 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/boost.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/boost.java @@ -167,7 +167,6 @@ public class boost implements Cmd { if (job.getBoost().getTime(curr) != null && job.getBoost().isValid(curr)) { rm.addHover(CMITimeManager.to24hourShort(job.getBoost().getTime(curr) - System.currentTimeMillis())); - CMIDebug.c(job.getBoost().getTime(curr) - System.currentTimeMillis()); } } if (split.length > 1) diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/entitylist.java b/src/main/java/com/gamingmesh/jobs/commands/list/entitylist.java index a9ce5048..f1ebe907 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/entitylist.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/entitylist.java @@ -36,7 +36,7 @@ public class entitylist implements Cmd { msg.append(c2); } - msg.append(CMIText.firstToUpperCase(type.name())); + msg.append(CMIText.everyFirstToUpperCase(type.name())); } CMIMessages.sendMessage(sender, msg.toString()); diff --git a/src/main/java/com/gamingmesh/jobs/container/QuestProgression.java b/src/main/java/com/gamingmesh/jobs/container/QuestProgression.java index 6829e3bc..e38dba16 100644 --- a/src/main/java/com/gamingmesh/jobs/container/QuestProgression.java +++ b/src/main/java/com/gamingmesh/jobs/container/QuestProgression.java @@ -157,23 +157,24 @@ public class QuestProgression { } } + boolean completed = isCompleted(); + Job questJob = quest.getJob(); - if (questJob != null) { + if (questJob != null && completed) { int maxQuest = jPlayer.getPlayerMaxQuest(questJob.getName()); if (maxQuest > 0 && jPlayer.getDoneQuests() >= maxQuest) { return; } } - if (!isCompleted() && - objective != null) { + if (!completed && objective != null) { Integer old = done.getOrDefault(objective, 0); done.put(objective, old < objective.getAmount() ? old + 1 : objective.getAmount()); } jPlayer.setSaved(false); - if (!isCompleted() || !player.isOnline() || givenReward) + if (!completed || !player.isOnline() || givenReward) return; givenReward = true; diff --git a/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java b/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java index 12383444..53a1fd52 100644 --- a/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java +++ b/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java @@ -531,9 +531,9 @@ public class JobsListener implements Listener { Chunk from = event.getFrom().getChunk(); Chunk to = event.getTo().getChunk(); - if (from != to) { - plugin.getServer().getPluginManager().callEvent(new JobsChunkChangeEvent(event.getPlayer(), from, to)); - } +// if (from != to) { +// plugin.getServer().getPluginManager().callEvent(new JobsChunkChangeEvent(event.getPlayer(), from, to)); +// } } @EventHandler(ignoreCancelled = true) From b7f6de79654e6d8160c1ef74d9c148f48172f033 Mon Sep 17 00:00:00 2001 From: Zrips Date: Wed, 3 May 2023 14:28:49 +0300 Subject: [PATCH 15/31] Fix for JobsChunkChangeEvent --- .../java/com/gamingmesh/jobs/listeners/JobsListener.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java b/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java index 53a1fd52..1cc822f9 100644 --- a/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java +++ b/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java @@ -87,6 +87,7 @@ import net.Zrips.CMILib.Items.ArmorTypes; import net.Zrips.CMILib.Items.CMIItemStack; import net.Zrips.CMILib.Items.CMIMaterial; import net.Zrips.CMILib.Locale.LC; +import net.Zrips.CMILib.Logs.CMIDebug; import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.NBT.CMINBT; import net.Zrips.CMILib.Version.Version; @@ -137,7 +138,7 @@ public class JobsListener implements Listener { return; Player player = event.getPlayer(); - + if (CMIItemStack.getItemInMainHand(player).getType() != CMIMaterial.get(Jobs.getGCManager().getSelectionTool()).getMaterial()) return; @@ -531,9 +532,9 @@ public class JobsListener implements Listener { Chunk from = event.getFrom().getChunk(); Chunk to = event.getTo().getChunk(); -// if (from != to) { -// plugin.getServer().getPluginManager().callEvent(new JobsChunkChangeEvent(event.getPlayer(), from, to)); -// } + if (!from.equals(to)) { + plugin.getServer().getPluginManager().callEvent(new JobsChunkChangeEvent(event.getPlayer(), from, to)); + } } @EventHandler(ignoreCancelled = true) From 35e4b81b1d6b3401b93a4ee6e039f48b22a09507 Mon Sep 17 00:00:00 2001 From: Zrips Date: Wed, 3 May 2023 15:31:09 +0300 Subject: [PATCH 16/31] Version up --- pom.xml | 2 +- .../com/gamingmesh/jobs/listeners/JobsListener.java | 12 +++++------- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/pom.xml b/pom.xml index c68c1da2..f68f580f 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ 4.0.0 Jobs jobs - 5.1.2.2 + 5.1.3.0 Jobs http://maven.apache.org diff --git a/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java b/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java index 1cc822f9..0d59442e 100644 --- a/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java +++ b/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java @@ -539,13 +539,6 @@ public class JobsListener implements Listener { @EventHandler(ignoreCancelled = true) public void onInventoryClick(InventoryClickEvent event) { - boolean shift = false, numberkey = false; - - if (event.getClick() == ClickType.SHIFT_LEFT || event.getClick() == ClickType.SHIFT_RIGHT) - shift = true; - - if (event.getClick() == ClickType.NUMBER_KEY) - numberkey = true; SlotType slotType = event.getSlotType(); @@ -555,6 +548,8 @@ public class JobsListener implements Listener { if (!(event.getWhoClicked() instanceof Player) || event.getCurrentItem() == null) return; + boolean shift = event.getClick() == ClickType.SHIFT_LEFT || event.getClick() == ClickType.SHIFT_RIGHT; + ArmorTypes newArmorType = ArmorTypes.matchType(shift ? event.getCurrentItem() : event.getCursor()); if (!shift && newArmorType != null && event.getRawSlot() != newArmorType.getSlot()) return; @@ -587,6 +582,9 @@ public class JobsListener implements Listener { } } } else { + + boolean numberkey = event.getClick() == ClickType.NUMBER_KEY; + ItemStack newArmorPiece = event.getCursor(); ItemStack oldArmorPiece = event.getCurrentItem(); if (numberkey) { From 9101ef5be8e202ba75331831288baf41258e967f Mon Sep 17 00:00:00 2001 From: Zrips Date: Wed, 3 May 2023 16:36:54 +0300 Subject: [PATCH 17/31] Boost command fix --- .../com/gamingmesh/jobs/commands/list/boost.java | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/boost.java b/src/main/java/com/gamingmesh/jobs/commands/list/boost.java index 8248709f..9e24e2a8 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/boost.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/boost.java @@ -68,7 +68,7 @@ public class boost implements Cmd { } } - if (job == null && rate == null) { + if (job == null && rate == null && !reset) { LC.info_Spliter.sendMessage(sender); for (Job one : Jobs.getJobs()) { showBoosts(sender, one); @@ -89,32 +89,30 @@ public class boost implements Cmd { timeDuration = 0L; if (reset) { - if (allJobs) { + if (job == null) { if (type == null) { for (Job one : Jobs.getJobs()) { for (CurrencyType curr : CurrencyType.values()) { - one.addBoost(curr, 1.0); + one.addBoost(curr, 0); } } Language.sendMessage(sender, "command.boost.output.allreset"); } else { for (Job one : Jobs.getJobs()) { - one.addBoost(type, 1.0); + one.addBoost(type, 0); } Language.sendMessage(sender, "command.boost.output.alltypereset", "%type%", type.getDisplayName()); } - } else if (job != null) { + } else { if (type == null) { for (CurrencyType curr : CurrencyType.values()) { - job.addBoost(curr, 1.0); + job.addBoost(curr, 0); } Language.sendMessage(sender, "command.moneyboost.output.jobsboostreset", "%jobname%", job.getName()); } else { - job.addBoost(type, 1.0); + job.addBoost(type, 0); Language.sendMessage(sender, "command.moneyboost.output.jobstypeboostreset", "%jobname%", job.getName(), "%type%", type.getDisplayName()); } - } else { - return false; } return true; } From 8e2a6b80f727afad9ad67e390e226ded7f9fba7b Mon Sep 17 00:00:00 2001 From: martijnpu <38832167+martijnpu@users.noreply.github.com> Date: Fri, 5 May 2023 22:40:34 +0200 Subject: [PATCH 18/31] Update messages_nl_NL.yml --- src/main/resources/locale/messages_nl_NL.yml | 340 +++++++++---------- 1 file changed, 170 insertions(+), 170 deletions(-) diff --git a/src/main/resources/locale/messages_nl_NL.yml b/src/main/resources/locale/messages_nl_NL.yml index 99f573e5..125b8265 100644 --- a/src/main/resources/locale/messages_nl_NL.yml +++ b/src/main/resources/locale/messages_nl_NL.yml @@ -4,7 +4,7 @@ economy: nomoney: '&cSorry, geen geld over in de nationale bank.' limitedItem: error: - levelup: '&cJe moet levelen in [jobname] om deze item te gebruiken!' + levelup: '&cJe moet niveaus omhoog in [jobname] om deze item te gebruiken!' general: info: toplineseparator: '&7*********************** &6%playername% &7***********************' @@ -18,10 +18,10 @@ general: 'true': '&2True' 'false': '&cFalse' blocks: - furnace: Furnace - smoker: Smoker - blastfurnace: Blast furnace - brewingstand: Brewing stand + furnace: Oven + smoker: Roker + blastfurnace: Hoogoven + brewingstand: Brouwstand admin: error: '&cEr is een fout opgetreden in de command.' success: '&eJe command is uitgevoerd.' @@ -36,8 +36,8 @@ general: ingame: '&cJe kan deze command alleen uitvoeren in game!' fromconsole: '&cJe kan deze command alleen uitvoeren in console!' worldisdisabled: '&cJe kan deze command niet uitvoeren in deze wereld' - newRegistration: '&eRegistered new ownership for [block] &7[current]&e/&f[max]' - noRegistration: '&cYou''ve reached max [block] count!' + newRegistration: '&eGeregistreerd nieuw eigendom voor [block] &7[current]&e/&f[max]' + noRegistration: '&cJe hebt de maximale registraties voor [block] bereikt!' command: help: output: @@ -56,8 +56,8 @@ command: nextPageOff: '&7 Volgende >>----' pageCount: '&2[current]/[total]' pageCountHover: '&e[totalEntries] entries' - prevPageGui: '&6Previous page ' - nextPageGui: '&6Next Page' + prevPageGui: '&6Vorige Pagina ' + nextPageGui: '&6Volgende Pagina' moneyboost: help: info: Verhoogt de geldwinst voor alle spelers @@ -93,12 +93,12 @@ command: infostats: '&c-----> &aExptarief x%boost% ingeschakeld&c <-------' schedule: help: - info: Enables the given scheduler + info: Zet het gegeven schema aan args: enable [scheduleName] [untilTime] output: - noScheduleFound: '&cSchedule with this name not found.' - alreadyEnabled: '&cThis schedule already enabled.' - enabled: '&eSchedule have been enabled from&a %from%&e until&a %until%' + noScheduleFound: '&cSchema met deze naam niet gevonden.' + alreadyEnabled: '&cDit schema en al aangezet.' + enabled: '&eSchema is aangezet vanm&a %from%&e tot&a %until%' itembonus: help: info: Controleer de itembonus @@ -107,7 +107,7 @@ command: list: '&e[jobname]: %money% %points% %exp%' notAplyingList: '&7[jobname]: %money% %points% %exp%' hover: '&7%itemtype%' - hoverLevelLimits: "&7From level: %from% \n&7Until level: %until%" + hoverLevelLimits: "&7Vanaf niveau: %from% \n&7Tot niveau: %until%" edititembonus: help: info: Verander de itembonus @@ -134,7 +134,7 @@ command: args: '' limit: help: - info: Laat betalingslimieten zien voor banen + info: Toon betalingslimieten voor banen args: '[playername]' output: moneytime: '&eResterende tijd totdat geldlimiet opnieuw wordt ingesteld: &2%time%' @@ -166,7 +166,7 @@ command: noQuests: '&eKan geen zoektoch vinden' points: help: - info: Laat zien hoeveel punten een speler heeft + info: Toon het puntentotaal van een speler args: '[playername]' currentpoints: ' &eHuidige puntbedrag: &6%currentpoints%' totalpoints: ' &eTotaal aantal verzamelde punten tot nu toe: &6%totalpoints%' @@ -202,7 +202,7 @@ command: lookHover: '&6Druk op om informatie te zoeken van blok dat je zoekt' editquests: help: - info: Edit current quests. + info: Wijzig huidige quests. args: '' list: quest: '&eQuests:' @@ -213,13 +213,13 @@ command: objectiveRemove: '&c[X]' objectiveAdd: ' -> &e[&2+&e]' modify: - newValue: '&eEnter new value' - enter: '&eEnter new name or press ' + newValue: '&eVul een nieuwe waarde in' + enter: '&eVul een nieuwe naam in of druk op ' hand: '&6HAND ' - handHover: '&6Press to grab info from item in your hand' - or: '&eor ' - look: '&6LOOKING AT' - lookHover: '&6Press to grab info from block you are looking' + handHover: '&6druk om de info te verkrijgen van het item in je hand' + or: '&eof ' + look: '&6KIJKEN NAAR' + lookHover: '&6Druk om de info te krijgen van het blok waar je naar kijkt' blockinfo: help: info: Toont blokinformatie waar u naar kijkt. @@ -240,26 +240,26 @@ command: usage: ' &eGebruik: &6%first% &eor &6%second%' placeholders: help: - info: List out all placeholders + info: Lijst van alle placeholders args: (parse) (placeholder) output: list: '&e[place]. &7[placeholder]' - outputResult: ' &eresult: &7[result]' - parse: '&6[placeholder] &7by [source] &6result &8|&f[result]&8|' + outputResult: ' &eresultaat: &7[result]' + parse: '&6[placeholder] &7door [source] &6resultaat &8|&f[result]&8|' entitylist: help: info: Toont alle mogelijke entities kunnen worden gebruikt met een plugin. args: '' stats: help: - info: Toont de level die je bent in elke baan. + info: Toont het niveau dat je bent in elke baan. args: '[playername]' error: nojob: Sluit eerst aan bij een baan. output: - message: 'Level %joblevel% for %jobname%: %jobxp%/%jobmaxxp% xp' - max-level: ' &cMax level - %jobname%' - bossBarOutput: 'Lvl %joblevel% %jobname%: %jobxp%/%jobmaxxp% xp%gain%' + message: 'Niveau %joblevel% voor %jobname%: %jobxp%/%jobmaxxp% xp' + max-level: ' &cMax niveau - %jobname%' + bossBarOutput: 'Niveau %joblevel% %jobname%: %jobxp%/%jobmaxxp% xp%gain%' bossBarGain: ' &7(&f%gain%&7)' shop: help: @@ -270,8 +270,8 @@ command: currentPoints: '&eJe hebt: &6%currentpoints%' price: '&ePrijs: &6%price%' reqJobs: '&eBenodigde baan:' - reqJobsList: ' &6%jobsname%&e: &e%level% lvl' - reqTotalLevel: '&6Benodigde level: &e%totalLevel%' + reqJobsList: ' &6%jobsname%&e: &eniveau %level%' + reqTotalLevel: '&6Benodigde niveau: &e%totalLevel%' reqJobsColor: '&c' reqJobsLevelColor: '&4' reqTotalLevelColor: '&4' @@ -280,7 +280,7 @@ command: NoPermToBuy: '&cGeen permissies om dit te kopen' NoJobReqForitem: '&cJe hebt niet de benodigde baan (&6%jobname%&e) met de benodigde (&6%joblevel%&e) level' NoPoints: '&cJe hebt niet genoeg punten' - NoTotalLevel: '&cTotale banen level is te laag (%totalLevel%)' + NoTotalLevel: '&cTotale banen niveau is te laag (%totalLevel%)' Paid: '&eJe hebt &6%amount% &ebetaald voor dit item' archive: help: @@ -298,17 +298,17 @@ command: info: help: title: '&2*** &eBanen&2 ***' - info: Laat zien hoeveel een baan wordt betaald en voor wat. + info: Toon hoeveel een baan betaald en voor wat. penalty: '&eDeze baan heeft &c[penalty]% &eboete vanwege te veel spelers die erin werken.' bonus: '&eDeze baan heeft &2[bonus]% &ebonus omdat er weinig spelers erin werken.' args: '[jobname] [action]' actions: '&eGeldige acties zijn: &f%actions%' - max: ' - &emaximale level:&f ' - newMax: ' &eMaximale level: &f[max]' + max: ' - &emaximale niveau:&f ' + newMax: ' &eMaximale niveau: &f[max]' material: '&7%material%' - levelRange: ' &a(&e%levelFrom% &a- &e%levelUntil% &alevels)' - levelFrom: ' &a(van &e%levelFrom% &alevel)' - levelUntil: ' &a(tot &e%levelUntil% &alevel)' + levelRange: ' &a(&e%levelFrom% &a- &e%levelUntil% &aniveau)' + levelFrom: ' &a(van &e%levelFrom% &aniveau)' + levelUntil: ' &a(tot &e%levelUntil% &aniveau)' money: ' &2%money%$' points: ' &6%points%pts' exp: ' &e%exp%xp' @@ -317,14 +317,14 @@ command: jobinfo: '&e[jobname] informatie!' actions: '&eGeldige acties zijn:' leftClick: '&eLinker Muisknop voor meer info' - middleClick: '&eMiddle Click to leave this job' + middleClick: '&eMiddelste Muisknop om deze baan te verlaten' rightClick: '&eRechter Muisknop om aan te sluiten bij de baan' leftSlots: '&eOpen plaatsen:&f ' working: '&2&nal aan het werken' - cantJoin: '&cYou can''t join to the selected job.' - max: '&eMaximale level:&f ' + cantJoin: '&cJe kan je niet aansluiten bij de geselecteerde baan.' + max: '&eMaximale niveau:&f ' back: '&e<<< Terug' - next: '&eNext >>>' + next: '&eVolgende >>>' output: break: info: '&eBreken' @@ -391,13 +391,13 @@ command: none: '%jobname% geeft geen geld voor custom-spelers slachten.' collect: info: '&eCollect' - none: '%jobname% does not get money for collecting blocks.' + none: '%jobname% geeft geen geld voor het verzamelen van blokken.' bake: info: '&eBake' - none: '%jobname% does not get money for cooking foods.' + none: '%jobname% geeft geen geld voor het koken van voedsel.' playerinfo: help: - info: Laat zien hoeveel elke baan wordt betaald en voor wat op een andere speler. + info: Toon hoeveel elke baan betaald en voor wat op een andere speler. args: '[playername] [jobname] [action]' join: help: @@ -410,30 +410,30 @@ command: rejoin: '&cJe kan niet opnieuw aansluiten. Wacht [time]' rejoin: '&aKlik hier om opnieuw aan te sluiten: ' success: Je bent bij de baan %jobname% aangesloten. - confirm: '&2Klik om de actie voor &7[jobname] &2baan te verifiëren.' + confirm: '&2Klik om de actie voor &7[jobname] &2baan te bevestigen.' leave: help: info: Verlaat de geselecteerde baan. args: '[oldplayerjob]' success: Je hebt de baan %jobname% verlaten. - confirmationNeed: '&cAre you sure you want to leave from&e [jobname]&c job? Type the command again within&6 [time] seconds &cto confirm!' + confirmationNeed: '&cWeet je zeker dat je de baan &e [jobname]&c wilt verlaten? Typ het commando opnieuw binnen&6 [time] secondes &com te bevestigen!' leaveall: help: info: Verlaat al je banen. error: nojobs: Je hebt geen baan om te verlaten! success: Je hebt al je banen verlaten. - confirmationNeed: '&cAre you sure you want to leave from all jobs? Type the command again within&6 [time] seconds &cto confirm!' + confirmationNeed: '&cWeet je zeker dat je all je banen wilt verlaten? Typ het commando opnieuw binnen&6 [time] secondes &com te bevestigen!' explored: help: info: Bekijk wie allemaal deze chunk heeft bezocht error: noexplore: Niemand heeft deze chunk bezocht - fullExplore: '&aThis chunk is fully explored' + fullExplore: '&aDeze chunk is al volledig onderzocht' list: '&e%place%. %playername%' browse: help: - info: Laat alle banen zien die jij kan joinen. + info: Toon alle banen die jij kan joinen. error: nojobs: Er zijn geen banen die je kan joinen. output: @@ -463,13 +463,13 @@ command: info: Blok van eigenaar wissen args: '[playername]' output: - cleared: '&2Removed &7[furnaces] &2furnaces, &7[brewing] &2brewing stands, &7[smoker]&2 smokers and &7[blast]&2 blast furnaces.' + cleared: '&2Verwijderd &7[furnaces] &2Ovens, &7[brewing] &2Brouwerijen, &7[smoker]&2 Rokers and &7[blast]&2 Hoogovens.' skipquest: help: - info: Skip defined quest and get new one + info: sla de gedefineerde quest over en krijg een nieuwe args: '[jobname] [questname] (playerName)' output: - questSkipForCost: '&2You skipped the quest and paid:&e %amount%$' + questSkipForCost: '&2Je hebt de quest overgeslagen en betaalde:&e %amount%$' quests: help: info: Lijst van beschikbare zoektochten @@ -478,233 +478,233 @@ command: noquests: '&cEr zijn geen zoektochten' toplineseparator: '&7*********************** &6[playerName] &2(&f[questsDone]&2) &7***********************' status: - changed: '&2The quests status has been changed to&r %status%' - started: '&aStarted' - stopped: '&cStopped' + changed: '&2De quests status is veranderd naar&r %status%' + started: '&aGestart' + stopped: '&cGestopt' output: completed: '&2 !Voltooid!&r ' questLine: '[progress] &7[questName] &f[done]&7/&8[required]' - skip: '&7Click to skip this quest' - skips: '&7Left skips: &f[skips]' - hover: "&f[jobName] \n[desc] \n&7New quest in: [time]" + skip: '&7Klik op deze quest over te slaan' + skips: '&7hoeveelheid overslaan: &f[skips]' + hover: "&f[jobName] \n[desc] \n&7Nieuwe quest na: [time]" fire: help: - info: Fire the player from the job. + info: Ontsla de speler van de baan. args: '[playername] [jobname]' error: - nojob: Player does not have the job %jobname%. + nojob: Speler werkt niet als %jobname%. output: - target: You have been fired from %jobname%. + target: Je bent ontslagen van %jobname%. fireall: help: - info: Fire player from all their jobs. + info: Ontsla speler van alle banen. args: '[playername]/all' error: - nojobs: Player does not have any jobs to be fired from! + nojobs: Speler heeft geeb banen om van ontslagen te worden! output: - target: You have been fired from all your jobs. + target: Je bent ontslagen van al je banen. employ: help: - info: Employ the player to the job. + info: Neem de speler in dienst. args: '[playername] [jobname]' error: - alreadyin: Player is already in the job %jobname%. - fullslots: You cannot join the job %jobname%, there are no slots available. + alreadyin: Speler is al in dienst van %jobname%. + fullslots: Je kan niet aangenomen worden als %jobname%, er zijn geen vrije plekken over. output: - target: You have been employed as a %jobname%. + target: Je bent aangenomen als een %jobname%. top: help: - info: Shows top players by jobs name. + info: Geeft de top spelers weer bij baan. args: '[jobname]/clear pageNumber' error: - nojob: Can't find any job with this name. + nojob: Kan geen banen vinden met deze naam. output: - topline: '&aTop&e %amount% &aplayers by &e%jobname% &ajob' - list: '&e%number%&a. &e%playername% &alvl &e%level% &awith&e %exp% &aexp' - prev: '&e<<<<< Prev page &2|' - next: '&2|&e Next Page >>>>' - show: '&2Show from &e[from] &2until &e[until] &2top list' + topline: '&aTop&e %amount% &aspelers bij &e%jobname% &abaan' + list: '&e%number%&a. &e%playername% &aniveau &e%level% &amet&e %exp% &aexp' + prev: '&e<<<<< Vorige Pagina &2|' + next: '&2|&e Volgende Pagina >>>>' + show: '&2Toon van &e[from] &2tot &e[until] &2top lijst' gtop: help: - info: Shows top players by global jobs level. + info: Geef top players weer bij globale baan niveaus. args: clear/pageNumber error: - nojob: Can't find any information. + nojob: Kan geen informatie vinden. output: - topline: '&aTop&e %amount% &aplayers by global job level' - list: '&e%number%&a. &e%playername% &alvl &e%level% &awith&e %exp% &aexp' - prev: '&e<<<<< Prev page &2|' - next: '&2|&e Next Page >>>>' - show: '&2Show from &e[from] &2until &e[until] &2global top list' + topline: '&aTop&e %amount% &aspelers bij globale baan niveau' + list: '&e%number%&a. &e%playername% &aniveau &e%level% &amet&e %exp% &aexp' + prev: '&e<<<<< Vorige Pagina &2|' + next: '&2|&e Volgende Pagina >>>>' + show: '&2Toon van &e[from] &2tot &e[until] &2globale top lijst' area: help: - info: Modify restricted areas. + info: Beperkte gebieden wijzigen. args: add/remove/info/list - addUsage: '&eUsage: &6/Jobs area add [areaName/wg:worldGuardAreaName] [bonus]' - removeUsage: '&eUsage: &6/Jobs area remove [areaName]' + addUsage: '&eGebruik: &6/Jobs area add [areaName/wg:worldGuardAreaNaam] [bonus]' + removeUsage: '&eGebruik: &6/Jobs area remove [areaNaam]' output: - addedNew: '&eAdded a new restricted area with &6%bonus% &ebonus' - removed: '&eRemoved the restricted area &6%name%' + addedNew: '&eNieuw beperkt gebied toegevoegd met &6%bonus% &ebonus' + removed: '&eBeperkt gebied &6%name% &everwijderd' list: '&e%number%&a. &e%areaname% &e%worldname% (&a%x1%:%y1%:%z1%/&e%x2%:%y2%:%z2%) &6%bonus%' wgList: '&e%number%&a. WorldGuard: &e%areaname% &6%bonus%' - noAreas: '&eThere are no saved restricted areas' - noAreasByLoc: '&eThere are no restricted areas in this location' - areaList: '&eRestricted areas by your location: &6%list%' - selected1: '&eSelected the first point: &6%x%:%y%:%z%' - selected2: '&eSelected the second point: &6%x%:%y%:%z%' - select: '&eSelect 2 points with the selection tool (%tool%)' - exist: '&eRestriction area by this name already exists' - dontExist: '&eRestriction area by this name does not exist' - wgDontExist: '&eWorldGuard area by this name does not exist' + noAreas: '&eEr zijn geen opgeslagen beperkte gebieden' + noAreasByLoc: '&eEr zijn geen beperkte gebieden op deze locatie' + areaList: '&eBepwerkt gebied op jouw locatie: &6%list%' + selected1: '&eEerste punt geselecteerd: &6%x%:%y%:%z%' + selected2: '&eTweede punt geselecteerd: &6%x%:%y%:%z%' + select: '&e2 punten geselecteerd met de selectie tool (%tool%)' + exist: '&Beperkt gebied met deze naam bestaat al' + dontExist: '&Beperkt gebied met deze naam bestaat niet' + wgDontExist: '&eWorldGuard gebied met deze naam bestaat niet' log: help: - info: Shows statistics. + info: Toon statistieken. args: '[playername]' output: topline: '&7************************* &6%playername% &7*************************' ls: '&7* &6%number%. &3%action%: &6%item% &eqty: %qty% %money%%exp%%points%' - money: '&6money: %amount% ' + money: '&6geld: %amount% ' exp: '&eexp: %amount% ' - points: '&6points: %amount%' - totalIncomes: ' &6Total money:&2 %money%&6, Total exp:&2 %exp%&6, Total points:&2 %points%' + points: '&6punten: %amount%' + totalIncomes: ' &6Totaalbedrag:&2 %money%&6, Exp totaal:&2 %exp%&6, Puntentotaal:&2 %points%' bottomline: '&7***********************************************************' - prev: '&e<<<<< Prev page &2|' - next: '&2|&e Next Page >>>>' - nodata: '&cData not found' + prev: '&e<<<<< Vorige Pagina &2|' + next: '&2|&e Volgende Pagina >>>>' + nodata: '&cData niet gevonden' glog: help: - info: Shows global statistics. + info: Toon globale statestieken. args: '' output: - topline: '&7*********************** &6Global statistics &7***********************' + topline: '&7*********************** &6Globale statestieken &7***********************' ls: '&7* &6%number%. &3%action%: &6%item% &eqty: %qty% %money%%exp%%points%' - money: '&6money: %amount% ' + money: '&6geld: %amount% ' exp: '&eexp: %amount% ' - points: '&6points: %amount%' - totalIncomes: ' &6Total money:&2 %money%&6, Total exp:&2 %exp%&6, Total points:&2 %points%' + points: '&6punten: %amount%' + totalIncomes: ' &6Totaalbedrag:&2 %money%&6, Exp totaal:&2 %exp%&6, Puntentotaal:&2 %points%' bottomline: '&7**************************************************************' - nodata: '&cData not found' + nodata: '&cData niet gevonden' transfer: help: - info: Transfer a player's job from an old job to a new job. + info: Plaats de speler over een oude baan naar een nieuwe baan. args: '[playername] [oldjob] [newjob]' output: - target: You have been transferred from %oldjobname% to %newjobname%. + target: Je bent overgeplaatst van %oldjobname% naar %newjobname%. promote: help: - info: Promote the player X levels in a job. + info: Promoveer de player X niveaus in een baan. args: '[playername] [jobname] [levels]' output: - target: You have been promoted %levelsgained% levels in %jobname%. + target: Je bent %levelsgained% gestegen in %jobname%. exp: help: - info: Change the player exp for job. + info: Verander de speler exp voor een baan. args: '[playername] [jobname] set/add/take [amount]' error: - nojob: '&cThis player must first join a job.' + nojob: '&cDeze speler moet eerst een baan hebben.' output: - target: '&eYour exp was changed for %jobname% &eand now you at &6%level%lvl &eand with &6%exp%exp.' + target: '&eJouw exp was veranderd voor %jobname% &een nu heb je &6niveau %level% &emet &6%exp%exp.' level: help: - info: Change the player's level in a job. + info: Verander het level van de speler in een baan. args: '[playername] [jobname] set/add/take [amount]' error: - nojob: '&cThis player must first join a job.' + nojob: '&cDeze speler moet eerst een baan hebben.' output: - target: '&eYour level was changed for %jobname% &eand now you at &6%level%lvl &eand with &6%exp%exp.' + target: '&eJouw niveau was veranders voor %jobname% &een nu zit je op &6niveau %level% &emet &6%exp%exp.' demote: help: - info: Demote the player X levels in a job. + info: Degradeer de speler X niveaus in een baan. args: '[playername] [jobname] [levels]' output: - target: You have been demoted %levelslost% levels in %jobname%. + target: Je bent %levelslost% niveaus gezakt in %jobname%. grantxp: help: - info: Grants the player X experience in a job. + info: Geef de speler X ervaring in een baan. args: '[playername] [jobname] [xp]' output: - target: You have been granted %xpgained% experience in %jobname%. + target: Je hebt %xpgained% ervaring verkregen in %jobname%. removexp: help: - info: Remove X experience from the player in a job. + info: Haal X ervaring weg van de speler in een baan. args: '[playername] [jobname] [xp]' output: - target: You have lost %xplost% experience in %jobname%. + target: Je bent %xplost% ervaring verloren in %jobname%. signupdate: help: - info: Manually updates a sign by its name + info: Update handmatig een bord bij naam args: '[jobname]' bp: help: - info: Shows block protections around you in 10 block radius + info: Toon alle beschermde blokken in een 10 blokken radius rond jouw locatie args: '' output: - found: '&eFound &6%amount% &eprotected blocks around you' - notFound: '&eNo protected blocks found around you' + found: '&e&6%amount% &ebeschermde blokken gevonden rondom jou' + notFound: '&eGeen beschermde blokken gevonden rondom jou' reload: help: - info: Reload configurations. + info: Herlaad configuraties. toggle: help: - info: Toggles payment output on action bar or bossbar. + info: Schakel betalingen aan of uit in de action bar of bossbar. args: actionbar/bossbar output: - turnedoff: '&4This feature is turned off!' + turnedoff: '&4Deze functionaliteit staat uit!' paid: - main: '&aYou got:' - money: '&e[amount] money' + main: '&aJe hebt:' + money: '&e[amount] geld' exp: '&7[exp] exp' - points: '&6[points] points' - 'on': '&aToggled: &aON' - 'off': '&aToggled: &4OFF' + points: '&6[points] punten' + 'on': '&aStatus: &aAAN' + 'off': '&aStatus: &4UIT' message: skillup: - broadcast: '%playername% has been promoted to a %titlename% %jobname%.' - nobroadcast: Congratulations, you have been promoted to a %titlename% %jobname%. + broadcast: '%playername% is gepromoveerd naar %titlename% %jobname%.' + nobroadcast: Gefeliciteerd, je bent gepromoveerd naar %titlename% %jobname%. levelup: - broadcast: '%playername% is now a level %joblevel% %jobname%.' - nobroadcast: You are now level %joblevel% %jobname%. + broadcast: '%playername% is nu niveau %joblevel% %jobname%.' + nobroadcast: Jij bent nu niveau %joblevel% %jobname%. leveldown: - message: '&cYou lost level&e %lostLevel%&c in&e %jobname%&c job! Level:&6 %joblevel%&c.' - cowtimer: '&eYou still need to wait &6%time% &esec to get paid for this job.' - blocktimer: '&eYou need to wait &3[time] &esec more to get paid for this!' - taxes: '&3[amount] &eserver taxes were transferred to this account' - boostStarted: '&eJobs boost time have been started!' - boostStoped: '&eJobs boost time have been ended!' + message: '&cJe bent &e %lostLevel% &cniveaus gedaalt in&e %jobname%&c! Niveau:&6 %joblevel%&c.' + cowtimer: '&eJe moet nog &6%time% &esec wachten om betaald te worden voor deze baan.' + blocktimer: '&eJe moet nog &3[time] &esec langer wachten om uitbetaald te krijgen voor dit!' + taxes: '&3[amount] &eserver belastingen zijn overgemaakt naar dit account' + boostStarted: '&eBaan boost tijd is gestart!' + boostStoped: '&eBaan boost tijd is afgelopen!' crafting: - fullinventory: '&cYour inventory is full!' + fullinventory: '&cJouw inventaris zit vol!' signs: List: '&0[number].&8[player]&7:&4[level]' questList: '&0[number].&8[player]&7:&4[quests]' SpecialList: - p1: '&b** &8First &b**' - p2: '&b** &8Second &b**' - p3: '&b** &8Third &b**' - p4: '&b** &8Fourth &b**' - p5: '&b** &8Fifth &b**' - p6: '&b** &8Sixth &b**' - p7: '&b** &8Seventh &b**' - p8: '&b** &8Eight &b**' - p9: '&b** &8Ninth &b**' - p10: '&b** &8Tenth &b**' + p1: '&b** &8Eerste &b**' + p2: '&b** &8Tweede &b**' + p3: '&b** &8Derde &b**' + p4: '&b** &8Vierde &b**' + p5: '&b** &8Vijfde &b**' + p6: '&b** &8Zesde &b**' + p7: '&b** &8Zevende &b**' + p8: '&b** &8Achtste &b**' + p9: '&b** &8Negende &b**' + p10: '&b** &8Tiende &b**' name: '&9[player]' - level: '&8[level] level' + level: '&8Niveau [level]' quests: '&8[quests] quests' bottom: '&b************' - cantcreate: '&4You can''t create this sign!' - cantdestroy: '&4You can''t destroy this sign!' + cantcreate: '&4Je kan dit bord niet maken!' + cantdestroy: '&4JE kan dit bord niet verwijderen!' topline: '&0[Jobs]' secondline: - join: '&0Join' - leave: '&0Leave' - toggle: '&0Toggle' + join: '&0Toetreden' + leave: '&0Verlaten' + toggle: '&0Schakelen' top: '&0Top' - browse: '&0Browse' + browse: '&0Bladeren' stats: '&0Stats' - limit: '&0Limit' + limit: '&0Limiet' info: '&0Info' - archive: '&0Archive' + archive: '&0Archief' scoreboard: topline: '&2Top &e%jobname%' - gtopline: '&2Global top list' + gtopline: '&2Globale top lijst' line: '&2%number%. &e%playername% (&6%level%&e)' From f94a6b0b87846e59fed7d4d5de80fa6c6a7255ce Mon Sep 17 00:00:00 2001 From: Momshroom Date: Thu, 11 May 2023 23:33:18 -0500 Subject: [PATCH 19/31] Add confirmation to jobs skipquest and fixed it not being possible to skip quests with multiword names --- .../jobs/commands/list/skipquest.java | 22 +++++++++++++++++-- .../jobs/config/LanguageManager.java | 1 + .../java/com/gamingmesh/jobs/stuff/Util.java | 3 +++ src/main/resources/locale/messages_it_IT.yml | 1 + 4 files changed, 25 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java b/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java index 32961c9d..3bf9a793 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java @@ -2,6 +2,7 @@ package com.gamingmesh.jobs.commands.list; import java.util.List; +import com.gamingmesh.jobs.stuff.Util; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; @@ -24,8 +25,8 @@ public class skipquest implements Cmd { LC.info_FeatureNotEnabled.sendMessage(sender); return null; } - - if (args.length != 2 && args.length != 3) { + // Needs to allow longer so multiword quest names work + if (args.length < 2) { return false; } @@ -106,6 +107,23 @@ public class skipquest implements Cmd { econ.getEconomy().withdrawPlayer(player, amount); } + // Add confirmation if configured + if (Jobs.getGCManager().EnableConfirmation) { + java.util.UUID uuid = jPlayer.getUniqueId(); + + if (!Util.SKIPCONFIRM.contains(uuid)) { + Util.SKIPCONFIRM.add(uuid); + + plugin.getServer().getScheduler().runTaskLater(plugin, () -> Util.SKIPCONFIRM.remove(uuid), + 20 * Jobs.getGCManager().ConfirmExpiryTime); + + Language.sendMessage(sender, "command.skipquest.confirmationNeed", "[questName]", + job.getDisplayName(), "[time]", Jobs.getGCManager().ConfirmExpiryTime); + return true; + } + + Util.SKIPCONFIRM.remove(uuid); + } jPlayer.replaceQuest(old); diff --git a/src/main/java/com/gamingmesh/jobs/config/LanguageManager.java b/src/main/java/com/gamingmesh/jobs/config/LanguageManager.java index 2c6d9442..72bad4a6 100644 --- a/src/main/java/com/gamingmesh/jobs/config/LanguageManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/LanguageManager.java @@ -482,6 +482,7 @@ public class LanguageManager { c.get("command.skipquest.help.info", "Skip defined quest and get new one"); c.get("command.skipquest.help.args", "[jobname] [questname] (playerName)"); c.get("command.skipquest.output.questSkipForCost", "&2You skipped the quest and paid:&e %amount%$"); + c.get("command.skipquest.confirmationNeed", "&cAre you sure you want to skip&e [questName]&c quest? Type the command again within&6 [time] seconds &cto confirm!"); Jobs.getGCManager().getCommandArgs().put("skipquest", Arrays.asList("[jobname]", "[questname]", "[playername]")); c.get("command.quests.help.info", "List available quests"); diff --git a/src/main/java/com/gamingmesh/jobs/stuff/Util.java b/src/main/java/com/gamingmesh/jobs/stuff/Util.java index 8f1be8a8..5e82a31f 100644 --- a/src/main/java/com/gamingmesh/jobs/stuff/Util.java +++ b/src/main/java/com/gamingmesh/jobs/stuff/Util.java @@ -50,6 +50,9 @@ public final class Util { public static final List LEAVECONFIRM = new ArrayList<>(); + // for confirmation of skipping quest + public static final List SKIPCONFIRM = new ArrayList<>(); + public static List getPistonRetractBlocks(BlockPistonRetractEvent event) { if (Version.isCurrentEqualOrHigher(Version.v1_8_R1)) { return new ArrayList<>(event.getBlocks()); diff --git a/src/main/resources/locale/messages_it_IT.yml b/src/main/resources/locale/messages_it_IT.yml index 9be29aca..399bea74 100644 --- a/src/main/resources/locale/messages_it_IT.yml +++ b/src/main/resources/locale/messages_it_IT.yml @@ -470,6 +470,7 @@ command: args: '[jobname] [questname] (playerName)' output: questSkipForCost: '&2You skipped the quest and paid:&e %amount%$' + confirmationNeed: '&cAre you sure you want to skip&e [questName]&c quest? Type the command again within&6 [time] seconds &cto confirm!' quests: help: info: List available quests From 6f1d348a1625f0cc48f38d1c7a9ec1697ab16bec Mon Sep 17 00:00:00 2001 From: FireML <106587317+FireML@users.noreply.github.com> Date: Wed, 17 May 2023 12:20:52 +0100 Subject: [PATCH 20/31] Improve Berry Checks Allow payment when holding bonemeal by checking the plant's age. --- .../com/gamingmesh/jobs/listeners/JobsPaymentListener.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java index 7e5b3aa0..24e7c9d1 100644 --- a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java +++ b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java @@ -1750,12 +1750,15 @@ public final class JobsPaymentListener implements Listener { if (level.getLevel() == level.getMaximumLevel()) { Jobs.action(jPlayer, new BlockCollectInfo(CMIMaterial.BONE_MEAL, ActionType.COLLECT), block); } - } else if ((cmat == CMIMaterial.SWEET_BERRY_BUSH || cmat == CMIMaterial.CAVE_VINES_PLANT || cmat == CMIMaterial.CAVE_VINES) && hand != CMIMaterial.BONE_MEAL.getMaterial()) { + } else if ((cmat == CMIMaterial.SWEET_BERRY_BUSH || cmat == CMIMaterial.CAVE_VINES_PLANT || cmat == CMIMaterial.CAVE_VINES)) { if (cmat == CMIMaterial.SWEET_BERRY_BUSH) { Ageable age = (Ageable) block.getBlockData(); - if (age.getAge() >= 2) + if (age.getAge() == 2 && hand != CMIMaterial.BONE_MEAL.getMaterial()) { Jobs.action(jPlayer, new BlockCollectInfo(CMIMaterial.SWEET_BERRIES, ActionType.COLLECT, age.getAge()), block); + } else if (age.getAge() == 3) { + Jobs.action(jPlayer, new BlockCollectInfo(CMIMaterial.SWEET_BERRIES, ActionType.COLLECT, age.getAge()), block); + } } else { org.bukkit.block.data.type.CaveVinesPlant caveVines = (org.bukkit.block.data.type.CaveVinesPlant) block.getBlockData(); if (caveVines.isBerries()) { From 89c7aae6ef5b0a3779a84b92ec8e355a93126546 Mon Sep 17 00:00:00 2001 From: FireML <106587317+FireML@users.noreply.github.com> Date: Wed, 17 May 2023 12:32:13 +0100 Subject: [PATCH 21/31] Check if the player's food level is at its maximum A few foods can be eaten with the maximum food level. This prevents payment in that situation. --- .../java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java index 7e5b3aa0..15ccddfa 100644 --- a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java +++ b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java @@ -1642,7 +1642,7 @@ public final class JobsPaymentListener implements Listener { Player player = (Player) human; - if (!player.isOnline() || event.getFoodLevel() <= player.getFoodLevel()) + if (!player.isOnline() || event.getFoodLevel() <= player.getFoodLevel() || player.getFoodLevel() == 20) return; // check if in creative From ac75c303bbaaa1befb2c73cda4d40e99b18979bf Mon Sep 17 00:00:00 2001 From: Momshroom Date: Wed, 17 May 2023 21:53:17 -0500 Subject: [PATCH 22/31] Fix quests not giving rewards until one extra item was done. (Partially reverts 86c9478 ) --- .../java/com/gamingmesh/jobs/container/QuestProgression.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/gamingmesh/jobs/container/QuestProgression.java b/src/main/java/com/gamingmesh/jobs/container/QuestProgression.java index e38dba16..687bb535 100644 --- a/src/main/java/com/gamingmesh/jobs/container/QuestProgression.java +++ b/src/main/java/com/gamingmesh/jobs/container/QuestProgression.java @@ -174,7 +174,8 @@ public class QuestProgression { jPlayer.setSaved(false); - if (!completed || !player.isOnline() || givenReward) + //needs to re-call isCompleted() because it might have changed above. + if (!isCompleted() || !player.isOnline() || givenReward) return; givenReward = true; From 3022d7cfa5cac596b538d9311c435fd0055279e1 Mon Sep 17 00:00:00 2001 From: Zrips Date: Wed, 24 May 2023 12:08:08 +0300 Subject: [PATCH 23/31] Change accumulated point amount with editpoints take command --- src/main/java/com/gamingmesh/jobs/PermissionManager.java | 4 +--- .../java/com/gamingmesh/jobs/commands/list/skipquest.java | 2 +- src/main/java/com/gamingmesh/jobs/container/PlayerPoints.java | 1 + .../com/gamingmesh/jobs/listeners/JobsPaymentListener.java | 2 ++ 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/PermissionManager.java b/src/main/java/com/gamingmesh/jobs/PermissionManager.java index c89f6e55..459d0eaf 100644 --- a/src/main/java/com/gamingmesh/jobs/PermissionManager.java +++ b/src/main/java/com/gamingmesh/jobs/PermissionManager.java @@ -170,10 +170,8 @@ public class PermissionManager { if (force || getDelay(perm) + permInfo.getTime() < System.currentTimeMillis()) { - CMIDebug.c("get", force, getDelay(perm) + permInfo.getTime() < System.currentTimeMillis(), getDelay(perm), permInfo.getTime(), perm); - Map perms = getAll(player, perm); - for (Map.Entry permission : perms.entrySet()) { + for (Map.Entry permission : perms.entrySet()) { if (!permission.getKey().startsWith(perm) || !permission.getValue()) continue; try { diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java b/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java index 3bf9a793..c630df56 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java @@ -118,7 +118,7 @@ public class skipquest implements Cmd { 20 * Jobs.getGCManager().ConfirmExpiryTime); Language.sendMessage(sender, "command.skipquest.confirmationNeed", "[questName]", - job.getDisplayName(), "[time]", Jobs.getGCManager().ConfirmExpiryTime); + old.getQuestName(), "[time]", Jobs.getGCManager().ConfirmExpiryTime); return true; } diff --git a/src/main/java/com/gamingmesh/jobs/container/PlayerPoints.java b/src/main/java/com/gamingmesh/jobs/container/PlayerPoints.java index 77258061..c7c886d9 100644 --- a/src/main/java/com/gamingmesh/jobs/container/PlayerPoints.java +++ b/src/main/java/com/gamingmesh/jobs/container/PlayerPoints.java @@ -26,6 +26,7 @@ public class PlayerPoints { public void takePoints(double points) { current -= points; + total -= points; } public boolean havePoints(double points) { diff --git a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java index 66928f03..12ed255e 100644 --- a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java +++ b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java @@ -130,6 +130,7 @@ import net.Zrips.CMILib.Entities.CMIEntityType; import net.Zrips.CMILib.Items.CMIItemStack; import net.Zrips.CMILib.Items.CMIMaterial; import net.Zrips.CMILib.Locale.LC; +import net.Zrips.CMILib.Logs.CMIDebug; import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.Version.Version; @@ -447,6 +448,7 @@ public final class JobsPaymentListener implements Listener { Jobs.perform(fp.getPlayer(), fp.getInfo(), fp.getPayment(), fp.getJob(), block, null, null); return; } + Jobs.FASTPAYMENT.remove(player.getUniqueId()); } if (!payForItemDurabilityLoss(player)) From 260470406e09060a93b0fda84dccdf0ac4e62d3e Mon Sep 17 00:00:00 2001 From: Zrips Date: Fri, 16 Jun 2023 12:42:16 +0300 Subject: [PATCH 24/31] Separating jtop_name into jtop_displayname placeholder for name and displayname accordingly --- pom.xml | 2 +- src/main/java/com/gamingmesh/jobs/Jobs.java | 2 +- .../jobs/Placeholders/Placeholder.java | 21 +++++++++++++++++++ .../jobs/listeners/JobsPaymentListener.java | 3 ++- 4 files changed, 25 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index f68f580f..cb78d56c 100644 --- a/pom.xml +++ b/pom.xml @@ -286,7 +286,7 @@ maven-jar-plugin 2.3.1 - D:\MC\Server 1.19\plugins\ + D:\MC\Server 1.20\plugins\ diff --git a/src/main/java/com/gamingmesh/jobs/Jobs.java b/src/main/java/com/gamingmesh/jobs/Jobs.java index abe5c32a..6d53931c 100644 --- a/src/main/java/com/gamingmesh/jobs/Jobs.java +++ b/src/main/java/com/gamingmesh/jobs/Jobs.java @@ -164,7 +164,7 @@ public final class Jobs extends JavaPlugin { private static boolean hasLimitedItems = false; - private static final int MAX_ENTRIES = 5; + private static final int MAX_ENTRIES = 20; public static final LinkedHashMap FASTPAYMENT = new LinkedHashMap(MAX_ENTRIES + 1, .75F, false) { protected boolean removeEldestEntry(Map.Entry eldest) { return size() > MAX_ENTRIES; diff --git a/src/main/java/com/gamingmesh/jobs/Placeholders/Placeholder.java b/src/main/java/com/gamingmesh/jobs/Placeholders/Placeholder.java index 88427c72..e3af33ad 100644 --- a/src/main/java/com/gamingmesh/jobs/Placeholders/Placeholder.java +++ b/src/main/java/com/gamingmesh/jobs/Placeholders/Placeholder.java @@ -88,6 +88,7 @@ public class Placeholder { user_archived_jobs_exp_$1("jname/number"), jtop_name_$1_$2("jname/number", "[1-15]"), + jtop_displayname_$1_$2("jname/number", "[1-15]"), jtop_level_$1_$2("jname/number", "[1-15]"), maxjobs, @@ -616,6 +617,26 @@ public class Placeholder { List list = Jobs.getJobsDAO().getTopListByJob(jo, 15); + if (list.size() < place) + return ""; + + return list.get(place - 1).getPlayerInfo().getName(); + case jtop_displayname_$1_$2: + if (values.size() < 2) + return ""; + + place = 0; + try { + place = Integer.parseInt(values.get(1)); + } catch (NumberFormatException e) { + return ""; + } + + if (place < 1) + return ""; + + list = Jobs.getJobsDAO().getTopListByJob(jo, 15); + if (list.size() < place) return ""; diff --git a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java index 12ed255e..8f2f5509 100644 --- a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java +++ b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java @@ -1838,8 +1838,9 @@ public final class JobsPaymentListener implements Listener { // either it's version 1.13+ and we're trying to strip a normal log like oak, // or it's 1.16+ and we're trying to strip a fungi like warped stem if ((Version.isCurrentEqualOrHigher(Version.v1_13_R1) && (block.getType().toString().endsWith("_LOG") || block.getType().toString().endsWith("_WOOD"))) || - (Version.isCurrentEqualOrHigher(Version.v1_16_R1) && (block.getType().toString().endsWith("_STEM") || block.getType().toString().endsWith("_HYPHAE")))) + (Version.isCurrentEqualOrHigher(Version.v1_16_R1) && (block.getType().toString().endsWith("_STEM") || block.getType().toString().endsWith("_HYPHAE")))) { Bukkit.getScheduler().scheduleSyncDelayedTask(plugin, () -> Jobs.action(jPlayer, new BlockActionInfo(block, ActionType.STRIPLOGS), block), 1); + } } } From e296a2509768a748b28dbeac15c52919e6d24fdc Mon Sep 17 00:00:00 2001 From: dandud100 <43549788+dandud100@users.noreply.github.com> Date: Sun, 18 Jun 2023 15:42:12 +0200 Subject: [PATCH 25/31] Update messages_de.yml Added qClick message --- src/main/resources/locale/messages_de.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/resources/locale/messages_de.yml b/src/main/resources/locale/messages_de.yml index 02470050..2dd340b4 100644 --- a/src/main/resources/locale/messages_de.yml +++ b/src/main/resources/locale/messages_de.yml @@ -318,6 +318,7 @@ command: actions: '&eMögliche Optionen:' leftClick: '&eLinksklick für mehr Informationen.' middleClick: '&eMittelklick um den Job zu verlassen.' + qClick: '&eQ Taste um den Job zu verlassen.' rightClick: '&eRechtsklick um den Job anzunehmen.' leftSlots: '&eOffene Stellen:&f ' working: '&2Ausgewählt' From 59a6ceab9e50afa900111aea7353d480bd187fb7 Mon Sep 17 00:00:00 2001 From: CorentinStauder Date: Sun, 18 Jun 2023 17:58:55 +0200 Subject: [PATCH 26/31] Added deepslate to miner and tinted glass to builder --- src/main/resources/jobs/builder.yml | 4 ++++ src/main/resources/jobs/miner.yml | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/src/main/resources/jobs/builder.yml b/src/main/resources/jobs/builder.yml index ce098582..5bc92a8b 100644 --- a/src/main/resources/jobs/builder.yml +++ b/src/main/resources/jobs/builder.yml @@ -382,6 +382,10 @@ Builder: income: 1.5 points: 1.5 experience: 2 + tinted_glass: + income: 1.5 + points: 1.5 + experience: 2 iron_trapdoor: income: 1.5 points: 1.5 diff --git a/src/main/resources/jobs/miner.yml b/src/main/resources/jobs/miner.yml index f2dd32f5..4cdbcdfa 100644 --- a/src/main/resources/jobs/miner.yml +++ b/src/main/resources/jobs/miner.yml @@ -55,6 +55,10 @@ Miner: income: 1 points: 1 experience: 1 + deepslate: + income: 1.25 + points: 1.25 + experience: 1.25 granite: income: 1 points: 1 From d52633a447a44e9aec6e05a08aceb2d0e3b86be1 Mon Sep 17 00:00:00 2001 From: Zrips Date: Fri, 23 Jun 2023 12:38:35 +0300 Subject: [PATCH 27/31] Lets remove McMMO from softdependency, because paper spigot... --- 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 7e9020dc..80247c41 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -7,7 +7,7 @@ website: https://www.spigotmc.org/resources/4216/ authors: [Zrips] contributors: [montlikadani] depend: [CMILib] -softdepend: [Vault, Essentials, MythicMobs, McMMO, mcMMO, WorldGuard, MyPet, PlaceholderAPI, EcoEnchants, WildStacker, StackMob] +softdepend: [Vault, Essentials, MythicMobs, WorldGuard, MyPet, PlaceholderAPI, EcoEnchants, WildStacker, StackMob] commands: jobs: description: Jobs From 789e8ff7a6cf17faa2f2cb964fb73231da8eefbf Mon Sep 17 00:00:00 2001 From: Zrips Date: Fri, 23 Jun 2023 12:51:00 +0300 Subject: [PATCH 28/31] Bonus from dynamic should be in hundreds of percentages --- src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java | 4 ++-- src/main/java/com/gamingmesh/jobs/container/Job.java | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java b/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java index 2c805590..70f75052 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java +++ b/src/main/java/com/gamingmesh/jobs/commands/JobsCommands.java @@ -289,11 +289,11 @@ public class JobsCommands implements CommandExecutor { } if (Jobs.getGCManager().useDynamicPayment) { - int bonus = (int) ((job.getBonus() * 100) / 100.0); + int bonus = (int) (job.getBonus() * 100); if (bonus != 0) { if (bonus < 0) - message.add(Jobs.getLanguage().getMessage("command.info.help.penalty", "[penalty]", (int) (job.getBonus() * 100) / 100.0 * -1)); + message.add(Jobs.getLanguage().getMessage("command.info.help.penalty", "[penalty]", bonus * -1)); else message.add(Jobs.getLanguage().getMessage("command.info.help.bonus", "[bonus]", bonus)); } diff --git a/src/main/java/com/gamingmesh/jobs/container/Job.java b/src/main/java/com/gamingmesh/jobs/container/Job.java index 0d213fdb..937ed75b 100644 --- a/src/main/java/com/gamingmesh/jobs/container/Job.java +++ b/src/main/java/com/gamingmesh/jobs/container/Job.java @@ -226,6 +226,7 @@ public class Job { eq.setVariable("jobstotalplayers", getTotalPlayers()); double now = eq.getValue(); + CMIDebug.d("Now",now); if (now > Jobs.getGCManager().DynamicPaymentMaxBonus) now = Jobs.getGCManager().DynamicPaymentMaxBonus; From aba467be700227a6a5e662de0a54765dafbd8bbf Mon Sep 17 00:00:00 2001 From: Zrips Date: Fri, 23 Jun 2023 13:44:18 +0300 Subject: [PATCH 29/31] Hiding more information when requirements are not met for shop items --- .../com/gamingmesh/jobs/PlayerManager.java | 10 + .../gamingmesh/jobs/config/ShopManager.java | 84 ++-- .../com/gamingmesh/jobs/container/Job.java | 409 +++++++++--------- 3 files changed, 263 insertions(+), 240 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/PlayerManager.java b/src/main/java/com/gamingmesh/jobs/PlayerManager.java index f57c230c..190d378c 100644 --- a/src/main/java/com/gamingmesh/jobs/PlayerManager.java +++ b/src/main/java/com/gamingmesh/jobs/PlayerManager.java @@ -65,6 +65,7 @@ import com.gamingmesh.jobs.stuff.Util; import net.Zrips.CMILib.ActionBar.CMIActionBar; import net.Zrips.CMILib.Items.CMIItemStack; import net.Zrips.CMILib.Items.CMIMaterial; +import net.Zrips.CMILib.Logs.CMIDebug; import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.NBT.CMINBT; import net.Zrips.CMILib.Version.Version; @@ -487,6 +488,9 @@ public class PlayerManager { job.updateTotalPlayers(); jPlayer.maxJobsEquation = getMaxJobs(jPlayer); + + // Removing from cached item boost for recalculation + cache.remove(jPlayer.getUniqueId()); } private static void performCommandsOnLeave(JobsPlayer jPlayer, Job job) { @@ -528,6 +532,10 @@ public class PlayerManager { Jobs.getSignUtil().updateAllSign(job); job.updateTotalPlayers(); + + // Removing from cached item boost for recalculation + cache.remove(jPlayer.getUniqueId()); + return true; } @@ -1055,6 +1063,8 @@ public class PlayerManager { continue; } } + + CMIDebug.d("get bonus item"); jitems.add(getJobsItemByNbt(item)); } } diff --git a/src/main/java/com/gamingmesh/jobs/config/ShopManager.java b/src/main/java/com/gamingmesh/jobs/config/ShopManager.java index 75530ae5..d60a04c4 100644 --- a/src/main/java/com/gamingmesh/jobs/config/ShopManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/ShopManager.java @@ -113,11 +113,14 @@ public class ShopManager { List lore = new ArrayList<>(); CMIMaterial mat = CMIMaterial.get(item.getIconMaterial()); + boolean hiddenLore = false; + if (item.isHideWithoutPerm()) { for (String onePerm : item.getRequiredPerm()) { if (!player.hasPermission(onePerm)) { mat = CMIMaterial.STONE_BUTTON; lore.add(Jobs.getLanguage().getMessage("command.shop.info.NoPermToBuy")); + hiddenLore = true; break; } } @@ -127,6 +130,7 @@ public class ShopManager { jPlayer.getTotalLevels() < item.getRequiredTotalLevels()) { mat = CMIMaterial.STONE_BUTTON; lore.add(Jobs.getLanguage().getMessage("command.shop.info.NoPoints")); + hiddenLore = true; } if (mat == CMIMaterial.NONE) @@ -142,48 +146,50 @@ public class ShopManager { if (item.getIconName() != null) meta.setDisplayName(item.getIconName()); - lore.addAll(item.getIconLore()); + if (!hiddenLore) { + lore.addAll(item.getIconLore()); - if (item.getPointPrice() > 0) { - String color = item.getPointPrice() >= points ? "" : Jobs.getLanguage().getMessage("command.shop.info.haveColor"); - lore.add(Jobs.getLanguage().getMessage("command.shop.info.pointsPrice", "%currentpoints%", color + points, "%price%", item.getPointPrice())); - } - - if (item.getVaultPrice() > 0) { - String color = item.getVaultPrice() >= balance ? "" : Jobs.getLanguage().getMessage("command.shop.info.haveColor"); - lore.add(Jobs.getLanguage().getMessage("command.shop.info.moneyPrice", "%currentbalance%", color + Jobs.getEconomy().getEconomy().format(balance), "%price%", item.getVaultPrice())); - } - - if (!item.getRequiredJobs().isEmpty()) { - lore.add(Jobs.getLanguage().getMessage("command.shop.info.reqJobs")); - - for (Entry one : item.getRequiredJobs().entrySet()) { - Job job = Jobs.getJob(one.getKey()); - if (job == null) { - continue; - } - - String jobColor = ""; - String levelColor = ""; - - JobProgression prog = jPlayer.getJobProgression(job); - if (prog == null) { - jobColor = Jobs.getLanguage().getMessage("command.shop.info.reqJobsColor"); - levelColor = Jobs.getLanguage().getMessage("command.shop.info.reqJobsLevelColor"); - } - - if (prog != null && prog.getLevel() < one.getValue()) - levelColor = Jobs.getLanguage().getMessage("command.shop.info.reqJobsLevelColor"); - - lore.add(Jobs.getLanguage().getMessage("command.shop.info.reqJobsList", "%jobsname%", - jobColor + one.getKey(), "%level%", levelColor + one.getValue())); + if (item.getPointPrice() > 0) { + String color = item.getPointPrice() >= points ? "" : Jobs.getLanguage().getMessage("command.shop.info.haveColor"); + lore.add(Jobs.getLanguage().getMessage("command.shop.info.pointsPrice", "%currentpoints%", color + points, "%price%", item.getPointPrice())); } - } - if (item.getRequiredTotalLevels() != -1) { - lore.add(Jobs.getLanguage().getMessage("command.shop.info.reqTotalLevel", - "%totalLevel%", (jPlayer.getTotalLevels() < item.getRequiredTotalLevels() - ? Jobs.getLanguage().getMessage("command.shop.info.reqTotalLevelColor") : "") + item.getRequiredTotalLevels())); + if (item.getVaultPrice() > 0) { + String color = item.getVaultPrice() >= balance ? "" : Jobs.getLanguage().getMessage("command.shop.info.haveColor"); + lore.add(Jobs.getLanguage().getMessage("command.shop.info.moneyPrice", "%currentbalance%", color + Jobs.getEconomy().getEconomy().format(balance), "%price%", item.getVaultPrice())); + } + + if (!item.getRequiredJobs().isEmpty()) { + lore.add(Jobs.getLanguage().getMessage("command.shop.info.reqJobs")); + + for (Entry one : item.getRequiredJobs().entrySet()) { + Job job = Jobs.getJob(one.getKey()); + if (job == null) { + continue; + } + + String jobColor = ""; + String levelColor = ""; + + JobProgression prog = jPlayer.getJobProgression(job); + if (prog == null) { + jobColor = Jobs.getLanguage().getMessage("command.shop.info.reqJobsColor"); + levelColor = Jobs.getLanguage().getMessage("command.shop.info.reqJobsLevelColor"); + } + + if (prog != null && prog.getLevel() < one.getValue()) + levelColor = Jobs.getLanguage().getMessage("command.shop.info.reqJobsLevelColor"); + + lore.add(Jobs.getLanguage().getMessage("command.shop.info.reqJobsList", "%jobsname%", + jobColor + one.getKey(), "%level%", levelColor + one.getValue())); + } + } + + if (item.getRequiredTotalLevels() != -1) { + lore.add(Jobs.getLanguage().getMessage("command.shop.info.reqTotalLevel", + "%totalLevel%", (jPlayer.getTotalLevels() < item.getRequiredTotalLevels() + ? Jobs.getLanguage().getMessage("command.shop.info.reqTotalLevelColor") : "") + item.getRequiredTotalLevels())); + } } meta.setLore(lore); diff --git a/src/main/java/com/gamingmesh/jobs/container/Job.java b/src/main/java/com/gamingmesh/jobs/container/Job.java index 937ed75b..de82f577 100644 --- a/src/main/java/com/gamingmesh/jobs/container/Job.java +++ b/src/main/java/com/gamingmesh/jobs/container/Job.java @@ -101,41 +101,41 @@ public class Job { @Deprecated public Job(String jobName, String jobDisplayName, String fullName, String jobShortName, String description, CMIChatColor jobColour, Parser maxExpEquation, DisplayMethod displayMethod, int maxLevel, - int vipmaxLevel, Integer maxSlots, List jobPermissions, List jobCommands, List jobConditions, Map jobItems, - Map jobLimitedItems, List cmdOnJoin, List cmdOnLeave, ItemStack guiItem, int guiSlot, String bossbar, Long rejoinCD, List worldBlacklist) { - this(jobName, jobDisplayName, fullName, jobShortName, jobColour, maxExpEquation, displayMethod, maxLevel, - vipmaxLevel, maxSlots, jobPermissions, jobCommands, jobConditions, - jobLimitedItems, cmdOnJoin, cmdOnLeave, guiItem, guiSlot, worldBlacklist); + int vipmaxLevel, Integer maxSlots, List jobPermissions, List jobCommands, List jobConditions, Map jobItems, + Map jobLimitedItems, List cmdOnJoin, List cmdOnLeave, ItemStack guiItem, int guiSlot, String bossbar, Long rejoinCD, List worldBlacklist) { + this(jobName, jobDisplayName, fullName, jobShortName, jobColour, maxExpEquation, displayMethod, maxLevel, + vipmaxLevel, maxSlots, jobPermissions, jobCommands, jobConditions, + jobLimitedItems, cmdOnJoin, cmdOnLeave, guiItem, guiSlot, worldBlacklist); - this.jobItems = jobItems; - this.description = description; + this.jobItems = jobItems; + this.description = description; } public Job(String jobName, String jobDisplayName, String fullName, String jobShortName, CMIChatColor jobColour, Parser maxExpEquation, DisplayMethod displayMethod, int maxLevel, - int vipmaxLevel, Integer maxSlots, List jobPermissions, List jobCommands, List jobConditions, - Map jobLimitedItems, List cmdOnJoin, List cmdOnLeave, ItemStack guiItem, int guiSlot, List worldBlacklist) { - this.jobName = jobName == null ? "" : jobName; - this.fullName = fullName == null ? "" : fullName; - this.jobShortName = jobShortName; - this.jobColour = jobColour; - this.maxExpEquation = maxExpEquation; - this.displayMethod = displayMethod; - this.maxLevel = maxLevel; - this.vipmaxLevel = vipmaxLevel; - this.maxSlots = maxSlots; - this.jobPermissions = jobPermissions; - this.jobCommands = jobCommands; - this.jobConditions = jobConditions; - this.jobLimitedItems = jobLimitedItems; - this.cmdOnJoin = cmdOnJoin; - this.cmdOnLeave = cmdOnLeave; - this.guiItem = guiItem; - this.guiSlot = guiSlot; - this.jobDisplayName = CMIChatColor.translate(jobDisplayName); + int vipmaxLevel, Integer maxSlots, List jobPermissions, List jobCommands, List jobConditions, + Map jobLimitedItems, List cmdOnJoin, List cmdOnLeave, ItemStack guiItem, int guiSlot, List worldBlacklist) { + this.jobName = jobName == null ? "" : jobName; + this.fullName = fullName == null ? "" : fullName; + this.jobShortName = jobShortName; + this.jobColour = jobColour; + this.maxExpEquation = maxExpEquation; + this.displayMethod = displayMethod; + this.maxLevel = maxLevel; + this.vipmaxLevel = vipmaxLevel; + this.maxSlots = maxSlots; + this.jobPermissions = jobPermissions; + this.jobCommands = jobCommands; + this.jobConditions = jobConditions; + this.jobLimitedItems = jobLimitedItems; + this.cmdOnJoin = cmdOnJoin; + this.cmdOnLeave = cmdOnLeave; + this.guiItem = guiItem; + this.guiSlot = guiSlot; + this.jobDisplayName = CMIChatColor.translate(jobDisplayName); - if (worldBlacklist != null) { - this.worldBlacklist = worldBlacklist; - } + if (worldBlacklist != null) { + this.worldBlacklist = worldBlacklist; + } } /** @@ -146,7 +146,7 @@ public class Job { * @param point the amount of boost to add */ public void addBoost(CurrencyType type, double point) { - boost.add(type, point); + boost.add(type, point); } /** @@ -163,20 +163,20 @@ public class Job { */ public void addBoost(CurrencyType type, double point, long duration) { - if (duration <= 0) { - addBoost(type, point); - return; - } + if (duration <= 0) { + addBoost(type, point); + return; + } - boost.add(type, point, System.currentTimeMillis() + (duration * 1000L)); + boost.add(type, point, System.currentTimeMillis() + (duration * 1000L)); } public void setBoost(BoostMultiplier boost) { - this.boost = boost; + this.boost = boost; } public BoostMultiplier getBoost() { - return boost; + return boost; } /** @@ -186,8 +186,8 @@ public class Job { * @return true if same */ public boolean isSame(Job job) { - return job != null && (id == job.getId() || jobName.equalsIgnoreCase(job.getName()) - || fullName.equalsIgnoreCase(job.getJobFullName()) || fullName.equalsIgnoreCase(job.getName())); + return job != null && (id == job.getId() || jobName.equalsIgnoreCase(job.getName()) + || fullName.equalsIgnoreCase(job.getJobFullName()) || fullName.equalsIgnoreCase(job.getName())); } /** @@ -196,67 +196,74 @@ public class Job { * @return the amount of total players in this job */ public int getTotalPlayers() { - if (totalPlayers == -1) { - updateTotalPlayers(); - } + if (totalPlayers == -1) { + updateTotalPlayers(); + } - return totalPlayers; + return totalPlayers; } /** * Updates the total players property from database synchronously. */ public void updateTotalPlayers() { - totalPlayers = Jobs.getJobsDAO().getTotalPlayerAmountByJobName(jobName); + totalPlayers = Jobs.getJobsDAO().getTotalPlayerAmountByJobName(jobName); - if (totalPlayers <= 0) { - totalPlayers = Jobs.getJobsDAO().getTotalPlayerAmountByJobName(fullName); - } + if (totalPlayers <= 0) { + totalPlayers = Jobs.getJobsDAO().getTotalPlayerAmountByJobName(fullName); + } - updateBonus(); + updateBonus(); } public void updateBonus() { - if (!Jobs.getGCManager().useDynamicPayment) - return; + if (!Jobs.getGCManager().useDynamicPayment) + return; - Parser eq = Jobs.getGCManager().DynamicPaymentEquation; - eq.setVariable("totalworkers", Jobs.getJobsDAO().getTotalPlayers()); - eq.setVariable("totaljobs", Jobs.getJobs().size()); - eq.setVariable("jobstotalplayers", getTotalPlayers()); + Parser eq = Jobs.getGCManager().DynamicPaymentEquation; + eq.setVariable("totalworkers", Jobs.getJobsDAO().getTotalPlayers()); + eq.setVariable("totaljobs", Jobs.getJobs().size()); + eq.setVariable("jobstotalplayers", getTotalPlayers()); - double now = eq.getValue(); - CMIDebug.d("Now",now); - if (now > Jobs.getGCManager().DynamicPaymentMaxBonus) - now = Jobs.getGCManager().DynamicPaymentMaxBonus; + double now = 0D; + try { + now = eq.getValue(); + } catch (Throwable e) { + e.printStackTrace(); + } - if (now < Jobs.getGCManager().DynamicPaymentMaxPenalty) - now = Jobs.getGCManager().DynamicPaymentMaxPenalty; + CMIDebug.d("Now", now, this.getName(), getTotalPlayers(), now == Double.POSITIVE_INFINITY); - this.bonus = now; + if (now > Jobs.getGCManager().DynamicPaymentMaxBonus) + now = Jobs.getGCManager().DynamicPaymentMaxBonus; + + if (now < Jobs.getGCManager().DynamicPaymentMaxPenalty) + now = Jobs.getGCManager().DynamicPaymentMaxPenalty; + + this.bonus = now; } public double getBonus() { - if (bonus == null) - updateBonus(); + if (bonus == null) + updateBonus(); - return bonus == null ? 0D : bonus; + return bonus == null ? 0D : bonus; } public List getCmdOnJoin() { - return cmdOnJoin; + return cmdOnJoin; } public List getCmdOnLeave() { - return cmdOnLeave; + return cmdOnLeave; } public ItemStack getGuiItem() { - return guiItem; + return guiItem; } public int getGuiSlot() { - return guiSlot; + return guiSlot; } /** @@ -265,7 +272,7 @@ public class Job { * @param info - the job info */ public void setJobInfo(ActionType type, List info) { - jobInfo.put(type, info); + jobInfo.put(type, info); } /** @@ -274,7 +281,7 @@ public class Job { * @return Job info list */ public List getJobInfo(ActionType type) { - return jobInfo.get(type); + return jobInfo.get(type); } /** @@ -282,41 +289,41 @@ public class Job { * @return Job info list */ public Map> getJobInfoList() { - return jobInfo; + return jobInfo; } public JobInfo getJobInfo(ActionInfo action, int level) { - BiPredicate condition = (jobInfo, actionInfo) -> { - if (actionInfo instanceof PotionItemActionInfo) { - String subName = ((PotionItemActionInfo) action).getNameWithSub(); - return jobInfo.getName().equalsIgnoreCase(subName) || (jobInfo.getName() + ":" + jobInfo.getMeta()).equalsIgnoreCase(subName); - } + BiPredicate condition = (jobInfo, actionInfo) -> { + if (actionInfo instanceof PotionItemActionInfo) { + String subName = ((PotionItemActionInfo) action).getNameWithSub(); + return jobInfo.getName().equalsIgnoreCase(subName) || (jobInfo.getName() + ":" + jobInfo.getMeta()).equalsIgnoreCase(subName); + } - if (actionInfo instanceof EnchantActionInfo) { - return Util.enchantMatchesActionInfo(jobInfo.getName(), (EnchantActionInfo) actionInfo); - } + if (actionInfo instanceof EnchantActionInfo) { + return Util.enchantMatchesActionInfo(jobInfo.getName(), (EnchantActionInfo) actionInfo); + } - return jobInfo.getName().equalsIgnoreCase(action.getNameWithSub()) || - (jobInfo.getName() + ":" + jobInfo.getMeta()).equalsIgnoreCase(action.getNameWithSub()) || - jobInfo.getName().equalsIgnoreCase(action.getName()); - }; + return jobInfo.getName().equalsIgnoreCase(action.getNameWithSub()) || + (jobInfo.getName() + ":" + jobInfo.getMeta()).equalsIgnoreCase(action.getNameWithSub()) || + jobInfo.getName().equalsIgnoreCase(action.getName()); + }; - String shortActionName = CMIMaterial.getGeneralMaterialName(action.getName()); - for (JobInfo info : getJobInfo(action.getType())) { - if (condition.test(info, action)) { - if (!info.isInLevelRange(level)) { - break; - } + String shortActionName = CMIMaterial.getGeneralMaterialName(action.getName()); + for (JobInfo info : getJobInfo(action.getType())) { + if (condition.test(info, action)) { + if (!info.isInLevelRange(level)) { + break; + } - return info; - } + return info; + } - if ((shortActionName + ":ALL").equalsIgnoreCase(info.getName())) { - return info; - } - } + if ((shortActionName + ":ALL").equalsIgnoreCase(info.getName())) { + return info; + } + } - return null; + return null; } /** @@ -325,20 +332,20 @@ public class Job { * @return the name of this job */ public String getName() { - return jobName; + return jobName; } public String getJobFullName() { - return fullName; + return fullName; } @Deprecated public String getJobDisplayName() { - return getDisplayName(); + return getDisplayName(); } public String getDisplayName() { - return jobDisplayName == null ? jobColour + fullName : jobDisplayName; + return jobDisplayName == null ? jobColour + fullName : jobDisplayName; } /** @@ -349,7 +356,7 @@ public class Job { */ @Deprecated public String getNameWithColor() { - return jobColour + fullName; + return jobColour + fullName; } /** @@ -358,7 +365,7 @@ public class Job { * @return the shortened version of the jobName */ public String getShortName() { - return jobShortName; + return jobShortName; } /** @@ -370,7 +377,7 @@ public class Job { */ @Deprecated public String getDescription() { - return description; + return description; } /** @@ -378,7 +385,7 @@ public class Job { * @return the Color of the job for chat */ public CMIChatColor getChatColor() { - return jobColour; + return jobColour; } /** @@ -386,7 +393,7 @@ public class Job { * @return the MaxExpEquation of the job */ public Parser getMaxExpEquation() { - return maxExpEquation; + return maxExpEquation; } /** @@ -395,10 +402,10 @@ public class Job { * @return the correct max exp for this level */ public double getMaxExp(Map level) { - for (Map.Entry temp : level.entrySet()) { - maxExpEquation.setVariable(temp.getKey(), temp.getValue()); - } - return maxExpEquation.getValue(); + for (Map.Entry temp : level.entrySet()) { + maxExpEquation.setVariable(temp.getKey(), temp.getValue()); + } + return maxExpEquation.getValue(); } /** @@ -406,7 +413,7 @@ public class Job { * @return the display method */ public DisplayMethod getDisplayMethod() { - return displayMethod; + return displayMethod; } /** @@ -415,7 +422,7 @@ public class Job { * @return the max level */ public int getMaxLevel() { - return maxLevel; + return maxLevel; } /** @@ -425,20 +432,20 @@ public class Job { * @return the max level of player */ public int getMaxLevel(JobsPlayer player) { - return player == null ? maxLevel : player.getMaxJobLevelAllowed(this); + return player == null ? maxLevel : player.getMaxJobLevelAllowed(this); } public int getMaxLevel(CommandSender sender) { - if (sender == null) - return maxLevel; + if (sender == null) + return maxLevel; - if (sender instanceof Player) { - JobsPlayer player = Jobs.getPlayerManager().getJobsPlayer((Player) sender); - if (player != null) - return player.getMaxJobLevelAllowed(this); - } + if (sender instanceof Player) { + JobsPlayer player = Jobs.getPlayerManager().getJobsPlayer((Player) sender); + if (player != null) + return player.getMaxJobLevelAllowed(this); + } - return maxLevel > vipmaxLevel ? maxLevel : vipmaxLevel; + return maxLevel > vipmaxLevel ? maxLevel : vipmaxLevel; } /** @@ -447,7 +454,7 @@ public class Job { * @return null - no max level */ public int getVipMaxLevel() { - return vipmaxLevel; + return vipmaxLevel; } /** @@ -456,7 +463,7 @@ public class Job { * @return null - no max slots */ public Integer getMaxSlots() { - return maxSlots; + return maxSlots; } /** @@ -464,7 +471,7 @@ public class Job { * @return Permissions for this job */ public List getPermissions() { - return Collections.unmodifiableList(jobPermissions); + return Collections.unmodifiableList(jobPermissions); } /** @@ -472,7 +479,7 @@ public class Job { * @return Commands for this job */ public List getCommands() { - return Collections.unmodifiableList(jobCommands); + return Collections.unmodifiableList(jobCommands); } /** @@ -480,7 +487,7 @@ public class Job { * @return Conditions for this job */ public List getConditions() { - return Collections.unmodifiableList(jobConditions); + return Collections.unmodifiableList(jobConditions); } /** @@ -489,14 +496,14 @@ public class Job { */ @Deprecated public Map getItemBonus() { - if (jobItems == null) - jobItems = new HashMap(); - return jobItems; + if (jobItems == null) + jobItems = new HashMap(); + return jobItems; } @Deprecated public JobItems getItemBonus(String key) { - return jobItems.get(key.toLowerCase()); + return jobItems.get(key.toLowerCase()); } /** @@ -504,192 +511,192 @@ public class Job { * @return Limited items for this job */ public Map getLimitedItems() { - return jobLimitedItems; + return jobLimitedItems; } public JobLimitedItems getLimitedItems(String key) { - return jobLimitedItems.get(key.toLowerCase()); + return jobLimitedItems.get(key.toLowerCase()); } public String getBossbar() { - return bossbar; + return bossbar; } public void setBossbar(String bossbar) { - this.bossbar = bossbar; + this.bossbar = bossbar; } public Parser getMoneyEquation() { - return moneyEquation; + return moneyEquation; } public void setMoneyEquation(Parser moneyEquation) { - this.moneyEquation = moneyEquation; + this.moneyEquation = moneyEquation; } public Parser getXpEquation() { - return xpEquation; + return xpEquation; } public void setXpEquation(Parser xpEquation) { - this.xpEquation = xpEquation; + this.xpEquation = xpEquation; } public Parser getPointsEquation() { - return pointsEquation; + return pointsEquation; } public void setPointsEquation(Parser pointsEquation) { - this.pointsEquation = pointsEquation; + this.pointsEquation = pointsEquation; } public Long getRejoinCd() { - return rejoinCd; + return rejoinCd; } public void setRejoinCd(Long rejoinCd) { - this.rejoinCd = rejoinCd; + this.rejoinCd = rejoinCd; } public List getFullDescription() { - return fDescription; + return fDescription; } public void setFullDescription(List fDescription) { - this.fDescription.clear(); + this.fDescription.clear(); - if (fDescription != null) { - this.fDescription.addAll(fDescription); - this.description = String.join("\n", this.fDescription); - } + if (fDescription != null) { + this.fDescription.addAll(fDescription); + this.description = String.join("\n", this.fDescription); + } } public void setMaxLevelCommands(List commands) { - maxLevelCommands.clear(); + maxLevelCommands.clear(); - if (commands != null) { - maxLevelCommands.addAll(commands); - } + if (commands != null) { + maxLevelCommands.addAll(commands); + } } public List getMaxLevelCommands() { - return maxLevelCommands; + return maxLevelCommands; } public List getQuests() { - return quests; + return quests; } public Quest getQuest(String name) { - if (name == null || name.trim().isEmpty()) { - return null; - } + if (name == null || name.trim().isEmpty()) { + return null; + } - for (Quest one : quests) { - if (one.getConfigName().equalsIgnoreCase(name)) - return one; - } + for (Quest one : quests) { + if (one.getConfigName().equalsIgnoreCase(name)) + return one; + } - return null; + return null; } public void setQuests(List quests) { - this.quests.clear(); + this.quests.clear(); - if (quests != null) { - this.quests.addAll(quests); - } + if (quests != null) { + this.quests.addAll(quests); + } } public Quest getNextQuest(List excludeQuests, Integer level) { - List ls = new ArrayList<>(quests); - Collections.shuffle(ls); + List ls = new ArrayList<>(quests); + Collections.shuffle(ls); - int i = 0; - while (true) { - i++; + int i = 0; + while (true) { + i++; - int target = new Random(System.nanoTime()).nextInt(100); - for (Quest one : ls) { - if (one.isEnabled() && one.getChance() >= target && (excludeQuests == null || !excludeQuests.contains(one.getConfigName().toLowerCase())) - && one.isInLevelRange(level)) { - return one; - } - } + int target = new Random(System.nanoTime()).nextInt(100); + for (Quest one : ls) { + if (one.isEnabled() && one.getChance() >= target && (excludeQuests == null || !excludeQuests.contains(one.getConfigName().toLowerCase())) + && one.isInLevelRange(level)) { + return one; + } + } - if (i > 20) - return null; - } + if (i > 20) + return null; + } } public int getMaxDailyQuests() { - return maxDailyQuests; + return maxDailyQuests; } public void setMaxDailyQuests(int maxDailyQuests) { - this.maxDailyQuests = maxDailyQuests; + this.maxDailyQuests = maxDailyQuests; } public int getId() { - return id; + return id; } public void setId(int id) { - this.id = id; + this.id = id; } public List getWorldBlacklist() { - return worldBlacklist; + return worldBlacklist; } public boolean isWorldBlackListed(Entity ent) { - return isWorldBlackListed(null, ent); + return isWorldBlackListed(null, ent); } public boolean isWorldBlackListed(Block block) { - return isWorldBlackListed(block, null); + return isWorldBlackListed(block, null); } public boolean isWorldBlackListed(Block block, Entity ent) { - if (worldBlacklist.isEmpty()) - return reversedWorldBlacklist; + if (worldBlacklist.isEmpty()) + return reversedWorldBlacklist; - if (block != null) - return worldBlacklist.contains(block.getWorld().getName()) != reversedWorldBlacklist; + if (block != null) + return worldBlacklist.contains(block.getWorld().getName()) != reversedWorldBlacklist; - return ent != null && worldBlacklist.contains(ent.getWorld().getName()) != reversedWorldBlacklist; + return ent != null && worldBlacklist.contains(ent.getWorld().getName()) != reversedWorldBlacklist; } public boolean isReversedWorldBlacklist() { - return reversedWorldBlacklist; + return reversedWorldBlacklist; } public void setReversedWorldBlacklist(boolean reversedWorldBlacklist) { - this.reversedWorldBlacklist = reversedWorldBlacklist; + this.reversedWorldBlacklist = reversedWorldBlacklist; } public boolean isIgnoreMaxJobs() { - return ignoreMaxJobs; + return ignoreMaxJobs; } public void setIgnoreMaxJobs(boolean ignoreMaxJobs) { - this.ignoreMaxJobs = ignoreMaxJobs; + this.ignoreMaxJobs = ignoreMaxJobs; } @Override public boolean equals(Object obj) { - return obj instanceof Job && isSame((Job) obj); + return obj instanceof Job && isSame((Job) obj); } public void setJobDisplayName(String jobDisplayName) { - this.jobDisplayName = jobDisplayName; + this.jobDisplayName = jobDisplayName; } public int getLegacyId() { - return legacyId; + return legacyId; } public void setLegacyId(int legacyId) { - this.legacyId = legacyId; + this.legacyId = legacyId; } } From d20e865cb0fbc276240e4d315d13d12c7432364b Mon Sep 17 00:00:00 2001 From: Zrips Date: Fri, 23 Jun 2023 13:59:29 +0300 Subject: [PATCH 30/31] NaN issue fix for browse guy with dynamic payments enabled --- .../com/gamingmesh/jobs/Gui/GuiManager.java | 2 + .../com/gamingmesh/jobs/container/Boost.java | 113 +++++++++--------- .../jobs/container/BoostMultiplier.java | 5 +- 3 files changed, 62 insertions(+), 58 deletions(-) diff --git a/src/main/java/com/gamingmesh/jobs/Gui/GuiManager.java b/src/main/java/com/gamingmesh/jobs/Gui/GuiManager.java index 8e13b85d..980983aa 100644 --- a/src/main/java/com/gamingmesh/jobs/Gui/GuiManager.java +++ b/src/main/java/com/gamingmesh/jobs/Gui/GuiManager.java @@ -27,6 +27,7 @@ import net.Zrips.CMILib.GUI.CMIGuiButton; import net.Zrips.CMILib.GUI.GUIManager.GUIClickType; import net.Zrips.CMILib.Items.CMIItemStack; import net.Zrips.CMILib.Locale.LC; +import net.Zrips.CMILib.Logs.CMIDebug; import net.Zrips.CMILib.Version.Version; public class GuiManager { @@ -285,6 +286,7 @@ public class GuiManager { } double income = jInfo.getIncome(level, numjobs, jPlayer.maxJobsEquation); + income = boost.getFinalAmount(CurrencyType.MONEY, income); String incomeColor = income >= 0 ? "" : ChatColor.DARK_RED.toString(); diff --git a/src/main/java/com/gamingmesh/jobs/container/Boost.java b/src/main/java/com/gamingmesh/jobs/container/Boost.java index 6a190d71..44e6b747 100644 --- a/src/main/java/com/gamingmesh/jobs/container/Boost.java +++ b/src/main/java/com/gamingmesh/jobs/container/Boost.java @@ -12,94 +12,95 @@ public class Boost { private java.util.Map map = new HashMap<>(); public Boost() { - for (BoostOf one : BoostOf.values()) { - map.put(one, new BoostMultiplier()); - } + for (BoostOf one : BoostOf.values()) { + map.put(one, new BoostMultiplier()); + } } public void add(BoostOf boostoff, BoostMultiplier multiplier) { - map.put(boostoff, multiplier); + map.put(boostoff, multiplier); } public BoostMultiplier get(BoostOf boostOf) { - return map.getOrDefault(boostOf, new BoostMultiplier()); + return map.getOrDefault(boostOf, new BoostMultiplier()); } public double get(BoostOf boostOf, CurrencyType type) { - return get(boostOf, type, false); + return get(boostOf, type, false); } public double get(BoostOf boostOf, CurrencyType type, boolean percent) { - BoostMultiplier bm = map.get(boostOf); - if (bm == null) - return 0D; + BoostMultiplier bm = map.get(boostOf); + if (bm == null) + return 0D; - double r = bm.get(type); - if (r < -1) - r = -1; + double r = bm.get(type); + if (r < -1) + r = -1; - return percent ? (int) (r * 100) : r; + return percent ? (int) (r * 100) : r; } public double getFinal(CurrencyType type) { - return getFinal(type, false, false); + return getFinal(type, false, false); } public double getFinalAmount(CurrencyType type, double income) { - double f = income; + double f = income; - if (income > 0 || (income < 0 && Jobs.getGCManager().applyToNegativeIncome)) - f = income + income * getFinal(type, false, false); + if (income > 0 || (income < 0 && Jobs.getGCManager().applyToNegativeIncome)) + f = income + income * getFinal(type, false, false); - if (income > 0 && f < 0 || income < 0 && f > 0) - f = 0; + if (income > 0 && f < 0 || income < 0 && f > 0) + f = 0; - return f; + return f; } public double getFinal(CurrencyType type, boolean percent, boolean excludeExtra) { - double r = 0D; + double r = 0D; - for (BoostOf one : BoostOf.values()) { - BoostMultiplier bm = map.get(one); - if (bm == null) - continue; + for (BoostOf one : BoostOf.values()) { + BoostMultiplier bm = map.get(one); + if (bm == null) + continue; - if (one == BoostOf.NearSpawner || one == BoostOf.PetPay) - continue; + if (one == BoostOf.NearSpawner || one == BoostOf.PetPay) + continue; - if (bm.isValid(type)) - r += bm.get(type); - } + if (bm.isValid(type)) { + r += bm.get(type); + } + } - if (!excludeExtra) { - if (Jobs.getGCManager().multiplyBoostedExtraValues) { - BoostMultiplier bm = map.get(BoostOf.NearSpawner); - if (bm != null && bm.isValid(type) && bm.get(type) != 0) { - r = (r + 1) * (bm.get(type) + 1); - r -= 1; - } + if (!excludeExtra) { + if (Jobs.getGCManager().multiplyBoostedExtraValues) { + BoostMultiplier bm = map.get(BoostOf.NearSpawner); + if (bm != null && bm.isValid(type) && bm.get(type) != 0) { + r = (r + 1) * (bm.get(type) + 1); + r -= 1; + } - bm = map.get(BoostOf.PetPay); - if (bm != null && bm.isValid(type) && bm.get(type) != 0) { - r = (r + 1) * (bm.get(type) + 1); - r -= 1; - } - } else { - BoostMultiplier bm = map.get(BoostOf.NearSpawner); - if (bm != null && bm.isValid(type)) { - r += bm.get(type); - } - bm = map.get(BoostOf.PetPay); - if (bm != null && bm.isValid(type)) { - r += bm.get(type); - } - } - } + bm = map.get(BoostOf.PetPay); + if (bm != null && bm.isValid(type) && bm.get(type) != 0) { + r = (r + 1) * (bm.get(type) + 1); + r -= 1; + } + } else { + BoostMultiplier bm = map.get(BoostOf.NearSpawner); + if (bm != null && bm.isValid(type)) { + r += bm.get(type); + } + bm = map.get(BoostOf.PetPay); + if (bm != null && bm.isValid(type)) { + r += bm.get(type); + } + } + } - if (r < -1) - r = -1; + if (r < -1) + r = -1; - return percent ? (int) (r * 100) : r; + return percent ? (int) (r * 100) : r; } } diff --git a/src/main/java/com/gamingmesh/jobs/container/BoostMultiplier.java b/src/main/java/com/gamingmesh/jobs/container/BoostMultiplier.java index bf43a86f..cf0edc26 100644 --- a/src/main/java/com/gamingmesh/jobs/container/BoostMultiplier.java +++ b/src/main/java/com/gamingmesh/jobs/container/BoostMultiplier.java @@ -23,7 +23,8 @@ public class BoostMultiplier implements Cloneable { } public BoostMultiplier add(CurrencyType type, double amount) { - map.put(type, amount); + if (!Double.isNaN(amount)) + map.put(type, amount); timers.remove(type); return this; } @@ -35,7 +36,7 @@ public class BoostMultiplier implements Cloneable { } public BoostMultiplier add(double amount) { - if (amount != 0) { + if (amount != 0 && !Double.isNaN(amount)) { for (CurrencyType one : CurrencyType.values()) { map.put(one, amount); } From 87d52d43b58acd4abbc77d0002f62bf6af9ef093 Mon Sep 17 00:00:00 2001 From: Zrips Date: Wed, 12 Jul 2023 15:22:53 +0300 Subject: [PATCH 31/31] Initial Folia server support --- libs/CMILib1.2.4.5.jar | Bin 787466 -> 0 bytes libs/CMILib1.4.0.0.jar | Bin 0 -> 771314 bytes pom.xml | 4 +- src/main/java/com/gamingmesh/jobs/Jobs.java | 3 +- .../com/gamingmesh/jobs/PlayerManager.java | 6 +- .../com/gamingmesh/jobs/Signs/SignUtil.java | 3 +- .../com/gamingmesh/jobs/commands/list/bp.java | 16 ++-- .../jobs/commands/list/convert.java | 30 +++---- .../gamingmesh/jobs/commands/list/glog.java | 3 +- .../gamingmesh/jobs/commands/list/leave.java | 3 +- .../jobs/commands/list/leaveall.java | 3 +- .../gamingmesh/jobs/commands/list/limit.java | 1 - .../jobs/commands/list/skipquest.java | 3 +- .../jobs/commands/list/version.java | 5 +- .../jobs/config/BlockProtectionManager.java | 15 ++-- .../jobs/config/BossBarManager.java | 5 +- .../jobs/config/ScheduleManager.java | 7 +- .../jobs/container/BlockProtection.java | 80 +++++++++--------- .../jobs/container/BossBarInfo.java | 13 +-- .../com/gamingmesh/jobs/container/Job.java | 6 +- .../gamingmesh/jobs/container/JobsPlayer.java | 6 +- .../java/com/gamingmesh/jobs/dao/JobsDAO.java | 3 +- .../jobs/economy/BufferedEconomy.java | 5 +- .../jobs/listeners/JobsListener.java | 9 +- .../jobs/listeners/JobsPaymentListener.java | 7 +- .../gamingmesh/jobs/stuff/VersionChecker.java | 63 +++++++------- .../jobs/stuff/complement/JobsChatEvent.java | 5 +- .../jobs/stuff/complement/KyoriChatEvent.java | 70 +++++++-------- .../jobs/tasks/BufferedPaymentTask.java | 4 +- src/main/resources/plugin.yml | 1 + 30 files changed, 203 insertions(+), 176 deletions(-) delete mode 100644 libs/CMILib1.2.4.5.jar create mode 100644 libs/CMILib1.4.0.0.jar diff --git a/libs/CMILib1.2.4.5.jar b/libs/CMILib1.2.4.5.jar deleted file mode 100644 index 87ecf7c5db92e6835c37cf32d4357a9723a782d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 787466 zcmbrl1yE&Ok}XU@LE-N1?(P)s?poLdF78l;ySux)ySuv;?(XhV@K?|D^mO;D_} zPsHJ#h?^^R?#z{W_sL8Yq`^KzgZ%A!2ozTPkB7hif%^R^E2<($Cn+b!pzwDwNRa#A zVryOtiKf55cK>~&{>fTWl zO#vT3^g-3Finq)@KKKFgWAH~{yH2|f$bTsY@*j%**5x19=ig7(0LOo*{(nmRZQp;B z(6R^GI{cH|zgq(7U*v>kC1rqye<6@P9x3w?2Pg zN6^^Wz}g641+aGfXC40?i~C2cqoY00(8&?-&&Yq@9oC?8%rDezfutUPbecBD=PzQ?Kx@E1JMrK5 z_(yY!nwS8L{>6X)4*TOKMXim@4F1*c|3jQ3&=L5TUjO6%MD3gm{zlWkvg#jw2yp&4 zdj7kbcz^PR7|;?R@!N@(e`!#(KS9M+CI2aq{(ZGS>L_VtVEUIP!T8fcl8ykY|Ft<} zY>W&n0e_+3AA?86#`LdN`XfVR0S*rTmu>ygesV%8f1%zVy`=!Kw*opi{9owt#~h|$ zXg{}^>j03)F7U%LE{D=Hh=*aHl04DA0hyZn)3%4P<} zHZFf***|hj*#h{#4>@HUr@u~rf8>}7(CV*v`Nx#00(7(l{11Ha#|2d#ftG(^k3afN z?Ke$+)9f!`Cs$av&tg-S1yp7&g}=hu_$s-}jf_w~VB)sGPDW zUN{pxC=sHlo7^=Dj#ao)vSmldmug{We@Pva-mkDt7<3y98}b{vhyW5tn2>Jp99W4l zm7L4WLNl&6vGD3I^j1PRnP5?)=Fy=DQ*9i^?8!=d7~+)k850_#Sd$gGdG@1lL-(J( zu02P+wyM_>%U(hM>)ZnQALp(+!feVSFc6SZ2oMm4-+KL@r+|MPAATPT{&AKdWuiB- zG;nZ;P|;S#6-9kt(Zx!((x4CN!9*j8?Evw^j<6$<@=hLDCN)W#n2^4QKc6*7);#nb z__&&J$*M7qP$Sz1rr6ne~d9XW+-Qd7Gf#2xOaRJzmE4Y!tHZS-Tp}gX0%1z!Xcu7L>HJt z_hnb2WkD2)9;Gh6hlSH%OEdEDins4dFo(rBm09cVXHg9;gJN~d8@*Ln*nUfF2!`!! zcNlJ-YluO1AEu}Daz!3I(Bxoq?dPtYCXHs3r zkJZQ2y|d5ca2mME*$_vouW30$WJ(y;v~k$9$*yQcaP5QFt%H};nofM-d(;D`{eoY) z%1Tr<6)Vex&L?niO`RgzaJRW;*-GNcA{|`Au!T4yVf$uEN~i)++;m{~DCi5iONY&t zzY&{m4)Q>la84Q}hB_ifk5k%Ad?U)5x`^A=4w8B0Z5V}bYs7uZ3JIi<9pBcC4C79> zq*2gQi73vn@UhMJ0hhXsoSt90t%vQCx!AHhVeO0xatgdF?-D7kZM@klaBU#+TS>eT zTy^o+#_*ZFv@+q=QX>+c;lBf=RO~1#Jr1FSckJ*>9!!}zFYb`Xhs?Oqm1?}_gvpqY zwC|7{G(&CFWh?W<<-GBojq+KSlQr){y=gye_LMMhq#nQi#Gj8Sd`x!^tHf;F2>rNM zg{>HpT2L!T$S{`*ZK8`5$lMQURX~e5DslgK3V=c^C`g>vlZE=EC3lI`aLg{tDtjl9 z(+s7Cx#_Q%yd+Y11^2>^>=-afKMVC1F70@;=lMCwF5u`D$|TrTJx=-bE#!(S7v@{c zN>xwifL$QFSm#i(?%Sv12t%9}_QA`ogsHBt937LEYdvY7*=Aj0I%0CQ3s(m38W?7D zv21pGA%OITfh&%YtQJw^F*&ywwa+w>+x+KKUs&T1fP!yg!<$gA7zQ8RyzlvzZyB!q zLbbQ3R%i{RFfgl3u-mZciWE4DNAp2<0+{TK?5^wGI;qB$6igf4vbjL)TkWS{Yx3;| z^p|(Ae~tMoKctf&WDt--Di9F5|9Q;+XT%q1Lbho0D&U^6bAx<>Ymb0DooC@i|ga6PZO%9O+!t+(O}+Q8heD;{VG%;eroR0bWwTX z+@@vK*5J0(T6y>Q(Zvzhf}DL%a{E4X`O#MOAzupdvVv2za0(e1|JJqhnM{0} z{)$(U4T&zd3i;DTVfX{*+)z+dWJ}*qzHRvitVgM&m0H9^Rb6F;jvoBv2DQFa)P;uF z1}3ux^4U%5w=T`6;WjY4i<-0Ug2jpmK@Id7j4h-%YCTJiJxj1cx{|_y=%=9X!3X!J zN?}w_b&Q$}R~gtBUg-9p|BZ z$o{ebj2#`JUwFAWBP8n!w?m zOUUBS6{{)w4SX)Jxkv=pPCZ1C<9ZS7S<|GR98?0hbfr-ZpupqMr*|t)zI!JdrL;`Wcjn3uSmO9FH7% z_RSy*eMUS!bLS;R`q}Jjo-a9?MRg)0|Ga|GLNNX;G3aZ2tTD}E+G%(W79F&fYB|cr zw`8c^(u;*&*_Vf4@Ad2*_j)_2t6NY5B}rf*&%O~Zdr9+GLSw6{>sQVn{lpZ0bj!%! z>KZ3tUux8Cy1@bD^P&tl6@xWwAooE?!Rl&58rqfL0gwUwEReAayE zpH%L8ZTcHxY@wv-S3%>c8y$fcWb5Jl9jGz@~wrP`>*YNer%H1A|1 zBFXD51`c*6U967Y3Fn=Sss7ysCLO1=2?~@lNa_Eozyo`8JMJE!FazBe} zKJdkoX8cW4Xp-ss_uvgOU&Z4&cSR4`BHO1I;}IFiK|3(d;w>?>HanDUes@jPQ-I^w+c1aJc z3*Dk1o3p9V*MF}HeZ3-SZ2w7KtVqnfS zFprk<6uWG-YRn{PYjg*MrlVE<^Qb2*4QKWaAv{uHBswfn_GR#kzgI%O+KsLIkiYy_<`ea+Qr|_D_Q<|*TNAiwf(J%& z#vKEe+IhiUW#wUyy)^2LUU|)Nh4_2b4AJo#aGS`NUs`SQhoryYH&m}OL$kIIb@C!b zDXmA6Ez8g^G|?{}-CBh|c@bhi+@nlNA8Y$|nk6kxd4xUvG|uBMLNLH++$(GOPyNw$_VhJG@kV1ACvDKH~0r+$q+Zf>%sddh%bav*Pa+pn5Vz z`yfs)Aq2wdjd$|vVVTl zC5Bh0Sklzl`L{7xhhT-MrIFpdPi?o6jT z)vSpxixqO7%qZ8`w#eX@JFO}N$HQSKt8Cw8t^;aP^l!x9*4_iv!C2wulEUp57*5ZM@p(W02rDyGNTu;N?=cO`1w>u zURhNOfP2X6UW}ABwrE2?)lyN-KZjz0iYl&*&^pWW0gF&H`$vDuX=bOD%#P$P)`)`+ zLh)pb;<*=``B^knPd=9EcTcG?$nlj=m!lRm+TSdbTW)6?DxvMP%`Nw?Bmc0ywbUm3 zxeFf%8skl|<=_JB;C3P-;exQ^$g6Za8|=$W(X}VWMbj*D7@jjuH3V7!$HCXNrtYfFTSV zt)COhgPU^1$=WD-rB)v8#|xjrEUma1p))|w-Us>)uqfFEGas3xM(7Hl{G1x zWm;#{=s07`7vSr=pxJlYxcKvArs#LLmf;Y0w1Xp_tO_;Ea>}hIDW&pVYv?g%o zhLMDgtbx=nwI!%pSw5SeBjY61tAq|wMhEpJZH@KPMOYyp*NSJ!w=;L+9(X&Y{eyIh zXH9l^Hbfqx(caCf&I;JNjwC6P;!TdF@T%hqm3Y3xHpL1Ojw(M4Pph7w=2vW+wPifL zt0k8Jc&^c`by5)=Mrekw=)M@;m7yYH0b2<(k;!7s6~Y`>j}5npHHnerS3}0~m9Sju z`O!O=WdX#(6OIZ3y1CN@)Vkywy(WP8!G6(%!)vB84aYlo7Dn|OTe@?FW9S@EZHv_v zG@-*y)nloZk!m5|y|%GqvLR;-*-pd#ZS<9xpdquMBZ!-37n^J6=LQMZek@BR?$!Z- z>3r~)WF|Z8uN5h>t2=j{v~{<5WizEnW>!u<@CTMcU~V?b^-a164WXsoku!)_W}Wxg z+Hr>mxpcF1sim}Z&JUCRP_z<2xY|x_6OT9JOrcis$A@dycW1ZJ8O0il$H2DFuUMSR zC4jE(RF;8~U)os$;Av<>0e%@B;){MX0bYt7u95f+nm8q{MtpeC=;Vcd*Y}+B?zm!w z;|{a>7*UhnS5bgt+Hk0>jE=SJ=kPMuoxI+0nL$}Uieu_D9M%YHxM1#Mez{F@4WSNA zKBstbx@S{R7AGdY9iDK}%}HPrku-%CiN~Rhl1#_+IA_+v>P8M)nCa^d^)QJ8&n!2hgmi%EJf0o^Z#@Tg>*IY890fQv<)_A4{(A+X)iX!Cu4U!a&>h9I(s#__&ya0{ z(&=r2<{|QC8L7j;?go>WvY8zjUoC+L z))@!44Xz|VCPa$M6Bb46Jah{vjwCy~7wZ}$d`pASe#9yFF^!Z>%R^B_!j0ybfb1G; z=pVX$-_eMauJ(A|>{oQxcgk#> zi9S5q{D7{xF}>dA4$N;4#DfV4M!g`ofc-C9^8%|tRwa@3fvX>+4QPDKP_p$X>3)73ITz8VzL+5qK=BmQh zgJPK^5C6bQN$9Gq#SDEg1oe`mV!$3e`?NGRYD6h}*qPPR^;yn#)qjjEB?ZFwGggwM zSh#gj$9Otb&>XoWhDm~vb1SZTEiTX8UNebsBr=L73<{zp>QZK3GrNW67~`lvuIjOw zive+^*EW5oRAJTkU5;o z1p9H8;iXA{J2k^%5?-Lyx0a`tQTzNOddh`QOQDIdyLW=Lp#~#*dvJ!!2DGN8+A|8y zAcx4Q)bLxpy?QD)-f`S*h7A({p71pvlB`zCFV!)&LCJ5k0He+JX;4UsieRGdcvmtVtGp9jKSQTVn#F9%wt->N(q>f2 zyG6evfX~D9h&CW!t{TyB9^iI7lI%gc2>Y+b zFs|*KI%z(fmUN$)-cE_!$4#DGYFNX+Vd(NfeRFLvc%u&#h{Q#S{%8~Y3V9cF<&-9k zB=WGE)-K6u?=2x1ZV%CUzWroX8m#!v|FBwerFBAypnVK>U4TF*y}w3|_vA5txQWB% z?dXif6{ZjT8A|kbKQ=q8TG2-L@m$zG>%^{}o~5 zF42ZZvO2-Qtt)KRmR)-!#T9;LKf@JjXFp*HX6}eP?w`7*QCyVw>vgZ6UFP!0!RXl#4VOFrMCs8peees z>i__nCk5Cwbz(L?#k2?RCi`G(ny1L)?LGV8^@kDuK2t!(9Y_>zxEmjz1cIHSYi4CM z1?uF)r&c$wr`1km}c*{FXqlQrZh%Y=*yF#j8Ju`a*!~HSU{$J3o7|T*1ldXV)I94iw4#LN^_B zIlH+U5?^9hyTw%~Q^=fB%*BDs0-r7vw^ce!ThAoXQ9m-qkEb^7g+pL z(jlXq+xSA(3k^=#e#U~+CinNY-=HRp+bInzNQer3(q!~U!IYWrKb`cY?VcgEUv3C` z3%tR!!YMqrvngX6J&^QMNhL|a%>SMnIkQj4^fHO)48L_9-cg3^#xV$E$^^Dw2;yYB zPTMZP`e)O$y40@Tq7wAc(*?>4{%@)>@cL~W{)sJ#mzmuf9U7x%VlhL$?V zP|NUIgS%vDr)fb`{iap1kYAkbW76aZS!OGj6%OFuM=6eWpbv&ooRK^>k%6;#HG0q6 z>El+q+FZXL#Bv2Wxd&PgLSR6|KR`Sx4u_@>B|D_a3e%wCTc8pOQ0dvF{y9TTdw5eH zOW)7sNTp^+TvhZ-LzcmQ>J|$7=+P`+AZLUb$AZ?nyrI13d*bbk<+XlC0ZK(8eRPQA9nR!yXMPy=kn0=H#DrAX5~u4{#Cv(Q14 zNoRwO(E$ge%k@mbQ+Q@fQ)Y*2SlF`tWY6n0=Z7{tjj~!ZtsQv*8EaBtO>*2K*8#RM z(@r~ZYwI;O#7~?Y9$yo%p#yiQu2GqN8Z1+Zj&BE8?kQ1uhTgby%F_4^n(a@u%ebOQ~p2oRD?|@tU_K)uSe^#-v zu;^gLK|w&wf4AOQ{<@-N53mLNZZ%q){-c)tpLMMS0vIg_) z6<4>uIDwTpV8FqNkADf~PFn>DRXqQ%7gtO;TK zwtXl-Pb(N+!A`G=O~w-M*Px82c(ywC!#cNo?zoLGgk>7BG-QW}?Xhnl5*73{(%pYv ze8+=04{sAz^cqrN{g!Y(wp}`_z+4@U7PvPJlP}$BD#*QHE8FJ;cDkgmaq^5;#&+fm z(8u!+>^Ta~-cApGm`2N=U>$ovHNT=j-X0n@N9U+6*e>+ZUNTvF#z6MFu$@A>U?OnD zLN=*bBXwA^fC)^e#kx;<#LwFO3p<(VmKbfP-jG@6Pe(f;4obyO*@HPE2 zYw>-vFo#ipukIR&^sOk@s9B6^jqyHAebg>#$#hBvF~!i{sD@m|G_{)29>TD$zG_CN z0Sg2fB|jOZxcv>~Y@)nPI4!6!ZsnF>4Hks#EK~s zxB-24cjAVZq10hnCZ#%UwNfw$hyG`J=64dq5O(Yz#3B(29#4wH-`{ZlyVCl%ISEoM zDAV{)ARxHEJ1k%S$jg78vG}Kf3t0o}-_2Ef(%*f5mR8XFXqi`=(>A-)TKd$iz81>nsp&~88&iG#PI zl{rC+3AU(-8Fv;~g8JxCEQP^FF*DTsGZtwiZH2_5fC5{9`!!o3>3_ zwUmw>LP8pG{lg;)shFZt#zP^1rKp?X3EB@c`PN+ z@57l8X#Zey)0pDh!>=sWuh$JjIMuH; z%)%CG0>zHHUF2wq2U^}(h4Iy*K$VFwo@YJB@6=yi{c>4m)6ou$PDnJYhP2*SfGsLa z=D68LfrehKW>D2(MAq`NBKN}%YXr*i!1vM)54}RV8(6qCRn*=36dCC(Lx#bnDS%?vL}bd)ESAaYDDZL#v{iM zzo?Ltp<~jpJsg0RP8PUL$~tMYo7UL4yh!HQT90z?Lpwk-vd*wdx9}<&P&?dII-ZC& zpf_R$Va7hOU(2L{-Xz%Ew?RKdu6)V&3Vo8%_iV_7LvGr2mKWI6Jhrid8sgTBpfSaW zEP&8_5pUDYW!QFu7xCD^Qpnqf+%wA(~vAYb|QC;QBKBNdumj_+-T_{UpkM!E16B0awzq@p~M;o1z{xlt?M6@oA+9mTi=Ldnc)(#n6KI+Df)J%*|9Xc(R zM8X9sUQv6yM&gVE`Xou8K718MhTA@M-yq$%?2j7vi(bMg0?0gu<8h^U>B z`YJ3h;$!!tIhYK$g~OSRBh?C`pIUo5ij^My6yjY)_UJRG#V$HSK!q=?u%vtl2G*jI z{9M^kkrXMtlu=e|aGoSFC1n))n4&U=H^>XLI52A|LL7y9?n#v-*GT<;ba#-JlNJJd z&7+zRp}Ocv56T0$N|LzTDUtaM%X2w9T;!kJon=wfKIj*B(fvucX8%j?Y8y z76!Aqsy{r_Biqt4MT|Pd`AtBURpzv2cf#8Zz80!?a_^^mj+;lNqQ&pHazPQ zGl{_LBeKWyOcv8sd4OG{n&27o@DA;|Qpmih1#(UPOH3DOX`uXkCG)km+4XA-F~o9> z2P_Xsl}SU(dnduPz^njM!Q+vD0pSPe@@34?j7!(t(p=ZOEA;xZUt^g$tl{THNWQZ2 zLQGxq0dGY|r9EiqdTyyxlz1k&s-b)IKDpmrTFlXn!D8uUmwWVALe7EE-3vl<mcn^*r8qD6<0pYN;w<0a z7~^cKf3Ce1#D>D(tFKr@0Uw^Eb-dtZTL_LHhDO;EUPBDzsW>{KQVx$?7lazo0tC&y zg8N&gZeZ)-O|fW3D|Z~&;A`g?s@XSh|1DoY7=BbAL4tr3{GNVc|9|+U`OhpdpaJEG zvWV8PnaEqq3ooW0ZkH|RO^D+Mn&Yn#*^{gwW1QW<1dxoYVI2m$31`M$<|HL^iz}>` zOmeh|bIh?yWhbrho}PA;jVpZ3Ote1ktU9dc<12WK@~6|THQG&ocyfLJu-WMP=zQGt z`iRJUpE4=}Dev8UqZBLwje=$v{apG01k<9-Nx7b0*zoxA6N%D-Nv02oMhVA$_q2uL z4chf}BG^312*NM2op3jmZblGrYvL9SEujPfkl@QVOY` z=si_a%K&cj1*XVW*$=gKi-gDhi>DfK8z}Dui+<#q?2rhsUjR&9{dy8%S{{396GJ8Oeu3kKIZ~{kx^+x zmFetU#UC~ouAyr=2pk|3NP`36a4W&>KElCdT8Cp(jc+l)f9jT`MDo7HgYLlXU@A2Okoc7RBWh?9_-~ z6iAcxSfU}Ue8@ux^!1>AAR(%DPOT14OwJ5N?q;G@)_0qM74W$5e|W?x#BXTmkgFq* z)G6y$i-|q9+9sXkh=T*GpIZ?(oNe&TXUf)B82ALG$dcGi2<5S*P&KM_6|OdV(MxQ0DRG5^XVC-}0t+U}zqjdOp8am~Y8xiq zW7Q;EOU<0BwhM-~NAfE1w@Yr_#8^2epUgI9LJ!P|NsN7~PU69Cl4MMbWuVO4xXH&# z%C=FvMn4w&2u?)pk{wvRhOcZ;Kd|x^*8j%Y!RIg7*M z58+*(I9N`|kR|UA{>0fmWB|UoskY0%^pBk-O&9D1haznG#Wz0(ktx@Z^7%*_d~f0_ z-sy7<{&b>Y)mTxJ2?^nX(b5q%jOrerGJD&M-Yj|_X2ynb9;NE=97&<#-+!_$D4{S2@&q5-aqdR`rTfbQN zffE0jSWQLx&a9DWh%0C4n8kIjGX2H}+7xEGf*E90Ty&Ca9nYVpAdYMdl(ch&0cJx} zRE-Em&f#=h>aj5!M|TdDm!x{<8F>H`8II4IjEAt=z4YudQ>o%cpxEL#CBLn`yZyR^ z=~K0aq+Mh8j$}~ZX%7j6wt9N-`cM^Hrl1pt7ewG)mAo26@->GR zA>{U5d{1rV^?36f*s*T1+vEGOIo>MMn)yMYE09?elOPsiGz-taL3Hq{=!dC2b2fHSxC!y+oE8Z^s}h#|tr zR_d(nx^XnM?K<~TO>lSkEK@g%%zg~}xG06Ta4YGrA*{~q8Rm4l=Oqv0ULY`OrF=AL z9TbY4x0uw4CfN%=o`Q{hZ>87S4sGG0ovGZ|-n2)Z!Aqp! z@8cKr*)x0RD%D^*gH6{`lD4Jeq1;pQu;bGO!P}uba|tJk2yeagnMP}{zfHtg?~^Wa z+MA7U^}^B{);SIZUwbY(+%kc|+~6t%RBfMHj?IMI>{Va*4izZ7AQNe|<}NFr0(pHB z$d(jOHCO7-I2Um78X3LLV2Ofi! zCsU?&UPWF6BQ@0QQ;{WUWvq~CxMXAqT)gO(>ly7ff_^+KK&5v>U_qy)@eLu3Yyt99 z1m*Wg6VLJqs}C{t>~K@-NwQ55r_S}Wv)UHpeG+_7Fk@}tO`2Hzgi$xsd(I26+EYKO z?u~8bw<56C+Gzcnq!@6AcvxKJAueqm7Jjsd870o{F1dpeP!lCZ8DCvRk~BB9geweX z`7_wwK$?uc51UVn8e=X{qtyOzA1#lZ%?Q%GBSA-dTi+Tr^8q&*+Ndx{f?30zx~=7t1mfb)w^m_7qvTsWU7 zX4igw+V07|+V(E)k4_$`8ZpO3b+GHu@W$yE!bPqSiThL^q%DAuU=8v;IDQZT>npU~ zWlz+V(RYynEe^}A2m9>-J^J>gvA{*_oajgSVEbgzJ9(_jjqR^vhUo_q_zmQ)N$EXw zl*+atZVR!{naa~eSH;MChaX~OSsCv446u9lQw&(KUD%VnFzekA)N;9zJWnIyOs~ah z)nYgD-qc;rMeh(@05_r#z9HD_Hm8O+?2@5N;1dDoJ4(aH_(K)q2l&6fYh4w6{tEnC zy$~D(g!TV=cKX}k>wnj2{%iC#LB&G;Z?ELS((0oUFe=eOp;`@eQ3ai7Mux#+^^~9d zLOfF&cbTil*mKqb(!7jSdeI^7$? z-?yfDrKkH9m&10hmo5@{6t?bHD3+K<%VonpRa0q!u~>W)-8f75J^!{zenWBFUE?=o z`}=2JNl~VJ^$v32@O*rtP42JOyGBZFK;sD1G+S^VfTSabKq zB4-Ml*ydc9J7s(^IARMkKGz%q)1rGW{9m$>t1I(suuRE_xA6+%y+(JScX z&r6R2M*~LPzm(Tb`>1N3={Mhik!;G`BM-pZfqpYkPG^J#r_F;-p3na7xvCO1cM=)G zc%G)o%@7`8XIF)~o^5x}w^o#1 zShoKOe~wyO6-*4~{nNivS4e~b&iZ$m;O6)Lkcs|psryef{+IGnMZ&4vZ!QmgC{qSF zC#0#t=!JUU`RbxwL-=~i~n(94pKVsT4uv4^; z^^7bqQ^wf^V zUc=y(KwT7Ak^dUBhW%F)^ZLM?tY40_gH zt-ZIQqg2%St5@QIJ{jUVkMoe^RuSlU){kXJt>hcn&7W>0>A6vZka(xJ_Ku_yb zV-XT^nlS<{@bAwg=8NC^oZdoxeSh9{usiA|GwA@5&-V~_6zp{IA8`AkWL&r2hPD?` zKLASJ2bkN`Nn>7`o}`DBbjB{n8jB~~qE6Mu$%bVu-;fsItLkSfE3a4Rn_#&f;yWHJ z@_MRgQ^>rW85nuTo*uK#K_3SQA}ev;zN8p(FkZ3@ah+XQ=C8rY)DySCsm|D&b*hzaaK zg1KbG1LE~aF0Dw7-(LT2w8nESzh*YoU%Od0Ru5zC8f1)BnHzU(UqJD88D&n!`O{1=`ea01IWltK4uDqq>4Zet+{4eq5n7=DdJ{T4)xm0L^XFu`gl zg7UA7Y@f-MHG55L8O+k=_?K{dto^(9Jff@J8EH@b*2$ML5H&XZ(0mQ*_?P&6=>oc; z@hw9L>6WC^9jjK})QhJa;P)$pj}H_QIUSqfGeU#|aa(cW1AgX6aMpkNQg_BuiI@AQGUI-77Vjc<=zPWp9+vp?~Sb26@b4ABqRCj54vw- zQpO`QBq7R_pL<#8z@-c%ITmIca=@h|EXauBYlU(E=VH<@@z!}bt4j-3>nm0O+OJd3 zj&#yD5hymVrgn~9ziWUzhdhTanU9?}+bmO`G=vb)h!CE!p&dE5NL7L+T&-MKIWfzu zEUnC;9)4DyubcY+I`GDdENcjN^L0>V#0{?^PcO9$5dmx93*mF~yJEp)_N;TM z<5JnIU0pK$85nMx-AIBD7YN2qBa2ZtVghitW3kqXs77MUL&M3XU2V(}tm|xRYb&jT zq(?QUM7|G$QWle6nyp*Cs|$TjP|XN{oh9QYH(>4o`1i$pb|6z|;!Q5?qeH;G4n_(a z8)d~SsNFe3cz8%P&}>x^$KoBIIEp}8qiZ?*IaZj$ZL-ZQq*tB9xclZkx+&q*^@_KMm9PI%v=p`a)Ul93RyceKHVqFa{TYEIW9j7bG7w9EVIQnuwY9A2^ zUV9e&WtT`<4gI7zE@4NH<-l}pw+D4`fICs2>hcW59jfe|BXOoW-F8BRw}#kgBN{UB z$AlSDVvYhm4fyBCh?3_H@&c>t-8q!(e5(h6s=0p<;w3P+lwmxct;Di8Ic*ynT$><1BJG0u)|a< z{3P*=O?OCz>g)htvvUQ?3uIIQPr+(>aQL&cq+U*RI_R&6!<&Ua{BjGv{1Ns*Z&s$C^q3WGFG zM};qt5n9p|xH^Nvql1A_whQ6+;t!Wf$D0947#9F9<5Upoi(U`QRUiGOJMoClr%^&} zc668re;EvX{n5gO2Rb}FSva~=UDxOYBc6c?vuWFHB9mF1aJay5BDgN`p8yR`heysD_ zTg2-NhV3X;cg-Pn+jQ0X)qeM#7!x)F0elXz!QP7PGRxAn{Xmg#Sx2wQq;nLUrlzkPdJBv+wK884H7*!Z04?KQM22r@ zIS0h|_;&M6q*-qfvMR=|3C%~F$F3M&Q$F)U-`Vy<$A+TL2cwa~02vt<)2Y`{+@4fq zD)U1HIs^rGzv?2rVrJD-={-&#$-}1;i%Y#@6+cv|hr5u_^%x^eII!=9-f-|fB0shk zs1e!nNi8ee>FZ*)t$LmmtauKgsI*Y_KeXG6w!0kLqdpGmV|tnd;XY@SeGTf`Jd^d$ zpH{1d#%ePpkuU#soN)$0fQT+rTw%yMwM}9@u*_pSU1)`=K{FpEWJEl+;!x<6RG^EwJUaWYVCX@RNzZ?-lOp_7g;k&kq5Zk4#R)tMo`tIK5 z&fw5u4HDfVX*1+6tC+u(z)VGfbbU3=IUDLGD=pv56=;i&SQFMt^o+}vF$}8?6MIT~ z);LyTqAtQhnr2xuq{LHK4kGESL>;LTfO|7QhzZhh?5Ix$_LPQqCLIRsa?@~UFW(}b z3QBqNC}0D|y^*wV;7I*VetqgHNhOK-fX*Nw5W973 zjXiMq#hayU|1!?+v-YK8}q%nl2miZjWCM+71ZB@7uG5b zJL|p0YDEDm96RJ-VvOUA99j|5r2qvDik%(>Dv5k3dUE!M@w1a@PBwCu5Fg-YK zwpiAIK~Ituo>GMpT`MIC%V}U9;WoN5bW93)+>k6c8%&?1qQf`iD6X5}IQoX*vcDNY;d+l?ulAnqiOPKNtNJWAaKM%dAwVo@AS|nP$fx(${+NlurPrX~y`^fr!^Q zIdXmhdu|prgc}6L92$%@oW>}3`K4?QOBK+Uw5#aT%pi}wYGdOt0!`0t6wM@+`jIvRH3?|SxVj|RgRm6Nm_84O81^5N?^*=7ofQd9W1BoEVph}0o5IG>Fv?(?6feL|(l5cLFsQ{|U(hg*09;*Zh-epQ3^D83bwlM^ ze9{_r;jXfN%=A5=!wjTPqOzyDo@Fd_^XN<7uD~DM-$*rxcawe|;jJ2C3a73b;tDsf z62}p%Slq=PB(?$O*izCVqZbT}?*e1I8*iMz3U3-9z$wLv4r=SsD0>oUr$86l64fzk z#hluWkkD^8p%+fE7cBV_4OkL)wR8gL%d_DR>>0^etn#8t$UWM6BY#>p_Ntlqe(Owy zQUW(8*WmssGwoQKvQ<)&LU^pi(o?H2@p*!n4TU$XW!gEHKLB4ku}E%y%5XVSxp_3L zKNJNRk#Vw2O;(e+V!E81FVIMP#W_Y<^sz&$#uPPAx3Hvj-Wm8@A#3!Xs;Gu91gG4?ip@HYJ0ug^g+Kr%ebCwomayyNRgd=MwE%s-G)A*=wOi16Zt=Gygtb;8o+s#Y6D=7X)Q$BF>HytChoF1Qj|j_MS<8F!`YWD$ z_|BJ^P{I0ba?2h*v!TAFK!$9TZ-8%{BkWvbYkJ*IuHcIfsOL%=Hd5Qb??Es&N*GqA zZ$(?GDp#~o^50<*u4%KrSM>Pt(&$Hy0l!S)j*BZZ9p_sYGC+8E2VkpRdzs8~8ge>o zDv3EUs_nO^J(_B)8%PS>=&lC3ZlG}Wf5O=jdKR&486Tr_~SH|F`)4QAOOLX5Rcnx|H9pBwm%nfyPxJmZb7UQ-5W}zko z`gmowu$8FSX_mlDm8 zsb57UnmL!XqEc5I=0+c`R&|TN@?R-(`z6~w(QRrBy)NFvNH5ofK>zrgerb;|lS=n-zXkGZJ$dDpc%zcvgwX{=7Kwv^0V(N?CXta$-VtSja zm7a5iw7(SNX7J15c{Tb zJ{dk}Z#6psTkTd6dEv`*{FwIdD4L?98UA)a=@gI78`_zwG(9dq_Kxp;->zT#*X zx`Orkp!xI=dgvMN(uFT`&YZ>5hX;62(8~V0rqjMuqAeJyz9ra^QJAt6eFcgtB-Y2d z{Ti8lXxJ0KK$6VsHS*9ddmiy`xkW-)6VK5T#ZeRI8N&Sb30paEW|F2ez%OcWZ5QQn z*JQD_Hqt&_5GOSJf0UhLbY;=HrYoq}s@S$|+qP}nwr$&H#m@9#0PI~oBN&&* z7V+Td2R={-tf7{Dz#ed(^Z0lYLEgl$cQ_pQW#nS~x!}hfC`|2m10^>+;B~N_#M?{N z_3FmMy-`MfBNl7fSYLK#?LAaETyV4TGFRydQXjE4dmQ2{tV5o*uRbfOFUYM!N{$hJ z7E<0tG!7E9w{_MLc7@-c7o1$aVrXv3PEDiK6@v~4%9|Vss4Nf77{d<&O{L}ei-PoS=~u&Tz4)bzd7M=IiZqpUj`8djdby9SRah!W`Htm#D@KrwvEl>pi7%z23Ft zqCKY8IZ%K+zsHqF?Fs_>xQZ=tk+(JH@?0@avv-454eAkQBwm(aP}vQ%(d-F)-EwuS z!sQRUQ>G$*F5Tk75O1v!a1wBYfAf$Z5j2|YY5Ir`k|ZHA`PLpfb>0#~n8zObvmB^! z#tNFt#$Y1C|>j8Xx1 znS-UvlZRLPS@2}xoP6*!G~`#PGSk=(+p^Pchu2(E!Y)`^DqIDln7O{p`~=L@LUgxo z%nFbtaUC%uut49m_waq7>DYof81bxOMFL--TbUBtsv-0qmo-;xFcDH4*$8)WQ+Y%z zNYn-uX%TC*QKOUw!8lQjD&|ItQR}w|MrKUddteHshy1Kz+(y%gB0+ejBkRVn5TFT0 z#fMztA2HO8#%vChJn=ZXvF+TFmNOM_J%@%(a8N%=4*~x zwi{=vnl!1zOsiwPNj}@pu)_4&;~Cl9fR8YbOg?%$4@pIrE*fJk4zd@4rB9X3x@E0P zzrS|?JRs}-Ve(Y+lLlBipCJ~h!-v_En{bW<+z0NJ>~eR}*Sq~c6^V#Jf%W{LGEjs; zwsQ`s53wJ+`=8#rsNuJ-C3hd`N)*!Tq8(F}ra=9a0%Z>$Q@B0lzls4Rz%|w8kEm_y zvc9H)xaw`v{6;!Wb(6_3Mv1popligv08W#&5KP||{;)W%)WdA{;`QD*RA4F$JzXO{ zle&`7MLN?$E0`I&AU>J9@YG;xm1PYb_HhZx}z7)0NCn? zZB>fYCoEHgHKTShe3DO7$v4RNc!M>i*sL@$6NNA0dPEsrU#CIHqtV@Bty&E1`IU zZn*jLhInvTw#1p%dAJ1@IOQfCB?M*Lo#x+ zk~q(Ixl^?l)fV-Ws|7lykUb_Cs*!$`TMSs`ud$%~RuKc+|?JSXR=rx@5%0EZM zuj9CcK&m=XCEK{xl}kbrV^kByjF%`ssnTT-7G(qLWsyK#6T(#* zLP2$kT!=HP)a3+~6Q-zpJAJ=m$UoRB@4=F7SZTQ@b!QYSURvs=qsj|B%L z-F~<|$CgX0vN~WbLPestrt6|9t8y)zf(vGIq#pjRzcDNi$;|sn8b9HuC;SqA|E(yL z3gr6Yp%v$N|F_nZCz@?ez;_;*_4{D>%>nu!z+eAu15~oMbN=VCFh*I&4cP?2ck7C@ z3sMWIl@#F(Xg*NFGD07*prCbVS#@4jC%m-09Wu+=p{w6`5dP)`y!&Ap%T7vu=OkgU zrEd_gAC>*ywW6WsnD`eL*FEq36x038QC(Ue9|%3P)?oba;%m^5=~k~kCGwh@)J;tT z28cD=8Z34k-uJ|dF0EESwH<2@{{xPhW!NEht!;B=V@B{ebb9vk zTJ}~LY?k;P{^I6CXX7O!Flk5%u4y>%E&BMx0F%*#@O>~@e4>0A6|~8=RO$eyHtsoJsul_IYbvrax%jaxPBe{JUSTh)D!${{ZX!X0Ub>)wM zOP8FO(BCE2damP5Tsa-R{vwngN7{ZrN#j3`VY)-A`I}GPZ0YIZXK<&qr&Zcdy8|q` zWt46%ZRV|UK}R56w)lar5sH*o5XVfNf@Y2gx0dLwc96D^#jncB;_r1Gp2M9`eYqr&Qyorj#g`Gag(Fr^CzXB~3D>P4!G zhzg7%>f%>K!zzqIV!1Uja42xt#w=z#?GIT%&bg6o&K~6#70+oa3Q#`Oe|#3zA-lH=ksT|0j4uMjGn< zCt3R&M5J?F#Zk92%PFn!l*s8wiB@DLo}`<4=Vazwuay(CcnPpiVe z@Vx)~U&7YZ?w`v-iYBx>_L9q2o$9<~Rl;&=@JF)VpJhuDt@QM=k9e9@^+sbXDRFgf zwJHH!s}?F(F)$F=;Q07p()eJoXk=g;&9I?j{<*awNCFZT3P_vz(z;@atYVo3W{V`> zc8!#HqE|Grygm zVYQJLXVxa}=>~kat=YF zszte|c!8r5VG4aKxwG)wLPkVvL&o@c@LWMzbg)CQkshO~Fu-}nWR8>i*aFj1p$s8& znaRO6Lgr)`{HfS%B+;{Mc4mQoyErBWFLNC8y77e0Q266#6PKq#^ z+%BqAhLtIsDrW8QB`8#leQ`xP0bX(|(pODbnsD;q7-{MhnGu*x;}jM7qDI`MS<)v+ zg${{HeuC=3H+)WJ?O<3G$JmM*fdW%OHczGCyh!A+L~$!W$az_VS6Wyshll~et3t&6 zw|-|wZGiRq3KxRZoHUA04j%L`o8?b|(zM+>{MuQ25>8Z2fEO7orrZJxQbjdK*JN%F z{@%VyX)3GLA4ALA)?kO(VTt8V=5HDnr+~L*wq=glZ8`(ec0_KTgdef2b8BP9IoO~SWgq-@+U(*1U0KaaRMQ) zPS{z#e(b5)1ytnBBA!}O?O!aIp~H_5UhtyC%wt zM!`hAcWVu98XkdJxnR}oTqHa`o42pD^ina@a-FlZ!(T)1ePUjXf}`({ct?tvxeT^u zVDnIl)eVL*bNg?XESD2xEk^9H_CY))gJq>>zCqx^>=D4?4UeK|&N$&QnTqB~;w|H( zZyrMx+*2rFY{fa|*O;n*L=6YzJsUd2-E)N~GkLKmIok6AEQd)KSapY&1 zC}-skEGIdzGOd|ZCo5txYH9`a1_GPckH@$|*63yEH3Z62Q`Bg$J!ob^kUWOemn_8- z4wy^c3U2TrCGemOF01c?l5-M!Ru&}2i^@pytKP-nrZV8>sVN&F`T2hEn?s3peFp!F zxQ>cx_cE?zWI>65J8Uzc3y{l0Wk<%6Jpdj3knGDf8DhZUP?zniDf>5ZV1AEV$vYIG zw|tk%JpxFCj_nsJCXrK{v+AxK>RD}4HZj3=-L~Nd!obRnnLzg34OFjgHi@;W%Bv;5 z$kcH2J3du~?|JkL#2LykRd?ksR-)CwgU{|3Q&I#*gfnIE%FQoQJ6+7eqIs!EBaO<6Yl)gScAH-cgU`dfEy|PeRSEJhWUzmu@fbCT8;OQn7NX-7 zDE9c4Z|GjsS}m9s_O0c$Su)U0J1}5Oz)cAkJ2C-iBq$1X{V;9d) zT?6agzEdxr?j%YN;UK$(Km84MUpa^O&X7re7!(Uvq1bd~GCWoDZ zy=N`cDZ5xXOGI?aE0$j8742~}G^#4lP!o8gsHCIj7hkdGIi*j*k&!FX8IlS}RlSB* znOBP1>W^!~7g8j8KXW>w^&m|(PGsYf)Y|zH=AWmeV@@*)(ltEJWqRO886jU=$tGih z=BI0T^sf3D&Rc}D_^dsuA0&F3eQ8>-^RUBZ*2`2hX}}|@*P~W5X=$z?qlQyW^F9+E z$fP1qBi~%l=;s%RM!`!B+nS)S2$Z|5S~6#OLZX^dY2IMWaE>t~hsY{o-U>g~a~6## zLLQHqXRuWef(SSwm!^*}8Rtc*E&QhLQ?W7)DHEjCXVloU@62po(?n++Yz!Dl%(?1l z9~YFro}?zKg;p;HndH*VIL$ZXrRZC(#?X|q=JP5<(x2nIZ?ga;O9qn)cUvggW8iu% zpQKGos{>v!6+smgPjZGMW7*DxAtPKGgyienTU)lh0oBD_M^2_)PHDUMLnIXC>)k|b z!bin&mem#PQ*qMALOsJ$S6=@0vyH?OS9ua8)g!bCJrmvbS`#yUE2NDeA?xH_EVZaI z!Hu$+DYh+g>RC>lTq2118~Rcs{HG;pqwq+f#uN^I*KyP=sv@VnNNlfgjdoGzT*!9} zfRw!DC~oy}()>7#9$XVg$Rn+ck93pR`^yHzU+MdTUfO{rNA1{DQ@4WEtfK~ApZ+|m z`SaN87Y@*bNA0ld8YG&BIwG$O0qiFZAw7jI|lVm>61S zb8Eg(mmJ#EdK}uEQ8JD7E@)aN7r7#C?@Xj`kKVQd=>RlK8o>^&xoGlb`6CzeQ4(+4 z5l_i>Adut(OzR=oY?)m}Y|~$Fw%WCv?Oq`yNuA<0^ylY1r8FljW0g@HY9r5Fs4EUHbG2=|)og2>8T?VM8jjv`R!VdN(0tho5E*@Ucmf4@{i zL>*s-<@t#97Z=3TIh4sciQUfjMv$uVc<6>STApCs&O5lyL)jq*R5*jQiqLYB)S^%c zG1#P5%mbM~Vty5CWkjtxt#(4I6ky+>sw3Yk9D9tK`CUB=uw=r{u2W&Ox^rn05UJBR zA+!1&l+pv5unXw+8kkbX!(e|8!JY_rJXjBwj%%`3f_viWJ%gNLT13xs67Cb-?I6+Y zAkhu*7|PjhKVwv4vrgjJm?({yU9&@R%s^$^?Va20=@ZddkOoZ79I?d1F!1<8 zuoWQgC7tf#qhvyC2uf<@)!wXi4>q&!Hm7Vix4eVRjV~p~P3!1&&t!M^k=Q<_cIP_9 z_#*T-9jIIT2IIJ6^6W%AdK=?cL@duN_UIO-EC* zmPlJxh3BeUZ)oD5LnsCO$!tLB)*)@1FJZvet>>zQu|92DcT{#iRwzEcjLKWKzD~$# zlactvQUqKRTSqoLHnxc7)Rg@Da9KeOjwpy4VU;+&_mXk%iI7H>TNQ=Ivrq#@Job zVG}&_oZ89$Uv4o|?HEJ_p0`zMRLnljsID$gZfRLB-@&?#I%5E;P zzpgN>8rPWi;pZb80fhl(VmBPFsAT2sbnX1x7r;6(chmP)cl9c5u zb2T1C6d7$7azA8f$g0ZLN#JK#;!EFx1!t}u0tNBDl3_0znk@^9xq4(B-sTLHvy10- zYO~}OXFK7s)70h0ZjA5W7T+uWtDZ)0Id|A!%OO9qsRc*(%_DSMrei;xBo7b2wFDp3 zdo24*^1dOoy~ztBz2ay+gHWG{lGiHtA9P%>1FR1fI8*i}#p*?_l~vL`JjUl`!0_cd z*-hE5Sd=q+j>$g@0^MVB7Bm#nKUL6nj)6g|0scK_-l;zq?eMevtc|DTrzDY6jR<-$74j1c&u8$M3r~ESVNV<7z zmuVho9!!9?_QQ1&#<&NWM7*~pe>oYOr{%@#m*qts%R0PxQ@Z$Tq_Jno9|`L**dL)v zd7JzLy7+uIKO5I7EJXg}oiH9R?FZos{oEL@OACB_%J=8npN)F3Z$KKSKkuA?UqvAC z9RbMrLT8wKx(;-8dWkD_k~fWwL5hR20S?eCd#GnFdIh51RZ2<9Wg~(^@5*I*eL60d zx7TY~-Gsg4GMCytV(hq<3C`Gm4BuIK#fb# z#g?=P?~T4a;|E|_5d;B%gy|_QYyBCx=C(r=(E|-$LJHBJ>vC0@AdVvvDp^YRP-Gb< z!WP}q6Ms3B!bDMBQxeKScrCdkQB^CjmSi?;2s$#v4K1fc8v!+$H6g*K6{P`+%&GD* zk4nND3297}XCLegGi*3~&CrWEs&i^CbJ>=OtjSA;1M-REbRy)Qkz*JuJDAfF&z_mJ3y6JB5P z?%r-ic@LTc!^0# zv{iRjm`@AOrQH*Yu1%aHz=foF(=h8(^_VS*6&d|6?>Ue|5OlC3zp-@X#ovEpxl{5S zi!puY_hY_!GxYxt0UPOW^C6ROAEE#3VpCeTUEoLH$tq@m4As`u#3V<7U}if5eM1YD zFOqMO{GpHxzQsC2xw%|Tq(}JJ6mKrTeFNl;V%QBANsjVUY6}A}!{KDQa{oEHV)w(f zK1l#r0)zrtN}Opi8KU|*H~U4ktZzF>$ZF;BQ|Iclk>?a#5VCH=P#j!ro{kN2Neg8; z_DqK%K_HcY>rmEX??!2tA=$H*tu=IaJOYNg02m`%)9yi+3mSO^Mw=}`D3`!*s%*ot z9aF0=Y;*ule4MGm_$He`qXMpx+;H`GWCWJFNjY_845-688gI*DacO7Da98D51}4_L zFY-B);xR2TVu|Ns_ zkcQ)Sp{v1L)9z-C-Tuq@B%Ry2|8uxzhSl~t9vEU;%c<|twpgC zifXH|=Ta&ui&-HOvDs#pZH~q<*0vembtsILR?mkdJ6?{!rpst z8YGGg19yRtUcH$aerRASWp04>aBvg9hj+^|4=EI@@_|&b%;+!j?w^U}w2N3}n)|CL zKVSw`l>@D5&A+?kjbB z&WR$z+-wYPsKf&0+3Unyg1xivKuJ-W)Cfh}gNW#*ICX9hCOOV- zwyMxc(A#XCKK~%TErYY3gS6Mc=-T0OMAVWW&Lmse0Q!i{Pa@2#ohz4k&HST46u1}P zl7q^Ib9Psovdo78rV{;Vg1HNr!X`>l2f*bO=-|2fCpIQ%DW)5FE_DCjkb!hzX#s5^ zU?rG2Q%ZgG>dVXAi2+78h399O_izJRSC$$8uH<>7@>3!v7b-=JcSPCpz7-TMLf@IY zy~IF5ABql%9``81RQmgOJdKKYyBhnrqvcqT>A`q9P+uuW`55rT& zLt^xdb?~7@@vn&PHIvZBu|xMM`Sr_dFrF>9^cjxJ0^%q)nY925t%L<;OYE}Q z{qJpb$G!uRwiFrzP0%s=<=-A%X98OjBg;o?Tgz}kmMBmgtwrO;i3W#!?ihCLGNHf0 zftB2*BUN^)26EK4V{S0ggq>fOi77G?4c0eC*mdk}@)KsU?CCfPU7b?b zs5n^LvtF?ThRbI4c<4T9>AZvPc!kH`6=v&Mt8b8YKaicf+E+)sv!kpPxJQsDPz#Ix zq5#P6I5fD%5)0h|_J5)g*|{vV96e@JGlc(q;ZJM}jBEg6RY2g&>k2FLKPMLS02KiW0FN`Ee=3P6#UmzOJ> zSJdz5D4~FVS17#02Apk>In(vv5LJJ8($>q6BiKxk$Dq1kr$*tCMnXp@#jl_#eu+KG| zpbJH@nRP~r7h^qP!5e`KVh&)}?7$>=6d9hR5=gyWesq(&qdWyt$k+uEphq1uUl_Bu znz$QU9k?`+mr@CO5(v*06eJZvccJgWmW|A6GE|#y*(=_4Ow-rXP@0JOug%uXKFpdl zjCk*L&_5aGh3dwBvj3hn;3DDC(^aSE@tNR57bMv=2~k3X8@y8I?inwp#I+N_gR@|t zasd5&6j;V4LOF<4q0MLvO)BW)T`sI!I*%s5Q-Co?KL{t7nQe>VAC>f}UyEL}`YzkNr!z&lU9}nrt#Rhh{3ma1|-` ztQ|5|s=b>Pxo8n8W(JgH79|n0)?T^_7t?w+&e35Ax{I(@!*#1ZIZ;#X&@*PgbE2iB zQmqgRn=PSqMR;eixVU_0v*BUnrlgomnbC6Zdr7f1H=R(#^koojy}pX!h&wL#l;{%o zy|hq@)H?j-vAaVK$``1LB($~oDwo1BlYK`tBl43gxw6SO=h`44zVVj*uqg`!ae;=Gj*P43cW$T3UE+$5Dr#)!&%0cW@Wrb<2vcW;t!Ri^xZ ztCI0wiE%F_Bn6beIP$9c5{rvls)_-1DotS;s)-aoH7t`~Rsz}9Hm*3kpz%uW=At#0 zrSb9si_AG)`V-Qz^i3Q0y~l1>9LFnp*L*-z`b?1s1DKr7&V+*KDFbYhwJrM?tAez4 zDKS4s@6n{6cc|0ntD)FfQZh+}Kb}+5G7a0j*L|HBoCzukN{Qfd;y?74Wd>PImeeWy z5K!|5x7vyi0muWV(h7qV1AiKJGi(wkms8cNp-;sUgyTYWaeUZi#+q|533S;ml~ii>=1L6H!I(M zPP7GlIpcT?7U9Qx=mRFOYR=lj_EzyAqr~7I7Auvh)_cS-Z6j-t&7x6=V!ff~n6@Y4 zL_+AC{kcgs>8&`6dG@?M%)Ro0MDjn|k-QV@@VDZFMmW%wVz$kvVkb_+Vr8_c)@9aflH)ZMln=tAg_$|xLUqDY zoT&->W;+K<#0Ty9Ag3R@_J_rE-_k40MfQYesbZm+{&6uhzUjq2nn9>Wc5dCE=eCu& zCvs_|(S9By-s2JWUSQstx|cNor@}el{+?D`dfZO8kx3jZoP*50^~e|H?}KdBtFcO( z&NYoV|0_aX05*6+97wr{%$Ntm3^A}>>Ur^n^Gv6R2&HX2+vROWv ziw)Bu4=Gz9F|7T@g$ zALV+nIlP>T<1T(j6%5Sc_#OluDJ;d=0E|e3I778OHi;y*gm+VhI~$1JASc;JCI{`b zT{1K7BYh;$1)KY%894krn56V$BXz_G-6H$fzq!u|Dyb>xe^+3>ecK`akM48-mTvyf zo$#NEtNHe#!Zum`%g5Bkb$RrSAZun$SNzS-CYA-48zTBD>Dp< zn%=(hw_rpLUj|H?gAyUGl)B>DDX`g2O|V96iY230b!^-}seukbJyO*l@2#qt*mY!|nnk80+Ek%3 zOcpRz=LY{rgy{N+7wkQQKEyFwJ_h?L2}V( zgX|tArG#Z`7a!&p@w=p58b{ZvQV;BeIPBQ)^@bCX0RgqXp6Gek!%*02@U1lTs5SIW z3ZTn5jzO6L)(J^=%wHFkr6X`592d~ePlpt|x<6*Q84|>u*vzigy+Evun2BDVBsP2C zX)_s;$hjn)iy?b$Tx|q8(eT(eIS7Rq|>Hw9^;$sPTWk*xRL$lgA zxF{R>>SaR7t}G+B#|4Mie8)2Yes@qqh940D=8DFmR(JmBEgLEF1~CAONh=p`GsATw zrsN_H${U8wi6^FW5l1mK%j7ZfS~Z~O&!~Ev{o_++M7a<-R1DzBeoCSv3mc&wwyi3) zkpQg)vq-Vz7L$ckQ8jHvikH@&jJKbXV^w#IlN|thI3ow?jhSa)LM%3aC8-%plqKS$ z5f%VII*Pt+aUr|hEIq%@Y1i7p-IzQjMP{G35m|81*b-coxG<*IosU*@6s#LQ{@LqK z=lJ_+ctM9@rg1NVN1KL4gxlI%V+S8>HEx`F!Btv;t&9yS+HLR1nUFxHYJ8Aj!%km( z2MES#FfWz?o3>gp>+}JEc1lqSW5ja2gmlGMsZ%PlI$_IKeuuzYL`0w}WrO57JL}T& zr|BnN|0Y;(rcNWu{O=VA)CJsGNdVlQg13;Y2EvDiUx+->PS>@ojl^ z9KSbc6y~Gtx0^{(CJ#aMA$yW|2L@5xo}l8gGDb;;$7Sd#S@x}UxwdQQpDB^{&Hn0ZmR6QqH~q5!B5)tT5= z2D1%va6ONp85(x=>(F_fNu`(c8^RFOQx zd_pY{MLx6*jchb_G#a&R#=b2u#aQPNV?6FFZYEo$nZkS$*p$3tgbd7U6Q28 zKlPakEA#A?!mn-efynakj=oN)l0{#{nDdbcA*WDmwehOJlA=T!hiF@FyMZS6CNbnm z+-_rbzRSY3%yPu6)uoYFv%&H{60>~Yh%-@k$@f>8D=x{v37ym+_c^M-^D(nkl3AE6Hnm94?Y%9tN%>RG8S7%Q}>kSOBL{ z<6X1M##PUt#-=P=dHzC4y$qlK7x-$$I*eyn{-rbIZZw165K`9#ZWZMP<}mgV98+Rr z(x-N$*Jz)Q+ei8VLj^3WJ(Ob!9qhWRTqoTqHWNlsR@+}BMH>zlyH#Q99E`ZO5k*xQ z0;p9gQv^&Gs5Rki%tD5Kk`h{5&e%hAMzWdg)E=GpMxf-uEP|*e%!$^iWi}J!~4J3&P(%GBV)pjC@D^nNAjVFTcXn%s+nohxNU5?)g(TCD=RWB#O>-!EHghwLUGx7OzLq5Uo zGQ;<5i{vGT;0m4!w9qO_c_vvS*HFL{asOBRT>2r^N-N#qIPlE5C`}=<-gY^8W0R)ZlB{p-%p+`i+6*Xcc-DBg6)GY2{%{`%>}fMF#@^kE+t+>coHS5Bv-pc> zjYW6v8vgAc_}jlsmEW-BfQwS+mFT4y4)6x_QWawWGlt9+3{VlD2froJ2Yo*M!`L~< z_{toefXFR<6OK1f^vemw%i*Sm!2A6S(HjtF@Bu*Z)y8HITxe3^)2-XDnO1fEG2rtg zHO%9OTgEebLqi$*yf2iIuT;#36PSh!u+BK=@((#XWP5KIBEc?s+eA!OZj9%P#jO=S z&87lTXQ5ay7=HMbmWlFVr;7%QUvBNC0i?_2&q8K@z~D+u&_)FB7{Ojzvsmen_SEd# z;|t59%d63>-wP0w;S5)Mprwa z>h*Nco$YB)lJ>`Se-6wi^;Q_(4kdU0pS(TI4{W^OOfUGk!;kK<6?vnu?m%pNA{)VJ zw+vtDT^Zk%19$sBXa+8oL%7<}w#H4)k(I;b6rp)Vv~DfV2F%n~x=tK7WW4O*bt1e@ zExmJj1L<%$c$fQ)k z%=nBM<&l(!syf|r`r|Usd(i*MdY;34>dkvnVCl(OCj9OA;mo@{7Fy+{4a>WDc!}go&0#Hi#eV$5qyn%r*lg(N2+NA=Gt3UJ&X`Y@ zb{^P{7JC_aUQgeu%~Z|eNEN(QMNVtEQhtQjMMz zQl0tf%>~vN3f5PEk6o@QaX?BbYTlOPHOF)Aecs<}r@WUBth^T#e;dbUC=zlP1O{@U zj{Ku)udSGo%^~rJKRX(BzCeb1ecZbMR#m7;s&0&Ft{&H1%v zBWE~pXi&>?G4LeFLaWLXQpSZkyGG`cF?JJ#LBr~T@8B*~4gyAi4b>C*OB1k1b=k{X zcUR(6gvIBno6$ZOiGP*cC8DO1r;%YS=9ZMlrtc$wR+pUT*9UDxs#{ZKI%jS5l?Vzs7@ zEUOc5R@!pkz`1)G>3F1xVM@#8V4VEIyp;jVY6y8+&>bnWr^w?LiR_Q(?3~^)HPPCP z&qBZ3^J>a4{ySUFmL20ok+W@JFV+9C`=?%w{yKj%AEc}O)}57UI!r%}BU3R(Hi)NP z1>qD=h8O>vKaX*wF|abnoImjn(^;SATH4)k-~os$i-fh@Km!EUoN=(5+lvQKJwG~^ zYa!o+=eNd}NQ&wejpqOIF^09s%sf%+{&i$wAi}Yz5VLOI6|@ib$xe{2##|LW=}y6x zRBRy?>D(3MKuhnh1b0Q>u9Tt8r6jx)-FeD;-5))%WpabIA#;O-oi4lh!x;P-A)hdB z8AqP1(gCctKc7}!01USMwz_N%kM+j+n`-{O_pm15J5ur((pSzOCi9-jlwW8BIpN1m zhVG3All@uwlO!D@4Bm7+Gt8(Eh&m}PY!}sqtQ!fFu4L}A8Z3ZBjd5r}XXI30V7@63 zdF%pASqw9e4|Z>%rI35wS1aOFEuOh_42wH^CZ8kmM2vT%sAIdfVCW{_<~O!u(48`V z2?r0p4&7PX^r&s28zFYX1Gi;+1J|uoZyLJhpC&n)81az<%F*|loAZplP2FyAM7mIX z`iIE9t-r`UdUkkTr+0msuV1E#c>m#Nv!gFvFQES!>*L4PWHY(FM_vykB}TF@oy%5} z#;S67B%kzAA3Wc|P8h5&D4%AxxUNE#qk706naCB1W3xaRAqmpoaSgRo4H&iS+99L2 zKr~={wCrC;OXRazPTVP*a_HO<@C=F%;#PI=6Us-fWQ@7B8X6F5)h%?_zucHzL$Yukfr}%6t}f`dXH_8Xf`~Zli5Z>oBxcPuB=fYuk@Wo!=t+&pnS6{h)qX z{Z<*gzYg<`JWFWsN-t70EN0GIS1K|Qop4!%WYis{j8>LJ^)RDgW<4SeUGT)Gx|ru_ zXyzG+WMGs#dWUw7snFNicjm~O$*MFdSmabRGftpJqwYfc{LGOfHT*`y)bI~;<#Dg} z^a-VDS{i2NT#iYY~__GWb6G~X83^z{oD7(h`2v%<{M)2Y}>Y-3SaiU`<#3Ce&@XQ&Y#uh-_^b`XCLUJ_rM_Y zCgH#I`cKm)*@F7~>7yNO?8{s_%8j|X=3`@y}*==xm}O)Y7{&J1|q6&W|szUeC3bYBZGWUHZ~u>IUx zX^ji=hmP|z-_-2StG(e2{@aatdyDt}MPBNsNRE{!{)xbc+fB_pK>>4w+I(*_Ipa<@ z@m%p~k~(>6AY-hpK5-q>POE+*NAgmR>^^Tve<|TUt6u(5DU(48v~*Xb4E!s(=TQUx zBO?wBQFF2sS+oD#hz4qV*(r6*2}IoPV1$8H)nE2rRN_9$;i@xy>{xMd_$S{IUtIf9 z>T%tJW@T6GGAWPoxgJv00bga?v6G(qh^*UG4e7aQaFa<)lVqzpu^pV-I|b|FT1_gB z8c$%(B)&Kr{_@h6N(W(B2~Gihetyd%a)q|@%GmbhJjqMzy$bX1j>R%1>jk*7T6GBa zxhmI?L$XipI5HL^cI+d*Mh%cgSHlMg{nF{zz>{s_&>>cd@tG- zOKLQOY*l|ILH)%~w2@xw6$>_g!{3`Ey;}QL2I%x!y^3M8?KgCj)(5p8W=~RqEM!J; zWcSZX;uw2d=L|^pqHs)x%?G79l>D|uem+wc_AcT}?4L=}DAK|?!T{mraNRw_I3ot7 zT+&n1C*zE!Ggn0d8s^kht6$D7A_|i_b2L5V3#C~7zL)~k)pV( zw$E(2kH+O*F%_eP@V$NT%bO(E%Jq%9RE1vexGC(9HE?~D76_EkJaMIQI9xvKWq4a!*ar$4j z0xxbWrVWdeAIHlD#w{0bq6s6swk{?NNjlrLa|H^2ZOrmi>02|h*`&xBBR0O5=wSw7 z##{bE-{D=Wc$-g*N@I|>FHZ8P12q&?E@_lI>|=4zs3eY-#j0#FEY|BQPIGocgWHq< zDNW@4nTZWI86#z$eu0#nyy)<-+ZlK#i%;&TMb|ru{r5CYaaJmcPuXVqI9Eh?7t+4R zxuQ)~GHO~g+n2Mz7it>mtonU(YIoc8(rVrt-hX60Eohnk@TRoWm(=4!3f@0I3*vX) z(PyVGug8ZMy#MfeW$$?<=R1u3_Q-Be?t^%DO8?i(kM-rKD#p$(q|WXHV#SfZoyTC# zh{mIVTm8XNNmplWMF>y)?-_&&Vy9G)I8=%tx;(Ca8)zR4w0C-ys!V>Q zfwImYh<}rF9Z99eexH1yE`mZ-_}U=o8sh6(=t8_&tRmCChtUjm36@CuI%-=`S-^zq z5>jAbC@kr@?VeFj&qdR61oT&Fc1KNCWyhmtWDWt3){2?dNleXmK{yKF6&!$KulJi= ztoH@j8alk2)&0m}* zqaAg+c!P4D(X{)#`ERm3;D_F(<|i)Zh|f-Be{&hG&bsM;U#+*ze1v+5mBDZJOtdTZ z@u<_`nABL$CGSMzq!J&dTtGY>um5W`7`CE^nE4Ol;kShTe<@r1AJyQudj3C;5|$>W zqHd;k|FKA}d@VmOfazyvvw1Rxi0X3J4;`u7tBTAIMTkTcXkt}h7V)-JL(WZEZOQ#! z`c6PaI6J`qhkxwlNvj1a^d;ZD>-oy_$~X79OTVY*3-ku_oC+F~y09!CG}Mp{65(4r zz=Ogl3g4N(IhT|;xSrAn$(}J9E9QxV3X@)VQ6Y4w_UL})EM!mEqk*0aC(FRIUttY2{Yy&pzA_(3!9PC`o&>}kHg8t)&2F`7BIOyj4 z!gKIStmqC(r{k@gBvLUiBabwXsGty5?nPvL$LlcOvun_aWU=co{9_r$1FyP!>lRAQ z_(zGH9NBmy!-g%>0$`MUmC*tzj=8^0+8r}zV6-A!ENCGX7d++Hx_`$QgA>zqCCqLC zl8$M^xv6YTH~gz%+I3_RW{Xp&U3W{IZIyBqngBTiU|rIGE{lo;m)zV7n?>ECN2CMR zxzS7V7I-r02rGS5PLWOBk|QC&^Jl4IQJq*Jz_FkT=@eMhOc@j15hC6nikFqeWuv$& zq?2-4;1-6A4*?SmD=UFUt39udW>&p;gvs}rXrmNHJ)CCJMGp@*u@0%8tK{Z~n41&z zd{Me{Y5GqoMN^l+1^QSC1#o24Q&i#_@QLX0F_Pp7`}9{Ax&FCufRb2$ZDbRU!{1II z>b9M*;4xU$ckOtUP|5T~X_cbTviJ|Fp(dK?_%?oq`zKiT9;3a3>`L$(T^F68>MpWi# z4k8G^B0s^ZE`t$_9?5V8yU;og)4CWGnvT1ID`U)0VbeVPTY^0+#Lm;JC_E(eTxrrt zGT|xfi)4miO$c_~jXs?IJ5!_C9=H(8D3V=}UWNOgyPl1)vr2FjIoz%1JKrok8U~ur z-yya&;n7rwIM5%AOTqy2t!uQC!G1#Zk6)~FxcRRtol$|<9q@PzD${V+O2r=R1v1L^ z?`oeNhH2;0#$klpk#DHoI8vl~rTsNC*WysB{jI}=xHYCvzHS-Q;Bi_^ZZ(fb;4yOI z@TlzNWPofrG}dyI(spvav1pekA{$m}B-5s1FU4$y%eB6XL0<@Q{6!YpsSF!KYE6y7Ax#JpyIm1*-Hwy*ngR}SlCK`X)4P@i_O;%$5 zR`2*PS-1a9O#bg?T#Cw<+CQuz0U>ly($bW)V0AN*^^)-^TK**kEDF7L(6$5=U$Tju zhGR?-9SywXaRv5@aY~iP-^y;val_mwHpU>(qpKNh%-b7poA}OO@8>Q2KQ?+>G+_x2 z2`-HgF)+pQZb~;0+N@r)n#c=ku;?~Yq|QtM$!V2l3?b3MRZ)hmu(`-<+fgRmPtu1m z0!#06e9LYc))JeMz*yG#A|h66hI7f0hD;|tCZ$H`7>=X8Wl`gp#u^r)vOTFdI1-mp zr9zfHxOcJP?D6*L#(vciYNwDIB7TfU`HKShsi>F{8c9PPRrI3 zc+ad|DTCky3#`|3o-O)&HpT2dZTJ%1PFo7SD`5r>COvMO^VnOnp+TDO?~^Iy4#h0v z-S%slxw!c1WpjRyVXHSg*j=|X%oA{43N)&#)K+-#9I-;+J}hx+O~=iRU72b%C5i_I zysRzdT)qcU(C@GavnAuq*pfE*rs1;F@$y6ZKr8Ol+s(*f)U3Fh{->k`g~!(u$>;F_ z<`=Z4%MGFMXH^qZOY)$tj|tVCF<^i@Ur(-EgNL`K*VC#zy%K(3+2?4-8AEi#G@Uyt zEBTc|ah-?Hz~kUi>mrrUkx{vh{3Q;h*n<{z@C&v`(Gq{SK8pSp?T`??y>w}QORwf^ z2d}G|k6oYt&uJ3ys;@^I6(wcU&!Al;f)tN*oF$P)+jK=suxc)ZN}fb9zAc$^Uo2(0 z>0E5UZPNB-qWjhX18n5g=HR_uqoy!&B9wE zC6-tsSvZbh#y;TXb_<^v*FQDUYGPk-KEmc=$4EHd&P@&>3Hb4TPbf7whI3UG$6^@+ zp%|@$kS8A!Sv^LCU(DItj&B|BLc5$-oqxzFFVN@2U;1h#HQ7AtO)t0?y2BVGvrEF~ zStQxZxTg$qJ9SIyK&P2tb zn0~R6D^^$V^iIa9Kn+)@LLH>W}eafeb z%9!Oo3Yb5U{X@9Ak4b_B`c@FU>8?4i@A<9|JKu)+`9FYn*q-`5VEDlN(10EoV6RRg z+Re_?MAxaVZWD)Rl9*`vwGD3u_d*eaASod$PeR8S%pK*|9i!VTi=8v76c^??+R4M3 z>UUS=8yQV5QwH zw|)v{5u;n>+V%Ae)jphWsQ}_{`g?|9Sw9t01v})S9F6zZzDX&`79}$JkgCiMwCKn# z>stWx#!1kUsCus|V7ys*HZsO)@rK3D6YwnLZE;55Iv*veqkh{ADfZi8j_C=TM;YGu zCo{B}>c$_Oehc&Lg9W8Ajha$z(mfWz*|r@kC4nJTl8|z~xiRPC0B)k7zAiAds6Jl& zoNy9Ls;yqx3Z#D7>pLaaO}Du|0Hw4sd9=HucCRFhOCn($CB!)a23Ui#NhDDflPi2U3~a8 zyUYBf3eEbia>3~>pt4yPP*&*Dn`QEd5YW`daR(DI? zDb$Et#`V|>V0-9N`Wn70+eMP=RFuS)BEObOdW`1M&>QSAhA2@@Q&MLCGVhi#0%rmj zWzS|Mdc|XRNSW9q{VKV&Ce+hn-3q%I*=%i1xX#xlV@rVKExf!3mJp~Fv9^qDr9d{e zaez0ge750f$IS{j)OcDzp<8Xrv`Z-;Im|v*%V>42!~=Fdr0ie#B90%_ih>F)A$;51 z`J1ftaG$GJq10}Qh=$np*^pL-tW4UlIoj{pv77wTP6*65hcri;F9k;-@dZAEfjWr? z>)GZV&1h37@J8)n|3#b!SW=LA8GECjB!KSUBDUg`&L$) z6Dp7A{0&d4AcF6;K>ia1N?HsFI6N2lEI76Rlq%=PW^vY>0d`qL9eg&@o%I81tXGgS zxc&aSB>M*ozw~?Ls4y&vp7EWyj`0h8zOf7|(s)8>DA|#Ip}+I3JE)I%lq?Odkhi*C>u3>I|`!>4U5Tj=1;f1*xnt zsuKpmMbC_3v;!0%jz;P6?K#nN`>hZl-Ut0Osm1PmDyEU zcLsv={dm#*|9HIQjjT+K|5^EcTc;_{Du+i8P;18PMtm3bX^UhqJ2LSF&^g+ z0SQnT3C<8=e`9&un6&n`bMn}$mg=?&6?erst$VZUa(x!568BQKnewAmRz^}P$1W0- zCM@$q+nV>-q}n>Nbxn2FqY}RuCh~7tBx4RL1D!rb8JCAWawS6Z>6r)#)C>-5RZax?PVNsQiYSY z0S1Nn^O7?*o4%Z=GQBgl5}Eh}4ixq>ufa94)O@N4j}?!O@>TgoS>gS{hGrFG;U?E^ zgdpFmSUJA2O)X;tn8nMM3AD)>9blMLO~!|6cGN2Cs|x?fdZ)BY7xa!G-u5$hEs=hw zybuxuIKEEGuaM`ujx)t zFno8up;tVH8r>>QIB)5W%KKFDg8hucNrS{Gqo7aySBqkQUcC5 z)GOq}B8P}2&NW`)x&AoR?jSTjA&*-$kUT>4$h?HVC%ts@nZ>|=khCDmCD1twvP(zG z5Qflber%!8kDauHyC@V$VC<`B(OrTK@j#FIV<|A`e6TwZp?knBQ$~TH$pghx`2@Xu zKPFhfrNFhwoAm^^6ZsnzeZ&~rNo}X9 zmaqD7@6(RugEm(%Vm-Sr?%9$%o*lM5M=YA$C>0sjixY}q+fUjW@ag?zCIw`uMluGi zn~AFM?0FH;8Klv3g@2FUsq2Ie%HrEJ2&r%XaRBS1c|ufz4B6=2#3URni$AXux-w*y zlVGGOl1b0v4Y`?)#n8KFc>ek~8nuop!fpmF~Ro)l*5c=O%Xn;QMSz3m5_-YWzN6qs!NH=`xDOMUu49a^*_d(=Lw z+o!7@cl%C{t7$CkG0s~J6u1HiP7ug+)Dd(j>PvQtiQ9&t?_wvj$JWyo-W7|1qo`&{ zM>Bt20Ko`2zb>YDFY7Sz&p-$K*h%=l7bGJ{S1aK!Rh&7r6WNkT?xXGuN12vPP3mh6 zw7goVhcE^M14Q=nJN`f4hEm1oPqL+k)m<3rvdwk(v6{cl*MUj58#b+)yMSRNJ`6!x z9J0iwR%r ze#^1xVWdlyaB1Q-{Y@)Bves^F$t}3ls*KsJKdjC&4I_e4Z%jBV6YJEdOrHXru2!ui zs_Hr~?`@Dej{RL{YeJ=5Rb76-#_LaF;l#CHyn|_^AG;IkHNu>PGMHPfQH+usL#?_ArAG_nCD9rxzdeDeXdfmxyRNS zy>KeE_31R`UzhwQ3vKJQ3>}$cZ*Ms@(?F3Mh=G#15T!MhEXWkLCNkWS!^x1_Z*^49 zP?EnHpK=>7=><6ZTS%yE6x#MR}3TT#z@Qp*`hH`6v`Tq~> z{9|{nMmdQc_PgknMEP$7>i#X%m0WF1|H(kn&{RfMNBzviDlxQ45$zQe)d|Qj%qSBm zpb(3|bOA>~M2o4z%FK6V>%b<~WPR&auXqQ!B}K@Drji^SbM_O^yXUVWIm+gqq>+^; zDIWvjZJFjBckgz-I<4&aeB2lQ!TYin2kl|vfu_<&o_|#DB^yJs=tAV=^jeSJLh=HC zV!8P#k(G+i#IvXYB08i6c3!L3SJP-FS^~>!Ee3Af zujtFg#8IlX$5=#8JBgVkZ-snNWi>0ESs)IRyK2eLU8Slpyj8K6p&}(aoldjy%YgVN zN!8+f0~RrBx?~pC6RGU&6&V=NmaRg=>Or4~*}}~4@>KMB8D&|EzFsph?OIhK)4q`j zbJ7J-n2b1WK(1W)&N^yityYSlg7`x65&14W7JJ-8I2no3#dyk zl5I$)M@zM1vkT}Nn+l@^Qb16wB$&BFYCt(NGcp^vu12;Ifim>eKJcJaxtfn$VbK%% zxsqj!+mICeIgzt-aENw{SVVkolYUi@t?p@yl277%R#AvKCvQQsy(S z=5HHV{{jolWiWLaY`$2zU4HgUzvcaou}m+E*tz2fGv9Y9naQ;j8+SjFv66<^IV@@) z^lahLB~sq`{FYfbR!)@>!`WZvOltaGOzhGV9l>9Hnfa*1c4U2=T2ZaH)ny~BE4HyS?;BJ%^;Ye{gS%Ab9sAyDlNrb-m+ zeHs6H*-U(HY+ZGWoSc%U?On!cSov9DDD{sCWd zTlw;k!lFYd&5rO*g7rBJwhR4@ z+Zi~&AvXzLtq@e5={c`^?JBeoR1MqgxFcAif}Fv;?*qIz$)oK>q38NdPqMw`{U{HZ=v5%Nj&pxB%a#Qst&fiM=v~1>i zJFPJBuh%#NH0lI-dkts;Z1Wg@pbofJX_A5Z+@av#zxBq&$m7*@1ATVki)Nt?z*jeD zKu8Qg{wl5bJhJ~Qrp7;JD|&u!y(%I6Hy$DXiK()t&d!GBrvI38{Id(C_P;^(3RbRv zW$Z{u1PsF@oiMh*5sGS7k%-}!BO(!5rddf~YKGm#m7=84lkYZ41D{s;n6ObOsU&Gi zCyDA`u)nmP;hfKI^RT?KP^u43Z`t?0-wva>-2PwB_x3-Y_OYP|0pR^O^0DaT%Rwo?|I3&3(G`O zLdv2S&aNe`3$G?477DeS3(QpkVv&u}<&bS^VywgZ!g^SXoh6w# zw2@j1l4WUi@aI@sW5hBP&8-iWsm0NirB0cXh@1tdnZD8ad`G3*Yy-x22SC^q2CMGJ zyuVNON26`6UR!TgLd2l5+UC&#nW9O|h3X45KmcP~VO7)?NipW;gv`MLvAf0Os1^`z z(#DaMP&GhPRKgs9Z;C)y`A+n40@HkJJyq|uEs3~sG@MuvvRO@mH>8;Dd3+^?WL2i( z3>5^sd_WJGbeuZj82rt|DiQ*6Tl1%qj4alqa%=nDL)(WSR+z`1rd23b?p51#O8SLh zCN9r1R^>?3O5XN;v_VCjq#4qELL74o-EO;11HkI<6BVAM5EZ8)Z65R)YM>PKCdu8R z5M`$J+ndBSladI9z2gVWQ0WU(P{#OkJY>5*D zsl#liP1i=L+(L=MI%xCT@DOJvCQOqRm7^@SdMQ2G5@lFyXfZkLtnO@9XfV;~+Xt@) z#$ZF|HuPL<)&))2QOu!2Sk*??Y?N&c9>I$JiI`(bzujqE1$Nhs73}$ZNJF6~9`| zRd|O90pXHkBMF|aTJwv6MusY^5E#w;_IaU>J9KI*C_dwjH4f6q_|gK5Ha+aPRANJF z-&-qV$pJ|>M8fx78zh~b3_M*-3^+Q1uYzxxu~hCJwaxQR_SsIygkjKh`|F&y~W&yg#T zKYw(Do()_Z z@DolrV5{E8o7I`Yv+~D_V#?35QdO}V!Th{o;k9+>bVQkkgx9{M$t_%&hAEmcIH3D@ zg%Ty{B&eZ>x>47;$wFn3c`iBZT|chvjoXr-$O7|f*uTnWZ##KERUKm^@vza@K|10g z=~NRk?UF8zBD!5s;_1~HQGhZ*f!fqbtUVBv67nMpVr}j1cD+A~oZju`$Rc#5%(-L^ zAM9tgh+DqQ5QOmO`NNMFOWr!j6Fc(-wOo_4gdyo7P;&03G9%wcwV-fm9U*~Rt{}g2 ze!@NtU-2PV;S2*mzs}g0dNO~QaOpI9M=p*pHvE8|_T+af$BSm(z;T&IAO}n)qOw}& zRCovJYZv0bF#xg0zju>&@)ztB#u@X(Uj98albZwO6D`Zk@sq7+fQN2k@6O>3*JN{1 zGa9bNd05k8&+we*u7M#8PY&ac5@MBS5HeWj#bTY718b;YA7WYG|kFe$DO z&sx}PNDY8HZ#jw)FTp?pa%e{BjrX(L1++`&_bdbjHb8a3Wcj^`S1>1q3aWMt=B68R z8ib_lhf2n^@5yH16u!s$c{;ZlQNi-ZP1nJ^dV%i1Jl)=94Z^MBkA$ad9}#fi2%l*A zv2d0-xd#+ZalQ=G@C&y<{y}pf5w7=0STN+aL)KYjQLc9pv616FCXuI(%?Hn4L=f+h zI?yC{qP5>A5wTJ7j&Efix|_7XNSr5XCUl7dYQx9JuYX0bk3-n5d!Qdbu)e1$%>SRw z$bTZ(KW6m*Krxd4)Kp3N4$LVB+aLgk$pk@6PV zGhY7y#sixwUBgr0OP3N2k9jw_R1`$jJXV&`8p$PW4oBF-HdER-Zg0SE)@io~-i$?M zzR|MPjj4R*WH_E6)u}^UO2l)doX6uz?$E}+n;(6g(SVqTYpELs2rskVm14YL z%^}EMonJH}Bwm;Gwl?SGLmophB&sMvnW%mH^57aOG(cAj8{-3g%Rj3K7n;re(pKIbZn|)@Rl9;)^&o+au`*2n&I?!1IoFJ0{k6 zV;;j#OxLX^jRZ3D5OL#<2@2&U5F9kg87$JQUe>G@d&9ZFQJ>pg!`PU>$#Zy?f26uI zkv|!uKdJbOq4Bdv^QT3D=;FNvxhF19ah*V$?gQlFsJiIu;oL6yzs8Ww7L7{EcSC#U zySwmTs`C7M7W98&=$}({)hMT*s+ga00XFrUY?M}OWVdSNV2QQA9;N7)Y^}njm4rbh ztGrft<7ExlujnlG2ZzgyEr()#e{A=cIt<(einE?+OVzHHn#0B*UA&@ zv@Mt4ajr#_0s{^FI&T6El}DPPTOPh+*W_ku_v#9U8b>ILspaw^?yZ6-x-@huYZbw; z!)ZJx^A6_(`3^d5e{pyh)z9QYOEKrrt$k}#*Om!Gt~3j%z$Ldz@FW8hh& zgKeJ|4v6H&@(tLMoOU^Zwj_ROiqr?X-ttW`4tRv{7zio3od=t#$B>Io-RvbxNY5lT z)A1<9U)3w_JD%3)aUju6R<)>^_nQv7{w76*aweVH*O*@6VdoYu7Hcs;B=FzTT2VM& zyR-7*pb>09<<~W1|6i$*>R={*oPZ*=&KmoOw^$w>K9Hnr8we-Y#ilhqflCGS-CS|g ziWD977qKjeK*+Kya*F^El!gYUc96z-anY?Ae{gF9h6ttua`7#bwA>(5j69)HzWz3H zB;$;4mM{KXznCrl$XRcf_r~VVx&G?4J0%2nYxyEA zN{47w$tQ)x?ja(5XAbd7*zyN`Jc}sV_0q^k&c&Cw{jy~gb1m*P0-h#zn@S4R_Tah z8mB>iH_D~IapHe=$N#DElcFqb|E*W|$wr@Kkcs#wSqaZpcO-a7b$}LSma#mL}?6>&+{NCVq2(yWpMt+WD zj1>NvQ6X~76?gi{ZTI_pG;lxGBN2}mY1oH?2aDW0Q09V7m=J4pWs8*A-moL~>07-W zi4?HMh`&z19sXdmD7=*-%o|1pM8bR+$RrnGeEF{KCC=V- z(&r0>Y&D2h+`_o9CQ(`5{gb z>GPy;buaph%yWxhf%wFpy68goRcVf=wAwhu$+Cxga*`fbZ~gRbqOmy$!IC zn}%@Q|KqS?{wH+&NAi&+$sh}9AVrB93DY*y zTF?nbNKz@0fP<%%41pKV_LNBDx|DL+=mUg&!}<#y5y9sNerUQYaTzFb1nKp})Kqrc z*UR5a?tn0du@OT1Uj_x?$imtY3!X^h!2^zOyz=n4?i2GDC*Pbr;@we_O(+v9d*`!i3?msKLzsMr$?Ny-YP&8jOy(m9Ud- z)mT&;&yr^RD+NK_HZ%&eTS0kWJ@j?Q4n=12iuw>rp^MaPK5#tD!kANtIpZVxI~pYgBoU-y~#PGb(@e+`o*SkIzdaAwOgc#B0Y06dbQ zq$#EKd+2b@lG-Viiw`a!B9`TiA)i!T%o}7=i`1p0)lX0w){mfK=P*))JGSw?{ga!z*N^3M z&fXmgo*9xQPTgR=&o>*Ci(!MTPOb@Gs-IJoLr&fE<6k2S?8{gO`a7zAe^1%}XNfJ# ze~1O9sM>xLg;4$MkToRiq<_*HRY$VYdRl5AE-ayLD^-+3mF4FLG;NxsIT$vKo3P_P zBD^5HD>UI&uOYmGg{e6VJ#}nHjJ6 zLlBHGmhXYtgr;9L4clm5(Rt8EP-S5w^T;c&V3$K{k^*u#XE78zFIJxEp~Jc_L8N4+ zf2t~)>knf%gYZj<*${63Tnu=BdC+EAdCJicz+tgM_qTOw&Cz?)!Kz9B4oATb#V}$4 zY$-xCwXsqOMhNM~vZe6e4(6y6CL>S&j%4gUrdhbVSe9Wcd5PKLLgG528g14EYA9n+DO&c92RJ!YAYB5DI!fwnd=S_^3fBbEZZfO#NjD5& ze^ZDSVULsNw?XngShkVGvqFB?nA}Wrzk2Ev@~|bCImb}EfdrlxxnQYkB}tULtir^t z2!ddeCl=da!q94Sp5>`|2{}I>Kvq4y0@aKdGpxcO$QYTP5$B^NlkmX96`m~76Y7y= zc-$j2J_(K%6omMeGh6-Ur#LzWrko3ja&2X%WmzbWaHHM1(c}C%*0RAe9y(@`176$Rp?HtZ^Y@$86gkCuo&aDFl5A(3dyhPZd6y4<+Ya+C znoGU|3d6t)oL~n`>4OeTw@4HGWKML)6o%Sr>a6yoS1>B+MW*3Ml}Fn-Fv1o)giS%= z^PM`!@AUx%own0qePM;w3aH?kOS?$_|7m`EBf*w@`eR~H#6&s zh1M4{5e0T}xB8SuDUfVtVx=m368Zi_|Pq0FQsEJWc0iGx=X@NAh6#t*GiNg~PkPvI9x*yZp{;ts^> zS(R5l4Jv1Rsk00EaGTMtm-Oxr6DXg+^9S5VH*rUhpF4`aw7#flk;nw?(3{Vbdqptu zSBhQ`!)`YVv?0w(>jvu{ZV>caLvwsd8=`>x>Njv^K4!G`*;K!0s*>{!c!gI0J)}Kjlc(1ekwOQef+> zTh}UvJhezO6FyF)FNH#Q?fK_kla6!VN@%YIA*Y>iu^Ryv0h!6zC!27HmtVl2cL@Lb zv`iR<;jVl?E%wm=(_Dzx!gU@+S?7q=j5pi3iQqQ}-cu-2IlD zP!EhM+*q6N4~ZHDMs4Y}8pMU@eoD1PW+3fTfA;)F%F-Mp#6W&xd5xj!DW*wRT;O^S zP8_Nb%T~~x0Ipz}Jc9F~peA7xKn9RG_Qg@)VfMu_vkeY!L0^ra<}>4_(9tnm$t%!4 zB2wR_9Em5Zp*e(5{2B{ng*u`OIffj(^btZ_0c2U+QUL2H;*#Prz)%Bh_fF%V9Yw$t zwBbV`$Yawt1qfO0yMGA;C^W5yQdVx@$y6ArvYW_YmQq_rAD$eqxO4!-IxXNy43O~j z&b0obE1#{hnh>X-q;r_OO&a|bjo6N9b=;*Y z9(2Z_;<$$SUQvQX>(HGB3IQK~`{sv=!;6hJpn*HJmmR`~b$mcZ;0E!V_ao@-QC03oPu+2@{;Gc**ED=_u`^B>_9;fj+I+4VUJ_fk_1++czWJ ziV>J}!y|ldccvgXt;G16|4WaCegsoA+e>=#xXq$oqLv5jP?NGeVsVG`%%*21Ihhe4 z9TH-U?&;>OtwbhuV~V9N^3ilK(a7iSTe83a{K|orL$TgOD%6&)02yQAumbwTYFhP1x@Z;2;tCbJtdAp3Ln)~vWzg6Xjt0S3?V zM66iQ{cm1e94F#C78VyeCh(!DxtZ*^FG|yKcftpYyL(OB6t7XvRs$zjd`bd};-a!j zc^}W<|z`6%k>kMk$)R?2Ghl+|S=ACjX zXX=C3jnVK%gY%~)#Gg(o;x*gkfkUw}p zAfy&6Gxa613?ywyjPp$0sO)a4x$*fg2d&={45JmzleSjo2)Y*mrFDure}C|vN((ET zZ2y3PWxGVZ#U-N9-DRzWe8`9zc$nUA>vVxIk z^oa{!fn#`&i27JuSCFu4&2fol>5-83W~DusczE+`e|9%POOrlZN ze40bxz@wZUI7e5BQ@Gp&)gRt7A?buSRuZ{zCFVN^ex^OUf%#b%#I_;!qmm`jzmU;6 z>}cetodJlxF$%viOwV3T)D(dsW2CXmQ!~uN7)Z9-4g40V&)E&}R==!J9o+V=ua5va zNNXs9WM5cZ_&rJI^GKi-6dn}5v_;Ac;ckIQ8vJK(n?IunQC|D#U)a3)dGY=`7$4CN zvjR_rcUCm~e;3$iRR$Ir`_Ap(zqwWavkZ*&KQk~D?e7I3)Xx%HnoYVOitzAAjb9iB zf`Ws5%%A%cQJ@)0CYEDFs##g2fnKtY~0~+eGyt^)i8(NY$v%S5D^OBAo!V ze>)E^MA2&2;mqGbufm~~&J_Mq@3(wlEJA2#Z9Wf8ErO;6Uu+bT?X1NdVlKA*j6P>` zxAG#r2~nmtLFiD)7VQZFf;(myVekS?LUGvD$aSgGo<3#T?AzXHX3$22{Sa5QC1VVM zfd;VZ43GkRuvI@dbFiSfJ>5^}h+7K`RQgqmu2r3G}_}032ydw((-Dw%~nB z#SQU&9Au~_EG7xY9FNaz!r56z{H)$8o6WF6Ysu{C3k;!_0J>$*IR;OGu4wZEiD(0{ z{;G{L3xyb{Ge_)*xr2{9GZd!9TLtl)cw7SaT2QTZ%11F2$3^E=kUhnfXf3B$ zOCW?Xy~J}lsR1gns>8Lqc|XS0Y7aAi+Kpf9YdfFJQ><+~)8=uZ79Il`bamY+64Ap6jV9*me4=UC-N7a6G8sQ)2gWjM@f+nXB~aXe+X3ezSp&&;1~FkLaF+iH(s@6XG3Bv1#i5t12(R=3 zr01PK#j$UQ;~(g?&(XbY24k5IGCN`Ny!q@s{pK^>vi*L4xctNGR*<%02XO~gG3F;A zpd`I_H7JukXjg-zf-HD9+C(cY-3U`jE20AMEnp)nk1rgPp$Iq4=@f;xMt=Z+X#(CL zIwN3uxVX(uRLPlb(MR$b^;$vESCr*M zNxH*xdeDf?O)Lz1^LTPT;G&bMJ}RH9;Dmvlj_|<4aPOU&?){|#4(MOj(*u^hMFt0h zjqnHzF8S&S&0j9YP^us^_2lj+sv+oHpZfFF_w?Xm5;BG}m>z&3+8F`~Bt~BpJi0fR zXa)XTgB`HeXrwnTRf)r+yCn|tQea9KX;yJ$Rcj&};G3~Kv9;$inXDp9sR8|M6?3MA zYlMlxK)Cl)&(Ok8MBRnuKik z)a!FLnurl6JL`>ndRZ*FVxqMmJxW7z3L6c1q_H?r$}tbdG!Z_{if!9=GGp7e zZQHhOyJFj_*sSnmJ*#{7UhAB_PxsxN&%Buz-#`9$y!!U|TUsdw*8(T%UyEl$l0)(j zb`>#VhGZmk2(g+vT}K}c1XM-O(@W?38E91uip3|HiqIiFvulFTkR71mwf^jEZr#OKTvbh?U`Lh zOtYQ_NT)|u=DclTkEJsFor64ho9ERZZ=l>ns$00#89Teets!$JJ6%>s4|5%^|{ ze2Su?{wxGeZZ;o)M;$uXnP?pmvGW zoAYuhb;T-g7UgWWlw9K6JvJu{bE)`V@AGtUaUkxYN#GKzCWi<>(0_cFP(a}hzop6{ z&ZzbJ0{`n(s@5fGa_d`u)cTf>{%5o@>pu^|Y(;I$Z-l^;Xw@jOxo%y>T8&@rqKW+D zStLRpk)#M=(;8oqaiQt^GNt({X0o zvu(%MhX?fL=N2htS%)1rb>2u_We}vUIS18%4tLlg`Gw54-a#D^5Gz6qy&zW%X*CTl zc5M=n?=s%lPLA=!xs`b0K;IA=HaU;Eb(%Ywlo{;dozb%S}PkYh*WIDGTcz@+Z4iC3c^+&|?^i8_N(k$u%S3>)%D!FQxT zvc%5)JM`YDfleglsd>8jvglHO%0&?yi)LwcSO)w{Zfwtt5=khUSAwy;$X$aGpNYMj zyVyO2uzaZheM3PEv%L6dTr9U(Gc~ z7>znfIyI5LzU2qu!o5bmaW_-7W+;M^EhC%bZO0jocBb$3O~mTvS zB$@-liVY+evI~$Rqlsgdq|z`9CytNkPnpeFgN?2q5f~W#WibTEhT;rEnKq*bFb5nH z+m3Kq0q1Vj115&CY(fJu2O%+#$cf@iFkiq`?pv&XIqWuRcf4lmlFmTBrwWmruA3hgx?|1CpoI@2oe0% zWv;g{4gJGl03F+V)q=gbkSr^u@ytnCCBuffQ}s*QtytH$lGtpKQ@eLe7wVMSTVkRB#gKl5C-&`Z);+Iq zNbjSS()syJCBmuc;DNSTQnZKC&p>fxuF4Ap5We68*BI0()`=N$XNuGR612w@vOe6Cm!5wx(0#jBMZ}3-1iw`vM#lQE4Lu1Mjh5ArAyN0|vA^&GIFaOMpT=p+V zH<8X5cXM2LR1^KhI8|0g1A>yM*x}v)YfG_Ni;a4sljg`zWVIo|#V2ly%uhk>a?N!} z8+;+9OfH7zIXU}hjFCNCtiUFJm3#gd-_KWwXiF7($kiQrXa3*^qTrqGiZC!l;K z!D|69aB*`!6k<97{}7OMzFoHN*i3)Eeq56IiFC;$BBeQB_IVw1boQj{(xGHW zr0+C<{MBgn-l^CS8HHcAkfqml?85kgf{Xa@Gf1No#H7CRof=u#c_@v)oQ1FB;$$hm zP>w&Fwia!tCi%yo9oMl+0{@~2Ufd6HNa2d;5=&^9lIZ=GX47=oiRw)3Wa~~W1Q&!A z0L&@INErV+zTTAeWn2_b4f|@`Ov6+t zdFoXMah0mWMQtiGcNjUPH>cP$7kQH<=8h(XUt%@uX0e$#L2BJMmJZtE+9j_V*y7>(BNgtzt~DM;zaFj;~Z6Ij_V z9IwkW^7IUJ2Tr)BQ!up%Ap>EPlP?USOvt+Q_IA^VrR2g{F5Lb)@kv@jD25{t4fvn? zF#~FG>hR_BgemK<(wyxM#P^uUxwPWgCvj*Tg;Ew>AeTl$P@u0we7{%+Lw}~SCJU7n zPcVh=BjU9#=pbP7DeX{DIdkD~jvOKm%y$%$&nwE=J^x(q=ZGJXfs97uaoHY6=1x9l zG9n4k9Mg9HJXp-XpFIM$$uA+YqefNJF%e~wQ*%J)O>@2WHvN0u{>AgWIVxrA{Z}2R^27<4 z`^Mtt^oA%_9-XPG#2eC)d~I}=5axvIB`#)a7$Vv^Gzml7aNcD4U*(i zY+!UiW-tZQ{Ok0q>p{K6ms?yb^ykSW`MYt;zQIh(dN4}$-px`LSyk*s!54V(wD^-V#M8s#8C>cT2IxYNP-3g2G1hWpW(3yV%*HF zwOuAb%Y@{Gx?{kZ8&)>Q%0jIvP^2{W)bIzZ^`sKRC=+EkQ^LOpm(Q4yMx%n<64PsE z>l6M4b~T$!HZ3E=Et(iMyv5sD)tzo{6N%<7y~?U1B$%-oMu%(+U*dMXueCsKYs6a& zYrvj6RgGo`VVajexmm@T+fn0SvR>i-nylDTS>e5HE|>+!#hxP_Vks1jFhMqEJzpiX z)MQ71)D*4q&a!en|2gJXzD7sILEpf^X%t=5<`x^{;;zlCCrY?g;;h!aT$eppB-Ba} z|1(w`1LUMH1LR_e7B-vHWx~b6#}xR`_^b)Z#7bW8Vs4Ix{%+voVnR3;vN;{f z9{=gw4c&v?$V71u0K83R3wOpIME{(Q62vk2vYEU*%cdVcvUMGlZ^&Pgu!DE4#6{pY zNY8>ZXO9veE=eRY5r$;)1WSg5Gq=@6jElp?RNiNWj5p#m6pRquJ;Kkef1$^Q)BYAe z8@H&hpSHy0vMT!c3x(drGZPWZAx(3Icdf(1}_`jD30MP`r6fTT@Npbc++OFA&F=ikFysA113)!X-GCt1@%aj44UUtv2NO)a~ar z8FhLAo+Fn#yHD1v!Z{oZ^1z$Qwz2X&ZxkYIKytVVR8Sr*}$TicBZ7 zFx7xrwM?qC%Jazv7W~|OP?LN$&f0^87w2tTmCY1_$r|TJ4=A~_HoqM`RtJk!>#SYx zhUukC00)8p=eHapnRML#_H8jyB75QMF0x=l#js_&?S1%Rdjpxt9P@gPuQpmNmB}DDd zUDT}j)6bq5zPQur@id#2xbDxpPk85d1yVl7ol23#o6!Y_Zbm;<>lNRMgHQtx*^pD2 z+k^V1d%l%hbV{%`Np_s|@ZR~`l^1Li3Ur4(aYZf|(i?;TK)!ceNnX%rSY{d_;b_r-_-~^KUVmY+-T)2P^9K zb`?z)OZ{Y&qCsx|c861E=CFjo1uU}5OK3DRotw=K?oO6L?uX5ZGzD5(CP7?#+@Zcl zM;)h0@S3zBY!o_}@Q`bQTw<==5ajVD7Lm!G!p;LOw?K@p zV2V7Ye5*ae?SbsUz^>~{q#+>@&Z)SvKbd2&F8abG3mQ{Pz?3D5yiI0kr5UF<8V-i+ zVvbH3nV6me?6QE2QYCfLWFMnQo zGLcRdq&)#{iHg5z_PAzcV#!R!nQaq2<HYO$-tYXR9b&{TUw6dbFye?-(a^N7==TiW9zbaeNX~Wm|Ke%HJ z)Y0GUR&lSAEAjxz5S{~&O0Uy-Gn~{SHXqF5LllIkDEUjad|bDgOaj|z*(z<eDuTXUP`r1bcT81|28+efc2hZh0m6{%Zv$5Od zs?CWZytz2f@T$s+3Q0$Ei5udViUWLh{fAIDDbfNje+||p$%*hvH3pfQcj;&sdbCuJ zL_@{V2@0_@O0uTF`=(Jo3 zj7(Tr0}*02m;J^KA%~`^L`z#G1Ovg+*43@0YWGHJoW!_>ii}AaYun+g1oLn;iWM%V zZi5Y8VpNrKQdXJULVC%=&=Jh?WEs^V(-JQx-LCyxU8BCWG%jvS>*OcS)o}{8msa@Y zWTME~K@V?^-Bg3|M2RQTm7ztpS_*5umb9BJwOnjfTs-JP2eRzjLQb1jyi2>o>;2E- zX4UYg4s-Kkn=E_7%2eYYrRtm`57fPbKhj(}{`fNECL^w?nR>C$nbLoY&G%YKDG^Wt z@WXBNR*^x85_=iEw}mOGs#1mU(v^~yBZRd1nZPKw3$fh4bEC};bYs05lxJwBnGU%( zvX7-Ff#wv=m5`q!8DA&bzJTxmmy&N3JAF%ztbfW(TN{)>_bKf;ENgbRM=^tQbC>#G z(dBs}_Fs<`yir+(TyF!Y%Dzn-AtM|;6KbC#DR=Xdzq_Xfd!4Ol#48VldaV6blo~VS zSgP|k)}UMI6R+gwm!P6mn}5W{YP4y?&0KY1gAm9O_55M6TpfEjp5_d`lZ80KM7zCp zoSTyO(B@}#kWZzI6WHK~IxIl>EkY3&X%z>hvBu7QiO_Xoz4X_ckG*Rox=9i-tGJdx&pcv*05^- z*bM_fV#5;^g4+$ayO3Ou3q8&i@na)UmELSn9KsvDw)&=jluFC5eR5Uuvsw`B&%GdZ zpY?lZ)Zpeg_2%#HYPHD=ovC>15uK`j;LRAHO<-sm_DJW+=|@Z$Y?)vi=5Id%;6(I0 zAv2|?2G+%PqyNI<=5{)Q84}%)fuq~Q!w#)J^ELFV7=8AsPJm$cG8GOaVW!8nv~5f# zp4E=sYIw;)se{}`Il}QWwVVUl`cU28UBp^#Kg}$Gm+#}d#6Fms2^aJ8gW@aGtg)~w z2RAH|dpOu?`|1$kdK@Sr6(r&KN3Pj~8^SvT`^(?SfWUqRVX#S5nC1<+wJbTo&HzJ3 zyE{%N_r=&fo~>=?WY!h-$eiaUtwD;C^BL<}t0(QjLC?Sh7oVQt9XD80_xHKTm#}9{ z=GZ+$!x!Px+S?fnJp4gq^xI4yyq$9z?+VA-+IiO#DBhj&q8`8>{J~X>8fP}0p~je5 zXzD|?DryS$*rva=B~y)U3+(~tEv3*msXdc2F7zR`_kNcL;a8S!!y~WSBOZu5QtJ9f zJ95tRYBhVxnx7DopK^>xUy~v|3V&XOU5y>_Afygp*+Y79hD&SqSXdKXF@0AECv>&S zT~6;$tmoViKYdXA8R1^}DzF;PCW>?pVB+A{Sj9ba4p=Qf#7!9n>r3KEQ;NK zgY)E6>v~8`OD0Ttm^s*Iq1?vql4fdUV>d$yq@A~Nm7Sw8{~0~qg{38tt1@5Y=`6+2{HnJ?R%ul7zB-E^HN?n{ws&^t@*$zEq`CR7K0*@1Q|C@@QZ@MH+m zE2=Uu*G}6GwDeTPEABj0tPI)I93QV3&nqZq7YBEc$q8#_9+O)Pe;E1!rAKgP-||67 z>-puTz?8LT&wNlSNBgD36k+E{c<6qL#b^`T(*A(R_YH++1)^ctBM}{*zB+?H~R{2)`Z6U zh_^{2+WvarqSg-TP9j%JXJg~<$4Q9lBooRFA9$I?DlC=ByhY5X*3Jvkxe-mve^den zm++;iWs%FYBIGhc2`LAyD33KNkYoVE#Zv)MRlStSkE&~+^2zH{G(8VL7SExMor6Etb^mn6oH2em zcS4m@-fuK25*qWCGU+Q)xzYJmjc`vT>Ih_;`x&g85EQAs+ z_HElEIT=+VTubUy)!JQh+>B}eVYO-hT`#zb#sy@p0&f84dRluzd^maTIRyISbrt|i^~5M_Z5 zR73G>aPtCbNruO)%3Rx0P(sNsR1~u&DJj|~r9KSmW3y@ar!tT0*|$XW{QkP{e^JwyWyws?}WK_XDR zEd(GzP9dTlC_NV}NG?G7mp#MaxRBeBf{g@dd(_=UE%J&{4mf6D}}J1e8$Mc{dyR5|cMK8{h3|5n_4 zP5H>z-+T4GryPF4{43)&84`am^{ppVed`G<{~eC_pXEyb7HCqG`G-~AJG01sKaKSV zxqOe5#{4e}FniEPg9yMFuy6%VTlJ-KLv^EQXXagJ9F#cD3-CMn&}vK`k}^R`*S(9& z_TWzcs0kbtzWUC&5VzVMFWb} zrRb4i-Bjxx0sTGbfdO8&uOn^vy(9Fk+-a?~9* zHz~@13C=bN5AAFl-Nhv*af)*=4C?pJ*awGYwrsuUAO+<224m~BNtnexwU1u%eZnk% zK^-e0HVRl~8~C-hiJW_225+>1qL>x4o4U`5)c9G&cl$!QL`dn{9mz4avSY>ba3|J1 za_L7F@#g(dwnEDaJxQpZd$7^Zln?c)B=40p_xU%y32Wm^IpljbIRCq@;QxI-{)3TK zwsb`Pt`C$=bXsuEXCX{RL1ExeDA__mOtMo*C0vr}FCmt(4B=SgDUwRun!ajzQGLgx zN5H^*0rq*?VLy1uk)gKWWXVjwXzxxvcBeaje>$$U1=bR^ghCc47q<}CPtfm2&F?wo z>h!k(s7jYsV{dRr@hX3(m58pI@u8`-TC(X|hv+eFxCCmXBTQhXA|5i9>A{i-x@S7u zYYw17-VsHMa*pAx001-glHIlt^GSN@n6m0yGNIajzCR%==k_b4t1GxGkhYA(cflPI zFud}1f`g&#WAyleKLf{UB3&Gh7{T(rQ2gh}QCLyEhV1O6A1F;oPC3ANR8kzIC>z*` z3?CT=i`6h3rIH1`zmv-40ghO_LNNqf1-2e&*HBx`7_uB!MA!Lq&Q;mYGdG)JF*}_! z9fU;>Ie3p=dFl#w{`!9yc8)z#J8`}J2%@=-Ehmn6<`fl%x&jhHz^ECuFltpWl45?Y z49_rg#nYu-b1w?+*mD7-Ocj>vf}~)Sh&la)&Btuhzk-!G0KRCcEMERphY=f3eM`~r zWk&i*Uwi2_zr%dX_oy&!9<_ywDDX*7+JbA1S=OHf;%#vgPKn+K z!TC=gG-1JQn1}FSEaw2TGX{ z>4Zjm=AxVl58hba(Ob_eH+8I7Li=X78WR{5M3g!1#Gmh(DC&4EhBIV_+u-=l7_;-q z*8Nwwn(OoXye%uLX-ZsNZSnenAo!4F~HWr{Zp8Ki$Q=6h@OFo z2p`c;)T8$h?xWNm9fpdT>F}J?HR7JGFQOP-K7#IcdqMoh^HnzCm-qw3YYq-&W*NvF zHEK3f)&BPE?sZdQQN6Mk+!NIGSHRLrnsv`m`I)6rrqTO@#VIDQM0fvR6GF%OW$A>X zd9nQE(CyJx|_~6>JJ0O+*3!xe=;{`jBm+(Q3AhOM`U7qbsCJKl~?EOxbi7U&i2O?snD^o2e>V@h#jZj%?goSViq zUFL~uU?HC0NEOmlMIhbTGKBd%_v9oql4---xOOyCu18gwF7z*vzi(YU0T4Xjm#A#| z1tGqS=+TCo1NY|l3X4!d62a7h40m&;sxQ8revU~KPBhyhg|;U-ST3>mG^G?zO4&xO z3VmIaLhAZm1}nO_$Vi!mff0a|2(H6(G7_h_drl+{y!nY%#%r<5hBO{O7i{t{*g|9a=_b(3MlZXy4Ph&QJERdmVb6C$#^1q~B z+p4&wkzT|=#t-sH60= z`c(*x~a^ z9AZL=sdKN~6UiuvUZ(i`fdp<|-O z=qnPWO1`YmqSaEQLt;9$QDv`!4L;ZdG}R~f8vLoyYWA@P$HkpL7xGy^V&)0PP4U=Z zsMXrSL4@3YP=6;I&*~4}$qM0wI@$NzvP#xq(ld_bCrGgY$EJepq z`btV3F3BilY~dpF^2y3;zF^lCDSd&dXnX_fALiUFmOgaJ>6qctxF< z7~bi&s8#e6@0)*)IS{MZk?B*N|9E_}J;^1~Rq;xDku>CawE%TBpPB9M41H4|rbsv- zL$&SwH~8W^MjGPveZ~=gC$0ad=iGk=<^b1@$RZd%Da75ZJd#-Xl3>&rzhv@O6j3bm ze%3GT7K+%pY`GI^6mN_+*}=%0M4Z) zOd8&W1TBYCGyRooRIJwO#?QHjVYn-t2Glq; zk4irA_~dG4%Xg&E1lBQ!t=KL0m4&a^N9mvJY`~21`_K};Bm-ylVS|rIXAMz=%<*_z z&+OIIT`&rjT(TUko4RUK8cej1?yhbJUJ)n39FkL5TsbT?bckJzVupNjbzM3G+A>7( z4#1&EBiKjj-w8Vk1m}==1MPD=aqHVg=o4y()Lg~l@MQG{g1`!F=n*O~m4@PGHomNN zI~rG(l>5Pu7uv*C2?Ec#%Yb|IC}|BcT@+?G#MPo_ZkdqxC-O~Lx9DMmA6v)(gEXI2{xDC zC7jUNE+*pL;|-sLOxOy#<81|4DzC%hjqgy45{LfB)A`GVSv(^or`1A<79 z1t2h`PqqVgb!ZNzh2w07MyDAox3~;+j|LCE{?cZ9h{}%R_T7F#s;GM%E6nzqe4*ts z^MtsoRpcb^4HJR?

9!Lp;#>OLq)YL4rFbXq&g7DSU7-I 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≷`H1ynk{r4|XVHrR5<^RaBg8sjR zMT(i3eM1AC8AJe5|2h0G8D)~KGOjAx$X9AGZ7?A3kc-lm3Nf>~K})7y!BXZ|8yivb z5B@Gk_EU&fQcW}Wec0ZB?IFhsRzQ}v&rgT|$&U_5Y4blw?*P~zyMs!>8@ z?#nzZ)YbRS6pT)Gn~zvY8OQ8yh%s1ZZ1b#*A!XxFlyg|>jQM*IcFeSFmwnG`&h$Pc z>a4JGLo2n5l#MHHDR2XeF|UC3jid<63C1Yas=g<@%Beb?lXuJVX9)6Zc;Pk{XJOfEnue#RIA#(ZD2ahUlOn}I`me@Frq7-?RB_`gW*ozNai&k);Q(h=U)GwQ2dKJLFEhv0I}axj@6kf$^XvsPN>Ev>Sln1;WA zRRan)0TGDpd&A8tSW4|m`7TaPz5gb+q+ZetWje{_pOPXHob?lqJb;#KVb$V8PchXn z)58C>n$JoxHeoJBjCr4zZi_iqQynr5FD4Lb>If}Yt)1rL#{*RP7_=~nM$)z`d4)au z^>XJ(F98I8%f?#g?mHn^WbsNXa_L_c5A0}Muj(QhtN%$z6? z^siX)UJiJw@`-8=+avpRMX#wp4+?#Oraud={MUYv# zeVOJfG47o>=g*5h@g9O5bBALs{{7q&wiogLSu$e8akFf%uqJt06)p9FIN|pQac^t# z;DHVx7LD^|El@e6&mRr0KN$5;BVd+jJ5s?7pi!}%CxP0E*b%Yzx|ACch0n4{(d z;sc5bepRA1vi}I)=9GU&nw+^xwHyfFX)DDYKUX0h(6f1?nS>eT!2Q^bjiR8J zq-nsa{#%1qL|OaS2#r*p3G%0)T^Kr-s1ztO_GSFBQXJ;9&JszYVw^|>75tCgZ4{F8 z_;9Ly4N<1EN>ra)m(Tx2OZONmqIL(L=zjVQ*$y-O@q_382<1-XwLQFqD&G)WENSPDz1C>Iw_aA?0{q1dchttjY)z#BW+xbgNS75JLO@ zIWOiev7C_?_P3fb4ybKd!K8m&dhV$ENd`yEuKh@j045^ME7~t)H7w_xw2l~DYptsCkV_O!YE*!7bF<&rqK z$bF%&g|Fh$9Xw>E`8H3+Zy&vuJwQfF#@|YpRo#!0LW8Mv_Il>K`@6NJ zLE}-2C|{@@DMU=SuA|GDqX0#%0vhx6Cx|`OR0yt~=00_kmar^9L+O&vb;7u^L0mX- zP2ZmE>9R>XGMIC;(Z;j-($<=cH0jZnYAU~Kn?7G;Rmt*lVwbvAuOGs+irXK6T~Trb zg$W)wWK}{!hF9$NH-FP_M3PgD>XI|8*D0V@gK0#DGa&7~$QYak^R>d-hiv!YwR}+u zg?+W=yc&AhW84=A4lC&w5v-iJR$)HfH=klm{V?^hm7C;D(H9p|hvhu0&$ z_~rzyzCxsU2wP^?o9K|-kl35hg%-pyszb7?WeUP->!_(wE_8QJwvoqL4YyS0+bz|v zmK<&yMmkG}VyCJ_54E8DBMIWHGHGOkeixzmcLYX)%{OgeY!&2M*uITgL#)4(%tpN* zye%88igbg@Fg1fB_|ww7!kcuXvI{3wW1j)RAVzBV^#kRJa;&us<{m%2sH#Op5mDOX zZwzWGj7O#I6*6=z^|C8h0zbWB?VP#cj6RAU5-r*8H5qR?99qQ<1ZXzP_YXqsX7P!} z=CPsN#G5W=Cr2c)#S<&CW};>y25Ao|OY91`CG=TFJEU&nUDaYKd@tU zBWai~%3XjqDqe_DpA?jT!c9x}CP=UCrGSiwy40AD1yjPiYQH!2bjPf|vYO1+xz(3D z^fe9sc$cc`g;runxJ){PVm!Gjv-;Ms`Go3IdT} zV47+R9>Z#|N!NO!e1c6wHqOjC6-OKiDwAqM5V{bgh`LdS35&`Dsdw2U5{pd3s?{{#n{2%a*%S8ZL-`=dK&6@1FU@jkYzI;k7C-q=TbYmkGx}XGAE*>S_5Y0Za3NqMLzuR)jeLM0c_jA&ucCG#3xb zp+b0WOG}iRDwpPc`dTHte#s`4|CB}OBIHgKD9Zv5phlOvXkFCJ;oGsvt@6U1~Y zTclf-Vn`<}DVy7T9Zip6w{t5iTtFXoj!%H%v-RcF7 zTXmQ&*{bV>mrG%2iH8gtVX=5DG#;`hX8H`8r6wCu+aAwH>@>qbNUA*F+tpg&=XS0bBl#YS20t6YS9((`my@x8|T;r(~-T)(zN%?!S8dyGCVf*|4Xy z=|g&kwO%WPq~6gbIWLu^gOB9nPIu`Xq;DkNs3LS7EhKXbq4Tl)j7KB1Q)d1~_TDQz z2_Na*kzwMP=$ESwD^G2<8w-QGX<24(l_uBqy@pE~=(g7dm_c`}-aJRkW-M7JzN7pG zUwy$i*5_HGxO`@g7;oVp^8@@T7pM*G>BCDZ>GPh#`#$8W#}}{@R%Lbiw(^8J+8yvH z7c>vC4(x9kzWat>DHqx;h%D}B6%J*hP0dtuzh9FsQh%vSpb%{YTgZsGJWY?zr=wGR z-#Vd%w$s{v!1Jp`0p}bB*`SBk8T^rzuqHd$!gV`yvF0ki$;R zE(#95uG9n1E{-4~$SM;<)>(|mR?>L6LaE*K-7_h;P=dCrq@~72$LF4e<9oj}8zb8x z{6C^i#hVi6Fyv!Km1+{GaN<#)*N_dET!ME2K1f$E^bPaS%I~H3hg5R>qIW?ShM>(k ztl*2}(V{1&l>9iAOj$(Op`LHC_L1hWdcU{0A}4s%?i_u1YTEUaxKcJT`5&GyJFvlHcuryyCdlBaOz9*}*wE4bM+ zrw;oL} z`Wu;%?Q7`i3Vd(hKHk#h*wQa|`DIbFgO;o02A3t&Sj8GWsTl4ZdJn?xoFE1eZ(tVn zeMJ&mcu--+e4a)$dufl0vCY^gb%{L55ZA6kXudlZY}}JLWiN&a>dv$%Eajd}il!n0 z$ju21q=Bq70MSA^QXNuHK4_}BNJe*)d$M;2M1ATPW`bb@Zb2D;?mY7bXvAR$j!kIPuCd1kCMa*d2EQoDj`3zauV zVazhJew%Y|3sMYhyXpPpjwtGv-lNXy_`|K9GM`@34LDaZ(a~z@CQsr$vz>_P*^Oo zJi$Ir5L9qkWJW-rEQmAM1gZjQpTxKqc6T-(MV_o+`)_HGFz7O51qy@u-^HLQuog&l zN`kV2iND)^2meL@!3D!3+tC1_fLbBlQ2{ZB;*`0GJvCLQMgHdNR9V9AF4c_o%ifkB zd@WPXKMN63(hk0US17giXhx{9HmBA^ox*v45m+>iX64Rg0T^90( z8_fz|0ZO<9y7h9AKAHzbe&^MuUT>TkY7rC5Ov+5GGD$XWQ62%k( zb%VZC@cIgwX0xpf3ANO%p}@qQDm`Kt}L;iyk%3&U!3vw^@_%? zfm2iW__<)5zi_64=*mQ85Icjhub1pv74gd6#6DC$SK{`KrKf7Xr!A|l`8HNr5u&U) zc^TtNaRP81XJcWi18Q)yuCAWuT4L71BVLX4 z`}DPmcChnpi>%8_JS0fixTLKlDh(ro#9a9&n5JPbIT!FETZUuU;bKthyouLVmI&+> zdt4G0*r^!GpOVWUmuXu7JYrU*bK}ujC>N+Ikmi}cQ-j?g(mTj{dMM`>RM2B<(QtA? zi9KhoL#iRzFdX>LAgZd<5px+l_GDXM>> zVT}O*7d-gWK`#+pUVt|ZM}@>c&U z|8ZiWpX?ICTnecGJoERD5Gygy4vx;uX34mZs+pMuAK@B?PWLAGHo;X7=iNKu$Jc%Stw?DPNJklwbm>@7*$oT~Q83wuM7 zj4sc8i>=V2U@sZ4I?3YAvbMM9u&l$IMoI zInA3FYR_;pvl~j0fH!Dc!cAQ9vd{|)RGYjRzdW7+59RYStS4Mz7s;!}M59&4d}|kE zEK57xKgq(BEfr*QCf?Y%R4yIMQcgp+Ezt-p;wPFGF)b+;50dZPY9}a*cHtbY!|RlN zt6=%=BVx5p6zQ}NIaq5nOv-tc!I?AeU_2Tpo|K}5Ru^bfNM8C)ehtOapMjGY+&MLy zIJ4MVQe8NxOX9#I7+;0d;g|&)7hY}W#C`5LlzhYyq6Ay*8E;}vr}7zzUGbJ7o{avc z;Tvh!hI)|@JwaC z5#C5Rr|t<;6w;&Xp)`;k7N0P#Q!I0a52YTW32A8}Fq`Covz@18NloYEMOa?pP%?H^ zgt`u#U*wj|t25aC<=DgQ?7XNaXKI3WF<2?V02BH{a$@g9i1R9f6Z>5$pHQSAG^T{j zaNV39^YvCkeucPdg7I+ws>O(ZNj~XS>H%Sih4%$TjbRuRteXSL`j46$Yi&5W3baJ5 z-EFAkd_UBY;`@HLF%f6p{-u>6IK`hjSXBh<nPX2OV@A=7v?_40ucKcXsXO=imrEwXIPDXXvIvl!mr6lmm+(k z8Jf*E35cvK(&&X$n>N0;W9bcfbHooS+vE2!j&^7B`D&B1^X_eCErQJqF^)3zaQONX z3#a)<4737YBez6qTEv8p1VB_vl6OOH`>jTrlkde;>_Dr>L$*ch!}Y(5)J)y&Q$^2Y zYAJ7yDCe;gzsVDFpm{I&f<&z5UaNixPeRnJ%=aEJ8fPCGWxhkWDV{0j`i!@Js{goMSzJKhn6 zEal{!1g0ZQIXdJ7i6Ok=(K^>{0Hq-jo$H2y+>n?&Z41Cd1a{80Ibd240AUzkmUCry z2LdwI=|%%m-oYU;sFd3yG{~IGqb3NG)1y8}8?UP$Sc%uQ1jNPLINPa4*xKFEMX+;s zNDcbO-8KRY!}D1Hb|dhg?yw;6U+>5u^qlRSBlMi^tRwWC?|38hTy4A}&cirG2qO10skiiQ;{{g;LqjUm z>6DZqq<-m*+;Qj7wb~_t={iW1-@}{eJ3m;%i8E7k7pg(mxOKVn7bFH}j;f6G-r&Z{uI7Y#2gP&9-aB?Fir<`*f= zXMEoM%zG%Oj)g9+rc!g$&H5?wae0f$vm*ZBW_F^wxl>$R$*pYWDEJoG{&gwgPb@KW z=TvSrJi`np2V~bC?@qiBL~gc6UP@+vYVyM8D9_W>Le6Jzxs-AwQ=FWkQYGZ`#}ikC zDGlyZHl(A?>N%iko>R^hM#A6mSuS`W!+DfP;_&IPd9_(ReD5^}nuQV9Va`z7wUwe9 zlla`Ytat-I8j;NNa5`76Kod7xgD$BABQFdPF{9Rj1T=q_r4mx>gZLEVa@&LWbmOj9 zfjJC+F;|L|*FhIBchIwL^<0u9@-WF~eV%{9g)SR_kdWvIxM-eGrnFXqoSeCtd4H7z_c`uDDCfF(%;7IQuaMK zdr$(7DePoU-&0+(UuIw1Ex841&@^r?>c<~MvQNQFhNe!Ph299@vUD-LS0pIA!hLtkcHG&U%!QVzV4pIT(osHY=acw4 zFCrj4YH-*i{WdHS$Jb_-M|EQBe`u!I4y?SP4A@h=Ez3RWzSun(53N8RS%klDSU@>|`J$$m2Y1Y!s%mR$1AoqPQpVPb8Z-U4 zD;*dPG`mLZw#;Gw_GfqX&du%xx!>n&_X%bckt8+M%_A+gt@bf9jd=V*9mfPVop&~(DKN`Q9|qL0KTkNFI# zX-UIkfk7zKl(Ld*1dDgh6caM&nE>o+FLq{RpvLgR8!L8O{36KjD>SN$*QHwKk?sk? zqO>6MAg{rD-u_3WK{EKaSR)bBE`aX=8o&<1AvC?5>;Ypt@^hZK*)oS$Uhk;cLCsG* z$NY|#=?YpSl|hyt;7aGhFPEO2oLdaonlwK!KV>&Tx;S#Cu@8*WTwS4K(7!l>E!)-G zfZrGrB$Ezvi+>`wME@wy7jRwh##3u@|`xl zuf>Uv*fTNO$ooQY2p~Z#;S6#l)YprJM9~l6uMgK+kt@b2gfDU0xu$Ouw9j>UjjB4>WR4joW~9O}^jI@gzN(9oj&_ z))~_NjnG7Yoilvq7%Zp?9nz$eVH8;J!>FIE%E_L@XvAGXaYNM}vojrE$)=rXX*~3R z5??W{Qf&W{=G8G~440o{7?AbkH=7!Nq`8?_JE_z!=T`+Xy^>*}faY>t&-j-j%-9k@hhO2jk7#Wp;Ac(9YkvSW)~&(GnN4<1 zDW1I2NB{cWqb+390Tn#E&kzf6)iJA^9Ar(9zw_8keW_Z3`8DPFwq;JH=%6?}~( z=QjMS06w4Z_b+Em2i)t~Ci{P^%ZQEWCy;c9vs3x{zJFKopv@*$KPeN)4I z9(;TBb9h6#Zd8m1)rFb%j-DI%g<&c%=(+5Uu@fcx&iw|h#WO&6Kjoq@U#AyrnjfEF z5N5{b%EtR^y_J&C>Mi!@eI>KWbAYI?OQwA`HY>k!Od~5;NCc+%}62#AWyYx z67cw)ZzIXvO}Pq1MuONDmOGR$XS-MfI;W`49ivV$IGM&{7w~zZhBao28C7K4b^ zxRR|9v#vFI707*%+R(YlTqrQ17+-44yL77knCaN3o#ncgpq=fC5IT{Y2YEu^*8+ps zS5S-z5pKC==3247K2z6vuPT=WH!vUPR%Oc}AdrX8oOeUu#}s6pU+>Vz=K~Ar15p(8 za~T6GwMkrY4yS!TVK|Kuf#m#=j&TfI(7p?&1Knzrs0AHiCbd(a-LYx1Sl5OHv!jr@ zQ)ncQZKc~H_sxK@lQ6Ua(g4mIDfT_g0KpsUs9qvJi4TJ4iIdjY+Yr7*e>}%!vq3=R z^g%CdET8Q)TjNGKed#EvfO|0cBh6Ys+o{s|;2-!jV%(o4k=Tn^xA8MB3&Ov?2eGg0 z%LXF&L1apBOAfz*V~DKtaLb|l_(9Ql4%i3igUKp2;cx&gLP0NuM zwW%|DwS6W})OZtmBHrCGPhLMSA0-~DIc7_@`s@4=20pXtpI|zkxci&czmM;;tzH-| z7Fnzf=JXx}so)8h@bMZ zk(ZS@lP~U^-MnV{OM1wt2$3;lFS{nZz&w}3zpsV9cLAoGM{wOpHk>vERmaS)uwjOm zUfj}~<6&R{dc*0yh>vw?*d|Cw8}MP}LH@5Hp@{qwwAqflA^95|At`^D7O#Cu9RpLP z4@~q0?gZ^uXyIzBM*U?F?uxquO(|tfUv!$T1X19%LRmnL0uP)VFK0o*`2CwoPN*Rta^VNK$>-MjK3} zQj#e&-3noU?Bk1v^9!EoWGcDLA2+8ShlfTY}`W{s<^O&lhsMV>r1`mydyq z_@2)(dIyBr5B=I2su8$JhVJD%Ook@Rc`}`}`^aJC3fay{P_C<)*fE|vM*Gn7`w6Jp zF5S)*kGCz4hyqmpCHM$%iLjATH6f;Ers^g>t7fFS%llNwNR>n^rDlE<6pONXg^y0e z-d2#nw?O>&d;aN1tfh86O5#zL#MDb_IvR0xpQ@3lt^Z z?>JMSL9h*MDDi;?BdCxTBM#AWpm4AqMwG;f9gq}kAg~;Yk2Wo4WRh!LtFnLe0~*Ascpp zbC68b?XU-@V{H6k90!FpYysy%I?|}a-9>`E5=pZL{)D=x^}sUh0gol}pz{FD{~K6} z6hY^Kkv|xSiR6RP6;;<4DDW#u>jpwN9o(Mina%@pR{{1jP{9tkjRcC}^IO3X_-%#3 z@Cig}+Hnr1hV2pNoCvf>s-Rm5Lu%N8491BB5w0GZ$&3oY7#A&T)WGN`j+6@aigcCG zu&K|1lA%orb7&iSC8llG@DDb{zzs%fSrLL7r(?$>GOAaEqM=p$J!4Ss2o;Ty8IIJv zf)<>Nkr`SyX2gQ5rfq{DJYjT?6jP^x+>aCaf|Nn47CK{7?-Yy?sY*OZ=Y}O*Ib?;j zq*aALWLQ50Ws9L5F=JPM2!)SfEvR8$pA2EE{vD*u}x_pg`ZY|TBqDnhLFhus?a%VtL0rW2!e@QVzl)z z7MnF{mTT&V_GeqX*d47p|4Pa=TZ2^2w>~)99Ow zZ?i%q_~g;(8;x%>L&W>U(de6vf0@9MzZj?!)F0a8ib(PgE;i1l^cv%Rw;Od{sI@=M zjVVXNI`;7l$G6!+<9*U->{|}~nL-nN+Gy;*FU|Ii-w39$Z#=xlCXwQwORjA^^k)%| z_erAJwiy4iiz0uqQ1@%1^WVl2xnrt%=hXfTP!zlaRrf2P`wCN(yc2fsrdYp2jIJjo zJZ}-0Oz}5~VtEm`4L4@ceoxGPhZW1QO#EUV&V0A#eGY$bHJWNkzm9??|00+cHu6)M z@Qj#EW13xPD?jxRCN7_Kz1noh2bf_e%F?Ybkmh8Hx+x!!v9AuK*;w)2Qj(RV;@mT5 zo*K(CHTRS(AtGuJLzda8uN@c|SCqpuHRpR=pm6ELtFIqW?i(oMMpG~`fm=*@ovoCyL6MG1uBC?yq;+7-%q}bD^}710*gu-_B#{NS;Mn_R>X}2UP}pZ(4flJ#aGD_*wQ+N12Dv8gGw50{u`! zSlakPlYd=0O|+8o8@`(GpicI}DST$v6eUaZc|AYzo%m3fDGLW~8)2)#sOW_4sNMC- zLH2NdNz3E{ZB=pjc8$tQB;bm93}DNVqCU7$+3_)H_JjqZ?A^CO&|fgVg?{!F0N^)L zNn0z_2(ygUUb|LpjkP(lESy`&*i4yCuEkO_(fS zmu~9Cg#}!GpwZ7CeHt#LuZ2IMYGGA#1=0s|0lUizLsSv3g}jc z;TSsd!leOp%foO?9^FN&mTWPEWLi4^j9M(=XAH?Sb`FY8D@T;tJzCvR*oRUkOzB5o z-GDNVE{~Pn^Gq1k1Us$+@-d)OF-s$9HrVYWan74 zV0#QwZo|pUw5wu!#HP~8o}6SxDdFb{(YA38!?G>m=LpfZa=wptQ~p=tFm7A3a>DqS zfK~%M!oWJ0?Pd+pwsiJ0?k*?H=pVA7H?U!Rj6kayJqjEaSFV-b-D6j`#j`xiN251% zZXQ-F>0t~xuWJ_@o-NV)PFt>PCmUue@$-OjPnx7-iD7$mfN`&y6pPxI^%aA051eG% zyU!?>Q2q;GZ-*h=ll66l@vHz41jxIU^pJ<}4v=TwI!-TWEB$S>X+X~f0r*xEKeF?> z(RPd69r5Vc+`$+u*?r7@7eCyIomimk zC&t8{KF|ixk7vt?S1=jSt_43apJC9`0^PNSu25tfW^{>7IlJ{U_lb{o##^YIA7ji# z;Q0}PQ$+w`>~Z{8-gO|%hgjKyK!AZbf{JO>?*Zl`A=lwuq_Gt!Hf&5m+u_SP#(k=? zaSuWaQ|7Yi3&cnk^S*=$F$WJbNZLtW!W2_2q$wZh6mvfqWOH_$s2&|!eP(QOQw%u zkDBv_B5F|VW<$Gwt5|jit1@?rsw51Rmv|hUmfRhr-3U3^ykW9Z@Pp?Ym;1icjr!A9 zmw`tYkh@hE9J?16_B&a4s8f^aKaLNR241)-cLK8#clxs`cM7uJcJ{KCcM`G~c9mA~ z=~F`-l4(OKO@Hc;#0FU(9y(-ifG>}y?n1m!ZKP%XA)F^H)mILP@oQ55`gr$wg4s(9Uq{N# z$eoTg_Mgkm$^G*G@jvY)|DhmHRdb_g|K?R3egnHj{(lwZqJ}Pp|1-;^Smi^0UIC3S z*0+g9>?rP*h!XS+VoX$M2p&s+m`sFqh-^N0OFBKIhD29l&!3D0xnTCD(Ld?7$6OK2 zNVbK%v-5bJ>lqBAAe^L*7idSc8g-$I?)dVM|Rbo^m?+V$$L z;xHQZCc?YNmV1f%-^)=L9}PrkT?|wKnvAP=q+$IEhOwGL1-DUPgLCuh4abvD=M_8H zR=EhKN7art+raTrjbQD`Ny|W7ze5)WD{dSz&_+s|rsPE{xq77LbnltJGl9 zcIodDzk9~gF#CYbne4xa0o>>d?7kbm^=h+eYADcAff8f9R_p?<_2v)oP?Iwwb0S?O zV;F2EV#^X>U6yn!4{3w*7=~WC{j5(%WQ%pT%@TD=>nIHZ z(J&eRyzM!8gli%XnVhyDb%4ssA)8E=E>aQ8S2uv&I8@iQefyz|K1n*&g2}lAHR|E9 z9eBLf)GpYOp=j?_^0S^uBhz$0|1c4DDo>O_ zh;+>?$b=!v7rrSZ8;(VYc8%mJT6P7({A~qar4+lJ)jD|z?m>O>|u#e7!>sE*S=!EF8Qk(V#FSD(Q){~hFS)nfF}JJ%_oT>crVliq8fe^ zwI_9SP9V4xb7YB9V&u2R8$6=ZKzp`m*`K}|#6t=WsG0{R zStEf}1}=0)R021s|GhFYYJce`eOE^KcV!6t|5nETQWeVA|5+7o*6M_IF@!J?#07SF zvS=zBI=`IBWyZv5Cu9X&8z&Ox;_XOodlTZJW-XpC2u-`L714oM`%6Xc|9YIKxw@~r zYq$CRKa+hK8%IQVJOV&G-VOqWf@5$li!ml35!Mp%pvh=_EZgCu5!$2Wp}X-Qzhb zs*EQ$(CX|+8ifmG*3_ioibWFr>p*0H5NE6~4BscFpFL*lO1Wl)E1f$^>9#iKUAH%* zexxh-b-_t*-PX?(P-$|BnRnveIyzT#>6$%8K45ev>JDsNzr6SpxCpJ&o6cAM3ySoM zbi`G5R>!I4+U*Xmu)Hz5*hN)hFwauwOq8VP>%ER_Z9ZsGeZNE&$uw^J z>Q;)2Bqvo|>5}9G&ycl$R&IIxT9-xv7_f2;3ccSzKN6Q~oq%S7(7W@ch=c62wEjDb z@zF><`I>Zf$9s9pseAhOF0C#4$B+h=C)PeO`S1`KvZPjTkmgyZ%qp7LEsK|=Pu~r) z_?Gf8qr`QYjtq()XgX5wZxBtk1e+ryV+jLLfg9XUg6F4>@CI zR*Sc@wxz$u#*4HhrDA}A8p=7IA1_um_Z<9$T~+dsr@__?Iawj*)r8t?ff%&3YCn4$ zrxi=37mBtjKN#1Qk7wXT7$Iv{!8~i?L_>@!Lf%@)jLj=*Mfj&X7ZidE4BjI^G->9R zgg3ShLPxxo^PFSXIe39w*q-XelnehK*I8+44fGVQ#E!R>t53|y2 zg3~qRtu7G13f6%dR{e6Ey_$SjpqN+QiV_m2RGldxoQaLNilP(N3cm(&{mb&^N*#H7 z{d@*$-kY+)Yt-H&%*=5`AvTfV8tGevJ zY}>Z0{<3Y`Hv9I(OvK!nm>Y2)&WVf@d0z4%BXjSyzV&`7xqzmqC}O$*sdQL?q-a?KY$Mr z7#B)*s8^Xy4i|ZG1qLMh>%j5^FBAuw=Rao!>1uo~-4XSCu0>Z?Wr={U1-Z}SVp1Jq zJ4a{=1=Mrm8t6&CUqG*Kf}cwm2Nlvx;jpK-rnRP9Pp$ut7_sA^iMJJ`e_IXlk012^ z>+0JXTNv8?m(lY-$F`<+F8{gs$r`XeDog2q{hey~wY!Sn;&94C&IUYGu08L1%#52dTAXbW!NK;oE#svvp?dbozyR=Oz2*@CkJWAG}VX2Tklp#?LJgB+)=g z4y}#q;WTtYi>{6ru}%gON-dliah3@%E!nG3Mj=XeBz8p*We2&E(1%TbQ^xx9LL9v!?SxELh$PyKE?vay^6Bp|^j3(=q}{FsdsnKl zJiJ7B879Sm^1w4fX*$j*=5-DP;``GU!Q0 zS}1k@rHEBtJqHgf+7#>hU5_A54tC2yy32u-zYv98tC1!TU0Heg*1R8tb_!M+5$6UM zz=j;hTF15+lBdc9Yau_xAt#SHUCP8mXilVS1YjRqg5uab7m1z5cm1oAx!l6%S1?!L z?Rq_*q0S#1&}Q;;h1^1SQnpg1Whhm;hWV>G*5q8}#^SHVHVvhX>l+0V=_E6F^5eqz z{DeuTo&Ai64Y>(QLYO_`9OWEe?LsP^;3#m@O3wQjsJ#SbsA>(`U}v4S zAU7#GE&@&BveB3QX%pJ`V@iDB(P1aCSux8SZ%Sl$5JJMiw=219uC8=rz zKxg;el8R#|dTa@#rHs5jdvXcE%IqXOSKZK12Uzi!8#Bvlq8a5Q4b=tJkrcS=QCv(k zz|T5Oa^>LFAu+GbdRB_;z%2vVLP>D##J)Wv1GUF3SZB?dksnMDYGvn4&5|ZXiu$!_ z!c?QC;rMZ0J>_XZ$b~qB>MPu>wxa+=i#TNao%E(r0O%Z%qBsL06{yH$do^+p7MyD< zN4S)jhoL*`uusxeqBYEcqCCpb#*aQelJBp%%s3RJ8nr@4y9G{{S}r8f znpPDJd=yNIclbb_oLShEQ6!E&!-p~!Wc7Qt@^ovyQD-)I6*8R!^N+o~d)SY+gyLQ2 zmhjvkz6@L7v$ZATR7n*vuW{mm3|6 z`?}FiYdX^%2~*XEstgeb4Suvq&$Xcn4icaQYaO(Eya)b{HANo@~g%an~OwHt-`MsVJ^9=9kEwy$_9AJ$$yZ@6xG4|A9-igas z{B0={{Xq4zJm4mSGjv7cghGc>&(Zz(;5sx?W<0XgvU%%f&u%SylRy8RNA&rFTu$3_PL~#rD+Q>M<))S#u?K(FJNX==i^Q=kqnq7a*-u!%@*0|g zJ3rTKc@xI?($biL_Z^u}n7?uuOg#K?*e*Wv6&`;}BmOEe3#W@*V|>~F#7+5|-|4lu z{37#-ar3}9FS!iT4;~V1pB^4^`%^xGDkJR%-^-a+Dr){=fD;f4m&NFq@GrZ2I2(HD z_ze~VLt$@m!V7q%OZ;;VZcY{&#<$$@Y8CdqTB$h?zCzcvn*q)!m4~QT>7+7&PbFi z7kWy%lI^Hx$)u8I7DYv-`XNFkhZzr_ENjl$c-^ggsYRC4;9JRLe0%i#HZsT9%s3B( zDxOpk1bpaX!!1A?%GtS_>Y*rLY#2#%@2a=Tpdd@qSxVB$PJ-U#4|{o|hQatyL!4p) z4MN3{K=lGgC0$h7KLMmwI0f~b7Ns$qA*_0OX*M%)c9HYDW+bpdBjpyEL>l(Q;HUIk zT6vOb32iD(S^EKIX$jj(Q?A@Nc854qjk;J%np1JzS*FNFwMK{QuN;ZB3WsbZE@x_6 zH9&VH1FWX3_Q;W@G%<#=w$#XnwTz`QnY6sPeS>t7FgJYrdQvkG!a*uuS0+gYXnB=9 z1IzXZ&M3UfGtJis88sgJRAPhVmOunj9#5|tGfiL)PE^q=nVd0o08D}n^&w70XdmVC zFWy%s);{!7_EKq9IB62>E(RJ&))M)aJi=~qS?^cQz>BJq@@REtk4k;(n#Kx$>aj0US5q1c`W*>fW&&=zY+mF+r&t%FQ8GGV(HmC>we@xX;UiOJAfCD3~q10&?z8r%#6p@wpAUV zsa%w`F^({HOIuVOq2lrjr`3qJMn=gM3A$j&2H_ymy;nJRW^ki9GyCH(S^~BlN9ku# zg74++$jXldTB_h&$A+va;9ND%6;|%X*EP6?n2pYaE>n%hQHEV4eQ<95>Fj(@+6zaM zgF12Md86v%-R$tmhEH>P*z$O)R0Ww?@xnQxnBa&^*2szIk3XT#s+d3GtFypOei$wh z#7sdVt0Bg9c|vE7{)!A2iC`6COa5JVjdb`&*onkH3eO<{?ry~env{It6GNJ}b9#F)YP%7M;Hd7*z9^uS(Fg9=7bE(23~kHLFFabt1UM-_##e^N-U{ z@CZ%Vu^nW0o3Dp>{*qr!zSNIfdG(l|$$N@H_?`smI~->B zkf+PB1po`3HoV-_ID1A`md`p6ZWSW+TRT{KyWNQ^&Cbz zx|!&h9&Jo8%_O*NF_+v>q_8D_rxKqMH$eA}UimrOM>YQ20Wn&_QMqh-L+{%k00Quf zTz(QHJ$&C4Ci@Hz&nqWYauR{-x6>&SE7>)jv|>gaFACTE&b-%;9Y4G$vC9pW29#XPK3h>AMS+3*PvnprfBSh4^?TKLWA3D6f~ z&0T0(L?2jnFg;=C-BJtaPdFOTo4ty@Fb#ap05&ZoTP>_BEh_FN7#FMLHm%Hv=5^Yt zg=6FH76RNR+10YE!RGbEPyU#xbwQgsF~{s@`kEEFJn>ur?xU5)yUpXd^K9vg!S7y( zATJcfFNDpqoBlXIFs3hX(#KTBDt}1FFD$ild!tNe&8=AG`&(o&S>*js!{2+~aE8xEZ9{(BrX=ks@XsXoC`aL`yN z?>|y=Olpy+n_y*XoFAFy4>aU%Ne?E{e#2KWnjAw?dgWdT*Kcwy3-Kak|NW!d^|5gd zpkJb|&1k`tbybDs#swJafkqWlN2j?em{pDi+t_dtV_K}X(e!~lWtsb2_F=<}OJ7L|krOk!7rmX)cvp zVx2rsbBF8qv<0^`TfvWi`?=gKbyQ<8@ZB*s&qXrX2k4oUo6|2A4s#* z7L*T`+o=$jK{>hk)dWq{t_!(i;!4I#jTO z`cv)N;D-s46E7NROePsMC4q}mIREgM6Nk9am}Glc;SbZAc<&K}8$2)ppbkfLtTBRo zts^{WO*q2etj&|`?T1Z_!`9|&ETF5L33#))%7Ui>Pgd2GE) zS;tVTfwHRAn7r>v`k1+AlB@K3hs+7apFNY`uQZgV3hD>YtOgA9gX-9<@&)OusvcIf z>=lkVs9xjaY9mgZZYl+3B65sdn~c$%hMZ&Y1D1~|)}ulc9e=1H`j9or9D1q)F%>;U z*0B*AaF*KjV9j|QzFtKzPm=6Kmb~T00opYp!qd|a7_fEUxZ)A$9 zV4YAbA<5d=ipbr00gWRi5{4=%jYEEs5y(fsdLRB1X`h&$#aG?;zwaouGPkBV z?RKP726{hgXE)U?uieY9tyLbqSzkU_Ut~v`tkk#D1XYb8l06})o}}}S%H@-Lf9W44 zD7BA6Lwlu(ds^jnUGY5=m`U+7tCgmD6LBnf=kn1sj))~Xk#sp3L~EuO8gtPcpnX^V z8W6{Ci5;^m)r+)=$5~TW`Q-WU0@d@sUPToQmxua4D6{FW|3^-dsGW2v*vatSR z?D=1%DNSe}v=i6Ay-QM!TD~avFvd~J28@+U^}oWoL>Rf_FVPLuQaEi6=d4I$n%8w_ zCP5lxQ8pawPK>+Ex?g(!J^mvcUEhV$`Ve)=IZp#YDByYlN=e9Sep$mlx1+kffa9cdT?|9dttm$Q?=i#LQNlo!cW06KLx&;(1jEN#8&K3?jh!JnTgp& zNg?N3i$Og=Wkmh$_a0<(+L9Jw`hf$~fa1p-j=|JFtZH7yZZqow@glhMnD|0OS}_Ic z9%v|g!H9~qb@lHbY%nP>o6)Ah+AyPL#bQrw#n{34{rf0UXX0(Dc^DJW#a7hlxx`gt zwFa#`bx+z8M>w38iPD_n-C_~Y@v>pN#aD_m4kXB<7 z=kofrlm-~9t$3NVGs&sC)(T9h{D8b@@)&wHcKU3^q;kK$SaMbxC|Dcdv8Ki0YYy9L zF@=jY#|E*6fC7MSwPIHn#N7aQuO-+lBo@nS9M1jmN$k-O(zU~^mj}v3OpMgfQ!u(k zs+ka;l}+q@NUsZ2rEW9>9D{n`gThjhjQ01va#Z_KqBBfo*kcK7C324xx>w683i_Bd;&la z9ZM|wmxhvCdfm0x$1!sM?CozR9}?jyCi0`~yL7R1il8>hes; z#h+7*rnGJHfj6(m`BNLA2u^5KQM4k{IVddKuu zb}&o~6@L-0VYIrUa$mLiyMM+sE{tcfXGDal?DbeEIT)EeL$Pl1m;Ku|F2W{_(?ZVT zT|SVTp^sIqw<#OTL`CTsStRNr^VeqiMiuB45J39j(Jd|hz>}j;9iyQ)FLvfGJgsbk z`YuzK{_Z~>W5C^JMdFszA>2eUp4;{rmD@gVB!XOq+WKq()su*j&=o5`ser;&-%!kuA2tVG|c#VXJuj@e&rx9}A!GsAS+j>>brH0xK_G`JnyGUDii zpU&>d9juSu!~4TBcoc#9@ezxMT>n3)E3;on)FCe(7vhQ|^nwy9(^NSfxP*4`s6Of| zm|wOvk+Uf0O4W=wq2%yl8wTLka{eED`kTUh!ettIW1$1iULZ%j5ixhKtC&J8ampFP zHbpuY{S}X&;X;GDn5^xc?Wl37i%Q+2QsfgBq?gFJ5GW;ri zc8{(UO9E9hrf9~?OHHU(tGL7}K>Dz4ca_ ztVF4N%Q=NDtB+dzkmK69j7g*baaZ`EZ@R^p-<93 zhSc(_uU5iWe!r9r@bB+su5f9zW;ShA614ojLFKK6USs>p?CU)cSbe4v#$A#}0eQeD zKl@hR?X}@%;Tv~>`Tls%*sZ{wi)9HbjGPSpOLE)0X0r-htHZND_>0~};s7tup%-j* z=Qdy|4cj^e(8%uA{pdh=c7uCr#>Y87vx<6ramW*kY;^qVl>AdngrL-P6xl=Ff#~=h z9Lg-w)EeBgTqU1b5azAzm<}*CSC(C9^?SS5Ce=kMUW_i~TEua?uQ`z~U%z!3 zIv88zrsQqct)aEq;ikkrP&nk;6vMnrX?X-|v0j;HxE)E34a_-DXpn~{Jp+q_C=xzVQZ~G z^d9&%=QLXc7qyFWN{8J5yU!d6K|JP!D5xoehg<0;_V{DUSH-+%;~gQYPg-)t>}JcP+r z@GrV+5~B;n^t)AZ%R*{sJv4MJ?2d3F=3m;W;x2aiX8Rd!++4f`HMvpQPjsH<94FaZ zP2n5JB-5=l81B8`Z-rw`$O|1;q{_)L8D^G5a)(!AMMLb$%9o#ahvDr-(d3_KrIH~i zfeC{>x*X;*ZaPjvEoVv$(5Z@S$3DNx(k6XByzH2r)3e~S7VTb_W`HbZ7jXKLF>)gJZnL zQaQDh%a6Jb5+dBksOO|QVG6^tZkM$MQ5etu#9tjQbb1p-65;W@%vXCgshu#+y)->i zR-^W#7v#DEnw9u)^x_-%y_sLITHuV6serJwjRi@!i2~F-Uc+}GD1YLtZ zBAst5_R^YT+)Dv<5!Wuo?hjo$cVYAeOpCY7T6zu5iM*G>sG->qf!CyOBiaqts0ss%4iDrdgn@bzHd4 zXjBu_N-3&EgfDFk{Cnf)ys=mLaBfouh(tlx6X7B_dcwslt+8N{aN>*946CwsP|`A$V}3G?v9X9J8s*#UMNV6HxK#Ts(Di?+B2N!D

Efx5wDXKXkWeQUaz{Ue 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%0DU(qGcC}wc5;ELB5#xnKJLB6&A}r zq?T9d_o>|iZd#ZWIL1P4eHpsiY%7oUShcog8$`_P`Tc90CR0nd)tj?5Wruf~&WtH) z92;bfs3&Zu+D*kRC##wE_bE%OumBz9D=GQ7ceZMO4MKz4C$mY7cgyFY($2k`gDz+Ab1u8p%f{xAGTZBbctNZ3A3ry2V1 z3TyaIuJgJ#@TVQY#ywjcu>Y_m|EzmYu+~JbXbJZ`N`|oi8Fxndy5?7{Oy)?--+rL5 zNj34#;O%OE3*6X4E2JAl*Q^#G)_js<|^8YGJW8us9_LpxFTy}>X@=h{u9-qqX@do)3hXLhh zqD_e4qR4QOv>Y^A4l2!wdve!sM(%~`JVD8Nro9o*&Fiss` zx@C0zx`jTbBIp)V6M*uAVxicmEtKzU^IVsRgz?JDg2`{8d1uFnxHTIcq8UAqeSN4f zv`m!u252Np$Mr*?N~0!R@6d>z@ZXB~IP;}orRGA`HV>2#`9002+`R%-r86EBfjwq~ zd*ax;+0pF}y-k;2J+Jc*&A)zgQn-qID8Bsy^$*xBKK{21ZqWV?Hudl8$Npay|8I$& z|IFb3Gk?db*s3F|Bly|vvW18;MntGk*e-{()ugqqg3yRGR0uAQtb=?yHE9kGIDIJ_4}o4696u6_*`*g!AuF2Pn9mfRNG{0zF=}u(Or$ z5=QZlA(qNatjqne8C%nW^&=wv1jc}AnBN+eR-Fs?9B%G`5!ceyZag(c@?B(16^1#7 zd$(LzyBTCUb`Tunwyt1yiA@>NfpS=3aqMRuYtI2zn#4Y{4;>-t5mqg;PW^SK(zBZz zjJhTqNU+YDuIkpJb>4+?S{YDRcTR9_+;1UyE@Ny=2qorHh9Sm9M@%aL5QU&12OT;V zB7@l5??F~7!x)3-Xib?N8ACMvS6at}g2ZbP?(5vk!;W=@iPZNS(j!uD(miXhp@c6C zqzis4`D#Z~(=khEtEu+j15VS#9m&p&(a_Unm;xSn5%;&UJcJ(W^Yw4iUvdJcUf%Yj z0@gH}Z1(S;2x95E;!#OWg3=D_QO9(YS60n5iH%b?AkXb&2mMhfJe=k?L>N}J815Uh zuC!f_(h<4dToAkB{k;KrnBt4too>@C6v3YKnG}o|f$+ z5WvMgLnF$0n1N&ejD7U`Cjb4tb6UEKj>R-uYNVvBVt^^9TXR$MEOt%;?7g^r5gcIw zW8(x}iG#V%F>@<36l&qoUQ!2IE<7U7eSBQ%qJt1r9y^XJ=FTWtz$_}1ruexdc~AHe zqF6*_^8Z-ultK$7A;!$z1hxjHi?@gc9TluzplZXt!;lB+|D(V?a0|&J<#Yfq!8{Sj z&atP*FJjfUYw$)ZCj17QxOyA06WRR2*b$F?%b=Z?mDkY;enM*(df$!OAHTGpCBPxU z2N$_2O(H(-7V1Vv9IA+AX*_-)sIbgKDyMkNl}C7(K2JHfCgp)=K({ZxC={qB7CO%^ z5l_t1Kx0TG!bcD1nE@9UrU!@T=GYI%`F3&L-=Yk3^!Co+kjV1e^#j*7wdf6#HZ;L) z#hEl+abn@5NIRCaSMjN_JM`)=WCcngel9urES+$#?vMo8I1A?ShW?-L^B|2r^-2E} zXbpV-AG*o^It?TY?M!S;o&L+-(#+Ca>7VPX>HiYs)@VT*sI08;oz2LYC3TY|hY-S8 zuP0*)5g3Golp;ld3=wIAAmSzwVrEPaXF_7x?nKqNEp*O9sa8s0SG9tsl0Mt0YumQ8c>5y?{@iZAp3abD2E6=Q=DP3c&T_tPH~F0P^85}I%Ofn<*cK+UkojsG zh!-%S)KtTV26vc{hbK3>I3-0}imrvrn{6?dlpJiGz3^0Y5q!%YI7i1*61Whgc8-XoLo6mssARG=Xf|BNfFc!IlsHkJtJ^^|hhHsrW!jj6EiG`x z7B3@f~DG5 z+UBt6M6ynkYnrJD6L2zF;mVbDE-=LqQ}@oe$O#NzctcFB@K`xlk$x0d)fixTBu++@ z)+tyL`oI_uIeeDd;`kFw^g@(-X~CGxyh)hcaFx{LBH{)zSeWLwUDLwZ9Jk6{A^8V-xNs4qp^O35rC$Wu8Y%Gf#@aaW zv>=&{NmfGE79u>jCh(54VO4G+qGeGuTR;h}xtS9oQUtkFJE$~q)`26OZQktuAUc!B zG_x3H$xLwoEjKF_>M#&@UNWJTt3ve;+XXhHez{Gon0BFoBeczGvl&iQ7bhAFNl+CK zV?;9tin3n4?4KKuqqWe@&GLabOARKjGHAj_VlGigLLz>YNO0rGCNsWojESB$`b;;(OkkvFV5#ySO-P&L5kVv77tV4Y-E!=adE1uOU5Akd+{$!7|ET+B;L9tg1$2Tb zQKG3Dt{pP+1F4KZ3Bq0H(Q+S2a_;kge^REEorbvw3CnG*$SRmaRM34fx5=Omx?DD; z^#wO5I?wUQYRXj7cB+>AJ}NOKfeG)w6)&PMH-Q>h2c)@!6U{*8 zV;f7f|9qZbISC}D?VnJ$!3~rNp7Iqe1wX;&h;v|AqDCS-FZZ{(a0!5uRt61lt~d5n z7k0~u;jLaEat){8-fknYKQnb#7ZL{Fbd;lS(Yr1f@|3loL*OmxK5^hF>pqd-A%`52 zAG5Gc%{6iPYKzRlf*(eL3Hx05_lwRkCbIPXS$cc|azlr93qgcT2pae*#z@4te|7x; z{6^RcwS;jfP1SA%%|`xS&DI_KA z+5!QUrQ>EMB!2HHTe81!=kPtRh_hT3pYwrYpiSz21<&0rU>|V^iYz6=(^g9hBft{A z9~K7(tXR&H_g}oA^}?nwvu0V{mA{wyfvFB-OZ57Pmb;zTcU-hBtB%DKUilT=?7Mn` z{~#9kEUR5Lz}U;0>1ptZj;&uoetoE)Se`ULVku zbGy7gv`Im=G6G>H{p#0K$%&4x<8o}K2D%Zv?-^-%vZEiDNQiXqG%DO zN3%_L;Oj>~C&(>J!#2{5%m>;!pYWE;o zjc@=n20%HT;F3@L%EOKVZrXP#ZlJrMU+U2Lz`fbh7Gfm-OpH{93zeeJ7~)G2xHxaaluE$_$7b_h_AUCMo4E1ZPA-Un9Vfv8;tRh^H-$w5aG`S3)n=!{F{+ zUU#*`c7fNyh)J2GY)%0p5|s|!2FgVzo2Y>z*=$^JkDHAyv6+$sM9`a-&e5rR>|LqL24 zL8+09N|~y9^C7QW^@OdvahF4SOHc*@m=uxRIkB9yW%#sq_T**fd!y_ z20f&97-f1D%4NS7Mc@sJ3v^hW%zyW3m`!&8P(y*#TaCD8^QuQC53Z+r>cA9C0z{c& z^7uqBY{+Z7+@^X?rHj(R*~U7DslrMT=CVJ!LFgeyvkm)K&gDrSzc9`-wI|)KbruQa z!Wb{2fMZ6O5aji*NH*pg<4mmnv%=*Jlu?Xz2?ND|O=r4QfGMTO?b0hVUD4h_yWZVX zq5n-+-R067RL7DO-Z3=Y&N5_{V#Htgs5(fX?$S(_AwdD6Gq?tTb>CuMOP>@znSY!s z*Q@vPS>g9-D{!%gr9!p}kCXK+707<>Qw-2cgWA44%2)Mx_V&o2RV-bGCB|)O5vatu zGr~^XVS5RpcBDPx&fP%9&WzB3s60+ zf6ATflRoSHPW@e}E{Pj>8bZ;Z8Br+$)D%vEz8XpM8bR}!Ks-su6U!jC8_$t|rMs}v zONzlvWLY_WQb+h}hjg;@=W%U>ph?J4G2Df>;4!#Jz9XJFVk$x;!v6A$7V!7Q<2%IVzeUP+G91c5w>rFKL{tDQgY7#d>` z<=X&rN-K02daGfHthkjd&9>+q(}WQrK1~?Y3WsLeBcwb{oRM9)8J$W@!6anmU>2?t zbtzX2tfIF}cRijLS9P=3FnC+aau|{_bTg$Vx z({x9au_W}cjtSRV3QA|G=mLoYo$*p3GquxF8-tp+#GlY3MnX*lb!hA5>>W6js-oNj z(-_jyn&DBjoSO{Y27WG80+uqYjWkRWMhg+`Y78Ns)8HAHdT1-<*s7T}2I2o~EUo7Y z3qo{6@!1wg07c0V05jP}iq&v`0UC=255;aXneV5e`3>(c2bw@UIk{z)nTfe!?hAPe z`)ekDgMC;bFeC5G;w5bs4D#=2lI5R@B;^cKvgK#`oR$K6!j1IrRv!+&H6O%C_Nk3D zPay-*7#O)4_1$sO_KNxyK+xj2Tb+C}NQ#k&Cu*d2PdEKzQ=~S7! zXA$HjUqX4t5yMOJKRH(JQvmq|vG$K@n>i-H&Lj2_k6?d;PmZWEl?8j`{CS`if#E~`W14-DD-H!^afqD_>ykEIoBlDshB_RguY_oIs5do zY=^&dP5Fv>+<;pUv6KyE`GM_Gaf~SYlch?uz>z<FioB(6Z}WoBSPHd91ZZkdMU-9E65bH@kwMh_0{APKi`g*)t627 z>2;2y4Nq%%N#i5FYU^l&7}0vlArlwVcov>}3e z@y3hYbY|p7tF|mK_gHTQxatc-jc)W~RIL$0yD|WkrjeZ~==Ov9t7Z8^W32r}wHcby zvI`k!eQchXygKnW>%!;}LyI8i+9u_fbCO#Kn+-*GT^gO&GDC=7cTpHnv5`<8kqnu2 z-yIXB8|P9pv20o~jY(WE)3}i9z@B)vt+`X`UM{P@?j#=VE@v&jtuJ27XWpbdeKQ@u zP@4TM`mkrYqsT}L{-*rAu-0zT`g-whGoJ@yRkh2&v;Cfh=|6_3*Of!-fh}Hq&Cb|U)x0&{)VQr zFrJTiF8h8-xb12FW@_dh^|Wc!uF7q_vdLye&b!50OSYB$Gx8Eg+qIT_ExAd)Yc2a` zqNZ|zw{}OxrpnFpxrmq7<;-sKa<#Ta{p{fTFWzQb_RD(ZV{Cez>Y4Y$Ey+&R>-_gi z+NF=SYhcahjbl}uFUw$+_crg7toy}I$t}%(uH9e0XK)uZj|cDbLaeqm-Q{8nv#rX< z&I@CYTWRn7z*q65UFrKDjm@rVf1w^@WlBKZyl!5WQ3NY~{cG7t@}%YM8R`PCu5!b2 zU5^{7K>3?8B*k3yHcChDiwi7o_A7j=+}hCr9ju_9Tu)3tdUMg;EQeE zzgFh#w30}JazD~SJ4G)v!lFevKJu$}T;bMGJaN1%GB7L4$I07jrVAAK!JxO+k zU0s;hmeAV+?M}oxW7igLx)a?TnSCRPUBLClz2Ce(nD(UHAM`q-Zw0%uU+w`r)B9vU z-#tI59RYq$7P8J0 zR%LoN$1dt$G`(cHBJtMj3dvizFDP&DytKCD=PdO9n74>uaBn)hsCb9wE&0jrt>_h_ zH@97g-t0BYa?9~A%PmM#6?`K@-sxeD^&PEE#D4GoBdVzNpN9MessOY!XYC1^JKn>N zc}x-|zsR&g6Z&$0DSQ)r___50Zic1CXvRLJ{Ylz*s!YQ>tG(ckScS{8V2G=I3Y+_cJhM}GUYz-brp&iso~ zMWvg?-}UzoN=mipf3bb(7z<76#jg0(Ryz`<pzv_qVv*&8(d0!Rx zSD|}6D+?Yc*Z@!g!n>xbiw&WQ@Qd5kFZe}``9dN%Q0;HrD9#<%I$1qA8>M6POoj z{aL2er{04GTWT>a`UE@geLuJuoJ7_A!8L=1@quQvURHd_8c^6p@cR-IvuzeSKHmvQ zim=0YTeHJDZONubIwjFT#jQ!?xte&W0y%i}ZY1HC>Dwy0c9p2~TO-gpTF(p}|4EL@ zqOo5^UXeT2iuk zI{tiO$vF`H2=I&g(HCm-4@&>iF(gM9*o8qwX{|Ki}}E5JF)B)0(TjFMB#i;0AHT=Y$4 zpTMWa+AXmxxE9%C6)y*Y!tKogOq2s`Wx}eqEvJZjZRkmNwz^&_V46+FcOOyIQe7Ad z-C0&JPR}c{(}LjfOgY8cQB`x#wEAbk2=5)hYK@bjVj(k`C_GA1cQj!MUXYwQ|AJ%C zgHu@`suL5k67ezMu?HZFC4ba|%0v$olWxv^X9V<(ov^A^v(zm#$r^2+s z66jnJ<660I$dVimeC%xrholA@Ul3|Rf9RtX(@=_GJ^U#ZlN;agY+=6-)S0m30*S5! zjjl+2+G4z0iXm;V3pd?`6nRU9S0m?#?8Xx4#46h)IL6A+rf=!iJlm#)o>V&t%bira zK(2U!HAPp;nAj9er#?~q!b2Z@#1=SSb9GNUP;j9{*9F4t_yh!WCMO zx?-OOrJj-atoM7U#J7ycq9HS=J*2SZv%{2Wo* z2N+K675Bu4w=#63=sDg+m6$Fa$x@R+UZA1}Se(%uuHzwN%Qe^w+rv{c>K8)IhT?2W zKUeLj!AD=F3hJ+hO01q8m(Oa&PRn+N^0@7HG@=u|XUWThA0Pf^TxlJ&5{5~I<*W0D zq_G?(4@lBFM`-=(`l!@sn63_5j7IX5v?Nj8Fd__)PT+?uPlQk2!XTw6Zzo2-akba-S2ad<2v^ zvGGz;R%RB=xI=$x;rMoAuCyns_T+#->w>DFtbw5+-6BIRz*EjtE{WX zEKp1kVI8CKV}Wg2e5FV-dc#cZE!2z>pP|xSnB56H+4{n)9i>JG z`bQc*i2_%DeEsvZ z>=6>6LST@+jvr2>)F4bP#Pe38{G1ILRaUB~$frYGQn1Jw?4Xdyq|47ELS2b1UtY8u ztHB8tR#=fSF?;cDo@DBcjB;Y>B)8!nDtY*a=QsBU3%QYXA5~<%O__PZBZY_mOGlxw3gGxmi<4Mypq1nFY1%qK?no zpUXh)Tc9KAMT`zwF}vtQZ0%R7vtPhlyy~3=UmsnpXnB5)fDzRQBK3UDu5sh2P_~CB zZ48m$_=ZqLA${zc*oMEz%!|J=mo_jT>;XTq<|Xubm8G6kUMw9-Y(?W7=lco| zW;1F6P{DV8`iy(a!k;hwmT(dG{U5itC-f|vr}1g0e19Ke!Q%88Mtd&o;L7>Dr*@8= z?1jXhVq5it2CTZq{^mKt^Tv#AyeLh2(owJ_D6O+(DvcPKc;>s?2W=dkiREfH>dZHgMX}f+r#w< zxjh{7py!|ce1nAEw<+FgR#M%t5p$zK-5$SLU#M%o9|wHasgs>28)TaD$Yz72#U@x$ zy>t>C%Bx)?tJ>~B$5`&}KKtH83H>1jT1nF8m-KXUb_Ck017GZjUr`knR2=APo}PHU zjLSJHDGcDU)8QGf|EgBDv+pET2mzemQnKT8WS1Q-p0w|@Xgk&|_Vj0$?D_Rme((*I z#VI;uND=+CPzoLM%Ye54qWE|-OcBNFT64_swpngoilcfyi9)H*AY#bM5AE^?*SMyD zyY+Tq>l2WE6V)2q6PJ7dvOU4445bT*xl(Y80K%c*E+hPB!J8nPjf%HfeK&6w0xnRV zxvA1@L#2SBSuI=obiDp)w!kQ_q9WINTr*GAQFc#VEpgGqR=ie`x*?}T=OwUV4~Cn+ zShWZ9Cq9!MlU4ZYc_Bp)AHQI2tguJLKt*3&U{gDa^|E6KhV@LSw=M53%a!HwHSw>E?crtY>V-!1y(47y05y@1>oaH3T+Z0bzW0{c z)&4!Wg#{t00}lG)gH1TrUVfCltd^ZqxR@Xx4s6~HVgF%NF8!k_M3r4MZxYn$$XDg$ zH2{J&^5qL`XF~98jy2^kiR_$1ddguN7Ev*if-cJ^0a$ChjOf2&6%c&@a(85SFFXo z^-nV!qymd_{5=qq!N&?Na$1yv(VguG9GNp2<4NmX&U!-_>3M_6P-jN0+w=!*GXFz1##p@4e%F9GD zCQ@@u&U8NA?!BF!eSi5rQU`E%GzTIc?{MIWF^Z`#A-cIOZA^a`WVRXi_5akgSib3{ zS%WbC5HLI0!db^a(qva1RI%lj0?qwUU?QSEw)Qp^*2YpJRir4X)G4~tnXc&EDq5`N9UO~%&X@B zNl&X!4lGGliO_Xxx zW92%PM@S35r(C*xym_ zDYx5Nszz*`O_$7Q+?QS8w&m$dep+&S(#RS*E?A&l!q(p*UWrSVskCEW1eY8WM!nJz zbm97XC_&Q7`lG@b?3+MA`*x_j*S(<7BSB+HuVMpjlxV7WY7|}Xi1$I~p_2BSG(gdJ zx{n1PKeoiFM3V&xr19W@1ziV37vvDx!h5_9mr{8}UT~S?4Aj=y@Q#;kZ*vWFYm5W^ z5inJ)evn~7a|mV7vJjZxLaNiUBCTQeg`=(R@Qw0k1n(%jqBr!adz3`lY1eSH|CnZ) zMS7k*X30G7j2_L-FX0K<4vbylG^vU$I;wl8na93xaMAFZ)kXsjnCH=UQ2b_K@PBI> z)-Q^{M)xlSBmNIUkm-NX!pe&FNP-AItvEUTstKD`H7#ltK&3icZ()pL%cn>dSBcY&3cV(&dht$uQPvV{@CO50eJ+}u$U#( z8*)kzjnr3%xWNl^#%zmCSx?4wJq|LT&Pt%QVJdkM6d#fSW-BMSDnBO$voOJ2Fuq0) zDa5>DWTXcMYhtJ49w(S<^BU-Zf6q;&>|pn_#P7z8^4iWLi!O9)km(HjHb8M3aklK7mBXsa)H^TF ztEj~nQF_)Ef)C0IW}<>=>R#JA@~vo3J6)s9EpA1mn7JqrPEQzAt_#vAIih@E^}!P* zYHS!#=!ww5rqi9!XNovk!`UulbhLmofAD0c2Do7f8x^Jww>D^(TO~v~28T+0R<57y zc7^Iv+VP0L-oogTxJ5A>;5!1_K-B3+Y>vtRNEq3-AXX`5Sq3gIW=}Au9d)W_vo@)85UV&-e2Vv7gt*j3G1y zc1jRy2}WAV!k#~AXx+N`tL)liYtGl$F21B|grNqU$&DRiJtv?#yAmD8B*AnX=e}R{ zuw~cKzz+@1%tps0K|IjVR47%PxJFns=e0EH15mhU*=Hoa9o=E&)u&WcU*vhu^-T+h z41aWerQ2J9zO9MEXm!*S+&RNsBd32V0r#QT0wzL?L4&k!+ss2TYyJM0O4>?0wq9K3 zy-ekB1o@xZQHgzZF}10ncSV5oBeQ4Qg8KC$*QkbYJKPm zxFTS({ocp2Y-ukviPB}kh3I}Ur@D~-l}Q)6@y2qF<36OcjIK~}&ckV6ZSGxA5e3t_UHY5G>*A?&5(Ks(c*%r$gFqMWTPD3(tI#-IldH6gZcd=1JIFKT_1 zNA!u$+0N6I+;4&?)xgCuX>_=NJDUb=x*Di?2@40YhOgFtpGNCLDuIwneHGA8E=S(8g(^a@B zGELTR9M365SBKXzkJi_M&3vQ31`hT(bSskwtrJ}!J*?WoD}q~sopiVP)Ryb-9QS$u zyWE7n+6WBEfPmt4fq;nr_XqYr#a5yV?Xx`c{~hM5mDd5Kvh#+_;!y-qH464V-5X zeG2Sa_K^;*@ObtG;ydXQ5}uh!DsFtpyn@?B^ebq}L-+oww?h{!oTI5If)uDT`H`@I zh|@e~h3=ny2Skn4<+atfHPu-?^{J7L9A7XKc?&WWm{4Sx3-9mk1?;Bm0(=r9EWF4)xZu^=o7p1nQ?zRi zkwK~J)RpT?%c`PUi0BJqgOPiq%wuL0KE>GhrJemvL+0!}q1-=5xhCY%D*QpcDkg>d z&qL(Vr_Wm)el9Nk7CjkIl30$#!8GZ?j-CdMClI^F{H1tm}=Z0FHn){8hz}@b#c>RPf{42%1(j+&Z|qO?s8BB+lYrn?FFxZQ8|<>rw@8?2S8=VSx!P2f`Y}hQ3xt_CP&mu~ z@|y6Q(Il>>rr}$6aO4(t!?3K`n>40IrVi!K+M?)IpJtz>J)47C*fR3vI`q%gYNM;PRk9mHB9 zP}G#I`OH72CC^{Pl3LQOE7>RH$(OO8OJZJbA92+XU%ZHR87eQ{4}4A=5)HQB9-5e^Pd(42qG;riohY{lh5 z(C|CU=Z?Rilqa~pJZW$y?gMpoJ}c+NeKQO0BxD(pU*auJQ(7Cxa_cBzv^YCnYA^Br z+$}|hAd1|WL}YCEN+Yv0unIyq{0-JECiKnVuja4Lo{|RN`#JqYT38Y%+nPTBu${0z z?Aw4~#C=j0JN~YCHl3b*2$)e-vYtdqpMMnW*JxX1MRr6g+@+;a>{}0(F(>b%2Z>p8 zb!S6FABKHcig@V*-M!6m+4q#-x_#VHylA@9W0j>9^Cg)t*}S6nb?r#G1zGC7Q1O(B0EAOhPut~uU{$o+RJiFrW)5W_#= zeE@gj=&>^0@)ATSNCARc6>(CXbun22f&&vCkuy}$m2PUzP#3`id1u0X7%*8fd9NFA zVxb^fGu=89?;+}qBuof6SAV}q1gI0zpSc~LCAyqRvSE*0_lA@nO$px9tQc{w;eO)? za!u>g@zf8VK{k^sY1nR~&xpe+fG*1phpPMqKn{JM7$uC@3>WlkKXWz~0fhbI2;g97 zG{)yAOB;2CQh$IwnaoA}k3dn0GB$9>g@n`Y#4PKbP=<7+>JYZEKR7gZiB+ z4vfhx4>@cVRU20lwS1~4ntGBCX#v*lHSSWT8x4Wo9$Um%{W*6trb6KiGPgnvty{tT zI}>6au@l9rWA)!CM~Eq<*q#h_$JSwPt~9Kx+ZLsR#AZ@s-~>CVkQS8FLl8R()pFkM zuA64~1ZabvVF=ywy9P;-^bMQ!Lve25gNSabSd7^P_(vJt zAX5zdzd6n6Np|W~Gwd!!3I{x7+b&3y)P=h#J}CDHqP)@v-f)%?R^pjHNPw0sBG2pm zVWdkoaCQL)$f+mO2z;s4*_rdJtJddn30hj&3=TJ)%(MoT0|<3@_b->vULn>l3qG|2 z33FBp`Vm!qKc?y}O@v$qC)C^lY+o0bL7!@v-|`x~=G-&<6B-Bh*dl`D3h%dztu!rsmIC!A@*L;M-4QfZidWLSJ81!RKJjUNuszCPBeh6?g zqizNz=R-X5KJzk?s**E66S9?^Iym1VzD5Sr$$XN2LmN5L*hpp|A2UVy;M;xIBZ$~3 zBvOg^;O{cs&Y|p@MhObQ$Ntl^Y3_uRTq%dLAf4I5vb403_YM_v1r}7teNA+s>_&kr zWJ7h{{{GAgAe8!ypYc`LR4d|-t}Ajzp3%nD#VoX&SUS^8$ITcWLlHCr@quV!L%V}` z4JrK280P<^5PS}OVCrMcmIwMFzH|8uVzviD@yIjmfO=6oCnp41Cx}?mP9TY9EpIbihsk)UV!!`!0vsneU^l z2gT3$)Rc!%UMK4D*VY`yp&%5kx1fXcRQ9?j{e8n95HK7OseL3sFfo5t}#NXf=ie>ER=_1R_xCw87SxiPE`K#l8yVPJ|o%2Gnma-{qTCA0;1IOOjQ}6k~ zTTs06Q6wLJTZ4{Jx@lJHqg}ctkUjM~^NZIu_B0B3@NIjG_Kb#Egh;01Lt~^cT%vJ3 zNI|t)Se&akTtcB{a(vA4ABkxR1lmhdKxqw8sEiYo19;jFj9agpk1_>9iZNG}fuG73 z#)w1x>ys2U0&3CYXq)lWpnVzr>fd~-OHp#lco~>DwBzc;uNIkmpKnDAP3jV?m=7(} z!{Tz&gpQW+a@al!luzewG}Ko!zbBSGc-k!)1FSn_WxR}WMbXc~8Kk6lA+7{u0&;P7 z(&;6r41WoYk_CMFk!G&W{I?A;PQ6I%Pvxoy9zRKtZreZ&(h)iV=efe)ivm-)cPIS> z%#x8EK8DHStd&c|qRS-7BWm^%l3^YucJ+TeE(T}E2i;g#I$o|+*4{V%v@&hN7MGjQ zCY&O!rE@CN7ng)u5)o!jYFFg4E@wbLc|>?OgxdycM(@$-NDD;c;FM_6P|;u2)%vWz zX@(U;nRxf$N92`SE6Xe6(Q?6(DSIyxK(bUI0Ngy1W}TGr=ClwY9Uepi%#D+35c+t8 zBT+}Jd#qeXkLjvbidLl>I5;LB=^K;;s8=H}@b70XZd=9v%>sKw4t=4!-%7Zo6~z+F z0MnS%X3}FBofcVW!pMtB>}O0|9ZkJLCcK2M5eUNGxCw!Hl$PBezl-K#Fk@S4V)^P&ftYI0=FC>-@KWRM7vWS#h(*m~DQ<6;Da{+-5OTrZQ=HRObaEHv26dy$epRa+5-uJ^qmzTK2#W5o1 z`{w6GQ+O{!mij$2%B~Fen{VWEG(ce-GK`1R$ginRVwWjKftEs!EyBv&>yCIM9ht~N zGlQf07&Nn;TK4yly`5NN^r~50lPEu4@=%iOjlJ)q9)z1mvzLN6*81-TsA%eA?=GXC zp=Z-IBw6cq?98#}6X+VPsy0}`?=Wc>UY}w*n;J(Nml!Rq1PEa5PgFZk zRm?tZlr^3k?_CxZi^hwu{T7~)goZ)^1FVeMI}nkenKq0c_S5RXW?Ewl1S=nS6jr+G z;NJ$|qu!*C4`H|>7e$1rF1XAdj!X1wcan%Wi*<`TSdiRDbH;9N0S4T+#ZJOIhqAE0QPOTF#6p!hc1A8%@h565Z09us!8v3nI1h!*#-&(A2SO%cI#h8M zWWLgoG^AoOelddoHm}t;AM%?s)p4?Jew%Tmjta7C8c(QU;5p-uNb}Y5az)uY${p6d zO5)t6G1+Z7ue2=7an#i23ilP6R4DDAOb)j;j+7iXCgw)x_M88-DCY~vr6JLnWG3B5 zZPAV8LA~gvf&Mlr-rk__Gbj}Flg2XhU{B)<2cIs(h?or@AX|Oga;eBbI-6(Gcggb6 z++F&2S_(#JyN-xcbEB41bJw3$fI}fcjF-9O!w|3YYJCpkY+mO3OYsgmD_XNR*zxzD$w!pTf5EQr_Y+oIYPS}l zpB2hN;*2(j(Cg)od(Pz!6uRh;pgBiNI12US#l^JR!Kv4U&1T)dMw621OEP>akV<+! z##-fKu7osCjkIRW9a_cCk;Kzia?)$U{swWY*GeL&L;P%uoew`)$+GeySt~_huj=sE z=mz|iS=>+9c(8&y;f8dZ(yg&k@@DP77We55Zo!)_H<07htFm5U9|HPg?HA9AZ@6r29H@m|JlPeakizIL(}Us~6(Oojx_zEXqSZhy~kW%c18xm2vnIk)}G@KngcMY+Xh|L>=hPfMSiu30HZ_JoEbF3N45>l z4^KK);z{I4ID|BMHjwC7KiURB>lihTHK3Q?&M_05s;5ts{2|zad3Y_0^}}%1G4WYE z&b_axKR^b5JALc|gP6au1-UE`rw$`#!jMQ3it``Z$3i*sNf){z5QgQ(?si10CN-)J zqn-y0UXn3qLo8V-Sq#1@f~F1OwL_dlMnxP5&2+zpw1d6Qwa8#wcHK6_U?6WnA*|TU z0>-uWz2KnsD?6QOs$)f11@)9Hk1dE`{(eS_?W_9QM-Kk^%*G3Oc=J+1W1#k1Kd?eG zUAh5@SCrgZ5rwATlhTAjuMg+af>VjO)S6HCcZrQq5ou{pmI+qTg~*_o4Oxaf=k_nn zY=gaj8*nUg6i1a^EHIxTwFk=VCu*VcPl@bYK4f!q;(h_ABWl!GN2yyHzEnmw5Fb_` zI-q<8e9F9zlL`DG%WcE2jT)TErP?A0=^|_V*qv1+z-i)K(&?HL{|;ZPs&! z4r*UrjI&1VX`Xku8`k(!Vwod17Yp{eIOwOx=vv5sW}AOX-RfG4$(imNtD2R&aj+=~ z>!Zr61XZLS?3v+&CK1Xo!K8rfAm|uA^o1x@nVSA4FXZvg6P-p>G#J*(wrjgGgC%7*ZUI zsq}UV{Z9Z``_C`H6DQk#G1r_%nF6;!N;lFQnt^B%rzrTT`RS-2u z$EKcjc!-({R$Vy=FYL19)3%`-TdEzgJ$pbt6@8@gmOaCV3$sfAY&jz1Rn3w5_gQ*n%+V$99)0k8 zB>t^N@C;Kb3?V5W{4bo*YkxmSD-E<>x?bF^h^GoYNPT*Di(TlB=FuNAQ$41>^=*T- zpPGx6k!xeUAN>{nk?VxcUX7J7w63v>cV9J1J7Fd-R~mv-QNQ<|7^YnS-xOjqR#rRcgBS>L-dGSS%d&vcKWq=>m0eeI(hHWa(v&S4!xk+$ zl6N@A+RK5xBt^Q)8BXoviNmu$Yxsh01-JcD5{Kr5Pg&*O7>~cRL=JRr_o& z)bz2!nPOPZaX|luEz7pRw|CfDw4=O)xtC4ue&~G`kF$pIh zU;^nrrEJwT@S>@X&H64Q%kE9$iEYi{tOI}#6*SNudn7==EdB*P9m*j=)HBOC)I%C} zN7lb*GO$NxDAsE{g0$Qx9ZNi#6*Nh%WX9a4zm@1u%~uS>?|7mcTa_Ii^DlDbEXjgK7$8;Yi=ew}Q;QDQ9#=!)*lJBOry2E}F=x!zzJbSBO2- z!guP7_Bl)N=Xj`Zz~;{bn0lF3H2@Vc9P+Rl0Y_%@KofSGP6eB+NH(1|VYAL^i<4Te zqOgXlmPy`--b%vAo6C0q$9fRA0mazh- z;`E}FVO(H0;9oU9@J*9?fL7T6qi1FDA&ya1<>t1hS4#f|{+3tlB~SP*x$yGRTq_uF z{t4AmpGJ4&fmU}NR?_S{Ml8Y#qZtN(GWi#f2!+E94Kq>~E=&m*HZ&q?3h5>4s(s~= zdF67x_NY!pEIYmqIpj30KW<1mkQbCbm}`OqJ$gf<&NpW*6Pv+=OV)`poMSPQW&wd4 z_%jnL{Xna-Wur-keSBcFijq60y##%L41@9XJPmv*Fg{!`YzZ;o1Cz&L zB;c?S&+)9*m9Kh3b3Ez3mjQJW+6kK-XFK4+G32;ZnS>vKjoKuOHg`i}A_{63^AAyF zP8{LzA_)#^@h0m*P7b)ZkjF%UD9O&Ovqm&@0{={aofa@TBdxUVu_Tp{52MKL;D>1| z$(h8zU(SP5_GP$Rjt1 z-8^MJ$d?UH>&Q_(%5B>6_@|!@e!;j{+$NP~yZEsdq%>So&6))`7A-EKrWt~Eyz*AY ztUToca(3|w2bA+B4CS3Y-Us{Vm-7-cgG{uuu2Z^pX_Vyx96{>bMkDKXeidNj z${NPf;UzRK7L`8qx%DHiq$FoN+qNmES3h*aG%h(nC|UviN`|ql+9j77pRBN<0ud%T zDEA7+xS3-IetcA7fGr7;MKRFeXzz%~s>O0xP@?*C*;8|UT|$|YMH_%Ms!hbb zqA3HTEm>!$5JNk@Z@wsnr=uxTRwK!-+CB5eJ_N5Z^VTfw&DG*^t@6OO)LGdz+5&aM zr9b90vFpIE)m5N+Fi*<}f4_0QE%Njh)@`s`ov#iq05=xBOVyGEp3k_=GeFrs=Yr>D zhzV4G^t>H$6uaJrLH0+S7Kd5`Zm$HFhQmcN){hy@z2?|x&C9|8!i`ps1vHbuj zwt~OrJ{1yn3~hD@AhVR2Cc1pws<4e@mudI8tnJDHSHl!795{xSMYbjvbmCklHd+ih z#rY4c2R_$!lXx=9^97!QDqK~n_~IZPbowYAyZNAz@y-A_Dyuk~v6vD;$VS)xYK}46 z{v7LF6m!TZhmul`L2{pXv>Vbe){zhEr93QmEF+tYLm2W2RwProRTLMWgd+KrUc8on zMrXCxOq1u#TK8)DrD~3BJf-?6`mt8`39@MB8s7}9aI5D`o2MJC{x-9IRk(&n^x8y- z*5+{Xg|GNmYj{OO_cO1Qep5ET7k??D{x(M4mz@5gq@^E;4v;6lR^;Wx^{&wBfdtiX zmLbuO-2MkWn)9~A{s+Edh{q6GcUZL)=JenP)ol+U#vW)r5@E2!mPo{5kt2!#1o9S) z#Q{eMkn7XBC$JO;o{a02huRTFYyMW=vj``=>~Es6ph*E$tn% zFR8$gUxnUW7*X6H4Epl%AUzUFT|9i!k<6@y-CH|W=Wx|>s${5G+Y_p!$|hmO4E)Ri z-yJ25*^u-B+#QYz!BgQgW8;23cDNcoWe3fn z!3>=+qD}4f9K{d)hHB~p!y%$iaRT~~`ubOz47MV9YxqlfGBoTk{qlo(qa5sr`JF&Y zqw3MPzLpURCK5$Ru#EDYLJ42%5*Ikkw`f$jW;@|Ku{pj!%{cR!pby~_AlAQ1`W6SNao>##a9LnJAt*oOx>fPQc0m^|*M%gONJaHb_17=rBag=sm6#kkQ&1t(NiSxD~#!d4z3B4h45N#2%vJDN(?)Wi0GC*vAFd#L_6%Eo(0 zSmdDtY)(|uNTh}lSkRP_Lxx3EMLR|NaLf?17{}@$jbIX0aJdfVnaeY9QTuog(R99q zOU2hFkADt5nVyA#|GxfaTJ`7uFk~{j%bp|jSN`r(JE1bEhnz=xc)ss|uwXIRU^tyV zI>xi;$~O4JXo1+1DP%%XsyVB5;_Pb&YwFGtPoqP$yAGO>16Q0mDklwWS_^%YcVNIF zgh6rBY}G3Ct?;>NKgB2q!ICt({13A8hMD3WMm$ayWJ%(WCxlKO!HjdOeH6rekpwgS zzeOgKNBS-Oruz~OK5`0u#qT&8>NgA<#Ub)4FtO2<8j8ao^%P~5Bvh;ESYTL-jL}!J zmG)!uK0L$Gksbz+V8ix4Q>zXlRGhd zkv(T{Vt$PHsebdzZx`{Zodcz?sGd`xlRlOO`(*?vTu$@W(wQ#@lr{?#Q}m)|E(a~h zjaZf%vn6HNFich(Vz6ektrp4|^CHEetN>?g0v_0q!^Tj;Xv2q6m_+a(O@{9r+cm}U za`W4>%F3GCvrL^hrS~naDY%103B}}`xv0&ZE0se@liDv4!>DsvR!#^kpE!-bs7IZ& zKQF-DnReY;KT4Usc0KZR~h75RL4S}7+jyPV!HnuqLe@vy<~ZHP94l# z8^$zB4o$lIZ=2ajwHRYGgDkp93d^DlX_Si|?)&9|W3XHfW7Mk$X2^~)deYQLSIUG@ zhB*3;KbToS8p~eCNOd$=DMK5pkH|<@WU!qrglW{qi0fU;XzIy_Q{+a#13({}*RlnE zgU;&^6A1K+`bQKz_DvG-Mlulsve(-86ALN6wfu0PnFa7*TLxriKV(1D# zjjJ(2hV3K_< zY^5>=(=o2o{cz-)Z$GdBtZ`z0ul{#&&e#=s%pXWeCEsSuQpFK|P=^zhX|kA@NYW+R{05=FhV7Q3@W@pOWuEwB zMe)MS%?~ju5%cte>y})=`1>??z|bf!EK+>G1^=6#R5sRSq50434fUVd8}_8xlR;_q{A`{A!$^~y({pPFA z=ln>{S8{1|B;^q`)c_{G+i_68Ktd6<$XvZQDR8hUX!vhES@j%CE3&Q?)7B>Mr;lz zSLxT-u0a`%11W#nvy=5`GSN9ZCynyd`l^ePNjuS(h`nH|tnWHFyNvxmT*_x^x1eKj z>x1=W)a0VNXPx^>;T=VAAFT9Z+||;Vc6gf&CNq9?lG1?YqrL=rfmppWm0Q#?`$tyW zk32gvEEKh&HQPDNR(qzaNgq%S6yhU-*q-&Vd3pU|b(Gd}9EN|U+n=UfHWEjI;a@PJ zTr5}=mGFZWXC#4BsqK^lA5dFPRo3L?D{=DEd|RFjm}Sob#d}O+$cmW7s|5|Z)v@8aLl}u#)m;(MH@toh8hj0|Dk^-|#%Q90|N^`l# z>B%O^P^lQf4rusgCle1=u`cuFgA3e4{h|3@*t0|oj%Z4Si(>k;peq}2Gc@hP^IaTs z8X%h(=uzV>>Ok5D`5Wlj;DK@&@|*2gTNPN>a$<`*uC7KiFl)&lqefky)mRW&L1kn2 z%NJ%%*06$(6D>3FR4>lo%ijJ<8QkC;R+p)V8SX8nuTirg zWAJZ6IRZW1wqUh?TK6&N_Ps*GfZqvG4co&t72-ZAfD`eR7vaz1y5;UU7h&$}C^DuA zJV8_Oy+Fx7Fzz%8_R+O@p&?#j&9vJ>XQik2XppS&_rGi{bI9x%bjfcmcoK3E8|wyA z7g#YTY6zX&v3W1CEUzx5))MS&2~4OKof`xf+M@GtyF9osf|gCDxY%E0tliLxHN`Wu zM-1oT6xAE+WE zCi}v`BYq2e1vC9XE#;1}C;nx_Uvo-o=JFaIyx*h!@9Vi^7eyC^0|Yc6`TucK{(toR z|6I@ia0q*JpncF*zJ9(avZl>hq2rOrviI30D8LkjQN*NyP~}NbpaLW5CNk-4-4CxJ zhMUyI?QC=|7Xn)eY6@$&u1yINRDpP8Jh=w5JCr35Gxx;>bN*?RtRVZ}7|GnH#{Oeq9+dJLPHW(yx$ z1quZhL6S;xVb*PUMttbTKMe!ST3z%ANY|#wU2r|~RQ?~f zunJ2etV_g^!vagPS+-s~)6QwICsxZ`MZvs^!pXZz9XoZvB-wt zcNmol7ep_sMb}JWSxagaW=m`LetBm=+q1fCs!|Xj2BZ^j5KC#nYqK>-tF*iFqE9AYD z3)LA{7tj_xg`u>QL(Mr^#X}fAjNHUtCUVWTnAg55PaFuy6(XTJ!P>-z`mn@zyJ+6Y zhhH9HJA8eH2m`}KcI4`+^tR1w_vbio{*w=TPEuN-<>SUylcu9fl$)xk;3&^EKeepO zj^S*B@XMh<)^)>LQD{9gr=?9!4e>9M1RWX_D|W&j1MYz2_HvQRe7-EW;p`a@!ai2d zKrpCqk$@6B$PUVy6jP}KEG91;462ACL45|!l4(+5PXiBcr73f{v8pOmphNR9MrNZh z-V_gNgJSWT^I$p$A~`YzJ>xSq-FXJwK0g?xTj)L=3HLYYo``86*7;B>K9gdY%}#TtB7A_8v>;z4x^_WSvuP$ z^N{DFQq)WXYC#SCt%_X9>oqK*Wn9O<50YP4Yp_{WkIyo6&W0d<2NMKS8&A1O87aMf zax*qXRe878iji~9=bI$ktQX@h}@)fk6A3IZG4dHovQq>aq5)2X`{?piwXrw() zt~z!+a|ppt>;Quj@EU74Evc{=50DNDJqL2m7Uh$_FqW7AR3JhQ8B?g8$KosWG@NX* z?mHGGzDD;t54Y!BReD^h+^>3F9K6fIf6zvJ8QBR6|lEuYux#E#QNpEBGpJUn_a&oeT$bXsz{j8OfP0VQA5`mp?DP?5Yh3L6yE z4Q42doNwWu>to_UL7+e}mf``Vn>GV(4IQYI`_%Qak$txf$xzlY5IAyO0B%)ry@1{M z^DKzpQN4dtXCx{S z*=#t56G*%hd<&Np;NLT*8KmnZ_B#V|2`W;3iEBTmqM7nUCJ62q>y+x>d>&c8B+7Pi z9(mt?YcE(z*j3yVCWsM{wcIW@i&QfrU4oqpVcrGL-0UdRSdIep%={Q_In3J==Zk)TvmuWq~+V1|^X* z@FBv0drU`cYLfk#23DF?3W^m@J`$Hjhb1HX3#fFSwQU*2jnX{i%i)JOWu;kNyrSOg zVnn)u(zjQ?%rXmE+Y?D8U@Z)#RPV4vmCk|>is}G^LIF=XlBsHhdcOB0GH_KAQ%}ax zrI3#!;M5TM*0sMS6M#_!RlsT?S~LkXv6VnRYos+p?TXfee7?ZflW4sKvi zLSmNDg$&uXJ0Ms~X0U-n!epOd2^!yJnQH47cwWVW7DU|<#qi=Zbg4}yxN|3_&ZCzX zI*4=$Qq$;OQwKO84jr>xvtDMMPja0v%}RTv@{o1O-ci!}ivnBI=Ju_7mTo9>@a%w- zc3E9mkFgvVtmWyo92dUVpEDy-6IaIdg*uu&(5b*smki4$Hm+f0PZq35hzj;9u?0A& zEn>JkqMX}+L>Q3-xQE0e4QGq?ZV@*!YYfq{pPNj*3x8x{J;ge0_AJmMc3)IKH1hYs zGp@Ey!b5ko`=X_d9&QxHbP>rP4s*wBqpc9Aj0!lf&a6YcwO2Y7$&g82_#N_TbmHqW z9Q+)Qve@3`$EV*7XABh@K0e$AR<~-(X|cFKwjvGf0vKlqGD3Z$dp6+JV1}{2a3RD7 z7Pp(&Ut6Y1dRPx1g@uVJHY%S{Q|-edV_WSH!X??b@H?cDwCD1dKR!OJyM+(DaK4m% zQ58HEip6wIy~-x^Ct#&bi>`3sMWJbCT_txD4Q0n3xSs?GF=U!4S3*a2BKsfdsc{_x zPS!xo3%qc>NjEI4R#iM&dSB)|RB6fWp@N3D`bwU@9$Z*Lga@Zx@V#MzP+>skwjO2K zd2&*+Pgo*sooTTbK7`&`&6qrb@$R)71X$@^+K!R0zTe>kh%zGHj`6WQq22Cx_sT1xj563By#+c^}%DaOIbZ>ubL2^24sOndU^M~65b0dFRTkf{maG^kxjV3wa^K0Qwnc61E2p7X zP}R#=Ln?Dw6|5r-wNQNI^dGO62d2n>q!n^;qj*J~^jOm`6mFA+(Tj=Sc-qgz(0582 zlVsy^XlHIuqK7R=)1Bt42jVnVYL|+=7+BG1d~){@A<@L%bOD*CO1gi>;Krn6+sgLbrlR{NoyihnJ*cAVuj5=xu)v_12 z{JF5;d7G@V#IS0P4nH~^_006=mG_+}sjaeX>0DhBF%}?u`K0EXE9HKESn|x3L$}r! zKrg@4zSOqWgAD+9_vWY^_hFRGs z0!E7r2rfgdloA0?f~D@?Y~QJgkbYIdPVkoZOU9MQ7R)RY!zXjM7RMiWYWJs(lzGCX z3$95Z1aU2m?+2MiJUyXdLW8KTqe$iBxP_&eqRr+iR#QwltYU8LB6CbFh)N}L*{VhG z$ZOGgTw?ev9p$5pRW@dJ+sKPvg6D41JcO)-V-Q}E%MdgJyWY0kpdcC0Mj9g1O?NlC zl|^1eUlQ6fzlch+%Ar97voMr!B^V1;&}7*u8ZczrRW6L(C}EbCbIM8L@`k=h7GoD6 z?$3(PKf3|6uG*5-QvyaBdeQN<7KHBBR?dpB0xFviee4a)^f z7&<`osX&?n2|B8E;0`2-&JD#wY`qe-hjV;FxJ#}|fmVgcIXJ{!$1pogn3=aSf&Q80 zrj6SoehZ1xr#i%_Q-IG5cjHJ4@z?`yRBPTT;#`0ZU(O_krW1=ov+s3yEX4maTGHKlmky8q9-6y#3K+GCFcDKFs;Zqbw-P&OfmY7vc-zrH9hxBG>g-5Vz z-p0MHrfw8T!J@8FlA?8&3AOwQ1vGhd>Vb=1~GC# z*qJrrygNbZc=%6xa(0wWR!|~I*8f@GFn;Jw;O{mVkK7o|nDh4SrvuchJdQmawQHkK zATQvsFPHIgd-g(nX+UaFTj&3*Kv6yUfjGEGv|8C&e$qL!wnHIVZfL-PJx z+$dg_)}#`H)3W7Ikm$J8jDH>IT%z25NS}C%>iPie{i07Zbmf+1%|G-gAh(Uk_u%#Z zcgXcLUh0u)1~9?bN76T#L~--!>gAz`{r!AQb%S)&gD-+C{i2dgQtnyk%3kaXt0&Q> zqC4RO{@R;KL7fp5vu!l>iJ)`hvA*gRc8+!dD85lz%%fY}m3d3eehZ@uEKTITo&}w3 zBo*Fa`c1Ut;!c8cg+q%{PF6$${I}_o-1Kd#_b0F~+u>shMa98Gq5XONw<X~nw9yj2(*iPnmfwu$?9%U^r2vo9@+I2*CE9&a4dE({C5BE2hq{u@GoH?* z9l)=1@69;(fjD0{1!Tbuiz&N2`nKPxTStGR${XbcMV!)4Brmx(qnOO!=AH3DexQGr zl}};%p$!9|W>l3%nD{vYEmi?Hz&pPh z?l~Y!=SCmz=0=XdlKhOw!{zV$n)Y~V%`**Q63+Y0>HR4EZ$N}^#v}+GHFvpieX_;t zqbE2rqjGHS52d0qbc{+wcAV2ehR7%g@)aik3iCioYGACX2Q`2`o{K(ymg4*{;b%xO z8p@2tK%UF;7>$OH$SEaU*c4fwCJZg&tDyU^$soT5e!Ufzx}t{Md3{9j z$OhU}ch#49_#QfX>Jk=!XXgh+_wh!XnL|4+?uT{yu<@M$snb~DQR;pC6=zoesRbGF z#xceC;7~ncp`Cng{?9(d9_Q6)eFhm)x>G(e_X72`?UNT%MuwI8t&oyhrQq^&YiG(dC}B}M#_BfH|$jJ-~96V(ldoxqFpD@Hvu8vJ($HQaEx&) zjBqR!>Tv1B7s8qN=_rJ765NA1-9W7jm1@wa3a4F4LTlmodbFdq#xn; z1_|6ItatXwwlq8uhSm_>X+KeGG@eSOdnh!^%1C53zVe(HL%LQBQWvHJ`Yqsv;x+PP592V+d_{lv9DAbssYRdNr6QPp%xntFp zWj)VKc8_V_G}4TJOC3X)5R4D0g1fP{>!cizA z6um&IJCeohi^QGcPFp9hS6;j?J*pC6bk(d&G--0HL!RHf$@)B`3&% zDxJ%tRiNx(e4Kg$z=2WeJQotxwW3yP6>ZUD!hOob(k&m;iGkhZ-W~e-w?Oh$I%L$Ef5K968*Wc1Py98A=yyK`WGs9>n=HV*$MYAeMxut`0 zr9*P&`I}kNDZ0=Dv!NB!0Tt6FPke|c%xMhANz|iiuHYI)WVHn!j=#fg&XH@2D7}F3 z54^o&F{wkUgW{?wMX85n;Z>{T#)Cw7+1*3`FpmQ$*y?a4dw7fDhKs;b}#d3_z{Q05OP}rZ};^tRD`DC+S zGsxe(WML*@Cm#s&S78*q1`Z(flr=)^Pii3?LSCS-Q)kAPh;!R2TJ6&nS{oZPb@%0+ zXGU>h_Wn+ME$>PBHvWrXRbT+}b+ypE2?x6<&gR^!fHiU>mHP{#J)Kpaz^Q_3Acbkj z*RMl0n3f;2BctKuZ+~oOiRqnes%<#z#-uTkrq4CQ^7>MR6-5L!r759e{tx}hIXh5$ zj;Mbycoi+jTl7&uJ?c z;5k=)w;0z9*DgyX{10Q__?>CAFPTm{M#r{ovt!$~Z992m+qP}n>ex;?wv)-7b7$^7 zXRWz&)_OiXe?aZ3z4xznRa#T+wtkzH<0xu~LEAocsI10F$NEPx7w#Tt2Ebh(gHGa> z!Y;fB`~`+|BgMXfqn>lD>QOM`Znu-zb?uk7_?8u)R%8gVt+YeSLWT0h07&evacPsm zpAmcT&2{Vc7R&u6NTRNvYC@Nn4rM!J#vY@zEl@gCi{sR`p_-z|ztT-1pHk;e-XGJ6 z!Jp<21fBYd*Yq!`_CFb;Nnh$s&9%ASJ?-dT;PVmR_}dFt6x>f%WO*4bh;`*%Q%#8a zv}uY2g>hcThCE}#qYr-c|71T7z;%Xlm5;#OA>cXdwCbGzU zy-)%c7EkO;kzr~VX1r=-v zCT`iky->8Sa zjNm&MzhY9(Ia5NOc)9nTuLc*tY?i6-hI&*5cp3a%_ml00{S7MK?L8VqG5X#}`2Q!aveHZTJ~iL;2WjqpOfC zrdZtUtr2Z&XB}^ra_}@j_lR@wi(`Bevtsh#jmrpba(6(%sd?v!pv_$#_~6rU+beUP zYDTnoNHh+HPlW1OUSkZe1!+JlJ>Psysi=)K1|@5HIdP8o*06e-O)?|PS&qdyG@TKy{8_vb1G5Mt;c9M0Eu&z{nLubJ z5*S{BnFT8p3*DMPHN4@(vB>hG){qwlOAs{d)+tSl~QW$S4CzuQ>W|OA>U6sCAA8_7?|d8oObPYOl$D{ z{CtPqL0EG~R~sc%7Q(~;0FGlSeVm+#1tM}BFf_=j9f!ToYmoi)! ze**})Bl5CTY!Nu9P2%YC{Rjt=5Aq)R(8&B3z3ufPx|_Z(f0q%rSEF60dg~)Y<~N)6 z6V1v0DIy$KGZ~G-;c#lhqqka7{p-tXzeWhbrLKhj_YU8^Qcrm*U&5JLlLs*3sFA6e z4<+N=MPN$4E^wPNXP@(Co7F9u9DV_d-E#aauxV&Wi4ARG;K^$3Acx}-GPY0u$7Fd_ z4)cb7jxcc5YAOdwaF-E4so{x(aLjNO_FJw3=VhU6oc6l?4Licu`2Rs;*78&+s>S}vlmIP3}UEjPjtO&zkKjLs|Rf6)#s}j z`%>~$OrmU#e#$hq097s4$rwo}Lc$1G>oFDASpJHA4KJc2PCJ@1JELSs4`OC^2(hB} zXGR=NpVrEJ-k)r776EYGvjA_9)CGImYfzC&w)7BjO*O~qNsd@?SQTJ`v)%86exRvr z>F%ttQD?~}RU@*oSfBk%pg4lx?Qh8c1iJ4*>OUr^g0|My-*s0109};ArtE?o z^4BJVh6>l?4=i#@Mc$3@I=b#W?ph&1Mi#J*K-!llhLtu zWTPppcU)xWnw4>s$Tl5Q6^veEX>M!9%+7Ks4evbxp zjL<2HqpXZD-NUM=iG~{Er2Cn_ANl30VKk$d9RCY|6e-kaUqFF?0ug|KsQ+KA^$j3F zD|16jenTg7TN^1`(|;hSO65)Uj|lQ7K-CDcG*>A+zf|wHanr*hZGJ06H7&k&VUo&v z?H~z!ee0Nkd4+e+b_`zuU*qwgg68A<$E$-Y zU!O0eUdZ>v->?=af67WlK?a(Iy_ID(+O@@GrfD$UQ}Xm@8>L-C^S%c-=7Xrrlwzf3 z0pqilST+vLM%CG@C1FWNy;uHn`bfT2Qdn^qCNHu19J#FMffZCpIljDFMNqIjnVKc?5|_{5Z3$Aolet zgdOlS-ZWC^y6-`*#Lv7JV>?>Ei6GG**M@tCJLiV^^-7>*Y{W2!9R8B#_I;|iyk11e=!#*L+)FDSjr-3JWNqt-qxb9TAP6oTQHP507A z8ovT9KD0^#Ka%iPV+r&*&A*_71DG`B)tX2gh8!qtBhx$c*YGUOL9{TPlOnCLiW-Z! zqIb!kqc00e%&DM!^j10`1JnZ0ofc>m1o0fD?+YhFMOfaEL_1HJL^@Boe!|d&*++jL zL?UhypNccab8?FDv?mRuTr1obU@5ll=R~ix8=G;LPdEg>ish-EUGMpT&aOIt6@3w; zfE8n@A1iPe_?U@ z+-S2x7`E6IsGz#ppxf*egX88eX6EO8*@?*ssChyxV8PGtK%2w!9}L#)!-mE3$P;)g z5O5wD2|Nk~W0Oq&j)cz^mdPC9o)Qjr5)H;qfha3n!e6IB=H`#k*=ui0=$W1W0{5uq z>&<&ZkvtYOi?K`OcC2dhr_K%vP-NznZlC_i?E048QTLlHt`AvkNn${l+I?@CdyAIi zYFE^4i>L}Zwm8%&cG&dv8U|FX!)u=QDpm9IvW*1o`)ohJm}Z4cBF=*oby&+>M%79q z`S;XJfez7xnY66)Cx<;`w2&AjB{31oUOqKad^i*a*`!b;yv|vs8;UEjz_f6%lz4Eb zxOx%<2O5e)6g?AzfLp`vpzW@8Sge!MsB>AYtDPz-F%F7DAU&I5(6!A-*wwCfSZrMm zk$_WK?9)4E1ytSclq(KXROHhG;Fj;_r zNdE^3kurC5GPe0Y?U_XykX~BKi(ffx37tj`>xJgY#n77q8BG+M<`V17;u#bP!B#~S z=%i!JIGkCKObJU0Lcs=$0lB%Uxw$Bn&`?$M)nhu?rGlF{MTE>iX6!%aYqg z5n6pJamGe)QSB>-UivogYXwYqdgGD#)jz?^U~ zz6VF3Qz=K7s65+1SG#Q(ZLG&Sjyygj!}#{*v7s+36$!Vb6x{EiC6u~#an~9+ed)K2 z@puj`U8~y>t6f$LRpHKuDiTSWNB+G|{xYGBn5dZO(JY;|s_FAkLIx+O4=U_#mV@}P z4%>~wzgHi0j4^2RUtV@q-bq3@iiCCOOIC2-#(-eeihG$iz-NYP*?VF(!((?QH<2JF zJg`7DtyrWRO0u6kJRv3{w*hz-&MT>LHd%;;|6c)g`K`_cKgWg+kjQ&U)*p_pn?tP z1XuLsnw*`P0+vbi-4sM)rJpFCgO{D~kZe<;6!ktePk+M`;OGZ`QtaRqR26~vXXAJR zi=>o@zJL1lulHe!qsSqawz_eDk7E=KCO>qJKH#etZs3B?Zl;Z7n7C6G4`4C0T7kQ| z0P^*tTnBDfDy{smR2)v`~1-EtO=P3Hs;W zZ&llY^G>>u0_{Kt!P>J6=ekmQA%jrExys5a=>>5`aFV*-mSNixK9XU&O4Qq-b&S?3 zw_HMk!L@dH!C(bGxAt#}5P#SCKw?>H1YX+Uz6JffkwqLQ8>k9m8OX$WM!sCM&-v*K z$e)*wc!Q~k5|F2#CF>kc##McW;hosQFpw6aiPEF{OKy{LGeflzLzl`Rhzj+i|GaRN zWFI>ow>OYehCCA)_LwBcB)GHm592jF?h=ALd+-7_`^eO9DU;?lj8b5p$hDWSNg?o+ zS=_z?PF%%jMqJZi;LiEv#en4JYm3c*kN4S&b}ai*a7u?z#u?mp2fORG(V#f{baf^rJjuMvjvzooWT zH5Zi@rKeWaRpn)Ijc4w`w!7=e!&H7rUS@2Rm;VDk$HPOhqNMn8F~F5yQKP#|H_7r~jx`I5#Sw{^~?Ms#o3aC}vt!MDVW^rhrX(w3N; zt?d_GR5~&jQye^)UdSKmf_)`(M~$lffc9%&?j(QOsl|5-KF9QD>}8E(mEXPqgKIpx zxiZa%!G%@+D44-dlVPntOUx%va_XOlqzo5ukxy{XK%YPV5(llvVw>7h$;2-M^j5mnM)ZNHiAekHN zKdFWS+XO$<=;O!IL#kM*ES2CMATYb+#aB=Kw(*LTXvplDTizoM$Q36@{suX?3(vfn zHF!`pk;CC|UaLM)s0%$Ez?#TD2g!`Gf0TL%$1IIAG{1)rdcBdOjhh}U9T{#;rB(bR zMdMZf8Cw$8!K2WjAj%rr3gely201YjMJ%2x>Ezy)pM}_5l9tp3Nld`8L@TU1n*^rU z3cRN)eTkpb?gb@EW%9{vfn=cy*)(jmQs^Gqj`9%t{p>}mG`m8=CpO_y<&UH%1O@LE zFQgtQq|(Qv*nRdWzv_ZcmX|`NLs}}|FgF8CPrjeBTq`%~Go07Xs~vkyjWx1kk1fu&hgLUK_z=pFq}e5XU@VC zP7m82V!m=SKQQTHnx2?~ zI6I<>g%Jqok+Q?8pFx-T9VnYb*~zHEu&3{Z`G$lFo8!JifXhSPcG=5`Or)bW#;?}= znZa>G)Y^M*nYrUrpG#=>N~q4-QI4AjO|Yf;%)x6P8o!CNx!{UgSsISFj!6b zLrAPDnFwTF@fXHkGl*b@<|~R&cttgc9!NF6Nd2I8?SFzKti?^39o?A=n;sfr4A^rJ z?>=Pao1Unr>D=_)-T zyH{MG-Ul4$^qX&FF3cc*Xkk+>IFyR?xW^D1_9)#`G5npJ9j$A+#}e*Is;it06;LYK zuDch_V!tesj%ZoFf_nnTSXGGugu)UnG{rp?U{M_oyH09!rXrzxHrbQKjm@nu%=Xkw zAXz1G2RDd{Ahy(O;@nHD|7{F;8l}0&XF$O|>{6)Ke~0zo;ccP20fpB$o+~sMygnlg zoI{RrPiXflkBE9wKguXxHO!zlH3WRssZ}+g+D)S#4YqD#-8zUSZR0_7RB;8r6r|C! zB2~S@SeSeB+v1yP;n1KPIwY_NvRj#1RoCn(kSxlwy(K?&Wd>BoxwVGgphD$voQt*dU)pd(6mX^H&(QB+x0PcMtqz%WDEpDx%+o6l{Ul!#!sI!#bBHIuTs)gS zgfG;TU)?V>wrL+f=twHH6SGZ195d?NaSu>l6bkbog2_c7zjOhNf&QSRr|2Lk z_o}a0OtFBXd)HU+hHJ2=V*hEwv}ulezNi8Cj|kDvi@dvgJdcLJtpLH#rJ?vSXemXs z)kGM7e?16Gi0b(fx;pDjwkPy*iQ_6YTVG@>7t|G5{r%U(fW-51i1OtU)I#1UchIuc zbwWEh!Uy(xDPYh?0%i+#tAc&oEDYWyLX!xLVeBmrNLw9$l$Fq=(tb*2yNaZzB%9A#;Hbo}O3NTZR7$L#-D{ZwsVHoYn68EH(P98DQu$;|3KOVqp z$Y`V`TbLUXKuKOF45pZKfdl0TP4EXS2h0uZjV0+rMe=4J!wZ5G;4bhMI}-UK6E7mD0$vCw#$ zOjCC~ZI~BLb<{x3)I=?rTvHc0D3$SozZ_Y6%a3|t=jbcw{&QJEmt)2o&DZ8&2H_L? zaHi`0MeZja2i%BgG(*3ITN#Dnf>Uo_6+mZNtXrVRF&Z5g2P)Ihn=+A98q4b8TZLQ z_9xbyV2ZFGGEDc90G}rAWRY&xiFlC`V|910bkFR;bN+?aOZ`6Lx*DEyA06I>#YjBQ z{c|e1VME+IHF_&ujDmB?4C^&CbH~OuRHPcgjh|)*SurH}G8z<;j|&@LZ3JF%v-p=< zv|E#eY+Y%aujW#Q+pJw_t0^d9y+(ftdgHqQMaYBHL8}!{1u)>XnBc1$)y9rogYB)+ zJg+#z-*zYJA(^F7vJA3V?1WFkL@Xa`L(T};nii&}RlsryI-=fG<_PuDXa;%I3!BKq zK|rb0k?0h&G0A#O;EOH%0#+||-4cOU7<`}HBhp-fj8%W+f-E9f?AR||<2R$-%p_+~ z!e@`i2C%Giv%8E9?B7G?+-QBSZV$hf)}vlZZW0LI<0YAkHC6O{fA)Z23%b#Oat%_* z?9n|D1m=8}Z3a3yf71&$s}w@{O0v*e&9<`B~en1dKN6pj-mqU5Co4md_<7QRDF zVGJ&s7*@}<&Rb2gVM?1A#?6(oVxeJ1v6vK$njvRIDHJd)ACNDfYnt4rc``zy!4lRK zT7{}0$jr6(oe03$}Etsz{3avArhmNbZ+gk={1(LI=0n$HJ7?vP%P;K(oro5#A5&i}7U+|M(C?Mmz_GOdLl5 zZS@bli^2}I-Sawx2zhvNQ1itb$tb{fw=p4a1*Lfg0(l09TZLE*i505iU&v#S@0kQg+XEjmb^e6QRbUX7{NX`Z~P|xn`a627KM* zeNH7x)k@}lN+re@U2b{g+KmU*44PPc7v*A2V2ernjkJ0J)iPMj(BkS3?SZ^DJOxzP zyAfESfMytIScX-a%5P4o88gYoBB`42Vsl~U48b*d?jjULXoV(3ooR&ibmehQgw~Cq zjke>%m|6A!njHw%8YdBn$30&nB|F?G&c#)gY92aYU++t9l?C5g0725ikTU1y1D(|; znc?NA-bjKN)xx;6RFM?G3G!pps*Egt=g6$GFl2Zf{6zm#=-DxxFXr|*48og)0c|C6 zf@4Y4(LX9P!T(&$aAAT7=Or;3^q?1UTu)Frlho7z$5z)_J{B9bA!p8$X=FVA zAykGqj9=V1jl8)KVxnJKXr%^rZdtUKN*KmXnyEMj`ve=EMUQ9IS_sU-+fX!M-SK|v zC~#^BJ3XY0885gomcbA~MS(!l2U5d~Lb4lzt1Pid2aGRiA4~&4)QIgmC;a@g%6LRO zgh>fw0Ro!5IE0Lb2YGK_KBX777?*wdtWm3<(YJ!k;!}%vX!1*7Y0f>dVQxmEy6A9C zSmp8Fl+>CHNyEbin8nKz{*bWl>Sp6=!Zg%JY;>Fh&{&zdFIQJh;K4r-iWpkHGE~lx zU=b^*x$1V->f%_xYcpbe5T5j#NO1{8WM0WO%(3xVq!>psjth$#PuY!rjK+ zK%n-4e~a7tpiY$M7_Z7={9$ayj|z*jL?}%mRRu;Ny0JJPecZ9iL>!T$SDd8*SJCH8_QOmgEeS4o38A`1GkK zkM14m^B8-OZcQgwH!>#3Q%1meGW(A+)<+W%z$cM)LY9Wb`b=`Gka(LSnjVVNIq+8- zX*5`TCrhg8$V|`2hH^v(yv~jGvD?fY{arA=nyqMaHD6ki)~(mztjVB0q5t`+TMJs3 zjPTpz@%|kvK=waebxZ5p=$jfl{NF$U1!>!b-^iKL8|(}=2@2_`5~r$u#J_Ri5fRHM z3uFCAzzKryW7mh(If|=sR%MEAJ!4z#c7a1d`26sK-E`2_B=|2hwz9l!w>noBKVLug z$^1&p%trAm1m+k*um{FHeI}#K&piN#uOSBa>7x6zIrImQTH8@ikV;e2xh}Z`F#%B0 zBP=H{n%$vM{3kMm1&b^+u4bKoGsdOten2~q6c<;#_HleI8ajs{jA4~X2a61qNqMgfzNaNg3 z8SyGyC7U5HLiGX*%pDQSctn!Mymox)qhaAa8^ilFVc28Aw;UL!T%X% z!eJyo#lB$%@$KsPcVPCP)nQ2q+yBvCH{4?`*+K(S6{>Lk3m>{Myh;fHDQXUxK1v%t zB6T!sVKWa$%{60_W|-_&LpqWH0Dc|T$(U^(b|@gYaz2^1ox;Slot^ga^7h8y=jj&9 z4`UAk8BIWpk<5*ewEeRjDY-(WsyhA9w8o-cy&s7NBbB+beVljWWi}3GjA+-zc(hiF z{Bm)I=}8}xq7c@I9ngniGLx>Quf~FPrEJtfGsi%&d0v$9;ndaoqMK9KrIF6-lt>hT zEqGL9(NrL!c_9i@boa6ZinZSwY7aK>3;Pfc=#EF&MjODpyihZd=YLB-lLq$WK~= z7!GPVEg?`UqqZzMI#s>xq*U~A&`zC&jCBF8l z9vqt5jSQte?QqD~3H}UV!@{9Zl^iLBqLZOf{fRu^}l6H6HsqzPL-@os}&nbYCe7Tl+|X=tF@`4`{p2&=V;Z8 ztu1~i@(=70^+={cQ|uW?6ATX~E>+Y9V;qJ+KkA^ZhCMECX?bD!T~- z8ChW@OHs|a?_}u4JACL7Rt0mm(b&!4g^IWE^V6ZbzS?`>)cIGVL=vX*I?Z}FQLx}c zsp)cX<;4kq(@vS-G-9&i-FfaI5?%aQ@@eCw(xzSLvJck7RY6e>5lLWQn$xOe%UVEz%}36EcCr+!Hd0zgZiru`rXHE7C1R+|L8y}j3H&@Dg9%x zJ$|GhV>1DIGj!9=Wdw)_|@3J+z1}f@$;3sms(swR@ z-P5SokA(MX-RI?#X)bEy+S0#HnWwZU!w7lMv%@lQ-2-XMzUtMx?Tyh`;fl<#?(u>| zzYvs%k0%GoY9$JzLY2ds^VE~nGP31KwnSo-=ho<}!ncNbD-0CMQ-BX&DdZex*V;63 z*yLd{I={bXF&YJ=IM-CKz))aCc~EB1=^9O(?4qaDx5&c5rj98%bHkexjajHn>Tw&3`1$<`|L$ZF$_tgEkosq`~VdqU>@ zUVXgZAx3Qf#_IdOUOy>YL;e47YyG$7CkM}yQYeiT5KKr3!3)$>6%%kP7vZPUYk@EV z%v7p7k7=38tUs^xiHeN!UB58%Nj|a(pDV~!FrT&|J;USqX#aGyd}Yh`BXTz>fYo1q z{d(S3%dsGRn)c|{grTc8e&1BS<)MBTZs9B;{g}gLi{dospdD7qv1S|+l7G1nS(cM{Q%<4cQp?!$f(EA@y^su zqk@R+;t}Sg^stlRZvou3;=@y_M_WT=N)z9my^`@*pSo~#DQU4u;M%|0$@BLBerV-S zMngKfR0))M%~z$@-Sg{l&+TM2-CM9M03mZPH%_DtLs0LW>CV}q1Oo3;EU^28*X^Ew4tR4*N zJC30mP=-Z0gu8+kYZx!}mw+Z}Md4%mqw+_hkg;rxfbdH81S#WqZP za*nEPHAba0NzB=$Jmd?H3Pdy}l!T)kyILx{N~^#f7;Dy`cP=9bJ$A;B7NOFl8f!jT z(B8y{`Cgzes<3u0PZ$4|&0k!dT_g~Av_mCSB%w+rpy<1FBs;SHi!3bbm>8hwC^_6Y zb~qe;>Z+#md*VA>=vB~G38fRc^*x21*62 z?GbZ*n)j2wmh1*^@5iap$u_?FXPL8;&(Ny(z119Fx`D>Pr%w7ah#T_th**p~3$23Z z$!5sPts(PmiTNU&T54ZqkF08-ii#U}7$f*zS;j|4Yv$ji9zAmBH)tCxJc=QL1x}f8 zq(bH}+IEOak6yzBPc(L&c(7@QK`OE_kh;S! zk7oacNTJS#nRzmo=SVmWX*gihAnHWSj@4ySV+(NvibFAN7O?8bU0e{ez+>E@<62q2 z3?o!e_ZNMqvt8|a18~KW$z5$2nqU=IkmA%Csb5Z}*e0iu&4zwkv58Wsk4%OPbLIw$ zA<=x~RxQk7>{ul2xID>K+>x!Tw%%v~d&?8HjBMn5KraHy>yYZ2v7R_oeac)Fj0I!b zfYSgSjq!5N;N>| zsXSqVIc6M|?vP(6&)~vvn1OhbTF+u5ar_;FE>IyH)&5Z&?Z__c?BTQNA{|1IIfbGu z^s>_$-U_8HEFdf)oD=>7MbN7-cb{kSP8jh65}mZ6jW#6=^VZIxaA%RCL}<*VifZbD zWkQ#68QXxCw@9(g##n)*#)K1Pp~YPegJUm!9TjgKEoT@Li`5u~?c90UirHJzsi;49 z-G60|upM6&-6IO1zMhW~8|QiMhlhD8s5m$mTe}RmCMsaC2#1R2GyMmExd5TRwF!WbEM)|Z>#SK!`H8qs+O*60tti6XwokCAn~BnU*v`*^G|kvADN1& z$nXBx3qMoCyP`xe#<4}Csh3?&E?>U#T z-v$}NHhDd6(S>+rdfM{!pt9!Vq}SJRMMD#Ddspp{>!mS41(E++qZ2Bk!) z3FrNBobY#BZ_y4~zW~#mpP_sXHS55lQusTn$(+DkX%RIVbCFp7!zdJs`4JE1JL*+? ztiYG9!1ohvNTv&=JEY|bpSssc2uRp3trRF7=xXri35uQy0zO4=M>&uvXsTrM$17-i ztQ8mB*2oZ-*!GsBBvRCR-#3*fha4Fy1#9Duo5 z^!NPDG5;pNh?pB&8T~hYQM~%kQs1se?n0HH{P4nwsI{gj@1O+Az{SO(;(3s-=APPT zyLBYX$%9`K5`;npyA8gH_AVSn8U?4?HpeE9QyDD{9oyZ$uTXlpG1B)8lj3tuI-pxR z1M2E@$X(%gRu#G3&b02*KNasgjv#y5UwmYVd-YaA2}N9J-~$LW&x7^k83wJ1kp(N& zT(`r@p|TqEE93;0bYC|fjHHEU*3o~*_hnM@QP@-^qh~I6B{jtM3nPhR1-1^tJAbqj z&jp@J*@s*?jvUt?St+>$trMTq(`KO8F@#eoy~ET}YIYPF$G*))Ib5}rz>O^?T)g;b4y&CM2VDbXlmR4CbkR;%45X8SW4sW33D zfKmwOvMDi3aT}#R%R-KyQpeBC$-pjLFy0dVO$IVT%4ufp@i@ZvNnSRJ7YlIcNhKVkVqi@YHRuaEw9=k#Kx z1Yi^110PMEuOJM=ea6}J%g@`38ajweW(~@Pf(Sz6MSK5Pk8VVuu*R}ZExItvSljFh zXTKywBjx**(2zsH=1k)dbQTh7W;#C`U6zF~KM<)|;0Hln#Kd&KkxLL48 z-r@I#*>~dYC;AfiFZjJ-q926$#x5=d5D?A3r;iG@u8#lMs3s|`J75XJ^XzMztKJSO z96-xk9a_{9hlDGw7 z8&LB5$*fMfjsjcR+;dv$>2!hTyB?@wTL%bzz#9YySg=}Kwn{lmwCT^e0_$<2!m?_^ zyKcRfpn<;t$3z@QZG8S)(3!gl~Cdv*X_*1QS2-ALv|PA^Z_jB{87WO-GMw8K2QRU5xxlzHMYdZ4E_5LY zDT6T2TH_g&gpKWcPmmXJTp!E0iSJ@9<@m$3G4YbrbEH{Frr0l|)}T=j3tR z-|8mgyHx@U&I-P7)Ax7tM!QOvys>M01F*IH87g*1y}V_WX}2|t1E-G=-nLLdu}JqD z1gbyMOS|%?!M#rm!tde@WQQ^o|S(aN(m zf_8r>n81MA;X{5pX^=e%I!owe%oE zbMHvoGy-U&w{$B)+q5!0LSJwM{>C1!i>uf#x`QLxU+6bCHuQw?p6qXk2BL>%Pd(DI ztGE47w|_H>)3Yb-Kro#i#o&H%53G-^)QEAf9-rhZ;!A3=&4mdMEsB~>x`{3hP*sZ! zl!sHw70c2eo?<=SJCpkI6Jop7hPdjYxpheEm55S42S1XFjNYb=A&U;yG!JFycmd_) zpA3Ed-r}uKJD?Tm_s^MK)KChwwEu`m@XrTujL&ERAgy`9gTi zP^E&s2D3k)dF|r+GIF;ujpK*`K4u8QHIOvAOWE`fBDzVZoaVL*(Mrsi5vI|k=acxj z2}r|UHum2{P-Me=$(lzai}?o570sY%PI!Z1f~()&p+HgEciE6R^W>K3QJ|=t7GPSm zI-Y8uk-cRfQGPC3O)eBoUdRsec;!_F$KURpQ4dTDef`U}dm)7S!0KBT=f0`s-=UT7 zOQ`=+#HjyN#0hQBi#D+;hyeU>avJ<^MN}qE1rwK!OBF!6Uue!gyk3d7jQJNu44-?P z&&pV3v)!7W_I~?3rSjw8Zk`>Wr`Sxsqr7&>kkM~ayDgs{7m@!^4MuimOC=xgdU)!v zL4+X{g|P=SB)LbgFQQevqh#xgQ))XZzb=Hz+~1*$b;Iyza#cns-EoiREkv&j8()|o zcKFUmcV0HODzu*y2rs}(K{sIOAhif z{SuLUX`4u(ZSf~a7s0>enNUG797pvcE3dd~DOofi-nfQVm(=Rw3kA?h8 z6br2#wNVV^+<^$j;*v>L{FDoHic$egCvhJ39=2T?`WMFV=YR|v{0-gVi3-?h149bn z4;xUdv`8{l#uW8HN8v*I3`eLGYY!9bD zG7V)!FxY_3yj`u?GY6q?f7#Do52 z!M}!k{H!sp(GR5?U@JN?EEP*;vI+e=Muo>_3Jz9h5;M9@u=ienz+6OTtkpF-5*6dT zK_G#jY<>-yCt&ME4E{N#CcC|qw@u6%@s85F=k6^i%KH~JOe?76xW@nj>f{0fBKiNT z;XhRHKSFMm7QY`yq=@ShL98#nl8+K{@PjBJEjF$6#8i`t z*12rH9OALTCdWL9G8Yctrirq(xp}d@#X`HhsVPFmJn<^?ZL4$A=-AR1uSfUxvSXs{ zIQx!o-Fr8!2G8qfuhRZG47wP@uDqBqroPl@c=8_>@N_~F#|lbHkTVI?%F@^zO5f3* zJ_}MKl_{OB=FWB(cVTx}f67iVQ2=C(04cJ5@9L-HI|;w9nc!Hwv#I8TyujN1Z*ur7 zezCC$UGscA0!>+qFt7j;=#RK4H&Z1$1;`+N=Br``COOxfCL>IacL~fn`J(MUc;hqiSVo>hX|LrjbE<{}_Al z46eFkcwm#XtOjo|^QM5@UVVAQmxwjsPoc!yg~Xr3Ng5EL~dgE|3{a)>sbb4E7w z(ru-VqA`PfWt6)k&@ETxA?4+em?4XG8z2Flr4_{Q>n z8U!D%yat;4+IFe?S_SNo2@~)#E-5aQ=Hr*{z zrsLgDCyoFZX}h@)wpjvQV$+K1yt*^>$V(H{vPDh2luWFYKaBt_Ci+9~YfU%q8OQ;Q zbb?2VRxm3Gf>8QtneCkheF8kT4FV05lG?Z{wemAzl#QdAQW?2icUr-BM#ZW#e~7!z z#imtTfxd+0q^EX0s1WB22()6Cd3KOQ5%o};FfH>xU!{#9n-wuag(jlE?=?9=ww0by zyQhw!z%Yk6y~TwDGb#bCY{++S(fva!k*Q>eh&UW2Z%Icc=w{Y$(g6+V`z_ST?&w3LFO;%(a1@a2hqhj)xJzo^ z^8p;U+NbxtQGU&V%BG+ElgSJh_#>BR5+qR$Bww;M>+qOBeZQIVo zm?WEbzuMZ`uXeYpf85o7yX$UU=Wz_swWsv_4LR2ccLeG* z^sY0w4G2^{B!6YD*swKz$?_t{`2#9jaIywZ-&etFWO>P%KFp<%6sl*2ejZ{&^^}kz z0XEi!VH9Y&14PeYQ(M`o7Oc1nz=XX~s)Iv|!H#@DGkUkfhaT$tT)YgH!jv1aPcZ9u z7%;s*itaik8iP!J&L{3Vt1Iz>HrKC7GB?s!moH9T-`f5qOqbc2Puq;)%E z?%S062G?_rU$2DW;CvQ@CU!hGjle+jQu8?Ju7C@;5+_!?1`T+7?2Z`5Ec?XnF;ZZK zxpClZguNC;#G&$!H6vKa3kV4u~K-NYzVz`1Ze(&=P{FJYQLsq z9J|(hi^}2|ubuJhkX2fH%21M;4UT@|eAyikz~t>e98HyO203(x$1U4HFV8jw`-#*D z48-Rq7IX4YnL`{Ytt@{<4KX7e!ZyH>)sQT_V;DMd6rQu|)FvFYP(9V&_f}Xm%0eAn>W={ZbH~ zXr{=gBhg366cvB&X&RJ?MwY4-=k2N!7G11&@q@U3MN5NVasxD zzh819dFSLPA;^ilr{vM32MB1U3W->zOYw^hM!;4I=}s9Y&(>KqtGmGDSb68X0n@A*z#1s)-G-f(b_JrTi!aJ?%gw`OuD1;k8+J9f z5523Zklu1@&*QE$lc1s()R(ba>M3I~2-NLZB^Jt(a_P^5P!Uc$NN(0Ys!;++eLpkT zs9o&k+R2s-lub35$Zv#)Jv^;CfVO0!DgZ=DslTMX8{6=4nR&1f5SwM^ohln17&luw z+=&m9YRJaFxsoQBEx~J8EmI1Yn?o5()81&?y!;u<5&Na=^-clGh?bD;Ir17V5Wa&m zmY5wzAHf5E3{5>>x1h3)0o;?My@jr-yO2>XE9(VnmwZeS(y|@R@PNpbMTpRL&U8Um z3)k*52VpKqTNq02tTn8sI{Vf&YtrJRvePHJpz1T(_ElN!b{kdH!g?C9O|ZyB*Ujsv zz(f1e1+)FUr?!^3t>>Kg?|n@jS!GovSjV29?5U>A`mDCn3YuddW#I#=Z9*5xeAEm; z3=V@bTUG}pZt8M>L&9f?1MLSJZ5tK?quVZb+dtHKxEy1MT=S>s%xI(1`PgCXqC(tC zeQb1^|OF1gfX+`Zjw^}6fNS%fYsI7U2_<_^(abkgnU5`h) z8|4NSev?0n{jX(`mTBAs(K-Ru$6Xf|o~Lk?05=*C4E}>R>2q|kHtusZxw*znmkNWq z>&P3z+87p4qzaiD2)t~GC$Qh#3@r&-qvA2>9kOq24o68u&_Yxs4gmfW??LMkD$mQe~YR z2`*y-(BFZ@5Eq2dML9c8@^-rx-km52IlVRKNtBr)dz0j=xQNaDWanqWM6~GS;HTPE zNG8W-(fA4^Nb#d)Tscz{%24qV6Pg_)-%CP!b%*Yv3(dvg5a>E^Ovp_hPRXd?z0WZy zInL8`6rPshCl2(f-q}9MbJwjikzx`Sy;)GSJ{t>n7ihY<6Wh5t>Q;wa&Gb|rJ6oAP zWUnzbYN9o(B9?Vo!uj_ zzt{SlU|1M@h4ZN2t4yGGp1tHcziZD39y4qgXh3}e0_lgxBadjaF4fH|@Z!(&9z&$` zskw!9GLPK=Cpye$?&bwYS?Uk(4$eiJ4HxMqiy9~QTm=6ryI@O$O{^QuPiXsOY#}&3 zu!ai9s?zn-dJ{jDZ)D_dF~CMDRLSK89+Bd1ecp`}i6pKYhH%qPUt0AySQE>9;F9mf zr${sIXU(p3cXk@T-7L4oDfw1nZj?3s3tI7_S5zjs7YhNubpJDFy42R>_1>W4f_u1% zJd?OG%-{&=LOL>2CbIfS-<=HARdGw}CU>y*_RQFM(l})E%;oj8uRQljoZHM3hI1Me zkwX`IO&1%n4u<`s`??mV&GU0XUnSwqu&&WdeQWvdU@-lr>PII4-7@*g_Sbj;WC7E8 zDTt=+?1(=<+x%AhdRV))aijMp4LZ?6D+u8(ul{IbTD>eGT=l%hr+u3VNh!aoqxpOL zQ2IHMT>^M+863J%iuV{-PVEl)a20nLaF}lqcTaa|QWsW3^kX?c@?}JAuvB3-*99$h zEUCd+Pq=$OiyTr-CL8+X67oOngz&dJ(Ae9O3ZDDEl>3~pBimupK3Mepd>XL2DVCZt ze|Kq>_=vOV&Q9W3)qVg)W_fROb_^U#p!1XG#ElWn`jk^scQI}!S`e7lyket{p~9#@OBUM=HhkNiZJ7#?B>c;yXS~KLj*qMqm9?Vg>kg7KK*+m zw=^83iTi`Nq5a&=-urN-Jq!!~~=0?#(WHb)|VVz;$3Cah35@^!yrj`12e z;ul+TGRMB;8hDnvEp13(>^!Y_@6;kU#)T^eWqjlM6(ktiZy%a4a4W)? zys7u*%;sk{wky?si2r(KMUt{>I+b7b`k5L0a!VvqJJ3GO%9X_KDf+AhTmW~3dKIMQ z@Jq}3x#0WfQB?622;z3WnC10F(Bsve=o|m{7v+EfDvsU_mJtIxGknSS&$MS5&mA5+ z2;SZ~VDd{_W`VgG4ZsY=>ys2V-3P{%So;lPcZ8%sT}jOyfKtrnDIi}>&mY{pQe=-x z&{q+>Qq+sC$D5fpPm8-pA3eNHIYKWxqQHdql8^dwz2g3C96} zxt_U-#aw^{5fchQ-%^gD^ zr23#I9ci#T2lMEGH{>_}tR8K2ffwXdk7i?*dGtOOjYsH>R!`Qhd|Yo%hxW=;GTYZ{ zX6W{PC()NztDkLjFZ=nbFDY48y!_2_`|+zOa*W*C@?a?Vh?t}T%g%LDt1Y1k{Nn-eT-;9_l(7$vU< zxSht-)e$6vxR{d|8x?F4oWtI$7?p0>UV_Wdfu8pG0xu+@P#OHel#+@+OJ(ubGBNuX zpKEU0(~@%QWKeMmo%>8S3~~=8c!|LJ05~2uqjs6#G`JDO&ksjuxV9SU46})79?vU! zEpG+5m+L;DZFis-l&U_BaylZ%Fi4G(D=RT8OKzO;qTmG={Z3<51!)=W<--yz;bUn1 z(33NViq$moYjdC6LQK82ii`&Sz5qnlq#$3tys|qXp8b68M(`Z zzC$$NZL%j~HX?(MEndMIxM0Crvgk39uf-ZLL6t>qNw~Z~SXqQSQy8ikAF7;gE-@~F zF$V=d@=!1qWn)bHu}`~mj$oYai2HGi*pMP`Br|4$aASPRlIzR$lY20bP+j1LU0f+~7;SW)7#IBoofA3KZ(kT4H@^a-=_GGcvE11T3No#33=nutTQ z^%ONlnI_H*(pX2HMtMhDCS6wP7j3&_>qj0*t!Y!YCD*&KShO%RWLt`pN<4k=Hy3z~ zSdzukQ!|se316y#vEUaMT&y$4@jV?Jqam(Jh?tNO&n-hJOaWdAF)wiXp+PVD(vwVt zb@@*jxDU@owG4&1nh$6Xfe#4-klZPRH{$j>`IvrmR{?p!4bo-C9m=s7&-Pk%vT$Nf%@DsbU7 zhemPaJuV2o$C3ysFEs)?2h$NGdnK0}m}bRln?vQ5q&OhTjC?sKZH=)^mY`4p&XFEg zEk*0jb;KJY!JgJrijO)$#+W8^#F(lAnr7k5MWJxK|H+0^4yJsx; zMn&(HOx%2PkE&N0ri6TD{@_hUi8ml_XBVbvDXB3kr+R3{us!i)Ak6GD+Mvo$FL3f{ z5n|rQtt;P2eb)zK9t1)OeA1UGRgr9_n0iTtZDkSJrnDq{&Phj>tvy(M&j~Q7s=jXp zh_No0k9vapu@a`2>l$;X8f1pXk7J#3A+VAgr>Of;*P0>8v&k>`*g2y$OsfsCbBx$G z0jK6C+Cn>IK-Iyg_0uc=Ni4`BY~kEC|dp%rb7Fxv1o3cDQ|# zIAgjYi@c=u@2F$4;e}CEHOwMz`3}ikChjCWhBoZy#gR&NxcHs?&mB^yyQ_7Xgq$^% zv1beh`^qRhl%5Jsy`6AR9`Kn%*?P&*avmF;C)|8z(>=x{J^^tIX(vx8@)qJ86xq%( zd3M;1)8Vs3JWRiMdhJ7*ZHZkxQ4RRQ+u^f~QOYjX7D`JJ{R`ku`jEv3+5+Sv99O@V z+V~cyMSS!{vzc9e$A?O82->qO9VWjl_(S68f+!`?G$Ul)5%MqHY*`HhHr65rOawhM$sir$t>&0<8PfB(<0ix&ZpAhP2=zV{)u2Q^f(feD??UE=^-Xnyu z&NJB`|1^(ccpfjs;mwC_9V`YxWGoxS96+fpKtWa2UjG2fKj9) zobNA+1)*$VL_-L^K(R+k^uDFp*izK9r?^rC+(7KP?WB|nq2r!V$x7|gkIV!2-} z7D3rDgPk@AZw!1y_NHmtl5j2a-MOTit=@NNObMU8%3Rlyy^(bospmp+@fq_o>Hz=n zS15W%iClvAM*AV;8J9%rLiju^4|T(Y=ek=$w}u?PePQpvKF*ABixuuzKSSWp7Qqm|Dyt$jbk+WisE4Qr2wUNV zHi1CM;qc~!@K2(B;;NUR9&)(Ryu*FOQ?YP|KeA7uxU*Xc_#Tm>a&zr(*aWJYq@6L_ z26vgEu6nheF8ndGhH1gy&LLexU~UrIrSHHxoBj6{MD~IubK{)4)ytR?mFS6^M{{Pa zx}fCHyeHcym_7=CL;N#ny39@jzX`wib9N6C&XMwHr>tf&YidG*-Z_)L6W0h7kc{7R zNN)wxiXZAaamL@{3oMX`=kB9v%a>Q|{#_BlOVK3d)I+_Vet9;^8Jo*b^@JJ`{YBjS z)tbj|&-bqWA@n4Mtr22OnM9}7pg-+YV+Z%{Si`BXxohGJcb2;3U95dgYc9PuV!0REFbhE{}P8!cOp0=Y^m8N%WZ;~U#0pu zJM(R4Jm!zQa+G>pEX19T8gWRZT)mMD2ihljdHIFQJ=L7qGd`ZNPf(DZ3^qRA z6bd^33QVLv7zDTqZaf%{G=q}`seGezZUL~WUX!mG1>0f=g&e55)OxU>*7fS<*;3=y zvSOz$#=85xb(%3wnjzTf+pA%CVt4w3)$+T+^W7gDjYCq(c<&U7q%wEDOEgfD;N4PY zWx$5FtAidr&@*z%JR;^u@^)*d!_AvK8k^L=CPKu{8j#bwS1uJQl@d9FBhMpTS4Xvj zw}S~G5nI03?FqD;Dpk~RR}T%0DX_5ldLB-&ux8Z5v4LkgK3+bX)(*7Iio7_Oci1eg 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 x>Yg9dzGep&&`CNi!!F_|O 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�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%0Dcq57OLR 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%0D2=X@6E*Q>%FeWJRY$Cv3wl zMe%E7=7vPmc7=~sWRmRD_Kh#;up=bXvXZ^#MOvy!_ivL2!`aB}=R>(kfz zwaPIEJ?e$zV@xVrsuo=XJfIF@V|^+VT~iu$rleK%>;nJHpHca0??L6ZZfEJo%@5*B zjHw**FSZQ(RM${LV$A?}P5$qd&Mea+%o3HZu<%HQ%nx*%wq!&5lv8=d+0fK6kjFm; z?r%m`VHV!B(qkB`{8*F7*n$5o|J|ooXXp+?gfBXP1XcwCbYa4l`HJ-U7Xfc2`U>(# zGvB+yg{)iojr^{fbz`F`AdcXVeX)>LSwnj+luyaio}fyqZzQ#1vf7E#^Ej36s|k_Kj(=ebMUaAu>lmHpEe4zCni5|+(@ ze~cBiBQ$H`4Si&yZ7CZwmqpyLHSk0`rkq%%+J{kZw0_#W^kJhjR5=(A{%;%r#Je3< ztQwZ0NMwG6tl;kytVidlfBdf%X0{@8W!ex6^li>`@4RJ&2=g;$3oEO|ef=t^2I_kK zeBSWj+%y{}LAcj6;GU0E*EZ)B^^H-oEK?>e>zh)&HYIM5);dWISw2yky+brRMyYjc z`RvB*Zb?H^>Gag&22VL%qlW$(m;cu8q4Ty*7&@>R=oO6g5ZZcy;(HYxbBwE7+EW9o z0t1<%tTS4Mm`vHbI+LcjP-krcc%}l(Kvr!*>9G(aR{_>fJqpKo(Y{`og((Ro5AWWMR)UV2^v~bowOOT03zIWY-GW~=JMMK10t1<+` zGW-IccZ$mKjoqU>k*7CHz|4l>G`9uRRz$fs2G4`ty5Nhz)yupbXeGocAD7I_LQ->9 zZov$-unt(vRk39zNaeGUSj+LEjsQlp1=dMAScGw^W31*dr`bB&lu7GZ5nUVql5`iX-0JKm-219ZMYeV-jythAUrhU2<$i*6mHl^hW(+|Nc` z-c5QJgE1`k^fb@HJ$3Ea(2Mj;Sa#&^1E?xbTmcHQnmpH>nGE2c{elF=y{gyLV^UA) z3Og|R!^<4Lo02g8*BQZAu;m-!JHqZQo6r=u#OlAQwv}t+DJYfdmbc3q>#Lzl3*C!y zOE3u=-%BqRYUjtqPp!K2-jLs~h_w0PHK&R)u3EihvFw4|8X-L>d^ODGFrA~4*B3! zTD_Wj;$xU3ZRH_l${|5a30x%X45h0oQ1(tlviZy6$7L%wM5PM9P0-{$n!gwGUM0cj z5f74Ir7IYB6c5tVoz)4l-*!d%h5xRLtN}4t4ySNOw4FY%0D>o+^TP$3Mhe*@ueM-M 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 literal 0 HcmV?d00001 diff --git a/pom.xml b/pom.xml index cb78d56c..7d83800d 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ 4.0.0 Jobs jobs - 5.1.3.0 + 5.2.1.0 Jobs http://maven.apache.org @@ -197,7 +197,7 @@ CMILib latest system - ${basedir}/libs/CMILib1.2.4.5.jar + ${basedir}/libs/CMILib1.4.0.0.jar diff --git a/src/main/java/com/gamingmesh/jobs/Jobs.java b/src/main/java/com/gamingmesh/jobs/Jobs.java index 6d53931c..e9971e3f 100644 --- a/src/main/java/com/gamingmesh/jobs/Jobs.java +++ b/src/main/java/com/gamingmesh/jobs/Jobs.java @@ -116,6 +116,7 @@ import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.RawMessages.RawMessage; import net.Zrips.CMILib.Version.Version; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; public final class Jobs extends JavaPlugin { @@ -763,7 +764,7 @@ public final class Jobs extends JavaPlugin { } // register economy - getServer().getScheduler().runTask(this, new HookEconomyTask(this)); + CMIScheduler.get().runTask(new HookEconomyTask(this)); dao.loadBlockProtection(); getExploreManager().load(); diff --git a/src/main/java/com/gamingmesh/jobs/PlayerManager.java b/src/main/java/com/gamingmesh/jobs/PlayerManager.java index 190d378c..224963d1 100644 --- a/src/main/java/com/gamingmesh/jobs/PlayerManager.java +++ b/src/main/java/com/gamingmesh/jobs/PlayerManager.java @@ -69,6 +69,7 @@ import net.Zrips.CMILib.Logs.CMIDebug; import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.NBT.CMINBT; import net.Zrips.CMILib.Version.Version; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; public class PlayerManager { @@ -731,7 +732,7 @@ public class PlayerManager { } if (Jobs.getGCManager().FireworkLevelupUse && player != null) { - plugin.getServer().getScheduler().runTaskLater(plugin, new Runnable() { + CMIScheduler.get().runTaskLater(new Runnable() { @Override public void run() { if (!player.isOnline()) @@ -1064,7 +1065,6 @@ public class PlayerManager { } } - CMIDebug.d("get bonus item"); jitems.add(getJobsItemByNbt(item)); } } @@ -1201,7 +1201,7 @@ public class PlayerManager { if (!Jobs.getGCManager().AutoJobJoinUse || player == null || player.isOp()) return; - plugin.getServer().getScheduler().runTaskLater(plugin, new Runnable() { + CMIScheduler.get().runTaskLater(new Runnable() { @Override public void run() { if (!player.isOnline()) diff --git a/src/main/java/com/gamingmesh/jobs/Signs/SignUtil.java b/src/main/java/com/gamingmesh/jobs/Signs/SignUtil.java index a42941c2..949be3d8 100644 --- a/src/main/java/com/gamingmesh/jobs/Signs/SignUtil.java +++ b/src/main/java/com/gamingmesh/jobs/Signs/SignUtil.java @@ -23,6 +23,7 @@ import com.gamingmesh.jobs.container.TopList; import net.Zrips.CMILib.FileHandler.ConfigReader; import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.Version.Version; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; public class SignUtil { @@ -354,7 +355,7 @@ public class SignUtil { if (directionFacing != null && !(loc.getBlock().getState() instanceof Skull)) loc.add(directionFacing.getOppositeFace().getModX(), 0, directionFacing.getOppositeFace().getModZ()); - Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() { + CMIScheduler.get().runTaskLater(new Runnable() { @Override public void run() { if (!(loc.getBlock().getState() instanceof Skull)) diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/bp.java b/src/main/java/com/gamingmesh/jobs/commands/list/bp.java index 12f39dd8..a8217b30 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/bp.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/bp.java @@ -19,6 +19,7 @@ import net.Zrips.CMILib.Items.CMIMaterial; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.Version.Version; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; public class bp implements Cmd { @@ -78,19 +79,20 @@ public class bp implements Cmd { else Language.sendMessage(sender, "command.bp.output.found", "%amount%", changedBlocks.size()); - Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() { - @Override - public void run() { - if (Version.isCurrentEqualOrHigher(Version.v1_15_R1)) + if (!changedBlocks.isEmpty()) { + Location bloc = changedBlocks.get(0).getLocation(); + CMIScheduler.get().runAtLocationLater(bloc, () -> { + if (Version.isCurrentEqualOrHigher(Version.v1_15_R1)) { for (Block one : changedBlocks) { player.sendBlockChange(one.getLocation(), one.getBlockData()); } - else + } else { for (Block one : changedBlocks) { player.sendBlockChange(one.getLocation(), one.getType(), one.getData()); } - } - }, 120L); + } + }, 120L); + } return true; } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/convert.java b/src/main/java/com/gamingmesh/jobs/commands/list/convert.java index dbe929e1..fc6e8081 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/convert.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/convert.java @@ -1,6 +1,5 @@ package com.gamingmesh.jobs.commands.list; -import org.bukkit.Bukkit; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; @@ -10,28 +9,29 @@ import com.gamingmesh.jobs.dao.JobsManager.DataBaseType; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; public class convert implements Cmd { @Override public Boolean perform(Jobs plugin, CommandSender sender, String[] args) { - if (sender instanceof Player) { - CMIMessages.sendMessage(sender, LC.info_FromConsole); - return true; - } + if (sender instanceof Player) { + CMIMessages.sendMessage(sender, LC.info_FromConsole); + return true; + } - if (args.length > 0) { - return false; - } + if (args.length > 0) { + return false; + } - String from = Jobs.getDBManager().getDbType() == DataBaseType.SqLite ? "SQLite" : "MySQL"; - String to = Jobs.getDBManager().getDbType() == DataBaseType.SqLite ? "MySQL" : "SQLite"; + String from = Jobs.getDBManager().getDbType() == DataBaseType.SqLite ? "SQLite" : "MySQL"; + String to = Jobs.getDBManager().getDbType() == DataBaseType.SqLite ? "MySQL" : "SQLite"; - Bukkit.getScheduler().runTaskAsynchronously(plugin, () -> { - Jobs.convertDatabase(); - CMIMessages.consoleMessage("&eDatabase was converted from &2" + from + " &eto &2" + to + "&e!"); - }); + CMIScheduler.get().runTaskAsynchronously(() -> { + Jobs.convertDatabase(); + CMIMessages.consoleMessage("&eDatabase was converted from &2" + from + " &eto &2" + to + "&e!"); + }); - return true; + return true; } } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/glog.java b/src/main/java/com/gamingmesh/jobs/commands/list/glog.java index ffdf5171..7ef3ce0f 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/glog.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/glog.java @@ -19,6 +19,7 @@ import com.gamingmesh.jobs.i18n.Language; import com.gamingmesh.jobs.stuff.Sorting; import net.Zrips.CMILib.Time.CMITimeManager; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; public class glog implements Cmd { @@ -28,7 +29,7 @@ public class glog implements Cmd { return false; } - Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() { + CMIScheduler.get().runTaskAsynchronously(new Runnable() { @Override public void run() { Map unsortMap = new HashMap<>(); diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/leave.java b/src/main/java/com/gamingmesh/jobs/commands/list/leave.java index 76ac0762..8902092f 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/leave.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/leave.java @@ -12,6 +12,7 @@ import com.gamingmesh.jobs.stuff.Util; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; public class leave implements Cmd { @@ -44,7 +45,7 @@ public class leave implements Cmd { if (!Util.LEAVECONFIRM.contains(uuid)) { Util.LEAVECONFIRM.add(uuid); - plugin.getServer().getScheduler().runTaskLater(plugin, () -> Util.LEAVECONFIRM.remove(uuid), + CMIScheduler.get().runTaskLater(() -> Util.LEAVECONFIRM.remove(uuid), 20 * Jobs.getGCManager().ConfirmExpiryTime); Language.sendMessage(sender, "command.leave.confirmationNeed", "[jobname]", diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/leaveall.java b/src/main/java/com/gamingmesh/jobs/commands/list/leaveall.java index d1ecb80c..79ed8e4b 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/leaveall.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/leaveall.java @@ -14,6 +14,7 @@ import com.gamingmesh.jobs.stuff.Util; import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Messages.CMIMessages; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; public class leaveall implements Cmd { @@ -39,7 +40,7 @@ public class leaveall implements Cmd { if (!Util.LEAVECONFIRM.contains(uuid)) { Util.LEAVECONFIRM.add(uuid); - plugin.getServer().getScheduler().runTaskLater(plugin, () -> Util.LEAVECONFIRM.remove(uuid), + CMIScheduler.get().runTaskLater(() -> Util.LEAVECONFIRM.remove(uuid), 20 * Jobs.getGCManager().ConfirmExpiryTime); Language.sendMessage(pSender, "command.leaveall.confirmationNeed", "[time]", diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/limit.java b/src/main/java/com/gamingmesh/jobs/commands/list/limit.java index d54c547d..72d30567 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/limit.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/limit.java @@ -56,7 +56,6 @@ public class limit implements Cmd { PaymentData limit = JPlayer.getPaymentLimit(); if (limit.getLeftTime(type) <= 0) { - CMIDebug.d("reset", type); limit.resetLimits(type); } diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java b/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java index c630df56..e2c856ff 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/skipquest.java @@ -16,6 +16,7 @@ import com.gamingmesh.jobs.economy.BufferedEconomy; import com.gamingmesh.jobs.i18n.Language; import net.Zrips.CMILib.Locale.LC; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; public class skipquest implements Cmd { @@ -114,7 +115,7 @@ public class skipquest implements Cmd { if (!Util.SKIPCONFIRM.contains(uuid)) { Util.SKIPCONFIRM.add(uuid); - plugin.getServer().getScheduler().runTaskLater(plugin, () -> Util.SKIPCONFIRM.remove(uuid), + CMIScheduler.get().runTaskLater(() -> Util.SKIPCONFIRM.remove(uuid), 20 * Jobs.getGCManager().ConfirmExpiryTime); Language.sendMessage(sender, "command.skipquest.confirmationNeed", "[questName]", diff --git a/src/main/java/com/gamingmesh/jobs/commands/list/version.java b/src/main/java/com/gamingmesh/jobs/commands/list/version.java index ebe8c6a6..80466244 100644 --- a/src/main/java/com/gamingmesh/jobs/commands/list/version.java +++ b/src/main/java/com/gamingmesh/jobs/commands/list/version.java @@ -13,6 +13,7 @@ import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.RawMessages.RawMessage; import net.Zrips.CMILib.Util.CMIVersionChecker; import net.Zrips.CMILib.Version.Version; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; import net.milkbowl.vault.economy.Economy; public class version implements Cmd { @@ -20,7 +21,7 @@ public class version implements Cmd { @Override public Boolean perform(Jobs plugin, final CommandSender sender, final String[] args) { - Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() { + CMIScheduler.get().runTaskAsynchronously(new Runnable() { @Override public void run() { @@ -62,7 +63,7 @@ public class version implements Cmd { final String vault = preVault; final String vaultProvider = vProvider; - Bukkit.getScheduler().runTask(plugin, new Runnable() { + CMIScheduler.get().runTask(new Runnable() { @Override public void run() { diff --git a/src/main/java/com/gamingmesh/jobs/config/BlockProtectionManager.java b/src/main/java/com/gamingmesh/jobs/config/BlockProtectionManager.java index fe56cf8a..c4e56e14 100644 --- a/src/main/java/com/gamingmesh/jobs/config/BlockProtectionManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/BlockProtectionManager.java @@ -16,6 +16,7 @@ import com.gamingmesh.jobs.container.DBAction; import net.Zrips.CMILib.Container.CMIBlock; import net.Zrips.CMILib.Container.CMIBlock.Bisect; import net.Zrips.CMILib.Items.CMIMaterial; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; public class BlockProtectionManager { @@ -39,7 +40,7 @@ public class BlockProtectionManager { } public void add(Block block, Integer cd) { - + if (cd == null || cd == 0) return; @@ -81,7 +82,7 @@ public class BlockProtectionManager { if (time == null || time == 0) return null; - + String v = loc.getBlockX() + ":" + loc.getBlockY() + ":" + loc.getBlockZ(); HashMap>> regions = map.getOrDefault(loc.getWorld(), new HashMap<>()); @@ -97,8 +98,8 @@ public class BlockProtectionManager { Bp = new BlockProtection(DBAction.INSERT, loc.getBlockX(), loc.getBlockY(), loc.getBlockZ()); else { Bp.setAction(DBAction.UPDATE); - if (Bp.getSchedId() > -1) - Bukkit.getServer().getScheduler().cancelTask(Bp.getSchedId()); + if (Bp.getScheduler() != null) + Bp.getScheduler().cancel(); } Bp.setPaid(paid); @@ -106,7 +107,7 @@ public class BlockProtectionManager { // If timer is under 2 hours, we can run scheduler to remove it when time comes if (time > -1 && (time - System.currentTimeMillis()) / 1000 < 60 * 60 * 2) - Bp.setSchedId(Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(Jobs.getInstance(), () -> { + Bp.setScheduler(CMIScheduler.get().runTaskLater(() -> { remove(loc); }, (time - System.currentTimeMillis()) / 50)); @@ -116,7 +117,7 @@ public class BlockProtectionManager { map.put(loc.getWorld(), regions); // Only saving into save cache if timer is higher than 5 minutes - if (cache && ((time - System.currentTimeMillis()) / 1000 > 60 * 5 || time < 0) ) + if (cache && ((time - System.currentTimeMillis()) / 1000 > 60 * 5 || time < 0)) addToCache(loc, Bp); return Bp; } @@ -186,7 +187,7 @@ public class BlockProtectionManager { world.remove(locToRegion(loc)); return bp; - } + } public Long getTime(Block block) { return getTime(block.getLocation()); diff --git a/src/main/java/com/gamingmesh/jobs/config/BossBarManager.java b/src/main/java/com/gamingmesh/jobs/config/BossBarManager.java index 95863c40..06db254a 100644 --- a/src/main/java/com/gamingmesh/jobs/config/BossBarManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/BossBarManager.java @@ -13,6 +13,7 @@ import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.stuff.ToggleBarHandling; import net.Zrips.CMILib.Version.Version; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; public class BossBarManager { @@ -36,7 +37,7 @@ public class BossBarManager { public void ShowJobProgression(final JobsPlayer player, final JobProgression jobProg, double expGain) { if (Jobs.getGCManager().isBossBarAsync()) { - Bukkit.getScheduler().runTaskAsynchronously(Jobs.getInstance(), () -> ShowJobProgressionInTask(player, jobProg, expGain)); + CMIScheduler.get().runTaskAsynchronously(() -> ShowJobProgressionInTask(player, jobProg, expGain)); } else { ShowJobProgressionInTask(player, jobProg, expGain); } @@ -139,7 +140,7 @@ public class BossBarManager { bar.setVisible(true); if (oldOne != null) - oldOne.setId(Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() { + oldOne.setScheduler(CMIScheduler.get().runTaskLater(new Runnable() { @Override public void run() { for (BossBarInfo one : player.getBossBarInfo()) { diff --git a/src/main/java/com/gamingmesh/jobs/config/ScheduleManager.java b/src/main/java/com/gamingmesh/jobs/config/ScheduleManager.java index e2a33536..3c274749 100644 --- a/src/main/java/com/gamingmesh/jobs/config/ScheduleManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/ScheduleManager.java @@ -10,7 +10,6 @@ import java.util.List; import org.bukkit.Bukkit; import org.bukkit.configuration.ConfigurationSection; import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.scheduler.BukkitTask; import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.api.JobsScheduleStartEvent; @@ -21,12 +20,14 @@ import com.gamingmesh.jobs.container.Job; import com.gamingmesh.jobs.container.Schedule; import net.Zrips.CMILib.Messages.CMIMessages; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; +import net.Zrips.CMILib.Version.Schedulers.CMITask; public class ScheduleManager { private Jobs plugin; - private BukkitTask timer; + private CMITask timer; private YmlMaker jobSchedule; public static final List BOOSTSCHEDULE = new ArrayList<>(); @@ -44,7 +45,7 @@ public class ScheduleManager { return; cancel(); - timer = Bukkit.getScheduler().runTaskTimer(plugin, this::scheduler, 20, 30 * 20L); + timer = CMIScheduler.get().scheduleSyncRepeatingTask(this::scheduler, 20, 30 * 20L); } public void cancel() { diff --git a/src/main/java/com/gamingmesh/jobs/container/BlockProtection.java b/src/main/java/com/gamingmesh/jobs/container/BlockProtection.java index b3f0a4b4..561e9aa3 100644 --- a/src/main/java/com/gamingmesh/jobs/container/BlockProtection.java +++ b/src/main/java/com/gamingmesh/jobs/container/BlockProtection.java @@ -2,13 +2,15 @@ package com.gamingmesh.jobs.container; import org.bukkit.util.Vector; +import net.Zrips.CMILib.Version.Schedulers.CMITask; + public class BlockProtection { private static long pre = (int) (System.currentTimeMillis() / 10000000000L) * 10000000000L; private int id = -1; - private int schedId = - 1; - private int time = -1; + private CMITask scheduler = null; + private int time = -1; private int recorded = -1; private DBAction action; private boolean paid = false; @@ -17,109 +19,109 @@ public class BlockProtection { private int z = 0; public BlockProtection(Vector pos) { - this(DBAction.INSERT, pos); + this(DBAction.INSERT, pos); } @Deprecated public BlockProtection(DBAction action, Vector pos) { - this(action, pos.getBlockX(), pos.getBlockY(), pos.getBlockZ()); + this(action, pos.getBlockX(), pos.getBlockY(), pos.getBlockZ()); } public BlockProtection(DBAction action, int x, int y, int z) { - this.action = action; - if (action == DBAction.NONE) - action = null; - this.x = x; - this.y = y; - this.z = z; + this.action = action; + if (action == DBAction.NONE) + action = null; + this.x = x; + this.y = y; + this.z = z; } public long getTime() { - return deconvert(time); + return deconvert(time); } private static int convert(long time) { - return time == -1L ? -1 : (int) ((time - pre) / 1000L); + return time == -1L ? -1 : (int) ((time - pre) / 1000L); } private static long deconvert(int time) { - return time == -1 ? -1 : (time * 1000L) + pre; + return time == -1 ? -1 : (time * 1000L) + pre; } public void setTime(long time) { - this.time = time == -1 ? -1 : convert(time); - this.recorded = convert(System.currentTimeMillis()); + this.time = time == -1 ? -1 : convert(time); + this.recorded = convert(System.currentTimeMillis()); } public DBAction getAction() { - return action == null ? DBAction.NONE : action; + return action == null ? DBAction.NONE : action; } public void setAction(DBAction action) { - if (action == DBAction.NONE) - action = null; - this.action = action; + if (action == DBAction.NONE) + action = null; + this.action = action; } public long getRecorded() { - return deconvert(recorded); + return deconvert(recorded); } public boolean isPaid() { - return paid; + return paid; } public void setPaid(boolean paid) { - this.paid = paid; + this.paid = paid; } public void setRecorded(long recorded) { - this.recorded = convert(recorded); + this.recorded = convert(recorded); } public int getId() { - return id; + return id; } public void setId(int id) { - this.id = id; + this.id = id; } @Deprecated public Vector getPos() { - return new Vector(x, y, z); + return new Vector(x, y, z); } @Deprecated public void setPos(Vector pos) { - x = pos.getBlockX(); - y = pos.getBlockY(); - z = pos.getBlockZ(); + x = pos.getBlockX(); + y = pos.getBlockY(); + z = pos.getBlockZ(); } public void setPos(int x, int y, int z) { - this.x = x; - this.y = y; - this.z = z; + this.x = x; + this.y = y; + this.z = z; } public int getX() { - return x; + return x; } public int getY() { - return y; + return y; } public int getZ() { - return z; + return z; } - public int getSchedId() { - return schedId; + public CMITask getScheduler() { + return scheduler; } - public void setSchedId(int schedId) { - this.schedId = schedId; + public void setScheduler(CMITask cmiTask) { + this.scheduler = cmiTask; } } diff --git a/src/main/java/com/gamingmesh/jobs/container/BossBarInfo.java b/src/main/java/com/gamingmesh/jobs/container/BossBarInfo.java index e7ba1994..bb98e0ca 100644 --- a/src/main/java/com/gamingmesh/jobs/container/BossBarInfo.java +++ b/src/main/java/com/gamingmesh/jobs/container/BossBarInfo.java @@ -1,13 +1,14 @@ package com.gamingmesh.jobs.container; -import org.bukkit.Bukkit; import org.bukkit.boss.BossBar; +import net.Zrips.CMILib.Version.Schedulers.CMITask; + public class BossBarInfo { private String jobName; private String PlayerName; private BossBar bar; - private int id = -1; + private CMITask scheduler = null; public BossBarInfo(String PlayerName, String jobName, BossBar bar) { this.PlayerName = PlayerName; @@ -15,14 +16,14 @@ public class BossBarInfo { this.bar = bar; } - public void setId(int id) { + public void setScheduler(CMITask cmiTask) { cancel(); - this.id = id; + this.scheduler = cmiTask; } public void cancel() { - if (id != -1) - Bukkit.getScheduler().cancelTask(this.id); + if (scheduler != null) + scheduler.cancel(); } public String getPlayerName() { diff --git a/src/main/java/com/gamingmesh/jobs/container/Job.java b/src/main/java/com/gamingmesh/jobs/container/Job.java index de82f577..cdf3a685 100644 --- a/src/main/java/com/gamingmesh/jobs/container/Job.java +++ b/src/main/java/com/gamingmesh/jobs/container/Job.java @@ -232,13 +232,14 @@ public class Job { e.printStackTrace(); } - CMIDebug.d("Now", now, this.getName(), getTotalPlayers(), now == Double.POSITIVE_INFINITY); - if (now > Jobs.getGCManager().DynamicPaymentMaxBonus) now = Jobs.getGCManager().DynamicPaymentMaxBonus; if (now < Jobs.getGCManager().DynamicPaymentMaxPenalty) now = Jobs.getGCManager().DynamicPaymentMaxPenalty; + + if (Double.isNaN(now)) + now = 0; this.bonus = now; } @@ -309,6 +310,7 @@ public class Job { }; String shortActionName = CMIMaterial.getGeneralMaterialName(action.getName()); + for (JobInfo info : getJobInfo(action.getType())) { if (condition.test(info, action)) { if (!info.isInLevelRange(level)) { diff --git a/src/main/java/com/gamingmesh/jobs/container/JobsPlayer.java b/src/main/java/com/gamingmesh/jobs/container/JobsPlayer.java index 126fc30a..0a51170f 100644 --- a/src/main/java/com/gamingmesh/jobs/container/JobsPlayer.java +++ b/src/main/java/com/gamingmesh/jobs/container/JobsPlayer.java @@ -47,6 +47,8 @@ import net.Zrips.CMILib.Equations.Parser; import net.Zrips.CMILib.Items.CMIMaterial; import net.Zrips.CMILib.Logs.CMIDebug; import net.Zrips.CMILib.Time.CMITimeManager; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; +import net.Zrips.CMILib.Version.Schedulers.CMITask; public class JobsPlayer { @@ -1347,14 +1349,14 @@ public class JobsPlayer { this.doneQuests = doneQuests; } - private Integer questSignUpdateShed; + private CMITask questSignUpdateShed; public void addDoneQuest(final Job job) { doneQuests++; setSaved(false); if (questSignUpdateShed == null) { - questSignUpdateShed = plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, () -> { + questSignUpdateShed = CMIScheduler.get().runTaskLater(() -> { Jobs.getSignUtil().signUpdate(job, SignTopType.questtoplist); questSignUpdateShed = null; }, Jobs.getGCManager().getSavePeriod() * 60 * 20L); diff --git a/src/main/java/com/gamingmesh/jobs/dao/JobsDAO.java b/src/main/java/com/gamingmesh/jobs/dao/JobsDAO.java index 0ec3d9ec..d5ab5b50 100644 --- a/src/main/java/com/gamingmesh/jobs/dao/JobsDAO.java +++ b/src/main/java/com/gamingmesh/jobs/dao/JobsDAO.java @@ -45,6 +45,7 @@ import com.gamingmesh.jobs.stuff.Util; import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.Time.CMITimeManager; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; public abstract class JobsDAO { @@ -1016,7 +1017,7 @@ public abstract class JobsDAO { public void triggerTableIdUpdate() { // Lets convert old fields if (!converted) { - Bukkit.getServer().getScheduler().runTaskLater(plugin, () -> { + CMIScheduler.get().runTaskLater(() -> { CMIMessages.consoleMessage("&6[Jobs] Converting to new database format"); convertID(); CMIMessages.consoleMessage("&6[Jobs] Converted to new database format"); diff --git a/src/main/java/com/gamingmesh/jobs/economy/BufferedEconomy.java b/src/main/java/com/gamingmesh/jobs/economy/BufferedEconomy.java index 2658850b..bc74333d 100644 --- a/src/main/java/com/gamingmesh/jobs/economy/BufferedEconomy.java +++ b/src/main/java/com/gamingmesh/jobs/economy/BufferedEconomy.java @@ -38,6 +38,7 @@ import com.gamingmesh.jobs.tasks.BufferedPaymentTask; import net.Zrips.CMILib.ActionBar.CMIActionBar; import net.Zrips.CMILib.Version.Version; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; public class BufferedEconomy { @@ -208,9 +209,9 @@ public class BufferedEconomy { } if (Jobs.getGCManager().isEconomyAsync()) - Bukkit.getScheduler().runTaskLaterAsynchronously(plugin, new BufferedPaymentTask(this, economy, payment), i); + CMIScheduler.get().runLaterAsync(new BufferedPaymentTask(this, economy, payment), i); else - Bukkit.getScheduler().runTaskLater(plugin, new BufferedPaymentTask(this, economy, payment), i); + CMIScheduler.get().runTaskLater(new BufferedPaymentTask(this, economy, payment), i); // Show players payment stuff showPayment(payment); diff --git a/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java b/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java index 0d59442e..ed1a91b7 100644 --- a/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java +++ b/src/main/java/com/gamingmesh/jobs/listeners/JobsListener.java @@ -91,6 +91,7 @@ import net.Zrips.CMILib.Logs.CMIDebug; import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.NBT.CMINBT; import net.Zrips.CMILib.Version.Version; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; public class JobsListener implements Listener { @@ -170,7 +171,7 @@ public class JobsListener implements Listener { if (!Jobs.getGCManager().MultiServerCompatability()) Jobs.getPlayerManager().playerJoin(event.getPlayer()); else { - plugin.getServer().getScheduler().runTaskLater(plugin, () -> Jobs.getPlayerManager().playerJoin(event.getPlayer()), 40L); + CMIScheduler.get().runTaskLater(() -> Jobs.getPlayerManager().playerJoin(event.getPlayer()), 40L); } } @@ -317,7 +318,7 @@ public class JobsListener implements Listener { event.setCancelled(true); - plugin.getServer().getScheduler().runTaskLater(plugin, () -> signUtil.signUpdate(job, type), 1L); + CMIScheduler.get().runTaskLater(() -> signUtil.signUpdate(job, type), 1L); } @EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true) @@ -375,14 +376,14 @@ public class JobsListener implements Listener { @EventHandler(priority = EventPriority.LOW, ignoreCancelled = true) public void onCropGrown(final BlockGrowEvent event) { if (Jobs.getGCManager().canPerformActionInWorld(event.getBlock().getWorld())) { - plugin.getServer().getScheduler().runTaskLater(plugin, () -> Jobs.getBpManager().remove(event.getBlock()), 1L); + CMIScheduler.get().runAtLocationLater(event.getBlock().getLocation(), () -> Jobs.getBpManager().remove(event.getBlock()), 1L); } } @EventHandler(priority = EventPriority.LOW, ignoreCancelled = true) public void onTreeGrown(final StructureGrowEvent event) { if (!event.getBlocks().isEmpty() && Jobs.getGCManager().canPerformActionInWorld(event.getBlocks().get(0).getWorld())) { - plugin.getServer().getScheduler().runTaskLater(plugin, () -> event.getBlocks().forEach(blockState -> Jobs.getBpManager().remove(blockState.getBlock())), 1L); + CMIScheduler.get().runAtLocationLater(event.getBlocks().get(0).getLocation(), () -> event.getBlocks().forEach(blockState -> Jobs.getBpManager().remove(blockState.getBlock())), 1L); } } diff --git a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java index 8f2f5509..ba81b0f1 100644 --- a/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java +++ b/src/main/java/com/gamingmesh/jobs/listeners/JobsPaymentListener.java @@ -133,6 +133,7 @@ import net.Zrips.CMILib.Locale.LC; import net.Zrips.CMILib.Logs.CMIDebug; import net.Zrips.CMILib.Messages.CMIMessages; import net.Zrips.CMILib.Version.Version; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; public final class JobsPaymentListener implements Listener { @@ -795,7 +796,7 @@ public final class JobsPaymentListener implements Listener { preInv[i] = preInv[i].clone(); } - Bukkit.getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() { + CMIScheduler.get().runTaskLater(new Runnable() { @Override public void run() { final ItemStack[] postInv = player.getInventory().getContents(); @@ -1315,7 +1316,7 @@ public final class JobsPaymentListener implements Listener { // So lets remove meta in case some plugin removes entity in wrong way. // Need to delay action for other function to properly check for existing meta data relating to this entity before clearing it out // Longer delay is needed due to mob split event being fired few seconds after mob dies and not at same time - Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(plugin, () -> { + CMIScheduler.get().runTaskLater(() -> { lVictim.removeMetadata(Jobs.getPlayerManager().getMobSpawnerMetadata(), plugin); }, 200L); } catch (Throwable ignored) { @@ -1839,7 +1840,7 @@ public final class JobsPaymentListener implements Listener { // or it's 1.16+ and we're trying to strip a fungi like warped stem if ((Version.isCurrentEqualOrHigher(Version.v1_13_R1) && (block.getType().toString().endsWith("_LOG") || block.getType().toString().endsWith("_WOOD"))) || (Version.isCurrentEqualOrHigher(Version.v1_16_R1) && (block.getType().toString().endsWith("_STEM") || block.getType().toString().endsWith("_HYPHAE")))) { - Bukkit.getScheduler().scheduleSyncDelayedTask(plugin, () -> Jobs.action(jPlayer, new BlockActionInfo(block, ActionType.STRIPLOGS), block), 1); + CMIScheduler.get().runTaskLater(() -> Jobs.action(jPlayer, new BlockActionInfo(block, ActionType.STRIPLOGS), block), 1); } } } diff --git a/src/main/java/com/gamingmesh/jobs/stuff/VersionChecker.java b/src/main/java/com/gamingmesh/jobs/stuff/VersionChecker.java index 7a3843db..d71b702e 100644 --- a/src/main/java/com/gamingmesh/jobs/stuff/VersionChecker.java +++ b/src/main/java/com/gamingmesh/jobs/stuff/VersionChecker.java @@ -13,53 +13,54 @@ import org.bukkit.entity.Player; import com.gamingmesh.jobs.Jobs; import net.Zrips.CMILib.Messages.CMIMessages; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; public final class VersionChecker { private Jobs plugin; public VersionChecker(Jobs plugin) { - this.plugin = plugin; + this.plugin = plugin; } public void VersionCheck(final Player player) { - if (!Jobs.getGCManager().isShowNewVersion()) - return; + if (!Jobs.getGCManager().isShowNewVersion()) + return; - plugin.getServer().getScheduler().runTaskAsynchronously(plugin, () -> { - String newVersion = getNewVersion(); - if (newVersion == null) - return; + CMIScheduler.get().runTaskAsynchronously(() -> { + String newVersion = getNewVersion(); + if (newVersion == null) + return; - int currentVersion = Integer.parseInt(plugin.getDescription().getVersion().replace(".", "")); - int newVer = Integer.parseInt(newVersion.replace(".", "")); + int currentVersion = Integer.parseInt(plugin.getDescription().getVersion().replace(".", "")); + int newVer = Integer.parseInt(newVersion.replace(".", "")); - if (newVer <= currentVersion || currentVersion >= newVer) - return; + if (newVer <= currentVersion || currentVersion >= newVer) + return; - List msg = Arrays.asList( - ChatColor.GREEN + "*********************** " + plugin.getDescription().getName() + " **************************", - ChatColor.GREEN + "* " + newVersion + " is now available! Your version: " + currentVersion, - ChatColor.GREEN + "* " + ChatColor.DARK_GREEN + plugin.getDescription().getWebsite(), - ChatColor.GREEN + "************************************************************"); - for (String one : msg) - if (player != null) - player.sendMessage(one); - else - CMIMessages.consoleMessage(one); - }); + List msg = Arrays.asList( + ChatColor.GREEN + "*********************** " + plugin.getDescription().getName() + " **************************", + ChatColor.GREEN + "* " + newVersion + " is now available! Your version: " + currentVersion, + ChatColor.GREEN + "* " + ChatColor.DARK_GREEN + plugin.getDescription().getWebsite(), + ChatColor.GREEN + "************************************************************"); + for (String one : msg) + if (player != null) + player.sendMessage(one); + else + CMIMessages.consoleMessage(one); + }); } public String getNewVersion() { - try { - URLConnection con = new URL("https://api.spigotmc.org/legacy/update.php?resource=4216").openConnection(); - String version = new BufferedReader(new InputStreamReader(con.getInputStream())).readLine(); - if (version.length() <= 8) - return version; - } catch (Throwable t) { - CMIMessages.consoleMessage("&cFailed to check for " + plugin.getDescription().getName() + " update on spigot web page."); - } - return null; + try { + URLConnection con = new URL("https://api.spigotmc.org/legacy/update.php?resource=4216").openConnection(); + String version = new BufferedReader(new InputStreamReader(con.getInputStream())).readLine(); + if (version.length() <= 8) + return version; + } catch (Throwable t) { + CMIMessages.consoleMessage("&cFailed to check for " + plugin.getDescription().getName() + " update on spigot web page."); + } + return null; } } diff --git a/src/main/java/com/gamingmesh/jobs/stuff/complement/JobsChatEvent.java b/src/main/java/com/gamingmesh/jobs/stuff/complement/JobsChatEvent.java index d50e8301..c6206c58 100644 --- a/src/main/java/com/gamingmesh/jobs/stuff/complement/JobsChatEvent.java +++ b/src/main/java/com/gamingmesh/jobs/stuff/complement/JobsChatEvent.java @@ -9,6 +9,8 @@ import com.gamingmesh.jobs.Jobs; import com.gamingmesh.jobs.container.JobsPlayer; import com.gamingmesh.jobs.stuff.Util; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; + @SuppressWarnings("deprecation") public class JobsChatEvent implements Listener { @@ -25,8 +27,7 @@ public class JobsChatEvent implements Listener { final String msg = Util.getJobsEditorMap().remove(event.getPlayer().getUniqueId()); if (msg != null) { - plugin.getServer().getScheduler().runTask(plugin, - () -> event.getPlayer().performCommand(msg + event.getMessage())); + CMIScheduler.get().runTask(() -> event.getPlayer().performCommand(msg + event.getMessage())); event.setCancelled(true); } } diff --git a/src/main/java/com/gamingmesh/jobs/stuff/complement/KyoriChatEvent.java b/src/main/java/com/gamingmesh/jobs/stuff/complement/KyoriChatEvent.java index bb223640..f3b5242c 100644 --- a/src/main/java/com/gamingmesh/jobs/stuff/complement/KyoriChatEvent.java +++ b/src/main/java/com/gamingmesh/jobs/stuff/complement/KyoriChatEvent.java @@ -10,6 +10,7 @@ import com.gamingmesh.jobs.stuff.Util; import io.papermc.paper.chat.ChatRenderer; import io.papermc.paper.event.player.AsyncChatEvent; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; import net.kyori.adventure.text.TextReplacementConfig; public final class KyoriChatEvent extends Complement2 implements Listener { @@ -17,45 +18,44 @@ public final class KyoriChatEvent extends Complement2 implements Listener { private Jobs plugin; public KyoriChatEvent(Jobs plugin) { - this.plugin = plugin; + this.plugin = plugin; } @EventHandler(priority = EventPriority.NORMAL) public void asyncChatEvent(final AsyncChatEvent event) { - if (event.isCancelled() || Util.getJobsEditorMap().isEmpty()) - return; + if (event.isCancelled() || Util.getJobsEditorMap().isEmpty()) + return; - final String msg = Util.getJobsEditorMap().remove(event.getPlayer().getUniqueId()); - if (msg != null) { - plugin.getServer().getScheduler().runTask(plugin, - () -> event.getPlayer().performCommand(msg + serialize(event.message()))); - event.setCancelled(true); - } + final String msg = Util.getJobsEditorMap().remove(event.getPlayer().getUniqueId()); + if (msg != null) { + CMIScheduler.get().runTask(() -> event.getPlayer().performCommand(msg + serialize(event.message()))); + event.setCancelled(true); + } } // Adding to chat prefix job name @EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true) public void onPlayerChat(AsyncChatEvent event) { - if (!Jobs.getGCManager().getModifyChat()) - return; + if (!Jobs.getGCManager().getModifyChat()) + return; - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(event.getPlayer()); - String honorific = jPlayer != null ? jPlayer.getDisplayHonorific() : ""; - if (honorific.equals(" ")) - honorific = ""; + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(event.getPlayer()); + String honorific = jPlayer != null ? jPlayer.getDisplayHonorific() : ""; + if (honorific.equals(" ")) + honorific = ""; - // TODO displayName returns the player display name not the chat component from - // chat plugins, like Essentials - // Now there is a parameter "player", so literally we need to add 800+ chat plugins - // to this plugin as dependency? - // 3rd attempt: now we tried to use text replacement config builder to match the variable - // result: instead of replacing the variable, now the chat message never been sent - //event.composer((player, displayName, msg) -> msg - //.replaceText(TextReplacementConfig.builder().match("{jobs}").once().replacement(h).build())); + // TODO displayName returns the player display name not the chat component from + // chat plugins, like Essentials + // Now there is a parameter "player", so literally we need to add 800+ chat plugins + // to this plugin as dependency? + // 3rd attempt: now we tried to use text replacement config builder to match the variable + // result: instead of replacing the variable, now the chat message never been sent + //event.composer((player, displayName, msg) -> msg + //.replaceText(TextReplacementConfig.builder().match("{jobs}").once().replacement(h).build())); - event.message(ChatRenderer.defaultRenderer().render(event.getPlayer(), event.getPlayer().displayName(), event.message(), event.getPlayer()).replaceText(TextReplacementConfig.builder().match( - "\\{jobs\\}").replacement(honorific).build())); - // 4th attempt: composeChat -> doing nothing + event.message(ChatRenderer.defaultRenderer().render(event.getPlayer(), event.getPlayer().displayName(), event.message(), event.getPlayer()).replaceText(TextReplacementConfig.builder().match( + "\\{jobs\\}").replacement(honorific).build())); + // 4th attempt: composeChat -> doing nothing // event.message(ChatComposer.DEFAULT.composeChat(event.getPlayer(), event.getPlayer().displayName(), event.message()) // .replaceText(TextReplacementConfig.builder().match("\\{jobs\\}").replacement(honorific).build())); } @@ -63,22 +63,22 @@ public final class KyoriChatEvent extends Complement2 implements Listener { // Changing chat prefix variable to job name @EventHandler(priority = EventPriority.LOW, ignoreCancelled = true) public void onPlayerChatLow(AsyncChatEvent event) { - onPlayerChatHigh(event); + onPlayerChatHigh(event); } // Changing chat prefix variable to job name @EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true) public void onPlayerChatHigh(AsyncChatEvent event) { - if (Jobs.getGCManager().getModifyChat()) - return; + if (Jobs.getGCManager().getModifyChat()) + return; - JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(event.getPlayer()); - String honorific = jPlayer != null ? jPlayer.getDisplayHonorific() : ""; - if (honorific.equals(" ")) - honorific = ""; + JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(event.getPlayer()); + String honorific = jPlayer != null ? jPlayer.getDisplayHonorific() : ""; + if (honorific.equals(" ")) + honorific = ""; - event.message(ChatRenderer.defaultRenderer().render(event.getPlayer(), event.getPlayer().displayName(), event.message(), event.getPlayer()).replaceText(TextReplacementConfig.builder().match( - "\\{jobs\\}").replacement(honorific).build())); + event.message(ChatRenderer.defaultRenderer().render(event.getPlayer(), event.getPlayer().displayName(), event.message(), event.getPlayer()).replaceText(TextReplacementConfig.builder().match( + "\\{jobs\\}").replacement(honorific).build())); // event.message(ChatComposer.DEFAULT // .composeChat(event.getPlayer(), event.getPlayer().displayName(), event.message()) diff --git a/src/main/java/com/gamingmesh/jobs/tasks/BufferedPaymentTask.java b/src/main/java/com/gamingmesh/jobs/tasks/BufferedPaymentTask.java index 11ce1ae2..c5afd8a1 100644 --- a/src/main/java/com/gamingmesh/jobs/tasks/BufferedPaymentTask.java +++ b/src/main/java/com/gamingmesh/jobs/tasks/BufferedPaymentTask.java @@ -24,6 +24,8 @@ import com.gamingmesh.jobs.economy.BufferedEconomy; import com.gamingmesh.jobs.economy.BufferedPayment; import com.gamingmesh.jobs.economy.Economy; +import net.Zrips.CMILib.Version.Schedulers.CMIScheduler; + public class BufferedPaymentTask implements Runnable { private BufferedEconomy bufferedEconomy; @@ -41,7 +43,7 @@ public class BufferedPaymentTask implements Runnable { double money = payment.get(CurrencyType.MONEY); if (money > 0) { if (Jobs.getGCManager().isEconomyAsync()) { - org.bukkit.Bukkit.getScheduler().runTaskAsynchronously(bufferedEconomy.getPlugin(), () -> economy.depositPlayer(payment.getOfflinePlayer(), money)); + CMIScheduler.get().runTaskAsynchronously(() -> economy.depositPlayer(payment.getOfflinePlayer(), money)); } else { economy.depositPlayer(payment.getOfflinePlayer(), money); } diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 80247c41..b3c422a8 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -3,6 +3,7 @@ description: Jobs plugin for the BukkitAPI main: com.gamingmesh.jobs.Jobs version: ${project.version} api-version: "1.13" +folia-supported: true website: https://www.spigotmc.org/resources/4216/ authors: [Zrips] contributors: [montlikadani]