diff options
Diffstat (limited to 'src/main/java/jp/plusplus/fbs/block/BlockBarrier.java')
| -rw-r--r-- | src/main/java/jp/plusplus/fbs/block/BlockBarrier.java | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/src/main/java/jp/plusplus/fbs/block/BlockBarrier.java b/src/main/java/jp/plusplus/fbs/block/BlockBarrier.java new file mode 100644 index 0000000..73f4c2f --- /dev/null +++ b/src/main/java/jp/plusplus/fbs/block/BlockBarrier.java @@ -0,0 +1,99 @@ +package jp.plusplus.fbs.block;
+
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import jp.plusplus.fbs.FBS;
+import jp.plusplus.fbs.alchemy.AlchemyRegistry;
+import net.minecraft.block.Block;
+import net.minecraft.block.BlockGlass;
+import net.minecraft.block.BlockLeaves;
+import net.minecraft.block.BlockLiquid;
+import net.minecraft.block.material.Material;
+import net.minecraft.item.Item;
+import net.minecraft.world.IBlockAccess;
+import net.minecraft.world.World;
+import net.minecraftforge.common.util.ForgeDirection;
+
+import java.util.Random;
+
+/**
+ * Created by plusplus_F on 2015/09/27.
+ */
+public class BlockBarrier extends BlockBase {
+ public BlockBarrier() {
+ super(Material.glass);
+ setBlockName("barrier");
+ setBlockTextureName("barrier");
+ setHardness(5.0f);
+ setResistance(1000.0f);
+ setTickRandomly(true);
+ setStepSound(soundTypeGlass);
+ setCreativeTab(FBS.tabBook);
+ }
+
+ @Override
+ public int tickRate(World w) {
+ return 5;
+ }
+
+ @Override
+ public void updateTick(World w, int x, int y, int z, Random rand) {
+ if (!w.isRemote) {
+ int meta = w.getBlockMetadata(x, y, z)-2;
+
+ if(meta>0) w.setBlockMetadataWithNotify(x, y, z, meta, 2);
+ else w.func_147480_a(x, y, z, false);
+ }
+ }
+
+ @Override
+ public int quantityDropped(int meta, int fortune, Random random) {
+ return 0;
+ }
+
+ @Override
+ public Item getItemDropped(int p_149650_1_, Random p_149650_2_, int p_149650_3_) {
+ return null;
+ }
+
+ @Override
+ public void onBlockAdded(World p_149726_1_, int p_149726_2_, int p_149726_3_, int p_149726_4_) {
+ int meta = p_149726_1_.getBlockMetadata(p_149726_2_, p_149726_3_, p_149726_4_);
+ if (meta == 0) {
+ meta = AlchemyRegistry.getRandom().nextInt(4);
+ p_149726_1_.setBlockMetadataWithNotify(p_149726_2_, p_149726_3_, p_149726_4_, meta, 2);
+ }
+ }
+
+ public boolean renderAsNormalBlock() {
+ return false;
+ }
+
+ protected boolean canSilkHarvest() {
+ return false;
+ }
+
+ @SideOnly(Side.CLIENT)
+ public boolean shouldSideBeRendered(IBlockAccess p_149646_1_, int p_149646_2_, int p_149646_3_, int p_149646_4_, int p_149646_5_) {
+ /*
+ ForgeDirection dir=ForgeDirection.getOrientation(p_149646_5_);
+ Block b=p_149646_1_.getBlock(p_149646_2_+dir.offsetX, p_149646_3_+dir.offsetY, p_149646_4_+dir.offsetZ);
+
+ if(b==null || b.getMaterial()==Material.air) return true;
+ return b!=this;
+ */
+ return p_149646_1_.getBlock(p_149646_2_, p_149646_3_, p_149646_4_)!=this;
+ }
+
+ @SideOnly(Side.CLIENT)
+ public int getRenderBlockPass()
+ {
+ return 1;
+ }
+
+ public boolean isOpaqueCube()
+ {
+ return false;
+ }
+
+}
|
