Advertisement
MathWellan

Trapdoor 1.16

Aug 22nd, 2021
1,785
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 0.76 KB | None | 0 0
  1.         if(b.getType() == Material.OAK_TRAPDOOR)
  2.         {
  3.             // Save
  4.             final Material m = b.getType();
  5.             final Location loc = b.getLocation();
  6.             final BlockState bs = b.getState();
  7.            
  8.             TrapDoor door = (TrapDoor) bs.getBlockData();
  9.             boolean open = door.isOpen();
  10.            
  11.             if(!open) // if it's closed before interact
  12.                 processingDoors.add(b);
  13.             else if(processingDoors.contains(b))
  14.                 processingDoors.remove(b);
  15.            
  16.             new BukkitRunnable()
  17.             {
  18.                 public void run()
  19.                 {      // to avoid a BlockBreakEvent check
  20.                     if(processingDoors.contains(b) && b.getWorld().getBlockAt(loc).getType() == m) // called
  21.                     {
  22.                         door.setOpen(!open);
  23.                         bs.setBlockData(door);
  24.                         bs.update(true);
  25.                     }
  26.                 }
  27.                
  28.             }.runTaskLater(this, 3 * 20L);
  29.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement