From 353582ad3bdd4b59ce2280fa2ca556dd4cb48840 Mon Sep 17 00:00:00 2001 From: Cheeserolls Date: Fri, 3 Apr 2015 01:29:39 +0100 Subject: [PATCH] Add BOP leaves --- .../biomesoplenty/api/block/BOPBlocks.java | 25 ++++ .../common/block/BlockBOPLeaves.java | 134 ++++++++++++++++++ .../biomesoplenty/common/init/ModBlocks.java | 36 ++++- .../java/biomesoplenty/core/ClientProxy.java | 10 ++ .../blockstates/bamboo_leaves.json | 8 ++ .../blockstates/dark_leaves.json | 8 ++ .../blockstates/dead_leaves.json | 8 ++ .../blockstates/ethereal_leaves.json | 8 ++ .../biomesoplenty/blockstates/fir_leaves.json | 8 ++ .../blockstates/flowering_leaves.json | 8 ++ .../blockstates/hellbark_leaves.json | 8 ++ .../blockstates/jacaranda_leaves.json | 8 ++ .../blockstates/magic_leaves.json | 8 ++ .../blockstates/mahogany_leaves.json | 8 ++ .../blockstates/mangrove_leaves.json | 8 ++ .../blockstates/maple_leaves.json | 8 ++ .../blockstates/orange_autumn_leaves.json | 8 ++ .../blockstates/origin_leaves.json | 8 ++ .../blockstates/palm_leaves.json | 8 ++ .../blockstates/pine_leaves.json | 8 ++ .../blockstates/pink_cherry_leaves.json | 8 ++ .../blockstates/redwood_leaves.json | 8 ++ .../blockstates/sacred_oak_leaves.json | 8 ++ .../blockstates/white_cherry_leaves.json | 8 ++ .../blockstates/willow_leaves.json | 8 ++ .../blockstates/yellow_autumn_leaves.json | 8 ++ .../models/block/bamboo_leaves.json | 6 + .../models/block/dark_leaves.json | 6 + .../models/block/dead_leaves.json | 6 + .../models/block/ethereal_leaves.json | 6 + .../models/block/fir_leaves.json | 6 + .../models/block/flowering_leaves.json | 7 + .../models/block/hellbark_leaves.json | 6 + .../models/block/jacaranda_leaves.json | 6 + .../models/block/leaves_overlay.json | 29 ++++ .../models/block/magic_leaves.json | 6 + .../models/block/mahogany_leaves.json | 6 + .../models/block/mangrove_leaves.json | 6 + .../models/block/maple_leaves.json | 6 + .../models/block/orange_autumn_leaves.json | 6 + .../models/block/origin_leaves.json | 6 + .../models/block/palm_leaves.json | 6 + .../models/block/pine_leaves.json | 6 + .../models/block/pink_cherry_leaves.json | 6 + .../models/block/redwood_leaves.json | 6 + .../models/block/sacred_oak_leaves.json | 6 + .../models/block/white_cherry_leaves.json | 6 + .../models/block/willow_leaves.json | 6 + .../models/block/yellow_autumn_leaves.json | 6 + .../models/item/bamboo_leaves.json | 10 ++ .../models/item/dark_leaves.json | 10 ++ .../models/item/dead_leaves.json | 10 ++ .../models/item/ethereal_leaves.json | 10 ++ .../biomesoplenty/models/item/fir_leaves.json | 10 ++ .../models/item/flowering_leaves.json | 10 ++ .../models/item/hellbark_leaves.json | 10 ++ .../models/item/jacaranda_leaves.json | 10 ++ .../models/item/magic_leaves.json | 10 ++ .../models/item/mahogany_leaves.json | 10 ++ .../models/item/mangrove_leaves.json | 10 ++ .../models/item/maple_leaves.json | 10 ++ .../models/item/orange_autumn_leaves.json | 10 ++ .../models/item/origin_leaves.json | 10 ++ .../models/item/palm_leaves.json | 10 ++ .../models/item/pine_leaves.json | 10 ++ .../models/item/pink_cherry_leaves.json | 10 ++ .../models/item/redwood_leaves.json | 10 ++ .../models/item/sacred_oak_leaves.json | 10 ++ .../models/item/white_cherry_leaves.json | 10 ++ .../models/item/willow_leaves.json | 10 ++ .../models/item/yellow_autumn_leaves.json | 10 ++ .../textures/blocks/leaves_bamboo.png | Bin 0 -> 583 bytes .../textures/blocks/leaves_dark.png | Bin 0 -> 653 bytes .../textures/blocks/leaves_dead.png | Bin 0 -> 602 bytes .../textures/blocks/leaves_ethereal.png | Bin 0 -> 366 bytes .../textures/blocks/leaves_fir.png | Bin 0 -> 710 bytes .../textures/blocks/leaves_flowering.png | Bin 0 -> 587 bytes .../blocks/leaves_flowering_overlay.png | Bin 0 -> 271 bytes .../textures/blocks/leaves_hellbark.png | Bin 0 -> 677 bytes .../textures/blocks/leaves_jacaranda.png | Bin 0 -> 600 bytes .../textures/blocks/leaves_magic.png | Bin 0 -> 895 bytes .../textures/blocks/leaves_mahogany.png | Bin 0 -> 710 bytes .../textures/blocks/leaves_mangrove.png | Bin 0 -> 561 bytes .../textures/blocks/leaves_maple.png | Bin 0 -> 562 bytes .../textures/blocks/leaves_orange_autumn.png | Bin 0 -> 591 bytes .../textures/blocks/leaves_origin.png | Bin 0 -> 669 bytes .../textures/blocks/leaves_palm.png | Bin 0 -> 589 bytes .../textures/blocks/leaves_pine.png | Bin 0 -> 594 bytes .../textures/blocks/leaves_pink_cherry.png | Bin 0 -> 677 bytes .../textures/blocks/leaves_redwood.png | Bin 0 -> 517 bytes .../textures/blocks/leaves_sacred_oak.png | Bin 0 -> 595 bytes .../textures/blocks/leaves_white_cherry.png | Bin 0 -> 657 bytes .../textures/blocks/leaves_willow.png | Bin 0 -> 488 bytes .../textures/blocks/leaves_yellow_autumn.png | Bin 0 -> 627 bytes 94 files changed, 762 insertions(+), 1 deletion(-) create mode 100644 src/main/java/biomesoplenty/common/block/BlockBOPLeaves.java create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/bamboo_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/dark_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/dead_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/ethereal_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/fir_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/flowering_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/hellbark_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/jacaranda_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/magic_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/mahogany_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/mangrove_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/maple_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/orange_autumn_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/origin_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/palm_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/pine_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/pink_cherry_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/redwood_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/sacred_oak_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/white_cherry_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/willow_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/blockstates/yellow_autumn_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/bamboo_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/dark_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/dead_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/ethereal_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/fir_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/flowering_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/hellbark_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/jacaranda_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/leaves_overlay.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/magic_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/mahogany_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/mangrove_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/maple_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/orange_autumn_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/origin_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/palm_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/pine_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/pink_cherry_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/redwood_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/sacred_oak_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/white_cherry_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/willow_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/block/yellow_autumn_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/bamboo_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/dark_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/dead_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/ethereal_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/fir_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/flowering_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/hellbark_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/jacaranda_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/magic_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/mahogany_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/mangrove_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/maple_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/orange_autumn_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/origin_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/palm_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/pine_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/pink_cherry_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/redwood_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/sacred_oak_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/white_cherry_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/willow_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/models/item/yellow_autumn_leaves.json create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_bamboo.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_dark.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_dead.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_ethereal.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_fir.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_flowering.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_flowering_overlay.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_hellbark.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_jacaranda.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_magic.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_mahogany.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_mangrove.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_maple.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_orange_autumn.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_origin.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_palm.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_pine.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_pink_cherry.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_redwood.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_sacred_oak.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_white_cherry.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_willow.png create mode 100644 src/main/resources/assets/biomesoplenty/textures/blocks/leaves_yellow_autumn.png diff --git a/src/main/java/biomesoplenty/api/block/BOPBlocks.java b/src/main/java/biomesoplenty/api/block/BOPBlocks.java index c18a1e092..bb8794f01 100644 --- a/src/main/java/biomesoplenty/api/block/BOPBlocks.java +++ b/src/main/java/biomesoplenty/api/block/BOPBlocks.java @@ -67,4 +67,29 @@ public class BOPBlocks public static Block foliage; + // leaves + public static Block yellow_autumn_leaves; + public static Block orange_autumn_leaves; + public static Block willow_leaves; + public static Block white_cherry_leaves; + public static Block pink_cherry_leaves; + public static Block sacred_oak_leaves; + public static Block redwood_leaves; + public static Block pine_leaves; + public static Block palm_leaves; + public static Block origin_leaves; + public static Block maple_leaves; + public static Block mangrove_leaves; + public static Block mahogany_leaves; + public static Block magic_leaves; + public static Block jacaranda_leaves; + public static Block hellbark_leaves; + public static Block flowering_leaves; + public static Block fir_leaves; + public static Block ethereal_leaves; + public static Block dead_leaves; + public static Block dark_leaves; + public static Block bamboo_leaves; + + } diff --git a/src/main/java/biomesoplenty/common/block/BlockBOPLeaves.java b/src/main/java/biomesoplenty/common/block/BlockBOPLeaves.java new file mode 100644 index 000000000..926e332d6 --- /dev/null +++ b/src/main/java/biomesoplenty/common/block/BlockBOPLeaves.java @@ -0,0 +1,134 @@ +/******************************************************************************* + * Copyright 2014, the Biomes O' Plenty Team + * + * This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License. + * + * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/. + ******************************************************************************/ + +package biomesoplenty.common.block; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Random; + +import biomesoplenty.api.block.IBOPBlock; +import biomesoplenty.common.item.ItemBOPBlock; +import net.minecraft.block.BlockLeaves; +import net.minecraft.block.BlockPlanks.EnumType; +import net.minecraft.block.properties.IProperty; +import net.minecraft.block.state.BlockState; +import net.minecraft.block.state.IBlockState; +import net.minecraft.init.Blocks; +import net.minecraft.item.Item; +import net.minecraft.item.ItemBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.util.BlockPos; +import net.minecraft.util.EnumFacing; +import net.minecraft.world.IBlockAccess; +import net.minecraft.world.World; + +// TODO: sort out proper base color when using fast graphics +// TODO: flowers look tinted when using fast graphics +public class BlockBOPLeaves extends BlockLeaves implements IBOPBlock +{ + + // add properties - note CHECK_DECAY and DECAYABLE are both inherited from BlockLeaves + @Override + protected BlockState createBlockState() {return new BlockState(this, new IProperty[] {CHECK_DECAY, DECAYABLE});} + + // implement IDHBlock + private Map namedStates = new HashMap(); + public Map getNamedStates() {return this.namedStates;} + public IBlockState getNamedState(String name) {return this.namedStates.get(name);} + public Class getItemClass() {return ItemBOPBlock.class;} + + private ItemStack sapling; + private ItemStack fruit; + private int saplingDropChance; + private boolean canBurn; + + public BlockBOPLeaves(ItemStack sapling, ItemStack fruit, int saplingDropChance, boolean canBurn) + { + super(); + + this.sapling = sapling; + this.fruit = fruit; + this.saplingDropChance = saplingDropChance; + this.canBurn = canBurn; + + this.setDefaultState(this.blockState.getBaseState().withProperty(CHECK_DECAY, Boolean.valueOf(true)).withProperty(DECAYABLE, Boolean.valueOf(true))); + } + + @Override + public IBlockState getStateFromMeta(int meta) + { + return this.getDefaultState(); + } + @Override + public int getMetaFromState(IBlockState state) + { + return 0; + } + + @Override + protected int getSaplingDropChance(IBlockState state) + { + return this.saplingDropChance; + } + @Override + public Item getItemDropped(IBlockState state, Random rand, int fortune) + { + return this.sapling.getItem(); + } + @Override + public int damageDropped(IBlockState state) + { + return this.sapling.getMetadata(); + } + @Override + public int quantityDropped(Random random) + { + return random.nextInt(this.saplingDropChance) == 0 ? this.sapling.stackSize : 0; + } + + @Override + protected void dropApple(World worldIn, BlockPos pos, IBlockState state, int chance) + { + if (this.fruit != null) { + spawnAsEntity(worldIn, pos, this.fruit.copy()); + } + } + + + @Override + public List onSheared(ItemStack item, net.minecraft.world.IBlockAccess world, BlockPos pos, int fortune) + { + List ret = new java.util.ArrayList(); + ret.add(new ItemStack(this)); + return ret; + } + + @Override + public int getFlammability(IBlockAccess world, BlockPos pos, EnumFacing face) + { + return this.canBurn ? Blocks.leaves.getFlammability(world, pos, face) : 0; + } + + @Override + public int getFireSpreadSpeed(IBlockAccess world, BlockPos pos, EnumFacing face) + { + return this.canBurn ? Blocks.leaves.getFireSpreadSpeed(world, pos, face) : 0; + } + + + // We are forced to implement the method below in order to extend the BlockLeaves abstract class + // ...however, we don't actually use it anywhere so it's safe to just return null + @Override + public EnumType getWoodType(int meta) {return null;} + + +} + + \ No newline at end of file diff --git a/src/main/java/biomesoplenty/common/init/ModBlocks.java b/src/main/java/biomesoplenty/common/init/ModBlocks.java index d28264d06..ac6eb8491 100644 --- a/src/main/java/biomesoplenty/common/init/ModBlocks.java +++ b/src/main/java/biomesoplenty/common/init/ModBlocks.java @@ -16,9 +16,12 @@ import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.block.state.IBlockState; import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.init.Blocks; +import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemDoor; +import net.minecraft.item.ItemStack; import net.minecraftforge.fml.common.registry.GameRegistry; import biomesoplenty.api.block.BOPWoodType; import biomesoplenty.api.block.IBOPBlock; @@ -31,6 +34,7 @@ import biomesoplenty.common.block.BlockBOPFlower1; import biomesoplenty.common.block.BlockBOPFlower2; import biomesoplenty.common.block.BlockBOPGeneric; import biomesoplenty.common.block.BlockBOPGrass; +import biomesoplenty.common.block.BlockBOPLeaves; import biomesoplenty.common.block.BlockBOPLilypad; import biomesoplenty.common.block.BlockBOPLog; import biomesoplenty.common.block.BlockBOPMushroom; @@ -161,7 +165,7 @@ public class ModBlocks mahogany = registerWoodType("mahogany"); giant_flower_stem = registerBlock( new BlockBOPLog(), "giant_flower_stem" ); // no planks, stairs, etc dead_log = registerBlock( new BlockBOPLog(), "dead_log" ); // no planks, stairs, etc - + //vines // TODO: special placement rules? flower_vine = registerBlock( new BlockBOPVine(false), "flower_vine" ); @@ -172,8 +176,38 @@ public class ModBlocks foliage = registerBlock( new BlockFoliage(), "foliage" ); + // leaves + // TODO: bamboo leaves to grow automatically? + // TODO: add correct saplings + // TODO: add correct fruit (or change this implementation completely) + yellow_autumn_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "yellow_autumn_leaves" ); + orange_autumn_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "orange_autumn_leaves" ); + willow_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "willow_leaves" ); + white_cherry_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "white_cherry_leaves" ); + pink_cherry_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "pink_cherry_leaves" ); + sacred_oak_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "sacred_oak_leaves" ); + redwood_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "redwood_leaves" ); + pine_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "pine_leaves" ); + palm_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "palm_leaves" ); + origin_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "origin_leaves" ); + maple_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "maple_leaves" ); + mangrove_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "mangrove_leaves" ); + mahogany_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "mahogany_leaves" ); + magic_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "magic_leaves" ); + jacaranda_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "jacaranda_leaves" ); + hellbark_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, false ), "hellbark_leaves" ); + flowering_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "flowering_leaves" ); + fir_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "fir_leaves" ); + ethereal_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "ethereal_leaves" ); + dead_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "dead_leaves" ); + dark_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "dark_leaves" ); + bamboo_leaves = registerBlock( new BlockBOPLeaves( new ItemStack(Blocks.sapling, 1, 0), new ItemStack(Items.apple, 1, 0), 20, true ), "bamboo_leaves" ); + } + + // TODO: check if hellbark planks, fence etc can burn + // TODO: saplings public static BOPWoodType registerWoodType(String name) { BOPWoodType wood = new BOPWoodType(); diff --git a/src/main/java/biomesoplenty/core/ClientProxy.java b/src/main/java/biomesoplenty/core/ClientProxy.java index c3d093db1..51b6744c0 100644 --- a/src/main/java/biomesoplenty/core/ClientProxy.java +++ b/src/main/java/biomesoplenty/core/ClientProxy.java @@ -11,6 +11,8 @@ package biomesoplenty.core; import java.util.ArrayList; import net.minecraft.block.Block; +import net.minecraft.block.BlockLeaves; +import net.minecraft.client.Minecraft; import net.minecraft.client.resources.model.ModelBakery; import net.minecraft.item.Item; import biomesoplenty.client.util.ModelHelper; @@ -23,13 +25,21 @@ public class ClientProxy extends CommonProxy @Override public void registerRenderers() { + for (ModelEntry modelEntry : blocksToRegister) { + // set the correct rendering mode for leaves based on the fancyGraphics game setting + if (modelEntry.block instanceof BlockLeaves) + { + ((BlockLeaves)modelEntry.block).setGraphicsLevel( Minecraft.getMinecraft().gameSettings.fancyGraphics ); + } + // register the block model ModelHelper.registerBlock(modelEntry.block, modelEntry.metadata, BiomesOPlenty.MOD_ID + ":" + modelEntry.name); } for (ItemEntry itemEntry : itemsToRegister) { + // register the item model ModelHelper.registerItem(itemEntry.item, itemEntry.metadata, BiomesOPlenty.MOD_ID + ":" + itemEntry.name); } diff --git a/src/main/resources/assets/biomesoplenty/blockstates/bamboo_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/bamboo_leaves.json new file mode 100644 index 000000000..f83cfdf1d --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/bamboo_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:bamboo_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:bamboo_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:bamboo_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:bamboo_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/dark_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/dark_leaves.json new file mode 100644 index 000000000..c222362b2 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/dark_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:dark_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:dark_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:dark_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:dark_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/dead_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/dead_leaves.json new file mode 100644 index 000000000..ad18aa2f6 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/dead_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:dead_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:dead_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:dead_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:dead_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/ethereal_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/ethereal_leaves.json new file mode 100644 index 000000000..5577f12a9 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/ethereal_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:ethereal_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:ethereal_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:ethereal_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:ethereal_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/fir_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/fir_leaves.json new file mode 100644 index 000000000..7338b4b98 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/fir_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:fir_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:fir_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:fir_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:fir_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/flowering_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/flowering_leaves.json new file mode 100644 index 000000000..48c4665aa --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/flowering_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:flowering_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:flowering_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:flowering_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:flowering_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/hellbark_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/hellbark_leaves.json new file mode 100644 index 000000000..b3f253b44 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/hellbark_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:hellbark_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:hellbark_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:hellbark_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:hellbark_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/jacaranda_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/jacaranda_leaves.json new file mode 100644 index 000000000..6b4b029b6 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/jacaranda_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:jacaranda_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:jacaranda_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:jacaranda_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:jacaranda_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/magic_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/magic_leaves.json new file mode 100644 index 000000000..3a207b4ff --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/magic_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:magic_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:magic_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:magic_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:magic_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/mahogany_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/mahogany_leaves.json new file mode 100644 index 000000000..9e4a48142 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/mahogany_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:mahogany_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:mahogany_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:mahogany_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:mahogany_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/mangrove_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/mangrove_leaves.json new file mode 100644 index 000000000..333d4a3d1 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/mangrove_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:mangrove_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:mangrove_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:mangrove_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:mangrove_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/maple_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/maple_leaves.json new file mode 100644 index 000000000..46800004d --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/maple_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:maple_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:maple_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:maple_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:maple_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/orange_autumn_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/orange_autumn_leaves.json new file mode 100644 index 000000000..9c5369e72 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/orange_autumn_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:orange_autumn_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:orange_autumn_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:orange_autumn_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:orange_autumn_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/origin_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/origin_leaves.json new file mode 100644 index 000000000..5697174db --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/origin_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:origin_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:origin_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:origin_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:origin_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/palm_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/palm_leaves.json new file mode 100644 index 000000000..e725203b5 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/palm_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:palm_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:palm_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:palm_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:palm_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/pine_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/pine_leaves.json new file mode 100644 index 000000000..051252063 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/pine_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:pine_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:pine_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:pine_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:pine_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/pink_cherry_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/pink_cherry_leaves.json new file mode 100644 index 000000000..a43d4fe3f --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/pink_cherry_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:pink_cherry_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:pink_cherry_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:pink_cherry_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:pink_cherry_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/redwood_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/redwood_leaves.json new file mode 100644 index 000000000..a64bed2e8 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/redwood_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:redwood_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:redwood_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:redwood_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:redwood_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/sacred_oak_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/sacred_oak_leaves.json new file mode 100644 index 000000000..5aaf4fc35 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/sacred_oak_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:sacred_oak_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:sacred_oak_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:sacred_oak_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:sacred_oak_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/white_cherry_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/white_cherry_leaves.json new file mode 100644 index 000000000..ede97ad5b --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/white_cherry_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:white_cherry_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:white_cherry_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:white_cherry_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:white_cherry_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/willow_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/willow_leaves.json new file mode 100644 index 000000000..85577e6a5 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/willow_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:willow_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:willow_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:willow_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:willow_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/blockstates/yellow_autumn_leaves.json b/src/main/resources/assets/biomesoplenty/blockstates/yellow_autumn_leaves.json new file mode 100644 index 000000000..cbd31cc12 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/blockstates/yellow_autumn_leaves.json @@ -0,0 +1,8 @@ +{ + "variants": { + "check_decay=true,decayable=true": { "model": "biomesoplenty:yellow_autumn_leaves" }, + "check_decay=true,decayable=false": { "model": "biomesoplenty:yellow_autumn_leaves" }, + "check_decay=false,decayable=true": { "model": "biomesoplenty:yellow_autumn_leaves" }, + "check_decay=false,decayable=false": { "model": "biomesoplenty:yellow_autumn_leaves" } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/bamboo_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/bamboo_leaves.json new file mode 100644 index 000000000..8a981a2a3 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/bamboo_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "biomesoplenty:blocks/leaves_bamboo" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/dark_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/dark_leaves.json new file mode 100644 index 000000000..c99d72527 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/dark_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "biomesoplenty:blocks/leaves_dark" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/dead_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/dead_leaves.json new file mode 100644 index 000000000..09e83080f --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/dead_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "biomesoplenty:blocks/leaves_dead" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/ethereal_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/ethereal_leaves.json new file mode 100644 index 000000000..84ec80747 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/ethereal_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "biomesoplenty:blocks/leaves_ethereal" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/fir_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/fir_leaves.json new file mode 100644 index 000000000..af5e2e030 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/fir_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "biomesoplenty:blocks/leaves_fir" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/flowering_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/flowering_leaves.json new file mode 100644 index 000000000..48aca8461 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/flowering_leaves.json @@ -0,0 +1,7 @@ +{ + "parent": "biomesoplenty:block/leaves_overlay", + "textures": { + "under": "biomesoplenty:blocks/leaves_flowering", + "over": "biomesoplenty:blocks/leaves_flowering_overlay" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/hellbark_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/hellbark_leaves.json new file mode 100644 index 000000000..b63da8903 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/hellbark_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "biomesoplenty:blocks/leaves_hellbark" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/jacaranda_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/jacaranda_leaves.json new file mode 100644 index 000000000..7dce715ec --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/jacaranda_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "biomesoplenty:blocks/leaves_jacaranda" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/leaves_overlay.json b/src/main/resources/assets/biomesoplenty/models/block/leaves_overlay.json new file mode 100644 index 000000000..80b475870 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/leaves_overlay.json @@ -0,0 +1,29 @@ +{ + "textures": { + "particle": "#under" + }, + "elements": [ + { "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#under", "tintindex": 0 }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#under", "tintindex": 0 }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#under", "tintindex": 0 }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#under", "tintindex": 0 }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#under", "tintindex": 0 }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#under", "tintindex": 0 } + } + }, + { "from": [ 0, 0, 0 ], + "to": [ 16, 16, 16 ], + "faces": { + "down": { "uv": [ 0, 0, 16, 16 ], "texture": "#over", "cullface": "down" }, + "up": { "uv": [ 0, 0, 16, 16 ], "texture": "#over", "cullface": "up" }, + "north": { "uv": [ 0, 0, 16, 16 ], "texture": "#over", "cullface": "north" }, + "south": { "uv": [ 0, 0, 16, 16 ], "texture": "#over", "cullface": "south" }, + "west": { "uv": [ 0, 0, 16, 16 ], "texture": "#over", "cullface": "west" }, + "east": { "uv": [ 0, 0, 16, 16 ], "texture": "#over", "cullface": "east" } + } + } + ] +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/magic_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/magic_leaves.json new file mode 100644 index 000000000..bff6fbc87 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/magic_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "biomesoplenty:blocks/leaves_magic" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/mahogany_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/mahogany_leaves.json new file mode 100644 index 000000000..4dc1c564d --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/mahogany_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/leaves", + "textures": { + "all": "biomesoplenty:blocks/leaves_mahogany" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/mangrove_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/mangrove_leaves.json new file mode 100644 index 000000000..6922fe4dc --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/mangrove_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/leaves", + "textures": { + "all": "biomesoplenty:blocks/leaves_mangrove" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/maple_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/maple_leaves.json new file mode 100644 index 000000000..e43792d0e --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/maple_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "biomesoplenty:blocks/leaves_maple" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/orange_autumn_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/orange_autumn_leaves.json new file mode 100644 index 000000000..4694d9e4a --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/orange_autumn_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "biomesoplenty:blocks/leaves_orange_autumn" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/origin_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/origin_leaves.json new file mode 100644 index 000000000..b48640780 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/origin_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "biomesoplenty:blocks/leaves_origin" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/palm_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/palm_leaves.json new file mode 100644 index 000000000..c7825e0d2 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/palm_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/leaves", + "textures": { + "all": "biomesoplenty:blocks/leaves_palm" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/pine_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/pine_leaves.json new file mode 100644 index 000000000..cabbacdf4 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/pine_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/leaves", + "textures": { + "all": "biomesoplenty:blocks/leaves_pine" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/pink_cherry_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/pink_cherry_leaves.json new file mode 100644 index 000000000..4425c6ccc --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/pink_cherry_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "biomesoplenty:blocks/leaves_pink_cherry" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/redwood_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/redwood_leaves.json new file mode 100644 index 000000000..fc61f1916 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/redwood_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/leaves", + "textures": { + "all": "biomesoplenty:blocks/leaves_redwood" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/sacred_oak_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/sacred_oak_leaves.json new file mode 100644 index 000000000..59c31d6d7 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/sacred_oak_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/leaves", + "textures": { + "all": "biomesoplenty:blocks/leaves_sacred_oak" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/white_cherry_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/white_cherry_leaves.json new file mode 100644 index 000000000..73ae9f739 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/white_cherry_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "biomesoplenty:blocks/leaves_white_cherry" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/willow_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/willow_leaves.json new file mode 100644 index 000000000..2cb18ec54 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/willow_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/leaves", + "textures": { + "all": "biomesoplenty:blocks/leaves_willow" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/block/yellow_autumn_leaves.json b/src/main/resources/assets/biomesoplenty/models/block/yellow_autumn_leaves.json new file mode 100644 index 000000000..baaf01a71 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/block/yellow_autumn_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "biomesoplenty:blocks/leaves_yellow_autumn" + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/bamboo_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/bamboo_leaves.json new file mode 100644 index 000000000..a2af97adf --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/bamboo_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/bamboo_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/dark_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/dark_leaves.json new file mode 100644 index 000000000..1a38c5628 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/dark_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/dark_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/dead_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/dead_leaves.json new file mode 100644 index 000000000..3dee00a7e --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/dead_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/dead_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/ethereal_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/ethereal_leaves.json new file mode 100644 index 000000000..6b8a86028 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/ethereal_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/ethereal_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/fir_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/fir_leaves.json new file mode 100644 index 000000000..8440914cd --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/fir_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/fir_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/flowering_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/flowering_leaves.json new file mode 100644 index 000000000..48650f47f --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/flowering_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/flowering_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/hellbark_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/hellbark_leaves.json new file mode 100644 index 000000000..72464d924 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/hellbark_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/hellbark_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/jacaranda_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/jacaranda_leaves.json new file mode 100644 index 000000000..f78819887 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/jacaranda_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/jacaranda_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/magic_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/magic_leaves.json new file mode 100644 index 000000000..2c0bcac0d --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/magic_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/magic_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/mahogany_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/mahogany_leaves.json new file mode 100644 index 000000000..983ff410f --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/mahogany_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/mahogany_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/mangrove_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/mangrove_leaves.json new file mode 100644 index 000000000..d7b060ae3 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/mangrove_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/mangrove_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/maple_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/maple_leaves.json new file mode 100644 index 000000000..3d75cc79a --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/maple_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/maple_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/orange_autumn_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/orange_autumn_leaves.json new file mode 100644 index 000000000..5d2825200 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/orange_autumn_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/orange_autumn_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/origin_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/origin_leaves.json new file mode 100644 index 000000000..b8fb95f8c --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/origin_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/origin_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/palm_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/palm_leaves.json new file mode 100644 index 000000000..53187a309 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/palm_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/palm_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/pine_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/pine_leaves.json new file mode 100644 index 000000000..7e5282e02 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/pine_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/pine_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/pink_cherry_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/pink_cherry_leaves.json new file mode 100644 index 000000000..1b6d30b40 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/pink_cherry_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/pink_cherry_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/redwood_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/redwood_leaves.json new file mode 100644 index 000000000..934a83cf5 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/redwood_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/redwood_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/sacred_oak_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/sacred_oak_leaves.json new file mode 100644 index 000000000..1dea708b6 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/sacred_oak_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/sacred_oak_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/white_cherry_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/white_cherry_leaves.json new file mode 100644 index 000000000..273085339 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/white_cherry_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/white_cherry_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/willow_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/willow_leaves.json new file mode 100644 index 000000000..a8acd65af --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/willow_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/willow_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/models/item/yellow_autumn_leaves.json b/src/main/resources/assets/biomesoplenty/models/item/yellow_autumn_leaves.json new file mode 100644 index 000000000..ce7c28ad8 --- /dev/null +++ b/src/main/resources/assets/biomesoplenty/models/item/yellow_autumn_leaves.json @@ -0,0 +1,10 @@ +{ + "parent": "biomesoplenty:block/yellow_autumn_leaves", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} diff --git a/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_bamboo.png b/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_bamboo.png new file mode 100644 index 0000000000000000000000000000000000000000..d801ac1c6137fc01abec123d2922db1369d95043 GIT binary patch literal 583 zcmV-N0=WH&P)N2bPDNB8 zb~7$DE-^4L^m3s900F~EL_t(IPi2x@D@9=thSwjFGdW(+W+T7D4JkRqE@vfYvXMh^ zha{)iLN0K_g(M{;rwfVlPsV;`?OAK>ZEn7q`M#NX-*-MI)!N3hB{G#IiBPR`CMPMz zw(ctY+~G@DgV?KkViTLio=?7Y%x~H>nC=%(Zx_nZTUdD1GMp)U4;8X;U9Jy!c>Erg ziS+_myDFDp)1dD}cZxjN9n;wYB7;~LNz>-s??1T+8M1dD@*7~MpEa5oSuK>!+mJ+e z-3bSemC`tnsXh&O*SD0fF?uNlrUm&MUy6Z`Kf319K+yKdfT+Fmd2;quqx_85>SdXp zo(74$q2eB-_zrM`3fFh1sZSBwfP&aGGOGV9xEk9#)S#%zxNY2oB=%e-Jqx+XO^kon ztXpXRVsfiU1!K*`Y{=+DqA8yXesl+N|FWwxX7pGcjpk!+155|ozS%2qZ8}OLEA4HXKC1NBac9k#%E{U}*+xTO zJcq+11mc1M#2Z-27k(PBjaExs4|3>1ouV>mmac%$r002ovPDHLkV1flm0X_f# literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_dark.png b/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..f7186c6ccd8e39dbd19dcb2455ac6e966f62fa9e GIT binary patch literal 653 zcmV;80&@L{P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qQF!XYv0005}Nklh@|`wI^V0IS_{D^>{kz2 zc7^m+5emkgovjbcrh8}*@_W(LC4zwF#B!b};j7T~B^K)vifrGba%}jXzYTREi&EOw zSe^^&^A=|sZ_nQzd#A~m4(BtDKmPE`^mseeTAtGYRplXJ*3RG&Ip2&jAtT1y^L^^S zgFNQd$g+lASR>lisOo>c!Iz=JZ{UKL;RI<;8_Am6|BM%D)+*bJWK>DX_isD9-l06) zU|IKp_87}1ilTGAV!8H^^Uu?~N0JI-?h1YzoOPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qQF!XYv0005WNkl?3R|2U;@IBxdPuI^ z{OUN|ZH6V?S))E<9nARM0kiY26Dy|e>`eH(;3krWqYdg)$ZqNj)#*9-z38p+7V)}W zg3ZNp`oELd!TokbZIDSdm2HX+gzID|>I#wgo=fV>yRC?natSTMyhn2#8h>zwV2R7{ zZM@M$qj(?rq!N2bZe?^J zG%heMGmPe!Pyhe`>`6pHR5(vNJLW<-;{If@MBbYPE}^c#zV+1j_3CXq zkQ_`7vLN#c5^d$DqvmOZ{||=?d0=zNzP+rarnr`f{=SAamw-5(>1_5+l6#o7a;JTM ziaa5a0g(m1tJ(j($F!KaSFJ`Sip=Rbr2QpF?M^mxNphCx_`h%%zGh-B&t!co^8f$< M07*qoM6N<$g4oWSqyPW_ literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_fir.png b/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_fir.png new file mode 100644 index 0000000000000000000000000000000000000000..df10e34b71e7b93b6c6e679b28ce82fdd9018dde GIT binary patch literal 710 zcmV;%0y+JOP)<{98gxZibW?9;ba!ELWdKlNX>N2bPDNB8 zb~7$DE-^4L^m3s900KfuL_t(IPd!uDZW>V#y)^R^krF9!Y=>@OmtD3|3>b_tm{3f! zuwy$tvXT$TYpSBO=X~j8&q3>vR`*UjbMDNnD$Z;Phr??B*c9bUC=^oFcU|5y9bF=k zh)TCL>cbyv#%7O75|78#^v|`Z$NC89&x%_v_XF<>R${Wz?vds&S zALJg&lVJk@VpXndFsS}04-GK;8D6rJuS|T5ggC-_Io)jk21ts?vrefIB`D=*5|{86zm`3zq;3F?7){CYjntAHz0eX>gvVv(P?Tm13?dgGxeqNHUd0u01u(tb? zGEW4{xR!1UsyG%il)EW3IbKLh{qiVg&T{ zg~z1{{*U@?j|rT;FJQ(opL|_%IUqZwCt{AO8*09wH$metGQ{D@m=;*Gxj+UrC@{i_ sDgc9CIJ5bm00hmmFB*3v%ye}558OpLa+Zn@0ssI207*qoM6N<$f=uW&w*UYD literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_flowering.png b/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_flowering.png new file mode 100644 index 0000000000000000000000000000000000000000..de0615637e882d087c4f8ead8b2b810af2b5e531 GIT binary patch literal 587 zcmV-R0<`^!P)N2bZe?^J zG%heMHD!e|WdHyH$w@>(R5(v%Q&*}2K@gn#31-Y9h)e3emRT@5Pi#B`UAiOZxpj7ia4Ay4Wy2pHD2ylG$uV=V&yN-EJqTREqvir$hVsd=^%q zfKxxTQ>j$wM9^R`5Rb>h#MNq*cErFA*-WQXnM@|U0az}V;`jThpsiZ1_Ho!yx!rC% zm#~~-u}B3sAt;$lQb!`aDI5;-ACJfRFBA%50)c>NUl>j#5}}M4tk-MGKsK9oDn!y~ zG%ATiLKygXJm^`iR&u}JnFPVjW|Q{KW0jy1Z}nFa=A!lvI6;>1s;*b z3=DkxL735kHCP2GC{f}XQ4*Y=R#Ki=l*&+$n3-3imzP?iV4`QBXPVk-lnPYS>*?Yc zV&T8^qAy>I0uO5f|Ld%07VEwgtZ8W3Z@gzEchAw~%Da99{fZK5W^M@2xZ!MSnXXxt z*nf7rGY8{klS7v3YvXn;lFD8yviAc&Z}o)_Jinc;zS+tzmV9JW&BMLnKg)J3-n%F0 ztgy)&$HQ_aYl6IjeymyaaMhHi%6~F(dtDEol2C3v|0;jk;ok;-7#|)G MPgg&ebxsLQ01y;p^Z)<= literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_hellbark.png b/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_hellbark.png new file mode 100644 index 0000000000000000000000000000000000000000..96073a62c4572d5463e1e0d652423bd6e6868452 GIT binary patch literal 677 zcmV;W0$TlvP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qQF!XYv0006MNkl|Q56tNUqWuT73-@Wd;%{5_XGTFV`d%L&qopH8dlEL<; z>CnZ#MdkHH6>F$a!k!?*#)mc)a?)P-(j@%5x>1z9`gcC#al#3sVFAM_d6IO_UHv+X?^xY@GWP*m_74L1vLO@U0I_8yRZvMgwQTO^#T~S}?b+L*N|#Z`SzTZVc8q z5WX>=;FEyi+Lx>sqaR5VkEs7b{P8w3;KgmC8vX!KisWvgP_?yK?u|E~xrYTTZK(3*y+i*2vYQPe2ldMx00000 LNkvXXu0mjf<^40d literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_jacaranda.png b/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_jacaranda.png new file mode 100644 index 0000000000000000000000000000000000000000..c770153989879bb3834fae0c7d613a2a07eb04f5 GIT binary patch literal 600 zcmV-e0;m0nP)N2bPDNB8 zb~7$DE-^4L^m3s900GoVL_t(IPi<3YPeM@)y?@5I5EV>(YJxHx3=w&3(P$JD2eN`I zYU17o95MdcdQX$yVDx;sZExRcdwZT*4WE+I*h|0C#=<3810nVWvB}ae9~kYQ<=9U0 znN%{c&rWmsn^q%dY>)I!n~#v}>h`i<&Am}I_fGB}-=93SG}mOur7z3r78Mt7*k6xc z&`$D+CI+LlpJ~%_=$PY`OiRag2mb-%q^E0qiKMmpa~jrNfH*T#=Qwf@hph^+YbwO9 z4BKY>R=4SAA7f=_8s<*yeDKH=;dT=KGCQb*q;Y42eGo|{%Q462xHHVB?b{>e?hTl^ z@Hmzu$Tr@fWZ$z5Ou21igVb__XbeP1tS^1?<(7R%wcH1jVBUQ2fa4|mfv_bMgD>NG zh8IaS@?RtyK&$8m>w!Lm05P!vkYPKl2h1ybMqBboGPj6kC3Ir^-PDUFJY-*Czif11 zsLNyCVmtBpYu|{A;27AaoKP7DJAk-+03uN?1P5{@yR2l}CJ`+{wy=RzpvpGh!YEdc zUDSGEK_GyiNali&L~#JB;RFG6g09S1UU$MIf&{x2Q3*V*IR8NMkmwf0_?_gZ>4ae45+f4ZqX0j?K%M|LOc2Z0000N2bPDNB8 zb~7$DE-^7j^FlWO00R3-L_t(IPeqeyPg7A4h7W`-5cmNmL`jrXpje<%K(Ro}Qc8<$ zp=?s2AWKo@4a`3~OqFnyEw_CdInAT2V07sKMGrmv&K9FBMFt$4JdiCgzTFxjD9(QsYhZ!c0!&CReA&B(rPfab%?^gPq5r`LtWK_ld+lX z6spj2StOnO%+F_`YnK>!d3lNcw-V8sqiFfP^H8_+ASR^>QAzfr43dp+|3K;R3eF_t z@SeKx7UGTdV7i8i_t2FLfr3S9$`O}S!%nV^J#MMSTE`iwJHf%hLYY~D!G&E|A1pxl z`1mlaD7hU2Yu{mYE-*+6P$0cqpT1`41Y4GB!^F%_m}}h23k7PLK7^*# z$sj`&>7e1Fhk}ujT8qPt>?HY&+0MQmy{@14u4~CxtN8}|71i{eMIoUBJ zB!qz~;~f}W-$j1!$Ny3#tDM|~{_Y5r8pm;P5uIFtFohK(oBPP^{=l0wi8K#1C^UTp z+SoPCe`}(-5x%~@A}*tt!3%jxK4&4A#{1*PrO@w7gF;TkfX;{kF|s)3*e4>{jDHIu Vy~u(qV002ovPDHLkV1i3+kpKVy literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_mahogany.png b/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_mahogany.png new file mode 100644 index 0000000000000000000000000000000000000000..ac242ffa1e87ad603c8790a9bd7f82647d7b5bfb GIT binary patch literal 710 zcmV;%0y+JOP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qRNAp5A0006tNkls(Z@zt7YwbPG=kqyMGMUuQ&W`r>_LRwF zTbb{TjSc63I-k$g?RIs3elDsvn@!DT zGjrbG-`B~>iH?tt&Bp%t_%Iu^EW!Hvx`TV8(GYZMwVF9DmrJEmDSdu^>iPLu?RHz& z*Vh`4$9jK%|3%}-cz=JdN~Iz+fkHl?H?AZhxKt{cz-MP?CM2|N0Uv(#dR@h0(JBlE z1Ir!?g^WTvoi-Z$108lyf!r1%#p7|^-Q8(2nP@tl+C7)cX?J&5;c(c3Zfimz@+DaK)@vu3HwK4+UEEB-DcMv@^a{)ouXeSd!&GDmy1wzl;6 z_-L>Z3U!$QbfFVWAw_@>N;ZC=a=;`rA~Ah@6U=;IV-7YqHyue|UtdLspvwcZx57k$ sfG14w&q*LBLNXWlk@)A${H5gFA9h{?bW>t^vH$=807*qoM6N<$g3jAG1^@s6 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_mangrove.png b/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_mangrove.png new file mode 100644 index 0000000000000000000000000000000000000000..ffdfe9208734b5e47e961099afa0b8b8342dc7f0 GIT binary patch literal 561 zcmV-10?z%3P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qQF!XYv0004?Nkl429>dL=bxy1z*D- zf(?5^1wpa*m(BXc&3JbYNKP_$PRc|FZnvA9&u4*eHXG^nddk7&a`8N$&wCDDuh++) zOeVt5c&F2mTrQ`g%jHty@wfzqj>n^Hx7)8+DwR@aG#Y(_Zwv+lU(NIR6e>L&4$^M7 zzg1f4hIBfuJ|An~4NHLFcsy4Ar=7)Oq2;dEYYmo4CAHV9I?|1)Vehw)1`+ff*J~J5(hZ?KZYW|GOwCja=7E`nVak*ZvOQX^77Yl`g z@@lo}W5r@oba;IH8`JW!v)N2-xm;FD>9%>aO5)&hxmYarb>5gxr}`2m2#DEiSSD?o z4YOr}^Rr9V64|iLW>foTM)(R!r8G7Sp;oJ?1cG*BH&N=r3Y2{C7LJ>3Y00000NkvXXu0mjfsiE{B literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_maple.png b/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_maple.png new file mode 100644 index 0000000000000000000000000000000000000000..be1776c66ae8f66677e07e03def6e49d2690f65c GIT binary patch literal 562 zcmV-20?qx2P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qQF!XYv0004@Nkl*UUXKgsk0`*c^tdP zr6u+6gw?Fmal84vTS)w}Uf1}$*vjBPFwU`OMiR_cq$`C_s#T4XV~nE*>BdJL!Be~K zV1iB3sec5_hKV&%I^%L#9XgS;Bb4zeWSxe7c_Y8*Bi^h_g3ZNphWIA4-iRh7e)aqMRtx$yx@^BwkfSB2U zVyL6{z`Uk2v}{Q>w;j!u9~1vo6u9tyguZG77^G6kE?$Iws5kLMK7gL~&HNe+5b8}K zyIl4_@yN7X$YV={B4>*YEGOIrV^2`YB;-$Ib8$#^alp1tE_VW}WUNqMilD6>m0@3U zxDi_Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qQF!XYv0005LNkl`u zsDT7XrGEqqKp?s(qIW`<_+9gkCmsdF-Hh${UAG(WsF)DX;i>M+`AkZx>2CE6t3&<2 zd@!5p(%56o7jI*9K%MWUyd1a4rjwoFBa#cTi285yS$Ut&$y7Y}y*WL)DfjjU(~|ABEf$D;ZpNhhVGOvWQhyw!@6LmbHh>>DBXRih2#(T;Ez z_pbf+dlNUoDPXfND$`&ah}#2*Ot}aSa?fsw$}Evb$QBz|4!hVb1S2x`bvZ2>B*34@ z=0ZrOI6yVNR^18Bq+Nw*Z!JzdepAJ_%BHPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qQF!XYv0006ENklxhG@_jK`;bJV8uek0Tc%ifp~bQo^@%WXLGCS z-CNT+&onONz&N<@BOi6|{P2!?#aHA$@f`Ds#CwSnYyXxDQ~E4boNK5?(_)_3@k8qFaC4t(Q2bp0wu{rpLZ zU)m{xbnriLoQmfscm_RoE-okez7ur79kgt^ zaU%0^rnTb+;*c_ug0zQekc(FjD&%AHMi#E@mrD}PTQloEYW5uI54Equ;v4cS zMg+V!ymlAozn(hAH{&We0r}LEDwALY7}p0(q{@x$j|Gz(<+6LX#9m~Jlr3$deA=b7 zY&8MZGa<1#_PI~aUML6#_!H?|O`pS7aRjUJPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qQF!XYv0005JNkl)03i1SlgUJ}#bWV}S1J`9>h-!cn@urO z0l(dD+j_k=FvP$?Mv?RRZ1ed%6p@j5=#Td&s>Xusd9MTm2`+$Rz6>2%TslO_Q* zB(PelF%Njm>;^j$0#LmS+Ybi3WO4M=>;V3Y)q;V?M*yk4*R zvG-IeB@h)M;S4S$Kc7!K9*^N2utt*T4<%GWsvoZJp9kj8GTt_q$z(EI@<-xF&&2&) bKIYsDz8=ia3Cdlh00000NkvXXu0mjfygvkU literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_pine.png b/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_pine.png new file mode 100644 index 0000000000000000000000000000000000000000..db8028e644487ab11a9e98c483faf7840bc5655b GIT binary patch literal 594 zcmV-Y0N2bPDNB8 zb~7$DE-^7j^FlWO00GWPL_t(IPgPULib6pUe4pgOlb~QgFrb(fK~X%J(<+D&OsEJ3 z6h*{<_?f+1?N0C8x^#6->gk%%fLty|&1RE0`9Uxkq}S^u`Et2r9*f09I~)!l?(_L* zu~?AFWMaYV^~$9EelI+oPBXV!t<-9@m@7@|cDqdK^*SY!N#=gPpQGFDrp;zUPN(xT z`3KwWmbuYr6pevOupp60(B*RBK~=s&rBb2O>GY==3owW! zcGgCtk&K1I;lE9A>h*f1>2ykwNQ63_4i7dO4LTl=jBS;$Kxz`JRXjzREpzZFd&?Q1|r91 z{eGXhyg~prA;Jk3bO?n)tj%UKj=1h_x088N{d_(bQ8iD!d;Nmj?Is+S{!&dFkH>@$ zrLLo21Z&IXGUx4fn+k;jb9H6LN2bPDNB8 zb~7$DE-^4L^m3s900JRNL_t(IPhC^nPE$b?o!;A%_7?>;DO#ai9w6~i1=IwKBtm$g zwJnrei+BA9pNvttim0g1ym+W>m$TOCG=-g<%;unWZFanq_FAruOk z%Z67!(cPL%CS!Ou91ffI=Qd2|OGiK3jj!;tS+Gbn8r5MIV=^WualW|^Cei+FA0nAd zn)+NFrh2c6NF-uP12gFFggt1#aiahhSI`<>d^T4}5;)>SUISvq%uigh< z{!k|(!N>@>(szV1sUI@;n3{sWu@}TV&(j)<#SF>X$~_iL66LIV{h_YZbybA1u4|`Y zN5W1nSwvY<9b_B=SX>1519HhrB9SnfCywpUl@)O1PsJ?TPX}i;x>PD!$bTn7?* zJ~X5;N?2AOg#UMaH$cGZo#EjN!eEi&m1+6gw-z)$5-lEzMX*RMI|q_3BLXto{|@{Q ze$c@h)yS2)Xnkrak)!X4iOlm}foBWa4p>?O6-i&D+ADESGASY_KEqivfYDKr!mgFO zm7a{HL<)>bw5xki6cMK+-4hBS@!k%$du04}@=tmkIdKuS=XvHoYUj*(5c%jW00000 LNkvXXu0mjfY&ayM literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_redwood.png b/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_redwood.png new file mode 100644 index 0000000000000000000000000000000000000000..32477dcebe1868682487eb386f13765a1b7b24c9 GIT binary patch literal 517 zcmV+g0{Z=lP)N2bPDNB8 zb~7$DE-^4L^m3s900DtXL_t(IPgRo(j>0euM8j9y50zi3)C*B4a1ao*d@kqRH+0yp zrOJstcE*!5-EOx?zm{cLjK|}&*=%Ao8WED6PNx_ShiScD$6zo>MNtTku~(q3>o2Iw z$tdoY0&lll?eF({ESJlus_K(>;&QnJ4EFndtX3;E&GS6kwp9Uf@?ek0qhe_?ndrkP zIvfrGtM~h@28;-^elZxlMx_W!1a`Zfba=g9Vn7VfD1d3|ILz=eIs@Y5$K&y#))`bS zs*4$!gJjS{L<{HyAQ%xx17e6q6ZVV6;*Wug2%z-Ff( z5drCDk=(3b3^~NR@rX^cx~}5~wUJVHOoPP_00000NkvXX Hu0mjfWVYP* literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_sacred_oak.png b/src/main/resources/assets/biomesoplenty/textures/blocks/leaves_sacred_oak.png new file mode 100644 index 0000000000000000000000000000000000000000..b7ff06f7c4fdd3d472d239498bd42e26d5019a1d GIT binary patch literal 595 zcmV-Z0<8UsP)N2bPDNB8 zb~7$DE-^7j^FlWO00GZQL_t(IPhFGW$^lUn#pf-&5D6tkiKh^zDMCt0{^iDn3r5Pd zX-kyld0ur2~q}gm*wOWeq^Aw|vkeEv;{adO5uA^j1Q%Vm9ZI-Oqy zY`7)B5GxFTM#!8wga~WMB^mE1gWS(`1I6@ySmT>1a3cY*CYeTqqq!7B z36lwsMpeL!3>)}nL?i$vnd+?R7yC>Iivj-Vv;#MrjZG#KeP^>-y~pFR3Xn)(fkG4y z0Q<$^U^<=Z8%u!k42k|Y-#vnN2bPDNB8 zb~7$DE-^4L^m3s900Iq3L_t(IPi>RiZxT@u#t*l^2L57=mj~k|Uce9vLIv@bNP2r} z`_iYjk1e#MHuciPq-rYHebAt=JMM3mvzEj!fy2!1%zWpY5A$_@U%aU&$z;+DPI_Yg zgYn04l+WdIhIfJY+Y{sc3BCdhPx^9@&kIfB@wmPKDDKwl(m%e8nhd%>B%My1t#?~u zRvW7li^WXk`XjkI$)EZ9`_?QQ*{pFtxzZ_@#XWabD=>UN2pQCF<^@_z zf=PR6NjNPVK+#po{O&dy((8N=bB^QanMfoIV!gTlOlcyN#q--w^-A+ln~>tN*;gwDsnC_%J9wuGPd&K+uCiAzC9>fPSz2 zEo4CVcB!;r44Ra$J=FN^gQ~6%q0!-DZ%=h--YE&9D`2poXn^U@&_nP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02*{fSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+qQF!XYv00043Nkl$YAbsEeDL}m4Zkm+Tl za00jSM$58xdo=_>ARc3lRuEy~^?H>x2vDcWq9}eONRAF1!2wg*<#PGo0o;DS-!&4D z9ycS$zk)R)4G^i^NF}&&AJPYCf!|0XbK#=^!P!EpBXH0(O{wj-6I6gFi--pU0#2XN eah$_J!}tTX!72c1{t`R@0000N2bPDNB8 zb~7$DE-^4L^m3s900HkwL_t(IPi>QXOH^SH#?MDcQ~#;7UH7bgg~+mtS5ni+vP94l zQ$tO>P-f+QZBa`?h004>X=9Pq{NUiS%ri?ce%E7y&)L!*| zW?nGcov+TFYgw{870T+XxcZ-7#N@|VLYgacuqT@`opI3)YBsEp! zs81p5)Ns@9{IJX)daTX8Q(uxD?Zt8K-|`Q+!RFgSwZW5`+{mWr1IN~*a+gcuQMyPU zZn)78(@8DDzVki4@VC)~z!J^yZM~M;uITY>kr)HZLouBOdeDazAZ9k880@GX*w=Vw zEIX3zZK7G|^BTe5o=C|1-jjmxt40Q@E}w~R@!e@4lW*cCI0by#KPuB;28i1W6f)%^ zIEn|x<$fv|B{Cwi#Rk(IK8IV(_4pN8d;PUz2|*CxBeJ~^k|_?*jeiQDlN~ozv{qYf zUX(}?xHVB39#`k;2V{q2TAJyd)<#anVlW2aola=NxChXVDtD(s`3tITIm_O82?_uJ N002ovPDHLkV1m~-BE$dy literal 0 HcmV?d00001