From 1cf30d5375a472ccf41ac56ebbd44ef69a1473d6 Mon Sep 17 00:00:00 2001 From: George Farrell Date: Sun, 20 May 2018 18:45:43 +0100 Subject: [PATCH 1/7] [BUGFIX] Java check version --- src/main/java/org/parabot/Landing.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/main/java/org/parabot/Landing.java b/src/main/java/org/parabot/Landing.java index 51c6a67..64bac34 100644 --- a/src/main/java/org/parabot/Landing.java +++ b/src/main/java/org/parabot/Landing.java @@ -24,9 +24,22 @@ import java.io.IOException; public final class Landing { private static String username; private static String password; + private static double JAVA_VERSION = getVersion (); + + static double getVersion () { + String version = System.getProperty("java.version"); + int pos = version.indexOf('.'); + pos = version.indexOf('.', pos+1); + return Double.parseDouble (version.substring (0, pos)); + } + public static void main(String... args) throws IOException { + if (JAVA_VERSION >= 9){ + UILog.log("Parabot", "Please downgrade to Java 8 in order to use Parabot"); + System.exit(0); + } parseArgs(args); Directories.validate(); From 01a12a50b560f7167967f9429c2a3bddeba7d3b8 Mon Sep 17 00:00:00 2001 From: George Farrell Date: Sun, 20 May 2018 23:36:10 +0100 Subject: [PATCH 2/7] Update Landing.java --- src/main/java/org/parabot/Landing.java | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/main/java/org/parabot/Landing.java b/src/main/java/org/parabot/Landing.java index 64bac34..bf79736 100644 --- a/src/main/java/org/parabot/Landing.java +++ b/src/main/java/org/parabot/Landing.java @@ -1,6 +1,7 @@ package org.parabot; import org.parabot.api.translations.TranslationHelper; +import org.parabot.core.Context; import org.parabot.core.Core; import org.parabot.core.Directories; import org.parabot.core.forum.AccountManager; @@ -9,6 +10,7 @@ import org.parabot.core.network.proxy.ProxySocket; import org.parabot.core.network.proxy.ProxyType; import org.parabot.core.ui.BotUI; import org.parabot.core.ui.ServerSelector; +import org.parabot.core.ui.utils.UILog; import javax.swing.*; import java.io.File; @@ -24,22 +26,15 @@ import java.io.IOException; public final class Landing { private static String username; private static String password; - private static double JAVA_VERSION = getVersion (); - - static double getVersion () { - String version = System.getProperty("java.version"); - int pos = version.indexOf('.'); - pos = version.indexOf('.', pos+1); - return Double.parseDouble (version.substring (0, pos)); - } public static void main(String... args) throws IOException { - if (JAVA_VERSION >= 9){ + if (Context.getJavaVersion() >= 9){ UILog.log("Parabot", "Please downgrade to Java 8 in order to use Parabot"); System.exit(0); } + parseArgs(args); Directories.validate(); From c754cd2ef06a8f111bcf32d905a54c3cff674e04 Mon Sep 17 00:00:00 2001 From: George Farrell Date: Sun, 20 May 2018 23:36:53 +0100 Subject: [PATCH 3/7] Update Context.java --- src/main/java/org/parabot/core/Context.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/main/java/org/parabot/core/Context.java b/src/main/java/org/parabot/core/Context.java index 943d051..981eb8f 100644 --- a/src/main/java/org/parabot/core/Context.java +++ b/src/main/java/org/parabot/core/Context.java @@ -72,6 +72,13 @@ public class Context { this.defaultErr = System.err; } + public static double getJavaVersion() { + String version = System.getProperty("java.version"); + int pos = version.indexOf('.'); + pos = version.indexOf('.', pos+1); + return Double.parseDouble (version.substring (0, pos)); + } + public static Context getInstance(ServerProvider serverProvider) { return instance == null ? instance = new Context(serverProvider) : instance; } From f571b3ca880a6d67383bbb045bd45cde634a26b5 Mon Sep 17 00:00:00 2001 From: Alexander Bielen Date: Tue, 30 Oct 2018 19:07:16 +0100 Subject: [PATCH 4/7] Added class with functions that are frequently used for making paints --- .../environment/api/utils/PaintUtil.java | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 src/main/java/org/parabot/environment/api/utils/PaintUtil.java diff --git a/src/main/java/org/parabot/environment/api/utils/PaintUtil.java b/src/main/java/org/parabot/environment/api/utils/PaintUtil.java new file mode 100644 index 0000000..202f446 --- /dev/null +++ b/src/main/java/org/parabot/environment/api/utils/PaintUtil.java @@ -0,0 +1,51 @@ +package org.parabot.environment.api.utils; + +import java.text.DecimalFormat; + +/** + * Functions frequently used for displaying data on paints + * + * @author AlexanderBielen + */ +public class PaintUtil { + + /** + * Calculates how much given variable has gained per hour + * + * @param currentAmount total gained amount + * @param start time from which to start counting in milliseconds + * @return rate per hour + */ + public static long calculatePerHour(int currentAmount, long start) { + return calculatePerHour(currentAmount, 0, start); + } + + /** + * Calculates how much given variable has gained per hour, with variable start amount + * + * @param currentAmount total gained amount + * @param startAmount start amount + * @param start time from which to start counting in milliseconds + * @return rate per hour + */ + public static long calculatePerHour(int currentAmount, int startAmount, long start) { + return (int)(((double)(currentAmount - startAmount) * 3600000D) / (double)(System.currentTimeMillis() - start)); + } + + /** + * Formats a time difference from given timestamp till present into readable hh:mm:ss format + * + * @param start start time in milliseconds + * @return readable timestamp + */ + public static String formatRunTime(long start) { + DecimalFormat df = new DecimalFormat("00"); + long currentTime = System.currentTimeMillis() - start; + long hours = currentTime / (3600000); + currentTime -= hours * (3600000); + long minutes = currentTime / (60000); + currentTime -= minutes * (60000); + long seconds = currentTime / (1000); + return df.format(hours) + ":" + df.format(minutes) + ":" + df.format(seconds); + } +} \ No newline at end of file From 95ae255b077720a1d22eb32510f0d9fcb717de44 Mon Sep 17 00:00:00 2001 From: Alexander Bielen Date: Tue, 30 Oct 2018 19:32:08 +0100 Subject: [PATCH 5/7] Merged unique code into Timer --- .../environment/api/utils/PaintUtil.java | 51 ------------------- .../parabot/environment/api/utils/Timer.java | 13 ++++- 2 files changed, 12 insertions(+), 52 deletions(-) delete mode 100644 src/main/java/org/parabot/environment/api/utils/PaintUtil.java diff --git a/src/main/java/org/parabot/environment/api/utils/PaintUtil.java b/src/main/java/org/parabot/environment/api/utils/PaintUtil.java deleted file mode 100644 index 202f446..0000000 --- a/src/main/java/org/parabot/environment/api/utils/PaintUtil.java +++ /dev/null @@ -1,51 +0,0 @@ -package org.parabot.environment.api.utils; - -import java.text.DecimalFormat; - -/** - * Functions frequently used for displaying data on paints - * - * @author AlexanderBielen - */ -public class PaintUtil { - - /** - * Calculates how much given variable has gained per hour - * - * @param currentAmount total gained amount - * @param start time from which to start counting in milliseconds - * @return rate per hour - */ - public static long calculatePerHour(int currentAmount, long start) { - return calculatePerHour(currentAmount, 0, start); - } - - /** - * Calculates how much given variable has gained per hour, with variable start amount - * - * @param currentAmount total gained amount - * @param startAmount start amount - * @param start time from which to start counting in milliseconds - * @return rate per hour - */ - public static long calculatePerHour(int currentAmount, int startAmount, long start) { - return (int)(((double)(currentAmount - startAmount) * 3600000D) / (double)(System.currentTimeMillis() - start)); - } - - /** - * Formats a time difference from given timestamp till present into readable hh:mm:ss format - * - * @param start start time in milliseconds - * @return readable timestamp - */ - public static String formatRunTime(long start) { - DecimalFormat df = new DecimalFormat("00"); - long currentTime = System.currentTimeMillis() - start; - long hours = currentTime / (3600000); - currentTime -= hours * (3600000); - long minutes = currentTime / (60000); - currentTime -= minutes * (60000); - long seconds = currentTime / (1000); - return df.format(hours) + ":" + df.format(minutes) + ":" + df.format(seconds); - } -} \ No newline at end of file diff --git a/src/main/java/org/parabot/environment/api/utils/Timer.java b/src/main/java/org/parabot/environment/api/utils/Timer.java index fa3c07e..5b44fdc 100644 --- a/src/main/java/org/parabot/environment/api/utils/Timer.java +++ b/src/main/java/org/parabot/environment/api/utils/Timer.java @@ -105,7 +105,18 @@ public class Timer { * @return hourly gains */ public int getPerHour(final int gained) { - return (int) ((gained) * 3600000D / (System.currentTimeMillis() - start)); + return getPerHour(gained, 0); + } + + /** + * Calculates hourly gains based on given variable, with variable start amount + * + * @param gained total gained amount + * @param startAmount start amount + * @return hourly gains + */ + public int getPerHour(final int gained, int startAmount) { + return (int) (((gained - startAmount) * 3600000D) / (System.currentTimeMillis() - start)); } /** From 76b46f1eff2be15bbba8f3d9a4165dc0810a0e89 Mon Sep 17 00:00:00 2001 From: Alexander Bielen Date: Tue, 30 Oct 2018 19:43:23 +0100 Subject: [PATCH 6/7] Corrected code to conform with the rest of the class --- src/main/java/org/parabot/environment/api/utils/Timer.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/parabot/environment/api/utils/Timer.java b/src/main/java/org/parabot/environment/api/utils/Timer.java index 5b44fdc..5a457cf 100644 --- a/src/main/java/org/parabot/environment/api/utils/Timer.java +++ b/src/main/java/org/parabot/environment/api/utils/Timer.java @@ -115,7 +115,7 @@ public class Timer { * @param startAmount start amount * @return hourly gains */ - public int getPerHour(final int gained, int startAmount) { + public int getPerHour(final int gained, final int startAmount) { return (int) (((gained - startAmount) * 3600000D) / (System.currentTimeMillis() - start)); } From a284417b5a37c981f6c58b51848b8c9f11e6f348 Mon Sep 17 00:00:00 2001 From: Jak Date: Sun, 11 Nov 2018 09:26:16 +0000 Subject: [PATCH 7/7] Update Landing.java --- src/main/java/org/parabot/Landing.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/parabot/Landing.java b/src/main/java/org/parabot/Landing.java index 0507987..15b02e0 100644 --- a/src/main/java/org/parabot/Landing.java +++ b/src/main/java/org/parabot/Landing.java @@ -31,7 +31,7 @@ public final class Landing { public static void main(String... args) throws IOException { if (Context.getJavaVersion() >= 9){ - UILog.log("Parabot", "Please downgrade to Java 8 in order to use Parabot"); + UILog.log("Parabot", "Parabot doesn't support Java 9+ currently. Please downgrade to Java 8 to ensure Parabot is working correctly."); System.exit(0); }