Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.comugamers.MineLet;
- import com.comugamers.MineLet.commands.MineletsCommands;
- import com.comugamers.MineLet.commands.setMinelet;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.sql.Statement;
- import java.util.ArrayList;
- import java.util.Iterator;
- import java.util.List;
- import java.util.Random;
- import java.util.logging.Level;
- import java.util.logging.Logger;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.Color;
- import org.bukkit.FireworkEffect;
- import org.bukkit.FireworkEffect.Builder;
- import org.bukkit.FireworkEffect.Type;
- import org.bukkit.Location;
- import org.bukkit.Material;
- import org.bukkit.World;
- import org.bukkit.block.Block;
- import org.bukkit.command.PluginCommand;
- import org.bukkit.configuration.file.FileConfiguration;
- import org.bukkit.entity.ArmorStand;
- import org.bukkit.entity.EntityType;
- import org.bukkit.entity.Firework;
- import org.bukkit.entity.Item;
- import org.bukkit.entity.Player;
- import org.bukkit.entity.WitherSkull;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.player.PlayerInteractEvent;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.meta.FireworkMeta;
- import org.bukkit.plugin.PluginManager;
- import org.bukkit.plugin.java.JavaPlugin;
- import org.bukkit.scheduler.BukkitRunnable;
- import org.bukkit.util.Vector;
- public class main
- extends JavaPlugin
- implements Listener
- {
- public main plugin;
- private ArrayList<ArmorStand> armorStands1 = new ArrayList();
- private ArrayList<ArmorStand> armorStands2 = new ArrayList();
- private ArrayList<WitherSkull> skulls1 = new ArrayList();
- private ArrayList<WitherSkull> skulls2 = new ArrayList();
- private Connection database;
- private PreparedStatement addMinelets;
- private PreparedStatement updateMinelets;
- private PreparedStatement getMinelets;
- public MineletsCommands mineletsCommands = new MineletsCommands(this);
- public setMinelet setMinelet = new setMinelet(this);
- public List<String> rewardlist;
- public Random random = new Random();
- public Location mine1;
- public Location mine2;
- private boolean minelet1OnUse;
- private boolean minelet2OnUse;
- private String world;
- public Color color1;
- public void onEnable()
- {
- loadConfig();this.plugin = this;
- database1();
- this.minelet1OnUse = false;
- this.minelet2OnUse = false;
- try
- {
- getCommand("setplayerminelets").setExecutor(this.mineletsCommands);
- getCommand("addplayerminelets").setExecutor(this.mineletsCommands);
- getCommand("minelets").setExecutor(this.mineletsCommands);
- getCommand("setminelet").setExecutor(this.setMinelet);
- this.rewardlist = getConfig().getStringList("enabled-rewards");
- setMinelets();
- }
- catch (Exception localException)
- {
- localException.printStackTrace();
- }
- saveDefaultConfig();
- Bukkit.getPluginManager().registerEvents(this, this);
- getLogger().log(Level.INFO, "Has enabled.");
- }
- public void onDisable()
- {
- this.plugin = null;
- getLogger().log(Level.INFO, "Has disabled.");
- for (Iterator localIterator = this.armorStands1.iterator(); localIterator.hasNext();)
- {
- localObject = (ArmorStand)localIterator.next();
- ((ArmorStand)localObject).remove();
- }
- Object localObject;
- for (localIterator = this.armorStands2.iterator(); localIterator.hasNext();)
- {
- localObject = (ArmorStand)localIterator.next();
- ((ArmorStand)localObject).remove();
- }
- for (localIterator = this.skulls1.iterator(); localIterator.hasNext();)
- {
- localObject = (WitherSkull)localIterator.next();
- ((WitherSkull)localObject).remove();
- }
- for (localIterator = this.skulls2.iterator(); localIterator.hasNext();)
- {
- localObject = (WitherSkull)localIterator.next();
- ((WitherSkull)localObject).remove();
- }
- }
- public void setMinelets()
- {
- if (getConfig().getString("locations.1.x") == null)
- {
- this.plugin.getLogger().log(Level.WARNING, "Minelet 1 is not created.");
- }
- else
- {
- this.world = getConfig().getString("locations.1.world");
- this.mine1 = new Location(Bukkit.getWorld(getConfig().getString("locations.1.world")), getConfig().getDouble("locations.1.x"), getConfig().getDouble("locations.1.y"), getConfig().getDouble("locations.1.z"));
- this.mine1.getBlock().setType(Material.ENDER_PORTAL_FRAME);
- createHolo(this.mine1, ChatColor.translateAlternateColorCodes('&', getConfig().getString("messages.mineletitle")), this.armorStands1);
- }
- if (getConfig().getString("locations.2.x") == null)
- {
- this.plugin.getLogger().log(Level.WARNING, "Minelet 2 is not created.");
- }
- else
- {
- this.mine2 = new Location(Bukkit.getWorld(getConfig().getString("locations.2.world")), getConfig().getDouble("locations.2.x"), getConfig().getDouble("locations.2.y"), getConfig().getDouble("locations.2.z"));
- this.mine2.getBlock().setType(Material.ENDER_PORTAL_FRAME);
- createHolo(this.mine2, ChatColor.translateAlternateColorCodes('&', getConfig().getString("messages.mineletitle")), this.armorStands2);
- }
- }
- public void createHolo(Location paramLocation, String paramString, ArrayList<ArmorStand> paramArrayList)
- {
- ArmorStand localArmorStand = (ArmorStand)Bukkit.getWorld(this.world).spawnEntity(paramLocation, EntityType.ARMOR_STAND);
- localArmorStand.setVisible(false);
- localArmorStand.setCustomNameVisible(true);
- localArmorStand.setCustomName(paramString);
- localArmorStand.setGravity(false);
- localArmorStand.setSmall(true);
- paramArrayList.add(localArmorStand);
- }
- public void database1()
- {
- try
- {
- this.database = DriverManager.getConnection("jdbc:mysql://" + getHost() + ":" + Integer.valueOf(getPort()) + "/" + getDB(), getUsername(), getPassword());
- Statement localStatement = this.database.createStatement();
- localStatement.execute("CREATE TABLE IF NOT EXISTS minelets(uuid VARCHAR(36) PRIMARY KEY NOT NULL, balance DECIMAL(65, 2))");
- this.getMinelets = this.database.prepareStatement("SELECT balance FROM minelets WHERE uuid=?");
- this.updateMinelets = this.database.prepareStatement("UPDATE minelets SET balance=? WHERE uuid=?");
- this.addMinelets = this.database.prepareStatement("INSERT INTO minelets(uuid,balance) VALUES(?,?)");
- }
- catch (SQLException localSQLException)
- {
- localSQLException.printStackTrace();
- localSQLException.getCause();
- getLogger().log(Level.SEVERE, "Has disabled because there arent open a connection with the mysql database.");
- Bukkit.getPluginManager().disablePlugin(this);
- }
- }
- public String getHost()
- {
- return this.plugin.getConfig().getString("mysql.host");
- }
- public String getPort()
- {
- return this.plugin.getConfig().getString("mysql.port");
- }
- public String getDB()
- {
- return this.plugin.getConfig().getString("mysql.database");
- }
- public String getUsername()
- {
- return this.plugin.getConfig().getString("mysql.username");
- }
- public String getPassword()
- {
- return this.plugin.getConfig().getString("mysql.password");
- }
- public Integer getMinelets(String paramString)
- {
- try
- {
- this.getMinelets.setString(1, paramString);
- ResultSet localResultSet = this.getMinelets.executeQuery();
- if (localResultSet.next()) {
- return Integer.valueOf(localResultSet.getInt("balance"));
- }
- return null;
- }
- catch (SQLException localSQLException)
- {
- localSQLException.printStackTrace();
- }
- return null;
- }
- public void updateMinelets(String paramString, int paramInt)
- {
- try
- {
- this.updateMinelets.setDouble(1, paramInt);
- this.updateMinelets.setString(2, paramString);
- this.updateMinelets.executeUpdate();
- }
- catch (SQLException localSQLException)
- {
- localSQLException.printStackTrace();
- }
- }
- public void addMinelets(String paramString, int paramInt)
- {
- try
- {
- Integer localInteger = getMinelets(paramString);
- if (localInteger == null)
- {
- this.addMinelets.setString(1, paramString);
- this.addMinelets.setDouble(2, paramInt);
- this.addMinelets.execute();
- }
- else
- {
- updateMinelets(paramString, paramInt);
- }
- }
- catch (SQLException localSQLException)
- {
- localSQLException.printStackTrace();
- }
- }
- @EventHandler
- public void interact(final PlayerInteractEvent paramPlayerInteractEvent)
- {
- if (paramPlayerInteractEvent.getClickedBlock().getType() == Material.ENDER_PORTAL_FRAME)
- {
- int i = getMinelets(paramPlayerInteractEvent.getPlayer().getName()).intValue();
- if (i == 0)
- {
- paramPlayerInteractEvent.getPlayer().sendMessage(ChatColor.translateAlternateColorCodes('&', this.plugin.getConfig().getString("messages.notenought")));
- return;
- }
- final int j = paramPlayerInteractEvent.getClickedBlock().getX();
- final int k = paramPlayerInteractEvent.getClickedBlock().getY();
- final int m = paramPlayerInteractEvent.getClickedBlock().getZ();
- Location localLocation = new Location(Bukkit.getWorld(this.world), j, k, m);
- final String str = (String)this.rewardlist.get(this.random.nextInt(this.rewardlist.size()));
- if (this.minelet1OnUse) {
- return;
- }
- for (final Object localObject = this.armorStands1.iterator(); ((Iterator)localObject).hasNext();)
- {
- ArmorStand localArmorStand = (ArmorStand)((Iterator)localObject).next();
- localArmorStand.setCustomNameVisible(false);
- }
- this.minelet1OnUse = true;
- new BukkitRunnable()
- {
- public void run()
- {
- for (Object localObject1 = main.this.armorStands1.iterator(); ((Iterator)localObject1).hasNext();)
- {
- localObject2 = (ArmorStand)((Iterator)localObject1).next();
- ((ArmorStand)localObject2).setCustomNameVisible(true);
- ((ArmorStand)localObject2).setCustomName(ChatColor.translateAlternateColorCodes('&', main.this.getConfig().getString("messages.found") + " " + main.this.getConfig().getString(new StringBuilder().append("rewards.").append(str).append(".name").toString())));
- }
- localObject1 = new Location(Bukkit.getWorld(main.this.world), j + 0.5D, k + 2, m + 0.5D);
- final Object localObject2 = Bukkit.getWorld(main.this.world).dropItem((Location)localObject1, new ItemStack(Material.getMaterial(main.this.plugin.getConfig().getString("rewards." + str + ".item").toUpperCase()), 1, (short)main.this.plugin.getConfig().getInt("rewards." + str + ".data")));
- ((Item)localObject2).setVelocity(new Vector(0, 0, 0));
- new BukkitRunnable()
- {
- public void run()
- {
- for (ArmorStand localArmorStand : main.this.armorStands1)
- {
- localObject2.remove();
- localArmorStand.setCustomName(ChatColor.translateAlternateColorCodes('&', main.this.getConfig().getString("messages.mineletitle")));
- main.this.minelet1OnUse = false;
- }
- }
- }.runTaskLater(main.this.plugin, 210L);
- }
- }.runTaskLater(this, 110L);
- addMinelets(paramPlayerInteractEvent.getPlayer().getName(), i - 1);
- localObject = getColor(this.random.nextInt(17) + 1);
- new BukkitRunnable()
- {
- public void run()
- {
- main.this.fireEffect(new Location(Bukkit.getWorld(main.this.world), j, k + 10, m), FireworkEffect.Type.BURST, localObject);
- }
- }.runTaskLater(this, 10L);
- new BukkitRunnable()
- {
- public void run()
- {
- main.this.fireEffect(new Location(Bukkit.getWorld(main.this.world), j, k + 9, m), FireworkEffect.Type.BURST, localObject);
- }
- }.runTaskLater(this, 20L);
- new BukkitRunnable()
- {
- public void run()
- {
- main.this.fireEffect(new Location(Bukkit.getWorld(main.this.world), j, k + 8, m), FireworkEffect.Type.BURST, localObject);
- }
- }.runTaskLater(this, 30L);
- new BukkitRunnable()
- {
- public void run()
- {
- main.this.fireEffect(new Location(Bukkit.getWorld(main.this.world), j, k + 7, m), FireworkEffect.Type.BURST, localObject);
- }
- }.runTaskLater(this, 40L);
- new BukkitRunnable()
- {
- public void run()
- {
- main.this.fireEffect(new Location(Bukkit.getWorld(main.this.world), j, k + 6, m), FireworkEffect.Type.BURST, localObject);
- }
- }.runTaskLater(this, 50L);
- new BukkitRunnable()
- {
- public void run()
- {
- main.this.fireEffect(new Location(Bukkit.getWorld(main.this.world), j, k + 5, m), FireworkEffect.Type.BURST, localObject);
- }
- }.runTaskLater(this, 60L);
- new BukkitRunnable()
- {
- public void run()
- {
- main.this.fireEffect(new Location(Bukkit.getWorld(main.this.world), j, k + 4, m), FireworkEffect.Type.BURST, localObject);
- }
- }.runTaskLater(this, 70L);
- new BukkitRunnable()
- {
- public void run()
- {
- main.this.fireEffect(new Location(Bukkit.getWorld(main.this.world), j, k + 3, m), FireworkEffect.Type.BURST, localObject);
- }
- }.runTaskLater(this, 80L);
- new BukkitRunnable()
- {
- public void run()
- {
- main.this.fireEffect(new Location(Bukkit.getWorld(main.this.world), j, k + 2, m), FireworkEffect.Type.BURST, localObject);
- }
- }.runTaskLater(this, 90L);
- new BukkitRunnable()
- {
- public void run()
- {
- main.this.fireEffect(new Location(Bukkit.getWorld(main.this.world), j, k + 1, m), FireworkEffect.Type.BURST, localObject);
- }
- }.runTaskLater(this, 100L);
- new BukkitRunnable()
- {
- public void run()
- {
- main.this.fireEffect(new Location(Bukkit.getWorld(main.this.world), j, k, m), FireworkEffect.Type.BALL_LARGE, localObject);
- Bukkit.dispatchCommand(Bukkit.getConsoleSender(), main.this.plugin.getConfig().getString("rewards." + str + ".command").replace("$player$", paramPlayerInteractEvent.getPlayer().getName()));
- }
- }.runTaskLater(this, 110L);
- }
- }
- public void fireEffect(Location paramLocation, FireworkEffect.Type paramType, Color paramColor)
- {
- FireworkEffect localFireworkEffect = FireworkEffect.builder().trail(false).flicker(false).withColor(paramColor).withFade(paramColor).with(paramType).build();
- final Firework localFirework = (Firework)Bukkit.getWorld(this.world).spawn(paramLocation, Firework.class);
- FireworkMeta localFireworkMeta = localFirework.getFireworkMeta();
- localFireworkMeta.addEffect(localFireworkEffect);
- localFireworkMeta.setPower(0);
- localFirework.setFireworkMeta(localFireworkMeta);
- new BukkitRunnable()
- {
- public void run()
- {
- localFirework.detonate();
- }
- }.runTaskLater(this, 1L);
- }
- private static Color getColor(int paramInt)
- {
- switch (paramInt)
- {
- case 1:
- return Color.AQUA;
- case 2:
- return Color.BLACK;
- case 3:
- return Color.BLUE;
- case 4:
- return Color.FUCHSIA;
- case 5:
- return Color.GRAY;
- case 6:
- return Color.GREEN;
- case 7:
- return Color.LIME;
- case 8:
- return Color.MAROON;
- case 9:
- return Color.NAVY;
- case 10:
- return Color.OLIVE;
- case 11:
- return Color.ORANGE;
- case 12:
- return Color.PURPLE;
- case 13:
- return Color.RED;
- case 14:
- return Color.SILVER;
- case 15:
- return Color.TEAL;
- case 16:
- return Color.WHITE;
- case 17:
- return Color.YELLOW;
- }
- return null;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement