Advertisement
Guest User

Untitled

a guest
Apr 3rd, 2020
483
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 16.81 KB | None | 0 0
  1. package com.PlanetCore.blocks;
  2.  
  3. import com.PlanetCore.init.ModBlocks;
  4. import com.PlanetCore.init.ModItems;
  5. import com.PlanetCore.util.IMetaName;
  6. import net.minecraft.block.Block;
  7. import net.minecraft.block.SoundType;
  8. import net.minecraft.block.material.Material;
  9. import net.minecraft.block.properties.IProperty;
  10. import net.minecraft.block.properties.PropertyEnum;
  11. import net.minecraft.block.state.BlockStateContainer;
  12. import net.minecraft.block.state.IBlockState;
  13. import net.minecraft.creativetab.CreativeTabs;
  14. import net.minecraft.enchantment.EnchantmentHelper;
  15. import net.minecraft.entity.Entity;
  16. import net.minecraft.entity.EntityLivingBase;
  17. import net.minecraft.entity.item.EntityXPOrb;
  18. import net.minecraft.entity.player.EntityPlayer;
  19. import net.minecraft.entity.player.EntityPlayerMP;
  20. import net.minecraft.init.Blocks;
  21. import net.minecraft.init.Items;
  22. import net.minecraft.item.Item;
  23. import net.minecraft.item.ItemStack;
  24. import net.minecraft.util.*;
  25. import net.minecraft.util.math.*;
  26. import net.minecraft.world.IBlockAccess;
  27. import net.minecraft.world.World;
  28. import net.minecraftforge.fml.relauncher.Side;
  29. import net.minecraftforge.fml.relauncher.SideOnly;
  30.  
  31. import java.util.HashSet;
  32. import java.util.List;
  33. import java.util.Random;
  34.  
  35. public class Corerock extends BlockBase implements IMetaName {
  36.  
  37.     public static final PropertyEnum<Corerock.EnumType> VARIANT = PropertyEnum.<Corerock.EnumType>create("variant", Corerock.EnumType.class);
  38.  
  39.     public Corerock(String name, Material material) {
  40.         super(name, material);
  41.  
  42.         setSoundType(SoundType.METAL);
  43.         setHardness(-1.0F);
  44.         setResistance(100.0F);
  45.         setHarvestLevel("pickaxe", 3);
  46.         setLightLevel(1.0F);
  47.         setTickRandomly(true);
  48.  
  49.     }
  50.  
  51.     @Override
  52.     public int damageDropped(IBlockState state)
  53.     {
  54.         return ((Corerock.EnumType)state.getValue(VARIANT)).getMeta();
  55.     }
  56.  
  57.     @Override
  58.     public void getSubBlocks(CreativeTabs itemIn, NonNullList<ItemStack> items) {
  59.         for (Corerock.EnumType corerock$enumtype : Corerock.EnumType.values()) {
  60.             items.add(new ItemStack(this, 1, corerock$enumtype.getMeta()));
  61.         }
  62.     }
  63.  
  64.     @Override
  65.     public IBlockState getStateFromMeta(int meta)
  66.     {
  67.         return this.getDefaultState().withProperty(VARIANT, Corerock.EnumType.byMetadata(meta));
  68.     }
  69.  
  70.     @Override
  71.     public int getMetaFromState(IBlockState state)
  72.     {
  73.         return ((Corerock.EnumType)state.getValue(VARIANT)).getMeta();
  74.     }
  75.  
  76.     @Override
  77.     public ItemStack getPickBlock(IBlockState state, RayTraceResult target, World world, BlockPos pos, EntityPlayer player) {
  78.         return new ItemStack(Item.getItemFromBlock(this),1,(int)(getMetaFromState(world.getBlockState(pos))));
  79.     }
  80.  
  81.  
  82.     @Override
  83.     protected BlockStateContainer createBlockState()
  84.     {
  85.         return new BlockStateContainer(this, new IProperty[] {VARIANT});
  86.     }
  87.  
  88.  
  89.     public static enum EnumType implements IStringSerializable
  90.     {
  91.         CORE(0, "corestone"),
  92.         INNERCORE(1, "innercorestone"),
  93.         CENTERCORE(2, "centercorestone");
  94.  
  95.         private static final Corerock.EnumType[] META_LOOKUP = new Corerock.EnumType[values().length];
  96.         private final int meta;
  97.         private final String name, unlocalizedName;
  98.  
  99.         private EnumType(int meta, String name)
  100.         {
  101.             this(meta, name, name);
  102.         }
  103.  
  104.         private EnumType(int meta, String name, String unlocalizedName) {
  105.             this.meta = meta;
  106.             this.name = name;
  107.             this.unlocalizedName = unlocalizedName;
  108.         }
  109.  
  110.         @Override
  111.         public String getName() {
  112.             return this.name;
  113.         }
  114.  
  115.         public int getMeta()
  116.         {
  117.             return this.meta;
  118.         }
  119.  
  120.         public String getUnlocalizedName()
  121.         {
  122.             return this.unlocalizedName;
  123.         }
  124.  
  125.         @Override
  126.         public String toString()
  127.         {
  128.             return this.name;
  129.         }
  130.  
  131.         public static Corerock.EnumType byMetadata(int meta)
  132.         {
  133.             return META_LOOKUP[meta];
  134.         }
  135.  
  136.         static {
  137.             for(Corerock.EnumType corerock$enumtype : values())
  138.             {
  139.                 META_LOOKUP[corerock$enumtype.getMeta()] = corerock$enumtype;
  140.             }
  141.         }
  142.  
  143.     }
  144.  
  145.     @Override
  146.     public String getSpecialName(ItemStack stack)
  147.     {
  148.         return Corerock.EnumType.values()[stack.getItemDamage()].getName();
  149.     }
  150.  
  151.     @Override
  152.     public boolean removedByPlayer(IBlockState state, World world, BlockPos pos, EntityPlayer entity, boolean willHarvest) {
  153.         int x = pos.getX();
  154.         int y = pos.getY();
  155.         int z = pos.getZ();
  156.         if (!world.isRemote) {
  157.             for (int i = 0; i < 4; i++) {
  158.                 world.spawnEntity(new EntityXPOrb(world, x, y, z, 1));
  159.             }
  160.         }
  161.         return super.removedByPlayer(state, world, pos, entity, willHarvest);
  162.     }
  163.  
  164.     @Override
  165.     public IBlockState getStateForPlacement(World worldIn, BlockPos pos, EnumFacing blockFaceClickedOn, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer) {
  166.         return this.getDefaultState().withProperty(VARIANT, Corerock.EnumType.byMetadata(meta));
  167.     }
  168. }
  169.  
  170.  
  171.  
  172.     /*@Override
  173.     public Item getItemDropped(IBlockState state, Random random, int l)
  174.     {
  175.         Block block = this;
  176.  
  177.         if (block == ModBlocks.CORESTONE_ONYX || block == ModBlocks.INNERCORESTONE_ONYX || block == ModBlocks.CENTERCORESTONE_ONYX)
  178.         {return new ItemStack(ModItems.ONYX, 1, 0).getItem();}
  179.         else if (block == ModBlocks.CORESTONE_AMAZONITE || block == ModBlocks.INNERCORESTONE_AMAZONITE || block == ModBlocks.CENTERCORESTONE_AMAZONITE)
  180.         {return new ItemStack(ModItems.AMAZONITE, 1, 0).getItem();}
  181.         else if (block == ModBlocks.CORESTONE_JADE || block == ModBlocks.INNERCORESTONE_JADE || block == ModBlocks.CENTERCORESTONE_JADE)
  182.         {return new ItemStack(ModItems.JADE, 1, 0).getItem();}
  183.         else if (block == ModBlocks.CORESTONE_DIAMOND || block == ModBlocks.INNERCORESTONE_DIAMOND || block == ModBlocks.CENTERCORESTONE_DIAMOND)
  184.         {return new ItemStack(ModItems.DIAMOND, 1, 0).getItem();}
  185.         else if (block == ModBlocks.CORESTONE_TOPAZ || block == ModBlocks.INNERCORESTONE_TOPAZ || block == ModBlocks.CENTERCORESTONE_TOPAZ)
  186.         {return new ItemStack(ModItems.TOPAZ, 1, 0).getItem();}
  187.         else if (block == ModBlocks.CORESTONE_RUBY || block == ModBlocks.INNERCORESTONE_RUBY || block == ModBlocks.CENTERCORESTONE_RUBY)
  188.         {return new ItemStack(ModItems.RUBY, 1, 0).getItem();}
  189.         else if (block == ModBlocks.CORESTONE_SAPPHIRE || block == ModBlocks.INNERCORESTONE_SAPPHIRE || block == ModBlocks.CENTERCORESTONE_SAPPHIRE)
  190.         {return new ItemStack(ModItems.SAPPHIRE, 1, 0).getItem();}
  191.         else if (block == ModBlocks.CORESTONE_EMERALD || block == ModBlocks.INNERCORESTONE_EMERALD || block == ModBlocks.CENTERCORESTONE_EMERALD)
  192.         {return new ItemStack(Items.EMERALD, 1, 0).getItem();}
  193.         else if (block == ModBlocks.CORESTONE_LAPIS || block == ModBlocks.INNERCORESTONE_LAPIS || block == ModBlocks.CENTERCORESTONE_LAPIS)
  194.         {return Items.DYE;}
  195.         else if (block == ModBlocks.CORESTONE_REDSTONE || block == ModBlocks.INNERCORESTONE_REDSTONE || block == ModBlocks.CENTERCORESTONE_REDSTONE)
  196.         {return new ItemStack(Items.REDSTONE, 1, 0).getItem();}
  197.         else if (block == ModBlocks.CORESTONE_COAL || block == ModBlocks.INNERCORESTONE_COAL || block == ModBlocks.CENTERCORESTONE_COAL)
  198.         {return new ItemStack(Items.COAL, 1, 0).getItem();}
  199.         else if (block == ModBlocks.CORESTONE_SULFUR || block == ModBlocks.INNERCORESTONE_SULFUR || block == ModBlocks.CENTERCORESTONE_SULFUR)
  200.         {return new ItemStack(ModItems.SULFUR, 1, 0).getItem();}
  201.         else
  202.         {return new ItemStack(block, 1, 0).getItem();}
  203.     }
  204.  
  205.  
  206.  
  207.     @Override
  208.     public int quantityDropped(Random random) {
  209.         Block block = this;
  210.  
  211.         if (block == ModBlocks.CORESTONE_REDSTONE)
  212.         {
  213.             return 12 + random.nextInt(10);
  214.         }
  215.         else if (block == ModBlocks.INNERCORESTONE_REDSTONE)
  216.         {
  217.             return 15 + random.nextInt(12);
  218.         }
  219.         else if (block == ModBlocks.CENTERCORESTONE_REDSTONE)
  220.         {
  221.             return 18 + random.nextInt(14);
  222.         }
  223.         else if (block == ModBlocks.CORESTONE_COAL || block == ModBlocks.CORESTONE_SULFUR)
  224.         {
  225.             return 5;
  226.         }
  227.         else if (block == ModBlocks.INNERCORESTONE_COAL || block == ModBlocks.INNERCORESTONE_SULFUR)
  228.         {
  229.             return 7;
  230.         }
  231.         else if (block == ModBlocks.CENTERCORESTONE_COAL || block == ModBlocks.CENTERCORESTONE_SULFUR)
  232.         {
  233.             return 9;
  234.         }
  235.         else
  236.         {
  237.             return 1;
  238.         }
  239.  
  240.     }
  241.  
  242.  
  243.  
  244.     @Override
  245.     public int damageDropped(IBlockState state) {
  246.         Block block = this;
  247.         if (block == ModBlocks.CORESTONE_LAPIS || block == ModBlocks.INNERCORESTONE_LAPIS || block == ModBlocks.CENTERCORESTONE_LAPIS) {
  248.             return 4;
  249.         }
  250.         else
  251.         {
  252.             return getMetaFromState(state);
  253.         }
  254.     }
  255.  
  256.  
  257.  
  258.     public static void burnEntities(World world, int x, int y, int z, int radius) {
  259.         float f = radius;
  260.         HashSet hashset = new HashSet();
  261.         int i;
  262.         int j;
  263.         int k;
  264.         double d5;
  265.         double d6;
  266.         double d7;
  267.         double wat = radius/** 2 */
  268.                 ;
  269.                 /*
  270.         boolean isOccupied = false;
  271.  
  272.         // bombStartStrength *= 2.0F;
  273.         i = MathHelper.floor(x - wat - 1.0D);
  274.         j = MathHelper.floor(x + wat + 1.0D);
  275.         k = MathHelper.floor(y - wat - 1.0D);
  276.         int i2 = MathHelper.floor(y + wat + 1.0D);
  277.         int l = MathHelper.floor(z - wat - 1.0D);
  278.         int j2 = MathHelper.floor(z + wat + 1.0D);
  279.         AxisAlignedBB bb = new AxisAlignedBB(i,k,l,j,i2,j2);
  280.         List list = world.getEntitiesWithinAABBExcludingEntity(null, bb);
  281.         Vec3d vec3 = new Vec3d(x, y, z);
  282.  
  283.         for (int i1 = 0; i1 < list.size(); ++i1) {
  284.             Entity entity = (Entity) list.get(i1);
  285.             double d4 = entity.getDistance(x, y, z) / radius;
  286.  
  287.             if (d4 <= 1.0D) {
  288.                 d5 = entity.posX - x;
  289.                 d6 = entity.posY + entity.getEyeHeight() - y;
  290.                 d7 = entity.posZ - z;
  291.                 BlockPos pos1 = new BlockPos(x,y,z);
  292.                 BlockPos pos2 = new BlockPos(entity.posX,entity.posY + entity.getEyeHeight(),entity.posZ);
  293.                 double d9 = MathHelper.sqrt(d5 * d5 + d6 * d6 + d7 * d7);
  294.  
  295.                 if (d9 < wat) {
  296.                     d5 /= d9;
  297.                     d6 /= d9;
  298.                     d7 /= d9;
  299.                     double d11 = (1.0D - d4);// * d10;
  300.                     if (!(entity instanceof EntityPlayerMP) || (entity instanceof EntityPlayerMP
  301.                             && !((EntityPlayerMP) entity).isCreative())) {
  302.                         entity.attackEntityFrom(DamageSource.ON_FIRE, 6);
  303.                         entity.setFire(10);
  304.                     }
  305.                 }
  306.             }
  307.         }
  308.         radius = (int) f;
  309.     }
  310.  
  311.  
  312.  
  313.  
  314.     public void onEntityWalk(World worldIn, BlockPos pos, Entity entityIn)
  315.     {
  316.         Block block = this;
  317.         if (!entityIn.isImmuneToFire() && entityIn instanceof EntityLivingBase && !EnchantmentHelper.hasFrostWalkerEnchantment((EntityLivingBase)entityIn))
  318.         {
  319.             if (block == ModBlocks.CORESTONE)
  320.             {
  321.                 entityIn.attackEntityFrom(DamageSource.HOT_FLOOR, 20.0F);
  322.             }
  323.             else if (block == ModBlocks.INNERCORESTONE)
  324.             {
  325.                 entityIn.attackEntityFrom(DamageSource.HOT_FLOOR, 40.0F);
  326.             }
  327.             else if (block == ModBlocks.CENTERCORESTONE)
  328.             {
  329.                 entityIn.attackEntityFrom(DamageSource.HOT_FLOOR, 80.0F);
  330.             }
  331.         }
  332.  
  333.         super.onEntityWalk(worldIn, pos, entityIn);
  334.     }
  335.  
  336.     @SideOnly(Side.CLIENT)
  337.     public int getPackedLightmapCoords(IBlockState state, IBlockAccess source, BlockPos pos)
  338.     {
  339.         return 15728880;
  340.     }
  341.  
  342.     private void particleEffects(IBlockState stateIn, World worldIn, BlockPos pos, Random rand)
  343.     {
  344.         int X = pos.getX();
  345.         int Y = pos.getY();
  346.         int Z = pos.getZ();
  347.         if((worldIn.isRaining() && this == ModBlocks.CORESTONE) || (worldIn.isRaining() && this == ModBlocks.MAGMA_CORESTONE)) {
  348.  
  349.             worldIn.spawnParticle(EnumParticleTypes.SMOKE_NORMAL, X, Y+1, Z, 0, 0, 0);
  350.         }
  351.     }
  352.  
  353.     public void thermalEffects(World worldIn, BlockPos pos, IBlockState state)
  354.     {
  355.         int X = pos.getX();
  356.         int Y = pos.getY();
  357.         int Z = pos.getZ();
  358.         Random rand = new Random();
  359.         burnEntities(worldIn,X,Y,Z, 8);
  360.  
  361.         if (this != ModBlocks.COLD_CORESTONE)
  362.         {
  363.             for(int x = -2; x < 3; x++) {
  364.                 for(int y = -2; y < 3; y++) {
  365.                     for(int z = -2; z < 3; z++) {
  366.                         IBlockState state2 = worldIn.getBlockState(pos.add(x, y, z));
  367.                         Block block = state2.getBlock();
  368.                         if(state2.getMaterial()==Material.ROCK || state2.getMaterial()==Material.GROUND || state2.getMaterial()==Material.GRASS
  369.                                 && !(block instanceof Corerock) && block!=Blocks.BEDROCK && block!=ModBlocks.COLD_CORESTONE)
  370.                         {
  371.                             worldIn.setBlockState(new BlockPos(x, y, z),Blocks.LAVA.getDefaultState());
  372.                         }
  373.                         if(state2.getMaterial()==Material.SNOW)
  374.                         {
  375.                             worldIn.setBlockToAir(new BlockPos(x, y, z));
  376.                         }
  377.                         if(state2.getMaterial()==Material.WATER || state2.getMaterial()==Material.ICE || state2.getMaterial()==Material.CRAFTED_SNOW)
  378.                         {
  379.  
  380.                             if (this == ModBlocks.CORESTONE)
  381.                             {
  382.                                 worldIn.setBlockState(new BlockPos(x, y, z), ModBlocks.MAGMA_CORESTONE.getDefaultState());
  383.                                 worldIn.createExplosion(null, X+x, Y+y, Z+z, 8, false);
  384.                             }
  385.                             if (this == ModBlocks.MAGMA_CORESTONE)
  386.                             {
  387.                                 worldIn.setBlockState(new BlockPos(x, y, z), ModBlocks.COLD_CORESTONE.getDefaultState());
  388.                                 worldIn.createExplosion(null, X+x, Y+y, Z+z, 4, false);
  389.                             }
  390.                             worldIn.setBlockToAir(pos.add(x, y, z));
  391.                         }
  392.                         if(state2.getBlock().getFlammability(worldIn, pos, null)>0 || state2.getMaterial()==Material.WOOD || state2.getMaterial()==Material.CLOTH || state2.getMaterial()==Material.PLANTS || state2.getMaterial()==Material.LEAVES)
  393.                         {
  394.                             worldIn.setBlockState(pos.add(x, y, z), Blocks.FIRE.getDefaultState());
  395.                         }
  396.                         if(pos.getY()>=-17920 && pos.getY()<=-12700)
  397.                         {
  398.                             if(rand.nextInt(6000) == 0)
  399.                             {
  400.                                 return;
  401.                             }
  402.                             worldIn.setBlockState(pos, ModBlocks.CORE_LAVA_FLUID.getDefaultState());
  403.                         }
  404.                         else if(pos.getY()>-12675 && pos.getY()<=-1000)
  405.                         {
  406.                             if(rand.nextInt(6000) == 0)
  407.                             {
  408.                                 return;
  409.                             }
  410.                             if (this == ModBlocks.CENTERCORESTONE){
  411.                                 worldIn.setBlockState(pos, ModBlocks.INNERCORESTONE.getDefaultState());
  412.                             }
  413.  
  414.                             else if (this == ModBlocks.INNERCORESTONE){
  415.                                 worldIn.setBlockState(pos, ModBlocks.CORESTONE.getDefaultState());
  416.                             }
  417.                         }
  418.                         else if(worldIn.canBlockSeeSky(pos) == true && worldIn.isRaining() == false)
  419.                         {
  420.                             if(rand.nextInt(1200) == 0)
  421.                             {
  422.                                 if (this == ModBlocks.CENTERCORESTONE)
  423.                                     worldIn.setBlockState(pos, ModBlocks.CORESTONE.getDefaultState());
  424.                                 else if (this == ModBlocks.INNERCORESTONE)
  425.                                     worldIn.setBlockState(pos, ModBlocks.CORESTONE.getDefaultState());
  426.                                 else if (this == ModBlocks.CORESTONE)
  427.                                     worldIn.setBlockState(pos, ModBlocks.MAGMA_CORESTONE.getDefaultState());
  428.                                 else worldIn.setBlockState(pos, ModBlocks.COLD_CORESTONE.getDefaultState());
  429.                             }
  430.                         }
  431.                         else if(worldIn.canBlockSeeSky(pos) == false)
  432.                         {
  433.                             if(rand.nextInt(2400) == 0)
  434.                             {
  435.                                 if (this == ModBlocks.CENTERCORESTONE)
  436.                                     worldIn.setBlockState(pos, ModBlocks.CORESTONE.getDefaultState());
  437.                                 else if (this == ModBlocks.INNERCORESTONE)
  438.                                     worldIn.setBlockState(pos, ModBlocks.CORESTONE.getDefaultState());
  439.                                 else if (this == ModBlocks.CORESTONE)
  440.                                     worldIn.setBlockState(pos, ModBlocks.MAGMA_CORESTONE.getDefaultState());
  441.                                 else worldIn.setBlockState(pos, ModBlocks.COLD_CORESTONE.getDefaultState());
  442.                             }
  443.                         }
  444.                         else if(worldIn.canBlockSeeSky(pos) == true && worldIn.isRaining() == true)
  445.                         {
  446.                             if(rand.nextInt(200) == 0)
  447.                             {
  448.                                 if (this == ModBlocks.CENTERCORESTONE)
  449.                                     worldIn.setBlockState(pos, ModBlocks.CORESTONE.getDefaultState());
  450.                                 else if (this == ModBlocks.INNERCORESTONE)
  451.                                     worldIn.setBlockState(pos, ModBlocks.CORESTONE.getDefaultState());
  452.                                 else if (this == ModBlocks.CORESTONE)
  453.                                     worldIn.setBlockState(pos, ModBlocks.MAGMA_CORESTONE.getDefaultState());
  454.                                 else worldIn.setBlockState(pos, ModBlocks.COLD_CORESTONE.getDefaultState());
  455.                             }
  456.                         }
  457.                     }
  458.                 }
  459.             }
  460.         }
  461.  
  462.     }
  463.     @Override
  464.     public void onBlockAdded(World worldIn, BlockPos pos, IBlockState state)
  465.     {
  466.         thermalEffects(worldIn, pos, state);
  467.     }
  468.  
  469.     @Override
  470.     public void neighborChanged(IBlockState state, World worldIn, BlockPos pos, Block blockIn, BlockPos fromPos)
  471.     {
  472.         super.neighborChanged(state, worldIn, pos, blockIn, fromPos);
  473.         //thermalEffects(worldIn, pos, state);
  474.     }
  475.  
  476.     @Override
  477.     public void updateTick(World worldIn, BlockPos pos, IBlockState state, Random rand)
  478.     {
  479.         thermalEffects(worldIn, pos, state);
  480.         /*BlockPos blockpos = pos.up();
  481.         IBlockState iblockstate = worldIn.getBlockState(blockpos);
  482.  
  483.         if (iblockstate.getBlock() == Blocks.WATER || iblockstate.getBlock() == Blocks.FLOWING_WATER)
  484.         {
  485.             worldIn.setBlockToAir(blockpos);
  486.             worldIn.playSound((EntityPlayer)null, pos, SoundEvents.BLOCK_FIRE_EXTINGUISH, SoundCategory.BLOCKS, 0.5F, 2.6F + (worldIn.rand.nextFloat() - worldIn.rand.nextFloat()) * 0.8F);
  487.  
  488.             if (worldIn instanceof WorldServer)
  489.             {
  490.                 ((WorldServer)worldIn).spawnParticle(EnumParticleTypes.SMOKE_LARGE, (double)blockpos.getX() + 0.5D, (double)blockpos.getY() + 0.25D, (double)blockpos.getZ() + 0.5D, 8, 0.5D, 0.25D, 0.5D, 0.0D);
  491.             }
  492.         }
  493.     }
  494.     @SideOnly(Side.CLIENT)
  495.     @Override
  496.     public void randomDisplayTick(IBlockState stateIn, World worldIn, BlockPos pos, Random rand) {
  497.         worldIn.scheduleUpdate(pos, this, this.tickRate(worldIn));
  498.         particleEffects(stateIn, worldIn, pos, rand);
  499.     }
  500.  
  501.  
  502.  
  503.     public boolean canEntitySpawn(IBlockState state, Entity entityIn)
  504.     {
  505.         return entityIn.isImmuneToFire();
  506.     }
  507.  
  508. }
  509.  
  510.                  */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement