public Materials(Random random) { IWoodType woodType; boolean fireproof; if (ModuleHelper.isEnabled(ForestryModuleUids.ARBORICULTURE)) { woodType = EnumForestryWoodType.getRandom(random); fireproof = random.nextInt(4) == 0; } else { woodType = EnumVanillaWoodType.getRandom(random); fireproof = false; } IWoodAccess woodAccess = TreeManager.woodAccess; this.logs = woodAccess.getBlock(woodType, WoodBlockKind.LOG, fireproof).withProperty(BlockLog.LOG_AXIS, BlockLog.EnumAxis.X); this.planks = woodAccess.getBlock(woodType, WoodBlockKind.PLANKS, fireproof); this.slabs = woodAccess.getBlock(woodType, WoodBlockKind.SLAB, fireproof); this.stairs = woodAccess.getBlock(woodType, WoodBlockKind.STAIRS, fireproof); this.fence = woodAccess.getBlock(woodType, WoodBlockKind.FENCE, fireproof); this.door = woodAccess.getBlock(woodType, WoodBlockKind.DOOR, false); this.fenceGate = woodAccess.getBlock(woodType, WoodBlockKind.FENCE_GATE, fireproof); } }
@Override public ItemStack getWoodStack() { return TreeManager.woodAccess.getStack(type, WoodBlockKind.LOG, false); } }
@SubscribeEvent @SideOnly(Side.CLIENT) public void registerSprites(TextureStitchEvent.Pre event) { TextureLeaves.registerAllSprites(); WoodTextureManager.parseFile(); for (IAlleleFruit alleleFruit : AlleleFruits.getFruitAlleles()) { alleleFruit.getProvider().registerSprites(); } List<ResourceLocation> textures = new ArrayList<>(); for (IWoodType type : TreeManager.woodAccess.getRegisteredWoodTypes()) { textures.add(new ResourceLocation(type.getHeartTexture())); textures.add(new ResourceLocation(type.getBarkTexture())); textures.add(new ResourceLocation(type.getDoorLowerTexture())); textures.add(new ResourceLocation(type.getDoorUpperTexture())); textures.add(new ResourceLocation(type.getPlankTexture())); for (WoodBlockKind kind : WoodBlockKind.values()) { for (Entry<String, String> loc : WoodTextureManager.getTextures(type, kind).entrySet()) { textures.add(new ResourceLocation(loc.getValue())); } } } for (ResourceLocation loc : textures) { TextureManagerForestry.registerSprite(loc); } }
@Override public ItemStack getFence() { return TreeManager.woodAccess.getStack(woodType, WoodBlockKind.FENCE, false); } }
@Override public boolean setLogBlock(ITreeGenome genome, World world, BlockPos pos, EnumFacing facing) { AlleleBoolean fireproofAllele = (AlleleBoolean) genome.getActiveAllele(EnumTreeChromosome.FIREPROOF); boolean fireproof = fireproofAllele.getValue(); IBlockState logBlock = TreeManager.woodAccess.getBlock(woodType, WoodBlockKind.LOG, fireproof); BlockLog.EnumAxis axis = BlockLog.EnumAxis.fromFacingAxis(facing.getAxis()); return world.setBlockState(pos, logBlock.withProperty(BlockLog.LOG_AXIS, axis)); }
@Override public ItemStack getWoodStack() { return TreeManager.woodAccess.getStack(woodType, WoodBlockKind.LOG, false); }
@Override public boolean setLogBlock(ITreeGenome genome, World world, BlockPos pos, EnumFacing facing) { AlleleBoolean fireproofAllele = (AlleleBoolean) genome.getActiveAllele(EnumTreeChromosome.FIREPROOF); boolean fireproof = fireproofAllele.getValue(); IBlockState logBlock = TreeManager.woodAccess.getBlock(woodType, WoodBlockKind.LOG, fireproof); BlockLog.EnumAxis axis = BlockLog.EnumAxis.fromFacingAxis(facing.getAxis()); if (logBlock.getBlock() instanceof BlockLog) { logBlock = logBlock.withProperty(BlockLog.LOG_AXIS, axis); } return world.setBlockState(pos, logBlock); }
@Override public ItemStack getStack(boolean fireproof) { return TreeManager.woodAccess.getStack(woodType, WoodBlockKind.PLANKS, fireproof); } }
@Override public ItemStack getFence() { return TreeManager.woodAccess.getStack(woodType, WoodBlockKind.FENCE, false); } }
@Override public ItemStack getWoodStack() { return TreeManager.woodAccess.getStack(woodType, WoodBlockKind.LOG, false); }
@Override public ItemStack getStack(boolean fireproof) { return TreeManager.woodAccess.getStack(woodType, WoodBlockKind.PLANKS, fireproof); }
@Override public ItemStack getStack(boolean fireproof) { return TreeManager.woodAccess.getStack(woodType, WoodBlockKind.PLANKS, fireproof); }
@Override public void getSubBlocks(CreativeTabs tab, NonNullList<ItemStack> list) { list.add(TreeManager.woodAccess.getStack(woodType, getBlockKind(), fireproof)); }
private Item getItem() { return TreeManager.woodAccess.getStack(woodType, getBlockKind(), false).getItem(); } }
public static ItemStack getGate(final IPlankType plank) { if (plank == VanillaPlanks.OAK) { return new ItemStack(Blocks.OAK_FENCE_GATE); } return TreeManager.woodAccess.getStack(plank.getWoodType(), WoodBlockKind.FENCE_GATE, false); }
private Item getItem() { return TreeManager.woodAccess.getStack(woodType, getBlockKind(), false).getItem(); }
private void addSqueezer(final IWoodType log, final ILiquidDefinition liquid, final int amount, final float pulpChance) { final FluidStack liquidStack = liquid.get(amount); ItemStack logStack = TreeManager.woodAccess.getStack(log, WoodBlockKind.LOG, false); RecipeManagers.squeezerManager.addRecipe(10, logStack, liquidStack, Mods.Forestry.stack("wood_pulp"), (int) (100.0f * pulpChance)); }
@Override public void getSubBlocks(CreativeTabs tab, NonNullList<ItemStack> list) { for (T woodType : getVariant().getAllowedValues()) { list.add(TreeManager.woodAccess.getStack(woodType, getBlockKind(), fireproof)); } }
@Override public void getSubBlocks(CreativeTabs tab, NonNullList<ItemStack> list) { for (T woodType : getVariant().getAllowedValues()) { list.add(TreeManager.woodAccess.getStack(woodType, getBlockKind(), fireproof)); } }
@Override public void getSubBlocks(CreativeTabs tab, NonNullList<ItemStack> list) { for (T woodType : getVariant().getAllowedValues()) { list.add(TreeManager.woodAccess.getStack(woodType, getBlockKind(), fireproof)); } }