@SideOnly(Side.CLIENT) private ILeafSpriteProvider getLeafSpriteProvider() { if (species != null) { return species.getLeafSpriteProvider(); } else { IAlleleTreeSpecies oakSpecies = TreeDefinition.Oak.getIndividual().getGenome().getPrimary(); return oakSpecies.getLeafSpriteProvider(); } }
@Override @SideOnly(Side.CLIENT) public int colorMultiplier(IBlockState state, @Nullable IBlockAccess worldIn, @Nullable BlockPos pos, int tintIndex) { TreeDefinition treeDefinition = getTreeDefinition(state); if (treeDefinition == null) { treeDefinition = TreeDefinition.Oak; } ITreeGenome genome = treeDefinition.getGenome(); ILeafSpriteProvider spriteProvider = genome.getPrimary().getLeafSpriteProvider(); return spriteProvider.getColor(false); } }
@Override @SideOnly(Side.CLIENT) public int colorMultiplier(IBlockState state, @Nullable IBlockAccess worldIn, @Nullable BlockPos pos, int tintIndex) { ETTreeDefinition treeDefinition = getTreeDefinition(state); if (treeDefinition == null) { treeDefinition = ETTreeDefinition.OrchardApple; } ITreeGenome genome = treeDefinition.getGenome(); ILeafSpriteProvider spriteProvider = genome.getPrimary().getLeafSpriteProvider(); return spriteProvider.getColor(false); } }
@Override @SideOnly(Side.CLIENT) public int colorMultiplier(IBlockState state, @Nullable IBlockAccess worldIn, @Nullable BlockPos pos, int tintIndex) { TreeDefinition treeDefinition = state.getValue(getVariant()); ITreeGenome genome = treeDefinition.getGenome(); if (tintIndex == BlockAbstractLeaves.FRUIT_COLOR_INDEX) { IFruitProvider fruitProvider = genome.getFruitProvider(); return fruitProvider.getDecorativeColor(); } ILeafSpriteProvider spriteProvider = genome.getPrimary().getLeafSpriteProvider(); return spriteProvider.getColor(false); } }
@Override @SideOnly(Side.CLIENT) public int colorMultiplier(IBlockState state, @Nullable IBlockAccess worldIn, @Nullable BlockPos pos, int tintIndex) { ETTreeDefinition treeDefinition = state.getValue(getVariant()); ITreeGenome genome = treeDefinition.getGenome(); if (tintIndex == BlockAbstractLeaves.FOLIAGE_COLOR_INDEX) { return genome.getPrimary().getLeafSpriteProvider().getColor(false); } else { IFruitProvider fruitProvider = genome.getFruitProvider(); return fruitProvider.getDecorativeColor(); } } }
@Override @SideOnly(Side.CLIENT) public int colorMultiplier(IBlockState state, @Nullable IBlockAccess worldIn, @Nullable BlockPos pos, int tintIndex) { PropertyTreeTypeFruit.LeafVariant variant = getLeafVariant(state); TreeDefinition treeDefinition; if (variant != null) { treeDefinition = variant.definition; } else { treeDefinition = TreeDefinition.Oak; } ITreeGenome genome = treeDefinition.getGenome(); if (tintIndex == BlockAbstractLeaves.FRUIT_COLOR_INDEX) { IFruitProvider fruitProvider = genome.getFruitProvider(); return fruitProvider.getDecorativeColor(); } ILeafSpriteProvider spriteProvider = genome.getPrimary().getLeafSpriteProvider(); return spriteProvider.getColor(false); } }
@Override @SideOnly(Side.CLIENT) public int colorMultiplier(IBlockState state, @Nullable IBlockAccess worldIn, @Nullable BlockPos pos, int tintIndex) { PropertyETTypeFruit.LeafVariant variant = getLeafVariant(state); ETTreeDefinition treeDefinition; if (variant != null) { treeDefinition = variant.definition; } else { treeDefinition = ETTreeDefinition.OrchardApple; } ITreeGenome genome = treeDefinition.getGenome(); if (tintIndex == BlockAbstractLeaves.FRUIT_COLOR_INDEX) { IFruitProvider fruitProvider = genome.getFruitProvider(); return fruitProvider.getDecorativeColor(); } ILeafSpriteProvider spriteProvider = genome.getPrimary().getLeafSpriteProvider(); return spriteProvider.getColor(false); } }
private Key createEmptyKey(TextureMap map, boolean fancy) { IAlleleTreeSpecies oakSpecies = TreeDefinition.Oak.getIndividual().getGenome().getPrimary(); ResourceLocation spriteLocation = oakSpecies.getLeafSpriteProvider().getSprite(false, fancy); TextureAtlasSprite sprite = map.getAtlasSprite(spriteLocation.toString()); return new Key(sprite, null, fancy); }
@Override @SideOnly(Side.CLIENT) public int getColorFromItemstack(ItemStack itemStack, int renderPass) { int meta = itemStack.getMetadata(); BlockDecorativeLeaves block = getBlock(); TreeDefinition treeDefinition = block.getTreeType(meta); ITreeGenome genome = treeDefinition.getGenome(); if (renderPass == BlockAbstractLeaves.FRUIT_COLOR_INDEX) { IFruitProvider fruitProvider = genome.getFruitProvider(); return fruitProvider.getDecorativeColor(); } return genome.getPrimary().getLeafSpriteProvider().getColor(false); } }
@Override protected void bakeBlock(BlockDefaultLeaves block, Key key, IModelBaker baker, boolean inventory) { TreeDefinition treeDefinition = key.definition; TextureMap map = Minecraft.getMinecraft().getTextureMapBlocks(); ITreeGenome genome = treeDefinition.getGenome(); IAlleleTreeSpecies species = genome.getPrimary(); ILeafSpriteProvider leafSpriteProvider = species.getLeafSpriteProvider(); ResourceLocation leafSpriteLocation = leafSpriteProvider.getSprite(false, key.fancy); TextureAtlasSprite leafSprite = map.getAtlasSprite(leafSpriteLocation.toString()); // Render the plain leaf block. baker.addBlockModel(null, leafSprite, BlockAbstractLeaves.FOLIAGE_COLOR_INDEX); // Set the particle sprite baker.setParticleSprite(leafSprite); }
@Override protected void bakeBlock(BlockETDecorativeLeaves block, ETTreeDefinition treeDefinition, IModelBaker baker, boolean inventory) { TextureMap map = Minecraft.getMinecraft().getTextureMapBlocks(); ITreeGenome genome = treeDefinition.getGenome(); IAlleleTreeSpecies species = genome.getPrimary(); ILeafSpriteProvider leafSpriteProvider = species.getLeafSpriteProvider(); ResourceLocation leafSpriteLocation = leafSpriteProvider.getSprite(false, Proxies.render.fancyGraphicsEnabled()); TextureAtlasSprite leafSprite = map.getAtlasSprite(leafSpriteLocation.toString()); // Render the plain leaf block. baker.addBlockModel(null, leafSprite, BlockAbstractLeaves.FOLIAGE_COLOR_INDEX); // Set the particle sprite baker.setParticleSprite(leafSprite); }
@Override @SideOnly(Side.CLIENT) public int getColorFromItemstack(ItemStack itemStack, int renderPass) { int meta = itemStack.getMetadata(); BlockETDecorativeLeaves block = getBlock(); ETTreeDefinition treeDefinition = block.getTreeType(meta); if (treeDefinition == null) { return ModuleArboriculture.proxy.getFoliageColorBasic(); } ITreeGenome genome = treeDefinition.getGenome(); if (renderPass == 0) { return genome.getPrimary().getLeafSpriteProvider().getColor(false); } else { IFruitProvider fruitProvider = genome.getFruitProvider(); return fruitProvider.getDecorativeColor(); } } }
@Override protected void bakeBlock(BlockDecorativeLeaves block, Key key, IModelBaker baker, boolean inventory) { TreeDefinition treeDefinition = key.definition; TextureMap map = Minecraft.getMinecraft().getTextureMapBlocks(); ITreeGenome genome = treeDefinition.getGenome(); IAlleleTreeSpecies species = genome.getPrimary(); ILeafSpriteProvider leafSpriteProvider = species.getLeafSpriteProvider(); ResourceLocation leafSpriteLocation = leafSpriteProvider.getSprite(false, key.fancy); TextureAtlasSprite leafSprite = map.getAtlasSprite(leafSpriteLocation.toString()); // Render the plain leaf block. baker.addBlockModel(null, leafSprite, BlockAbstractLeaves.FOLIAGE_COLOR_INDEX); // Render overlay for fruit leaves. ResourceLocation fruitSpriteLocation = genome.getFruitProvider().getDecorativeSprite(); if (fruitSpriteLocation != null) { TextureAtlasSprite fruitSprite = map.getAtlasSprite(fruitSpriteLocation.toString()); baker.addBlockModel(null, fruitSprite, BlockAbstractLeaves.FRUIT_COLOR_INDEX); } // Set the particle sprite baker.setParticleSprite(leafSprite); }
@Override protected void bakeBlock(BlockDefaultLeavesFruit block, Key key, IModelBaker baker, boolean inventory) { TreeDefinition treeDefinition = key.definition; TextureMap map = Minecraft.getMinecraft().getTextureMapBlocks(); ITreeGenome genome = treeDefinition.getGenome(); IAlleleTreeSpecies species = genome.getPrimary(); ILeafSpriteProvider leafSpriteProvider = species.getLeafSpriteProvider(); ResourceLocation leafSpriteLocation = leafSpriteProvider.getSprite(false, key.fancy); TextureAtlasSprite leafSprite = map.getAtlasSprite(leafSpriteLocation.toString()); // Render the plain leaf block. baker.addBlockModel(null, leafSprite, BlockAbstractLeaves.FOLIAGE_COLOR_INDEX); // Render overlay for fruit leaves. ResourceLocation fruitSpriteLocation = genome.getFruitProvider().getDecorativeSprite(); if (fruitSpriteLocation != null) { TextureAtlasSprite fruitSprite = map.getAtlasSprite(fruitSpriteLocation.toString()); baker.addBlockModel(null, fruitSprite, BlockAbstractLeaves.FRUIT_COLOR_INDEX); } // Set the particle sprite baker.setParticleSprite(leafSprite); }
@Override protected void bakeBlock(BlockETDefaultLeavesFruit block, Key key, IModelBaker baker, boolean inventory) { ETTreeDefinition treeDefinition = key.definition; TextureMap map = Minecraft.getMinecraft().getTextureMapBlocks(); ITreeGenome genome = treeDefinition.getGenome(); IAlleleTreeSpecies species = genome.getPrimary(); ILeafSpriteProvider leafSpriteProvider = species.getLeafSpriteProvider(); ResourceLocation leafSpriteLocation = leafSpriteProvider.getSprite(false, key.fancy); TextureAtlasSprite leafSprite = map.getAtlasSprite(leafSpriteLocation.toString()); // Render the plain leaf block. baker.addBlockModel(null, leafSprite, BlockAbstractLeaves.FOLIAGE_COLOR_INDEX); // Render overlay for fruit leaves. ResourceLocation fruitSpriteLocation = genome.getFruitProvider().getDecorativeSprite(); if (fruitSpriteLocation != null) { TextureAtlasSprite fruitSprite = map.getAtlasSprite(fruitSpriteLocation.toString()); baker.addBlockModel(null, fruitSprite, BlockAbstractLeaves.FRUIT_COLOR_INDEX); } // Set the particle sprite baker.setParticleSprite(leafSprite); }
@Override protected void bakeBlock(BlockETDefaultLeaves block, ETTreeDefinition treeDefinition, IModelBaker baker, boolean inventory) { TextureMap map = Minecraft.getMinecraft().getTextureMapBlocks(); ITreeGenome genome = treeDefinition.getGenome(); IAlleleTreeSpecies species = genome.getPrimary(); ILeafSpriteProvider leafSpriteProvider = species.getLeafSpriteProvider(); ResourceLocation leafSpriteLocation = leafSpriteProvider.getSprite(false, Proxies.render.fancyGraphicsEnabled()); TextureAtlasSprite leafSprite = map.getAtlasSprite(leafSpriteLocation.toString()); // Render the plain leaf block. baker.addBlockModel(null, leafSprite, BlockAbstractLeaves.FOLIAGE_COLOR_INDEX); // Render overlay for fruit leaves. ResourceLocation fruitSpriteLocation = genome.getFruitProvider().getDecorativeSprite(); if (fruitSpriteLocation != null) { TextureAtlasSprite fruitSprite = map.getAtlasSprite(fruitSpriteLocation.toString()); baker.addBlockModel(null, fruitSprite, BlockAbstractLeaves.FRUIT_COLOR_INDEX); } // Set the particle sprite baker.setParticleSprite(leafSprite); }
World world = minecraft.world; TextureMap map = minecraft.getTextureMapBlocks(); ILeafSpriteProvider spriteProvider = treeSpecies.getLeafSpriteProvider(); TextureAtlasSprite leaf = map.getAtlasSprite(spriteProvider.getSprite(false, false).toString()); int leafColour = spriteProvider.getColor(false);