Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Arrays;
- import net.minecraft.server.v1_8_R1.Block;
- import net.minecraft.server.v1_8_R1.BlockPosition;
- import net.minecraft.server.v1_8_R1.BlockStateBoolean;
- import net.minecraft.server.v1_8_R1.BlockTNT;
- import net.minecraft.server.v1_8_R1.ChatComponentText;
- import net.minecraft.server.v1_8_R1.CreativeModeTab;
- import net.minecraft.server.v1_8_R1.EntityHuman;
- import net.minecraft.server.v1_8_R1.EntityLiving;
- import net.minecraft.server.v1_8_R1.EnumChatFormat;
- import net.minecraft.server.v1_8_R1.EnumDirection;
- import net.minecraft.server.v1_8_R1.Explosion;
- import net.minecraft.server.v1_8_R1.IBlockData;
- import net.minecraft.server.v1_8_R1.World;
- import org.bukkit.Location;
- import org.bukkit.block.BlockFace;
- public class NewTNT extends BlockTNT
- {
- public static final BlockStateBoolean EXPLODE = BlockStateBoolean.of("explode");
- public NewTNT()
- {
- super();
- j(this.blockStateList.getBlockData().set(EXPLODE, true));
- a(CreativeModeTab.d);
- }
- @Override
- public void onPlace(World world, BlockPosition position, IBlockData data)
- {
- System.out.println("Test!");
- }
- @Override
- public void a(World paramWorld, BlockPosition paramBlockPosition, IBlockData paramIBlockData, EntityHuman player)
- {
- super.a(paramWorld, paramBlockPosition, paramIBlockData, player);
- System.out.println("Test!");
- // if (paramWorld.isBlockIndirectlyPowered(paramBlockPosition))
- // {
- // postBreak(paramWorld, paramBlockPosition, paramIBlockData.set(EXPLODE, true));
- // paramWorld.setAir(paramBlockPosition);
- // }
- Location location = new Location(paramWorld.getWorld(), paramBlockPosition.getX(), paramBlockPosition.getY(), paramBlockPosition.getZ());
- for(BlockFace face : Arrays.asList(BlockFace.NORTH, BlockFace.EAST, BlockFace.SOUTH, BlockFace.WEST))
- {
- org.bukkit.block.Block relativeBlock = location.getBlock().getRelative(face);
- if(relativeBlock.getType() == org.bukkit.Material.STAINED_GLASS && relativeBlock.getData() == 14)
- {
- postBreak(paramWorld, paramBlockPosition, paramIBlockData.set(EXPLODE, true));
- }
- else
- {
- paramWorld.setAir(paramBlockPosition);
- player.sendMessage(new ChatComponentText(EnumChatFormat.RED + "Sorry, you can only place explosives on acceptable zones!"));
- }
- }
- }
- @Override
- public void doPhysics(World paramWorld, BlockPosition paramBlockPosition, IBlockData paramIBlockData, Block paramBlock)
- {
- // if (paramWorld.isBlockIndirectlyPowered(paramBlockPosition))
- // {
- // postBreak(paramWorld, paramBlockPosition, paramIBlockData.set(EXPLODE, true));
- // paramWorld.setAir(paramBlockPosition);
- // }
- }
- @Override
- public void wasExploded(World paramWorld, BlockPosition paramBlockPosition, Explosion paramExplosion)
- {
- if (paramWorld.isStatic)
- {
- return;
- }
- // EntityTNTPrimed localEntityTNTPrimed = new EntityTNTPrimed(paramWorld, paramBlockPosition.getX() + 0.5F, paramBlockPosition.getY() + 0.5F, paramBlockPosition.getZ() + 0.5F, paramExplosion.c());
- // localEntityTNTPrimed.fuseTicks = (paramWorld.random.nextInt(localEntityTNTPrimed.fuseTicks / 4) + localEntityTNTPrimed.fuseTicks / 8);
- // paramWorld.addEntity(localEntityTNTPrimed);
- }
- @Override
- public void postBreak(World paramWorld, BlockPosition paramBlockPosition, IBlockData paramIBlockData)
- {
- // this.a(paramWorld, paramBlockPosition, paramIBlockData, (EntityLiving) null);
- }
- @Override
- public void a(World paramWorld, BlockPosition paramBlockPosition, IBlockData paramIBlockData, EntityLiving paramEntityLiving)
- {
- if (paramWorld.isStatic)
- {
- return;
- }
- if (((Boolean) paramIBlockData.get(EXPLODE)))
- {
- // EntityTNTPrimed localEntityTNTPrimed = new EntityTNTPrimed(paramWorld, paramBlockPosition.getX() + 0.5F, paramBlockPosition.getY() + 0.5F, paramBlockPosition.getZ() + 0.5F, paramEntityLiving);
- // paramWorld.addEntity(localEntityTNTPrimed);
- // paramWorld.makeSound(localEntityTNTPrimed, "game.tnt.primed", 1.0F, 1.0F);
- paramEntityLiving.sendMessage(new ChatComponentText(EnumChatFormat.RED + "Boom!"));
- }
- }
- @Override
- public boolean interact(World paramWorld, BlockPosition paramBlockPosition, IBlockData paramIBlockData, EntityHuman paramEntityHuman, EnumDirection paramEnumDirection, float paramFloat1, float paramFloat2, float paramFloat3)
- {
- return true;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement