From 82fca1ce88d60af39c37a0d2af8d96004f5b3d75 Mon Sep 17 00:00:00 2001 From: Bob Date: Thu, 14 Sep 2023 23:16:53 +0200 Subject: [PATCH] even girthier smokestacks --- src/main/java/com/hbm/blocks/ModBlocks.java | 3 + .../blocks/machine/MachineChimneyBrick.java | 12 +- .../machine/MachineChimneyIndustrial.java | 54 + .../inventory/recipes/anvil/AnvilRecipes.java | 12 +- src/main/java/com/hbm/main/ClientProxy.java | 1 + .../java/com/hbm/main/ResourceManager.java | 2 + .../tileentity/RenderChimneyIndustrial.java | 56 + .../java/com/hbm/tileentity/TileMappings.java | 1 + .../machine/TileEntityChimneyBase.java | 86 ++ .../machine/TileEntityChimneyBrick.java | 97 +- .../machine/TileEntityChimneyIndustrial.java | 59 + .../TileEntityMachineAssemblerBase.java | 2 +- .../machine/TileEntityMachineChemplant.java | 4 +- .../TileEntityMachineChemplantBase.java | 4 +- src/main/resources/assets/hbm/lang/de_DE.lang | 3 + src/main/resources/assets/hbm/lang/en_US.lang | 3 + .../models/machines/chimney_industrial.obj | 1224 +++++++++++++++++ .../hbm/textures/items/powder_ash.fly.png | Bin 0 -> 288 bytes .../models/machines/chimney_industrial.png | Bin 0 -> 8033 bytes 19 files changed, 1535 insertions(+), 88 deletions(-) create mode 100644 src/main/java/com/hbm/blocks/machine/MachineChimneyIndustrial.java create mode 100644 src/main/java/com/hbm/render/tileentity/RenderChimneyIndustrial.java create mode 100644 src/main/java/com/hbm/tileentity/machine/TileEntityChimneyBase.java create mode 100644 src/main/java/com/hbm/tileentity/machine/TileEntityChimneyIndustrial.java create mode 100644 src/main/resources/assets/hbm/models/machines/chimney_industrial.obj create mode 100644 src/main/resources/assets/hbm/textures/items/powder_ash.fly.png create mode 100644 src/main/resources/assets/hbm/textures/models/machines/chimney_industrial.png diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index 868165597..f08d42a0f 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -979,6 +979,7 @@ public class ModBlocks { public static Block machine_flare; public static Block chimney_brick; + public static Block chimney_industrial; public static Block machine_refinery; public static Block machine_vacuum_distill; @@ -2238,6 +2239,7 @@ public class ModBlocks { oil_pipe = new BlockNoDrop(Material.iron).setBlockName("oil_pipe").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":oil_pipe"); machine_flare = new MachineGasFlare(Material.iron).setBlockName("machine_flare").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); chimney_brick = new MachineChimneyBrick(Material.iron).setBlockName("chimney_brick").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); + chimney_industrial = new MachineChimneyIndustrial(Material.iron).setBlockName("chimney_industrial").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":concrete_colored_ext.machine"); machine_refinery = new MachineRefinery(Material.iron).setBlockName("machine_refinery").setHardness(5.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_refinery"); machine_vacuum_distill = new MachineVacuumDistill(Material.iron).setBlockName("machine_vacuum_distill").setHardness(5.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); machine_fraction_tower = new MachineFractionTower(Material.iron).setBlockName("machine_fraction_tower").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); @@ -3323,6 +3325,7 @@ public class ModBlocks { register(machine_fracking_tower); register(machine_flare); register(chimney_brick); + register(chimney_industrial); register(machine_refinery); register(machine_vacuum_distill); register(machine_fraction_tower); diff --git a/src/main/java/com/hbm/blocks/machine/MachineChimneyBrick.java b/src/main/java/com/hbm/blocks/machine/MachineChimneyBrick.java index ab6bf4bbc..7c8f40bc2 100644 --- a/src/main/java/com/hbm/blocks/machine/MachineChimneyBrick.java +++ b/src/main/java/com/hbm/blocks/machine/MachineChimneyBrick.java @@ -1,15 +1,20 @@ package com.hbm.blocks.machine; +import java.util.List; + import com.hbm.blocks.BlockDummyable; +import com.hbm.blocks.ITooltipProvider; import com.hbm.tileentity.TileEntityProxyCombo; import com.hbm.tileentity.machine.TileEntityChimneyBrick; import net.minecraft.block.material.Material; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; -public class MachineChimneyBrick extends BlockDummyable { +public class MachineChimneyBrick extends BlockDummyable implements ITooltipProvider { public MachineChimneyBrick(Material mat) { super(mat); @@ -41,4 +46,9 @@ public class MachineChimneyBrick extends BlockDummyable { this.makeExtra(world, x + dir.offsetX * o, y, z + dir.offsetZ * o + 1); this.makeExtra(world, x + dir.offsetX * o, y, z + dir.offsetZ * o - 1); } + + @Override + public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) { + this.addStandardInfo(stack, player, list, ext); + } } diff --git a/src/main/java/com/hbm/blocks/machine/MachineChimneyIndustrial.java b/src/main/java/com/hbm/blocks/machine/MachineChimneyIndustrial.java new file mode 100644 index 000000000..036273535 --- /dev/null +++ b/src/main/java/com/hbm/blocks/machine/MachineChimneyIndustrial.java @@ -0,0 +1,54 @@ +package com.hbm.blocks.machine; + +import java.util.List; + +import com.hbm.blocks.BlockDummyable; +import com.hbm.blocks.ITooltipProvider; +import com.hbm.tileentity.TileEntityProxyCombo; +import com.hbm.tileentity.machine.TileEntityChimneyIndustrial; + +import net.minecraft.block.material.Material; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.World; +import net.minecraftforge.common.util.ForgeDirection; + +public class MachineChimneyIndustrial extends BlockDummyable implements ITooltipProvider { + + public MachineChimneyIndustrial(Material mat) { + super(mat); + } + + @Override + public TileEntity createNewTileEntity(World world, int meta) { + + if(meta >= 12) return new TileEntityChimneyIndustrial(); + if(meta >= 6) return new TileEntityProxyCombo().fluid(); + return null; + } + + @Override + public int[] getDimensions() { + return new int[] {22, 0, 1, 1, 1, 1}; + } + + @Override + public int getOffset() { + return 1; + } + + @Override + public void fillSpace(World world, int x, int y, int z, ForgeDirection dir, int o) { + super.fillSpace(world, x, y, z, dir, o); + this.makeExtra(world, x + dir.offsetX * o + 1, y, z + dir.offsetZ * o); + this.makeExtra(world, x + dir.offsetX * o - 1, y, z + dir.offsetZ * o); + this.makeExtra(world, x + dir.offsetX * o, y, z + dir.offsetZ * o + 1); + this.makeExtra(world, x + dir.offsetX * o, y, z + dir.offsetZ * o - 1); + } + + @Override + public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) { + this.addStandardInfo(stack, player, list, ext); + } +} diff --git a/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java b/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java index 607b9f289..28ad6600b 100644 --- a/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java @@ -452,10 +452,20 @@ public class AnvilRecipes { constructionRecipes.add(new AnvilConstructionRecipe( new AStack[] { new OreDictStack(STEEL.plate(), 4), - new ComparableStack(Blocks.brick_block, 16) + new ComparableStack(Blocks.brick_block, 16), + new ComparableStack(ModBlocks.steel_grate, 2) }, new AnvilOutput(new ItemStack(ModBlocks.chimney_brick))).setTier(2)); + constructionRecipes.add(new AnvilConstructionRecipe( + new AStack[] { + new OreDictStack(STEEL.plate(), 16), + new OreDictStack(ANY_CONCRETE.any(), 64), + new ComparableStack(ModBlocks.steel_grate, 4), + new ComparableStack(ModItems.filter_coal, 4) + }, + new AnvilOutput(new ItemStack(ModBlocks.chimney_industrial))).setTier(3)); + constructionRecipes.add(new AnvilConstructionRecipe( new AStack[] { new ComparableStack(ModItems.tank_steel, 1), diff --git a/src/main/java/com/hbm/main/ClientProxy.java b/src/main/java/com/hbm/main/ClientProxy.java index c9800c9a6..8272517cf 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -215,6 +215,7 @@ public class ClientProxy extends ServerProxy { ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineOilWell.class, new RenderDerrick()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineGasFlare.class, new RenderGasFlare()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityChimneyBrick.class, new RenderChimneyBrick()); + ClientRegistry.bindTileEntitySpecialRenderer(TileEntityChimneyIndustrial.class, new RenderChimneyIndustrial()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineMiningDrill.class, new RenderMiningDrill()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineMiningLaser.class, new RenderLaserMiner()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineAssembler.class, new RenderAssembler()); diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index 7a0ff4d0c..c6260e18f 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -83,6 +83,7 @@ public class ResourceManager { //Flare Stack public static final IModelCustom oilflare = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/machines/flare_stack.obj")); public static final IModelCustom chimney_brick = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/machines/chimney_brick.obj")); + public static final IModelCustom chimney_industrial = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/machines/chimney_industrial.obj")); //Tank public static final IModelCustom fluidtank = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/fluidtank.obj")); @@ -437,6 +438,7 @@ public class ResourceManager { //Flare Stack public static final ResourceLocation oilflare_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/flare_stack.png"); public static final ResourceLocation chimney_brick_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/chimney_brick.png"); + public static final ResourceLocation chimney_industrial_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/chimney_industrial.png"); //Tank public static final ResourceLocation tank_tex = new ResourceLocation(RefStrings.MODID, "textures/models/tank.png"); diff --git a/src/main/java/com/hbm/render/tileentity/RenderChimneyIndustrial.java b/src/main/java/com/hbm/render/tileentity/RenderChimneyIndustrial.java new file mode 100644 index 000000000..b29da43dd --- /dev/null +++ b/src/main/java/com/hbm/render/tileentity/RenderChimneyIndustrial.java @@ -0,0 +1,56 @@ +package com.hbm.render.tileentity; + +import org.lwjgl.opengl.GL11; + +import com.hbm.blocks.ModBlocks; +import com.hbm.main.ResourceManager; +import com.hbm.render.item.ItemRenderBase; + +import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; +import net.minecraft.item.Item; +import net.minecraft.tileentity.TileEntity; +import net.minecraftforge.client.IItemRenderer; + +public class RenderChimneyIndustrial extends TileEntitySpecialRenderer implements IItemRendererProvider { + + @Override + public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float f) { + + GL11.glPushMatrix(); + GL11.glTranslated(x + 0.5D, y, z + 0.5D); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glRotatef(180, 0F, 1F, 0F); + + GL11.glDisable(GL11.GL_CULL_FACE); + GL11.glShadeModel(GL11.GL_SMOOTH); + bindTexture(ResourceManager.chimney_industrial_tex); + ResourceManager.chimney_industrial.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + GL11.glEnable(GL11.GL_CULL_FACE); + + GL11.glPopMatrix(); + } + + @Override + public Item getItemForRenderer() { + return Item.getItemFromBlock(ModBlocks.chimney_industrial); + } + + @Override + public IItemRenderer getRenderer() { + return new ItemRenderBase() { + public void renderInventory() { + GL11.glTranslated(0, -5, 0); + GL11.glScaled(2.75, 2.75, 2.75); + } + public void renderCommon() { + GL11.glScaled(0.25, 0.25, 0.25); + GL11.glDisable(GL11.GL_CULL_FACE); + GL11.glShadeModel(GL11.GL_SMOOTH); + bindTexture(ResourceManager.chimney_industrial_tex); + ResourceManager.chimney_industrial.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + GL11.glEnable(GL11.GL_CULL_FACE); + }}; + } +} diff --git a/src/main/java/com/hbm/tileentity/TileMappings.java b/src/main/java/com/hbm/tileentity/TileMappings.java index 3274e10a2..f865030c1 100644 --- a/src/main/java/com/hbm/tileentity/TileMappings.java +++ b/src/main/java/com/hbm/tileentity/TileMappings.java @@ -329,6 +329,7 @@ public class TileMappings { put(TileEntityMachineCatalyticReformer.class, "tileentity_catalytic_reformer"); put(TileEntityMachineCoker.class, "tileentity_coker"); put(TileEntityChimneyBrick.class, "tileentity_chimney_brick"); + put(TileEntityChimneyIndustrial.class, "tileentity_chimney_industrial"); put(TileEntityReactorZirnox.class, "tileentity_zirnox"); put(TileEntityZirnoxDestroyed.class, "tileentity_zirnox_destroyed"); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityChimneyBase.java b/src/main/java/com/hbm/tileentity/machine/TileEntityChimneyBase.java new file mode 100644 index 000000000..c942a55e7 --- /dev/null +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityChimneyBase.java @@ -0,0 +1,86 @@ +package com.hbm.tileentity.machine; + +import com.hbm.handler.pollution.PollutionHandler; +import com.hbm.handler.pollution.PollutionHandler.PollutionType; +import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; +import com.hbm.inventory.fluid.tank.FluidTank; +import com.hbm.lib.Library; +import com.hbm.tileentity.INBTPacketReceiver; +import com.hbm.tileentity.TileEntityLoadedBase; + +import api.hbm.fluid.IFluidUser; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraftforge.common.util.ForgeDirection; + +public abstract class TileEntityChimneyBase extends TileEntityLoadedBase implements IFluidUser, INBTPacketReceiver { + + public int onTicks; + + @Override + public void updateEntity() { + + if(!worldObj.isRemote) { + + if(worldObj.getTotalWorldTime() % 20 == 0) { + FluidType[] types = new FluidType[] {Fluids.SMOKE, Fluids.SMOKE_LEADED, Fluids.SMOKE_POISON}; + + for(FluidType type : types) { + this.trySubscribe(type, worldObj, xCoord + 2, yCoord, zCoord, Library.POS_X); + this.trySubscribe(type, worldObj, xCoord - 2, yCoord, zCoord, Library.NEG_X); + this.trySubscribe(type, worldObj, xCoord, yCoord, zCoord + 2, Library.POS_Z); + this.trySubscribe(type, worldObj, xCoord, yCoord, zCoord - 2, Library.NEG_Z); + } + } + + NBTTagCompound data = new NBTTagCompound(); + data.setInteger("onTicks", onTicks); + INBTPacketReceiver.networkPack(this, data, 150); + + if(onTicks > 0) onTicks--; + + } else { + + if(onTicks > 0) { + this.spawnParticles(); + } + } + } + + public void spawnParticles() { } + + public void networkUnpack(NBTTagCompound nbt) { + this.onTicks = nbt.getInteger("onTicks"); + } + + @Override + public boolean canConnect(FluidType type, ForgeDirection dir) { + return (dir == ForgeDirection.NORTH || dir == ForgeDirection.SOUTH || dir == ForgeDirection.EAST || dir == ForgeDirection.WEST) && + (type == Fluids.SMOKE || type == Fluids.SMOKE_LEADED || type == Fluids.SMOKE_POISON); + } + + @Override + public long transferFluid(FluidType type, int pressure, long fluid) { + onTicks = 20; + + fluid *= getPollutionMod(); + + if(type == Fluids.SMOKE) PollutionHandler.incrementPollution(worldObj, xCoord, yCoord, zCoord, PollutionType.SOOT, fluid / 100F); + if(type == Fluids.SMOKE_LEADED) PollutionHandler.incrementPollution(worldObj, xCoord, yCoord, zCoord, PollutionType.HEAVYMETAL, fluid / 100F); + if(type == Fluids.SMOKE_POISON) PollutionHandler.incrementPollution(worldObj, xCoord, yCoord, zCoord, PollutionType.POISON, fluid / 100F); + + return 0; + } + + public abstract double getPollutionMod(); + + @Override + public long getDemand(FluidType type, int pressure) { + return 1_000_000; + } + + @Override + public FluidTank[] getAllTanks() { + return new FluidTank[] {}; + } +} diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityChimneyBrick.java b/src/main/java/com/hbm/tileentity/machine/TileEntityChimneyBrick.java index 7d636a718..5a95b31ac 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityChimneyBrick.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityChimneyBrick.java @@ -1,100 +1,35 @@ package com.hbm.tileentity.machine; -import com.hbm.handler.pollution.PollutionHandler; -import com.hbm.handler.pollution.PollutionHandler.PollutionType; -import com.hbm.inventory.fluid.FluidType; -import com.hbm.inventory.fluid.Fluids; -import com.hbm.inventory.fluid.tank.FluidTank; -import com.hbm.lib.Library; import com.hbm.main.MainRegistry; -import com.hbm.tileentity.INBTPacketReceiver; -import com.hbm.tileentity.TileEntityLoadedBase; -import api.hbm.fluid.IFluidUser; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.AxisAlignedBB; -import net.minecraftforge.common.util.ForgeDirection; -public class TileEntityChimneyBrick extends TileEntityLoadedBase implements IFluidUser, INBTPacketReceiver { - - public int onTicks; +public class TileEntityChimneyBrick extends TileEntityChimneyBase { @Override - public void updateEntity() { - - if(!worldObj.isRemote) { - - if(worldObj.getTotalWorldTime() % 20 == 0) { - FluidType[] types = new FluidType[] {Fluids.SMOKE, Fluids.SMOKE_LEADED, Fluids.SMOKE_POISON}; - - for(FluidType type : types) { - this.trySubscribe(type, worldObj, xCoord + 2, yCoord, zCoord, Library.POS_X); - this.trySubscribe(type, worldObj, xCoord - 2, yCoord, zCoord, Library.NEG_X); - this.trySubscribe(type, worldObj, xCoord, yCoord, zCoord + 2, Library.POS_Z); - this.trySubscribe(type, worldObj, xCoord, yCoord, zCoord - 2, Library.NEG_Z); - } - } - - NBTTagCompound data = new NBTTagCompound(); - data.setInteger("onTicks", onTicks); - INBTPacketReceiver.networkPack(this, data, 150); - - if(onTicks > 0) onTicks--; - - } else { - - if(onTicks > 0) { + public void spawnParticles() { - if(worldObj.getTotalWorldTime() % 2 == 0) { - NBTTagCompound fx = new NBTTagCompound(); - fx.setString("type", "tower"); - fx.setFloat("lift", 10F); - fx.setFloat("base", 0.5F); - fx.setFloat("max", 3F); - fx.setInteger("life", 250 + worldObj.rand.nextInt(50)); - fx.setInteger("color",0x404040); - fx.setDouble("posX", xCoord + 0.5); - fx.setDouble("posY", yCoord + 12); - fx.setDouble("posZ", zCoord + 0.5); - MainRegistry.proxy.effectNT(fx); - } - } + if(worldObj.getTotalWorldTime() % 2 == 0) { + NBTTagCompound fx = new NBTTagCompound(); + fx.setString("type", "tower"); + fx.setFloat("lift", 10F); + fx.setFloat("base", 0.5F); + fx.setFloat("max", 3F); + fx.setInteger("life", 250 + worldObj.rand.nextInt(50)); + fx.setInteger("color",0x404040); + fx.setDouble("posX", xCoord + 0.5); + fx.setDouble("posY", yCoord + 12); + fx.setDouble("posZ", zCoord + 0.5); + MainRegistry.proxy.effectNT(fx); } } - - public void networkUnpack(NBTTagCompound nbt) { - this.onTicks = nbt.getInteger("onTicks"); - } @Override - public boolean canConnect(FluidType type, ForgeDirection dir) { - return (dir == ForgeDirection.NORTH || dir == ForgeDirection.SOUTH || dir == ForgeDirection.EAST || dir == ForgeDirection.WEST) && - (type == Fluids.SMOKE || type == Fluids.SMOKE_LEADED || type == Fluids.SMOKE_POISON); - } - - @Override - public long transferFluid(FluidType type, int pressure, long fluid) { - onTicks = 20; - - fluid *= 0.25; - - if(type == Fluids.SMOKE) PollutionHandler.incrementPollution(worldObj, xCoord, yCoord, zCoord, PollutionType.SOOT, fluid / 100F); - if(type == Fluids.SMOKE_LEADED) PollutionHandler.incrementPollution(worldObj, xCoord, yCoord, zCoord, PollutionType.HEAVYMETAL, fluid / 100F); - if(type == Fluids.SMOKE_POISON) PollutionHandler.incrementPollution(worldObj, xCoord, yCoord, zCoord, PollutionType.POISON, fluid / 100F); - - return 0; - } - - @Override - public long getDemand(FluidType type, int pressure) { - return 1_000_000; - } - - @Override - public FluidTank[] getAllTanks() { - return new FluidTank[] {}; + public double getPollutionMod() { + return 0.25D; } AxisAlignedBB bb = null; diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityChimneyIndustrial.java b/src/main/java/com/hbm/tileentity/machine/TileEntityChimneyIndustrial.java new file mode 100644 index 000000000..abbabb942 --- /dev/null +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityChimneyIndustrial.java @@ -0,0 +1,59 @@ +package com.hbm.tileentity.machine; + +import com.hbm.main.MainRegistry; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.util.AxisAlignedBB; + +public class TileEntityChimneyIndustrial extends TileEntityChimneyBase { + + @Override + public void spawnParticles() { + + if(worldObj.getTotalWorldTime() % 2 == 0) { + NBTTagCompound fx = new NBTTagCompound(); + fx.setString("type", "tower"); + fx.setFloat("lift", 10F); + fx.setFloat("base", 0.75F); + fx.setFloat("max", 3F); + fx.setInteger("life", 250 + worldObj.rand.nextInt(50)); + fx.setInteger("color",0x404040); + fx.setDouble("posX", xCoord + 0.5); + fx.setDouble("posY", yCoord + 22); + fx.setDouble("posZ", zCoord + 0.5); + MainRegistry.proxy.effectNT(fx); + } + } + + @Override + public double getPollutionMod() { + return 0.25D; + } + + AxisAlignedBB bb = null; + + @Override + public AxisAlignedBB getRenderBoundingBox() { + + if(bb == null) { + bb = AxisAlignedBB.getBoundingBox( + xCoord - 1, + yCoord, + zCoord - 1, + xCoord + 2, + yCoord + 23, + zCoord + 2 + ); + } + + return bb; + } + + @Override + @SideOnly(Side.CLIENT) + public double getMaxRenderDistanceSquared() { + return 65536.0D; + } +} diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssemblerBase.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssemblerBase.java index aa5c7fec8..5a4bdcbbd 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssemblerBase.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssemblerBase.java @@ -213,7 +213,7 @@ public abstract class TileEntityMachineAssemblerBase extends TileEntityMachineBa } } - if(!found) return; + if(!found) break outer; } } } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemplant.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemplant.java index 3da9f3833..3a14f536b 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemplant.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemplant.java @@ -396,8 +396,8 @@ public class TileEntityMachineChemplant extends TileEntityMachineBase implements } } } - - if(!found) return; + + if(!found) break outer; } } } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemplantBase.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemplantBase.java index 99e38f3e4..5363c7e9e 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemplantBase.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemplantBase.java @@ -246,8 +246,8 @@ public abstract class TileEntityMachineChemplantBase extends TileEntityMachineBa } } } - - if(!found) return; + + if(!found) break outer; } } } diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index 682604c76..0e75f8cdf 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -3664,6 +3664,9 @@ tile.charger.name=Ladestation tile.cheater_virus.name=Geliertes Euphemium tile.cheater_virus_seed.name=Instabiler Euphemiumschrabid-Block tile.chimney_brick.name=Schornstein +tile.chimney_brick.desc=Kann mit Abgasrohren verbunden werden$Reduziert Abgas um 75%% +tile.chimney_industrial.name=Industrieschornstein +tile.chimney_industrial.desc=Kann mit Abgasrohren verbunden werden$Reduziert Abgas um 90%% tile.chlorine_gas.name=Chlorgas tile.cluster_aluminium.name=Aluminiumerzcluster tile.cluster_copper.name=Kupfererzcluster diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index ad1c176bb..ac7c7b266 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -4611,6 +4611,9 @@ tile.charger.name=Charging Station tile.cheater_virus.name=Gelid Euphemium tile.cheater_virus_seed.name=Unstable Euphemium Schrabide Block tile.chimney_brick.name=Smokestack +tile.chimney_brick.desc=Connect using exhaust pipes to polluting machines$Reduces pollution emission by 75%% +tile.chimney_industrial.name=Industrial Smokestack +tile.chimney_industrial.desc=Connect using exhaust pipes to polluting machines$Reduces pollution emission by 90%% tile.chlorine_gas.name=Chlorine Gas tile.cluster_aluminium.name=Aluminium Ore Cluster tile.cluster_copper.name=Copper Ore Cluster diff --git a/src/main/resources/assets/hbm/models/machines/chimney_industrial.obj b/src/main/resources/assets/hbm/models/machines/chimney_industrial.obj new file mode 100644 index 000000000..894620dcb --- /dev/null +++ b/src/main/resources/assets/hbm/models/machines/chimney_industrial.obj @@ -0,0 +1,1224 @@ +# Blender v2.79 (sub 0) OBJ File: 'chimney_industrial.blend' +# www.blender.org +o Plane +v -1.500000 0.000000 1.500000 +v 1.500000 0.000000 1.500000 +v -1.500000 0.000000 -1.500000 +v 1.500000 0.000000 -1.500000 +v -1.500000 2.000000 1.500000 +v 1.500000 2.000000 1.500000 +v -1.500000 2.000000 -1.500000 +v 1.500000 2.000000 -1.500000 +v 1.500000 0.875000 0.375000 +v 1.500000 0.125000 0.375000 +v 1.500000 0.875000 -0.375000 +v 1.500000 0.125000 -0.375000 +v 1.500000 0.687500 0.187500 +v 1.500000 0.312500 0.187500 +v 1.500000 0.687500 -0.187500 +v 1.500000 0.312500 -0.187500 +v 1.375000 0.875000 -0.375000 +v 1.375000 0.875000 0.375000 +v 1.375000 0.125000 0.375000 +v 1.375000 0.125000 -0.375000 +v 1.375000 0.687500 -0.187500 +v 1.375000 0.687500 0.187500 +v 1.375000 0.312500 0.187500 +v 1.375000 0.312500 -0.187500 +v -1.500000 0.875000 -0.375000 +v -1.500000 0.125000 -0.375000 +v -1.500000 0.875000 0.375000 +v -1.500000 0.125000 0.375000 +v -1.500000 0.687500 -0.187500 +v -1.500000 0.312500 -0.187500 +v -1.500000 0.687500 0.187500 +v -1.500000 0.312500 0.187500 +v -1.375000 0.875000 0.375000 +v -1.375000 0.875000 -0.375000 +v -1.375000 0.125000 -0.375000 +v -1.375000 0.125000 0.375000 +v -1.375000 0.687500 0.187500 +v -1.375000 0.687500 -0.187500 +v -1.375000 0.312500 -0.187500 +v -1.375000 0.312500 0.187500 +v 0.375000 0.875000 -1.500000 +v 0.375000 0.125000 -1.500000 +v -0.375000 0.875000 -1.500000 +v -0.375000 0.125000 -1.500000 +v 0.187500 0.687500 -1.500000 +v 0.187500 0.312500 -1.500000 +v -0.187500 0.687500 -1.500000 +v -0.187500 0.312500 -1.500000 +v -0.375000 0.875000 -1.375000 +v 0.375000 0.875000 -1.375000 +v 0.375000 0.125000 -1.375000 +v -0.375000 0.125000 -1.375000 +v -0.187500 0.687500 -1.375000 +v 0.187500 0.687500 -1.375000 +v 0.187500 0.312500 -1.375000 +v -0.187500 0.312500 -1.375000 +v -0.375000 0.875000 1.500000 +v -0.375000 0.125000 1.500000 +v 0.375000 0.875000 1.500000 +v 0.375000 0.125000 1.500000 +v -0.187500 0.687500 1.500000 +v -0.187500 0.312500 1.500000 +v 0.187500 0.687500 1.500000 +v 0.187500 0.312500 1.500000 +v 0.375000 0.875000 1.375000 +v -0.375000 0.875000 1.375000 +v -0.375000 0.125000 1.375000 +v 0.375000 0.125000 1.375000 +v 0.187500 0.687500 1.375000 +v -0.187500 0.687500 1.375000 +v -0.187500 0.312500 1.375000 +v 0.187500 0.312500 1.375000 +v 0.000000 10.000000 -1.250000 +v -0.478354 10.000000 -1.154849 +v -0.883883 10.000000 -0.883883 +v -1.154849 10.000000 -0.478354 +v -1.250000 10.000000 0.000000 +v -1.154849 10.000000 0.478354 +v -0.883883 10.000000 0.883883 +v -0.478354 10.000000 1.154849 +v -0.000000 10.000000 1.250000 +v 0.478354 10.000000 1.154850 +v 0.883883 10.000000 0.883884 +v 1.154849 10.000000 0.478354 +v 1.250000 10.000000 -0.000000 +v 1.154849 10.000000 -0.478355 +v 0.883883 10.000000 -0.883884 +v 0.478354 10.000000 -1.154850 +v 0.000000 23.000000 -1.250000 +v -0.478354 23.000000 -1.154849 +v -0.883883 23.000000 -0.883883 +v -1.154849 23.000000 -0.478354 +v -1.250000 23.000000 0.000000 +v -1.154849 23.000000 0.478354 +v -0.883883 23.000000 0.883883 +v -0.478354 23.000000 1.154849 +v -0.000000 23.000000 1.250000 +v 0.478354 23.000000 1.154850 +v 0.883883 23.000000 0.883884 +v 1.154849 23.000000 0.478354 +v 1.250000 23.000000 -0.000000 +v 1.154849 23.000000 -0.478355 +v 0.883883 23.000000 -0.883884 +v 0.478354 23.000000 -1.154850 +v -0.000000 23.000000 -1.000000 +v -0.382684 23.000000 -0.923880 +v -0.707107 23.000000 -0.707107 +v -0.923880 23.000000 -0.382683 +v -1.000000 23.000000 0.000000 +v -0.923880 23.000000 0.382684 +v -0.707107 23.000000 0.707107 +v -0.382684 23.000000 0.923880 +v -0.000000 23.000000 1.000000 +v 0.382683 23.000000 0.923880 +v 0.707107 23.000000 0.707107 +v 0.923879 23.000000 0.382684 +v 1.000000 23.000000 -0.000000 +v 0.923879 23.000000 -0.382684 +v 0.707106 23.000000 -0.707107 +v 0.382683 23.000000 -0.923880 +v -0.000000 21.000000 -1.000000 +v -0.382684 21.000000 -0.923880 +v -0.707107 21.000000 -0.707107 +v -0.923880 21.000000 -0.382683 +v -1.000000 21.000000 0.000000 +v -0.923880 21.000000 0.382684 +v -0.707107 21.000000 0.707107 +v -0.382684 21.000000 0.923880 +v -0.000000 21.000000 1.000000 +v 0.382683 21.000000 0.923880 +v 0.707107 21.000000 0.707107 +v 0.923879 21.000000 0.382684 +v 1.000000 21.000000 -0.000000 +v 0.923879 21.000000 -0.382684 +v 0.707106 21.000000 -0.707107 +v 0.382683 21.000000 -0.923880 +v 0.000000 2.000000 -1.500000 +v -0.574025 2.000000 -1.385819 +v -1.060660 2.000000 -1.060660 +v -1.385819 2.000000 -0.574025 +v -1.500000 2.000000 0.000000 +v -1.385819 2.000000 0.574025 +v -1.060660 2.000000 1.060660 +v -0.574025 2.000000 1.385819 +v -0.000000 2.000000 1.500000 +v 0.574025 2.000000 1.385819 +v 1.060660 2.000000 1.060660 +v 1.385819 2.000000 0.574025 +v 1.500000 2.000000 -0.000000 +v 1.385819 2.000000 -0.574025 +v 1.060660 2.000000 -1.060660 +v 0.574024 2.000000 -1.385820 +v -0.000000 22.500000 -1.500000 +v -0.574025 22.500000 -1.385819 +v -1.060660 22.500000 -1.060660 +v -1.385819 22.500000 -0.574025 +v -1.500000 22.500000 0.000000 +v -1.385819 22.500000 0.574025 +v -1.060660 22.500000 1.060660 +v -0.574025 22.500000 1.385819 +v -0.000000 22.500000 1.500000 +v 0.574025 22.500000 1.385819 +v 1.060660 22.500000 1.060660 +v 1.385819 22.500000 0.574025 +v 1.500000 22.500000 -0.000000 +v 1.385819 22.500000 -0.574025 +v 1.060660 22.500000 -1.060660 +v 0.574024 22.500000 -1.385820 +v 0.000000 22.500000 -1.250000 +v -0.478354 22.500000 -1.154849 +v -0.883883 22.500000 -0.883883 +v -1.154849 22.500000 -0.478354 +v -1.250000 22.500000 0.000000 +v -1.154849 22.500000 0.478354 +v -0.883883 22.500000 0.883883 +v -0.478354 22.500000 1.154849 +v -0.000000 22.500000 1.250000 +v 0.478354 22.500000 1.154850 +v 0.883883 22.500000 0.883884 +v 1.154849 22.500000 0.478354 +v 1.250000 22.500000 -0.000000 +v 1.154849 22.500000 -0.478355 +v 0.883883 22.500000 -0.883884 +v 0.478354 22.500000 -1.154850 +v 0.000000 22.000000 -1.250000 +v -0.478354 22.000000 -1.154849 +v -0.883883 22.000000 -0.883883 +v -1.154849 22.000000 -0.478354 +v -1.250000 22.000000 0.000000 +v -1.154849 22.000000 0.478354 +v -0.883883 22.000000 0.883883 +v -0.478354 22.000000 1.154849 +v -0.000000 22.000000 1.250000 +v 0.478354 22.000000 1.154850 +v 0.883883 22.000000 0.883884 +v 1.154849 22.000000 0.478354 +v 1.250000 22.000000 -0.000000 +v 1.154849 22.000000 -0.478355 +v 0.883883 22.000000 -0.883884 +v 0.478354 22.000000 -1.154850 +v -0.000000 22.250000 -1.500000 +v -0.574025 22.250000 -1.385819 +v -1.060660 22.250000 -1.060660 +v -1.385819 22.250000 -0.574025 +v -1.500000 22.250000 0.000000 +v -1.385819 22.250000 0.574025 +v -1.060660 22.250000 1.060660 +v -0.574025 22.250000 1.385819 +v -0.000000 22.250000 1.500000 +v 0.574025 22.250000 1.385819 +v 1.060660 22.250000 1.060660 +v 1.385819 22.250000 0.574025 +v 1.500000 22.250000 -0.000000 +v 1.385819 22.250000 -0.574025 +v 1.060660 22.250000 -1.060660 +v 0.574024 22.250000 -1.385820 +v -0.000000 14.250000 -1.500000 +v -0.574025 14.250000 -1.385819 +v -1.060660 14.250000 -1.060660 +v -1.385819 14.250000 -0.574025 +v -1.500000 14.250000 0.000000 +v -1.385819 14.250000 0.574025 +v -1.060660 14.250000 1.060660 +v -0.574025 14.250000 1.385819 +v -0.000000 14.250000 1.500000 +v 0.574025 14.250000 1.385819 +v 1.060660 14.250000 1.060660 +v 1.385819 14.250000 0.574025 +v 1.500000 14.250000 -0.000000 +v 1.385819 14.250000 -0.574025 +v 1.060660 14.250000 -1.060660 +v 0.574024 14.250000 -1.385820 +v 0.000000 14.250000 -1.250000 +v -0.478354 14.250000 -1.154849 +v -0.883883 14.250000 -0.883883 +v -1.154849 14.250000 -0.478354 +v -1.250000 14.250000 0.000000 +v -1.154849 14.250000 0.478354 +v -0.883883 14.250000 0.883883 +v -0.478354 14.250000 1.154849 +v -0.000000 14.250000 1.250000 +v 0.478354 14.250000 1.154850 +v 0.883883 14.250000 0.883884 +v 1.154849 14.250000 0.478354 +v 1.250000 14.250000 -0.000000 +v 1.154849 14.250000 -0.478355 +v 0.883883 14.250000 -0.883884 +v 0.478354 14.250000 -1.154850 +v 0.000000 13.750000 -1.250000 +v -0.478354 13.750000 -1.154849 +v -0.883883 13.750000 -0.883883 +v -1.154849 13.750000 -0.478354 +v -1.250000 13.750000 0.000000 +v -1.154849 13.750000 0.478354 +v -0.883883 13.750000 0.883883 +v -0.478354 13.750000 1.154849 +v -0.000000 13.750000 1.250000 +v 0.478354 13.750000 1.154850 +v 0.883883 13.750000 0.883884 +v 1.154849 13.750000 0.478354 +v 1.250000 13.750000 -0.000000 +v 1.154849 13.750000 -0.478355 +v 0.883883 13.750000 -0.883884 +v 0.478354 13.750000 -1.154850 +v -0.000000 14.000000 -1.500000 +v -0.574025 14.000000 -1.385819 +v -1.060660 14.000000 -1.060660 +v -1.385819 14.000000 -0.574025 +v -1.500000 14.000000 0.000000 +v -1.385819 14.000000 0.574025 +v -1.060660 14.000000 1.060660 +v -0.574025 14.000000 1.385819 +v -0.000000 14.000000 1.500000 +v 0.574025 14.000000 1.385819 +v 1.060660 14.000000 1.060660 +v 1.385819 14.000000 0.574025 +v 1.500000 14.000000 -0.000000 +v 1.385819 14.000000 -0.574025 +v 1.060660 14.000000 -1.060660 +v 0.574024 14.000000 -1.385820 +vt 0.272727 -0.000000 +vt -0.000000 0.129032 +vt -0.000000 -0.000000 +vt -0.000000 0.212366 +vt 0.272727 0.344086 +vt -0.000000 0.344086 +vt 0.170455 0.166667 +vt 0.272727 0.129032 +vt 0.272727 0.212366 +vt 0.102273 0.166667 +vt 0.102273 0.134409 +vt 0.039773 0.362903 +vt 0.073864 0.379032 +vt 0.039773 0.379032 +vt 0.039773 0.384409 +vt 0.073864 0.357527 +vt 0.073864 0.362903 +vt 0.000000 0.354839 +vt 0.011364 0.387097 +vt 0.000000 0.387097 +vt 0.113636 0.387097 +vt 0.102273 0.354839 +vt 0.113636 0.354839 +vt 0.022727 0.349462 +vt 0.090909 0.349462 +vt 0.102273 0.387097 +vt 0.085227 0.362903 +vt 0.090909 0.392473 +vt 0.022727 0.392473 +vt 0.011364 0.354839 +vt 0.028409 0.379032 +vt 0.090909 0.344086 +vt 0.022727 0.344086 +vt 0.022727 0.397849 +vt 0.090909 0.397849 +vt 0.085227 0.379032 +vt 0.028409 0.362903 +vt 0.039773 0.362903 +vt 0.073864 0.379032 +vt 0.039773 0.379032 +vt 0.039773 0.384409 +vt 0.073864 0.357527 +vt 0.073864 0.362903 +vt 0.000000 0.354839 +vt 0.011364 0.387097 +vt 0.000000 0.387097 +vt 0.113636 0.387097 +vt 0.102273 0.354839 +vt 0.113636 0.354839 +vt 0.022727 0.349462 +vt 0.090909 0.349462 +vt 0.102273 0.387097 +vt 0.085227 0.362903 +vt 0.090909 0.392473 +vt 0.022727 0.392473 +vt 0.011364 0.354839 +vt 0.028409 0.379032 +vt 0.090909 0.344086 +vt 0.022727 0.344086 +vt 0.022727 0.397849 +vt 0.090909 0.397849 +vt 0.085227 0.379032 +vt 0.028409 0.362903 +vt 0.039773 0.362903 +vt 0.073864 0.379032 +vt 0.039773 0.379032 +vt 0.039773 0.384409 +vt 0.073864 0.357527 +vt 0.073864 0.362903 +vt 0.000000 0.354839 +vt 0.011364 0.387097 +vt 0.000000 0.387097 +vt 0.113636 0.387097 +vt 0.102273 0.354839 +vt 0.113636 0.354839 +vt 0.022727 0.349462 +vt 0.090909 0.349462 +vt 0.085227 0.379032 +vt 0.102273 0.387097 +vt 0.090909 0.392473 +vt 0.022727 0.392473 +vt 0.028409 0.362903 +vt 0.011364 0.354839 +vt 0.090909 0.344086 +vt 0.022727 0.344086 +vt 0.022727 0.397849 +vt 0.090909 0.397849 +vt 0.039773 0.362903 +vt 0.073864 0.379032 +vt 0.039773 0.379032 +vt 0.073864 0.384409 +vt 0.039773 0.384409 +vt 0.073864 0.357527 +vt 0.073864 0.362903 +vt 0.000000 0.354839 +vt 0.011364 0.387097 +vt 0.000000 0.387097 +vt 0.113636 0.387097 +vt 0.102273 0.354839 +vt 0.113636 0.354839 +vt 0.022727 0.349462 +vt 0.090909 0.349462 +vt 0.085227 0.379032 +vt 0.102273 0.387097 +vt 0.090909 0.392473 +vt 0.022727 0.392473 +vt 0.028409 0.362903 +vt 0.011364 0.354839 +vt 0.090909 0.344086 +vt 0.022727 0.344086 +vt 0.022727 0.397849 +vt 0.090909 0.397849 +vt -0.000000 0.129032 +vt 0.102273 0.166667 +vt -0.000000 0.215054 +vt 0.170455 0.134409 +vt 0.272727 0.129032 +vt 0.272727 0.215054 +vt 0.170455 0.166667 +vt 0.102273 0.166667 +vt 0.000000 0.129032 +vt 0.102273 0.134409 +vt 0.272727 0.215054 +vt 0.000000 0.215054 +vt 0.272727 0.129032 +vt 0.170455 0.166667 +vt 0.170455 0.134409 +vt 0.102273 0.166667 +vt -0.000000 0.129032 +vt 0.102273 0.134409 +vt 0.272727 0.129032 +vt 0.170455 0.166667 +vt 0.272727 0.215054 +vt -0.000000 0.215054 +vt 0.863636 0.903226 +vt 0.823864 0.913979 +vt 0.818182 0.903226 +vt 0.778409 0.913979 +vt 0.772727 0.903226 +vt 0.727273 0.903226 +vt 0.767045 0.913979 +vt 0.732955 0.913979 +vt 0.687500 0.913979 +vt 0.681818 0.903226 +vt 0.642045 0.913979 +vt 0.636364 0.903226 +vt 0.596591 0.913979 +vt 0.590909 0.903226 +vt 0.545455 0.903226 +vt 0.585227 0.913979 +vt 0.551136 0.913979 +vt 0.500000 0.903226 +vt 0.539773 0.913979 +vt 0.505682 0.913979 +vt 0.454545 0.903226 +vt 0.494318 0.913979 +vt 0.460227 0.913979 +vt 0.409091 0.903226 +vt 0.448864 0.913979 +vt 0.414773 0.913979 +vt 0.363636 0.903226 +vt 0.403409 0.913979 +vt 0.369318 0.913979 +vt 0.323864 0.913979 +vt 0.318182 0.903226 +vt 0.278409 0.913979 +vt 0.272727 0.903226 +vt 1.000000 0.903226 +vt 0.960227 0.913979 +vt 0.954545 0.903226 +vt 0.914773 0.913979 +vt 0.909091 0.903226 +vt 0.869318 0.913979 +vt 0.026682 0.410473 +vt 0.090909 0.397887 +vt 0.181740 0.440860 +vt 0.227273 0.666667 +vt 0.204545 0.688172 +vt 0.204545 0.666667 +vt 0.227273 0.365591 +vt 0.204545 0.344086 +vt 0.227273 0.344086 +vt 0.227273 0.387097 +vt 0.204545 0.365591 +vt 0.227273 0.408602 +vt 0.204545 0.387097 +vt 0.227273 0.430108 +vt 0.204545 0.408602 +vt 0.227273 0.451613 +vt 0.204545 0.430108 +vt 0.227273 0.473118 +vt 0.204545 0.451613 +vt 0.227273 0.494624 +vt 0.204545 0.473118 +vt 0.227273 0.516129 +vt 0.204545 0.494624 +vt 0.204545 0.537634 +vt 0.204545 0.516129 +vt 0.227273 0.537634 +vt 0.204545 0.559140 +vt 0.227273 0.559140 +vt 0.204545 0.580645 +vt 0.227273 0.580645 +vt 0.204545 0.602151 +vt 0.227273 0.602151 +vt 0.204545 0.623656 +vt 0.227273 0.623656 +vt 0.204545 0.645161 +vt 0.227273 0.645161 +vt 0.227273 0.666667 +vt 0.204545 0.688172 +vt 0.204545 0.666667 +vt 0.227273 0.365591 +vt 0.204545 0.344086 +vt 0.227273 0.344086 +vt 0.227273 0.387097 +vt 0.204545 0.365591 +vt 0.227273 0.408602 +vt 0.204545 0.387097 +vt 0.227273 0.430108 +vt 0.204545 0.408602 +vt 0.227273 0.451613 +vt 0.204545 0.430108 +vt 0.227273 0.473118 +vt 0.204545 0.451613 +vt 0.227273 0.494624 +vt 0.204545 0.473118 +vt 0.227273 0.516129 +vt 0.204545 0.494624 +vt 0.204545 0.537634 +vt 0.204545 0.516129 +vt 0.227273 0.537634 +vt 0.204545 0.559140 +vt 0.227273 0.559140 +vt 0.204545 0.580645 +vt 0.227273 0.580645 +vt 0.204545 0.602151 +vt 0.227273 0.602151 +vt 0.204545 0.623656 +vt 0.227273 0.623656 +vt 0.204545 0.645161 +vt 0.227273 0.645161 +vt 0.170455 0.134409 +vt 0.073864 0.384409 +vt 0.039773 0.357527 +vt 0.073864 0.384409 +vt 0.039773 0.357527 +vt 0.073864 0.384409 +vt 0.039773 0.357527 +vt 0.085227 0.362903 +vt 0.028409 0.379032 +vt 0.039773 0.357527 +vt 0.085227 0.362903 +vt 0.028409 0.379032 +vt 0.102273 0.134409 +vt 0.170455 0.134409 +vt 0.857955 0.913979 +vt 0.812500 0.913979 +vt 0.721591 0.913979 +vt 0.676136 0.913979 +vt 0.630682 0.913979 +vt 0.357955 0.913979 +vt 0.312500 0.913979 +vt 0.994318 0.913979 +vt 0.948864 0.913979 +vt 0.903409 0.913979 +vt 0.174826 0.457305 +vt 0.155136 0.471247 +vt 0.125668 0.480563 +vt 0.090909 0.483834 +vt 0.056150 0.480563 +vt 0.026682 0.471247 +vt 0.006992 0.457305 +vt 0.000078 0.440860 +vt 0.006993 0.424415 +vt 0.056150 0.401158 +vt 0.125668 0.401158 +vt 0.155136 0.410473 +vt 0.174826 0.424415 +vt 0.227273 0.688172 +vt 0.227273 0.688172 +vt 0.363636 0.344086 +vt 0.318182 0.344086 +vt 0.727273 0.344086 +vt 0.681818 0.344086 +vt 0.409091 0.344086 +vt 0.772727 0.344086 +vt 0.454545 0.344086 +vt 0.863636 0.344086 +vt 0.818182 0.344086 +vt 0.500000 0.344086 +vt 0.909091 0.344086 +vt 0.545455 0.344086 +vt 0.954545 0.344086 +vt 0.590909 0.344086 +vt 1.000000 0.344086 +vt 0.636364 0.344086 +vt 0.272727 0.344086 +vt 0.505682 1.000000 +vt 0.914773 1.000000 +vt 0.551136 1.000000 +vt 0.960227 1.000000 +vt 0.596591 1.000000 +vt 0.278409 1.000000 +vt 0.642045 1.000000 +vt 0.323864 1.000000 +vt 0.687500 1.000000 +vt 0.369318 1.000000 +vt 0.732955 1.000000 +vt 0.414773 1.000000 +vt 0.823864 1.000000 +vt 0.778409 1.000000 +vt 0.460227 1.000000 +vt 0.869318 1.000000 +vt 0.909091 0.000000 +vt 0.954545 0.000000 +vt 0.272727 -0.000000 +vt 0.318182 -0.000000 +vt 0.363636 -0.000000 +vt 0.409091 -0.000000 +vt 0.454545 0.000000 +vt 0.545455 -0.000000 +vt 0.590909 0.000000 +vt 0.681818 0.000000 +vt 0.772727 -0.000000 +vt 0.818182 -0.000000 +vt 0.250000 0.451613 +vt 0.250000 0.645161 +vt 0.250000 0.473118 +vt 0.250000 0.666667 +vt 0.250000 0.494624 +vt 0.250000 0.344086 +vt 0.250000 0.516129 +vt 0.250000 0.365591 +vt 0.250000 0.537634 +vt 0.250000 0.387097 +vt 0.250000 0.559140 +vt 0.250000 0.408602 +vt 0.250000 0.602151 +vt 0.250000 0.580645 +vt 0.250000 0.430108 +vt 0.250000 0.623656 +vt 0.272727 0.688172 +vt 0.272727 0.666667 +vt 0.272727 0.365591 +vt 0.272727 0.344086 +vt 0.272727 0.387097 +vt 0.272727 0.408602 +vt 0.272727 0.430108 +vt 0.272727 0.451613 +vt 0.272727 0.473118 +vt 0.272727 0.516129 +vt 0.272727 0.494624 +vt 0.272727 0.537634 +vt 0.272727 0.559140 +vt 0.272727 0.580645 +vt 0.272727 0.602151 +vt 0.272727 0.623656 +vt 0.272727 0.645161 +vt 0.250000 0.451613 +vt 0.250000 0.645161 +vt 0.250000 0.473118 +vt 0.250000 0.666667 +vt 0.250000 0.494624 +vt 0.250000 0.344086 +vt 0.250000 0.516129 +vt 0.250000 0.365591 +vt 0.250000 0.537634 +vt 0.250000 0.387097 +vt 0.250000 0.559140 +vt 0.250000 0.408602 +vt 0.250000 0.602151 +vt 0.250000 0.580645 +vt 0.250000 0.430108 +vt 0.250000 0.623656 +vt 0.272727 0.688172 +vt 0.272727 0.666667 +vt 0.272727 0.365591 +vt 0.272727 0.344086 +vt 0.272727 0.387097 +vt 0.272727 0.408602 +vt 0.272727 0.430108 +vt 0.272727 0.451613 +vt 0.272727 0.473118 +vt 0.272727 0.516129 +vt 0.272727 0.494624 +vt 0.272727 0.537634 +vt 0.272727 0.559140 +vt 0.272727 0.580645 +vt 0.272727 0.602151 +vt 0.272727 0.623656 +vt 0.272727 0.645161 +vt 0.539773 1.000000 +vt 0.948864 1.000000 +vt 0.585227 1.000000 +vt 0.994318 1.000000 +vt 0.630682 1.000000 +vt 0.312500 1.000000 +vt 0.676136 1.000000 +vt 0.357955 1.000000 +vt 0.721591 1.000000 +vt 0.403409 1.000000 +vt 0.767045 1.000000 +vt 0.448864 1.000000 +vt 0.857955 1.000000 +vt 0.812500 1.000000 +vt 0.494318 1.000000 +vt 0.903409 1.000000 +vt 1.000000 0.000000 +vt 0.500000 0.000000 +vt 0.636364 0.000000 +vt 0.727273 -0.000000 +vt 0.863636 -0.000000 +vt 0.250000 0.688172 +vt 0.250000 0.688172 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 0.0000 1.0000 +vn -1.0000 0.0000 0.0000 +vn -0.7071 0.0000 0.7071 +vn -0.9239 0.0000 0.3827 +vn 0.7071 0.0000 -0.7071 +vn 0.9239 0.0000 -0.3827 +vn -0.3827 0.0000 0.9239 +vn 0.3827 0.0000 -0.9239 +vn -0.3827 0.0000 -0.9239 +vn 0.3827 0.0000 0.9239 +vn -0.7071 0.0000 -0.7071 +vn 0.7071 0.0000 0.7071 +vn -0.9239 0.0000 -0.3827 +vn 0.9239 0.0000 0.3827 +vn -0.7068 0.0312 -0.7068 +vn -0.9234 0.0312 -0.3825 +vn -0.9995 0.0312 -0.0000 +vn -0.9234 0.0312 0.3825 +vn -0.7068 0.0312 0.7068 +vn -0.3825 0.0312 0.9234 +vn -0.0000 0.0312 0.9995 +vn 0.3825 0.0312 0.9234 +vn 0.7068 0.0312 0.7068 +vn 0.9234 0.0312 0.3825 +vn 0.9995 0.0312 -0.0000 +vn 0.9234 0.0312 -0.3825 +vn 0.7068 0.0312 -0.7068 +vn 0.3825 0.0312 -0.9234 +vn -0.0000 0.0312 -0.9995 +vn -0.3825 0.0312 -0.9234 +vn -0.7071 -0.7071 -0.0000 +vn -0.6533 -0.7071 -0.2706 +vn -0.6533 -0.7071 0.2706 +vn -0.5000 -0.7071 0.5000 +vn -0.2706 -0.7071 0.6533 +vn -0.0000 -0.7071 0.7071 +vn 0.2706 -0.7071 0.6533 +vn 0.5000 -0.7071 0.5000 +vn 0.6533 -0.7071 0.2706 +vn 0.7071 -0.7071 -0.0000 +vn 0.6533 -0.7071 -0.2706 +vn 0.5000 -0.7071 -0.5000 +vn 0.2706 -0.7071 -0.6533 +vn -0.0000 -0.7071 -0.7071 +vn -0.2706 -0.7071 -0.6533 +vn -0.5000 -0.7071 -0.5000 +s off +f 3/1/1 2/2/1 1/3/1 +f 6/4/2 7/5/2 5/6/2 +f 11/7/3 4/8/3 8/9/3 +f 9/10/3 2/2/3 10/11/3 +f 9/10/3 8/9/3 6/4/3 +f 4/8/3 10/11/3 2/2/3 +f 14/12/3 15/13/3 13/14/3 +f 15/13/2 22/15/2 13/14/2 +f 14/12/1 24/16/1 16/17/1 +f 10/18/4 18/19/4 9/20/4 +f 11/21/5 20/22/5 12/23/5 +f 24/16/3 19/24/3 20/25/3 +f 17/26/3 24/27/3 20/22/3 +f 22/15/3 17/28/3 18/29/3 +f 19/30/3 22/31/3 18/19/3 +f 12/32/2 19/24/2 10/33/2 +f 9/34/1 17/28/1 11/35/1 +f 16/17/4 21/36/4 15/13/4 +f 13/14/5 23/37/5 14/12/5 +f 30/38/6 31/39/6 29/40/6 +f 31/39/2 38/41/2 29/40/2 +f 30/38/1 40/42/1 32/43/1 +f 26/44/5 34/45/5 25/46/5 +f 27/47/4 36/48/4 28/49/4 +f 40/42/6 35/50/6 36/51/6 +f 33/52/6 40/53/6 36/48/6 +f 38/41/6 33/54/6 34/55/6 +f 35/56/6 38/57/6 34/45/6 +f 28/58/2 35/50/2 26/59/2 +f 25/60/1 33/54/1 27/61/1 +f 32/43/5 37/62/5 31/39/5 +f 29/40/4 39/63/4 30/38/4 +f 46/64/4 47/65/4 45/66/4 +f 47/65/2 54/67/2 45/66/2 +f 46/64/1 56/68/1 48/69/1 +f 42/70/6 50/71/6 41/72/6 +f 43/73/3 52/74/3 44/75/3 +f 56/68/4 51/76/4 52/77/4 +f 53/78/4 52/74/4 49/79/4 +f 54/67/4 49/80/4 50/81/4 +f 55/82/4 50/71/4 51/83/4 +f 44/84/2 51/76/2 42/85/2 +f 41/86/1 49/80/1 43/87/1 +f 48/69/6 53/78/6 47/65/6 +f 45/66/3 55/82/3 46/64/3 +f 62/88/5 63/89/5 61/90/5 +f 61/90/2 69/91/2 70/92/2 +f 62/88/1 72/93/1 64/94/1 +f 58/95/3 66/96/3 57/97/3 +f 59/98/6 68/99/6 60/100/6 +f 72/93/5 67/101/5 68/102/5 +f 69/103/5 68/99/5 65/104/5 +f 70/92/5 65/105/5 66/106/5 +f 71/107/5 66/96/5 67/108/5 +f 60/109/2 67/101/2 58/110/2 +f 57/111/1 65/105/1 59/112/1 +f 64/94/3 69/103/3 63/89/3 +f 61/90/6 71/107/6 62/88/6 +f 4/113/4 41/114/4 8/115/4 +f 44/116/4 4/113/4 3/117/4 +f 41/114/4 7/118/4 8/115/4 +f 43/119/4 3/117/4 7/118/4 +f 25/120/6 3/121/6 26/122/6 +f 25/120/6 5/123/6 7/124/6 +f 1/125/6 26/122/6 3/121/6 +f 1/125/6 27/126/6 28/127/6 +f 57/128/5 1/129/5 58/130/5 +f 2/131/5 58/130/5 1/129/5 +f 59/132/5 2/131/5 6/133/5 +f 57/128/5 6/133/5 5/134/5 +f 90/135/2 105/136/2 89/137/2 +f 89/137/2 120/138/2 104/139/2 +f 103/140/2 120/141/2 119/142/2 +f 103/140/2 118/143/2 102/144/2 +f 102/144/2 117/145/2 101/146/2 +f 101/146/2 116/147/2 100/148/2 +f 99/149/2 116/150/2 115/151/2 +f 98/152/2 115/153/2 114/154/2 +f 97/155/2 114/156/2 113/157/2 +f 96/158/2 113/159/2 112/160/2 +f 95/161/2 112/162/2 111/163/2 +f 95/161/2 110/164/2 94/165/2 +f 94/165/2 109/166/2 93/167/2 +f 93/168/2 108/169/2 92/170/2 +f 92/170/2 107/171/2 91/172/2 +f 91/172/2 106/173/2 90/135/2 +f 131/174/2 133/175/2 121/176/2 +f 156/177/2 173/178/2 172/179/2 +f 158/180/2 173/181/2 157/182/2 +f 159/183/2 174/184/2 158/180/2 +f 160/185/2 175/186/2 159/183/2 +f 161/187/2 176/188/2 160/185/2 +f 162/189/2 177/190/2 161/187/2 +f 163/191/2 178/192/2 162/189/2 +f 164/193/2 179/194/2 163/191/2 +f 165/195/2 180/196/2 164/193/2 +f 165/195/2 182/197/2 181/198/2 +f 166/199/2 183/200/2 182/197/2 +f 167/201/2 184/202/2 183/200/2 +f 168/203/2 169/204/2 184/202/2 +f 153/205/2 170/206/2 169/204/2 +f 154/207/2 171/208/2 170/206/2 +f 155/209/2 172/179/2 171/208/2 +f 220/210/2 237/211/2 236/212/2 +f 222/213/2 237/214/2 221/215/2 +f 223/216/2 238/217/2 222/213/2 +f 224/218/2 239/219/2 223/216/2 +f 225/220/2 240/221/2 224/218/2 +f 226/222/2 241/223/2 225/220/2 +f 227/224/2 242/225/2 226/222/2 +f 228/226/2 243/227/2 227/224/2 +f 229/228/2 244/229/2 228/226/2 +f 229/228/2 246/230/2 245/231/2 +f 230/232/2 247/233/2 246/230/2 +f 231/234/2 248/235/2 247/233/2 +f 232/236/2 233/237/2 248/235/2 +f 217/238/2 234/239/2 233/237/2 +f 218/240/2 235/241/2 234/239/2 +f 219/242/2 236/212/2 235/241/2 +f 3/1/1 4/8/1 2/2/1 +f 6/4/2 8/9/2 7/5/2 +f 11/7/3 12/243/3 4/8/3 +f 9/10/3 6/4/3 2/2/3 +f 9/10/3 11/7/3 8/9/3 +f 4/8/3 12/243/3 10/11/3 +f 14/12/3 16/17/3 15/13/3 +f 15/13/2 21/244/2 22/15/2 +f 14/12/1 23/245/1 24/16/1 +f 10/18/4 19/30/4 18/19/4 +f 11/21/5 17/26/5 20/22/5 +f 24/16/3 23/245/3 19/24/3 +f 17/26/3 21/36/3 24/27/3 +f 22/15/3 21/244/3 17/28/3 +f 19/30/3 23/37/3 22/31/3 +f 12/32/2 20/25/2 19/24/2 +f 9/34/1 18/29/1 17/28/1 +f 16/17/4 24/27/4 21/36/4 +f 13/14/5 22/31/5 23/37/5 +f 30/38/6 32/43/6 31/39/6 +f 31/39/2 37/246/2 38/41/2 +f 30/38/1 39/247/1 40/42/1 +f 26/44/5 35/56/5 34/45/5 +f 27/47/4 33/52/4 36/48/4 +f 40/42/6 39/247/6 35/50/6 +f 33/52/6 37/62/6 40/53/6 +f 38/41/6 37/246/6 33/54/6 +f 35/56/6 39/63/6 38/57/6 +f 28/58/2 36/51/2 35/50/2 +f 25/60/1 34/55/1 33/54/1 +f 32/43/5 40/53/5 37/62/5 +f 29/40/4 38/57/4 39/63/4 +f 46/64/4 48/69/4 47/65/4 +f 47/65/2 53/248/2 54/67/2 +f 46/64/1 55/249/1 56/68/1 +f 42/70/6 51/83/6 50/71/6 +f 43/73/3 49/79/3 52/74/3 +f 56/68/4 55/249/4 51/76/4 +f 53/78/4 56/250/4 52/74/4 +f 54/67/4 53/248/4 49/80/4 +f 55/82/4 54/251/4 50/71/4 +f 44/84/2 52/77/2 51/76/2 +f 41/86/1 50/81/1 49/80/1 +f 48/69/6 56/250/6 53/78/6 +f 45/66/3 54/251/3 55/82/3 +f 62/88/5 64/94/5 63/89/5 +f 61/90/2 63/89/2 69/91/2 +f 62/88/1 71/252/1 72/93/1 +f 58/95/3 67/108/3 66/96/3 +f 59/98/6 65/104/6 68/99/6 +f 72/93/5 71/252/5 67/101/5 +f 69/103/5 72/253/5 68/99/5 +f 70/92/5 69/91/5 65/105/5 +f 71/107/5 70/254/5 66/96/5 +f 60/109/2 68/102/2 67/101/2 +f 57/111/1 66/106/1 65/105/1 +f 64/94/3 72/253/3 69/103/3 +f 61/90/6 70/254/6 71/107/6 +f 4/113/4 42/255/4 41/114/4 +f 44/116/4 42/255/4 4/113/4 +f 41/114/4 43/119/4 7/118/4 +f 43/119/4 44/116/4 3/117/4 +f 25/120/6 7/124/6 3/121/6 +f 25/120/6 27/126/6 5/123/6 +f 1/125/6 28/127/6 26/122/6 +f 1/125/6 5/123/6 27/126/6 +f 57/128/5 5/134/5 1/129/5 +f 2/131/5 60/256/5 58/130/5 +f 59/132/5 60/256/5 2/131/5 +f 57/128/5 59/132/5 6/133/5 +f 90/135/2 106/257/2 105/136/2 +f 89/137/2 105/258/2 120/138/2 +f 103/140/2 104/139/2 120/141/2 +f 103/140/2 119/259/2 118/143/2 +f 102/144/2 118/260/2 117/145/2 +f 101/146/2 117/261/2 116/147/2 +f 99/149/2 100/148/2 116/150/2 +f 98/152/2 99/149/2 115/153/2 +f 97/155/2 98/152/2 114/156/2 +f 96/158/2 97/155/2 113/159/2 +f 95/161/2 96/158/2 112/162/2 +f 95/161/2 111/262/2 110/164/2 +f 94/165/2 110/263/2 109/166/2 +f 93/168/2 109/264/2 108/169/2 +f 92/170/2 108/265/2 107/171/2 +f 91/172/2 107/266/2 106/173/2 +f 121/176/2 122/267/2 123/268/2 +f 123/268/2 124/269/2 125/270/2 +f 125/270/2 126/271/2 127/272/2 +f 127/272/2 128/273/2 129/274/2 +f 129/274/2 130/275/2 131/174/2 +f 131/174/2 132/276/2 133/175/2 +f 133/175/2 134/277/2 121/176/2 +f 134/277/2 135/278/2 121/176/2 +f 135/278/2 136/279/2 121/176/2 +f 121/176/2 123/268/2 125/270/2 +f 125/270/2 127/272/2 121/176/2 +f 127/272/2 129/274/2 121/176/2 +f 129/274/2 131/174/2 121/176/2 +f 156/177/2 157/280/2 173/178/2 +f 158/180/2 174/184/2 173/181/2 +f 159/183/2 175/186/2 174/184/2 +f 160/185/2 176/188/2 175/186/2 +f 161/187/2 177/190/2 176/188/2 +f 162/189/2 178/192/2 177/190/2 +f 163/191/2 179/194/2 178/192/2 +f 164/193/2 180/196/2 179/194/2 +f 165/195/2 181/198/2 180/196/2 +f 165/195/2 166/199/2 182/197/2 +f 166/199/2 167/201/2 183/200/2 +f 167/201/2 168/203/2 184/202/2 +f 168/203/2 153/205/2 169/204/2 +f 153/205/2 154/207/2 170/206/2 +f 154/207/2 155/209/2 171/208/2 +f 155/209/2 156/177/2 172/179/2 +f 220/210/2 221/281/2 237/211/2 +f 222/213/2 238/217/2 237/214/2 +f 223/216/2 239/219/2 238/217/2 +f 224/218/2 240/221/2 239/219/2 +f 225/220/2 241/223/2 240/221/2 +f 226/222/2 242/225/2 241/223/2 +f 227/224/2 243/227/2 242/225/2 +f 228/226/2 244/229/2 243/227/2 +f 229/228/2 245/231/2 244/229/2 +f 229/228/2 230/232/2 246/230/2 +f 230/232/2 231/234/2 247/233/2 +f 231/234/2 232/236/2 248/235/2 +f 232/236/2 217/238/2 233/237/2 +f 217/238/2 218/240/2 234/239/2 +f 218/240/2 219/242/2 235/241/2 +f 219/242/2 220/210/2 236/212/2 +s 1 +f 79/282/7 94/165/8 78/283/8 +f 87/284/9 102/144/10 86/285/10 +f 80/286/11 95/161/7 79/282/7 +f 88/287/12 103/140/9 87/284/9 +f 81/288/5 96/158/11 80/286/11 +f 74/289/13 89/137/4 73/290/4 +f 73/290/4 104/139/12 88/287/12 +f 82/291/14 97/155/5 81/288/5 +f 75/292/15 90/135/13 74/289/13 +f 83/293/16 98/152/14 82/291/14 +f 76/294/17 91/172/15 75/292/15 +f 84/295/18 99/149/16 83/293/16 +f 77/296/6 92/170/17 76/294/17 +f 85/297/3 100/148/18 84/295/18 +f 78/283/8 93/167/6 77/298/6 +f 86/285/10 101/146/3 85/297/3 +f 115/153/15 130/299/13 114/154/13 +f 108/265/18 123/300/16 107/171/16 +f 116/150/17 131/301/15 115/151/15 +f 109/264/3 124/302/18 108/169/18 +f 117/261/6 132/303/17 116/147/17 +f 110/263/10 125/304/3 109/166/3 +f 118/260/8 133/305/6 117/145/6 +f 111/262/9 126/306/10 110/164/10 +f 119/259/7 134/307/8 118/143/8 +f 112/162/12 127/308/9 111/163/9 +f 120/141/11 135/309/7 119/142/7 +f 113/159/4 128/310/12 112/160/12 +f 106/257/14 121/311/5 105/136/5 +f 105/258/5 136/312/11 120/138/11 +f 114/156/13 129/313/4 113/157/4 +f 107/266/16 122/314/14 106/173/14 +f 139/315/19 76/294/20 75/292/19 +f 140/316/20 77/296/21 76/294/20 +f 141/317/21 78/283/22 77/298/21 +f 142/318/22 79/282/23 78/283/22 +f 143/319/23 80/286/24 79/282/23 +f 144/320/24 81/288/25 80/286/24 +f 145/321/25 82/291/26 81/288/25 +f 82/291/26 147/322/27 83/293/27 +f 147/322/27 84/295/28 83/293/27 +f 148/323/28 85/297/29 84/295/28 +f 85/297/29 150/324/30 86/285/30 +f 150/324/30 87/284/31 86/285/30 +f 87/284/31 152/325/32 88/287/32 +f 152/325/32 73/290/33 88/287/32 +f 137/326/33 74/289/34 73/290/33 +f 74/289/34 139/315/19 75/292/19 +f 210/327/14 163/191/16 162/189/14 +f 203/328/15 156/177/17 155/209/15 +f 211/329/16 164/193/18 163/191/16 +f 204/330/17 157/280/6 156/177/17 +f 212/331/18 165/195/3 164/193/18 +f 205/332/6 158/180/8 157/182/6 +f 213/333/3 166/199/10 165/195/3 +f 206/334/8 159/183/7 158/180/8 +f 214/335/10 167/201/9 166/199/10 +f 207/336/7 160/185/11 159/183/7 +f 215/337/9 168/203/12 167/201/9 +f 208/338/11 161/187/5 160/185/11 +f 201/339/4 154/207/13 153/205/4 +f 216/340/12 153/205/4 168/203/12 +f 209/341/5 162/189/14 161/187/5 +f 202/342/13 155/209/15 154/207/13 +f 189/343/35 204/330/36 188/344/36 +f 190/345/37 205/332/35 189/346/35 +f 191/347/38 206/334/37 190/345/37 +f 191/347/38 208/338/39 207/336/38 +f 192/348/39 209/341/40 208/338/39 +f 193/349/40 210/327/41 209/341/40 +f 194/350/41 211/329/42 210/327/41 +f 195/351/42 212/331/43 211/329/42 +f 197/352/44 212/331/43 196/353/43 +f 198/354/45 213/333/44 197/352/44 +f 199/355/46 214/335/45 198/354/45 +f 200/356/47 215/337/46 199/355/46 +f 185/357/48 216/340/47 200/356/47 +f 186/358/49 201/339/48 185/357/48 +f 187/359/50 202/342/49 186/358/49 +f 188/344/36 203/328/50 187/359/50 +f 274/360/14 227/224/16 226/222/14 +f 267/361/15 220/210/17 219/242/15 +f 275/362/16 228/226/18 227/224/16 +f 268/363/17 221/281/6 220/210/17 +f 276/364/18 229/228/3 228/226/18 +f 269/365/6 222/213/8 221/215/6 +f 277/366/3 230/232/10 229/228/3 +f 270/367/8 223/216/7 222/213/8 +f 278/368/10 231/234/9 230/232/10 +f 271/369/7 224/218/11 223/216/7 +f 279/370/9 232/236/12 231/234/9 +f 272/371/11 225/220/5 224/218/11 +f 265/372/4 218/240/13 217/238/4 +f 280/373/12 217/238/4 232/236/12 +f 273/374/5 226/222/14 225/220/5 +f 266/375/13 219/242/15 218/240/13 +f 253/376/35 268/363/36 252/377/36 +f 254/378/37 269/365/35 253/379/35 +f 254/378/37 271/369/38 270/367/37 +f 255/380/38 272/371/39 271/369/38 +f 256/381/39 273/374/40 272/371/39 +f 257/382/40 274/360/41 273/374/40 +f 258/383/41 275/362/42 274/360/41 +f 259/384/42 276/364/43 275/362/42 +f 261/385/44 276/364/43 260/386/43 +f 262/387/45 277/366/44 261/385/44 +f 263/388/46 278/368/45 262/387/45 +f 264/389/47 279/370/46 263/388/46 +f 249/390/48 280/373/47 264/389/47 +f 250/391/49 265/372/48 249/390/48 +f 251/392/50 266/375/49 250/391/49 +f 252/377/36 267/361/50 251/392/50 +f 79/282/7 95/161/7 94/165/8 +f 87/284/9 103/140/9 102/144/10 +f 80/286/11 96/158/11 95/161/7 +f 88/287/12 104/139/12 103/140/9 +f 81/288/5 97/155/5 96/158/11 +f 74/289/13 90/135/13 89/137/4 +f 73/290/4 89/137/4 104/139/12 +f 82/291/14 98/152/14 97/155/5 +f 75/292/15 91/172/15 90/135/13 +f 83/293/16 99/149/16 98/152/14 +f 76/294/17 92/170/17 91/172/15 +f 84/295/18 100/148/18 99/149/16 +f 77/296/6 93/168/6 92/170/17 +f 85/297/3 101/146/3 100/148/18 +f 78/283/8 94/165/8 93/167/6 +f 86/285/10 102/144/10 101/146/3 +f 115/153/15 131/393/15 130/299/13 +f 108/265/18 124/394/18 123/300/16 +f 116/150/17 132/395/17 131/301/15 +f 109/264/3 125/396/3 124/302/18 +f 117/261/6 133/397/6 132/303/17 +f 110/263/10 126/398/10 125/304/3 +f 118/260/8 134/399/8 133/305/6 +f 111/262/9 127/400/9 126/306/10 +f 119/259/7 135/401/7 134/307/8 +f 112/162/12 128/402/12 127/308/9 +f 120/141/11 136/403/11 135/309/7 +f 113/159/4 129/404/4 128/310/12 +f 106/257/14 122/405/14 121/311/5 +f 105/258/5 121/406/5 136/312/11 +f 114/156/13 130/407/13 129/313/4 +f 107/266/16 123/408/16 122/314/14 +f 139/315/19 140/316/20 76/294/20 +f 140/316/20 141/409/21 77/296/21 +f 141/317/21 142/318/22 78/283/22 +f 142/318/22 143/319/23 79/282/23 +f 143/319/23 144/320/24 80/286/24 +f 144/320/24 145/321/25 81/288/25 +f 145/321/25 146/410/26 82/291/26 +f 82/291/26 146/410/26 147/322/27 +f 147/322/27 148/323/28 84/295/28 +f 148/323/28 149/411/29 85/297/29 +f 85/297/29 149/411/29 150/324/30 +f 150/324/30 151/412/31 87/284/31 +f 87/284/31 151/412/31 152/325/32 +f 152/325/32 137/326/33 73/290/33 +f 137/326/33 138/413/34 74/289/34 +f 74/289/34 138/413/34 139/315/19 +f 210/327/14 211/329/16 163/191/16 +f 203/328/15 204/330/17 156/177/17 +f 211/329/16 212/331/18 164/193/18 +f 204/330/17 205/414/6 157/280/6 +f 212/331/18 213/333/3 165/195/3 +f 205/332/6 206/334/8 158/180/8 +f 213/333/3 214/335/10 166/199/10 +f 206/334/8 207/336/7 159/183/7 +f 214/335/10 215/337/9 167/201/9 +f 207/336/7 208/338/11 160/185/11 +f 215/337/9 216/340/12 168/203/12 +f 208/338/11 209/341/5 161/187/5 +f 201/339/4 202/342/13 154/207/13 +f 216/340/12 201/339/4 153/205/4 +f 209/341/5 210/327/14 162/189/14 +f 202/342/13 203/328/15 155/209/15 +f 189/343/35 205/414/35 204/330/36 +f 190/345/37 206/334/37 205/332/35 +f 191/347/38 207/336/38 206/334/37 +f 191/347/38 192/348/39 208/338/39 +f 192/348/39 193/349/40 209/341/40 +f 193/349/40 194/350/41 210/327/41 +f 194/350/41 195/351/42 211/329/42 +f 195/351/42 196/353/43 212/331/43 +f 197/352/44 213/333/44 212/331/43 +f 198/354/45 214/335/45 213/333/44 +f 199/355/46 215/337/46 214/335/45 +f 200/356/47 216/340/47 215/337/46 +f 185/357/48 201/339/48 216/340/47 +f 186/358/49 202/342/49 201/339/48 +f 187/359/50 203/328/50 202/342/49 +f 188/344/36 204/330/36 203/328/50 +f 274/360/14 275/362/16 227/224/16 +f 267/361/15 268/363/17 220/210/17 +f 275/362/16 276/364/18 228/226/18 +f 268/363/17 269/415/6 221/281/6 +f 276/364/18 277/366/3 229/228/3 +f 269/365/6 270/367/8 222/213/8 +f 277/366/3 278/368/10 230/232/10 +f 270/367/8 271/369/7 223/216/7 +f 278/368/10 279/370/9 231/234/9 +f 271/369/7 272/371/11 224/218/11 +f 279/370/9 280/373/12 232/236/12 +f 272/371/11 273/374/5 225/220/5 +f 265/372/4 266/375/13 218/240/13 +f 280/373/12 265/372/4 217/238/4 +f 273/374/5 274/360/14 226/222/14 +f 266/375/13 267/361/15 219/242/15 +f 253/376/35 269/415/35 268/363/36 +f 254/378/37 270/367/37 269/365/35 +f 254/378/37 255/380/38 271/369/38 +f 255/380/38 256/381/39 272/371/39 +f 256/381/39 257/382/40 273/374/40 +f 257/382/40 258/383/41 274/360/41 +f 258/383/41 259/384/42 275/362/42 +f 259/384/42 260/386/43 276/364/43 +f 261/385/44 277/366/44 276/364/43 +f 262/387/45 278/368/45 277/366/44 +f 263/388/46 279/370/46 278/368/45 +f 264/389/47 280/373/47 279/370/46 +f 249/390/48 265/372/48 280/373/47 +f 250/391/49 266/375/49 265/372/48 +f 251/392/50 267/361/50 266/375/49 +f 252/377/36 268/363/36 267/361/50 diff --git a/src/main/resources/assets/hbm/textures/items/powder_ash.fly.png b/src/main/resources/assets/hbm/textures/items/powder_ash.fly.png new file mode 100644 index 0000000000000000000000000000000000000000..15e4bae5ca8174fa2bc7b5dea5b11cf20dc56d32 GIT binary patch literal 288 zcmV+*0pI?KP)3hVcYP3VPF5HEmP?00004-S<7$a-PR^oX2raxW3+v%F(de(8SjNbAW&{Cjcdj}=?fX%kr&z$+VCsqEBrmo zio|o*n#yi7I?27YnT;zukt~IrY7TCSG;e-e2CFFBeAm`M*q?}GjSR4E4raa19pxwU z&b;pr=rMVF`qY)b*E<$wXA3%_tbD_wUcXtyq!5XV?N3aWg7m%Z{Ot2yChTQ6=}WA8QIC-2j6_bK`-(po3Ox?MGBb%X^{5qw19B;$EzOHBTEN^*WDxGjoZ zg+=CHdxLp3&3w{9kB{8H)pgTaSRlkPMrB!`GFp_8CWMVYM1!#?KL}O3V}GH{6hhy# z-ShZ+wX(bNn==j=5j+o*m`S}N_CbkZP>%{v_7%P^6NzWm{_2}xDZ**IT8v?N0bejR zBG}dN@Jx$Kc!8bk7cRvL(Uwb#Fpr#dF+KggE1^*_ObU@O7Dg|@d|Zv6o>iDWBv!QT zSy&wX($&g=<*s{ysBQ4GGE+sOwz>>wyOEr!`w>x|v3x9&=i}j4bOcYJA@uxqebG)_ z+u9-*1tn z$iNYL{xqbPh|iL{>j}s0NVer=HAkd8!Id6=f=LV;^)VpqNMr2X@60jBAJH%|$!7Z5 zVM9@G!EPS$2IsQJ!dr@}K8G7^xW~6ipF6rF;CrF*Y`BTOq)JSwx6JFzjSp!X( z2L{o~Aqmg;I5pkuPZE@Gfv4P%cusw7b;ehPx9*H+wWWG`V7czu%Ht?egud?}6d7dh z7;PWuINc?l7p5UGx79V{#wdZ=J#GydsMVc0J2hFM$xn}6?r7ZXKXQZ)p;Z#l4*SEA>y-1Hb|M#z*aojiT5aWzH-uKOz?lg% zM=xUaPipq@$5adl29DFg87~dAPG}4Nu)p4^Y_PY59b60XK1;l^$)I zn?5b=9r9?uy2mI8dnzomiCD9FtunZRB@Y*Dbowd0Z6-fH-r%$Ipp27v25L}wi(YS6 z&B4N-Q?p>Y+!FO4zU*`#w7^YBVrY@7I~#851E(&UJM zM#YBdPrhw7)Acj4hQX*>edD(JxGTW7uNVv z@;kv8W5=#GJvLC6jR=)Gsaf%Ovf+jS=j%DehuKlLjieB1ApWy+xl>ebT3C|SdYK%LT4hRq4qdV^U4HXtNx>=P%&5(MysnV#MXYs{9p*Bk@r8ZH zQ$u#c_)oA~%?9Lsk2R#T&6^i0!ihrzGGO>6x`3G%X6ncqElO*mT{s)<19x~~p7?o< zGjFfwocQK-oyAEMG3~TErNh{V#-flf`;n5q&%3-d4YhTJ;_|w0TbJJ+Uzu!+HIzoA zgT?mEa*q1mb~cb5>OO6&Z^8w6^&lcZ*zPRGzQR2HlPMRu1+^+yCM8t*#n=QlEcwa_ ze^Xd0L(hODS6KLgNF;W+0U%Ft_$X#fBkxP6jBjpo*QV4&rv|H9j1)X9oL6Ku$oUk8 z`k;(Dy^v|;zY>j;SE%iySJVDliPXjLw_rOISvA$tze^*M@wLXhLXDJZ=l96Sw_+0w z-8eu=1B2CRkvP#mxoG~Dxg$Kut4x+ftqN+?B}SaK{-I3IB=G3*_^nu0YMZg4tCYCelcnxE6NJ8R?W88F!LhpYA-A3C za#d2thD+MhB7D5CN$3>tcwYpbrVu7)qpz9{DtBY8`?bW!YNqzo*Y zdW@8o&Gx3TN(D3+FtZ_8#@pWL6Y!~o3{Ir;B}5Wz?AhjMz7=Z$i=LUidE)Cr5!F8v z2Bl}|7k>VnawzXj07QpDGnL;K(0Lo&|lki@XCr<=nYsV0JdaKLy zxi8{U@(FQ>aW7xNHTGv=SU(dJ6m6_MPOF&%K9vgi8xXjsK zM`!|SJ;?V6rD>=u&MMp%>eIPZq=U5y_8VWAZck!+N_kCS?Nq%Y=cvIOEHNL)vQQ!2 zt+LD~@MHT8p@Q|;((J*Npt5|DJXOc`lg?EE(HO%0AJb%)B02!mplPdyM3Yvu4z@6! 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 literal 0 HcmV?d00001