Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.moo3oo3oo3;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Properties;
- import java.util.Random;
- import java.util.TreeMap;
- import java.util.UUID;
- import net.minecraft.server.v1_8_R1.PacketPlayOutEntityStatus;
- import org.bukkit.Bukkit;
- import org.bukkit.Color;
- import org.bukkit.Effect;
- import org.bukkit.GameMode;
- import org.bukkit.Material;
- import org.bukkit.Sound;
- import org.bukkit.craftbukkit.v1_8_R1.entity.CraftPlayer;
- import org.bukkit.enchantments.Enchantment;
- import org.bukkit.entity.Cow;
- import org.bukkit.entity.Entity;
- import org.bukkit.entity.FallingBlock;
- import org.bukkit.entity.LivingEntity;
- import org.bukkit.entity.Player;
- import org.bukkit.entity.Villager;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.block.BlockBreakEvent;
- import org.bukkit.event.block.BlockPlaceEvent;
- import org.bukkit.event.entity.EntityDamageEvent;
- import org.bukkit.event.entity.EntityDeathEvent;
- import org.bukkit.event.entity.FoodLevelChangeEvent;
- import org.bukkit.event.entity.PlayerDeathEvent;
- import org.bukkit.event.inventory.InventoryClickEvent;
- import org.bukkit.event.inventory.InventoryType;
- import org.bukkit.event.player.AsyncPlayerChatEvent;
- import org.bukkit.event.player.PlayerDropItemEvent;
- import org.bukkit.event.player.PlayerInteractEntityEvent;
- import org.bukkit.event.player.PlayerInteractEvent;
- import org.bukkit.event.player.PlayerLoginEvent;
- import org.bukkit.event.player.PlayerRespawnEvent;
- import org.bukkit.inventory.Inventory;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.meta.ItemMeta;
- import org.bukkit.inventory.meta.LeatherArmorMeta;
- import org.bukkit.potion.PotionEffect;
- import org.bukkit.potion.PotionEffectType;
- import org.bukkit.scheduler.BukkitRunnable;
- import org.bukkit.scheduler.BukkitTask;
- import org.bukkit.scoreboard.DisplaySlot;
- import org.bukkit.scoreboard.Objective;
- import org.bukkit.scoreboard.Score;
- import org.bukkit.scoreboard.Scoreboard;
- import org.bukkit.scoreboard.ScoreboardManager;
- import org.bukkit.util.Vector;
- public class warlistener implements Listener {
- dimension configGetter;
- private static dimension plugin;
- public warlistener(dimension plugin) {
- this.plugin = plugin;
- plugin.getServer().getPluginManager().registerEvents(this, plugin);
- }
- //Stores player coins from killing
- public void storePlayercoins(Player player, int coins) {
- File file = new File("plugins/dimension/playerCoins.props");
- try {
- if (!file.exists()) {
- file.createNewFile();
- }
- Properties props = new Properties();
- FileOutputStream out = new FileOutputStream(file);
- props.setProperty(player.getUniqueId().toString(), String.valueOf(coins));
- props.store(out, "Player Coins");
- out.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- //Get number of coins
- public String getDataCoins(Player player) {
- File file = new File("plugins/dimension/playerCoins.props");
- try {
- if (!file.exists()) {
- file.createNewFile();
- }
- Properties props = new Properties();
- FileInputStream in = new FileInputStream(file);
- props.load(in);
- String data = props.getProperty(player.getUniqueId().toString());
- if (data == null) {
- data = "0";
- }
- in.close();
- return data;
- } catch (IOException e) {
- e.printStackTrace();
- }
- return null;
- }
- //Store kills
- public void storePlayerKills(Player player, int score) {
- File file = new File("plugins/dimension/Kills.props");
- try {
- if (!file.exists()) {
- file.createNewFile();
- }
- Properties props = new Properties();
- FileOutputStream out = new FileOutputStream(file);
- props.setProperty(player.getUniqueId().toString(), String.valueOf(score));
- props.store(out, "Player Kills");
- out.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- //Get kills
- public String getDataKills(Player player) {
- File file = new File("plugins/dimension/Kills.props");
- try {
- if (!file.exists()) {
- file.createNewFile();
- }
- Properties props = new Properties();
- FileInputStream in = new FileInputStream(file);
- props.load(in);
- String data = props.getProperty(player.getUniqueId().toString());
- if (data == null) {
- data = "0";
- }
- in.close();
- return data;
- } catch (IOException e) {
- e.printStackTrace();
- }
- return null;
- }
- //Store deaths
- public void storePlayerDeaths(Player player, int score) {
- File file = new File("plugins/dimension/Deaths.props");
- try {
- if (!file.exists()) {
- file.createNewFile();
- }
- Properties props = new Properties();
- FileOutputStream out = new FileOutputStream(file);
- props.setProperty(player.getUniqueId().toString(), String.valueOf(score));
- props.store(out, "Player Deaths");
- out.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- //Get deaths
- public String getDataDeaths(Player player) {
- File file = new File("plugins/dimension/Deaths.props");
- try {
- if (!file.exists()) {
- file.createNewFile();
- }
- Properties props = new Properties();
- FileInputStream in = new FileInputStream(file);
- props.load(in);
- String data = props.getProperty(player.getUniqueId().toString());
- if (data == null) {
- data = "0";
- }
- in.close();
- return data;
- } catch (IOException e) {
- e.printStackTrace();
- }
- return null;
- }
- //Store Scores
- public void storePlayerScore(Player player) {
- File file = new File("plugins/dimension/Scores.props");
- try {
- if (!file.exists()) {
- file.createNewFile();
- }
- Integer deaths = Integer.valueOf(getDataDeaths(player));
- Integer kills = Integer.valueOf(getDataKills(player));
- int score = (int) Math.round((kills/(deaths + kills*1.0))*100);
- Properties props = new Properties();
- FileOutputStream out = new FileOutputStream(file);
- props.setProperty(player.getUniqueId().toString(), String.valueOf(score));
- props.store(out, "Player Scores");
- out.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- //Get score
- public String getDataScore(Player player) {
- File file = new File("plugins/dimension/Scores.props");
- try {
- if (!file.exists()) {
- file.createNewFile();
- }
- Properties props = new Properties();
- FileInputStream in = new FileInputStream(file);
- props.load(in);
- String data = props.getProperty(player.getUniqueId().toString());
- if (data == null) {
- data = "0";
- }
- in.close();
- return data;
- } catch (IOException e) {
- e.printStackTrace();
- }
- return null;
- }
- //Ranks the player
- public int ranking(Player player) {
- File file = new File("plugins/dimension/Scores.props");
- try {
- if (!file.exists()) {
- file.createNewFile();
- }
- Properties props = new Properties();
- FileInputStream in = new FileInputStream(file);
- props.load(in);
- if (props.isEmpty()) {
- } else {
- TreeMap<Integer, String> tm = new TreeMap<Integer, String>(Collections.reverseOrder());
- String listProps = props.toString().replace("{", "");
- listProps = listProps.toString().replace("}", "");
- listProps = listProps.toString().replace(" ", "");
- String[] value = listProps.toString().split(",");
- for (String part: value) {
- String number = part.substring(37);
- tm.put(new Integer(number), part);
- }
- int times = 0;
- for (Object key: tm.keySet()) {
- if (UUID.fromString(tm.get(key).toString().subSequence(0, 36).toString()).equals(player.getUniqueId())) {
- return times + 1;
- }
- times++;
- }
- in.close();
- }
- } catch (IOException e) {
- e.printStackTrace();
- }
- return 0;
- }
- //Creates scoreboard
- public void stats(final Player player) {
- ScoreboardManager manager = Bukkit.getScoreboardManager();
- Scoreboard board = manager.getNewScoreboard();
- Objective objective = board.registerNewObjective("§aStats", "dummy");
- objective.setDisplaySlot(DisplaySlot.SIDEBAR);
- objective.setDisplayName("§a§lStats");
- player.setScoreboard(board);
- final Score coins = objective.getScore("§6Coins");
- coins.setScore(1);
- coins.setScore(Integer.valueOf(getDataCoins(player)));
- final Score score = objective.getScore("§7Kill Rate in %");
- score.setScore(1);
- score.setScore(Integer.valueOf(getDataScore(player)));
- final Score rank = objective.getScore("§5Ranking");
- rank.setScore(1);
- rank.setScore(ranking(player));
- final Score death = objective.getScore("§4Deaths");
- death.setScore(1);
- death.setScore(Integer.valueOf(getDataDeaths(player)));
- final Score kills = objective.getScore("§bKills");
- kills.setScore(1);
- kills.setScore(Integer.valueOf(getDataKills(player)));
- }
- //kit selector inventory
- Inventory kits(Player player) {
- Inventory inv = Bukkit.getServer().createInventory(player, 9, "§5Kit Selector");
- //milk man icon
- ItemStack milk = new ItemStack(Material.MILK_BUCKET);
- ItemMeta Milkmeta = milk.getItemMeta();
- Milkmeta.setDisplayName("§fMilk Man");
- milk.setItemMeta(Milkmeta);
- //terrorist icon
- ItemStack tnt = new ItemStack(Material.TNT);
- ItemMeta Tntmeta = tnt.getItemMeta();;
- Tntmeta.setDisplayName("§4Terrorist");
- tnt.setItemMeta(Tntmeta);
- //dash icon
- ItemStack speed = new ItemStack(Material.SUGAR);
- ItemMeta Speedmeta = speed.getItemMeta();
- Speedmeta.setDisplayName("§cDash");
- speed.setItemMeta(Speedmeta);
- //soldier icon
- ItemStack soldier = new ItemStack(Material.INK_SACK);
- ItemMeta Soldiermeta = soldier.getItemMeta();
- Soldiermeta.setDisplayName("§8Soldier");
- soldier.setItemMeta(Soldiermeta);
- //soldier icon
- ItemStack engineer = new ItemStack(Material.IRON_BARDING);
- ItemMeta Engineermeta = engineer.getItemMeta();
- Engineermeta.setDisplayName("§7Engineer");
- engineer.setItemMeta(Engineermeta);
- inv.setItem(0, tnt);
- inv.setItem(2, milk);
- inv.setItem(4, speed);
- inv.setItem(6, soldier);
- inv.setItem(8, engineer);
- return inv;
- }
- //Gives rabbit stew
- void stew(Player player) {
- org.bukkit.inventory.ItemStack stew = new ItemStack(Material.RABBIT_STEW, 1);
- ItemMeta meta1 = stew.getItemMeta();
- List<String> lores1 = new ArrayList<String>();
- lores1.add("§7§oInsta Drink");
- meta1.setLore(lores1);
- stew.setItemMeta(meta1);
- for(int i=0; i<player.getInventory().getSize(); i++){
- if(player.getInventory().getItem(i) == null){
- player.getInventory().setItem(i, stew);
- }
- }
- }
- //Unbreakable
- void unbreak(Player player) {
- for (ItemStack item : player.getInventory().getContents()) {
- boolean test = true;
- try {
- item.getDurability();
- Enchantment.DURABILITY.canEnchantItem(item);
- } catch (Exception ex) {
- test = false;
- }
- if (test) {
- ItemMeta meta = item.getItemMeta();
- meta.spigot().setUnbreakable(true);
- item.setItemMeta(meta);
- }
- }
- for (ItemStack item1 : player.getInventory().getArmorContents()) {
- boolean test1 = true;
- try {
- item1.getDurability();
- Enchantment.DURABILITY.canEnchantItem(item1);
- } catch (Exception ex) {
- test1 = false;
- }
- if (test1) {
- ItemMeta meta1 = item1.getItemMeta();
- meta1.spigot().setUnbreakable(true);
- item1.setItemMeta(meta1);
- }
- }
- }
- //Kit Selector Netherstar
- ItemStack kitselector() {
- ItemStack kitselector = new ItemStack(Material.NETHER_STAR);
- ItemMeta starmeta = kitselector.getItemMeta();
- List<String> starlores = new ArrayList<String>();
- starlores.add("§7§oRight click to select kits");
- starmeta.setDisplayName("§7Kit Selector");
- starmeta.setLore(starlores);
- kitselector.setItemMeta(starmeta);
- return kitselector;
- }
- //Terrorist Class
- void Terrorist(Player player) {
- player.teleport(player.getWorld().getSpawnLocation());
- player.getInventory().clear();
- player.setExp(0);
- player.getInventory().setChestplate(new ItemStack(Material.AIR));
- player.getInventory().setLeggings(new ItemStack(Material.AIR));
- player.getInventory().setBoots(new ItemStack(Material.AIR));
- plugin.kit.remove(player);
- plugin.kit.put(player, "terrorist");
- org.bukkit.inventory.ItemStack tnt = new ItemStack(Material.TNT);
- ItemMeta meta = tnt.getItemMeta();
- List<String> lores = new ArrayList<String>();
- lores.add("§7§oExplosive head");
- meta.setDisplayName("§4Suicidal Bomb");
- meta.setLore(lores);
- tnt.setItemMeta(meta);
- player.getInventory().setHelmet(tnt);
- player.getInventory().addItem(new ItemStack(Material.GOLD_SWORD));
- org.bukkit.inventory.ItemStack fuse = new ItemStack(Material.SULPHUR);
- ItemMeta meta1 = fuse.getItemMeta();
- List<String> lores1 = new ArrayList<String>();
- lores1.add("§7§oRight click to suicide");
- meta1.setDisplayName("§rFuse");
- meta1.setLore(lores1);
- fuse.setItemMeta(meta1);
- player.getInventory().addItem(fuse);
- stew(player);
- unbreak(player);
- }
- //Milkman
- void Milkman(Player player) {
- player.teleport(player.getWorld().getSpawnLocation());
- player.getInventory().clear();
- player.setExp(0);
- plugin.kit.remove(player);
- plugin.kit.put(player, "milkman");
- player.getInventory().setHelmet(new ItemStack(Material.LEATHER_HELMET));
- player.getInventory().setChestplate(new ItemStack(Material.LEATHER_CHESTPLATE));
- player.getInventory().setLeggings(new ItemStack(Material.LEATHER_LEGGINGS));
- player.getInventory().setBoots(new ItemStack(Material.LEATHER_BOOTS));
- for (ItemStack item: player.getInventory().getArmorContents()) {
- LeatherArmorMeta meta = (LeatherArmorMeta) item.getItemMeta();
- meta.setColor(Color.fromRGB(255, 255, 255));
- item.setItemMeta(meta);
- item.addEnchantment(Enchantment.PROTECTION_ENVIRONMENTAL, 1);
- }
- ItemStack Bessie = new ItemStack(Material.MONSTER_EGG, 1, (short) 92);
- ItemMeta Bessiemeta = Bessie.getItemMeta();
- List<String> Bessielores = new ArrayList<String>();
- Bessielores.add("§7§oSpawn her in to slowy refill milk bucket");
- Bessiemeta.setDisplayName("§rOl' Bessie");
- Bessiemeta.setLore(Bessielores);
- Bessie.setItemMeta(Bessiemeta);
- player.getInventory().setItem(17, Bessie);
- ItemStack milk = new ItemStack(Material.MILK_BUCKET);
- ItemMeta Milkmeta = milk.getItemMeta();
- List<String> Milklores = new ArrayList<String>();
- Milklores.add("§7§oDrink for strong bones and rejuvenate effect");
- Milkmeta.setLore(Milklores);
- milk.setItemMeta(Milkmeta);
- player.getInventory().setItem(16, milk);
- player.getInventory().setItem(15, milk);
- player.getInventory().setItem(14, milk);
- player.getInventory().setItem(13, milk);
- player.getInventory().addItem(new ItemStack(Material.IRON_SWORD));
- stew(player);
- unbreak(player);
- }
- //Dash Class
- void Dash(Player player) {
- player.teleport(player.getWorld().getSpawnLocation());
- player.getInventory().clear();
- player.setExp(0);
- player.getInventory().setHelmet(null);
- player.getInventory().setChestplate(new ItemStack(Material.IRON_CHESTPLATE));
- player.getInventory().setLeggings(new ItemStack(Material.IRON_LEGGINGS));
- player.getInventory().setBoots(new ItemStack(Material.LEATHER_BOOTS));
- plugin.kit.remove(player);
- plugin.kit.put(player, "dash");
- player.getInventory().addItem(new ItemStack(Material.IRON_SWORD));
- org.bukkit.inventory.ItemStack speed = new ItemStack(Material.SUGAR);
- ItemMeta Speedmeta = speed.getItemMeta();
- List<String> Speedlores = new ArrayList<String>();
- Speedlores.add("§7§oRight click for a speed boost");
- Speedmeta.setLore(Speedlores);
- Speedmeta.setDisplayName("§cSugar §fRush");
- speed.setItemMeta(Speedmeta);
- player.getInventory().addItem(speed);
- stew(player);
- unbreak(player);
- }
- //soldier Class
- void Soldier(Player player) {
- player.teleport(player.getWorld().getSpawnLocation());
- player.getInventory().clear();
- player.setExp(0);
- player.getInventory().setHelmet(new ItemStack(Material.IRON_HELMET));
- player.getInventory().setChestplate(new ItemStack(Material.DIAMOND_CHESTPLATE));
- player.getInventory().setLeggings(new ItemStack(Material.IRON_LEGGINGS));
- player.getInventory().setBoots(new ItemStack(Material.IRON_BOOTS));
- plugin.kit.remove(player);
- plugin.kit.put(player, "soldier");
- player.getInventory().addItem(new ItemStack(Material.DIAMOND_SWORD));
- org.bukkit.inventory.ItemStack smoke = new ItemStack(Material.INK_SACK, 5);
- ItemMeta Smokemeta = smoke.getItemMeta();
- Smokemeta.setDisplayName("§0Smoke Bomb");
- smoke.setItemMeta(Smokemeta);
- player.getInventory().addItem(smoke);
- stew(player);
- unbreak(player);
- }
- //engineer Class
- void Engineer(Player player) {
- player.teleport(player.getWorld().getSpawnLocation());
- player.getInventory().clear();
- player.setExp(0);
- player.getInventory().setHelmet(new ItemStack(Material.GOLD_HELMET));
- player.getInventory().setChestplate(new ItemStack(Material.LEATHER_CHESTPLATE));
- player.getInventory().setLeggings(new ItemStack(Material.LEATHER_LEGGINGS));
- player.getInventory().setBoots(new ItemStack(Material.LEATHER_BOOTS));
- for (ItemStack item: player.getInventory().getArmorContents()) {
- if (item.getType() != Material.GOLD_HELMET) {
- LeatherArmorMeta meta = (LeatherArmorMeta) item.getItemMeta();
- meta.setColor(Color.fromRGB(0, 0, 153));
- item.setItemMeta(meta);
- } else {
- item.addEnchantment(Enchantment.PROTECTION_ENVIRONMENTAL, 3);
- }
- }
- plugin.kit.remove(player);
- plugin.kit.put(player, "engineer");
- org.bukkit.inventory.ItemStack spade = new ItemStack(Material.IRON_SPADE);
- spade.addUnsafeEnchantment(Enchantment.DAMAGE_ALL, 3);
- player.getInventory().addItem(spade);
- org.bukkit.inventory.ItemStack wrench = new ItemStack(Material.IRON_BARDING);
- ItemMeta Wrenchmeta = wrench.getItemMeta();
- List<String> Wrenchlores = new ArrayList<String>();
- Wrenchlores.add("§7§oRight click players");
- Wrenchmeta.setLore(Wrenchlores);
- Wrenchmeta.setDisplayName("§7Monkey Wrench");
- wrench.setItemMeta(Wrenchmeta);
- player.getInventory().addItem(wrench);
- stew(player);
- unbreak(player);
- }
- HashMap<UUID, Boolean> isSwitch = new HashMap<UUID, Boolean>();
- @EventHandler
- public void onPlayerClick(InventoryClickEvent e) {
- if (e.getSlotType() == InventoryType.SlotType.ARMOR)
- e.setCancelled(true);
- }
- @EventHandler
- public void noBuilding(BlockPlaceEvent e) {
- if (e.getPlayer().getGameMode() != GameMode.CREATIVE) {
- e.setCancelled(true);
- }
- }
- @EventHandler
- public void noBreaking(BlockBreakEvent e) {
- if (e.getPlayer().getGameMode() != GameMode.CREATIVE) {
- e.setCancelled(true);
- }
- }
- @EventHandler
- public void playerdrop(PlayerDropItemEvent e) {
- if (e.getItemDrop().getItemStack().getType() == Material.RABBIT_STEW || e.getItemDrop().getItemStack().getType() == Material.BOWL) {
- e.getItemDrop().remove();
- } else {
- e.setCancelled(true);
- }
- }
- //Terrorist explode
- @EventHandler
- public void terrorist(PlayerInteractEvent e) {
- final Player player = e.getPlayer();
- if (player.getItemInHand() != null && player.getItemInHand().getType() != Material.AIR) {
- if (player.getItemInHand().hasItemMeta()) {
- if (player.getItemInHand().getType() == Material.SULPHUR && player.getInventory().getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§rFuse") && e.getAction() == e.getAction().RIGHT_CLICK_BLOCK || player.getItemInHand().getType() == Material.SULPHUR && player.getInventory().getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§rFuse") && e.getAction() == e.getAction().RIGHT_CLICK_AIR) {
- player.getInventory().remove(Material.SULPHUR);
- player.updateInventory();
- player.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 110, 1));
- player.setHealth(2);
- player.sendMessage("§4You are now vulnerable");
- //tnt animation
- final int tasktnt = Bukkit.getScheduler().scheduleSyncRepeatingTask(plugin, new Runnable() {
- public void run() {
- final FallingBlock sand = player.getWorld().spawnFallingBlock(player.getEyeLocation().add(0, 1, 0), Material.TNT, (byte) 2);
- sand.setVelocity(new Vector(player.getLocation().getDirection().multiply(-1).getX(), 0.5, player.getLocation().getDirection().multiply(-1).getZ()));
- final FallingBlock sand2 = player.getWorld().spawnFallingBlock(player.getEyeLocation().add(0, 1, 0), Material.TNT, (byte) 2);
- sand2.setVelocity(new Vector(player.getLocation().getDirection().multiply(-1).getX(), 0.5, player.getLocation().getDirection().multiply(-1).getZ()));
- final FallingBlock sand3 = player.getWorld().spawnFallingBlock(player.getEyeLocation().add(0, 1, 0), Material.TNT, (byte) 2);
- sand3.setVelocity(new Vector(player.getLocation().getDirection().multiply(-1).getX(), 0.5, player.getLocation().getDirection().multiply(-1).getZ()));
- Bukkit.getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() {
- public void run() {
- sand.remove();
- sand2.remove();
- sand3.remove();
- }
- }, 1L);
- }
- }, 0L, 1L);
- //xp count down
- final int countDown = Bukkit.getScheduler().scheduleSyncRepeatingTask(plugin, new Runnable() {
- public void run() {
- player.giveExp(1);
- }
- }, 0L, 15L);
- //Explode
- final int stopExplode = Bukkit.getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() {
- public void run() {
- player.getWorld().createExplosion(player.getLocation().getX(), player.getLocation().getY(), player.getLocation().getZ(), 5F, false, false);
- player.setHealth(0);
- Bukkit.getScheduler().cancelTask(countDown);
- Bukkit.getScheduler().cancelTask(tasktnt);
- }
- }, 100L);
- //Cancel explode and tnt
- new BukkitRunnable()
- {
- public void run()
- {
- org.bukkit.inventory.ItemStack fuse = new ItemStack(Material.SULPHUR);
- ItemMeta meta1 = fuse.getItemMeta();
- List<String> lores1 = new ArrayList<String>();
- lores1.add("§7§oRight click to suicide");
- meta1.setDisplayName("§rFuse");
- meta1.setLore(lores1);
- fuse.setItemMeta(meta1);
- if (plugin.kit.get(player) != "terrorist" || player.isDead() || player.getInventory().contains(fuse)) {
- Bukkit.getScheduler().cancelTask(tasktnt);
- Bukkit.getScheduler().cancelTask(countDown);
- Bukkit.getScheduler().cancelTask(stopExplode);
- cancel();
- }
- }
- }.runTaskTimer(plugin, 0L, 1L);
- }
- }
- }
- }
- HashMap<UUID, Long> countdown1 = new HashMap<UUID, Long>();
- //Dash Speed Boost
- @EventHandler
- public void Dash(PlayerInteractEvent e) {
- final Player player = e.getPlayer();
- if (player.getItemInHand() != null && player.getItemInHand().getType() != Material.AIR) {
- if (player.getItemInHand().hasItemMeta()) {
- if (player.getItemInHand().getType() == Material.SUGAR && player.getInventory().getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§cSugar §fRush") && e.getAction() == e.getAction().RIGHT_CLICK_BLOCK || player.getItemInHand().getType() == Material.SUGAR && player.getInventory().getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§cSugar §fRush") && e.getAction() == e.getAction().RIGHT_CLICK_AIR) {
- if(System.currentTimeMillis() - (countdown1.containsKey(player.getUniqueId()) ? countdown1.get(player.getUniqueId()) : 0) >= 1000*60*2) {
- countdown1.put(player.getUniqueId(), System.currentTimeMillis());
- isSwitch.remove(player.getUniqueId());
- isSwitch.put(player.getUniqueId(), false);
- player.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 30*20, 1));
- ItemStack sugar = player.getInventory().getItem(player.getInventory().first(Material.SUGAR));
- ItemMeta sugarMeta = sugar.getItemMeta();
- List<String> sugarLores = new ArrayList<String>();
- sugarLores.add("§4Recharging");
- sugarMeta.setLore(sugarLores);
- //Set fire
- final BukkitTask fire = new BukkitRunnable() {
- public void run() {
- for (Entity entity : player.getNearbyEntities(1, .7, 1)) {
- entity.setFireTicks(20*5);
- }
- }
- }.runTaskTimer(plugin, 0L, 1L);
- //Flame particle
- final BukkitTask flame = new BukkitRunnable() {
- public void run() {
- player.getWorld().spigot().playEffect(player.getLocation().subtract(0, .5, 0), Effect.MOBSPAWNER_FLAMES, 1, 1, 0, 0, 0, 0, 10, 50);
- }
- }.runTaskTimer(plugin, 0L, 5L);
- final ItemStack leather = player.getInventory().getBoots();
- final LeatherArmorMeta meta = (LeatherArmorMeta) leather.getItemMeta();
- //Color change
- final BukkitTask firefeet = new BukkitRunnable() {
- public void run() {
- new BukkitRunnable() {
- public void run() {
- meta.setColor(Color.fromRGB(213, 137, 11));
- leather.setItemMeta(meta);
- }
- }.runTaskLater(plugin, 0);
- new BukkitRunnable() {
- public void run() {
- meta.setColor(Color.fromRGB(230, 181, 46));
- leather.setItemMeta(meta);
- }
- }.runTaskLater(plugin, 5);
- new BukkitRunnable() {
- public void run() {
- meta.setColor(Color.fromRGB(255, 255, 255));
- leather.setItemMeta(meta);
- }
- }.runTaskLater(plugin, 10);
- new BukkitRunnable() {
- public void run() {
- meta.setColor(Color.fromRGB(213, 137, 11));
- leather.setItemMeta(meta);
- }
- }.runTaskLater(plugin, 15);
- new BukkitRunnable() {
- public void run() {
- meta.setColor(Color.fromRGB(179, 67, 0));
- leather.setItemMeta(meta);
- }
- }.runTaskLater(plugin, 20);
- new BukkitRunnable() {
- public void run() {
- meta.setColor(Color.fromRGB(210, 129, 8));
- leather.setItemMeta(meta);
- }
- }.runTaskLater(plugin, 25);
- new BukkitRunnable() {
- public void run() {
- meta.setColor(Color.fromRGB(213, 137, 11));
- leather.setItemMeta(meta);
- }
- }.runTaskLater(plugin, 30);
- new BukkitRunnable() {
- public void run() {
- meta.setColor(Color.fromRGB(195, 97, 2));
- leather.setItemMeta(meta);
- }
- }.runTaskLater(plugin, 35);
- }
- }.runTaskTimer(plugin, 0L, 5L);
- //Cancel stuff
- final BukkitTask canceler = new BukkitRunnable() {
- public void run() {
- if (plugin.kit.get(player) != "dash" || player.isDead() || isSwitch.get(player.getUniqueId()) != false) {
- firefeet.cancel();
- flame.cancel();
- fire.cancel();
- new BukkitRunnable() {
- public void run() {
- meta.setColor(Bukkit.getItemFactory().getDefaultLeatherColor());
- leather.setItemMeta(meta);
- }
- }.runTaskLater(plugin, 60L);
- cancel();
- }
- }
- }.runTaskTimer(plugin, 0L, 1L);
- //Times up
- new BukkitRunnable() {
- public void run() {
- canceler.cancel();
- fire.cancel();
- firefeet.cancel();
- flame.cancel();
- new BukkitRunnable() {
- public void run() {
- meta.setColor(Bukkit.getItemFactory().getDefaultLeatherColor());
- leather.setItemMeta(meta);
- }
- }.runTaskLater(plugin, 60L);
- }
- }.runTaskLater(plugin, 30*20L);
- } else {
- player.sendMessage("§4" + String.valueOf((int)(120 - Math.floor((System.currentTimeMillis() - countdown1.get(player.getUniqueId()))/1000))) + " seconds remaining");
- }
- }
- }
- }
- }
- //soldier smoke bomb
- @EventHandler
- public void soldier(PlayerInteractEvent e) {
- final Player player = e.getPlayer();
- if (player.getItemInHand() != null && player.getItemInHand().getType() != Material.AIR) {
- if (player.getItemInHand().hasItemMeta()) {
- if (player.getItemInHand().getType() == Material.INK_SACK && player.getInventory().getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§0Smoke Bomb") && e.getAction() == e.getAction().RIGHT_CLICK_BLOCK || player.getItemInHand().getType() == Material.INK_SACK && player.getInventory().getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§0Smoke Bomb") && e.getAction() == e.getAction().RIGHT_CLICK_AIR) {
- org.bukkit.inventory.ItemStack smoke = new ItemStack(Material.INK_SACK, 1);
- ItemMeta Smokemeta = smoke.getItemMeta();
- Smokemeta.setDisplayName("§0Smoke Bomb");
- Smokemeta.spigot().setUnbreakable(true);
- smoke.setItemMeta(Smokemeta);
- player.getInventory().removeItem(smoke);
- player.updateInventory();
- for (Entity entity: player.getNearbyEntities(4, 4, 4)) {
- if (entity instanceof LivingEntity) {
- ((LivingEntity) entity).addPotionEffect(new PotionEffect(PotionEffectType.BLINDNESS, 20*3, 0));
- ((LivingEntity) entity).addPotionEffect(new PotionEffect(PotionEffectType.NIGHT_VISION, 20*1, 0));
- }
- }
- player.getWorld().playSound(player.getLocation(), Sound.FIZZ, (float)3, (float)20);
- player.getWorld().spigot().playEffect(player.getLocation(), Effect.LARGE_SMOKE, 0, 0, (float)0.5, (float)0.5, (float)0.5, (float)0.09, 70, 6);
- player.getWorld().spigot().playEffect(player.getLocation().add(0, 1, 0), Effect.LARGE_SMOKE, 0, 0, (float)0.5, (float)0.5, (float)0.5, (float)0.09, 70, 6);
- }
- }
- }
- }
- HashMap<UUID, Long> countdown2 = new HashMap<UUID, Long>();
- //Engineer wrench
- @EventHandler
- public void engineer(PlayerInteractEntityEvent e) {
- Player player = e.getPlayer();
- if (e.getRightClicked() instanceof Player) {
- final Player clickedPlayer = (Player) e.getRightClicked();
- if (player.getItemInHand() != null && player.getItemInHand().getType() != Material.AIR) {
- if (player.getItemInHand().hasItemMeta()) {
- if (player.getItemInHand().getType() == Material.IRON_BARDING && player.getInventory().getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§7Monkey Wrench") || player.getItemInHand().getType() == Material.IRON_BARDING && player.getInventory().getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§7Monkey Wrench")) {
- if(System.currentTimeMillis() - (countdown2.containsKey(player.getUniqueId()) ? countdown2.get(player.getUniqueId()) : 0) >= 1000*60*2+30) {
- countdown2.put(player.getUniqueId(), System.currentTimeMillis());
- player.getWorld().spigot().playEffect(player.getEyeLocation(), Effect.FIREWORKS_SPARK, 0, 0, (float)0.5, (float)0.5, (float)0.5, (float)0.09, 50, 50);
- player.getWorld().spigot().playEffect(player.getLocation(), Effect.FIREWORKS_SPARK, 0, 0, (float)0.5, (float)0.5, (float)0.5, (float)0.09, 50, 50);
- player.getWorld().playSound(player.getLocation(), Sound.ANVIL_LAND, (float)0.8, (float)-3);
- for (ItemStack item :clickedPlayer.getInventory()) {
- if (item != null) {
- item.setAmount(item.getAmount()*-1);
- }
- }
- for (ItemStack item1 :clickedPlayer.getInventory().getArmorContents()) {
- item1.setAmount(item1.getAmount()*-1);
- }
- ItemStack[] items = clickedPlayer.getInventory().getContents();
- List<Integer> used = new ArrayList<Integer>();
- Random r = new Random();
- for(int number = 0; number < items.length; number++) {
- ItemStack item = items[number];
- int random = r.nextInt(clickedPlayer.getInventory().getSize());
- while(used.contains(random)) {
- random = r.nextInt(clickedPlayer.getInventory().getSize());
- }
- clickedPlayer.getInventory().setItem(random, item);
- used.add(random);
- }
- new BukkitRunnable() {
- public void run() {
- for (ItemStack item :clickedPlayer.getInventory()) {
- if (item != null) {
- item.setAmount(item.getAmount()*-1);
- }
- }
- for (ItemStack item1 :clickedPlayer.getInventory().getArmorContents()) {
- item1.setAmount(item1.getAmount()*-1);
- }
- }
- }.runTaskLater(plugin, 20*10);
- } else {
- player.sendMessage("§4" + String.valueOf((int)(60*2+30 - Math.floor((System.currentTimeMillis() - countdown2.get(player.getUniqueId()))/1000))) + " seconds remaining");
- }
- }
- }
- }
- }
- }
- @EventHandler
- public void entityDeath(EntityDeathEvent e) {
- e.setDroppedExp(0);
- e.getDrops().removeAll(e.getDrops());
- }
- @EventHandler
- public void login(PlayerLoginEvent e) {
- final Player player = e.getPlayer();
- Bukkit.getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() {
- public void run() {
- player.setHealth(20);
- player.addPotionEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, 200, 5));
- player.setFoodLevel(14);
- player.teleport(player.getWorld().getSpawnLocation());
- player.getInventory().clear();
- player.getInventory().setArmorContents(null);
- player.setExp(0);
- player.openInventory(kits(player));
- player.getInventory().setItem(8, kitselector());
- plugin.spawn(player);
- for (PotionEffect effect : player.getActivePotionEffects()) {
- player.removePotionEffect(effect.getType());
- }
- getDataCoins(player);
- getDataDeaths(player);
- getDataKills(player);
- getDataScore(player);
- stats(player);
- }
- }, 10L);
- }
- @EventHandler
- public void clickKitSelector(PlayerInteractEvent e) {
- Player player = e.getPlayer();
- if (player.getItemInHand() != null && player.getItemInHand().getType() != Material.AIR) {
- if (player.getItemInHand().hasItemMeta()) {
- if (player.getItemInHand().getType() == Material.NETHER_STAR && player.getInventory().getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§7Kit Selector") && e.getAction() == e.getAction().RIGHT_CLICK_BLOCK || player.getItemInHand().getType() == Material.NETHER_STAR && player.getInventory().getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§7Kit Selector") && e.getAction() == e.getAction().RIGHT_CLICK_AIR) {
- player.openInventory(kits(player));
- }
- }
- }
- }
- @EventHandler
- public void stewMilk(PlayerInteractEvent e) {
- Player player = e.getPlayer();
- //Rabbit Stew
- if (player.getItemInHand() != null && player.getItemInHand().getType() != Material.AIR) {
- if (e.getAction() == e.getAction().RIGHT_CLICK_AIR || e.getAction() == e.getAction().RIGHT_CLICK_BLOCK) {
- if (player.getItemInHand().getType() == Material.RABBIT_STEW && player.getHealth() < player.getMaxHealth()) {
- if (player.getMaxHealth() - player.getHealth() < 7.0) {
- player.setHealth(player.getMaxHealth());
- } else {
- player.setHealth(player.getHealth() + 7.0);
- }
- CraftPlayer cPlayer = ((CraftPlayer) player);
- PacketPlayOutEntityStatus eat = new PacketPlayOutEntityStatus(cPlayer.getHandle(), (byte) 9);
- cPlayer.getHandle().playerConnection.sendPacket(eat);
- player.setFoodLevel(14);
- player.getItemInHand().setType(Material.BOWL);
- player.getItemInHand().setItemMeta(null);
- }
- }
- }
- //Milk
- if (player.getItemInHand() != null && player.getItemInHand().getType() != Material.AIR) {
- if (e.getAction() == e.getAction().RIGHT_CLICK_AIR || e.getAction() == e.getAction().RIGHT_CLICK_BLOCK) {
- if (player.getItemInHand().getType() == Material.MILK_BUCKET) {
- CraftPlayer cPlayer = ((CraftPlayer) player);
- PacketPlayOutEntityStatus eat = new PacketPlayOutEntityStatus(cPlayer.getHandle(), (byte) 9);
- cPlayer.getHandle().playerConnection.sendPacket(eat);
- player.getItemInHand().setType(Material.BUCKET);
- player.addPotionEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, 200, 0));
- player.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, 60, 9));
- player.getItemInHand().setItemMeta(null);
- }
- }
- }
- }
- @EventHandler
- public void kitSelector(InventoryClickEvent e) {
- Player player = (Player) e.getWhoClicked();
- ItemStack item = e.getCurrentItem();
- if (e.getInventory().getTitle().equals("§5Kit Selector")) {
- if (e.getRawSlot() < 54 && e.getRawSlot() > -1){
- if (e.getCurrentItem() != null && e.getCurrentItem().getType() != Material.AIR) {
- if (item.getType() == Material.TNT) {
- e.setCancelled(true);
- for (PotionEffectType potion: PotionEffectType.values()) {
- if (potion != null) {
- player.removePotionEffect(potion);
- }
- }
- Terrorist(player);
- player.closeInventory();
- player.getInventory().setItem(8, kitselector());
- }
- if (item.getType() == Material.MILK_BUCKET) {
- e.setCancelled(true);
- for (PotionEffectType potion: PotionEffectType.values()) {
- if (potion != null) {
- player.removePotionEffect(potion);
- }
- }
- Milkman(player);
- player.closeInventory();
- player.getInventory().setItem(8, kitselector());
- }
- if (item.getType() == Material.SUGAR) {
- e.setCancelled(true);
- for (PotionEffectType potion: PotionEffectType.values()) {
- if (potion != null) {
- player.removePotionEffect(potion);
- }
- }
- Dash(player);
- isSwitch.remove(player.getUniqueId());
- isSwitch.put(player.getUniqueId(), true);
- player.closeInventory();
- player.getInventory().setItem(8, kitselector());
- }
- if (item.getType() == Material.INK_SACK) {
- e.setCancelled(true);
- for (PotionEffectType potion: PotionEffectType.values()) {
- if (potion != null) {
- player.removePotionEffect(potion);
- }
- }
- Soldier(player);
- player.closeInventory();
- player.getInventory().setItem(8, kitselector());
- }
- if (item.getType() == Material.IRON_BARDING) {
- e.setCancelled(true);
- for (PotionEffectType potion: PotionEffectType.values()) {
- if (potion != null) {
- player.removePotionEffect(potion);
- }
- }
- Engineer(player);
- player.closeInventory();
- player.getInventory().setItem(8, kitselector());
- }
- }
- }
- }
- }
- @EventHandler
- public void deathSound(PlayerDeathEvent e) {
- Player player = e.getEntity();
- Villager villager = player.getWorld().spawn(player.getLocation(), Villager.class);
- villager.setHealth(1);
- villager.addPotionEffect(new PotionEffect(PotionEffectType.WITHER, 1000, 100));
- }
- @EventHandler
- public void respawn(PlayerRespawnEvent e) {
- final Player player = e.getPlayer();
- Bukkit.getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() {
- public void run() {
- player.setFoodLevel(14);
- storePlayerDeaths(player, Integer.valueOf(getDataDeaths(player)) + 1);
- storePlayerScore(player);
- stats(player);
- player.getInventory().setItem(8, kitselector());
- plugin.spawn(player);
- }
- }, 5L);
- if (plugin.kit.get(player) == "terrorist") {
- Terrorist(player);
- }
- if (plugin.kit.get(player) == "milkman") {
- Milkman(player);
- }
- if (plugin.kit.get(player) == "dash") {
- Dash(player);
- }
- if (plugin.kit.get(player) == "soldier") {
- Soldier(player);
- }
- if (plugin.kit.get(player) == "engineer") {
- Engineer(player);
- }
- }
- @EventHandler
- public void jukeboxInventory(InventoryClickEvent e) {
- Player player = (Player) e.getWhoClicked();
- ItemStack item = e.getCurrentItem();
- if (e.getInventory().getTitle().equals("§8Song Library")) {
- if (e.getRawSlot() < 54 && e.getRawSlot() > -1){
- if (e.getCurrentItem() != null && e.getCurrentItem().getType() != Material.AIR) {
- if (item.getType() == Material.GOLD_RECORD) {
- e.setCancelled(true);
- player.playEffect(player.getLocation(), Effect.RECORD_PLAY, Material.GOLD_RECORD);
- }
- if (item.getType() == Material.GREEN_RECORD) {
- e.setCancelled(true);
- player.playEffect(player.getLocation(), Effect.RECORD_PLAY, Material.GREEN_RECORD);
- }
- if (item.getType() == Material.RECORD_3) {
- e.setCancelled(true);
- player.playEffect(player.getLocation(), Effect.RECORD_PLAY, Material.RECORD_3);
- }
- if (item.getType() == Material.RECORD_4) {
- e.setCancelled(true);
- player.playEffect(player.getLocation(), Effect.RECORD_PLAY, Material.RECORD_4);
- }
- if (item.getType() == Material.RECORD_5) {
- e.setCancelled(true);
- player.playEffect(player.getLocation(), Effect.RECORD_PLAY, Material.RECORD_5);
- }
- if (item.getType() == Material.RECORD_6) {
- e.setCancelled(true);
- player.playEffect(player.getLocation(), Effect.RECORD_PLAY, Material.RECORD_6);
- }
- if (item.getType() == Material.RECORD_7) {
- e.setCancelled(true);
- player.playEffect(player.getLocation(), Effect.RECORD_PLAY, Material.RECORD_7);
- }
- if (item.getType() == Material.RECORD_8) {
- e.setCancelled(true);
- player.playEffect(player.getLocation(), Effect.RECORD_PLAY, Material.RECORD_8);
- }
- if (item.getType() == Material.RECORD_9) {
- e.setCancelled(true);
- player.playEffect(player.getLocation(), Effect.RECORD_PLAY, Material.RECORD_9);
- }
- if (item.getType() == Material.RECORD_10) {
- e.setCancelled(true);
- player.playEffect(player.getLocation(), Effect.RECORD_PLAY, Material.RECORD_10);
- }
- if (item.getType() == Material.RECORD_11) {
- e.setCancelled(true);
- player.playEffect(player.getLocation(), Effect.RECORD_PLAY, Material.RECORD_11);
- }
- if (item.getType() == Material.RECORD_12) {
- e.setCancelled(true);
- player.playEffect(player.getLocation(), Effect.RECORD_PLAY, Material.RECORD_12);
- }
- }
- }
- }
- }
- @EventHandler
- public void MilkMoo(PlayerInteractEntityEvent e) {
- Player player = e.getPlayer();
- if (e.getRightClicked() instanceof Player) {
- if (player.getItemInHand() != null && player.getItemInHand().getType() != Material.AIR) {
- if (player.getItemInHand().getType() == Material.BUCKET) {
- Player moo = (Player) e.getRightClicked();
- if (moo.getUniqueId().equals(UUID.fromString("1c8419f1-03c3-46db-8a6e-41adbb8ddb8e"))) {
- player.getItemInHand().setType(Material.MILK_BUCKET);
- }
- }
- }
- }
- }
- Boolean jasonSaySorry = false;
- @EventHandler
- public void JasonJoin(PlayerLoginEvent e) {
- final Player player = e.getPlayer();
- Bukkit.getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() {
- public void run() {
- UUID jason = UUID.fromString("f8bd4e3f-e20c-4650-b3ba-1f286e71a150");
- if (player.getUniqueId().equals(jason) && jasonSaySorry == false) {
- player.addPotionEffect(new PotionEffect(PotionEffectType.SLOW, 999999999, 7));
- player.addPotionEffect(new PotionEffect(PotionEffectType.SLOW_DIGGING, 999999999, 5));
- player.addPotionEffect(new PotionEffect(PotionEffectType.JUMP, 999999999, 150));
- player.addPotionEffect(new PotionEffect(PotionEffectType.NIGHT_VISION, 999999999, 1));
- player.addPotionEffect(new PotionEffect(PotionEffectType.BLINDNESS, 999999999, 1));
- player.addPotionEffect(new PotionEffect(PotionEffectType.WEAKNESS, 999999999, 225));
- player.sendMessage("§8<§5Witch Moo§8>§4BAD JUJU!");
- player.sendMessage("§4Type §7'§4I'm sorry moo3oo3oo3. I'll add you to my hall of fame§7'§4 to remove the curse!");
- }
- }
- }, 40L);
- }
- @EventHandler
- public void JasonSorry(AsyncPlayerChatEvent e) {
- final Player player = e.getPlayer();
- UUID jason = UUID.fromString("f8bd4e3f-e20c-4650-b3ba-1f286e71a150");
- if (player.getUniqueId().equals(jason) && e.getMessage().equals("I'm sorry moo3oo3oo3. I'll add you to my hall of fame")) {
- player.getActivePotionEffects().clear();
- jasonSaySorry = true;
- }
- }
- @EventHandler
- public void playerDeath(PlayerDeathEvent e) {
- Player player = e.getEntity();
- Player killer = player.getKiller();
- if (player.getKiller() instanceof Player) {
- if (killer != player) {
- //Give 4 coins
- storePlayercoins(killer, Integer.valueOf(getDataCoins(killer)) + 4);
- //Adds 1 to kills
- storePlayerKills(killer, Integer.valueOf(getDataKills(killer)) + 1);
- //Calculates percent
- storePlayerScore(player);
- stats(killer);
- }
- }
- }
- @EventHandler
- public void food(FoodLevelChangeEvent e) {
- if (e.getEntity() instanceof Player) {
- Player player = (Player) e.getEntity();
- e.setCancelled(true);
- }
- }
- HashMap<UUID, Long> countdown = new HashMap<UUID, Long>();
- @EventHandler
- public void Bessie(PlayerInteractEvent e) {
- final Player player = e.getPlayer();
- if (player.getItemInHand().hasItemMeta()) {
- if (player.getItemInHand() != null && player.getItemInHand().getType() != Material.AIR) {
- if (player.getItemInHand().getType() == Material.MONSTER_EGG && player.getInventory().getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§rOl' Bessie") && e.getAction() == e.getAction().RIGHT_CLICK_BLOCK && player.getItemInHand().getDurability() == 92) {
- e.setCancelled(true);
- final Cow cow = player.getWorld().spawn(e.getClickedBlock().getRelative(e.getBlockFace()).getLocation().add(0.5, 0, 0.5), Cow.class);
- player.getItemInHand().setDurability((short) 0);
- cow.setCustomName(player.getName());
- //Cow gives you milk
- final BukkitTask give = new BukkitRunnable()
- {
- public void run()
- {
- if (cow.isDead() == false) {
- List<org.bukkit.entity.Entity> nearby = cow.getNearbyEntities(3, 3, 3);
- for (org.bukkit.entity.Entity entity: nearby) {
- if (entity instanceof Player) {
- if (((Player) entity).getInventory().contains(Material.BUCKET) && cow.getCustomName() == player.getName()) {
- ((Player) entity).getInventory().removeItem(new ItemStack(Material.BUCKET, 1));
- player.updateInventory();
- ItemStack milk = new ItemStack(Material.MILK_BUCKET);
- ItemMeta Milkmeta = milk.getItemMeta();
- List<String> Milklores = new ArrayList<String>();
- Milklores.add("§7§oDrink for strong bones and rejuvenate effect");
- Milkmeta.setLore(Milklores);
- milk.setItemMeta(Milkmeta);
- ((Player) entity).getInventory().addItem(milk);
- }
- }
- }
- } else {
- cancel();
- }
- }
- }.runTaskTimer(plugin, 100L, 100L);
- //Times up
- new BukkitRunnable()
- {
- public void run()
- {
- cow.remove();
- give.cancel();
- }
- }.runTaskLater(plugin, 500L);
- //Give the restored egg
- final BukkitTask giveEgg = new BukkitRunnable()
- {
- public void run()
- {
- ItemStack Bessie = new ItemStack(Material.MONSTER_EGG, 1, (short) 0);
- ItemMeta Bessiemeta = Bessie.getItemMeta();
- List<String> Bessielores = new ArrayList<String>();
- Bessielores.add("§7§oSpawn her in to slowy refill milk bucket");
- Bessiemeta.setDisplayName("§rOl' Bessie");
- Bessiemeta.setLore(Bessielores);
- Bessiemeta.spigot().setUnbreakable(true);
- Bessie.setItemMeta(Bessiemeta);
- player.getInventory().removeItem(Bessie);
- Bessie.setDurability((short) 92);
- player.getInventory().addItem(Bessie);
- }
- }.runTaskLater(plugin, 3*60*20L);
- new BukkitRunnable()
- {
- public void run()
- {
- ItemStack Bessie = new ItemStack(Material.MONSTER_EGG, 1, (short) 92);
- ItemMeta Bessiemeta = Bessie.getItemMeta();
- List<String> Bessielores = new ArrayList<String>();
- Bessielores.add("§7§oSpawn her in to slowy refill milk bucket");
- Bessiemeta.setDisplayName("§rOl' Bessie");
- Bessiemeta.setLore(Bessielores);
- Bessiemeta.spigot().setUnbreakable(true);
- Bessie.setItemMeta(Bessiemeta);
- if (player.isDead() || plugin.kit.get(player) != "milkman" || player.getInventory().contains(Bessie)) {
- giveEgg.cancel();
- cow.remove();
- cancel();
- }
- }
- }.runTaskTimer(plugin, 0L, 1L);
- countdown.put(player.getUniqueId(), System.currentTimeMillis());
- }
- //Time left
- if (player.getItemInHand().getType() == Material.MONSTER_EGG && player.getInventory().getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase("§rOl' Bessie") && e.getAction() == e.getAction().RIGHT_CLICK_BLOCK && player.getItemInHand().getDurability() == 0) {
- e.setCancelled(true);
- if(System.currentTimeMillis() - (countdown.containsKey(player.getUniqueId()) ? countdown.get(player.getUniqueId()) : 0) >= 1000*60*3) {
- } else {
- player.sendMessage("§4" + String.valueOf((int)(180 - Math.floor((System.currentTimeMillis() - countdown.get(player.getUniqueId()))/1000))) + " seconds remaining");
- }
- }
- }
- }
- }
- @EventHandler
- public void noDamage(EntityDamageEvent e) {
- Entity entity = e.getEntity();
- if (entity instanceof Player) {
- Player player = (Player) e.getEntity();
- if (player.getWorld().getSpawnLocation().getWorld() == player.getWorld() && player.getLocation().distance(player.getWorld().getSpawnLocation()) <= plugin.getConfig().getInt("Spawn Protection Radius")) {
- e.setCancelled(true);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement