Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package hustler;
- import java.util.ArrayList;
- import java.util.List;
- import org.bukkit.Bukkit;
- import org.bukkit.Location;
- import org.bukkit.Material;
- import org.bukkit.Sound;
- import org.bukkit.World;
- import org.bukkit.block.Block;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Entity;
- import org.bukkit.entity.EntityType;
- import org.bukkit.entity.Explosive;
- import org.bukkit.entity.Player;
- import org.bukkit.entity.TNTPrimed;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.EventPriority;
- import org.bukkit.event.Listener;
- import org.bukkit.event.block.Action;
- import org.bukkit.event.block.BlockExplodeEvent;
- import org.bukkit.event.block.BlockFromToEvent;
- import org.bukkit.event.block.BlockRedstoneEvent;
- import org.bukkit.event.entity.CreatureSpawnEvent;
- import org.bukkit.event.entity.EntityExplodeEvent;
- import org.bukkit.event.entity.ExplosionPrimeEvent;
- import org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason;
- import org.bukkit.event.player.PlayerInteractEntityEvent;
- import org.bukkit.event.player.PlayerInteractEvent;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.meta.ItemMeta;
- import org.bukkit.plugin.PluginManager;
- import org.bukkit.plugin.java.JavaPlugin;
- import org.bukkit.potion.PotionEffect;
- import org.bukkit.potion.PotionEffectType;
- import com.onarandombox.MultiverseCore.event.MVTeleportEvent;
- import com.onarandombox.MultiversePortals.event.MVPortalEvent;
- import net.minecraft.server.v1_10_R1.Explosion;
- public class nukeMain extends JavaPlugin implements Listener {
- public List<Location> explosions = new ArrayList<Location>();
- ItemStack shard2;
- public void onEnable() {
- shard2 = new ItemStack(399);
- ItemMeta im2 = shard2.getItemMeta();
- List<String> lore2 = new ArrayList<String>();
- lore2.add("§6§lCAUTION CAUTION");
- lore2.add("§7Activating a Nuke is Very Dangerous");
- lore2.add("§7Never Use This on TNT!");
- im2.setLore(lore2);
- im2.setDisplayName("§a§kii§4§lNuke Core§a§kii");
- shard2.setItemMeta(im2);
- PluginManager manager = this.getServer().getPluginManager();
- manager.registerEvents(this, this);
- }
- @EventHandler(ignoreCancelled = true)
- public void ballFiring(EntityExplodeEvent e) {
- if(e.getEntityType().equals(EntityType.PRIMED_TNT)){
- Entity ent = e.getEntity();
- Location loc = ent.getLocation();
- Location loc2 =loc.add(12,0,0);
- Location loc3 =loc.add(-15,0,0);
- Location loc4 =loc.add(0,0,13);
- Location loc5 =loc.add(0,0,-14);
- if(ent!=null){
- if(ent.getCustomName().contains("§4§lNUKE")){
- for (Player op : Bukkit.getOnlinePlayers()) {
- if(op.getLocation().distance(loc)<=150){
- op.addPotionEffect(new PotionEffect(PotionEffectType.POISON,3000,2));
- op.addPotionEffect(new PotionEffect(PotionEffectType.SLOW,3000,3));
- }
- }
- World world = ent.getWorld();
- world.createExplosion(loc, 70F);
- world.createExplosion(loc2, 70F);
- world.createExplosion(loc3, 70F);
- world.createExplosion(loc4, 70F);
- world.createExplosion(loc5, 70F);
- }
- }
- }
- }
- @EventHandler
- public static void getExplosion(ExplosionPrimeEvent event) {
- Bukkit.broadcastMessage("" + event.getRadius());
- }
- public void startNuke(Location loc){
- TNTPrimed tnt = loc.getWorld().spawn(loc.add(0.5,0,0.5), TNTPrimed.class);
- tnt.setFuseTicks(600);
- int timer = 30;
- tnt.setCustomName("§4§lNUKE : §6"+timer);
- loc.getWorld().playSound(loc, Sound.ENTITY_ZOMBIE_VILLAGER_CURE, 10.0F, -5.0F);
- tnt.setCustomNameVisible(true);
- ticktimer(tnt,timer);
- }
- public void ticktimer(final TNTPrimed tnt, final int timer){
- if(timer >= 1){
- Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() {
- @Override
- public void run() {
- int timer2 = timer -1;
- ticktimer(tnt,timer2);
- tnt.setCustomName("§4§lNUKE : §6"+timer2);
- tnt.getWorld().playSound(tnt.getLocation(), Sound.BLOCK_ANVIL_LAND, 10.0F, -5.0F);
- if(timer2<=10&&timer2>3){
- half(tnt.getLocation(),20);
- }
- if(timer2<=3){
- quarter(tnt.getLocation(),4);
- }
- if(timer2 == 1){
- after(tnt.getLocation(),10);
- }
- }
- }, 20L);
- }
- else{
- return;
- }
- }
- public void half(final Location loc, final int count){
- if(count >=1){
- Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() {
- @Override
- public void run() {
- int count2 = count -1;
- loc.getWorld().playSound(loc, Sound.BLOCK_ANVIL_LAND, 10.0F, -5.0F);
- }
- }, 10L);
- }
- else{return;}
- }
- public void quarter(final Location loc, final int count){
- if(count >=1){
- Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() {
- @Override
- public void run() {
- int count2 = count -1;
- loc.getWorld().playSound(loc, Sound.BLOCK_ANVIL_LAND, 10.0F, -5.0F);
- quarter(loc,count2);
- }
- }, 5L);
- }
- else{return;}
- }
- public void after(final Location loc, final int count){
- if(count >=1){
- Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() {
- @Override
- public void run() {
- int count2 = count -1;
- loc.getWorld().playSound(loc, Sound.ENTITY_ZOMBIE_VILLAGER_CURE, 10.0F, -5.0F);
- after(loc,count2);
- }
- }, 1L);
- }
- else{return;}
- }
- @EventHandler
- public void ballFiring(PlayerInteractEvent e) {
- Player p = e.getPlayer();
- if(e.getAction().equals(Action.RIGHT_CLICK_BLOCK)){
- ItemStack item = shard2;
- item.setAmount(p.getItemInHand().getAmount());
- if(p.getItemInHand().equals(item)){
- if(e.getClickedBlock().getTypeId()== 46){
- int amount = p.getItemInHand().getAmount();
- item.setAmount(amount-1);
- p.setItemInHand(item);
- p.getWorld().playSound(p.getLocation(), Sound.ENTITY_ZOMBIE_VILLAGER_CURE, 10.0F, -5.0F);
- Block b =e.getClickedBlock();
- b.setType(Material.AIR);
- Location loc = e.getClickedBlock().getLocation();
- startNuke(loc);
- // p.getWorld().createExplosion(loc, 70F);
- // p.getWorld().createExplosion(loc.add(15,0,0), 50F);
- // p.getWorld().createExplosion(loc.add(-15,0,0), 50F);
- // p.getWorld().createExplosion(loc.add(0,0,15), 50F);
- // p.getWorld().createExplosion(loc.add(0,0,-15), 50F);
- }
- }
- }
- }
- public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
- if ((cmd.getName().equalsIgnoreCase("nukekey"))) {
- Player p = (Player) sender;
- if (args.length == 1) {
- for (Player op : Bukkit.getOnlinePlayers()) {
- if(op.getName().equalsIgnoreCase(args[0])){
- op.getInventory().addItem(shard2);
- }
- }
- }
- else{
- p.getInventory().addItem(shard2);
- }
- }
- return true;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement