From 9946e449730b5072d095c776b1c6b521101e4bba Mon Sep 17 00:00:00 2001 From: Morlok8k Date: Fri, 4 Nov 2011 07:23:20 -0700 Subject: [PATCH] 1.6.0 (test21) --- README | 2 +- bin/MLG-BuildID | 1 + bin/MinecraftLandGenerator.conf | 4 +- bin/MinecraftLandGenerator.jar | Bin 40956 -> 41688 bytes .../minecraft/landgenerator/Main.java | 95 +++++++++++++++--- 5 files changed, 84 insertions(+), 18 deletions(-) diff --git a/README b/README index ffb5c18..349f032 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -Minecraft Land Generator version 1.6.0 Testing 16 +Minecraft Land Generator version 1.6.0 Testing 21 Updated November 4, 2011 diff --git a/bin/MLG-BuildID b/bin/MLG-BuildID index 4269672..296012a 100644 --- a/bin/MLG-BuildID +++ b/bin/MLG-BuildID @@ -2,3 +2,4 @@ 293A184EB26A62AE6D64CEB01BAD9537=1320399076000#MLG v1.6.0 Testing 11 4F00853101546B5C030F5D89036EC574=1320402115000#MLG v1.6.0 Testing 12 E77F9F6977FA5BE75D81CA8E3584DCF8=1320404362000#MLG v1.6.0 Testing 16 +867265064E26F0F83EAC586C80ED5604=1320416550000# MLG v1.6.0 Testing 21 diff --git a/bin/MinecraftLandGenerator.conf b/bin/MinecraftLandGenerator.conf index 234887f..0925588 100644 --- a/bin/MinecraftLandGenerator.conf +++ b/bin/MinecraftLandGenerator.conf @@ -1,6 +1,6 @@ -#Minecraft Land Generator Configuration File: Version: 1.6.0 Testing 16 +#Minecraft Land Generator Configuration File: Version: 1.6.0 Testing 21 #Authors: Corrodias, Morlok8k, pr0f1x -#Auto-Generated: Friday, November 4, 2011 at 3:59 AM Pacific Daylight Time +#Auto-Generated: Friday, November 4, 2011 at 7:22 AM Pacific Daylight Time #Line to run server: Java=java -Djava.awt.headless=true -Djline.terminal=jline.UnsupportedTerminal -Duser.language=en -Xms1024m -Xmx1024m -Xincgc -jar minecraft_server.jar nogui diff --git a/bin/MinecraftLandGenerator.jar b/bin/MinecraftLandGenerator.jar index 3d08a1ec53fac1b155ed7590261e368ff0e3418d..28581e818e6b1c633fb42a19ae6ac12b7424ebb9 100755 GIT binary patch delta 23351 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 delta 22662 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 diff --git a/src/corrodias/minecraft/landgenerator/Main.java b/src/corrodias/minecraft/landgenerator/Main.java index 3043c9e..d041cea 100644 --- a/src/corrodias/minecraft/landgenerator/Main.java +++ b/src/corrodias/minecraft/landgenerator/Main.java @@ -23,8 +23,10 @@ import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.text.DateFormat; import java.text.SimpleDateFormat; +import java.util.ArrayList; import java.util.Date; import java.util.HashMap; +import java.util.Iterator; import java.util.LinkedHashMap; import java.util.Locale; import java.util.Map; @@ -41,11 +43,12 @@ import org.jnbt.Tag; /** * * @author Corrodias, Morlok8k, pr0f1x + * */ public class Main { // Version Number! - private static final String VERSION = "1.6.0 Testing 16"; + private static final String VERSION = "1.6.0 Testing 21"; private static final String AUTHORS = "Corrodias, Morlok8k, pr0f1x"; private static final String fileSeparator = System.getProperty("file.separator"); @@ -103,6 +106,9 @@ public class Main { "https://raw.github.com/Morlok8k/MinecraftLandGenerator/master/bin/MinecraftLandGenerator.conf"; private static final String github_MLG_BuildID_URL = "https://raw.github.com/Morlok8k/MinecraftLandGenerator/master/bin/MLG-BuildID"; + private static final String github_MLG_jar_URL = + "https://raw.github.com/Morlok8k/MinecraftLandGenerator/master/bin/MinecraftLandGenerator.jar"; + private static final String MinecraftLandGeneratorConf = "MinecraftLandGenerator.conf"; ////// @@ -1435,14 +1441,18 @@ public class Main { } try { + String line; + BufferedReader in = new BufferedReader(new FileReader(buildIDFile)); BufferedWriter out = new BufferedWriter(new FileWriter(buildIDFile + ".temp")); - String line; + while ((line = in.readLine()) != null) { if (line.contains(MLG_Current_Hash)) { notNew = true; - // System.out.println("[DEBUG] NotNew"); + if (testing) { + System.out.println("[DEBUG] NotNew"); + } } out.write(line); @@ -1450,7 +1460,7 @@ public class Main { } if (notNew == false) { - out.write(MLG_Current_Hash + "=" + String.valueOf(time.getTime()) + "#MLG v" + out.write(MLG_Current_Hash + "=" + String.valueOf(time.getTime()) + "# MLG v" + VERSION + INFO); out.newLine(); } @@ -1517,6 +1527,9 @@ public class Main { } } + int tsCount = 0; + ArrayList timeStamps = new ArrayList(); + if (MLG_Last_Modified_Date == null) { boolean foundLine = false; try { @@ -1525,25 +1538,33 @@ public class Main { while ((line = in.readLine()) != null) { + int pos = line.indexOf('='); + int end = line.lastIndexOf('#'); // comments, ignored lines + + if (end == -1) { // If we have no hash sign, then we read till the end of the line + end = line.length(); + } + if (end <= pos) { // If hash is before the '=', we may have an issue... it should be fine, cause we check for issues next, but lets make sure. + end = line.length(); + } + + timeStamps.add(line.substring(pos + 1, end)); + + if (testing) { + System.out.println(timeStamps.get(tsCount)); + } + + tsCount++; + if (line.contains(MLG_Current_Hash)) { // System.out.println("[DEBUG] Found!"); foundLine = true; - int pos = line.indexOf('='); - int end = line.lastIndexOf('#'); // comments, ignored lines - - if (end == -1) { // If we have no hash sign, then we read till the end of the line - end = line.length(); - } - if (end <= pos) { // If hash is before the '=', we may have an issue... it should be fine, cause we check for issues next, but lets make sure. - end = line.length(); - } - if (pos != -1) { if (line.substring(0, pos).equals(MLG_Current_Hash)) { MLG_Last_Modified_Date = new Date(new Long(line.substring(pos + 1, end))); - return; + //return; } } @@ -1552,6 +1573,50 @@ public class Main { } in.close(); + Iterator e = timeStamps.iterator(); + String s; + int diff; + //boolean renameFailed = false; + + while (e.hasNext()) { + s = e.next(); + diff = MLG_Last_Modified_Date.compareTo(new Date(new Long(s))); + //System.out.println(diff); + + if (diff < 0) { // if this is less than 0, there is a new version of MLG on the Internet! + System.out + .println("There is a NEW VERSION Of Minecraft Land Generator available online!"); + + try { + File fileRename = new File("MinecraftLandGenerator.jar"); + fileRename.renameTo(new File("MinecraftLandGenerator.jar" + ".old")); + } catch (Exception e1) { + System.out.println("Rename failed"); + e1.printStackTrace(); + + try { + copyFile(new File("MinecraftLandGenerator.jar"), new File( + "MinecraftLandGenerator.jar" + ".old")); + File fileDelete = new File("MinecraftLandGenerator.jar"); + fileDelete.delete(); + } catch (Exception e2) { + System.out.println("Rename 2 failed"); + e2.printStackTrace(); + //renameFailed = true; + return; + } + + } + + boolean fileSuccess = downloadFile(github_MLG_jar_URL); + if (fileSuccess) { + System.out.println(MLG + "MinecraftLandGenerator.jar" + " downloaded."); + return; + } + + } + } + if (foundLine == false) { // System.out.println("[DEBUG] FoundLine False"); buildID();