Advertisement
Guest User

Untitled

a guest
Jun 27th, 2017
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.07 KB | None | 0 0
  1. package fr.zeingraphics.icecore.database.icedatabase;
  2.  
  3. import java.sql.PreparedStatement;
  4. import java.sql.ResultSet;
  5. import java.sql.SQLException;
  6.  
  7. import org.bukkit.entity.Player;
  8.  
  9. import fr.zeingraphics.icecore.IceCore;
  10. import fr.zeingraphics.icecore.database.Database;
  11. import fr.zeingraphics.icecore.database.icedatabase.rank.Rank;
  12.  
  13. /**
  14. * Created by zieba on 23/06/2017.
  15. */
  16. public class IceDatabase extends Database {
  17.  
  18. public IceDatabase() {
  19. super(IceCore.getInstance(), "jdbc:mysql://", "localhost", "iceserver", "root", "uYk895Hlz2");
  20. }
  21.  
  22. public void createAccount(Player p) {
  23. if (!hasAccount(p)) {
  24. try {
  25. PreparedStatement statement = getConnection().prepareStatement("INSERT INTO players(uuid,pseudo,money,rank,level) VALUES (?,?,?,?,?)");
  26. statement.setString(1, p.getUniqueId().toString());
  27. statement.setString(2, p.getName());
  28. statement.setInt(3, 275);
  29. statement.setInt(4, Rank.PLAYER.getPower());
  30. statement.setDouble(5, 0);
  31. statement.execute();
  32. statement.close();
  33. } catch (SQLException e) {
  34. e.printStackTrace();
  35. }
  36. } else {
  37. return;
  38. }
  39. }
  40.  
  41. public boolean hasAccount(Player p){
  42. try {
  43. PreparedStatement statement = getConnection().prepareStatement("SELECT uuid from players WHERE uuid = ?");
  44. statement.setString(1, p.getUniqueId().toString());
  45. ResultSet result = statement.executeQuery();
  46. boolean hasAccount = result.next();
  47. statement.close();
  48.  
  49. return hasAccount;
  50. } catch(SQLException e){
  51. e.printStackTrace();
  52. }
  53.  
  54. return false;
  55. }
  56.  
  57. public void setRank(Player rankedPlayer, Rank rankType){
  58. try {
  59. PreparedStatement statement = getConnection().prepareStatement("UPDATE players SET rank = ? WHERE uuid = ?");
  60. statement.setInt(1, rankType.getPower());
  61. statement.setString(2, rankedPlayer.getUniqueId().toString());
  62. statement.executeUpdate();
  63. statement.close();
  64.  
  65. } catch(SQLException e){
  66. e.printStackTrace();
  67. }
  68. }
  69.  
  70. public Rank getRank(Player rankedPlayer){
  71. try {
  72. PreparedStatement statement = getConnection().prepareStatement("SELECT rank FROM players WHERE uuid = ?");
  73. statement.setString(1, rankedPlayer.getUniqueId().toString());
  74.  
  75. int rankPower = 0;
  76. ResultSet resultSet = statement.executeQuery();
  77.  
  78. while(resultSet.next()){
  79. rankPower = resultSet.getInt("rank");
  80. }
  81.  
  82. statement.close();
  83.  
  84. return Rank.powerToRank(rankPower);
  85. } catch(SQLException e){
  86. e.printStackTrace();
  87. }
  88.  
  89. return Rank.PLAYER;
  90. }
  91.  
  92. public boolean hasRank(Player rankedPlayer, Rank rankType){
  93. if(getRank(rankedPlayer) == rankType){
  94. return true;
  95. } else {
  96. return false;
  97. }
  98. }
  99.  
  100. public int getMoney(Player moneyPlayer){
  101. try {
  102. PreparedStatement statement = getConnection().prepareStatement("SELECT money FROM players WHERE uuid = ?");
  103. statement.setString(1, moneyPlayer.getUniqueId().toString());
  104.  
  105. int money = 0;
  106. ResultSet resultSet = statement.executeQuery();
  107.  
  108. while(resultSet.next()){
  109. money = resultSet.getInt("money");
  110. }
  111.  
  112. statement.close();
  113.  
  114. return money;
  115. } catch(SQLException e){
  116. e.printStackTrace();
  117. }
  118.  
  119. return 0;
  120. }
  121.  
  122. public void setMoney(Player moneyPlayer, int newMoney){
  123. try {
  124. PreparedStatement statement = getConnection().prepareStatement("UPDATE players SET money = ? WHERE uuid = ?");
  125. statement.setInt(1, newMoney);
  126. statement.setString(2, moneyPlayer.getUniqueId().toString());
  127. statement.executeUpdate();
  128. statement.close();
  129. } catch (SQLException e) {
  130. e.printStackTrace();
  131. }
  132. }
  133.  
  134. public void addMoney(Player moneyPlayer, int addedMoney){
  135. int balance = getMoney(moneyPlayer);
  136. int newBalance = balance + addedMoney;
  137.  
  138. try {
  139. PreparedStatement statement = getConnection().prepareStatement("UPDATE players SET money = ? WHERE uuid = ?");
  140. statement.setInt(1, newBalance);
  141. statement.setString(2, moneyPlayer.getUniqueId().toString());
  142. statement.executeUpdate();
  143. statement.close();
  144. } catch (SQLException e) {
  145. e.printStackTrace();
  146. }
  147. }
  148.  
  149. public void removeMoney(Player moneyPlayer, int removedMoney){
  150. int balance = getMoney(moneyPlayer);
  151. int newBalance = balance - removedMoney;
  152.  
  153. if (newBalance <= 0) {
  154. return;
  155. }
  156.  
  157. try {
  158. PreparedStatement statement = getConnection().prepareStatement("UPDATE players SET money = ? WHERE uuid = ?");
  159. statement.setInt(1, newBalance);
  160. statement.setString(2, moneyPlayer.getUniqueId().toString());
  161. statement.executeUpdate();
  162. statement.close();
  163.  
  164. } catch (SQLException e) {
  165. e.printStackTrace();
  166. }
  167. }
  168.  
  169. public boolean hasMoney(Player moneyPlayer, int neededMoney){
  170. int nowBalance = getMoney(moneyPlayer);
  171.  
  172. if(nowBalance == neededMoney || nowBalance > neededMoney){
  173. return true;
  174. } else {
  175. return false;
  176. }
  177. }
  178.  
  179. public double getLevel(Player p){
  180. try {
  181. PreparedStatement statement = getConnection().prepareStatement("SELECT level FROM players WHERE uuid = ?");
  182. statement.setString(1, p.getUniqueId().toString());
  183.  
  184. int level = 0;
  185. ResultSet resultSet = statement.executeQuery();
  186.  
  187. while(resultSet.next()){
  188. level = resultSet.getInt("level");
  189. }
  190.  
  191. statement.close();
  192.  
  193. return level;
  194. } catch(SQLException e){
  195. e.printStackTrace();
  196. }
  197.  
  198. return 0;
  199. }
  200.  
  201. public void addLevel(Player p, double level){
  202. double levels = getLevel(p);
  203. double newLevel = levels + level;
  204.  
  205. try {
  206. PreparedStatement statement = getConnection().prepareStatement("UPDATE players SET level = ? WHERE uuid = ?");
  207. statement.setDouble(1, newLevel);
  208. statement.setString(2, p.getUniqueId().toString());
  209. statement.executeUpdate();
  210. statement.close();
  211. } catch (SQLException e) {
  212. e.printStackTrace();
  213. }
  214. }
  215.  
  216. public boolean hasLevel(Player p, int level){
  217. double nowLevel = getLevel(p);
  218.  
  219. if(nowLevel == level || nowLevel > level){
  220. return true;
  221. } else {
  222. return false;
  223. }
  224. }
  225.  
  226. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement