Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package eu.blacksquad.dev.core;
- import java.text.DecimalFormat;
- import java.util.ArrayList;
- import org.bukkit.Bukkit;
- import org.bukkit.Location;
- import org.bukkit.Sound;
- import org.bukkit.command.CommandExecutor;
- import org.bukkit.configuration.file.FileConfiguration;
- import org.bukkit.craftbukkit.v1_12_R1.entity.CraftPlayer;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.EventPriority;
- import org.bukkit.event.Listener;
- import org.bukkit.event.player.PlayerJoinEvent;
- import org.bukkit.event.player.PlayerMoveEvent;
- import org.bukkit.event.player.PlayerQuitEvent;
- import org.bukkit.plugin.PluginDescriptionFile;
- import org.bukkit.plugin.java.JavaPlugin;
- import org.bukkit.scheduler.BukkitRunnable;
- import org.bukkit.scheduler.BukkitScheduler;
- import org.bukkit.scoreboard.DisplaySlot;
- import org.bukkit.scoreboard.Objective;
- import net.md_5.bungee.api.ChatColor;
- import net.minecraft.server.v1_12_R1.EnumParticle;
- import net.minecraft.server.v1_12_R1.PacketPlayOutWorldParticles;
- public class Main extends JavaPlugin implements Listener, CommandExecutor{
- ArrayList<String> particlesoff = new ArrayList<>();
- ArrayList<String> sboff = new ArrayList<>();
- int tps;
- @Override
- public void onEnable() {
- Bukkit.getServer().getScheduler().scheduleSyncRepeatingTask(this, new Runnable() {
- long sec;
- long currentSec;
- int ticks;
- int i;
- @Override
- public void run() {
- if (i == 0){
- i++;
- }else{
- sec = (System.currentTimeMillis() / 1000);
- if (currentSec == sec) {
- ticks++;
- } else {
- currentSec = sec;
- tps = (tps == 0 ? ticks : ((tps + ticks) / 2));
- ticks = 0;
- }
- }
- }
- }, 0, 1);
- getCommand("bqcore").setExecutor(new Commands(this));
- getCommand("chat").setExecutor(new Chat(this));
- getCommand("kick").setExecutor(new Kick(this));
- getCommand("ban").setExecutor(new Ban(this));
- getCommand("unban").setExecutor(new Unban(this));
- getCommand("particles").setExecutor(new Particles(this));
- getCommand("tp").setExecutor(new Tp(this));
- getCommand("scoreboardtoggle").setExecutor(new ScoreBoard(this));
- getCommand("gamemode").setExecutor(new Gamemode(this));
- getCommand("say").setExecutor(new Say(this));
- getCommand("pm").setExecutor(new PrivateMessages(this));
- getCommand("reply").setExecutor(new PrivateMessages(this));
- getCommand("heal").setExecutor(new PlayerCommands(this));
- getCommand("feed").setExecutor(new PlayerCommands(this));
- getCommand("helpop").setExecutor(new PlayerCommands(this));
- getCommand("tpa").setExecutor(new PlayerCommands(this));
- getCommand("tpyes").setExecutor(new PlayerCommands(this));
- new ServerMessages(this);
- Bukkit.getServer().getPluginManager().registerEvents(this, this);
- Bukkit.getServer().getPluginManager().registerEvents(new Motd(this), this);
- Bukkit.getServer().getPluginManager().registerEvents(new Chat(this), this);
- Bukkit.getServer().getPluginManager().registerEvents(new Particles(this), this);
- Bukkit.getServer().getPluginManager().registerEvents(new ScoreBoard(this), this);
- Bukkit.getServer().getPluginManager().registerEvents(new Deaths(this), this);
- PluginDescriptionFile pdfFile = this.getDescription();
- getLogger().info("----------- ] BlackSquad.eu Core [ -----------");
- getLogger().info("Core enabled.");
- getLogger().info("Name: " + pdfFile.getFullName());
- getLogger().info("Author: " + pdfFile.getAuthors());
- getLogger().info("Website: " + pdfFile.getWebsite());
- getLogger().info("Version: " + pdfFile.getVersion());
- getLogger().info("----------- ] BlackSquad.eu Core [ -----------");
- FileConfiguration config = getConfig();
- config.options().header("----------- ] BlackSquad.eu Core - Configuration [ -----------\nConfiguration file - " + pdfFile.getFullName());
- config.addDefault("visual.logo", "&8[&6BQCore&8] &8-&7 ");
- config.addDefault("visual.prefix.join", "&8[&2+&8] &7");
- config.addDefault("visual.prefix.quit", "&8[&4-&8] &7");
- config.addDefault("visual.motd", "&6play.BlackSquad.eu &8- &eSurvival /w cuboids!");
- config.addDefault("chat.chatoff.warn", "&cChat is disabled for now.");
- config.addDefault("visual.chat.off", "&cChat is now disabled.");
- config.addDefault("visual.chat.on", "&cChat is now enabled.");
- config.addDefault("visual.chat.clear", "&cChat has been cleared.");
- config.addDefault("visual.target.offline", "&cArgument isn't online player.");
- config.addDefault("visual.tp.args-too-much", "&cToo much arguments.");
- config.addDefault("permissions.reload", "bqcore.reload");
- config.addDefault("permissions.chat.off", "bqcore.chat.off");
- config.addDefault("permissions.chat.on", "bqcore.chat.on");
- config.addDefault("permissions.chat.clear", "bqcore.chat.clear");
- config.addDefault("permissions.chat.bypass", "bqcore.chat.bypass");
- config.addDefault("permissions.tp", "bqcore.tp");
- config.addDefault("permissions.kick", "bqcore.kick");
- config.addDefault("permissions.ban", "bqcore.ban");
- config.options().copyDefaults(true);
- saveConfig();
- reloadConfig();
- BukkitScheduler scheduler = getServer().getScheduler();
- scheduler.scheduleSyncRepeatingTask(this, new Runnable() {
- @Override
- public void run() {
- for(Player p : Bukkit.getOnlinePlayers()){
- if (p != null) {
- final org.bukkit.scoreboard.Scoreboard s = Bukkit.getScoreboardManager().getNewScoreboard();
- if (!(sboff.contains(p.getName()))) {
- p.setScoreboard(s);
- final Objective o = s.registerNewObjective("sidebar", "dummy");
- int ping = ((CraftPlayer) p).getHandle().ping;
- int maxplayers = (Bukkit.getOnlinePlayers().size() + 1);
- o.setDisplayName("§6" + pdfFile.getFullName());
- o.setDisplaySlot(DisplaySlot.SIDEBAR);
- o.getScore("").setScore(13);
- o.getScore(" §e§l♦ §fNick§8: §e" + p.getName()).setScore(12);
- o.getScore(" §e§l♦ §fPing§8: §e" + ping).setScore(11);
- DecimalFormat hpformat = new DecimalFormat("##");
- String hp = hpformat.format(p.getHealth());
- o.getScore(" §e§l♦ §fHealth§8: §e" + hp + "§8/§e20").setScore(10);
- DecimalFormat foodformat = new DecimalFormat("##");
- String food = foodformat.format(p.getFoodLevel());
- o.getScore(" §e§l♦ §fFood§8: §e" + food + "§8/§e20").setScore(9);
- o.getScore(" §e§l♦ §fLvL (xp)§8: §e" + p.getLevel()).setScore(8);
- o.getScore(" ").setScore(7);
- o.getScore(" §a§l♦ §fOnline§8: §a" + Bukkit.getOnlinePlayers().size() + "§8/§a" + maxplayers).setScore(6);
- o.getScore(" §a§l♦ §fTps§8: §a" + tps).setScore(5);
- o.getScore(" §a§l♦ §fServer§8: §a" + Bukkit.getServer().getServerName()).setScore(4);
- o.getScore(" ").setScore(3);
- o.getScore(" §2§l♦ §ftwitch.tv/blacksquad_eu").setScore(2);
- o.getScore(" §2§l♦ §fblacksquad.eu").setScore(1);
- o.getScore(" §2§l♦ §fforum.blacksquad.eu ").setScore(0);
- } else {
- p.setScoreboard(Bukkit.getScoreboardManager().getNewScoreboard());
- }
- }
- }
- }
- }, 0, 20);
- }
- @Override
- public void onDisable() {
- PluginDescriptionFile pdfFile = this.getDescription();
- getLogger().info("----------- ] BlackSquad.eu Core [ -----------");
- getLogger().info("Core disabled.");
- getLogger().info("Name: " + pdfFile.getFullName());
- getLogger().info("Author: " + pdfFile.getAuthors());
- getLogger().info("Website: " + pdfFile.getWebsite());
- getLogger().info("Version: " + pdfFile.getVersion());
- getLogger().info("----------- ] BlackSquad.eu Core [ -----------");
- }
- class ServerMessages implements Listener {
- private final Main plugin;
- public ServerMessages(Main plugin) {
- this.plugin = plugin;
- this.plugin.getServer().getPluginManager().registerEvents(this, plugin);
- }
- @EventHandler(priority=EventPriority.MONITOR)
- public void PlayerJoin(PlayerJoinEvent e) {
- e.setJoinMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("visual.prefix.join") + e.getPlayer().getName()));
- new BukkitRunnable() {
- @Override
- public void run() {
- for (Player p : Bukkit.getOnlinePlayers()){
- p.playSound(p.getLocation(), Sound.ENTITY_CHICKEN_EGG, 100, 1);
- }
- }
- }.runTaskLater(this.plugin, 1);
- }
- @EventHandler(priority=EventPriority.MONITOR)
- public void PlayerQuit(PlayerQuitEvent e) {
- e.setQuitMessage(ChatColor.translateAlternateColorCodes('&', plugin.getConfig().getString("visual.prefix.quit") + e.getPlayer().getName()));
- new BukkitRunnable() {
- @Override
- public void run() {
- for (Player p : Bukkit.getOnlinePlayers()){
- p.playSound(p.getLocation(), Sound.ENTITY_CHICKEN_EGG, 100, 1);
- }
- }
- }.runTaskLater(this.plugin, 1);
- }
- }
- @EventHandler
- public void onPlayerMove(PlayerMoveEvent e){
- if (e.getPlayer().isGliding()) {
- if (e.getPlayer().hasPermission("bqcore.trail.admin")) {
- if (!(particlesoff.contains(e.getPlayer().getName()))) {
- Location from = e.getFrom();
- Location to = e.getTo();
- if((from.getX() != to.getX()) || (from.getY() != to.getY()) || (from.getZ() != to.getZ())){
- Location l = e.getPlayer().getLocation().add(0, 0.15, 0);
- PacketPlayOutWorldParticles packet = new PacketPlayOutWorldParticles(EnumParticle.FLAME, false, (float) l.getX(), (float) l.getY(), (float) l.getZ(), 0F, 0F, 0F, 0F, 100, null);
- for(Player p : Bukkit.getOnlinePlayers()){
- ((CraftPlayer)p).getHandle().playerConnection.sendPacket(packet);
- }
- }
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement