Advertisement
Guest User

Untitled

a guest
May 3rd, 2017
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.75 KB | None | 0 0
  1. package mertero.coinapi;
  2.  
  3. import java.sql.ResultSet;
  4. import java.sql.SQLException;
  5.  
  6. import org.bukkit.Bukkit;
  7. import org.bukkit.configuration.file.FileConfiguration;
  8. import org.bukkit.event.EventHandler;
  9. import org.bukkit.event.Listener;
  10. import org.bukkit.event.player.AsyncPlayerPreLoginEvent;
  11. import org.bukkit.plugin.java.JavaPlugin;
  12.  
  13.  
  14. public class CoinsAPI extends JavaPlugin implements Listener {
  15.  
  16.  
  17. public static CoinsAPI coinsapi;
  18. public static MySQL mysql;
  19.  
  20.  
  21. public void onEnable() {
  22. Bukkit.getPluginManager().registerEvents(this, this);
  23. loadConfig();
  24. ConnectMySQL();
  25. }
  26.  
  27. public void onDisable(){
  28. mysql.close();
  29. }
  30.  
  31. public void loadConfig() {
  32. FileConfiguration cfg = this.getConfig();
  33. cfg.addDefault("mysql.default", "true");
  34. String msg = cfg.getString("mysql.default");
  35. if(msg == "true"){
  36. cfg.addDefault("mysql.host", "LOCALHOST");
  37. cfg.addDefault("mysql.database", "DATABASE");
  38. cfg.addDefault("mysql.user", "USER");
  39. cfg.addDefault("mysql.password", "PASSWORD");
  40. cfg.options().copyDefaults(true);
  41. saveConfig();
  42. } else {
  43. cfg.options().copyDefaults(false);
  44. saveConfig();
  45. }
  46.  
  47.  
  48.  
  49.  
  50. }
  51.  
  52. private void ConnectMySQL() {
  53. FileConfiguration mcfg = this.getConfig();
  54. String host = mcfg.getString("mysql.host");
  55. String database = mcfg.getString("mysql.database");
  56. String user = mcfg.getString("mysql.user");
  57. String password = mcfg.getString("mysql.password");
  58. mysql = new MySQL(host, database, user, password);
  59. mysql.connect();
  60. mysql.update("CREATE TABLE IF NOT EXISTS coins(name varchar(100) UNIQUE, coins int)");
  61. }
  62.  
  63. public static int getCoins(String name) {
  64.  
  65. ResultSet rs = CoinsAPI.mysql.query("SELECT coins FROM coins WHERE name = '" + name + "' LIMIT 1");
  66.  
  67. try {
  68. while (rs.next()){
  69. return rs.getInt("coins"); }
  70. } catch (SQLException e) {
  71. }
  72. return -1;
  73. }
  74.  
  75. public static void setCoins(String name, int amount) {
  76. CoinsAPI.mysql.update("UPDATE coins SET coins = " + amount + " WHERE name = '" + name + "'");
  77. }
  78.  
  79.  
  80. public static boolean isRegistered(String name) {
  81.  
  82. ResultSet rs = CoinsAPI.mysql.query("SELECT * FROM coins WHERE name = '" + name + "' LIMIT 1");
  83. System.out.println(rs == null);
  84. try {
  85. return rs.next();
  86. } catch (SQLException e) {
  87. }
  88. return false;
  89. }
  90.  
  91. public static void register(String name) {
  92. CoinsAPI.mysql.update("INSERT INTO coins (name, coins) VALUES ('" + name + "', 0)");
  93.  
  94. }
  95.  
  96. @EventHandler
  97. public void onJoin(AsyncPlayerPreLoginEvent e) {
  98. if (!isRegistered(e.getName())) {
  99. register(e.getName());
  100. }
  101.  
  102.  
  103. }
  104.  
  105. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement