Advertisement
Guest User

Untitled

a guest
Dec 9th, 2016
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 70.00 KB | None | 0 0
  1. /*
  2.  * Decompiled with CFR 0_118.
  3.  *
  4.  * Could not load the following classes:
  5.  *  com.mojang.authlib.GameProfile
  6.  *  net.md_5.itag.iTag
  7.  *  org.bukkit.Bukkit
  8.  *  org.bukkit.ChatColor
  9.  *  org.bukkit.Material
  10.  *  org.bukkit.OfflinePlayer
  11.  *  org.bukkit.command.CommandExecutor
  12.  *  org.bukkit.command.PluginCommand
  13.  *  org.bukkit.configuration.file.FileConfiguration
  14.  *  org.bukkit.configuration.file.YamlConfiguration
  15.  *  org.bukkit.entity.Player
  16.  *  org.bukkit.event.Listener
  17.  *  org.bukkit.inventory.Inventory
  18.  *  org.bukkit.inventory.InventoryView
  19.  *  org.bukkit.inventory.ItemStack
  20.  *  org.bukkit.inventory.meta.ItemMeta
  21.  *  org.bukkit.inventory.meta.SkullMeta
  22.  *  org.bukkit.plugin.Plugin
  23.  *  org.bukkit.plugin.java.JavaPlugin
  24.  *  org.bukkit.scheduler.BukkitTask
  25.  *  org.bukkit.scoreboard.DisplaySlot
  26.  *  org.bukkit.scoreboard.Objective
  27.  *  org.bukkit.scoreboard.Score
  28.  *  org.bukkit.scoreboard.Scoreboard
  29.  *  org.bukkit.scoreboard.Team
  30.  */
  31. package de.dave_911.Nick;
  32.  
  33. import com.mojang.authlib.GameProfile;
  34. import de.dave_911.Nick.Commands.NickCommand;
  35. import de.dave_911.Nick.Commands.NickListCommand;
  36. import de.dave_911.Nick.Commands.UnNickCommand;
  37. import de.dave_911.Nick.GameProfileBuilder;
  38. import de.dave_911.Nick.Listener.AsyncPlayerPreLoginListener;
  39. import de.dave_911.Nick.Listener.PlayerChangedWorldListener;
  40. import de.dave_911.Nick.Listener.PlayerQuitListener;
  41. import de.dave_911.Nick.Listener.PlayerReceiveGameProfileListener;
  42. import de.dave_911.Nick.Listener.PlayerTeleportListener;
  43. import de.dave_911.Nick.NickType;
  44. import de.dave_911.Nick.UUIDFetcher;
  45. import java.io.File;
  46. import java.io.IOException;
  47. import java.sql.Connection;
  48. import java.sql.DriverManager;
  49. import java.sql.PreparedStatement;
  50. import java.sql.ResultSet;
  51. import java.sql.SQLException;
  52. import java.util.ArrayList;
  53. import java.util.HashMap;
  54. import java.util.Iterator;
  55. import java.util.List;
  56. import java.util.Random;
  57. import java.util.Set;
  58. import java.util.UUID;
  59. import net.md_5.itag.iTag;
  60. import org.bukkit.Bukkit;
  61. import org.bukkit.ChatColor;
  62. import org.bukkit.Material;
  63. import org.bukkit.OfflinePlayer;
  64. import org.bukkit.command.CommandExecutor;
  65. import org.bukkit.command.PluginCommand;
  66. import org.bukkit.configuration.file.FileConfiguration;
  67. import org.bukkit.configuration.file.YamlConfiguration;
  68. import org.bukkit.entity.Player;
  69. import org.bukkit.event.Listener;
  70. import org.bukkit.inventory.Inventory;
  71. import org.bukkit.inventory.InventoryView;
  72. import org.bukkit.inventory.ItemStack;
  73. import org.bukkit.inventory.meta.ItemMeta;
  74. import org.bukkit.inventory.meta.SkullMeta;
  75. import org.bukkit.plugin.Plugin;
  76. import org.bukkit.plugin.java.JavaPlugin;
  77. import org.bukkit.scheduler.BukkitTask;
  78. import org.bukkit.scoreboard.DisplaySlot;
  79. import org.bukkit.scoreboard.Objective;
  80. import org.bukkit.scoreboard.Score;
  81. import org.bukkit.scoreboard.Scoreboard;
  82. import org.bukkit.scoreboard.Team;
  83.  
  84. public class Nick
  85. extends JavaPlugin {
  86.     public static Nick plugin;
  87.     public static ArrayList<String> nicks;
  88.     public static HashMap<String, String> nickname;
  89.     public static HashMap<String, NickType> nicktype;
  90.     public static HashMap<String, GameProfile> gameprofile;
  91.     public static File file;
  92.     public static FileConfiguration cfg;
  93.     public static String globalprefix;
  94.     public static String prefix;
  95.     public static String noperm;
  96.     public static String unknowncmd;
  97.     public static String host;
  98.     public static String port;
  99.     public static String database;
  100.     public static String username;
  101.     public static String password;
  102.     public static Connection connection;
  103.  
  104.     static {
  105.         nicks = new ArrayList();
  106.         nickname = new HashMap();
  107.         nicktype = new HashMap();
  108.         gameprofile = new HashMap();
  109.         file = new File("plugins/Nick", "config.yml");
  110.         cfg = YamlConfiguration.loadConfiguration((File)file);
  111.         globalprefix = "\u00a78\u00a7l\u2503 \u00a76Riventus \u00a78\u2503 ";
  112.         prefix = "\u00a78\u00a7l\u2503 \u00a75Nick \u00a78\u2503 ";
  113.         noperm = "\u00a7cDu hast keinen Zugriff auf diesen Befehl.";
  114.         unknowncmd = "\u00a7cDieser Befehl existiert nicht.";
  115.         host = cfg.getString("MySQL.Host");
  116.         port = cfg.getString("MySQL.Port");
  117.         database = cfg.getString("MySQL.Datenbank");
  118.         username = cfg.getString("MySQL.Benutzername");
  119.         password = cfg.getString("MySQL.Passwort");
  120.     }
  121.  
  122.     public void onEnable() {
  123.         plugin = this;
  124.         this.saveDefaultConfig();
  125.         this.reloadConfig();
  126.         Nick.registerCommands();
  127.         Nick.registerListener();
  128.         for (String nicknames2 : cfg.getStringList("Nicknames")) {
  129.             nicks.add(nicknames2);
  130.         }
  131.         for (String nicknames2 : nicks) {
  132.             GameProfile gp = GameProfileBuilder.gameProfileFromString(cfg.getString(nicknames2));
  133.             gameprofile.put(gp.getName(), gp);
  134.         }
  135.         Bukkit.getScheduler().scheduleSyncRepeatingTask((Plugin)plugin, new Runnable(){
  136.  
  137.             @Override
  138.             public void run() {
  139.                 UUIDFetcher.clearCache();
  140.                 GameProfileBuilder.cache.clear();
  141.             }
  142.         }, 12000, 12000);
  143.         Nick.connect();
  144.         Nick.createTableIfNotExists();
  145.         Bukkit.getScheduler().scheduleAsyncRepeatingTask((Plugin)plugin, new Runnable(){
  146.  
  147.             @Override
  148.             public void run() {
  149.                 Nick.createTableIfNotExists();
  150.             }
  151.         }, 12000, 12000);
  152.     }
  153.  
  154.     public void onDisable() {
  155.         Nick.disconnect();
  156.     }
  157.  
  158.     public static void registerCommands() {
  159.         plugin.getCommand("nick").setExecutor((CommandExecutor)new NickCommand());
  160.         plugin.getCommand("nicklist").setExecutor((CommandExecutor)new NickListCommand());
  161.         plugin.getCommand("unnick").setExecutor((CommandExecutor)new UnNickCommand());
  162.     }
  163.  
  164.     public static void registerListener() {
  165.         Bukkit.getPluginManager().registerEvents((Listener)new AsyncPlayerPreLoginListener(), (Plugin)plugin);
  166.         Bukkit.getPluginManager().registerEvents((Listener)new PlayerChangedWorldListener(), (Plugin)plugin);
  167.         Bukkit.getPluginManager().registerEvents((Listener)new PlayerQuitListener(), (Plugin)plugin);
  168.         Bukkit.getPluginManager().registerEvents((Listener)new PlayerReceiveGameProfileListener(), (Plugin)plugin);
  169.         Bukkit.getPluginManager().registerEvents((Listener)new PlayerTeleportListener(), (Plugin)plugin);
  170.     }
  171.  
  172.     public static GameProfile getGameProfile(String player) {
  173.         GameProfile profile = null;
  174.         try {
  175.             profile = GameProfileBuilder.fetch(UUIDFetcher.getUUID(player));
  176.         }
  177.         catch (IOException ex) {
  178.             ex.printStackTrace();
  179.             try {
  180.                 profile = GameProfileBuilder.fetch(UUID.randomUUID());
  181.             }
  182.             catch (IOException ex2) {
  183.                 ex2.printStackTrace();
  184.             }
  185.         }
  186.         return profile;
  187.     }
  188.  
  189.     public static String randomNick() {
  190.         Random r = new Random();
  191.         ArrayList<String> nicks = new ArrayList<String>();
  192.         for (String nicknames : gameprofile.keySet()) {
  193.             nicks.add(nicknames);
  194.         }
  195.         String nick = (String)nicks.get(r.nextInt(nicks.size()));
  196.         if (Nick.isNickUsed(nick)) {
  197.             return Nick.randomNick();
  198.         }
  199.         return nick;
  200.     }
  201.  
  202.     public static boolean isNickUsed(String nick) {
  203.         for (Player players2 : Bukkit.getOnlinePlayers()) {
  204.             if (!ChatColor.stripColor((String)players2.getDisplayName()).equalsIgnoreCase(nick)) continue;
  205.             return true;
  206.         }
  207.         for (Player players2 : Bukkit.getOnlinePlayers()) {
  208.             if (!players2.getName().equalsIgnoreCase(nick)) continue;
  209.             return true;
  210.         }
  211.         return false;
  212.     }
  213.  
  214.     public static void setNick(Player p, NickType type) {
  215.         ItemMeta ISMeta;
  216.         ItemStack is;
  217.         ArrayList Lore;
  218.         ItemStack SI;
  219.         String s;
  220.         reference administrator22;
  221.         String name32;
  222.         Team premium;
  223.         int i;
  224.         Team spieler;
  225.         ItemStack[] players22;
  226.         ArrayList SILore;
  227.         ItemStack IS;
  228.         SkullMeta SIMeta;
  229.         Scoreboard board;
  230.         Team spectator;
  231.         ArrayList<String> Lore2;
  232.         String nick = "";
  233.         String shortnick = "";
  234.         if (nickname.get(p.getName()) != null) {
  235.             if (nicktype.get(p.getName()) == NickType.SPIELER) {
  236.                 nick = "\u00a79" + nickname.get(p.getName());
  237.                 shortnick = nick.length() > 16 ? nick.substring(0, 16) : "\u00a79" + nickname.get(p.getName());
  238.             }
  239.             if (nicktype.get(p.getName()) == NickType.PREMIUM) {
  240.                 nick = "\u00a76" + nickname.get(p.getName());
  241.                 shortnick = nick.length() > 16 ? nick.substring(0, 16) : "\u00a76" + nickname.get(p.getName());
  242.             }
  243.         } else {
  244.             nick = p.getDisplayName();
  245.             shortnick = nick.length() > 16 ? nick.substring(0, 16) : p.getDisplayName();
  246.         }
  247.         if (type == NickType.NULL) {
  248.             board = Bukkit.getScoreboardManager().getMainScoreboard();
  249.             spectator = board.getTeam("9-Spectator");
  250.             spieler = board.getTeam("8-Spieler");
  251.             premium = board.getTeam("7-Premium");
  252.             Team youtuber = board.getTeam("6-YouTuber");
  253.             Team builder = board.getTeam("5-Builder");
  254.             Iterator developer = board.getTeam("4-Developer");
  255.             Team moderator = board.getTeam("3-Moderator");
  256.             Team srmoderator = board.getTeam("2-SrModerator");
  257.             administrator22 = board.getTeam("1-Administrator");
  258.             if (spectator == null) {
  259.                 spectator = board.registerNewTeam("9-Spectator");
  260.                 spectator.setPrefix("\u00a78");
  261.                 spectator.setCanSeeFriendlyInvisibles(true);
  262.             }
  263.             if (spieler == null) {
  264.                 spieler = board.registerNewTeam("8-Spieler");
  265.                 spieler.setPrefix("\u00a79");
  266.             }
  267.             if (premium == null) {
  268.                 premium = board.registerNewTeam("7-Premium");
  269.                 premium.setPrefix("\u00a76");
  270.             }
  271.             if (youtuber == null) {
  272.                 youtuber = board.registerNewTeam("6-YouTuber");
  273.                 youtuber.setPrefix("\u00a75");
  274.             }
  275.             if (builder == null) {
  276.                 builder = board.registerNewTeam("5-Builder");
  277.                 builder.setPrefix("\u00a7a");
  278.             }
  279.             if (developer == null) {
  280.                 developer = board.registerNewTeam("4-Developer");
  281.                 developer.setPrefix("\u00a7b");
  282.             }
  283.             if (moderator == null) {
  284.                 moderator = board.registerNewTeam("3-Moderator");
  285.                 moderator.setPrefix("\u00a7c");
  286.             }
  287.             if (srmoderator == null) {
  288.                 srmoderator = board.registerNewTeam("2-SrModerator");
  289.                 srmoderator.setPrefix("\u00a7c");
  290.             }
  291.             if (administrator22 == null) {
  292.                 Team administrator22 = board.registerNewTeam("1-Administrator");
  293.                 administrator22.setPrefix("\u00a74");
  294.             }
  295.             spectator.removeEntry(nickname.get(p.getName()));
  296.             spieler.removeEntry(nickname.get(p.getName()));
  297.             premium.removeEntry(nickname.get(p.getName()));
  298.             nickname.remove(p.getName());
  299.             nicktype.remove(p.getName());
  300.             name32 = "\u00a79" + p.getName();
  301.             if (p.hasPermission("nick.premium")) {
  302.                 name32 = "\u00a76" + p.getName();
  303.             }
  304.             if (p.hasPermission("nick.youtuber")) {
  305.                 name32 = "\u00a75" + p.getName();
  306.             }
  307.             if (p.hasPermission("nick.builder")) {
  308.                 name32 = "\u00a7a" + p.getName();
  309.             }
  310.             if (p.hasPermission("nick.developer")) {
  311.                 name32 = "\u00a7b" + p.getName();
  312.             }
  313.             if (p.hasPermission("nick.moderator") | p.hasPermission("nick.srmoderator")) {
  314.                 name32 = "\u00a7c" + p.getName();
  315.             }
  316.             if (p.hasPermission("nick.administrator")) {
  317.                 name32 = "\u00a74" + p.getName();
  318.             }
  319.             p.setDisplayName(name32);
  320.             if (spectator.getPlayers().contains((Object)p)) {
  321.                 name32 = "\u00a78" + p.getName();
  322.             } else {
  323.                 if (p.getDisplayName().startsWith("\u00a78")) {
  324.                     spectator.addPlayer((OfflinePlayer)p);
  325.                 }
  326.                 if (p.getDisplayName().startsWith("\u00a79")) {
  327.                     spieler.addPlayer((OfflinePlayer)p);
  328.                 }
  329.                 if (p.getDisplayName().startsWith("\u00a76")) {
  330.                     premium.addPlayer((OfflinePlayer)p);
  331.                 }
  332.                 if (p.getDisplayName().startsWith("\u00a75")) {
  333.                     youtuber.addPlayer((OfflinePlayer)p);
  334.                 }
  335.                 if (p.getDisplayName().startsWith("\u00a7a")) {
  336.                     builder.addPlayer((OfflinePlayer)p);
  337.                 }
  338.                 if (p.getDisplayName().startsWith("\u00a7b")) {
  339.                     developer.addPlayer((OfflinePlayer)p);
  340.                 }
  341.                 if (p.getDisplayName().startsWith("\u00a7c")) {
  342.                     if (!p.hasPermission("nick.srmoderator")) {
  343.                         moderator.addPlayer((OfflinePlayer)p);
  344.                     } else {
  345.                         srmoderator.addPlayer((OfflinePlayer)p);
  346.                     }
  347.                 }
  348.                 if (p.getDisplayName().startsWith("\u00a74")) {
  349.                     void administrator22;
  350.                     administrator22.addPlayer((OfflinePlayer)p);
  351.                 }
  352.                 p.setScoreboard(board);
  353.             }
  354.             p.setPlayerListName(name32);
  355.             iTag.getInstance().refreshPlayer(p);
  356.             if (!spectator.getPlayers().contains((Object)p)) {
  357.                 if (board.getObjective(DisplaySlot.SIDEBAR) != null && board.getObjective(DisplaySlot.SIDEBAR).getName() == "Kills" | board.getObjective(DisplaySlot.SIDEBAR).getName() == "Fails") {
  358.                     int score = board.getObjective(DisplaySlot.SIDEBAR).getScore(shortnick).getScore();
  359.                     board.resetScores(shortnick);
  360.                     if (name32.length() > 16) {
  361.                         name32 = name32.substring(0, 16);
  362.                     }
  363.                     board.getObjective(DisplaySlot.SIDEBAR).getScore(name32).setScore(score);
  364.                     if (board.getObjective(DisplaySlot.SIDEBAR).getScore(name32).getScore() == 0) {
  365.                         board.getObjective(DisplaySlot.SIDEBAR).getScore(name32).setScore(1);
  366.                         board.getObjective(DisplaySlot.SIDEBAR).getScore(name32).setScore(0);
  367.                     }
  368.                 }
  369.                 for (Player players22 : Bukkit.getOnlinePlayers()) {
  370.                     ItemStack is2;
  371.                     int i2;
  372.                     int n;
  373.                     ItemStack[] arritemStack;
  374.                     int n2;
  375.                     if (players22.getOpenInventory().getTitle() == "\u00a7eTeams") {
  376.                         int i22 = 0;
  377.                         arritemStack = players22.getOpenInventory().getTopInventory().getContents();
  378.                         n2 = arritemStack.length;
  379.                         n = 0;
  380.                         while (n < n2) {
  381.                             ItemStack is22 = arritemStack[n];
  382.                             if (is22 != null && is22.getType() != Material.AIR && is22.getItemMeta().getLore().contains(nick)) {
  383.                                 ArrayList Lore3 = new ArrayList();
  384.                                 ArrayList<String> Lore22 = new ArrayList<String>();
  385.                                 Lore3 = (ArrayList)is22.getItemMeta().getLore();
  386.                                 Iterator iterator = Lore3.iterator();
  387.                                 while (iterator.hasNext()) {
  388.                                     String s2 = (String)iterator.next();
  389.                                     if (s2.equalsIgnoreCase(nick)) {
  390.                                         s2 = p.getDisplayName();
  391.                                     }
  392.                                     Lore22.add(s2);
  393.                                 }
  394.                                 ItemStack IS2 = is22;
  395.                                 ItemMeta ISMeta2 = IS2.getItemMeta();
  396.                                 ISMeta2.setLore(Lore22);
  397.                                 IS2.setItemMeta(ISMeta2);
  398.                                 players22.getOpenInventory().setItem(i22, IS2);
  399.                                 players22.updateInventory();
  400.                             }
  401.                             ++i22;
  402.                             ++n;
  403.                         }
  404.                     }
  405.                     if (players22.getOpenInventory().getTitle() == "\u00a76Stats") {
  406.                         i2 = 0;
  407.                         arritemStack = players22.getOpenInventory().getTopInventory().getContents();
  408.                         n2 = arritemStack.length;
  409.                         n = 0;
  410.                         while (n < n2) {
  411.                             is2 = arritemStack[n];
  412.                             if (is2 != null && is2.getType() != Material.AIR && is2.getItemMeta().getDisplayName().equalsIgnoreCase(nick)) {
  413.                                 ArrayList SILore2 = new ArrayList();
  414.                                 SILore2 = (ArrayList)is2.getItemMeta().getLore();
  415.                                 ItemStack SI2 = new ItemStack(Material.SKULL_ITEM, 1, 3);
  416.                                 SkullMeta SIMeta2 = (SkullMeta)SI2.getItemMeta();
  417.                                 SIMeta2.setOwner(ChatColor.stripColor((String)p.getDisplayName()));
  418.                                 SIMeta2.setDisplayName(p.getDisplayName());
  419.                                 SIMeta2.setLore((List)SILore2);
  420.                                 SI2.setItemMeta((ItemMeta)SIMeta2);
  421.                                 players22.getOpenInventory().setItem(i2, SI2);
  422.                                 players22.updateInventory();
  423.                             }
  424.                             ++i2;
  425.                             ++n;
  426.                         }
  427.                     }
  428.                     if (players22.getOpenInventory().getTitle() != "\u00a76Teleporter") continue;
  429.                     i2 = 0;
  430.                     arritemStack = players22.getOpenInventory().getTopInventory().getContents();
  431.                     n2 = arritemStack.length;
  432.                     n = 0;
  433.                     while (n < n2) {
  434.                         is2 = arritemStack[n];
  435.                         if (is2 != null && is2.getType() != Material.AIR && is2.getItemMeta().getDisplayName().equalsIgnoreCase(nick)) {
  436.                             ItemStack SI3 = new ItemStack(Material.SKULL_ITEM, 1, 3);
  437.                             SkullMeta SIMeta3 = (SkullMeta)SI3.getItemMeta();
  438.                             SIMeta3.setOwner(ChatColor.stripColor((String)p.getDisplayName()));
  439.                             SIMeta3.setDisplayName(p.getDisplayName());
  440.                             SI3.setItemMeta((ItemMeta)SIMeta3);
  441.                             players22.getOpenInventory().setItem(i2, SI3);
  442.                             players22.updateInventory();
  443.                         }
  444.                         ++i2;
  445.                         ++n;
  446.                     }
  447.                 }
  448.             }
  449.         }
  450.         if (type == NickType.SPIELER) {
  451.             board = Bukkit.getScoreboardManager().getMainScoreboard();
  452.             spectator = board.getTeam("9-Spectator");
  453.             spieler = board.getTeam("8-Spieler");
  454.             premium = board.getTeam("7-Premium");
  455.             if (spectator == null) {
  456.                 spectator = board.registerNewTeam("9-Spectator");
  457.                 spectator.setPrefix("\u00a78");
  458.                 spectator.setCanSeeFriendlyInvisibles(true);
  459.             }
  460.             if (spieler == null) {
  461.                 spieler = board.registerNewTeam("8-Spieler");
  462.                 spieler.setPrefix("\u00a79");
  463.             }
  464.             if (premium == null) {
  465.                 premium = board.registerNewTeam("7-Premium");
  466.                 premium.setPrefix("\u00a76");
  467.             }
  468.             if (nickname.get(p.getName()) != null) {
  469.                 spectator.removeEntry(nickname.get(p.getName()));
  470.                 spieler.removeEntry(nickname.get(p.getName()));
  471.                 premium.removeEntry(nickname.get(p.getName()));
  472.             }
  473.             nicktype.put(p.getName(), NickType.SPIELER);
  474.             nickname.put(p.getName(), Nick.randomNick());
  475.             String name2 = "\u00a79" + nickname.get(p.getName());
  476.             p.setDisplayName(name2);
  477.             if (spectator.getPlayers().contains((Object)p)) {
  478.                 name2 = "\u00a78" + nickname.get(p.getName());
  479.             }
  480.             if (spectator.getPlayers().contains((Object)p)) {
  481.                 spectator.addEntry(nickname.get(p.getName()));
  482.             } else {
  483.                 spieler.addEntry(nickname.get(p.getName()));
  484.             }
  485.             p.setPlayerListName(name2);
  486.             iTag.getInstance().refreshPlayer(p);
  487.             if (!spectator.getPlayers().contains((Object)p)) {
  488.                 if (board.getObjective(DisplaySlot.SIDEBAR) != null && board.getObjective(DisplaySlot.SIDEBAR).getName() == "Kills" | board.getObjective(DisplaySlot.SIDEBAR).getName() == "Fails") {
  489.                     int score = board.getObjective(DisplaySlot.SIDEBAR).getScore(shortnick).getScore();
  490.                     board.resetScores(shortnick);
  491.                     if (name2.length() > 16) {
  492.                         name2 = name2.substring(0, 16);
  493.                     }
  494.                     board.getObjective(DisplaySlot.SIDEBAR).getScore(name2).setScore(score);
  495.                     if (board.getObjective(DisplaySlot.SIDEBAR).getScore(name2).getScore() == 0) {
  496.                         board.getObjective(DisplaySlot.SIDEBAR).getScore(name2).setScore(1);
  497.                         board.getObjective(DisplaySlot.SIDEBAR).getScore(name2).setScore(0);
  498.                     }
  499.                 }
  500.                 for (Player players3 : Bukkit.getOnlinePlayers()) {
  501.                     if (players3.getOpenInventory().getTitle() == "\u00a7eTeams") {
  502.                         int i3 = 0;
  503.                         ItemStack[] players22 = players3.getOpenInventory().getTopInventory().getContents();
  504.                         int name32 = players22.length;
  505.                         boolean administrator22 = false;
  506.                         while (++administrator22 < name32) {
  507.                             is = players22[administrator22];
  508.                             if (is != null && is.getType() != Material.AIR && is.getItemMeta().getLore().contains(nick)) {
  509.                                 Lore = new ArrayList();
  510.                                 Lore2 = new ArrayList<String>();
  511.                                 Lore = (ArrayList)is.getItemMeta().getLore();
  512.                                 Iterator iterator = Lore.iterator();
  513.                                 while (iterator.hasNext()) {
  514.                                     s = (String)iterator.next();
  515.                                     if (s.equalsIgnoreCase(nick)) {
  516.                                         s = p.getDisplayName();
  517.                                     }
  518.                                     Lore2.add(s);
  519.                                 }
  520.                                 IS = is;
  521.                                 ISMeta = IS.getItemMeta();
  522.                                 ISMeta.setLore(Lore2);
  523.                                 IS.setItemMeta(ISMeta);
  524.                                 players3.getOpenInventory().setItem(i3, IS);
  525.                                 players3.updateInventory();
  526.                             }
  527.                             ++i3;
  528.                         }
  529.                     }
  530.                     if (players3.getOpenInventory().getTitle() == "\u00a76Stats") {
  531.                         i = 0;
  532.                         players22 = players3.getOpenInventory().getTopInventory().getContents();
  533.                         name32 = (String)players22.length;
  534.                         administrator22 = (reference)false ? 1 : 0;
  535.                         while (administrator22 < name32) {
  536.                             is = players22[administrator22];
  537.                             if (is != null && is.getType() != Material.AIR && is.getItemMeta().getDisplayName().equalsIgnoreCase(nick)) {
  538.                                 SILore = new ArrayList();
  539.                                 SILore = (ArrayList)is.getItemMeta().getLore();
  540.                                 SI = new ItemStack(Material.SKULL_ITEM, 1, 3);
  541.                                 SIMeta = (SkullMeta)SI.getItemMeta();
  542.                                 SIMeta.setOwner(ChatColor.stripColor((String)p.getDisplayName()));
  543.                                 SIMeta.setDisplayName(p.getDisplayName());
  544.                                 SIMeta.setLore((List)SILore);
  545.                                 SI.setItemMeta((ItemMeta)SIMeta);
  546.                                 players3.getOpenInventory().setItem(i, SI);
  547.                                 players3.updateInventory();
  548.                             }
  549.                             ++i;
  550.                             ++administrator22;
  551.                         }
  552.                     }
  553.                     if (players3.getOpenInventory().getTitle() != "\u00a76Teleporter") continue;
  554.                     i = 0;
  555.                     players22 = players3.getOpenInventory().getTopInventory().getContents();
  556.                     name32 = (String)players22.length;
  557.                     administrator22 = (reference)false ? 1 : 0;
  558.                     while (administrator22 < name32) {
  559.                         is = players22[administrator22];
  560.                         if (is != null && is.getType() != Material.AIR && is.getItemMeta().getDisplayName().equalsIgnoreCase(nick)) {
  561.                             SILore = new ArrayList();
  562.                             SILore = (ArrayList)is.getItemMeta().getLore();
  563.                             SI = new ItemStack(Material.SKULL_ITEM, 1, 3);
  564.                             SIMeta = (SkullMeta)SI.getItemMeta();
  565.                             SIMeta.setOwner(ChatColor.stripColor((String)p.getDisplayName()));
  566.                             SIMeta.setDisplayName(p.getDisplayName());
  567.                             SIMeta.setLore((List)SILore);
  568.                             SI.setItemMeta((ItemMeta)SIMeta);
  569.                             players3.getOpenInventory().setItem(i, SI);
  570.                             players3.updateInventory();
  571.                         }
  572.                         ++i;
  573.                         ++administrator22;
  574.                     }
  575.                 }
  576.             }
  577.             p.sendMessage(String.valueOf(prefix) + "\u00a73Dein \u00a75Nick \u00a73wurde \u00a7aaktiviert\u00a73.");
  578.             p.sendMessage(String.valueOf(prefix) + "\u00a73Du wirst als \u00a79" + nickname.get(p.getName()) + " \u00a73angezeigt.");
  579.         }
  580.         if (type == NickType.PREMIUM) {
  581.             board = Bukkit.getScoreboardManager().getMainScoreboard();
  582.             spectator = board.getTeam("9-Spectator");
  583.             spieler = board.getTeam("8-Spieler");
  584.             premium = board.getTeam("7-Premium");
  585.             if (spectator == null) {
  586.                 spectator = board.registerNewTeam("9-Spectator");
  587.                 spectator.setPrefix("\u00a78");
  588.                 spectator.setCanSeeFriendlyInvisibles(true);
  589.             }
  590.             if (spieler == null) {
  591.                 spieler = board.registerNewTeam("8-Spieler");
  592.                 spieler.setPrefix("\u00a79");
  593.             }
  594.             if (premium == null) {
  595.                 premium = board.registerNewTeam("7-Premium");
  596.                 premium.setPrefix("\u00a76");
  597.             }
  598.             if (nickname.get(p.getName()) != null) {
  599.                 spectator.removeEntry(nickname.get(p.getName()));
  600.                 spieler.removeEntry(nickname.get(p.getName()));
  601.                 premium.removeEntry(nickname.get(p.getName()));
  602.             }
  603.             nicktype.put(p.getName(), NickType.PREMIUM);
  604.             nickname.put(p.getName(), Nick.randomNick());
  605.             String name = "\u00a76" + nickname.get(p.getName());
  606.             p.setDisplayName(name);
  607.             if (spectator.getPlayers().contains((Object)p)) {
  608.                 name = "\u00a78" + nickname.get(p.getName());
  609.             }
  610.             if (spectator.getPlayers().contains((Object)p)) {
  611.                 spectator.addEntry(nickname.get(p.getName()));
  612.             } else {
  613.                 premium.addEntry(nickname.get(p.getName()));
  614.             }
  615.             p.setPlayerListName(name);
  616.             iTag.getInstance().refreshPlayer(p);
  617.             if (!spectator.getPlayers().contains((Object)p)) {
  618.                 if (board.getObjective(DisplaySlot.SIDEBAR) != null && board.getObjective(DisplaySlot.SIDEBAR).getName() == "Kills" | board.getObjective(DisplaySlot.SIDEBAR).getName() == "Fails") {
  619.                     int score = board.getObjective(DisplaySlot.SIDEBAR).getScore(shortnick).getScore();
  620.                     board.resetScores(shortnick);
  621.                     if (name.length() > 16) {
  622.                         name = name.substring(0, 16);
  623.                     }
  624.                     board.getObjective(DisplaySlot.SIDEBAR).getScore(name).setScore(score);
  625.                     if (board.getObjective(DisplaySlot.SIDEBAR).getScore(name).getScore() == 0) {
  626.                         board.getObjective(DisplaySlot.SIDEBAR).getScore(name).setScore(1);
  627.                         board.getObjective(DisplaySlot.SIDEBAR).getScore(name).setScore(0);
  628.                     }
  629.                 }
  630.                 for (Player players : Bukkit.getOnlinePlayers()) {
  631.                     if (players.getOpenInventory().getTitle() == "\u00a7eTeams") {
  632.                         int i4 = 0;
  633.                         ItemStack[] players22 = players.getOpenInventory().getTopInventory().getContents();
  634.                         int name32 = players22.length;
  635.                         boolean administrator22 = false;
  636.                         while (++administrator22 < name32) {
  637.                             is = players22[administrator22];
  638.                             if (is != null && is.getType() != Material.AIR && is.getItemMeta().getLore().contains(nick)) {
  639.                                 Lore = new ArrayList();
  640.                                 Lore2 = new ArrayList();
  641.                                 Lore = (ArrayList)is.getItemMeta().getLore();
  642.                                 ISMeta = Lore.iterator();
  643.                                 while (ISMeta.hasNext()) {
  644.                                     s = (String)ISMeta.next();
  645.                                     if (s.equalsIgnoreCase(nick)) {
  646.                                         s = p.getDisplayName();
  647.                                     }
  648.                                     Lore2.add(s);
  649.                                 }
  650.                                 IS = is;
  651.                                 ISMeta = IS.getItemMeta();
  652.                                 ISMeta.setLore(Lore2);
  653.                                 IS.setItemMeta(ISMeta);
  654.                                 players.getOpenInventory().setItem(i4, IS);
  655.                                 players.updateInventory();
  656.                             }
  657.                             ++i4;
  658.                         }
  659.                     }
  660.                     if (players.getOpenInventory().getTitle() == "\u00a76Stats") {
  661.                         i = 0;
  662.                         players22 = players.getOpenInventory().getTopInventory().getContents();
  663.                         name32 = (String)players22.length;
  664.                         administrator22 = (reference)false ? 1 : 0;
  665.                         while (administrator22 < name32) {
  666.                             is = players22[administrator22];
  667.                             if (is != null && is.getType() != Material.AIR && is.getItemMeta().getDisplayName().equalsIgnoreCase(nick)) {
  668.                                 SILore = new ArrayList();
  669.                                 SILore = (ArrayList)is.getItemMeta().getLore();
  670.                                 SI = new ItemStack(Material.SKULL_ITEM, 1, 3);
  671.                                 SIMeta = (SkullMeta)SI.getItemMeta();
  672.                                 SIMeta.setOwner(ChatColor.stripColor((String)p.getDisplayName()));
  673.                                 SIMeta.setDisplayName(p.getDisplayName());
  674.                                 SIMeta.setLore((List)SILore);
  675.                                 SI.setItemMeta((ItemMeta)SIMeta);
  676.                                 players.getOpenInventory().setItem(i, SI);
  677.                                 players.updateInventory();
  678.                             }
  679.                             ++i;
  680.                             ++administrator22;
  681.                         }
  682.                     }
  683.                     if (players.getOpenInventory().getTitle() != "\u00a76Teleporter") continue;
  684.                     i = 0;
  685.                     players22 = players.getOpenInventory().getTopInventory().getContents();
  686.                     name32 = (String)players22.length;
  687.                     administrator22 = (reference)false ? 1 : 0;
  688.                     while (administrator22 < name32) {
  689.                         is = players22[administrator22];
  690.                         if (is != null && is.getType() != Material.AIR && is.getItemMeta().getDisplayName().equalsIgnoreCase(nick)) {
  691.                             SILore = new ArrayList();
  692.                             SILore = (ArrayList)is.getItemMeta().getLore();
  693.                             SI = new ItemStack(Material.SKULL_ITEM, 1, 3);
  694.                             SIMeta = (SkullMeta)SI.getItemMeta();
  695.                             SIMeta.setOwner(ChatColor.stripColor((String)p.getDisplayName()));
  696.                             SIMeta.setDisplayName(p.getDisplayName());
  697.                             SIMeta.setLore((List)SILore);
  698.                             SI.setItemMeta((ItemMeta)SIMeta);
  699.                             players.getOpenInventory().setItem(i, SI);
  700.                             players.updateInventory();
  701.                         }
  702.                         ++i;
  703.                         ++administrator22;
  704.                     }
  705.                 }
  706.             }
  707.             p.sendMessage(String.valueOf(prefix) + "\u00a73Dein \u00a75Nick \u00a73wurde \u00a7aaktiviert\u00a73.");
  708.             p.sendMessage(String.valueOf(prefix) + "\u00a73Du wirst als \u00a76" + nickname.get(p.getName()) + " \u00a73angezeigt.");
  709.         }
  710.     }
  711.  
  712.     public static void setCustomNick(Player p, final NickType type, final String customnick) {
  713.         Bukkit.getScheduler().runTaskAsynchronously((Plugin)plugin, new Runnable(){
  714.  
  715.             @Override
  716.             public void run() {
  717.                 String name;
  718.                 GameProfile gp;
  719.                 int i;
  720.                 boolean containsNick;
  721.                 ArrayList SILore;
  722.                 String s;
  723.                 ItemStack[] arritemStack;
  724.                 ItemMeta ISMeta;
  725.                 GameProfile profile;
  726.                 int n;
  727.                 Team spectator;
  728.                 ArrayList<String> Lore2;
  729.                 ItemStack SI;
  730.                 Scoreboard board;
  731.                 ItemStack is;
  732.                 ItemStack IS;
  733.                 int n2;
  734.                 SkullMeta SIMeta;
  735.                 Team premium;
  736.                 Team spieler;
  737.                 ArrayList Lore;
  738.                 String nick = "";
  739.                 String shortnick = "";
  740.                 if (Nick.nickname.get(Player.this.getName()) != null) {
  741.                     if (Nick.nicktype.get(Player.this.getName()) == NickType.SPIELER) {
  742.                         nick = "\u00a79" + Nick.nickname.get(Player.this.getName());
  743.                         shortnick = nick.length() > 16 ? nick.substring(0, 16) : "\u00a79" + Nick.nickname.get(Player.this.getName());
  744.                     }
  745.                     if (Nick.nicktype.get(Player.this.getName()) == NickType.PREMIUM) {
  746.                         nick = "\u00a76" + Nick.nickname.get(Player.this.getName());
  747.                         shortnick = nick.length() > 16 ? nick.substring(0, 16) : "\u00a76" + Nick.nickname.get(Player.this.getName());
  748.                     }
  749.                 } else {
  750.                     nick = Player.this.getDisplayName();
  751.                     shortnick = nick.length() > 16 ? nick.substring(0, 16) : Player.this.getDisplayName();
  752.                 }
  753.                 if (type == NickType.SPIELER) {
  754.                     board = Bukkit.getScoreboardManager().getMainScoreboard();
  755.                     spectator = board.getTeam("9-Spectator");
  756.                     spieler = board.getTeam("8-Spieler");
  757.                     premium = board.getTeam("7-Premium");
  758.                     if (spectator == null) {
  759.                         spectator = board.registerNewTeam("9-Spectator");
  760.                         spectator.setPrefix("\u00a78");
  761.                         spectator.setCanSeeFriendlyInvisibles(true);
  762.                     }
  763.                     if (spieler == null) {
  764.                         spieler = board.registerNewTeam("8-Spieler");
  765.                         spieler.setPrefix("\u00a79");
  766.                     }
  767.                     if (premium == null) {
  768.                         premium = board.registerNewTeam("7-Premium");
  769.                         premium.setPrefix("\u00a76");
  770.                     }
  771.                     if (Nick.nickname.get(Player.this.getName()) != null) {
  772.                         spectator.removeEntry(Nick.nickname.get(Player.this.getName()));
  773.                         spieler.removeEntry(Nick.nickname.get(Player.this.getName()));
  774.                         premium.removeEntry(Nick.nickname.get(Player.this.getName()));
  775.                     }
  776.                     Nick.nicktype.put(Player.this.getName(), NickType.SPIELER);
  777.                     Nick.nickname.put(Player.this.getName(), customnick);
  778.                     containsNick = false;
  779.                     gp = null;
  780.                     for (String nicknames : Nick.gameprofile.keySet()) {
  781.                         if (!nicknames.equalsIgnoreCase(customnick)) continue;
  782.                         containsNick = true;
  783.                         gp = Nick.gameprofile.get(nicknames);
  784.                     }
  785.                     if (!containsNick) {
  786.                         try {
  787.                             profile = Nick.getGameProfile(Nick.nickname.get(Player.this.getName()));
  788.                             Nick.nickname.put(Player.this.getName(), profile.getName());
  789.                             Nick.gameprofile.put(Nick.nickname.get(Player.this.getName()), profile);
  790.                         }
  791.                         catch (NullPointerException ex) {
  792.                             ex.printStackTrace();
  793.                         }
  794.                     } else {
  795.                         Nick.nickname.put(Player.this.getName(), gp.getName());
  796.                     }
  797.                     name = "\u00a79" + Nick.nickname.get(Player.this.getName());
  798.                     Player.this.setDisplayName(name);
  799.                     if (spectator.getPlayers().contains((Object)Player.this)) {
  800.                         name = "\u00a78" + Nick.nickname.get(Player.this.getName());
  801.                     }
  802.                     if (spectator.getPlayers().contains((Object)Player.this)) {
  803.                         spectator.addEntry(Nick.nickname.get(Player.this.getName()));
  804.                     } else {
  805.                         spieler.addEntry(Nick.nickname.get(Player.this.getName()));
  806.                     }
  807.                     Player.this.setPlayerListName(name);
  808.                     Bukkit.getScheduler().runTask((Plugin)Nick.plugin, new Runnable(Player.this){
  809.                         private final /* synthetic */ Player val$p;
  810.  
  811.                         @Override
  812.                         public void run() {
  813.                             iTag.getInstance().refreshPlayer(this.val$p);
  814.                         }
  815.                     });
  816.                     if (!spectator.getPlayers().contains((Object)Player.this)) {
  817.                         if (board.getObjective(DisplaySlot.SIDEBAR) != null && board.getObjective(DisplaySlot.SIDEBAR).getName() == "Kills" | board.getObjective(DisplaySlot.SIDEBAR).getName() == "Fails") {
  818.                             int score = board.getObjective(DisplaySlot.SIDEBAR).getScore(shortnick).getScore();
  819.                             board.resetScores(shortnick);
  820.                             if (name.length() > 16) {
  821.                                 name = name.substring(0, 16);
  822.                             }
  823.                             board.getObjective(DisplaySlot.SIDEBAR).getScore(name).setScore(score);
  824.                             if (board.getObjective(DisplaySlot.SIDEBAR).getScore(name).getScore() == 0) {
  825.                                 board.getObjective(DisplaySlot.SIDEBAR).getScore(name).setScore(1);
  826.                                 board.getObjective(DisplaySlot.SIDEBAR).getScore(name).setScore(0);
  827.                             }
  828.                         }
  829.                         for (Player players : Bukkit.getOnlinePlayers()) {
  830.                             if (players.getOpenInventory().getTitle() == "\u00a7eTeams") {
  831.                                 i = 0;
  832.                                 arritemStack = players.getOpenInventory().getTopInventory().getContents();
  833.                                 n2 = arritemStack.length;
  834.                                 n = 0;
  835.                                 while (n < n2) {
  836.                                     is = arritemStack[n];
  837.                                     if (is != null && is.getType() != Material.AIR && is.getItemMeta().getLore().contains(nick)) {
  838.                                         Lore = new ArrayList();
  839.                                         Lore2 = new ArrayList<String>();
  840.                                         Lore = (ArrayList)is.getItemMeta().getLore();
  841.                                         Iterator iterator = Lore.iterator();
  842.                                         while (iterator.hasNext()) {
  843.                                             s = (String)iterator.next();
  844.                                             if (s.equalsIgnoreCase(nick)) {
  845.                                                 s = Player.this.getDisplayName();
  846.                                             }
  847.                                             Lore2.add(s);
  848.                                         }
  849.                                         IS = is;
  850.                                         ISMeta = IS.getItemMeta();
  851.                                         ISMeta.setLore(Lore2);
  852.                                         IS.setItemMeta(ISMeta);
  853.                                         players.getOpenInventory().setItem(i, IS);
  854.                                         players.updateInventory();
  855.                                     }
  856.                                     ++i;
  857.                                     ++n;
  858.                                 }
  859.                             }
  860.                             if (players.getOpenInventory().getTitle() == "\u00a76Stats") {
  861.                                 i = 0;
  862.                                 arritemStack = players.getOpenInventory().getTopInventory().getContents();
  863.                                 n2 = arritemStack.length;
  864.                                 n = 0;
  865.                                 while (n < n2) {
  866.                                     is = arritemStack[n];
  867.                                     if (is != null && is.getType() != Material.AIR && is.getItemMeta().getDisplayName().equalsIgnoreCase(nick)) {
  868.                                         SILore = new ArrayList();
  869.                                         SILore = (ArrayList)is.getItemMeta().getLore();
  870.                                         SI = new ItemStack(Material.SKULL_ITEM, 1, 3);
  871.                                         SIMeta = (SkullMeta)SI.getItemMeta();
  872.                                         SIMeta.setOwner(ChatColor.stripColor((String)Player.this.getDisplayName()));
  873.                                         SIMeta.setDisplayName(Player.this.getDisplayName());
  874.                                         SIMeta.setLore((List)SILore);
  875.                                         SI.setItemMeta((ItemMeta)SIMeta);
  876.                                         players.getOpenInventory().setItem(i, SI);
  877.                                         players.updateInventory();
  878.                                     }
  879.                                     ++i;
  880.                                     ++n;
  881.                                 }
  882.                             }
  883.                             if (players.getOpenInventory().getTitle() != "\u00a76Teleporter") continue;
  884.                             i = 0;
  885.                             arritemStack = players.getOpenInventory().getTopInventory().getContents();
  886.                             n2 = arritemStack.length;
  887.                             n = 0;
  888.                             while (n < n2) {
  889.                                 is = arritemStack[n];
  890.                                 if (is != null && is.getType() != Material.AIR && is.getItemMeta().getDisplayName().equalsIgnoreCase(nick)) {
  891.                                     SILore = new ArrayList();
  892.                                     SILore = (ArrayList)is.getItemMeta().getLore();
  893.                                     SI = new ItemStack(Material.SKULL_ITEM, 1, 3);
  894.                                     SIMeta = (SkullMeta)SI.getItemMeta();
  895.                                     SIMeta.setOwner(ChatColor.stripColor((String)Player.this.getDisplayName()));
  896.                                     SIMeta.setDisplayName(Player.this.getDisplayName());
  897.                                     SIMeta.setLore((List)SILore);
  898.                                     SI.setItemMeta((ItemMeta)SIMeta);
  899.                                     players.getOpenInventory().setItem(i, SI);
  900.                                     players.updateInventory();
  901.                                 }
  902.                                 ++i;
  903.                                 ++n;
  904.                             }
  905.                         }
  906.                     }
  907.                     Player.this.sendMessage(String.valueOf(Nick.prefix) + "\u00a73Dein \u00a75Nick \u00a73wurde \u00a7aaktiviert\u00a73.");
  908.                     Player.this.sendMessage(String.valueOf(Nick.prefix) + "\u00a73Du wirst als \u00a79" + Nick.nickname.get(Player.this.getName()) + " \u00a73angezeigt.");
  909.                 }
  910.                 if (type == NickType.PREMIUM) {
  911.                     board = Bukkit.getScoreboardManager().getMainScoreboard();
  912.                     spectator = board.getTeam("9-Spectator");
  913.                     spieler = board.getTeam("8-Spieler");
  914.                     premium = board.getTeam("7-Premium");
  915.                     if (spectator == null) {
  916.                         spectator = board.registerNewTeam("9-Spectator");
  917.                         spectator.setPrefix("\u00a78");
  918.                         spectator.setCanSeeFriendlyInvisibles(true);
  919.                     }
  920.                     if (spieler == null) {
  921.                         spieler = board.registerNewTeam("8-Spieler");
  922.                         spieler.setPrefix("\u00a79");
  923.                     }
  924.                     if (premium == null) {
  925.                         premium = board.registerNewTeam("7-Premium");
  926.                         premium.setPrefix("\u00a76");
  927.                     }
  928.                     if (Nick.nickname.get(Player.this.getName()) != null) {
  929.                         spectator.removeEntry(Nick.nickname.get(Player.this.getName()));
  930.                         spieler.removeEntry(Nick.nickname.get(Player.this.getName()));
  931.                         premium.removeEntry(Nick.nickname.get(Player.this.getName()));
  932.                     }
  933.                     Nick.nicktype.put(Player.this.getName(), NickType.PREMIUM);
  934.                     Nick.nickname.put(Player.this.getName(), customnick);
  935.                     containsNick = false;
  936.                     gp = null;
  937.                     for (String nicknames : Nick.gameprofile.keySet()) {
  938.                         if (!nicknames.equalsIgnoreCase(customnick)) continue;
  939.                         containsNick = true;
  940.                         gp = Nick.gameprofile.get(nicknames);
  941.                     }
  942.                     if (!containsNick) {
  943.                         try {
  944.                             profile = Nick.getGameProfile(Nick.nickname.get(Player.this.getName()));
  945.                             Nick.nickname.put(Player.this.getName(), profile.getName());
  946.                             Nick.gameprofile.put(Nick.nickname.get(Player.this.getName()), profile);
  947.                         }
  948.                         catch (NullPointerException ex) {
  949.                             ex.printStackTrace();
  950.                         }
  951.                     } else {
  952.                         Nick.nickname.put(Player.this.getName(), gp.getName());
  953.                     }
  954.                     name = "\u00a76" + Nick.nickname.get(Player.this.getName());
  955.                     Player.this.setDisplayName(name);
  956.                     if (spectator.getPlayers().contains((Object)Player.this)) {
  957.                         name = "\u00a78" + Nick.nickname.get(Player.this.getName());
  958.                     }
  959.                     if (spectator.getPlayers().contains((Object)Player.this)) {
  960.                         spectator.addEntry(Nick.nickname.get(Player.this.getName()));
  961.                     } else {
  962.                         premium.addEntry(Nick.nickname.get(Player.this.getName()));
  963.                     }
  964.                     Player.this.setPlayerListName(name);
  965.                     Bukkit.getScheduler().runTask((Plugin)Nick.plugin, new Runnable(Player.this){
  966.                         private final /* synthetic */ Player val$p;
  967.  
  968.                         @Override
  969.                         public void run() {
  970.                             iTag.getInstance().refreshPlayer(this.val$p);
  971.                         }
  972.                     });
  973.                     if (!spectator.getPlayers().contains((Object)Player.this)) {
  974.                         if (board.getObjective(DisplaySlot.SIDEBAR) != null && board.getObjective(DisplaySlot.SIDEBAR).getName() == "Kills" | board.getObjective(DisplaySlot.SIDEBAR).getName() == "Fails") {
  975.                             int score = board.getObjective(DisplaySlot.SIDEBAR).getScore(shortnick).getScore();
  976.                             board.resetScores(shortnick);
  977.                             if (name.length() > 16) {
  978.                                 name = name.substring(0, 16);
  979.                             }
  980.                             board.getObjective(DisplaySlot.SIDEBAR).getScore(name).setScore(score);
  981.                             if (board.getObjective(DisplaySlot.SIDEBAR).getScore(name).getScore() == 0) {
  982.                                 board.getObjective(DisplaySlot.SIDEBAR).getScore(name).setScore(1);
  983.                                 board.getObjective(DisplaySlot.SIDEBAR).getScore(name).setScore(0);
  984.                             }
  985.                         }
  986.                         for (Player players : Bukkit.getOnlinePlayers()) {
  987.                             if (players.getOpenInventory().getTitle() == "\u00a7eTeams") {
  988.                                 i = 0;
  989.                                 arritemStack = players.getOpenInventory().getTopInventory().getContents();
  990.                                 n2 = arritemStack.length;
  991.                                 n = 0;
  992.                                 while (n < n2) {
  993.                                     is = arritemStack[n];
  994.                                     if (is != null && is.getType() != Material.AIR && is.getItemMeta().getLore().contains(nick)) {
  995.                                         Lore = new ArrayList();
  996.                                         Lore2 = new ArrayList();
  997.                                         Lore = (ArrayList)is.getItemMeta().getLore();
  998.                                         ISMeta = Lore.iterator();
  999.                                         while (ISMeta.hasNext()) {
  1000.                                             s = (String)ISMeta.next();
  1001.                                             if (s.equalsIgnoreCase(nick)) {
  1002.                                                 s = Player.this.getDisplayName();
  1003.                                             }
  1004.                                             Lore2.add(s);
  1005.                                         }
  1006.                                         IS = is;
  1007.                                         ISMeta = IS.getItemMeta();
  1008.                                         ISMeta.setLore(Lore2);
  1009.                                         IS.setItemMeta(ISMeta);
  1010.                                         players.getOpenInventory().setItem(i, IS);
  1011.                                         players.updateInventory();
  1012.                                     }
  1013.                                     ++i;
  1014.                                     ++n;
  1015.                                 }
  1016.                             }
  1017.                             if (players.getOpenInventory().getTitle() == "\u00a76Stats") {
  1018.                                 i = 0;
  1019.                                 arritemStack = players.getOpenInventory().getTopInventory().getContents();
  1020.                                 n2 = arritemStack.length;
  1021.                                 n = 0;
  1022.                                 while (n < n2) {
  1023.                                     is = arritemStack[n];
  1024.                                     if (is != null && is.getType() != Material.AIR && is.getItemMeta().getDisplayName().equalsIgnoreCase(nick)) {
  1025.                                         SILore = new ArrayList();
  1026.                                         SILore = (ArrayList)is.getItemMeta().getLore();
  1027.                                         SI = new ItemStack(Material.SKULL_ITEM, 1, 3);
  1028.                                         SIMeta = (SkullMeta)SI.getItemMeta();
  1029.                                         SIMeta.setOwner(ChatColor.stripColor((String)Player.this.getDisplayName()));
  1030.                                         SIMeta.setDisplayName(Player.this.getDisplayName());
  1031.                                         SIMeta.setLore((List)SILore);
  1032.                                         SI.setItemMeta((ItemMeta)SIMeta);
  1033.                                         players.getOpenInventory().setItem(i, SI);
  1034.                                         players.updateInventory();
  1035.                                     }
  1036.                                     ++i;
  1037.                                     ++n;
  1038.                                 }
  1039.                             }
  1040.                             if (players.getOpenInventory().getTitle() != "\u00a76Teleporter") continue;
  1041.                             i = 0;
  1042.                             arritemStack = players.getOpenInventory().getTopInventory().getContents();
  1043.                             n2 = arritemStack.length;
  1044.                             n = 0;
  1045.                             while (n < n2) {
  1046.                                 is = arritemStack[n];
  1047.                                 if (is != null && is.getType() != Material.AIR && is.getItemMeta().getDisplayName().equalsIgnoreCase(nick)) {
  1048.                                     SILore = new ArrayList();
  1049.                                     SILore = (ArrayList)is.getItemMeta().getLore();
  1050.                                     SI = new ItemStack(Material.SKULL_ITEM, 1, 3);
  1051.                                     SIMeta = (SkullMeta)SI.getItemMeta();
  1052.                                     SIMeta.setOwner(ChatColor.stripColor((String)Player.this.getDisplayName()));
  1053.                                     SIMeta.setDisplayName(Player.this.getDisplayName());
  1054.                                     SIMeta.setLore((List)SILore);
  1055.                                     SI.setItemMeta((ItemMeta)SIMeta);
  1056.                                     players.getOpenInventory().setItem(i, SI);
  1057.                                     players.updateInventory();
  1058.                                 }
  1059.                                 ++i;
  1060.                                 ++n;
  1061.                             }
  1062.                         }
  1063.                     }
  1064.                     Player.this.sendMessage(String.valueOf(Nick.prefix) + "\u00a73Dein \u00a75Nick \u00a73wurde \u00a7aaktiviert\u00a73.");
  1065.                     Player.this.sendMessage(String.valueOf(Nick.prefix) + "\u00a73Du wirst als \u00a76" + Nick.nickname.get(Player.this.getName()) + " \u00a73angezeigt.");
  1066.                 }
  1067.             }
  1068.  
  1069.         });
  1070.     }
  1071.  
  1072.     public static void resetNick(Player p) {
  1073.         String nick = "";
  1074.         String shortnick = "";
  1075.         if (nickname.get(p.getName()) != null) {
  1076.             if (nicktype.get(p.getName()) == NickType.SPIELER) {
  1077.                 nick = "\u00a79" + nickname.get(p.getName());
  1078.                 shortnick = nick.length() > 16 ? nick.substring(0, 16) : "\u00a79" + nickname.get(p.getName());
  1079.             }
  1080.             if (nicktype.get(p.getName()) == NickType.PREMIUM) {
  1081.                 nick = "\u00a76" + nickname.get(p.getName());
  1082.                 shortnick = nick.length() > 16 ? nick.substring(0, 16) : "\u00a76" + nickname.get(p.getName());
  1083.             }
  1084.         } else {
  1085.             nick = p.getDisplayName();
  1086.             shortnick = nick.length() > 16 ? nick.substring(0, 16) : p.getDisplayName();
  1087.         }
  1088.         Scoreboard board = Bukkit.getScoreboardManager().getMainScoreboard();
  1089.         Team spectator = board.getTeam("9-Spectator");
  1090.         Team spieler = board.getTeam("8-Spieler");
  1091.         Team premium = board.getTeam("7-Premium");
  1092.         Team youtuber = board.getTeam("6-YouTuber");
  1093.         Team builder = board.getTeam("5-Builder");
  1094.         Team developer = board.getTeam("4-Developer");
  1095.         Team moderator = board.getTeam("3-Moderator");
  1096.         Team srmoderator = board.getTeam("2-SrModerator");
  1097.         Team administrator = board.getTeam("1-Administrator");
  1098.         if (spectator == null) {
  1099.             spectator = board.registerNewTeam("9-Spectator");
  1100.             spectator.setPrefix("\u00a78");
  1101.             spectator.setCanSeeFriendlyInvisibles(true);
  1102.         }
  1103.         if (spieler == null) {
  1104.             spieler = board.registerNewTeam("8-Spieler");
  1105.             spieler.setPrefix("\u00a79");
  1106.         }
  1107.         if (premium == null) {
  1108.             premium = board.registerNewTeam("7-Premium");
  1109.             premium.setPrefix("\u00a76");
  1110.         }
  1111.         if (youtuber == null) {
  1112.             youtuber = board.registerNewTeam("6-YouTuber");
  1113.             youtuber.setPrefix("\u00a75");
  1114.         }
  1115.         if (builder == null) {
  1116.             builder = board.registerNewTeam("5-Builder");
  1117.             builder.setPrefix("\u00a7a");
  1118.         }
  1119.         if (developer == null) {
  1120.             developer = board.registerNewTeam("4-Developer");
  1121.             developer.setPrefix("\u00a7b");
  1122.         }
  1123.         if (moderator == null) {
  1124.             moderator = board.registerNewTeam("3-Moderator");
  1125.             moderator.setPrefix("\u00a7c");
  1126.         }
  1127.         if (srmoderator == null) {
  1128.             srmoderator = board.registerNewTeam("2-SrModerator");
  1129.             srmoderator.setPrefix("\u00a7c");
  1130.         }
  1131.         if (administrator == null) {
  1132.             administrator = board.registerNewTeam("1-Administrator");
  1133.             administrator.setPrefix("\u00a74");
  1134.         }
  1135.         spectator.removeEntry(nickname.get(p.getName()));
  1136.         spieler.removeEntry(nickname.get(p.getName()));
  1137.         premium.removeEntry(nickname.get(p.getName()));
  1138.         nickname.remove(p.getName());
  1139.         nicktype.remove(p.getName());
  1140.         String name = "\u00a79" + p.getName();
  1141.         if (p.hasPermission("nick.premium")) {
  1142.             name = "\u00a76" + p.getName();
  1143.         }
  1144.         if (p.hasPermission("nick.youtuber")) {
  1145.             name = "\u00a75" + p.getName();
  1146.         }
  1147.         if (p.hasPermission("nick.builder")) {
  1148.             name = "\u00a7a" + p.getName();
  1149.         }
  1150.         if (p.hasPermission("nick.developer")) {
  1151.             name = "\u00a7b" + p.getName();
  1152.         }
  1153.         if (p.hasPermission("nick.moderator") | p.hasPermission("nick.srmoderator")) {
  1154.             name = "\u00a7c" + p.getName();
  1155.         }
  1156.         if (p.hasPermission("nick.administrator")) {
  1157.             name = "\u00a74" + p.getName();
  1158.         }
  1159.         p.setDisplayName(name);
  1160.         if (spectator.getPlayers().contains((Object)p)) {
  1161.             name = "\u00a78" + p.getName();
  1162.         } else {
  1163.             if (p.getDisplayName().startsWith("\u00a78")) {
  1164.                 spectator.addPlayer((OfflinePlayer)p);
  1165.             }
  1166.             if (p.getDisplayName().startsWith("\u00a79")) {
  1167.                 spieler.addPlayer((OfflinePlayer)p);
  1168.             }
  1169.             if (p.getDisplayName().startsWith("\u00a76")) {
  1170.                 premium.addPlayer((OfflinePlayer)p);
  1171.             }
  1172.             if (p.getDisplayName().startsWith("\u00a75")) {
  1173.                 youtuber.addPlayer((OfflinePlayer)p);
  1174.             }
  1175.             if (p.getDisplayName().startsWith("\u00a7a")) {
  1176.                 builder.addPlayer((OfflinePlayer)p);
  1177.             }
  1178.             if (p.getDisplayName().startsWith("\u00a7b")) {
  1179.                 developer.addPlayer((OfflinePlayer)p);
  1180.             }
  1181.             if (p.getDisplayName().startsWith("\u00a7c")) {
  1182.                 if (!p.hasPermission("nick.srmoderator")) {
  1183.                     moderator.addPlayer((OfflinePlayer)p);
  1184.                 } else {
  1185.                     srmoderator.addPlayer((OfflinePlayer)p);
  1186.                 }
  1187.             }
  1188.             if (p.getDisplayName().startsWith("\u00a74")) {
  1189.                 administrator.addPlayer((OfflinePlayer)p);
  1190.             }
  1191.             p.setScoreboard(board);
  1192.         }
  1193.         p.setPlayerListName(name);
  1194.         iTag.getInstance().refreshPlayer(p);
  1195.         if (!spectator.getPlayers().contains((Object)p)) {
  1196.             if (board.getObjective(DisplaySlot.SIDEBAR) != null && board.getObjective(DisplaySlot.SIDEBAR).getName() == "Kills" | board.getObjective(DisplaySlot.SIDEBAR).getName() == "Fails") {
  1197.                 int score = board.getObjective(DisplaySlot.SIDEBAR).getScore(shortnick).getScore();
  1198.                 board.resetScores(shortnick);
  1199.                 if (name.length() > 16) {
  1200.                     name = name.substring(0, 16);
  1201.                 }
  1202.                 board.getObjective(DisplaySlot.SIDEBAR).getScore(name).setScore(score);
  1203.                 if (board.getObjective(DisplaySlot.SIDEBAR).getScore(name).getScore() == 0) {
  1204.                     board.getObjective(DisplaySlot.SIDEBAR).getScore(name).setScore(1);
  1205.                     board.getObjective(DisplaySlot.SIDEBAR).getScore(name).setScore(0);
  1206.                 }
  1207.             }
  1208.             for (Player players : Bukkit.getOnlinePlayers()) {
  1209.                 ItemStack is;
  1210.                 ItemStack SI;
  1211.                 int n;
  1212.                 ArrayList SILore;
  1213.                 ItemStack[] arritemStack;
  1214.                 int i;
  1215.                 int n2;
  1216.                 SkullMeta SIMeta;
  1217.                 if (players.getOpenInventory().getTitle() == "\u00a7eTeams") {
  1218.                     i = 0;
  1219.                     arritemStack = players.getOpenInventory().getTopInventory().getContents();
  1220.                     n = arritemStack.length;
  1221.                     n2 = 0;
  1222.                     while (n2 < n) {
  1223.                         is = arritemStack[n2];
  1224.                         if (is != null && is.getType() != Material.AIR && is.getItemMeta().getLore().contains(nick)) {
  1225.                             ArrayList Lore = new ArrayList();
  1226.                             ArrayList<String> Lore2 = new ArrayList<String>();
  1227.                             Lore = (ArrayList)is.getItemMeta().getLore();
  1228.                             Iterator iterator = Lore.iterator();
  1229.                             while (iterator.hasNext()) {
  1230.                                 String s = (String)iterator.next();
  1231.                                 if (s.equalsIgnoreCase(nick)) {
  1232.                                     s = p.getDisplayName();
  1233.                                 }
  1234.                                 Lore2.add(s);
  1235.                             }
  1236.                             ItemStack IS = is;
  1237.                             ItemMeta ISMeta = IS.getItemMeta();
  1238.                             ISMeta.setLore(Lore2);
  1239.                             IS.setItemMeta(ISMeta);
  1240.                             players.getOpenInventory().setItem(i, IS);
  1241.                             players.updateInventory();
  1242.                         }
  1243.                         ++i;
  1244.                         ++n2;
  1245.                     }
  1246.                 }
  1247.                 if (players.getOpenInventory().getTitle() == "\u00a76Stats") {
  1248.                     i = 0;
  1249.                     arritemStack = players.getOpenInventory().getTopInventory().getContents();
  1250.                     n = arritemStack.length;
  1251.                     n2 = 0;
  1252.                     while (n2 < n) {
  1253.                         is = arritemStack[n2];
  1254.                         if (is != null && is.getType() != Material.AIR && is.getItemMeta().getDisplayName().equalsIgnoreCase(nick)) {
  1255.                             SILore = new ArrayList();
  1256.                             SILore = (ArrayList)is.getItemMeta().getLore();
  1257.                             SI = new ItemStack(Material.SKULL_ITEM, 1, 3);
  1258.                             SIMeta = (SkullMeta)SI.getItemMeta();
  1259.                             SIMeta.setOwner(ChatColor.stripColor((String)p.getDisplayName()));
  1260.                             SIMeta.setDisplayName(p.getDisplayName());
  1261.                             SIMeta.setLore((List)SILore);
  1262.                             SI.setItemMeta((ItemMeta)SIMeta);
  1263.                             players.getOpenInventory().setItem(i, SI);
  1264.                             players.updateInventory();
  1265.                         }
  1266.                         ++i;
  1267.                         ++n2;
  1268.                     }
  1269.                 }
  1270.                 if (players.getOpenInventory().getTitle() != "\u00a76Teleporter") continue;
  1271.                 i = 0;
  1272.                 arritemStack = players.getOpenInventory().getTopInventory().getContents();
  1273.                 n = arritemStack.length;
  1274.                 n2 = 0;
  1275.                 while (n2 < n) {
  1276.                     is = arritemStack[n2];
  1277.                     if (is != null && is.getType() != Material.AIR && is.getItemMeta().getDisplayName().equalsIgnoreCase(nick)) {
  1278.                         SILore = new ArrayList();
  1279.                         SILore = (ArrayList)is.getItemMeta().getLore();
  1280.                         SI = new ItemStack(Material.SKULL_ITEM, 1, 3);
  1281.                         SIMeta = (SkullMeta)SI.getItemMeta();
  1282.                         SIMeta.setOwner(ChatColor.stripColor((String)p.getDisplayName()));
  1283.                         SIMeta.setDisplayName(p.getDisplayName());
  1284.                         SIMeta.setLore((List)SILore);
  1285.                         SI.setItemMeta((ItemMeta)SIMeta);
  1286.                         players.getOpenInventory().setItem(i, SI);
  1287.                         players.updateInventory();
  1288.                     }
  1289.                     ++i;
  1290.                     ++n2;
  1291.                 }
  1292.             }
  1293.         }
  1294.     }
  1295.  
  1296.     public static Connection getConnection() {
  1297.         return connection;
  1298.     }
  1299.  
  1300.     public static boolean isConnected() {
  1301.         return connection != null;
  1302.     }
  1303.  
  1304.     public static void connect() {
  1305.         if (!Nick.isConnected()) {
  1306.             try {
  1307.                 connection = DriverManager.getConnection("jdbc:mysql://" + host + ":" + port + "/" + database, username, password);
  1308.             }
  1309.             catch (SQLException ex) {
  1310.                 ex.printStackTrace();
  1311.             }
  1312.         }
  1313.     }
  1314.  
  1315.     public static void disconnect() {
  1316.         if (Nick.isConnected()) {
  1317.             try {
  1318.                 connection.close();
  1319.             }
  1320.             catch (SQLException ex) {
  1321.                 ex.printStackTrace();
  1322.             }
  1323.         }
  1324.     }
  1325.  
  1326.     public static void createTableIfNotExists() {
  1327.         if (Nick.isConnected()) {
  1328.             try {
  1329.                 PreparedStatement ps1 = Nick.getConnection().prepareStatement("CREATE TABLE IF NOT EXISTS Nicks (Spielername VARCHAR(100), UUID VARCHAR(100), Nickname VARCHAR(100), Art VARCHAR(100))");
  1330.                 ps1.executeUpdate();
  1331.                 ps1.close();
  1332.             }
  1333.             catch (SQLException ex) {
  1334.                 ex.printStackTrace();
  1335.             }
  1336.         }
  1337.     }
  1338.  
  1339.     public static boolean isPlayerExisting(UUID uuid) {
  1340.         try {
  1341.             PreparedStatement ps = connection.prepareStatement("SELECT * FROM Nicks WHERE UUID = ?");
  1342.             ps.setString(1, uuid.toString());
  1343.             ResultSet result = ps.executeQuery();
  1344.             boolean isExisting = result.next();
  1345.             result.close();
  1346.             ps.close();
  1347.             return isExisting;
  1348.         }
  1349.         catch (Exception ex) {
  1350.             ex.printStackTrace();
  1351.             return false;
  1352.         }
  1353.     }
  1354.  
  1355.     public static String getNickname(UUID uuid) {
  1356.         try {
  1357.             PreparedStatement ps = connection.prepareStatement("SELECT * FROM Nicks WHERE UUID = ?");
  1358.             ps.setString(1, uuid.toString());
  1359.             ResultSet result = ps.executeQuery();
  1360.             result.next();
  1361.             String nickname = result.getString("Nickname");
  1362.             result.close();
  1363.             ps.close();
  1364.             return nickname;
  1365.         }
  1366.         catch (Exception ex) {
  1367.             ex.printStackTrace();
  1368.             return "null";
  1369.         }
  1370.     }
  1371.  
  1372.     public static NickType getNickType(UUID uuid) {
  1373.         try {
  1374.             PreparedStatement ps = connection.prepareStatement("SELECT * FROM Nicks WHERE UUID = ?");
  1375.             ps.setString(1, uuid.toString());
  1376.             ResultSet result = ps.executeQuery();
  1377.             result.next();
  1378.             String type = result.getString("Art");
  1379.             result.close();
  1380.             ps.close();
  1381.             NickType nickType = null;
  1382.             if (type.equalsIgnoreCase("Spieler")) {
  1383.                 nickType = NickType.SPIELER;
  1384.             }
  1385.             if (type.equalsIgnoreCase("Premium")) {
  1386.                 nickType = NickType.PREMIUM;
  1387.             }
  1388.             return nickType;
  1389.         }
  1390.         catch (Exception ex) {
  1391.             ex.printStackTrace();
  1392.             return null;
  1393.         }
  1394.     }
  1395.  
  1396. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement