Advertisement
Guest User

Untitled

a guest
Apr 13th, 2019
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.17 KB | None | 0 0
  1.  
  2.  
  3. public class MySQL {
  4.  
  5. private static String HOST = "";
  6. private static String DATABASE = "";
  7. private static String USER = "";
  8. private static String PASSWORD = "";
  9.  
  10. private static Connection con;
  11.  
  12. public MySQL(String host, String database, String user, String password) {
  13. this.HOST = host;
  14. this.DATABASE = database;
  15. this.USER = user;
  16. this.PASSWORD = password;
  17.  
  18. connect();
  19. }
  20.  
  21. public static void connect() {
  22. try {
  23. System.out.println("Host=" + HOST + " DB=" + DATABASE + " User=" + USER + " PW=" + PASSWORD);
  24. con = DriverManager.getConnection("jdbc:mysql://" + HOST + ":3306/" + DATABASE + "?autoReconnect=true&useJDBCCompliantTimezoneShift=true&serverTimezone=UTC", USER, PASSWORD);
  25. System.out.println("[MySQL] Die Verbindung zur MySQL wurde hergestellt!");
  26. } catch (SQLException e) {
  27. System.out.println("[MySQL] Die Verbindung zur MySQL ist fehlgeschlagen! Fehler: " + e.getMessage());
  28. e.printStackTrace();
  29. }
  30. }
  31.  
  32.  
  33.  
  34.  
  35.  
  36. @EventHandler
  37. public void onjoin(PlayerJoinEvent event) {
  38.  
  39. final Player player = event.getPlayer();
  40. final String name = player.getName();
  41.  
  42.  
  43. ItemStack item = new ItemStack(Material.SKULL_ITEM);
  44. item.setDurability((short) 3);
  45.  
  46. SkullMeta skullMeta = (SkullMeta) item.getItemMeta();
  47. GameProfile profile = new GameProfile(UUID.randomUUID(), player.getName());
  48. profile.getProperties().put("textures",
  49. new Property("textures",
  50. getPlayerTexture(name),
  51. getPlayerSignature(name)));
  52.  
  53. try {
  54. Field gameProfileField = Class.forName("org.bukkit.craftbukkit.v1_8_R3.inventory.CraftMetaSkull").getDeclaredField("profile");
  55. if (!gameProfileField.isAccessible()) {
  56. gameProfileField.setAccessible(true);
  57. }
  58. gameProfileField.set(skullMeta, profile);
  59. } catch (Throwable e) {
  60. e.printStackTrace();
  61. }
  62.  
  63. item.setItemMeta(skullMeta);
  64.  
  65. player.getInventory().addItem(item);
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77. private static String getPlayerTexture(String name) {
  78.  
  79. try {
  80. PreparedStatement st = MySQL.getCon().prepareStatement("SELECT texture FROM PlayerTexture WHERE name = ?");
  81. st.setString(1, name);
  82. ResultSet rs = st.executeQuery();
  83.  
  84. while (rs.next()) {
  85. return rs.getString("texture");
  86. }
  87.  
  88. }catch (SQLException e) {
  89. e.printStackTrace();
  90. }
  91. return "ERROR";
  92. }
  93.  
  94. private static String getPlayerSignature(String name) {
  95.  
  96. try {
  97. PreparedStatement st = MySQL.getCon().prepareStatement("SELECT signature FROM PlayerTexture WHERE name = ?");
  98. st.setString(1, name
  99. );
  100. ResultSet rs = st.executeQuery();
  101.  
  102. while (rs.next()) {
  103. return rs.getString("signature");
  104. }
  105.  
  106. }catch (SQLException e) {
  107. e.printStackTrace();
  108. }
  109. return "ERROR";
  110. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement