Advertisement
Dudemister1999

NewTNT.java - Formatting is 'fixed'

Jan 26th, 2015
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.79 KB | None | 0 0
  1. import java.util.Arrays;
  2. import net.minecraft.server.v1_8_R1.Block;
  3. import net.minecraft.server.v1_8_R1.BlockPosition;
  4. import net.minecraft.server.v1_8_R1.BlockStateBoolean;
  5. import net.minecraft.server.v1_8_R1.BlockTNT;
  6. import net.minecraft.server.v1_8_R1.ChatComponentText;
  7. import net.minecraft.server.v1_8_R1.CreativeModeTab;
  8. import net.minecraft.server.v1_8_R1.EntityHuman;
  9. import net.minecraft.server.v1_8_R1.EntityLiving;
  10. import net.minecraft.server.v1_8_R1.EnumChatFormat;
  11. import net.minecraft.server.v1_8_R1.EnumDirection;
  12. import net.minecraft.server.v1_8_R1.Explosion;
  13. import net.minecraft.server.v1_8_R1.IBlockData;
  14. import net.minecraft.server.v1_8_R1.World;
  15. import org.bukkit.Location;
  16. import org.bukkit.block.BlockFace;
  17.  
  18. public class NewTNT extends BlockTNT
  19. {
  20.     public static final BlockStateBoolean EXPLODE = BlockStateBoolean.of("explode");
  21.  
  22.     public NewTNT()
  23.     {
  24.         super();
  25.         j(this.blockStateList.getBlockData().set(EXPLODE, true));
  26.         a(CreativeModeTab.d);
  27.     }
  28.    
  29.     @Override
  30.     public void onPlace(World world, BlockPosition position, IBlockData data)
  31.     {
  32.         System.out.println("Test!");
  33.     }
  34.  
  35.     @Override
  36.     public void a(World paramWorld, BlockPosition paramBlockPosition, IBlockData paramIBlockData, EntityHuman player)
  37.     {
  38.         super.a(paramWorld, paramBlockPosition, paramIBlockData, player);
  39.        
  40.         System.out.println("Test!");
  41. //        if (paramWorld.isBlockIndirectlyPowered(paramBlockPosition))
  42. //        {
  43. //            postBreak(paramWorld, paramBlockPosition, paramIBlockData.set(EXPLODE, true));
  44. //            paramWorld.setAir(paramBlockPosition);
  45. //        }
  46.  
  47.         Location location = new Location(paramWorld.getWorld(), paramBlockPosition.getX(), paramBlockPosition.getY(), paramBlockPosition.getZ());
  48.        
  49.         for(BlockFace face : Arrays.asList(BlockFace.NORTH, BlockFace.EAST, BlockFace.SOUTH, BlockFace.WEST))
  50.         {
  51.             org.bukkit.block.Block relativeBlock = location.getBlock().getRelative(face);
  52.            
  53.             if(relativeBlock.getType() == org.bukkit.Material.STAINED_GLASS && relativeBlock.getData() == 14)
  54.             {
  55.                 postBreak(paramWorld, paramBlockPosition, paramIBlockData.set(EXPLODE, true));
  56.             }
  57.             else
  58.             {
  59.                 paramWorld.setAir(paramBlockPosition);
  60.                 player.sendMessage(new ChatComponentText(EnumChatFormat.RED + "Sorry, you can only place explosives on acceptable zones!"));
  61.             }
  62.         }
  63.     }
  64.  
  65.     @Override
  66.     public void doPhysics(World paramWorld, BlockPosition paramBlockPosition, IBlockData paramIBlockData, Block paramBlock)
  67.     {
  68. //        if (paramWorld.isBlockIndirectlyPowered(paramBlockPosition))
  69. //        {
  70. //            postBreak(paramWorld, paramBlockPosition, paramIBlockData.set(EXPLODE, true));
  71. //            paramWorld.setAir(paramBlockPosition);
  72. //        }
  73.     }
  74.  
  75.     @Override
  76.     public void wasExploded(World paramWorld, BlockPosition paramBlockPosition, Explosion paramExplosion)
  77.     {
  78.         if (paramWorld.isStatic)
  79.         {
  80.             return;
  81.         }
  82. //        EntityTNTPrimed localEntityTNTPrimed = new EntityTNTPrimed(paramWorld, paramBlockPosition.getX() + 0.5F, paramBlockPosition.getY() + 0.5F, paramBlockPosition.getZ() + 0.5F, paramExplosion.c());
  83. //        localEntityTNTPrimed.fuseTicks = (paramWorld.random.nextInt(localEntityTNTPrimed.fuseTicks / 4) + localEntityTNTPrimed.fuseTicks / 8);
  84. //        paramWorld.addEntity(localEntityTNTPrimed);
  85.     }
  86.  
  87.     @Override
  88.     public void postBreak(World paramWorld, BlockPosition paramBlockPosition, IBlockData paramIBlockData)
  89.     {
  90. //        this.a(paramWorld, paramBlockPosition, paramIBlockData, (EntityLiving) null);
  91.     }
  92.  
  93.     @Override
  94.     public void a(World paramWorld, BlockPosition paramBlockPosition, IBlockData paramIBlockData, EntityLiving paramEntityLiving)
  95.     {
  96.         if (paramWorld.isStatic)
  97.         {
  98.             return;
  99.         }
  100.         if (((Boolean) paramIBlockData.get(EXPLODE)))
  101.         {
  102. //            EntityTNTPrimed localEntityTNTPrimed = new EntityTNTPrimed(paramWorld, paramBlockPosition.getX() + 0.5F, paramBlockPosition.getY() + 0.5F, paramBlockPosition.getZ() + 0.5F, paramEntityLiving);
  103. //            paramWorld.addEntity(localEntityTNTPrimed);
  104. //            paramWorld.makeSound(localEntityTNTPrimed, "game.tnt.primed", 1.0F, 1.0F);
  105.            
  106.             paramEntityLiving.sendMessage(new ChatComponentText(EnumChatFormat.RED + "Boom!"));
  107.         }
  108.     }
  109.  
  110.     @Override
  111.     public boolean interact(World paramWorld, BlockPosition paramBlockPosition, IBlockData paramIBlockData, EntityHuman paramEntityHuman, EnumDirection paramEnumDirection, float paramFloat1, float paramFloat2, float paramFloat3)
  112.     {
  113.         return true;
  114.     }
  115. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement