package com.hbm.blocks.gas; import java.util.Random; import com.hbm.lib.ModDamageSource; import com.hbm.util.ArmorRegistry; import com.hbm.util.ArmorRegistry.HazardClass; import com.hbm.util.ArmorUtil; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; public class BlockGasMonoxide extends BlockGasBase { public BlockGasMonoxide() { super(0.1F, 0.1F, 0.1F); } @Override public void onEntityCollidedWithBlock(World world, int p_149670_2_, int p_149670_3_, int p_149670_4_, Entity entity) { if(!(entity instanceof EntityLivingBase)) return; EntityLivingBase entityLiving = (EntityLivingBase) entity; if(ArmorRegistry.hasAllProtection(entityLiving, 3, HazardClass.GAS_MONOXIDE)) ArmorUtil.damageGasMaskFilter(entityLiving, 1); else entityLiving.attackEntityFrom(ModDamageSource.monoxide, 1); } @Override public ForgeDirection getFirstDirection(World world, int x, int y, int z) { return ForgeDirection.DOWN; } @Override public ForgeDirection getSecondDirection(World world, int x, int y, int z) { return this.randomHorizontal(world); } @Override public void updateTick(World world, int x, int y, int z, Random rand) { if(!world.isRemote && rand.nextInt(100) == 0) { world.setBlockToAir(x, y, z); return; } super.updateTick(world, x, y, z, rand); } }