2023-04-18 16:50:00 +02:00

79 lines
1.7 KiB
Java

package com.hbm.blocks.generic;
import java.util.Random;
import com.hbm.blocks.BlockEnumMulti;
import com.hbm.blocks.BlockEnums;
import com.hbm.blocks.ModBlocks;
import com.hbm.items.ModItems;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.item.Item;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection;
public class BlockStalagmite extends BlockEnumMulti {
public BlockStalagmite() {
super(Material.rock, BlockEnums.EnumStalagmiteType.class, true, true);
}
@Override
public boolean isOpaqueCube() {
return false;
}
@Override
public boolean renderAsNormalBlock() {
return false;
}
@Override
public int getRenderType() {
return 1;
}
@Override
public Item getItemDropped(int meta, Random rang, int fortune) {
switch(meta) {
case 0: return ModItems.sulfur;
case 1: return ModItems.powder_asbestos;
}
return null;
}
@Override
public int damageDropped(int meta) {
return 0;
}
public static int getMetaFromResource(int meta) {
return meta;
}
@Override
public boolean canPlaceBlockAt(World world, int x, int y, int z) {
if(this == ModBlocks.stalagmite) return World.doesBlockHaveSolidTopSurface(world, x, y - 1, z);
if(this == ModBlocks.stalactite) return world.isSideSolid(x, y + 1, z, ForgeDirection.DOWN);
return true;
}
@Override
public void onNeighborBlockChange(World world, int x, int y, int z, Block block) {
if(!canPlaceBlockAt(world, x, y, z)) {
world.func_147480_a(x, y, z, true);
}
}
@Override
public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) {
return null;
}
}