diff --git a/PlotSquared/src/com/intellectualcrafters/plot/commands/plugin.java b/PlotSquared/src/com/intellectualcrafters/plot/commands/plugin.java index 7a58d17dd..00ca7ff68 100644 --- a/PlotSquared/src/com/intellectualcrafters/plot/commands/plugin.java +++ b/PlotSquared/src/com/intellectualcrafters/plot/commands/plugin.java @@ -9,13 +9,17 @@ package com.intellectualcrafters.plot.commands; -import java.util.ArrayList; - -import org.bukkit.entity.Player; - import com.intellectualcrafters.plot.PlayerFunctions; import com.intellectualcrafters.plot.PlotMain; -import com.intellectualcrafters.plot.Settings; +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import org.bukkit.plugin.java.JavaPlugin; + +import java.io.BufferedReader; +import java.io.InputStreamReader; +import java.net.URL; +import java.net.URLConnection; +import java.util.ArrayList; public class plugin extends SubCommand { @@ -24,18 +28,50 @@ public class plugin extends SubCommand { } @Override - public boolean execute(Player plr, String... args) { - ArrayList strings = new ArrayList() { - { - add(String.format("&c>> &6PlotSquared (Version: %s)", PlotMain.getMain().getDescription().getVersion())); - add(String.format("&c>> &6Made by Citymonstret and brandonrelph")); - add(String.format("&c>> &6Download at %s", Settings.URL)); + public boolean execute(final Player plr, String... args) { + Bukkit.getScheduler().runTaskAsynchronously(JavaPlugin.getPlugin(PlotMain.class), new Runnable() { + @Override + public void run() { + ArrayList strings = new ArrayList() { + { + String + downloads = getInfo("https://intellectualsites.com/spigot_api.php?method=downloads&url=http://www.spigotmc.org/resources/plotsquared.1177/"), + version = getInfo("https://intellectualsites.com/spigot_api.php?method=version&resource=1177"); + add(String.format("&c>> &6PlotSquared (Version: %s)", PlotMain.getMain().getDescription().getVersion())); + add(String.format("&c>> &6Made by Citymonstret and Empire92")); + add(String.format("&c>> &6Download at &lhttp://i-s.link/ps")); + add(String.format("&c>> &cNewest Version (Spigot): %s", version)); + add(String.format("&c>> &cTotal Downloads (Spigot): %s", downloads)); + } + }; + for (String s : strings) { + PlayerFunctions.sendMessage(plr, s); + } } - }; - for (String s : strings) { - PlayerFunctions.sendMessage(plr, s); - } + }); return true; } + /** + * + * @param link + * @return + */ + private String getInfo(String link) { + try { + URLConnection connection = new URL(link).openConnection(); + connection.addRequestProperty("User-Agent", "Mozilla/4.0"); + BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream())); + String document = "", line; + while ((line = reader.readLine()) != null) { + document += (line + "\n"); + } + reader.close(); + return document; + } catch(Exception e) { + e.printStackTrace(); + return ""; + } + } + }