Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package TopKills;
- import java.io.File;
- import java.io.IOException;
- import org.bukkit.Bukkit;
- import org.bukkit.Location;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.entity.EntityDeathEvent;
- import org.bukkit.event.player.PlayerJoinEvent;
- import org.bukkit.plugin.Plugin;
- import org.bukkit.plugin.java.JavaPlugin;
- import org.bukkit.scheduler.BukkitRunnable;
- import com.gmail.filoghost.holographicdisplays.api.Hologram;
- import com.gmail.filoghost.holographicdisplays.api.HologramsAPI;
- import net.md_5.bungee.api.ChatColor;
- public class Main extends JavaPlugin implements Listener {
- private Database db;
- private Hologram h = null;
- @Override
- public void onEnable() {
- File c = new File(this.getDataFolder()+File.separator+"config.yml");
- if(!c.exists()) {
- try {
- c.createNewFile();
- } catch (IOException e) {
- e.printStackTrace();
- this.getConfig().options().copyDefaults(true);
- }
- }
- this.getConfig().options().copyDefaults(true);
- try {
- db = new Database(this);
- } catch (Exception e) {
- e.printStackTrace();
- Bukkit.getPluginManager().disablePlugin(this);
- }
- Bukkit.getPluginManager().registerEvents(this, this);
- }
- @EventHandler
- public void onJoin(PlayerJoinEvent event) {
- try {
- db = new Database(this);
- db.addData(event.getPlayer().getName());
- }
- catch(Exception e) {
- e.printStackTrace();
- }
- }
- @EventHandler
- public void onKill(EntityDeathEvent event) {
- if(!(event.getEntity().getKiller() instanceof Player)) return;
- try {
- db = new Database(this);
- db.updateData(((Player)event.getEntity().getKiller()).getName());
- }
- catch(Exception e) {
- e.printStackTrace();
- }
- }
- @Override
- public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
- if(sender instanceof Player) {
- if(args.length==0) {
- if(h==null) {
- try {
- db = new Database(this);
- h = HologramsAPI.createHologram(this, new Location(
- ((Player) sender).getWorld(),
- ((Player)sender).getLocation().getX(),
- ((Player)sender).getLocation().getY()+2.5,
- ((Player)sender).getLocation().getZ()
- ));
- db.getData(h);
- reload(h,this);
- sender.sendMessage(this.getConfig().getString("Messages.Placed").replace("&", "ยง"));
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- else {
- sender.sendMessage(ChatColor.RED+"Top already placed!");
- }
- }
- else {
- return false;
- }
- }
- return true;
- }
- public void reload(Hologram h, Plugin p) {
- new BukkitRunnable() {
- @Override
- public void run() {
- try {
- db = new Database(p);
- db.getData(h);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }.runTaskTimer(this, 0L, this.getConfig().getInt("update-time")*20);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement