Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.jartexnetwork.skyblock.gui;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.SQLException;
- import java.sql.Statement;
- import java.util.ArrayList;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.Material;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Player;
- import org.bukkit.event.Listener;
- import org.bukkit.event.inventory.InventoryClickEvent;
- import org.bukkit.inventory.Inventory;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.meta.ItemMeta;
- import org.bukkit.inventory.meta.SkullMeta;
- import org.bukkit.plugin.java.JavaPlugin;
- public class Main extends JavaPlugin implements Listener{
- static Connection connection;
- static Statement statement;
- public void onEnable() {
- this.getConfig().options().copyDefaults();
- saveConfig();
- Bukkit.getServer().getPluginManager().registerEvents(this, this);
- try { //We use a try catch to avoid errors, hopefully we don't get any.
- Class.forName("com.mysql.jdbc.Driver"); //this accesses Driver in jdbc.
- } catch (ClassNotFoundException e) {
- e.printStackTrace();
- System.err.println("jdbc driver unavailable!");
- return;
- }
- /*final String url = this.getConfig().getString("Url");
- final String username = this.getConfig().getString("Username");
- final String password = this.getConfig().getString("Password");*/
- try { //Another try catch to get any SQL errors (for example connections errors)
- connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/spawnerrankupsystem","root","JartexRene98");
- //with the method getConnection() from DriverManager, we're trying to set
- //the connection's url, username, password to the variables we made earlier and
- //trying to get a connection at the same time. JDBC allows us to do this.
- } catch (SQLException e) { //catching errors)
- e.printStackTrace(); //prints out SQLException errors to the console (if any)
- System.err.println("Failed connection with MySQL");
- Bukkit.getPluginManager().disablePlugin(this);
- }
- }
- public void onDisable() {
- try { //using a try catch to catch connection errors (like wrong sql password...)
- if(connection!=null && !connection.isClosed()){ //checking if connection isn't null to
- //avoid recieving a nullpointer
- connection.close(); //closing the connection field variable.
- }
- }catch(Exception e){
- e.printStackTrace();
- }
- Bukkit.getServer().getLogger().info("SpawnerRankupSystem is Disabled!");
- }
- public void OnCommand(CommandSender sender, Command cmd, String label, String[] args) {
- String p = sender.getName().toLowerCase();
- int stage = 0;
- int heads = 0;
- boolean money = false;
- if(cmd.getName().equalsIgnoreCase("Spawner")) {
- try {
- statement = connection.createStatement();
- } catch (SQLException ignored) {}
- String sql = "SELECT spawnerrankupsystem "
- + "FROM players"
- + "WHERE name LIKE '%' + name + '%' ";
- String sql2 = "INSERT into players"
- + "playername, stage, heads, money"
- + "VALUES(" + p + ", " + stage + ", " + heads + ", " + money;
- try {
- statement.executeQuery(sql);
- } catch (SQLException ignored) {
- try {
- statement.executeQuery(sql2);
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- ItemStack skull = new ItemStack(Material.SKULL_ITEM, 1, (short) 3);
- ItemStack skull2 = (ItemStack)skull.getItemMeta();
- ((SkullMeta) skull2).setOwner("MHF_ArrowUp");
- ((ItemMeta) skull2).setDisplayName(ChatColor.GOLD + "RANKUP");
- Inventory inv = Bukkit.createInventory(null, 8, ChatColor.DARK_AQUA + "Spawner GUI");
- inv.setItem(0, skull2);
- inv.setItem(4, new ItemStack(Material.MOB_SPAWNER));
- ArrayList<String> lore = new ArrayList<String>();
- //Formula heads needed: 500+55x^2
- double percentage = 6;
- int amount = (int) Math.floor(percentage);
- lore.add("Status:" + amount);
- ItemStack ladder = new ItemStack(Material.LADDER, 1 , (short) 0);
- ItemMeta Ladder = ladder.getItemMeta();
- inv.setItem(8, new ItemStack(Material.LADDER));
- Player player = Bukkit.getPlayer(p);
- Ladder.setLore(lore);
- ladder.setItemMeta((ItemMeta) ladder);
- player.openInventory(inv);
- }
- }
- public void onInventoryClickEvent(InventoryClickEvent e) {
- if(e.getInventory().getName().equalsIgnoreCase("Spawner"))
- return;
- Player p = (Player) e.getWhoClicked();
- e.setCancelled(true);
- if(e.getCurrentItem()==null || e.getCurrentItem().getType()==Material.AIR||!e.getCurrentItem().hasItemMeta()){
- p.closeInventory();
- return;
- }
- switch(e.getCurrentItem().getType()) {
- case SKULL_ITEM:
- Inventory rankUp = Bukkit.createInventory(null, 53, ChatColor.BLUE + "RANKUP");
- ItemStack dye = new ItemStack(Material.INK_SACK, 1, (short) 10);
- rankUp.setItem(47, new ItemStack(dye));
- rankUp.setItem(51, new ItemStack(Material.GOLD_BLOCK));
- p.closeInventory();
- p.openInventory(rankUp);
- break;
- case MOB_SPAWNER:
- Inventory spawners = Bukkit.createInventory(null, 17, ChatColor.DARK_GREEN + "Spawners");
- String[] Aspawners = {"Pig","Cow","Sheep","Chicken","Mooshroom",
- "Skeleton","Zombie","Creeper","Spider","Blaze","Enderman",
- "Slime","Pigman","Cavespider","Iron Golem"};
- for(int i=0; i <= Aspawners.length; i++) {
- if(p.hasPermission("silkspawners.place." + Aspawners[i])){
- ItemStack spawner = new ItemStack(Material.MOB_SPAWNER);
- spawner.getItemMeta().setDisplayName(ChatColor.YELLOW + Aspawners[i] + "Spawner");
- spawners.setItem(i, spawner);
- }
- }
- p.closeInventory();
- p.openInventory(spawners);
- break;
- case LADDER:
- p.closeInventory();
- break;
- default:
- p.closeInventory();
- break;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement