AlanGomes

VipChangeJava

Nov 12th, 2014
231
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.99 KB | None | 0 0
  1. package me.javahscript.com;
  2.  
  3. import java.io.File;
  4. import java.io.IOException;
  5. import java.io.InputStream;
  6. import java.net.URL;
  7. import java.net.URLConnection;
  8. import java.sql.Connection;
  9. import java.sql.DriverManager;
  10. import java.sql.SQLException;
  11. import java.sql.Statement;
  12. import java.util.ArrayList;
  13. import java.util.List;
  14. import net.milkbowl.vault.economy.Economy;
  15. import org.bukkit.Bukkit;
  16. import org.bukkit.command.Command;
  17. import org.bukkit.command.CommandSender;
  18. import org.bukkit.configuration.file.FileConfiguration;
  19. import org.bukkit.configuration.file.YamlConfiguration;
  20. import org.bukkit.entity.Player;
  21. import org.bukkit.event.EventHandler;
  22. import org.bukkit.event.Listener;
  23. import org.bukkit.event.player.PlayerCommandPreprocessEvent;
  24. import org.bukkit.plugin.Plugin;
  25. import org.bukkit.plugin.RegisteredServiceProvider;
  26. import org.bukkit.plugin.java.JavaPlugin;
  27.  
  28. public class Main extends JavaPlugin
  29. implements Listener
  30. {
  31. String Mensagem2;
  32. String Mensagem3;
  33. String Mensagem4;
  34. String Mensagem5;
  35. String Mensagem6;
  36. String Mensagem7;
  37. String Mensagem8;
  38. String Mensagem9;
  39. String Mensagem10;
  40. String Mensagem11;
  41. String Mensagem12;
  42. String Mensagem13;
  43. String Mensagem14;
  44. String Mensagem15;
  45. String Mensagem16;
  46. String Mensagem17;
  47. String Mensagem18;
  48. String Mensagem19;
  49. String Mensagem20;
  50. String Mensagem21;
  51. String Mensagem22;
  52. String Mensagem23;
  53. String Mensagem24;
  54. String Mensagem25;
  55. String Mensagem26;
  56. private List<Player> j = new ArrayList<Player>();
  57. String vip;
  58. String args1;
  59. String codigo;
  60. int data;
  61. int preço;
  62. int tempo;
  63. boolean ja_vendendo = false;
  64. boolean comandos = false;
  65. public static Economy economia = null;
  66.  
  67.  
  68. private boolean setupEconomy() {
  69. if (getServer().getPluginManager().getPlugin("Vault") == null) {
  70. return false;
  71. }
  72. RegisteredServiceProvider<Economy> rsp = getServer().getServicesManager().getRegistration(Economy.class);
  73. if (rsp == null) {
  74. return false;
  75. }
  76. economia = rsp.getProvider();
  77. return economia != null;
  78. }
  79.  
  80. public void onDisable()
  81. {
  82. }
  83.  
  84. public void onEnable() {
  85. boolean desabilitar = false;
  86. if (!setupEconomy()) {
  87. getLogger().severe(String.format("[%s] - Faltou o Plugin VAULT! Plugin desativado!", new Object[] { Main.this.getDescription().getName() }));
  88. desabilitar=true;
  89. }
  90. if (desabilitar) {
  91. getPluginLoader().disablePlugin(this);
  92. return;
  93. }
  94. getConfig().options().copyDefaults(true);
  95. saveConfig();
  96. Bukkit.getServer().getPluginManager().registerEvents(this, this);
  97. this.Mensagem2 = getConfig().getString("Tag_Vender");
  98. this.Mensagem3 = getConfig().getString("Tag_Comprar");
  99. this.Mensagem4 = getConfig().getString("Mensagem_Ja_Vendendo");
  100. this.Mensagem5 = getConfig().getString("Mensagem_Codigo_Nao_Existe");
  101. this.Mensagem6 = getConfig().getString("Mensagem_Permissao");
  102. this.Mensagem7 = getConfig().getString("Mensagem_Nenhum_VIP_Sendo_Vendido");
  103. this.Mensagem8 = getConfig().getString("Mensagem_Nao_Pode_Vender_VIP_Voce_Mesmo");
  104. this.Mensagem9 = getConfig().getString("Mensagem_Ele_Nao_Esta_Vendendo_VIP");
  105. this.Mensagem10 = getConfig().getString("Mensagem_Sem_Dinheiro");
  106. this.Mensagem11 = getConfig().getString("Mensagem_Ele_Comprou_VIP");
  107. this.Mensagem12 = getConfig().getString("Mensagem_Acabou_De_Comprar_VIP");
  108. this.Mensagem13 = getConfig().getString("Mensagem_Global_Da_Compra_De_VIP");
  109. this.Mensagem14 = getConfig().getString("Mensagem_Comando_Bloqueado");
  110. this.Mensagem15 = getConfig().getString("Mensagem_Utilize_VenderVIP");
  111. this.Mensagem16 = getConfig().getString("Mensagem_Utilize_ComprarVIP");
  112. this.Mensagem19 = getConfig().getString("Mensagem_Utilize_DoarVIP");
  113. this.Mensagem17 = getConfig().getString("VIP_Invalido");
  114. this.Mensagem18 = getConfig().getString("Data_do_VIP_Invalida");
  115. this.Mensagem20 = getConfig().getString("Player_Offline");
  116. this.Mensagem21 = getConfig().getString("Doado_VIP");
  117. this.Mensagem22 = getConfig().getString("Doado_VIP_Global");
  118. this.Mensagem23 = getConfig().getString("Mensagem_Key_Invalida_DesbanirVIP");
  119. this.Mensagem24 = getConfig().getString("Mensagem_Utilize_Desbanir_VIP");
  120. this.Mensagem25 = getConfig().getString("Mensagem_Player_Desbanido");
  121. this.Mensagem26 = getConfig().getString("Mensagem_Global_Desbanido");
  122. }
  123.  
  124. public boolean onCommand(CommandSender sender, Command command, String commandLabel, String[] args) {
  125. Player p = (Player)sender;
  126. if (commandLabel.equalsIgnoreCase("vendervip")) {
  127. if (p.hasPermission("javavip.vender")) {
  128. if (args.length < 4) {
  129. p.sendMessage(this.Mensagem2.replace("&", "§") + this.Mensagem15.replace("&", "§"));
  130. }
  131. if (this.ja_vendendo) {
  132. p.sendMessage(this.Mensagem2.replace("&", "§") + " " + this.Mensagem4.replace("&", "§"));
  133. }
  134. else if (args.length == 4) {
  135. this.codigo = args[0];
  136. this.vip = args[1];
  137. this.data = Integer.parseInt(args[2]);
  138. this.preço = Integer.parseInt(args[3]);
  139. Plugin VipZero = Bukkit.getServer().getPluginManager().getPlugin("VipZero");
  140. FileConfiguration check = YamlConfiguration.loadConfiguration(new File(VipZero.getDataFolder() + File.separator + "config.yml"));
  141. if (!check.contains("keys." + String.valueOf(this.codigo))) {
  142. p.sendMessage(this.Mensagem2.replace("&", "§") + " " + this.Mensagem5.replace("&", "§"));
  143. return true;
  144. }
  145.  
  146. String vip_data = check.getString("keys." + this.codigo);
  147. String[] viptype = null;
  148. viptype = vip_data.split(",");
  149. vip_data = vip_data.replace(viptype[0], "");
  150. vip_data = vip_data.replace(",", "");
  151. if (!this.vip.equalsIgnoreCase(viptype[0])) {
  152. p.sendMessage(this.Mensagem17.replace("&", "§"));
  153. return true;
  154. }
  155. if (Integer.parseInt(vip_data) != this.data) {
  156. p.sendMessage(this.Mensagem18.replace("&", "§"));
  157. return true;
  158. }
  159. this.ja_vendendo = true;
  160. Plugin plugin = Bukkit.getPluginManager().getPlugin("VIPChangeJava");
  161. this.tempo = getConfig().getInt("Tempo");
  162. final Player p2 = (Player)sender;
  163. Bukkit.getScheduler().runTaskTimer(plugin, new Runnable() {
  164. public void run() {
  165. for (String mensagens : Main.this.getConfig().getStringList("Vendendo_Iniciado"))
  166. {
  167. Bukkit.broadcastMessage(mensagens.replace("&", "§").replace("{tempo_do_vip}", String.valueOf(Main.this.data)).replace("{vip}", Main.this.vip).replace("{preco}", String.valueOf(Main.this.preço)).replace("{player}", p2.getName()).replace("{tempo}", String.valueOf(Main.this.tempo)));
  168. }
  169. Main.this.j.add(p2);
  170. Main.this.tempo -= 1;
  171. if (Main.this.tempo == 0) {
  172. Main.this.tempo = 0;
  173. Main.this.ja_vendendo = false;
  174. Main.this.j.remove(p2);
  175. Bukkit.getScheduler().cancelAllTasks();
  176. }
  177. }
  178. }
  179. , this.tempo, 1200L);
  180. }
  181. }
  182. return false;
  183. }
  184. if (commandLabel.equalsIgnoreCase("desbanirvip")) {
  185. p.hasPermission("javavip.desbanirvip");
  186.  
  187. if (args.length < 2) {
  188. p.sendMessage(this.Mensagem24.replace("&", "§"));
  189. }
  190. else if (args.length == 2) {
  191. this.codigo = args[1];
  192. Plugin VipZero = Bukkit.getServer().getPluginManager().getPlugin("VipZero");
  193. FileConfiguration check = YamlConfiguration.loadConfiguration(new File(VipZero.getDataFolder() + File.separator + "config.yml"));
  194. if (!check.contains("keys." + String.valueOf(this.codigo))) {
  195. p.sendMessage(this.Mensagem23.replace("&", "§"));
  196. return true;
  197. }
  198. p.sendMessage(this.Mensagem25.replace("&", "§"));
  199. String targetPlayer = args[0];
  200. Bukkit.broadcastMessage(this.Mensagem26.replace("&", "§").replace("{player}", p.getName()).replace("{player_desbanido}", targetPlayer));
  201. getServer().dispatchCommand(getServer().getConsoleSender(), "sudo " + p.getName() + " c:/usarkey " + this.codigo);
  202. getServer().dispatchCommand(getServer().getConsoleSender(), "unban " + targetPlayer);
  203. }
  204. }
  205.  
  206. if ((commandLabel.equalsIgnoreCase("doarvip")) &&
  207. (p.hasPermission("javavip.doarvip"))) {
  208. if (args.length < 4) {
  209. p.sendMessage(this.Mensagem2.replace("&", "§") + this.Mensagem19.replace("&", "§"));
  210. }
  211. if (this.ja_vendendo) {
  212. p.sendMessage(this.Mensagem2.replace("&", "§") + " " + this.Mensagem4.replace("&", "§"));
  213. }
  214. else if (args.length == 4) {
  215. this.codigo = args[0];
  216. this.vip = args[1];
  217. this.data = Integer.parseInt(args[2]);
  218. Plugin VipZero = Bukkit.getServer().getPluginManager().getPlugin("VipZero");
  219. FileConfiguration check2 = YamlConfiguration.loadConfiguration(new File(VipZero.getDataFolder() + File.separator + "config.yml"));
  220. if (!check2.contains("keys." + String.valueOf(this.codigo))) {
  221. p.sendMessage(this.Mensagem2.replace("&", "§") + " " + this.Mensagem5.replace("&", "§"));
  222. return true;
  223. }
  224. String vip_data2 = check2.getString("keys." + this.codigo);
  225. String[] viptype2 = null;
  226. viptype2 = vip_data2.split(",");
  227. vip_data2 = vip_data2.replace(viptype2[0], "");
  228. vip_data2 = vip_data2.replace(",", "");
  229. if (!this.vip.equalsIgnoreCase(viptype2[0])) {
  230. p.sendMessage(this.Mensagem17.replace("&", "§"));
  231. return true;
  232. }
  233. if (Integer.parseInt(vip_data2) != this.data) {
  234. p.sendMessage(this.Mensagem18.replace("&", "§"));
  235. return true;
  236. }
  237.  
  238. if (p.getServer().getPlayer(args[3]) == null) {
  239. p.sendMessage(this.Mensagem20.replace("&", "§"));
  240. }
  241. else {
  242. Player targetPlayer = p.getServer().getPlayer(args[3]);
  243. p.sendMessage(this.Mensagem21.replace("&", "§").replace("{player}", targetPlayer.getName()));
  244. getServer().dispatchCommand(getServer().getConsoleSender(), "sudo " + targetPlayer.getName() + " c:/usarkey " + this.codigo);
  245. Bukkit.broadcastMessage(this.Mensagem22.replace("&", "§").replace("{player}", p.getName()).replace("{player_doado}", targetPlayer.getName()));
  246. }
  247. }
  248. }
  249.  
  250. if (commandLabel.equalsIgnoreCase("comprarvip")) {
  251. if (!p.hasPermission("javavip.comprar")) {
  252. p.sendMessage(this.Mensagem3.replace("&", "§") + " " + this.Mensagem6.replace("&", "§"));
  253. return true;
  254. }
  255. if (!this.ja_vendendo) {
  256. p.sendMessage(this.Mensagem3.replace("&", "§") + this.Mensagem7.replace("&", "§"));
  257. }
  258. else if (args.length == 0) {
  259. p.sendMessage(this.Mensagem3.replace("&", "§") + this.Mensagem16.replace("&", "§"));
  260. } else if (args.length == 1) {
  261. if (p.getServer().getPlayer(args[0]) != null) {
  262. Player targetPlayer = p.getServer().getPlayer(args[0]);
  263. if (targetPlayer == p) {
  264. p.sendMessage(this.Mensagem3.replace("&", "§") + this.Mensagem8.replace("&", "§"));
  265. return true;
  266. }
  267. if (!this.j.contains(targetPlayer)) {
  268. p.sendMessage(this.Mensagem3.replace("&", "§") + this.Mensagem9.replace("&", "§").replace("{player}", targetPlayer.getName()));
  269. return true;
  270. }
  271. if (targetPlayer != p) {
  272. if (economia.getBalance(p.getName()) < this.preço) {
  273. p.sendMessage(this.Mensagem3.replace("&", "§") + this.Mensagem10.replace("&", "§"));
  274. } else {
  275. economia.withdrawPlayer(p.getName(), this.preço);
  276. targetPlayer.sendMessage(this.Mensagem2.replace("&", "§") + this.Mensagem11.replace("&", "§").replace("{player}", targetPlayer.getName()));
  277. this.j.remove(targetPlayer.getName());
  278. this.j.remove(targetPlayer.getPlayer());
  279. p.sendMessage(this.Mensagem3.replace("&", "§") + this.Mensagem12.replace("&", "§"));
  280. getServer().broadcastMessage(this.Mensagem13.replace("&", "§").replace("{player}", targetPlayer.getName()).replace("{player_comprou}", p.getName()));
  281. this.j.remove(targetPlayer);
  282. this.ja_vendendo = false;
  283. getServer().dispatchCommand(getServer().getConsoleSender(), "sudo " + p.getName() + " c:/usarkey " + this.codigo);
  284. getServer().dispatchCommand(getServer().getConsoleSender(), "eco give " + targetPlayer.getName() + " " + this.preço);
  285. this.j.remove(targetPlayer);
  286. this.j.remove(targetPlayer);
  287. this.j.remove(targetPlayer);
  288. this.j.remove(targetPlayer);
  289. this.j.remove(targetPlayer);
  290. Bukkit.getScheduler().cancelAllTasks();
  291. }
  292. }
  293. return false;
  294. }
  295. return false;
  296. }
  297. }
  298. return false;
  299. }
  300. @EventHandler
  301. public void onBC(PlayerCommandPreprocessEvent e) {
  302. if (this.j.contains(e.getPlayer())) {
  303. if (e.getMessage().toLowerCase().contains("/usarkey")) {
  304. e.setCancelled(true);
  305. e.getPlayer().sendMessage(this.Mensagem14.replace("&", "§"));
  306. }
  307. if (e.getMessage().toLowerCase().contains("/usekey")) {
  308. e.setCancelled(true);
  309. e.getPlayer().sendMessage(this.Mensagem14.replace("&", "§"));
  310. }
  311. }
  312. if ((this.ja_vendendo) &&
  313. (e.getMessage().contains(this.codigo))) {
  314. e.setCancelled(true);
  315. e.getPlayer().sendMessage(this.Mensagem14.replace("&", "§"));
  316. }
  317. }
  318. }
Advertisement
Add Comment
Please, Sign In to add comment