Guest User

Untitled

a guest
Jul 22nd, 2023
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.37 KB | None | 0 0
  1. package de.hannezhd.citybuildsystem.Economy;
  2.  
  3. import de.hannezhd.citybuildsystem.Citybuild_system;
  4. import de.hannezhd.citybuildsystem.util.MYSQLManager;
  5. import org.bukkit.Bukkit;
  6. import org.bukkit.command.Command;
  7. import org.bukkit.command.CommandExecutor;
  8. import org.bukkit.command.CommandSender;
  9. import org.bukkit.configuration.file.YamlConfiguration;
  10. import org.bukkit.entity.Player;
  11. import org.bukkit.plugin.Plugin;
  12.  
  13. import java.sql.Connection;
  14. import java.sql.PreparedStatement;
  15. import java.sql.SQLException;
  16. import java.util.Locale;
  17.  
  18. public class Risecoins2 implements CommandExecutor {
  19. private MYSQLManager mysqlManager;
  20. public Risecoins2(Plugin plugin) {
  21. // Initialize the MYSQLManager and open the connection
  22. this.mysqlManager = new MYSQLManager(plugin.getDataFolder());
  23. mysqlManager.connect();
  24. }
  25. public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
  26. if (sender instanceof Player) {
  27. Player player = (Player) sender;
  28. if (args.length > 0) {
  29. if (args.length == 1) {
  30. player.sendMessage(Citybuild_system.prefix + "§cBenutze: /money <set | add | remove> <name> <anzahl>");
  31. return true;
  32. }
  33. Player selectedPlayer = Bukkit.getPlayer(args[1]);
  34.  
  35. if (sender != null) {
  36. YamlConfiguration cfg;
  37. double moneyremove;
  38. if (args[0].equalsIgnoreCase("set")) {
  39. if (player.hasPermission("money.set")) {
  40. if (args.length == 3) {
  41. double moneySet = Double.parseDouble(args[2]);
  42. if (moneySet < 0) {
  43. moneySet = 0;
  44. }
  45.  
  46. updateBalance(selectedPlayer.getName(), moneySet);
  47.  
  48. String formattedMoney = String.format(Locale.ENGLISH, "%,.2f", moneySet);
  49. player.sendMessage(Citybuild_system.prefix + "§aDu hast den Kontostand von §6" + selectedPlayer.getName() + " §aauf §6" + formattedMoney + " §agesetzt");
  50. } else {
  51. player.sendMessage(Citybuild_system.prefix + "§cBenutze /money set <name> <Anzahl>");
  52. }
  53. } else {
  54. player.sendMessage(Citybuild_system.prefix + "§cDazu hast du keine Rechte");
  55. }
  56. }
  57. }
  58. }
  59. }
  60. return false;
  61. }
  62. private void updateBalance(String playerName, double balance) {
  63. try (Connection connection = mysqlManager.getConnection();
  64. PreparedStatement preparedStatement = connection.prepareStatement(
  65. "INSERT INTO player_accounts (player_name, balance) VALUES (?, ?) " +
  66. "ON DUPLICATE KEY UPDATE balance = ?"
  67. )
  68. ) {
  69. preparedStatement.setString(1, playerName);
  70. preparedStatement.setDouble(2, balance);
  71. preparedStatement.setDouble(3, balance);
  72. preparedStatement.executeUpdate();
  73. } catch (SQLException e) {
  74. e.printStackTrace();
  75. }
  76. }
  77. }
Advertisement
Add Comment
Please, Sign In to add comment