From 7958bc17d3872cb32f3c38d9bda719a098d1836a Mon Sep 17 00:00:00 2001 From: NorbiPeti Date: Mon, 10 Aug 2015 20:29:14 +0200 Subject: [PATCH] Commented debug lines --- .metadata/.mylyn/.tasks.xml.zip | Bin 250 -> 250 bytes .metadata/.mylyn/tasks.xml.zip | Bin 250 -> 250 bytes .../87/c0f6e89c8d3f00151a41bd20610d1f9f | 431 ++++++++++++++++++ .../org.eclipse.jdt.core/1508644233.index | Bin 17129 -> 17129 bytes TheButtonAutoFlair.jar | Bin 64767 -> 64712 bytes .../sznp/thebuttonautoflair/PluginMain.class | Bin 13573 -> 13444 bytes .../sznp/thebuttonautoflair/PluginMain.java | 6 +- 7 files changed, 434 insertions(+), 3 deletions(-) create mode 100644 .metadata/.plugins/org.eclipse.core.resources/.history/87/c0f6e89c8d3f00151a41bd20610d1f9f diff --git a/.metadata/.mylyn/.tasks.xml.zip b/.metadata/.mylyn/.tasks.xml.zip index 6695450751d936922b6d4473e378ec748d223308..005196390318e66dfb77c5b0ba735b9f5a53a107 100644 GIT binary patch delta 26 gcmeyx_=}Mzz?+#xgn@&DgJIHwi9D;AfaDG*0AVKx2><{9 delta 26 gcmeyx_=}Mzz?+#xgn@&DgJD(QM4nYlKyrr@0AZ^L6#xJL diff --git a/.metadata/.mylyn/tasks.xml.zip b/.metadata/.mylyn/tasks.xml.zip index 005196390318e66dfb77c5b0ba735b9f5a53a107..901a499bebe93a3191cfeea104b4a9792f852f62 100644 GIT binary patch delta 26 gcmeyx_=}Mzz?+#xgn@&DgMoeVM4nYlKyrr@09c_0`2YX_ delta 26 gcmeyx_=}Mzz?+#xgn@&DgJIHwi9D;AfaDG*0AVKx2><{9 diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/87/c0f6e89c8d3f00151a41bd20610d1f9f b/.metadata/.plugins/org.eclipse.core.resources/.history/87/c0f6e89c8d3f00151a41bd20610d1f9f new file mode 100644 index 0000000..bf08f0d --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/87/c0f6e89c8d3f00151a41bd20610d1f9f @@ -0,0 +1,431 @@ +package tk.sznp.thebuttonautoflair; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileReader; +import java.io.FileWriter; +import java.io.IOException; +import java.io.InputStream; +import java.net.MalformedURLException; +import java.net.URL; +import java.net.URLConnection; +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; +import java.util.Map; + +import org.apache.commons.io.IOUtils; +import org.bukkit.entity.Player; +import org.bukkit.plugin.java.JavaPlugin; +import org.json.JSONArray; +import org.json.JSONObject; + +import com.palmergames.bukkit.towny.object.Town; +import com.palmergames.bukkit.towny.object.WorldCoord; + +public class PluginMain extends JavaPlugin +{ //Translated to Java: 2015.07.15. + //A user, which flair isn't obtainable: + //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ + private static PluginMain Instance; + // Fired when plugin is first enabled + @Override + public void onEnable() + { + System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); + getServer().getPluginManager().registerEvents(new PlayerListener(), this); + this.getCommand("u").setExecutor(new Commands()); + this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); + Instance=this; //2015.08.08. + LoadFiles(false); //2015.08.09. + Runnable r=new Runnable(){public void run(){ThreadMethod();}}; + Thread t=new Thread(r); + t.start(); + } + Boolean stop=false; + // Fired when plugin is disabled + @Override + public void onDisable() + { + SaveFiles(); //2015.08.09. + stop=true; + } + + public void ThreadMethod() //<-- 2015.07.16. + { + while(!stop) + { + try + { + String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); + JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); + for(Object obj : json) + { + JSONObject item = (JSONObject)obj; + String author=item.getJSONObject("data").getString("author"); + String ign=item.getJSONObject("data").getString("body"); + int start = ign.indexOf("IGN:") + "IGN:".length(); + System.out.println("Start: "+start); + if(start==-1+"IGN:".length()) //+length: 2015.08.10. + continue; //2015.08.09. + int end = ign.indexOf(' ', start); + if (end == -1 || end == start) + end=ign.indexOf('\n', start); //2015.07.15. + System.out.println("End: "+end); + if (end == -1 || end == start) + ign = ign.substring(start); + else + ign = ign.substring(start, end); + System.out.println("IGN: "+ign); + ign = ign.trim(); + System.out.println("Trimmed IGN: "+ign); + if(HasIGFlair(ign)) + continue; + try { + Thread.sleep(10); + } catch(InterruptedException ex) { + Thread.currentThread().interrupt(); + } + String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); + String flair; + if(flairdata.length > 1) //2015.07.15. + flair = flairdata[1]; + else + flair=""; + if (flair != "-1") + flair = flair + "s"; + else + flair = "non-presser"; + String flairclass; + if(flairdata.length>2) + flairclass = flairdata[2]; + else + flairclass="unknown"; + SetFlair(ign, flair, flairclass, author); + } + Thread.sleep(10000); + } + catch(Exception e) + { + System.out.println("Error!\n"+e); + LastException=e; //2015.08.09. + } + } + } + + public static Exception LastException; //2015.08.09. + + public String DownloadString(String urlstr) throws MalformedURLException, IOException + { + URL url = new URL(urlstr); + URLConnection con = url.openConnection(); + con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); + InputStream in = con.getInputStream(); + String encoding = con.getContentEncoding(); + encoding = encoding == null ? "UTF-8" : encoding; + String body = IOUtils.toString(in, encoding); + in.close(); + return body; + } + + public static Map TownColors=new HashMap(); //2015.07.20. + public Boolean HasIGFlair(String playername) + { + MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. + return p.Flair!=null; //2015.08.08. + } + + public void SetFlair(String playername, String text, String flairclass, String username) + { + MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. + String finalflair; + p.FlairDecided=true; + switch(flairclass) + { + case "press-1": + finalflair="§c("+text+")§r"; + break; + case "press-2": + finalflair="§6("+text+")§r"; + break; + case "press-3": + finalflair="§e("+text+")§r"; + break; + case "press-4": + finalflair="§a("+text+")§r"; + break; + case "press-5": + finalflair="§9("+text+")§r"; + break; + case "press-6": + finalflair="§5("+text+")§r"; + break; + case "no-press": + finalflair="§7(non-pr.)§r"; + break; + case "cheater": + finalflair="§5("+text+")§r"; + break; + case "cant-press": //2015.08.08. + finalflair="§r(can't press)§r"; + break; + case "undecided": //2015.08.09. + p.FlairDecided=false; + finalflair=""; + break; + default: + finalflair=""; + break; + } + if(finalflair.length()==0) //<-- 2015.07.20. + return; + p.Flair=finalflair; //2015.08.08. + p.UserName=username; //2015.08.08. + System.out.println("Added new flair to "+playername+": "+finalflair); + for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. + { + if(player.getName().equals(playername)) + { + //AppendPlayerDisplayFlair(player, username, finalflair); + AppendPlayerDisplayFlair(p, player); + break; + } + } + } + + public static String GetFlair(Player player) + { //2015.07.16. + String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. + return flair==null ? "" : flair; + } + + //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) + public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. + { + + if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) + return; + if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) + { + AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. + if(!player.FlairDecided) + p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. + } + else + p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); + } + + private static void AppendPlayerDisplayFlairFinal(Player player, String flair) + { //2015.07.20. + /*String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters + String[] colors = color.substring(1).split("§"); + String displayname=player.getName(); //2015.08.08. + ArrayList Positions=new ArrayList<>(); + for(int i=0; i=colors.length) + { + int x=0; + for(int i=0; i GetPlayers() + { + return Instance.getServer().getOnlinePlayers(); + } + + public static void LoadFiles(boolean reload) //<-- 2015.08.09. + { + if(reload) + { //2015.08.09. + System.out.println("Auto-flair plugin cleanup for reloading..."); + MaybeOfflinePlayer.AllPlayers.clear(); + TownColors.clear(); + } + System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. + try { + File file=new File("flairsaccepted.txt"); + if(file.exists()) + { + BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); + String line; + while ((line = br.readLine()) != null) + { + String name=line.replace("\n", ""); + //System.out.println("Name: " + name); + MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. + } + br.close(); + } + file=new File("flairsignored.txt"); + if(file.exists()) + { + BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); + String line; + while ((line = br.readLine()) != null) + { + String name=line.replace("\n", ""); + MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. + } + br.close(); + } + file=new File("autoflairconfig.txt"); + if(file.exists()) + { + BufferedReader br=new BufferedReader(new FileReader(file)); + String line; + while((line=br.readLine())!=null) + { + String[] s=line.split(" "); + if(s.length>=2) //<-- 2015.08.10. + TownColors.put(s[0], s[1]); + } + br.close(); + } + file=new File("customflairs.txt"); //2015.08.09. + if(file.exists()) + { + BufferedReader br=new BufferedReader(new FileReader(file)); + String line; + while((line=br.readLine())!=null) + { + String[] s=line.split(" "); + if(s.length>=2) //2015.08.10. + MaybeOfflinePlayer.AddPlayerIfNeeded(s[0]).Flair=s[1]; //2015.08.09. + } + br.close(); + } + //throw new IOException("Test"); //2015.08.09. + System.out.println("Auto-flair plugin loaded files!"); + } catch (IOException e) { + System.out.println("Error!\n"+e); + LastException=e; //2015.08.09. + } + } + public static void SaveFiles() //<-- 2015.08.09. + { + try + { + FileWriter fw; + fw = new FileWriter("flairsaccepted.txt"); + fw.close(); + fw = new FileWriter("flairsignored.txt"); + fw.close(); + } + catch(Exception e) + { + System.out.println("Error!\n"+e); + LastException=e; //2015.08.09. + } + try { + File file=new File("flairsaccepted.txt"); + BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); + for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. + { + if(!player.AcceptedFlair) + continue; //2015.08.08. + bw.write(player.PlayerName+"\n"); + } + bw.close(); + file=new File("flairsignored.txt"); + bw = new BufferedWriter(new FileWriter(file, true)); + for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. + { + if(!player.IgnoredFlair) + continue; //2015.08.08. + bw.write(player.PlayerName+" "+player.Flair+"\n"); + } + bw.close(); + } catch (IOException e) { + System.out.println("Error!\n"+e); + LastException=e; //2015.08.09. + } + } + public static boolean RemoveLineFromFile(String file, String line) + { //2015.08.09. + File inputFile = new File(file); + File tempFile = new File("_temp.txt"); + + if(!inputFile.exists()) + return true; //2015.08.10. + + try { + BufferedReader reader = new BufferedReader(new FileReader(inputFile)); + BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile)); + + String lineToRemove = line; + String currentLine; + + while((currentLine = reader.readLine()) != null) { + // trim newline when comparing with lineToRemove + String trimmedLine = currentLine.trim(); + //if(trimmedLine.equals(lineToRemove)) continue; + if(trimmedLine.contains(lineToRemove)) continue; //2015.08.09. + writer.write(currentLine + System.getProperty("line.separator")); + } + writer.close(); + reader.close(); + return tempFile.renameTo(inputFile); + } catch (IOException e) { + System.out.println("Error!\n"+e); + LastException=e; //2015.08.09. + } + return false; + } +} diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1508644233.index b/.metadata/.plugins/org.eclipse.jdt.core/1508644233.index index 1ba35281b71fc9188551e9c06fba0983a38993e4..b3664e0563049a22e580856d69f7eae8e5118611 100644 GIT binary patch delta 185 zcmaFa%J{OCal?9Hg&ac$5MatNg3wv{K$?q@iJ66sgOit!fAe|a1H1yf~p zey3(S`Iwru-BcKQakTwKSo6id$;GMicQAU8< zv8X7q(kHXHMBm{5|Np->?^aA>;*#=D%1TWx(btcdd{I?|@#EzED(aInRl+Ab0ck}Q z#m#K0{fv_jsp(9XQ`epRPR(@kEH#bE-s;+uzo?tDn?rO@wpY`eyk4D+@$KYNb*IhR z8o7*?&rx);p3`ms?fgiG diff --git a/TheButtonAutoFlair.jar b/TheButtonAutoFlair.jar index c2e664faa6ebfb2a0c5f63efb78ba614a7ea62ef..46e379692fe822cdaf82dc8ffdc1565bd7b2e43d 100644 GIT binary patch delta 6923 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 RH36!V-25E|f%E_X004kAV2uC( delta 7002 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 LF(GdkfdKpyinEb8 diff --git a/TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/PluginMain.java b/TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/PluginMain.java index bf08f0d..56e2511 100644 --- a/TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/PluginMain.java +++ b/TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/PluginMain.java @@ -66,7 +66,7 @@ public class PluginMain extends JavaPlugin String author=item.getJSONObject("data").getString("author"); String ign=item.getJSONObject("data").getString("body"); int start = ign.indexOf("IGN:") + "IGN:".length(); - System.out.println("Start: "+start); + //System.out.println("Start: "+start); if(start==-1+"IGN:".length()) //+length: 2015.08.10. continue; //2015.08.09. int end = ign.indexOf(' ', start); @@ -77,9 +77,9 @@ public class PluginMain extends JavaPlugin ign = ign.substring(start); else ign = ign.substring(start, end); - System.out.println("IGN: "+ign); + //System.out.println("IGN: "+ign); ign = ign.trim(); - System.out.println("Trimmed IGN: "+ign); + //System.out.println("Trimmed IGN: "+ign); if(HasIGFlair(ign)) continue; try {