From 9e0df82a567c0601b15cfb056bfe0d53ec2d1b9f Mon Sep 17 00:00:00 2001 From: Druzai Date: Wed, 11 Jan 2023 00:43:23 +0300 Subject: [PATCH 1/2] Fixed finding http link in message Renamed method for consistency Moved parchment version to properties --- build.gradle | 2 +- gradle.properties | 3 ++- .../java/com/cazsius/deathquotes/event/ModEventListener.java | 2 +- src/main/java/com/cazsius/deathquotes/utils/Funcs.java | 4 ++-- 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/build.gradle b/build.gradle index d97d101..d358987 100644 --- a/build.gradle +++ b/build.gradle @@ -40,7 +40,7 @@ minecraft { // // Use non-default mappings at your own risk. They may not always work. // Simply re-run your setup task after changing the mappings to update your workspace. - mappings channel: 'parchment', version: '2022.11.06-1.18.2' + mappings channel: 'parchment', version: "${project.parchment_version}-${project.minecraft_version}" // Default run configurations. // These can be tweaked, removed, or duplicated as needed. diff --git a/gradle.properties b/gradle.properties index 6c2ac6b..d4d6c54 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,4 +5,5 @@ org.gradle.daemon=false mod_version=3.0 minecraft_version=1.18.2 -forge_version=40.0.44 \ No newline at end of file +forge_version=40.0.44 +parchment_version=2022.11.06 \ No newline at end of file diff --git a/src/main/java/com/cazsius/deathquotes/event/ModEventListener.java b/src/main/java/com/cazsius/deathquotes/event/ModEventListener.java index af9081d..c5eb658 100644 --- a/src/main/java/com/cazsius/deathquotes/event/ModEventListener.java +++ b/src/main/java/com/cazsius/deathquotes/event/ModEventListener.java @@ -46,7 +46,7 @@ public static void livingDeath(LivingDeathEvent event) { String quote = Funcs.getRandomQuote(); // Generating "tellraw" component for quote quote = Funcs.handleQuote(quote, player); - TextComponent tellrawComponent = Funcs.generateBaseComponentForQuote(quote); + TextComponent tellrawComponent = Funcs.generateTellrawComponentForQuote(quote); if (!event.isCanceled()) { // Send quote only to players for (ServerPlayer serverPlayer : player.getServer().getPlayerList().getPlayers()) { diff --git a/src/main/java/com/cazsius/deathquotes/utils/Funcs.java b/src/main/java/com/cazsius/deathquotes/utils/Funcs.java index dbf214a..0d2efab 100644 --- a/src/main/java/com/cazsius/deathquotes/utils/Funcs.java +++ b/src/main/java/com/cazsius/deathquotes/utils/Funcs.java @@ -158,11 +158,11 @@ public static String handleQuote(String quote, Player player) { return quote; } - public static TextComponent generateBaseComponentForQuote(String quote) { + public static TextComponent generateTellrawComponentForQuote(String quote) { TextComponent tellrawComponent = new TextComponent(""); boolean enableItalics = DeathQuotes.COMMON_CONFIG.getEnableItalics(); // Add clickable links and/or italics if needed - if (DeathQuotes.COMMON_CONFIG.getEnableHttpLinkProcessing() && quote.matches(".*" + httpLinkPattern.pattern() + ".*")) { + if (DeathQuotes.COMMON_CONFIG.getEnableHttpLinkProcessing() && httpLinkPattern.matcher(quote).find()) { List textInBetween = Arrays .stream(quote.split(httpLinkPattern.pattern())) .map(string -> { From 0ab6ded28e9a02f111f44230926d4e6e9b7c6e24 Mon Sep 17 00:00:00 2001 From: Druzai Date: Wed, 11 Jan 2023 13:05:28 +0300 Subject: [PATCH 2/2] Fixed issue percent around 70-99 and number of quotes is very low --- src/main/java/com/cazsius/deathquotes/utils/Funcs.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/cazsius/deathquotes/utils/Funcs.java b/src/main/java/com/cazsius/deathquotes/utils/Funcs.java index 0d2efab..bfeff14 100644 --- a/src/main/java/com/cazsius/deathquotes/utils/Funcs.java +++ b/src/main/java/com/cazsius/deathquotes/utils/Funcs.java @@ -94,9 +94,12 @@ public static boolean loadQuotes(boolean fromJar) { int quotesNumber; switch (percent) { case 0 -> quotesNumber = 0; - case 100 -> quotesNumber = quotes.length - 1; + case 100 -> quotesNumber = quotes.length; default -> quotesNumber = (int) Math.ceil((double) quotes.length / 100 * percent); } + if (quotesNumber >= quotes.length){ + quotesNumber = quotes.length - 1; + } quotesSet = new LimitedSet<>(quotesNumber, DeathQuotes.COMMON_CONFIG.getClearListOfNonRepeatableQuotes()); } catch (UncheckedIOException ex) { continue;