Guest User

Untitled

a guest
Aug 15th, 2018
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.78 KB | None | 0 0
  1. package me.mrjibblez.Timber;
  2.  
  3. import org.bukkit.Effect;
  4. import org.bukkit.Location;
  5. import org.bukkit.Material;
  6. import org.bukkit.World;
  7. import org.bukkit.entity.Player;
  8. import org.bukkit.event.EventHandler;
  9. import org.bukkit.event.EventPriority;
  10. import org.bukkit.event.Listener;
  11. import org.bukkit.event.block.BlockBreakEvent;
  12. import org.bukkit.inventory.ItemStack;
  13.  
  14. public class MyBlockListener implements Listener {
  15.     @EventHandler
  16.     public void BlockBreak(BlockBreakEvent event) {
  17.     }
  18.    
  19.     public static Timber plugin;
  20.    
  21.     public MyBlockListener(Timber instance) {
  22.         plugin = instance;
  23.     }
  24.    
  25.     @EventHandler(priority=EventPriority.NORMAL)
  26.     public void onBlockBreak (BlockBreakEvent event) {
  27.         Material block = event.getBlock().getType();
  28.         Player player = event.getPlayer();
  29.         if(block == Material.LOG && player.getItemInHand().getType().name().toLowerCase().contains("axe")) {
  30.             Location blockLocation = event.getBlock().getLocation();
  31.                 double y = blockLocation.getBlockY();
  32.                 double x = blockLocation.getBlockX();
  33.                 double z = blockLocation.getBlockZ();
  34.                
  35.             World currentWorld = event.getPlayer().getWorld();
  36.            
  37.             boolean logsLeft = true;
  38.            
  39.             while(logsLeft == true) {
  40.                 y++; //Increment Y Coordinate
  41.                 Location blockAbove = new Location(currentWorld, x, y, z);
  42.                 Material blockAboveType = blockAbove.getBlock().getType();
  43.                 Byte blockAboveData = blockAbove.getBlock().getData();
  44.                 if(blockAboveType == Material.LOG) {
  45.                     ItemStack droppedItem = new ItemStack(blockAboveType, 1, blockAboveData);
  46.                     currentWorld.playEffect(blockAbove, Effect.SMOKE, 1);
  47.                     blockAbove.getBlock().setType(Material.AIR);
  48.                     currentWorld.dropItem(blockAbove, droppedItem);
  49.                     logsLeft = true;
  50.                 } else {
  51.                     logsLeft = false;
  52.  
  53.                 }  
  54.             }  
  55.         }
  56.     }
  57. }
Add Comment
Please, Sign In to add comment