diff --git a/changelog b/changelog index 853a298c4..64f839ba2 100644 --- a/changelog +++ b/changelog @@ -1,6 +1,26 @@ ## Changed -* Centrifuges and refineries now use analog circuits +* Updated boxducts + * All boxducts are now way cleaner, only having bolts on intersections, with straight parts only having very light seams + * Intersections now have unique textures for each size + * Copper boxducts now have a much nicer color gradient + * Exhaust pipes now have a more rusted appearance +* Added an alternate recipe for blank upgrades using integrated circuits and polymer instead of analog circuits +* Update the soyuz and orbital module recipes + * Simplified the recipes, fewer microcrafting parts + * Both now use low-density elements which are made from aluminium/titanium, fiberglass and hard plastic + * Both now make use of more advanced electronics, although in smaller numbers +* Removed the recipes for the satellite deco blocks, those will be phased out soon. Existing deco blocks can still be crafted back into functional satellites +* Moved the satellite recipes to the welder, the attachment is now welded onto the common satellite body +* Simplified the satellite recipes, adjusted cost based on utility (depth scanner, death ray and resonator are more expensive than the mapper/radar) +* CTRL + ALT view now shows the item's internal name and domain +* Adjusted Mekanism compat + * Decreased crafting complexity and time for the digiminer assembler recipe + * Replaced recipes for the wind turbine and atomic disassembler + * Added a config option for toggling Mekanism compat +* Added recipe caching to the combinator funnel, meaning it no longer has to iterate over the entire recipe list all the time for compression/automation, this should improve performance by a fair bit +* Diodes now use silicon nuggets instead of nether quartz +* Aluminium wire's coloring is now consistent with the ingot ## Fixed -* Fixed hopper IO ignoring the stack limit on arc furnaces under certain circumstances -* Fixed the watz powerplant not dropping as many HSS bolts as it should +* Fixed crash caused by PRISM updating unloaded worlds +* Hopefully fixed another crash caused by PRISM (reproduction was unreliable and sporadic, not confirmed) \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index aeb2affff..0219489fa 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,6 +1,6 @@ mod_version=1.0.27 # Empty build number makes a release type -mod_build_number=4991 +mod_build_number=5000 credits=HbMinecraft,\ \ rodolphito (explosion algorithms),\ diff --git a/src/main/java/api/hbm/energymk2/Nodespace.java b/src/main/java/api/hbm/energymk2/Nodespace.java index 3f0888859..cdc618f51 100644 --- a/src/main/java/api/hbm/energymk2/Nodespace.java +++ b/src/main/java/api/hbm/energymk2/Nodespace.java @@ -19,8 +19,8 @@ import net.minecraft.world.World; public class Nodespace { /** Contains all "NodeWorld" instances, i.e. lists of nodes existing per world */ - public static HashMap worlds = new HashMap(); - public static Set activePowerNets = new HashSet(); + public static HashMap worlds = new HashMap<>(); + public static Set activePowerNets = new HashSet<>(); public static PowerNode getNode(World world, int x, int y, int z) { NodeWorld nodeWorld = worlds.get(world); @@ -49,6 +49,9 @@ public class Nodespace { for(World world : MinecraftServer.getServer().worldServers) { NodeWorld nodes = worlds.get(world); + + if(nodes == null) + continue; for(Entry entry : nodes.nodes.entrySet()) { PowerNode node = entry.getValue(); @@ -120,7 +123,7 @@ public class Nodespace { /** Contains a map showing where each node is, a node is every spot that a cable exists at. * Instead of the old proxy system, things like substation now create multiple nodes at their connection points */ - public static HashMap nodes = new HashMap(); + public HashMap nodes = new HashMap<>(); /** Adds a node at all its positions to the nodespace */ public void pushNode(PowerNode node) { diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index 88e2f7e82..7488f693f 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -61,11 +61,6 @@ public class ModBlocks { public static Block ore_schrabidium; public static Block ore_beryllium; public static Block ore_australium; - public static Block ore_weidanium; - public static Block ore_reiium; - public static Block ore_unobtainium; - public static Block ore_daffergon; - public static Block ore_verticium; public static Block ore_rare; public static Block ore_cobalt; public static Block ore_cinnebar; @@ -983,6 +978,7 @@ public class ModBlocks { public static Block machine_electrolyser; public static Block machine_excavator; + public static Block machine_ore_slopper; public static Block machine_autosaw; public static Block machine_mining_laser; @@ -1327,11 +1323,6 @@ public class ModBlocks { basalt_tiles = new BlockGeneric(Material.rock).setBlockName("basalt_tiles").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":basalt_tiles"); ore_australium = new BlockGeneric(Material.rock).setBlockName("ore_australium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_australium"); - ore_weidanium = new BlockGeneric(Material.rock).setBlockName("ore_weidanium").setCreativeTab(null).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_weidanium"); - ore_reiium = new BlockGeneric(Material.rock).setBlockName("ore_reiium").setCreativeTab(null).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_reiium"); - ore_unobtainium = new BlockGeneric(Material.rock).setBlockName("ore_unobtainium").setCreativeTab(null).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_unobtainium"); - ore_daffergon = new BlockGeneric(Material.rock).setBlockName("ore_daffergon").setCreativeTab(null).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_daffergon"); - ore_verticium = new BlockGeneric(Material.rock).setBlockName("ore_verticium").setCreativeTab(null).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_verticium"); ore_rare = new BlockOre(Material.rock).setBlockName("ore_rare").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_rare"); ore_cobalt = new BlockOre(Material.rock).setBlockName("ore_cobalt").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_cobalt"); ore_cinnebar = new BlockOre(Material.rock).setBlockName("ore_cinnebar").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_cinnebar"); @@ -2194,6 +2185,7 @@ public class ModBlocks { machine_coker = new MachineCoker(Material.iron).setBlockName("machine_coker").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); machine_autosaw = new MachineAutosaw().setBlockName("machine_autosaw").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); machine_excavator = new MachineExcavator().setBlockName("machine_excavator").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_ore_slopper = new MachineOreSlopper().setBlockName("machine_ore_slopper").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); machine_mining_laser = new MachineMiningLaser(Material.iron).setBlockName("machine_mining_laser").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_mining_laser"); barricade = new BlockNoDrop(Material.sand).setBlockName("barricade").setHardness(1.0F).setResistance(2.5F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":barricade"); machine_assembler = new MachineAssembler(Material.iron).setBlockName("machine_assembler").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_assembler"); @@ -2394,11 +2386,6 @@ public class ModBlocks { //Rare Minerals GameRegistry.registerBlock(ore_australium, ItemOreBlock.class, ore_australium.getUnlocalizedName()); - GameRegistry.registerBlock(ore_weidanium, ItemOreBlock.class, ore_weidanium.getUnlocalizedName()); - GameRegistry.registerBlock(ore_reiium, ItemOreBlock.class, ore_reiium.getUnlocalizedName()); - GameRegistry.registerBlock(ore_unobtainium, ItemOreBlock.class, ore_unobtainium.getUnlocalizedName()); - GameRegistry.registerBlock(ore_daffergon, ItemOreBlock.class, ore_daffergon.getUnlocalizedName()); - GameRegistry.registerBlock(ore_verticium, ItemOreBlock.class, ore_verticium.getUnlocalizedName()); GameRegistry.registerBlock(ore_rare, ItemOreBlock.class, ore_rare.getUnlocalizedName()); GameRegistry.registerBlock(ore_cobalt, ore_cobalt.getUnlocalizedName()); GameRegistry.registerBlock(ore_cinnebar, ore_cinnebar.getUnlocalizedName()); @@ -3273,6 +3260,7 @@ public class ModBlocks { register(machine_coker); register(machine_autosaw); register(machine_excavator); + register(machine_ore_slopper); register(machine_mining_laser); register(barricade); register(machine_turbofan); diff --git a/src/main/java/com/hbm/blocks/generic/BlockGrate.java b/src/main/java/com/hbm/blocks/generic/BlockGrate.java index e7240b485..892f9f929 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockGrate.java +++ b/src/main/java/com/hbm/blocks/generic/BlockGrate.java @@ -110,13 +110,13 @@ public class BlockGrate extends Block implements ITooltipProvider { if(meta == 0) { // Check that the block below can fit a grate above it Block block = world.getBlock(x, y - 1, z); - AxisAlignedBB otherBB = block.getSelectedBoundingBoxFromPool(world, x, y - 1, z); + AxisAlignedBB otherBB = block.getCollisionBoundingBoxFromPool(world, x, y - 1, z); if(!block.isAir(world, x, y + 1, z) && (otherBB == null || otherBB.maxY - (double)y < -0.05)) { world.setBlockMetadataWithNotify(x, y, z, 9, 3); } } else if(meta == 7) { Block block = world.getBlock(x, y + 1, z); - AxisAlignedBB otherBB = block.getSelectedBoundingBoxFromPool(world, x, y + 1, z); + AxisAlignedBB otherBB = block.getCollisionBoundingBoxFromPool(world, x, y + 1, z); if(!block.isAir(world, x, y + 1, z) && (otherBB == null || otherBB.minY - (double)(y + 1) > 0.05)) { world.setBlockMetadataWithNotify(x, y, z, 8, 3); } @@ -133,10 +133,10 @@ public class BlockGrate extends Block implements ITooltipProvider { boolean breakIt = false; if(meta == 9) { - AxisAlignedBB otherBB = world.getBlock(x, y - 1, z).getSelectedBoundingBoxFromPool(world, x, y - 1, z); + AxisAlignedBB otherBB = world.getBlock(x, y - 1, z).getCollisionBoundingBoxFromPool(world, x, y - 1, z); breakIt = !(otherBB == null || otherBB.maxY - (double)y < -0.05); } else if(meta == 8) { - AxisAlignedBB otherBB = world.getBlock(x, y + 1, z).getSelectedBoundingBoxFromPool(world, x, y + 1, z); + AxisAlignedBB otherBB = world.getBlock(x, y + 1, z).getCollisionBoundingBoxFromPool(world, x, y + 1, z); breakIt = !(otherBB == null || otherBB.minY - (double)(y + 1) > 0.05); } diff --git a/src/main/java/com/hbm/blocks/generic/BlockSpeedyStairs.java b/src/main/java/com/hbm/blocks/generic/BlockSpeedyStairs.java index 609c66d5b..2a9bfb8d8 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockSpeedyStairs.java +++ b/src/main/java/com/hbm/blocks/generic/BlockSpeedyStairs.java @@ -3,7 +3,6 @@ package com.hbm.blocks.generic; import com.hbm.blocks.IStepTickReceiver; import com.hbm.blocks.ITooltipProvider; import net.minecraft.block.Block; -import net.minecraft.block.material.Material; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; @@ -14,28 +13,27 @@ import java.util.List; public class BlockSpeedyStairs extends BlockGenericStairs implements IStepTickReceiver, ITooltipProvider { - double speed; + double speed; - public BlockSpeedyStairs(Block block, int meta, double speed) { - super(block, meta); - this.speed = speed; - } + public BlockSpeedyStairs(Block block, int meta, double speed) { + super(block, meta); + this.speed = speed; + } - @Override - public void onPlayerStep(World world, int x, int y, int z, EntityPlayer player) { + @Override + public void onPlayerStep(World world, int x, int y, int z, EntityPlayer player) { - if(!world.isRemote) - return; + if(!world.isRemote) + return; - if(player.moveForward != 0 || player.moveStrafing != 0) { - player.motionX *= speed; - player.motionZ *= speed; - } - } + if(player.moveForward != 0 || player.moveStrafing != 0) { + player.motionX *= speed; + player.motionZ *= speed; + } + } - @Override - public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) { - list.add(EnumChatFormatting.BLUE + "Increases speed by " + (MathHelper.floor_double((speed - 1) * 100)) + "%"); - } + @Override + public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) { + list.add(EnumChatFormatting.BLUE + "Increases speed by " + (MathHelper.floor_double((speed - 1) * 100)) + "%"); + } } - diff --git a/src/main/java/com/hbm/blocks/machine/FoundryBasin.java b/src/main/java/com/hbm/blocks/machine/FoundryBasin.java index 59014be8e..d3d014d45 100644 --- a/src/main/java/com/hbm/blocks/machine/FoundryBasin.java +++ b/src/main/java/com/hbm/blocks/machine/FoundryBasin.java @@ -67,6 +67,12 @@ public class FoundryBasin extends FoundryCastingBase { this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.999F, 1.0F); //for some fucking reason setting maxY to something that isn't 1 magically fixes item collisions } + @Override + public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) { + setBlockBoundsBasedOnState(world, x, y, z); + return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ); + } + @Override @SideOnly(Side.CLIENT) public AxisAlignedBB getSelectedBoundingBoxFromPool(World world, int x, int y, int z) { diff --git a/src/main/java/com/hbm/blocks/machine/FoundryChannel.java b/src/main/java/com/hbm/blocks/machine/FoundryChannel.java index ae43ea2d9..8866bfd0f 100644 --- a/src/main/java/com/hbm/blocks/machine/FoundryChannel.java +++ b/src/main/java/com/hbm/blocks/machine/FoundryChannel.java @@ -82,6 +82,12 @@ public class FoundryChannel extends BlockContainer implements ICrucibleAcceptor } } + @Override + public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) { + setBlockBoundsBasedOnState(world, x, y, z); + return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ); + } + @Override @SideOnly(Side.CLIENT) public AxisAlignedBB getSelectedBoundingBoxFromPool(World world, int x, int y, int z) { diff --git a/src/main/java/com/hbm/blocks/machine/FoundryMold.java b/src/main/java/com/hbm/blocks/machine/FoundryMold.java index 1c3182d49..03712d0a2 100644 --- a/src/main/java/com/hbm/blocks/machine/FoundryMold.java +++ b/src/main/java/com/hbm/blocks/machine/FoundryMold.java @@ -66,6 +66,11 @@ public class FoundryMold extends FoundryCastingBase { this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F); } + @Override + public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) { + return AxisAlignedBB.getBoundingBox(x, y, z, x + 1D, y + 0.5D, z + 1D); + } + @Override @SideOnly(Side.CLIENT) public AxisAlignedBB getSelectedBoundingBoxFromPool(World world, int x, int y, int z) { diff --git a/src/main/java/com/hbm/blocks/machine/FoundryOutlet.java b/src/main/java/com/hbm/blocks/machine/FoundryOutlet.java index d62f01cb0..dfa51cf3b 100644 --- a/src/main/java/com/hbm/blocks/machine/FoundryOutlet.java +++ b/src/main/java/com/hbm/blocks/machine/FoundryOutlet.java @@ -96,6 +96,12 @@ public class FoundryOutlet extends BlockContainer implements ICrucibleAcceptor, } } + @Override + public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) { + setBlockBoundsBasedOnState(world, x, y, z); + return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ); + } + @Override @SideOnly(Side.CLIENT) public AxisAlignedBB getSelectedBoundingBoxFromPool(World world, int x, int y, int z) { diff --git a/src/main/java/com/hbm/blocks/machine/MachineOreSlopper.java b/src/main/java/com/hbm/blocks/machine/MachineOreSlopper.java new file mode 100644 index 000000000..42691c524 --- /dev/null +++ b/src/main/java/com/hbm/blocks/machine/MachineOreSlopper.java @@ -0,0 +1,37 @@ +package com.hbm.blocks.machine; + +import com.hbm.blocks.BlockDummyable; +import com.hbm.tileentity.machine.TileEntityMachineOreSlopper; + +import net.minecraft.block.material.Material; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.World; + +public class MachineOreSlopper extends BlockDummyable { + + public MachineOreSlopper() { + super(Material.iron); + } + + @Override + public TileEntity createNewTileEntity(World world, int meta) { + if(meta >= 12) return new TileEntityMachineOreSlopper(); + return null; + } + + @Override + public int[] getDimensions() { + return new int[] {3, 0, 3, 3, 1, 1}; + } + + @Override + public int getOffset() { + return 3; + } + + @Override + public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) { + return standardOpenBehavior(world, x, y, z, player, side); + } +} diff --git a/src/main/java/com/hbm/blocks/network/FluidDuctBox.java b/src/main/java/com/hbm/blocks/network/FluidDuctBox.java index f05d3733a..fb759fb93 100644 --- a/src/main/java/com/hbm/blocks/network/FluidDuctBox.java +++ b/src/main/java/com/hbm/blocks/network/FluidDuctBox.java @@ -35,7 +35,7 @@ public class FluidDuctBox extends FluidDuctBase implements IBlockMulti, ILookOve @SideOnly(Side.CLIENT) public IIcon[] iconCurveTR; @SideOnly(Side.CLIENT) public IIcon[] iconCurveBL; @SideOnly(Side.CLIENT) public IIcon[] iconCurveBR; - @SideOnly(Side.CLIENT) public IIcon[] iconJunction; + @SideOnly(Side.CLIENT) public IIcon[][] iconJunction; private static final String[] materials = new String[] { "silver", "copper", "white" }; @@ -55,7 +55,7 @@ public class FluidDuctBox extends FluidDuctBase implements IBlockMulti, ILookOve iconCurveTR = new IIcon[count]; iconCurveBL = new IIcon[count]; iconCurveBR = new IIcon[count]; - iconJunction = new IIcon[count]; + iconJunction = new IIcon[count][5]; for(int i = 0; i < count; i++) { iconStraight[i] = iconRegister.registerIcon(RefStrings.MODID + ":boxduct_" + materials[i] + "_straight"); @@ -64,7 +64,7 @@ public class FluidDuctBox extends FluidDuctBase implements IBlockMulti, ILookOve iconCurveTR[i] = iconRegister.registerIcon(RefStrings.MODID + ":boxduct_" + materials[i] + "_curve_tr"); iconCurveBL[i] = iconRegister.registerIcon(RefStrings.MODID + ":boxduct_" + materials[i] + "_curve_bl"); iconCurveBR[i] = iconRegister.registerIcon(RefStrings.MODID + ":boxduct_" + materials[i] + "_curve_br"); - iconJunction[i] = iconRegister.registerIcon(RefStrings.MODID + ":boxduct_" + materials[i] + "_junction"); + for(int j = 0; j < 5; j++) iconJunction[i][j] = iconRegister.registerIcon(RefStrings.MODID + ":boxduct_" + materials[i] + "_junction_" + j); } } @@ -83,7 +83,8 @@ public class FluidDuctBox extends FluidDuctBase implements IBlockMulti, ILookOve int mask = 0 + (pX ? 32 : 0) + (nX ? 16 : 0) + (pY ? 8 : 0) + (nY ? 4 : 0) + (pZ ? 2 : 0) + (nZ ? 1 : 0); int count = 0 + (pX ? 1 : 0) + (nX ? 1 : 0) + (pY ? 1 : 0) + (nY ? 1 : 0) + (pZ ? 1 : 0) + (nZ ? 1 : 0); - int m = rectify(world.getBlockMetadata(x, y, z)); + int meta = world.getBlockMetadata(x, y, z); + int m = rectify(meta); if((mask & 0b001111) == 0 && mask > 0) { return (side == 4 || side == 5) ? iconEnd[m] : iconStraight[m]; @@ -112,10 +113,10 @@ public class FluidDuctBox extends FluidDuctBase implements IBlockMulti, ILookOve if(nX && nZ) return side == 0 ? iconCurveTL[m] : iconCurveTL[m]; if(nX && pZ) return side == 0 ? iconCurveBL[m] : iconCurveBL[m]; - return iconJunction[m]; + return iconJunction[m][meta / 3]; } - return iconJunction[m]; + return iconJunction[m][meta / 3]; } @SideOnly(Side.CLIENT) @@ -220,6 +221,12 @@ public class FluidDuctBox extends FluidDuctBase implements IBlockMulti, ILookOve } } + @Override + public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) { + setBlockBoundsBasedOnState(world, x, y, z); + return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ); + } + @Override @SideOnly(Side.CLIENT) public AxisAlignedBB getSelectedBoundingBoxFromPool(World world, int x, int y, int z) { diff --git a/src/main/java/com/hbm/blocks/network/FluidDuctBoxExhaust.java b/src/main/java/com/hbm/blocks/network/FluidDuctBoxExhaust.java index 42a24fe85..41a081993 100644 --- a/src/main/java/com/hbm/blocks/network/FluidDuctBoxExhaust.java +++ b/src/main/java/com/hbm/blocks/network/FluidDuctBoxExhaust.java @@ -46,7 +46,7 @@ public class FluidDuctBoxExhaust extends FluidDuctBox { iconCurveTR = new IIcon[1]; iconCurveBL = new IIcon[1]; iconCurveBR = new IIcon[1]; - iconJunction = new IIcon[1]; + iconJunction = new IIcon[1][5]; iconStraight[0] = iconRegister.registerIcon(RefStrings.MODID + ":boxduct_exhaust_straight"); iconEnd[0] = iconRegister.registerIcon(RefStrings.MODID + ":boxduct_exhaust_end"); @@ -54,7 +54,7 @@ public class FluidDuctBoxExhaust extends FluidDuctBox { iconCurveTR[0] = iconRegister.registerIcon(RefStrings.MODID + ":boxduct_exhaust_curve_tr"); iconCurveBL[0] = iconRegister.registerIcon(RefStrings.MODID + ":boxduct_exhaust_curve_bl"); iconCurveBR[0] = iconRegister.registerIcon(RefStrings.MODID + ":boxduct_exhaust_curve_br"); - iconJunction[0] = iconRegister.registerIcon(RefStrings.MODID + ":boxduct_exhaust_junction"); + for(int i = 0; i < 5; i++) iconJunction[0][i] = iconRegister.registerIcon(RefStrings.MODID + ":boxduct_exhaust_junction_" + i); } public boolean canConnectTo(IBlockAccess world, int x, int y, int z, ForgeDirection dir, TileEntity tile) { diff --git a/src/main/java/com/hbm/blocks/network/FluidDuctStandard.java b/src/main/java/com/hbm/blocks/network/FluidDuctStandard.java index 8bf891a05..e482398c9 100644 --- a/src/main/java/com/hbm/blocks/network/FluidDuctStandard.java +++ b/src/main/java/com/hbm/blocks/network/FluidDuctStandard.java @@ -183,6 +183,12 @@ public class FluidDuctStandard extends FluidDuctBase implements IBlockMulti, ILo } } + @Override + public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) { + setBlockBoundsBasedOnState(world, x, y, z); + return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ); + } + @Override @SideOnly(Side.CLIENT) public AxisAlignedBB getSelectedBoundingBoxFromPool(World world, int x, int y, int z) { diff --git a/src/main/java/com/hbm/config/GeneralConfig.java b/src/main/java/com/hbm/config/GeneralConfig.java index 75c61aed1..321d349e1 100644 --- a/src/main/java/com/hbm/config/GeneralConfig.java +++ b/src/main/java/com/hbm/config/GeneralConfig.java @@ -35,6 +35,7 @@ public class GeneralConfig { public static boolean enableGuideBook = true; public static boolean enableSteamParticles = true; public static boolean enableSoundExtension = true; + public static boolean enableMekanismChanges = true; public static int hintPos = 0; public static boolean enableExpensiveMode = false; @@ -101,8 +102,9 @@ public class GeneralConfig { enableFluidContainerCompat = config.get(CATEGORY_GENERAL, "1.35_enableFluidContainerCompat", true, "If enabled, fluid containers will be oredicted and interchangable in recipes with other mods' containers, as well as TrainCraft's diesel being considered a valid diesel canister.").getBoolean(true); enableMOTD = config.get(CATEGORY_GENERAL, "1.36_enableMOTD", true, "If enabled, shows the 'Loaded mod!' chat message as well as update notifications when joining a world").getBoolean(true); enableGuideBook = config.get(CATEGORY_GENERAL, "1.37_enableGuideBook", true, "If enabled, gives players the guide book when joining the world for the first time").getBoolean(true); - enableSteamParticles = config.get(CATEGORY_GENERAL, "1.38_enableSteamParticles",true, "If disabled, auxiliary cooling towers and large cooling towers will not emit steam particles when in use.").getBoolean(true); - enableSoundExtension = config.get(CATEGORY_GENERAL, "1.39_enableSoundExtension",true, "If enabled, will change the limit for how many sounds can play at once.").getBoolean(true); + enableSteamParticles = config.get(CATEGORY_GENERAL, "1.38_enableSteamParticles", true, "If disabled, auxiliary cooling towers and large cooling towers will not emit steam particles when in use.").getBoolean(true); + enableSoundExtension = config.get(CATEGORY_GENERAL, "1.39_enableSoundExtension", true, "If enabled, will change the limit for how many sounds can play at once.").getBoolean(true); + enableMekanismChanges = config.get(CATEGORY_GENERAL, "1.40_enableMekanismChanges", true, "If enabled, will change some of Mekanism's recipes.").getBoolean(true); enableExpensiveMode = config.get(CATEGORY_GENERAL, "1.99_enableExpensiveMode", false, "It does what the name implies.").getBoolean(false); diff --git a/src/main/java/com/hbm/config/RadiationConfig.java b/src/main/java/com/hbm/config/RadiationConfig.java index 83cf7a10d..0129c534f 100644 --- a/src/main/java/com/hbm/config/RadiationConfig.java +++ b/src/main/java/com/hbm/config/RadiationConfig.java @@ -1,5 +1,8 @@ package com.hbm.config; +import com.hbm.handler.radiation.ChunkRadiationHandlerPRISM; +import com.hbm.handler.radiation.ChunkRadiationManager; + import net.minecraftforge.common.config.Configuration; public class RadiationConfig { @@ -14,6 +17,7 @@ public class RadiationConfig { public static boolean enableContamination = true; public static boolean enableChunkRads = true; + public static boolean enablePRISM = false; public static boolean disableAsbestos = false; public static boolean disableCoal = false; @@ -47,6 +51,8 @@ public class RadiationConfig { enableContamination = CommonConfig.createConfigBool(config, CATEGORY_NUKE, "RADIATION_00_enableContamination", "Toggles player contamination (and negative effects from radiation poisoning)", true); enableChunkRads = CommonConfig.createConfigBool(config, CATEGORY_NUKE, "RADIATION_01_enableChunkRads", "Toggles the world radiation system (chunk radiation only, some blocks use an AoE!)", true); + enablePRISM = CommonConfig.createConfigBool(config, CATEGORY_NUKE, "RADIATION_99_enablePRISM", "Enables the new 3D resistance-aware PRISM radiation system", false); + if(enablePRISM) ChunkRadiationManager.proxy = new ChunkRadiationHandlerPRISM(); fogCh = CommonConfig.setDef(fogCh, 20); diff --git a/src/main/java/com/hbm/crafting/ToolRecipes.java b/src/main/java/com/hbm/crafting/ToolRecipes.java index 9b9f95a4d..28652267a 100644 --- a/src/main/java/com/hbm/crafting/ToolRecipes.java +++ b/src/main/java/com/hbm/crafting/ToolRecipes.java @@ -131,6 +131,7 @@ public class ToolRecipes { CraftingManager.addShapelessAuto(new ItemStack(ModBlocks.geiger), new Object[] { ModItems.geiger_counter }); CraftingManager.addShapelessAuto(new ItemStack(ModItems.digamma_diagnostic), new Object[] { ModItems.geiger_counter, PO210.billet(), ASBESTOS.ingot() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.pollution_detector, 1), new Object[] { "SFS", "SCS", " S ", 'S', STEEL.plate(), 'F', ModItems.filter_coal, 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.VACUUM_TUBE) }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.ore_density_scanner, 1), new Object[] { "VVV", "CSC", "GGG", " S ", 'V', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.VACUUM_TUBE), 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.CAPACITOR), 'S', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.CONTROLLER_CHASSIS), 'G', GOLD.plate() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.defuser, 1), new Object[] { " PS", "P P", " P ", 'P', ANY_PLASTIC.ingot(), 'S', STEEL.plate() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.coltan_tool, 1), new Object[] { "ACA", "CXC", "ACA", 'A', ALLOY.ingot(), 'C', CINNABAR.crystal(), 'X', Items.compass }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.reacher, 1), new Object[] { "BIB", "P P", "B B", 'B', W.bolt(), 'I', W.ingot(), 'P', ANY_RUBBER.ingot() }); diff --git a/src/main/java/com/hbm/entity/EntityMappings.java b/src/main/java/com/hbm/entity/EntityMappings.java index 28832b449..6654eb051 100644 --- a/src/main/java/com/hbm/entity/EntityMappings.java +++ b/src/main/java/com/hbm/entity/EntityMappings.java @@ -126,8 +126,6 @@ public class EntityMappings { addEntity(EntityMissileMicro.class, "entity_missile_micronuclear", 1000); addEntity(EntityCloudSolinium.class, "entity_cloud_rainbow", 1000); addEntity(EntityRagingVortex.class, "entity_raging_vortex", 250); - addEntity(EntityCarrier.class, "entity_missile_carrier", 1000); - addEntity(EntityBooster.class, "entity_missile_booster", 1000); addEntity(EntityModBeam.class, "entity_beam_bang", 1000); addEntity(EntityMissileBHole.class, "entity_missile_blackhole", 1000); addEntity(EntityMissileSchrabidium.class, "entity_missile_schrabidium", 1000); diff --git a/src/main/java/com/hbm/entity/missile/EntityBooster.java b/src/main/java/com/hbm/entity/missile/EntityBooster.java deleted file mode 100644 index 5ddb30ae8..000000000 --- a/src/main/java/com/hbm/entity/missile/EntityBooster.java +++ /dev/null @@ -1,100 +0,0 @@ -package com.hbm.entity.missile; - -import com.hbm.entity.particle.EntityTSmokeFX; -import com.hbm.explosion.ExplosionLarge; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.entity.projectile.EntityThrowable; -import net.minecraft.init.Blocks; -import net.minecraft.util.MathHelper; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -public class EntityBooster extends EntityThrowable { - - public EntityBooster(World p_i1582_1_) { - super(p_i1582_1_); - this.ignoreFrustumCheck = true; - } - - @Override - public void onUpdate() { - this.prevPosX = this.posX; - this.prevPosY = this.posY; - this.prevPosZ = this.posZ; - - this.posX += this.motionX; - this.posY += this.motionY; - this.posZ += this.motionZ; - - this.motionY -= 0.015; - - if(motionY < -1.5F) - motionY = -1.5F; - - this.rotation(); - - if(this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.air) - { - if(!this.worldObj.isRemote) - { - ExplosionLarge.explodeFire(worldObj, posX, posY, posZ, 10F, true, false, true); - } - this.setDead(); - } - - if(!worldObj.isRemote) { - for(int i = 0; i < 2; i++) { - EntityTSmokeFX fx1 = new EntityTSmokeFX(worldObj); - fx1.posY = posY - 0.25D; - fx1.posX = posX + rand.nextGaussian() * 0.25D; - fx1.posZ = posZ + rand.nextGaussian() * 0.25D; - fx1.motionY = -0.2D; - - worldObj.spawnEntityInWorld(fx1); - } - } - - this.motionX *= 0.995; - this.motionZ *= 0.995; - } - - protected void rotation() { - float f2 = MathHelper.sqrt_double(this.motionX * this.motionX + this.motionZ * this.motionZ); - this.rotationYaw = (float)(Math.atan2(this.motionX, this.motionZ) * 180.0D / Math.PI); - - for (this.rotationPitch = (float)(Math.atan2(this.motionY, f2) * 180.0D / Math.PI) - 90; this.rotationPitch - this.prevRotationPitch < -180.0F; this.prevRotationPitch -= 360.0F) - { - ; - } - - while (this.rotationPitch - this.prevRotationPitch >= 180.0F) - { - this.prevRotationPitch += 360.0F; - } - - while (this.rotationYaw - this.prevRotationYaw < -180.0F) - { - this.prevRotationYaw -= 360.0F; - } - - while (this.rotationYaw - this.prevRotationYaw >= 180.0F) - { - this.prevRotationYaw += 360.0F; - } - } - - @Override - protected void onImpact(MovingObjectPosition p_70184_1_) { - - } - - @Override - @SideOnly(Side.CLIENT) - public boolean isInRangeToRenderDist(double distance) - { - return distance < 500000; - } - -} diff --git a/src/main/java/com/hbm/entity/missile/EntityCarrier.java b/src/main/java/com/hbm/entity/missile/EntityCarrier.java deleted file mode 100644 index 89ec901d8..000000000 --- a/src/main/java/com/hbm/entity/missile/EntityCarrier.java +++ /dev/null @@ -1,178 +0,0 @@ -package com.hbm.entity.missile; - -import com.hbm.explosion.ExplosionLarge; -import com.hbm.items.ISatChip; -import com.hbm.items.ModItems; -import com.hbm.main.MainRegistry; -import com.hbm.packet.AuxParticlePacketNT; -import com.hbm.packet.PacketDispatcher; -import com.hbm.saveddata.satellites.Satellite; - -import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.projectile.EntityThrowable; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; - -public class EntityCarrier extends EntityThrowable { - - double acceleration = 0.00D; - - private ItemStack payload; - - public EntityCarrier(World p_i1582_1_) { - super(p_i1582_1_); - this.ignoreFrustumCheck = true; - this.setSize(3.0F, 26.0F); - } - - @Override - public void onUpdate() { - - //this.setDead(); - - if(motionY < 3.0D) { - acceleration += 0.0005D; - motionY += acceleration; - } - - this.setLocationAndAngles(posX + this.motionX, posY + this.motionY, posZ + this.motionZ, 0, 0); - - if(!worldObj.isRemote) { - for(int i = 0; i < 10; i++) { - NBTTagCompound data = new NBTTagCompound(); - data.setString("type", "gasfire"); - data.setDouble("mY", -0.2D); - PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(data, posX + rand.nextGaussian() * 0.75D, posY - 0.25D, posZ + rand.nextGaussian() * 0.75D), new TargetPoint(worldObj.provider.dimensionId, posX, posY, posZ, 200)); - } - - if(this.dataWatcher.getWatchableObjectInt(8) == 1) - for(int i = 0; i < 2; i++) { - NBTTagCompound d1 = new NBTTagCompound(); - d1.setString("type", "gasfire"); - d1.setDouble("mY", -0.2D); - PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(d1, posX + rand.nextGaussian() * 0.75D + 2.5, posY - 0.25D, posZ + rand.nextGaussian() * 0.75D), new TargetPoint(worldObj.provider.dimensionId, posX, posY, posZ, 200)); - - NBTTagCompound d2 = new NBTTagCompound(); - d2.setString("type", "gasfire"); - d2.setDouble("mY", -0.2D); - PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(d2, posX + rand.nextGaussian() * 0.75D - 2.5, posY - 0.25D, posZ + rand.nextGaussian() * 0.75D), new TargetPoint(worldObj.provider.dimensionId, posX, posY, posZ, 200)); - - NBTTagCompound d3 = new NBTTagCompound(); - d3.setString("type", "gasfire"); - d3.setDouble("mY", -0.2D); - PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(d3, posX + rand.nextGaussian() * 0.75D, posY - 0.25D, posZ + rand.nextGaussian() * 0.75D + 2.5), new TargetPoint(worldObj.provider.dimensionId, posX, posY, posZ, 200)); - - NBTTagCompound d4 = new NBTTagCompound(); - d4.setString("type", "gasfire"); - d4.setDouble("mY", -0.2D); - PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(d4, posX + rand.nextGaussian() * 0.75D, posY - 0.25D, posZ + rand.nextGaussian() * 0.75D - 2.5), new TargetPoint(worldObj.provider.dimensionId, posX, posY, posZ, 200)); - } - - - if(this.ticksExisted < 20) { - ExplosionLarge.spawnShock(worldObj, posX, posY, posZ, 13 + rand.nextInt(3), 4 + rand.nextGaussian() * 2); - } - } - - if(this.posY > 300 && this.dataWatcher.getWatchableObjectInt(8) == 1) - this.disengageBoosters(); - //this.setDead(); - - if(this.posY > 600) { - deployPayload(); - } - } - - private void deployPayload() { - - if(payload != null) { - - if(payload.getItem() == ModItems.flame_pony) { - ExplosionLarge.spawnTracers(worldObj, posX, posY, posZ, 25); - for(Object p : worldObj.playerEntities) - ((EntityPlayer)p).triggerAchievement(MainRegistry.achSpace); - } - - if(payload.getItem() == ModItems.sat_foeq) { - for(Object p : worldObj.playerEntities) - ((EntityPlayer)p).triggerAchievement(MainRegistry.achFOEQ); - } - - if(payload.getItem() instanceof ISatChip) { - - int freq = ISatChip.getFreqS(payload); - - Satellite.orbit(worldObj, Satellite.getIDFromItem(payload.getItem()), freq, posX, posY, posZ); - } - } - - this.setDead(); - } - - @Override - protected void entityInit() { - this.dataWatcher.addObject(8, 1); - } - - public void setPayload(ItemStack stack) { - this.payload = stack.copy(); - } - - private void disengageBoosters() { - this.dataWatcher.updateObject(8, 0); - - if(!worldObj.isRemote) { - EntityBooster boost1 = new EntityBooster(worldObj); - boost1.posX = posX + 1.5D; - boost1.posY = posY; - boost1.posZ = posZ; - boost1.motionX = 0.45D + rand.nextDouble() * 0.2D; - boost1.motionY = motionY; - boost1.motionZ = rand.nextGaussian() * 0.1D; - worldObj.spawnEntityInWorld(boost1); - - EntityBooster boost2 = new EntityBooster(worldObj); - boost2.posX = posX - 1.5D; - boost2.posY = posY; - boost2.posZ = posZ; - boost2.motionX = -0.45D - rand.nextDouble() * 0.2D; - boost2.motionY = motionY; - boost2.motionZ = rand.nextGaussian() * 0.1D; - worldObj.spawnEntityInWorld(boost2); - - EntityBooster boost3 = new EntityBooster(worldObj); - boost3.posX = posX; - boost3.posY = posY; - boost3.posZ = posZ + 1.5D; - boost3.motionZ = 0.45D + rand.nextDouble() * 0.2D; - boost3.motionY = motionY; - boost3.motionX = rand.nextGaussian() * 0.1D; - worldObj.spawnEntityInWorld(boost3); - - EntityBooster boost4 = new EntityBooster(worldObj); - boost4.posX = posX; - boost4.posY = posY; - boost4.posZ = posZ - 1.5D; - boost4.motionZ = -0.45D - rand.nextDouble() * 0.2D; - boost4.motionY = motionY; - boost4.motionX = rand.nextGaussian() * 0.1D; - worldObj.spawnEntityInWorld(boost4); - } - } - - @Override - protected void onImpact(MovingObjectPosition p_70184_1_) { - } - - @Override - @SideOnly(Side.CLIENT) - public boolean isInRangeToRenderDist(double distance) - { - return distance < 500000; - } -} diff --git a/src/main/java/com/hbm/handler/nei/CyclotronRecipeHandler.java b/src/main/java/com/hbm/handler/nei/CyclotronRecipeHandler.java index 51b0a6b6f..bdc9a3954 100644 --- a/src/main/java/com/hbm/handler/nei/CyclotronRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/CyclotronRecipeHandler.java @@ -120,7 +120,7 @@ public class CyclotronRecipeHandler extends TemplateRecipeHandler implements ICo guiGui = new LinkedList>(); transferRects.add(new RecipeTransferRect(new Rectangle(83 - 3 + 16 - 52, 5 + 18 + 1, 24, 18), "cyclotronProcessing")); - transferRectsGui.add(new RecipeTransferRect(new Rectangle(47, 15, 36, 36), "cyclotronProcessing")); + transferRectsGui.add(new RecipeTransferRect(new Rectangle(48 - 5, 27 - 11, 34, 34), "cyclotronProcessing")); guiGui.add(GUIMachineCyclotron.class); RecipeTransferRectHandler.registerRectsToGuis(getRecipeTransferRectGuis(), transferRects); RecipeTransferRectHandler.registerRectsToGuis(guiGui, transferRectsGui); diff --git a/src/main/java/com/hbm/handler/nei/NEIUniversalHandler.java b/src/main/java/com/hbm/handler/nei/NEIUniversalHandler.java index 776755b75..df241808f 100644 --- a/src/main/java/com/hbm/handler/nei/NEIUniversalHandler.java +++ b/src/main/java/com/hbm/handler/nei/NEIUniversalHandler.java @@ -11,6 +11,7 @@ import java.util.List; import java.util.Map.Entry; import com.hbm.handler.imc.ICompatNHNEI; +import com.hbm.items.ModItems; import com.hbm.lib.RefStrings; import com.hbm.util.InventoryUtil; @@ -243,9 +244,13 @@ public abstract class NEIUniversalHandler extends TemplateRecipeHandler implemen if(outputId.equals(getKey())) { - for(Entry recipe : recipes.entrySet()) { + outer: for(Entry recipe : recipes.entrySet()) { ItemStack[][] ins = InventoryUtil.extractObject(recipe.getKey()); ItemStack[][] outs = InventoryUtil.extractObject(recipe.getValue()); + + for(ItemStack[] array : ins) for(ItemStack stack : array) if(stack.getItem() == ModItems.item_secret) continue outer; + for(ItemStack[] array : outs) for(ItemStack stack : array) if(stack.getItem() == ModItems.item_secret) continue outer; + this.arecipes.add(new RecipeSet(ins, outs, recipe.getKey())); } @@ -257,10 +262,13 @@ public abstract class NEIUniversalHandler extends TemplateRecipeHandler implemen @Override public void loadCraftingRecipes(ItemStack result) { - for(Entry recipe : recipes.entrySet()) { + outer: for(Entry recipe : recipes.entrySet()) { ItemStack[][] ins = InventoryUtil.extractObject(recipe.getKey()); ItemStack[][] outs = InventoryUtil.extractObject(recipe.getValue()); + for(ItemStack[] array : ins) for(ItemStack stack : array) if(stack.getItem() == ModItems.item_secret) continue outer; + for(ItemStack[] array : outs) for(ItemStack stack : array) if(stack.getItem() == ModItems.item_secret) continue outer; + match: for(ItemStack[] array : outs) { for(ItemStack stack : array) { @@ -285,10 +293,13 @@ public abstract class NEIUniversalHandler extends TemplateRecipeHandler implemen @Override public void loadUsageRecipes(ItemStack ingredient) { - for(Entry recipe : recipes.entrySet()) { + outer: for(Entry recipe : recipes.entrySet()) { ItemStack[][] ins = InventoryUtil.extractObject(recipe.getKey()); ItemStack[][] outs = InventoryUtil.extractObject(recipe.getValue()); + for(ItemStack[] array : ins) for(ItemStack stack : array) if(stack.getItem() == ModItems.item_secret) continue outer; + for(ItemStack[] array : outs) for(ItemStack stack : array) if(stack.getItem() == ModItems.item_secret) continue outer; + match: for(ItemStack[] array : ins) { for(ItemStack stack : array) { diff --git a/src/main/java/com/hbm/handler/radiation/ChunkRadiationHandlerPRISM.java b/src/main/java/com/hbm/handler/radiation/ChunkRadiationHandlerPRISM.java index 96a1bc9fa..861d029db 100644 --- a/src/main/java/com/hbm/handler/radiation/ChunkRadiationHandlerPRISM.java +++ b/src/main/java/com/hbm/handler/radiation/ChunkRadiationHandlerPRISM.java @@ -3,6 +3,7 @@ package com.hbm.handler.radiation; import java.util.HashMap; import java.util.Iterator; import java.util.Map.Entry; +import java.util.concurrent.ConcurrentHashMap; import com.hbm.lib.Library; @@ -11,8 +12,10 @@ import net.minecraft.block.material.Material; import net.minecraft.util.MathHelper; import net.minecraft.world.ChunkCoordIntPair; import net.minecraft.world.World; +import net.minecraft.world.WorldServer; import net.minecraft.world.chunk.Chunk; import net.minecraft.world.chunk.storage.ExtendedBlockStorage; +import net.minecraftforge.common.DimensionManager; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.event.world.ChunkDataEvent; import net.minecraftforge.event.world.ChunkEvent; @@ -42,7 +45,8 @@ import net.minecraftforge.event.world.WorldEvent; */ public class ChunkRadiationHandlerPRISM extends ChunkRadiationHandler { - private HashMap perWorld = new HashMap(); + public ConcurrentHashMap perWorld = new ConcurrentHashMap(); + public static int cycles = 0; public static final float MAX_RADIATION = 1_000_000; private static final String NBT_KEY_CHUNK_RADIATION = "hfr_prism_radiation_"; @@ -141,15 +145,17 @@ public class ChunkRadiationHandlerPRISM extends ChunkRadiationHandler { RadPerWorld radWorld = perWorld.get(event.world); if(radWorld != null) { SubChunk[] chunk = radWorld.radiation.get(event.getChunk().getChunkCoordIntPair()); - for(int i = 0; i < 16; i++) { - SubChunk sub = chunk[i]; - if(sub != null) { - float rad = sub.radiation; - event.getData().setFloat(NBT_KEY_CHUNK_RADIATION + i, rad); - for(int j = 0; j < 16; j++) event.getData().setFloat(NBT_KEY_CHUNK_RESISTANCE + "x_" + j + "_" + i, sub.xResist[j]); - for(int j = 0; j < 16; j++) event.getData().setFloat(NBT_KEY_CHUNK_RESISTANCE + "y_" + j + "_" + i, sub.yResist[j]); - for(int j = 0; j < 16; j++) event.getData().setFloat(NBT_KEY_CHUNK_RESISTANCE + "z_" + j + "_" + i, sub.zResist[j]); - event.getData().setBoolean(NBT_KEY_CHUNK_EXISTS + i, true); + if(chunk != null) { + for(int i = 0; i < 16; i++) { + SubChunk sub = chunk[i]; + if(sub != null) { + float rad = sub.radiation; + event.getData().setFloat(NBT_KEY_CHUNK_RADIATION + i, rad); + for(int j = 0; j < 16; j++) event.getData().setFloat(NBT_KEY_CHUNK_RESISTANCE + "x_" + j + "_" + i, sub.xResist[j]); + for(int j = 0; j < 16; j++) event.getData().setFloat(NBT_KEY_CHUNK_RESISTANCE + "y_" + j + "_" + i, sub.yResist[j]); + for(int j = 0; j < 16; j++) event.getData().setFloat(NBT_KEY_CHUNK_RESISTANCE + "z_" + j + "_" + i, sub.zResist[j]); + event.getData().setBoolean(NBT_KEY_CHUNK_EXISTS + i, true); + } } } } @@ -161,23 +167,66 @@ public class ChunkRadiationHandlerPRISM extends ChunkRadiationHandler { if(!event.world.isRemote) { RadPerWorld radWorld = perWorld.get(event.world); if(radWorld != null) { - radWorld.radiation.remove(event.getChunk()); + radWorld.radiation.remove(event.getChunk().getChunkCoordIntPair()); } } } + + public static final HashMap newAdditions = new HashMap(); @Override public void updateSystem() { - for(Entry entries : perWorld.entrySet()) { - World world = entries.getKey(); - RadPerWorld system = entries.getValue(); + cycles++; + + for(WorldServer world : DimensionManager.getWorlds()) { //only updates loaded worlds + + RadPerWorld system = perWorld.get(world); + if(system == null) continue; + + int rebuildAllowance = 25; //it would be way to expensive to replace the sub-chunks entirely like with the old system //(that only used floats anyway...) so instead we shift the radiation into the prev value - for(Entry chunk : system.radiation.entrySet()) for(SubChunk sub : chunk.getValue()) if(sub != null) { - sub.prevRadiation = sub.radiation; - sub.radiation = 0; + for(Entry chunk : system.radiation.entrySet()) { + ChunkCoordIntPair coord = chunk.getKey(); + + for(int i = 0; i < 16; i++) { + + SubChunk sub = chunk.getValue()[i]; + + boolean hasTriedRebuild = false; + + if(sub != null) { + sub.prevRadiation = sub.radiation; + sub.radiation = 0; + + //process some chunks that need extra rebuilding + if(rebuildAllowance > 0 && sub.needsRebuild) { + sub.rebuild(world, coord.chunkXPos << 4, i << 4, coord.chunkZPos << 4); + if(!sub.needsRebuild) { + rebuildAllowance--; + hasTriedRebuild = true; + } + } + + if(!hasTriedRebuild && Math.abs(coord.chunkXPos * coord.chunkZPos) % 5 == cycles % 5 && world.getChunkProvider().chunkExists(coord.chunkXPos, coord.chunkZPos)) { + + Chunk c = world.getChunkFromChunkCoords(coord.chunkXPos, coord.chunkZPos); + ExtendedBlockStorage[] xbs = c.getBlockStorageArray(); + ExtendedBlockStorage subChunk = xbs[i]; + int checksum = 0; + + if(subChunk != null) { + for(int iX = 0; iX < 16; iX++) for(int iY = 0; iY < 16; iY ++) for(int iZ = 0; iZ < 16; iZ ++) checksum += subChunk.getBlockLSBArray()[MathHelper.clamp_int(iY << 8 | iZ << 4 | iX, 0, 4095)]; + } + + if(checksum != sub.checksum) { + sub.rebuild(world, coord.chunkXPos << 4, i << 4, coord.chunkZPos << 4); + } + } + } + } } //has to support additions while iterating @@ -190,14 +239,19 @@ public class ChunkRadiationHandlerPRISM extends ChunkRadiationHandler { SubChunk sub = chunk.getValue()[i]; if(sub != null) { - if(sub.prevRadiation <= 0 || Float.isNaN(sub.prevRadiation)) continue; + if(sub.prevRadiation <= 0 || Float.isNaN(sub.prevRadiation) || Float.isInfinite(sub.prevRadiation)) continue; float radSpread = 0; for(ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) radSpread += spreadRadiation(world, sub, i, chunk.getKey(), chunk.getValue(), system.radiation, dir); sub.radiation += (sub.prevRadiation - radSpread) * 0.95F; + sub.radiation -= 1F; + sub.radiation = MathHelper.clamp_float(sub.radiation, 0, MAX_RADIATION); } } } + system.radiation.putAll(newAdditions); + newAdditions.clear(); + /* //reap chunks with no radiation at all system.radiation.entrySet().removeIf(x -> getTotalChunkRadiation(x.getValue()) <= 0F); @@ -206,7 +260,7 @@ public class ChunkRadiationHandlerPRISM extends ChunkRadiationHandler { } /** Returns the amount of radiation spread */ - private static float spreadRadiation(World world, SubChunk source, int y, ChunkCoordIntPair origin, SubChunk[] chunk, HashMap map, ForgeDirection dir) { + private static float spreadRadiation(World world, SubChunk source, int y, ChunkCoordIntPair origin, SubChunk[] chunk, ConcurrentHashMap map, ForgeDirection dir) { float spread = 0.1F; float amount = source.prevRadiation * spread; @@ -225,7 +279,7 @@ public class ChunkRadiationHandlerPRISM extends ChunkRadiationHandler { SubChunk[] newChunk = map.get(newPos); if(newChunk == null) { newChunk = new SubChunk[16]; - map.put(newPos, newChunk); + newAdditions.put(newPos, newChunk); } if(newChunk[y] == null) newChunk[y] = new SubChunk().rebuild(world, newPos.chunkXPos << 4, y << 4, newPos.chunkZPos << 4); SubChunk to = newChunk[y]; @@ -235,8 +289,8 @@ public class ChunkRadiationHandlerPRISM extends ChunkRadiationHandler { private static float spreadRadiationTo(SubChunk from, SubChunk to, float amount, ForgeDirection movement) { float resistance = from.getResistanceValue(movement.getOpposite()) + to.getResistanceValue(movement); - resistance /= 1_000F; - float toMove = Math.min(amount / Math.max(resistance, 1F), amount); + double fun = Math.pow(Math.E, -resistance / 10_000D); + float toMove = (float) Math.min(amount * fun, amount); to.radiation += toMove; return toMove; } @@ -251,7 +305,7 @@ public class ChunkRadiationHandlerPRISM extends ChunkRadiationHandler { } public static class RadPerWorld { - public HashMap radiation = new HashMap(); + public ConcurrentHashMap radiation = new ConcurrentHashMap(); } public static class SubChunk { @@ -262,8 +316,9 @@ public class ChunkRadiationHandlerPRISM extends ChunkRadiationHandler { public float[] yResist = new float[16]; public float[] zResist = new float[16]; public boolean needsRebuild = false; + public int checksum = 0; - public void updateBlock(World world, int x, int y, int z) { + @Deprecated public void updateBlock(World world, int x, int y, int z) { int cX = x >> 4; int cY = MathHelper.clamp_int(y >> 4, 0, 15); int cZ = z >> 4; @@ -292,7 +347,7 @@ public class ChunkRadiationHandlerPRISM extends ChunkRadiationHandler { Block b = subChunk.getBlockByExtId(iX, iY, iZ); if(b.getMaterial() == Material.air) continue; - float resistance = b.getExplosionResistance(null, world, tX + iX, tY + iY, tZ + iZ, x, y, z); + float resistance = Math.min(b.getExplosionResistance(null, world, tX + iX, tY + iY, tZ + iZ, x, y, z), 100); if(iX == sX) xResist[iX] += resistance; if(iY == sY) yResist[iY] += resistance; if(iZ == sZ) zResist[iZ] += resistance; @@ -319,17 +374,21 @@ public class ChunkRadiationHandlerPRISM extends ChunkRadiationHandler { Chunk chunk = world.getChunkFromChunkCoords(cX, cZ); ExtendedBlockStorage[] xbs = chunk.getBlockStorageArray(); ExtendedBlockStorage subChunk = xbs[cY]; + checksum = 0; - for(int iX = 0; iX < 16; iX++) { - for(int iY = 0; iY < 16; iY ++) { - for(int iZ = 0; iZ < 16; iZ ++) { - - Block b = subChunk.getBlockByExtId(iX, iY, iZ); - if(b.getMaterial() == Material.air) continue; - float resistance = b.getExplosionResistance(null, world, tX + iX, tY + iY, tZ + iZ, x, y, z); - xResist[iX] += resistance; - yResist[iY] += resistance; - zResist[iZ] += resistance; + if(subChunk != null) { + for(int iX = 0; iX < 16; iX++) { + for(int iY = 0; iY < 16; iY ++) { + for(int iZ = 0; iZ < 16; iZ ++) { + + Block b = subChunk.getBlockByExtId(iX, iY, iZ); + if(b.getMaterial() == Material.air) continue; + float resistance = Math.min(b.getExplosionResistance(null, world, tX + iX, tY + iY, tZ + iZ, x, y, z), 100); + xResist[iX] += resistance; + yResist[iY] += resistance; + zResist[iZ] += resistance; + checksum += subChunk.getBlockLSBArray()[MathHelper.clamp_int(iY << 8 | iZ << 4 | iX, 0, 4095)]; // the "good enough" approach + } } } } @@ -339,18 +398,18 @@ public class ChunkRadiationHandlerPRISM extends ChunkRadiationHandler { } public float getResistanceValue(ForgeDirection movement) { - if(movement == Library.POS_X) return getResistanceFromArray(xResist, false); - if(movement == Library.NEG_X) return getResistanceFromArray(xResist, true); - if(movement == Library.POS_Y) return getResistanceFromArray(yResist, false); - if(movement == Library.NEG_Y) return getResistanceFromArray(yResist, true); - if(movement == Library.POS_Z) return getResistanceFromArray(zResist, false); - if(movement == Library.NEG_Z) return getResistanceFromArray(zResist, true); + if(movement == Library.POS_X) return getResistanceFromArray(xResist, true); + if(movement == Library.NEG_X) return getResistanceFromArray(xResist, false); + if(movement == Library.POS_Y) return getResistanceFromArray(yResist, true); + if(movement == Library.NEG_Y) return getResistanceFromArray(yResist, false); + if(movement == Library.POS_Z) return getResistanceFromArray(zResist, true); + if(movement == Library.NEG_Z) return getResistanceFromArray(zResist, false); return 0; } private float getResistanceFromArray(float[] resist, boolean reverse) { float res = 0F; - for(int i = 0; i < 15; i++) { + for(int i = 1; i < 16; i++) { int index = reverse ? 15 - i : i; res += resist[index] / 15F * i; } diff --git a/src/main/java/com/hbm/handler/radiation/ChunkRadiationManager.java b/src/main/java/com/hbm/handler/radiation/ChunkRadiationManager.java index 1c5c8121c..9cc989370 100644 --- a/src/main/java/com/hbm/handler/radiation/ChunkRadiationManager.java +++ b/src/main/java/com/hbm/handler/radiation/ChunkRadiationManager.java @@ -12,7 +12,7 @@ import net.minecraftforge.event.world.WorldEvent; public class ChunkRadiationManager { - public static ChunkRadiationHandler proxy = /*new ChunkRadiationHandlerNT();*/ new ChunkRadiationHandlerSimple(); /*new ChunkRadiationHandlerPRISM();*/ + public static ChunkRadiationHandler proxy = new ChunkRadiationHandlerSimple(); @SubscribeEvent public void onWorldLoad(WorldEvent.Load event) { diff --git a/src/main/java/com/hbm/inventory/OreDictManager.java b/src/main/java/com/hbm/inventory/OreDictManager.java index edae916e5..c4035c989 100644 --- a/src/main/java/com/hbm/inventory/OreDictManager.java +++ b/src/main/java/com/hbm/inventory/OreDictManager.java @@ -445,11 +445,11 @@ public class OreDictManager { * RARE METALS */ AUSTRALIUM .nugget(nugget_australium) .billet(billet_australium) .ingot(ingot_australium) .dust(powder_australium) .block(block_australium) .ore(ore_australium); - REIIUM .nugget(nugget_reiium) .ingot(ingot_reiium) .dust(powder_reiium) .block(block_reiium) .ore(ore_reiium); - WEIDANIUM .nugget(nugget_weidanium) .ingot(ingot_weidanium) .dust(powder_weidanium) .block(block_weidanium) .ore(ore_weidanium); - UNOBTAINIUM .nugget(nugget_unobtainium) .ingot(ingot_unobtainium) .dust(powder_unobtainium) .block(block_unobtainium) .ore(ore_unobtainium); - VERTICIUM .nugget(nugget_verticium) .ingot(ingot_verticium) .dust(powder_verticium) .block(block_verticium) .ore(ore_verticium); - DAFFERGON .nugget(nugget_daffergon) .ingot(ingot_daffergon) .dust(powder_daffergon) .block(block_daffergon) .ore(ore_daffergon); + REIIUM .nugget(nugget_reiium) .ingot(ingot_reiium) .dust(powder_reiium) .block(block_reiium); + WEIDANIUM .nugget(nugget_weidanium) .ingot(ingot_weidanium) .dust(powder_weidanium) .block(block_weidanium); + UNOBTAINIUM .nugget(nugget_unobtainium) .ingot(ingot_unobtainium) .dust(powder_unobtainium) .block(block_unobtainium); + VERTICIUM .nugget(nugget_verticium) .ingot(ingot_verticium) .dust(powder_verticium) .block(block_verticium); + DAFFERGON .nugget(nugget_daffergon) .ingot(ingot_daffergon) .dust(powder_daffergon) .block(block_daffergon); /* * RARE EARTHS diff --git a/src/main/java/com/hbm/inventory/container/ContainerMachineCyclotron.java b/src/main/java/com/hbm/inventory/container/ContainerMachineCyclotron.java index 7251c9623..784f5275e 100644 --- a/src/main/java/com/hbm/inventory/container/ContainerMachineCyclotron.java +++ b/src/main/java/com/hbm/inventory/container/ContainerMachineCyclotron.java @@ -1,10 +1,7 @@ package com.hbm.inventory.container; -import com.hbm.inventory.FluidContainerRegistry; import com.hbm.inventory.SlotCraftingOutput; -import com.hbm.inventory.SlotTakeOnly; import com.hbm.inventory.SlotUpgrade; -import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemMachineUpgrade; import com.hbm.tileentity.machine.TileEntityMachineCyclotron; @@ -25,42 +22,34 @@ public class ContainerMachineCyclotron extends Container { cyclotron = tile; //Input - this.addSlotToContainer(new Slot(tile, 0, 17, 18)); - this.addSlotToContainer(new Slot(tile, 1, 17, 36)); - this.addSlotToContainer(new Slot(tile, 2, 17, 54)); + this.addSlotToContainer(new Slot(tile, 0, 11, 18)); + this.addSlotToContainer(new Slot(tile, 1, 11, 36)); + this.addSlotToContainer(new Slot(tile, 2, 11, 54)); //Targets - this.addSlotToContainer(new Slot(tile, 3, 107, 18)); - this.addSlotToContainer(new Slot(tile, 4, 107, 36)); - this.addSlotToContainer(new Slot(tile, 5, 107, 54)); + this.addSlotToContainer(new Slot(tile, 3, 101, 18)); + this.addSlotToContainer(new Slot(tile, 4, 101, 36)); + this.addSlotToContainer(new Slot(tile, 5, 101, 54)); //Output - this.addSlotToContainer(new SlotCraftingOutput(invPlayer.player, tile, 6, 143, 18)); - this.addSlotToContainer(new SlotCraftingOutput(invPlayer.player, tile, 7, 143, 36)); - this.addSlotToContainer(new SlotCraftingOutput(invPlayer.player, tile, 8, 143, 54)); - //AMAT In - this.addSlotToContainer(new Slot(tile, 9, 143, 90)); - //AMAT Out - this.addSlotToContainer(new SlotTakeOnly(tile, 10, 143, 108)); - //Coolant In - this.addSlotToContainer(new Slot(tile, 11, 62, 72)); - //Coolant Out - this.addSlotToContainer(new SlotTakeOnly(tile, 12, 62, 90)); + this.addSlotToContainer(new SlotCraftingOutput(invPlayer.player, tile, 6, 131, 18)); + this.addSlotToContainer(new SlotCraftingOutput(invPlayer.player, tile, 7, 131, 36)); + this.addSlotToContainer(new SlotCraftingOutput(invPlayer.player, tile, 8, 131, 54)); //Battery - this.addSlotToContainer(new Slot(tile, 13, 62, 108)); + this.addSlotToContainer(new Slot(tile, 9, 168, 83)); //Upgrades - this.addSlotToContainer(new SlotUpgrade(tile, 14, 17, 90)); - this.addSlotToContainer(new SlotUpgrade(tile, 15, 17, 108)); + this.addSlotToContainer(new SlotUpgrade(tile, 10, 60, 81)); + this.addSlotToContainer(new SlotUpgrade(tile, 11, 78, 81)); for(int i = 0; i < 3; i++) { for(int j = 0; j < 9; j++) { - this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 84 + i * 18 + 56)); + this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 15 + j * 18, 133 + i * 18)); } } for(int i = 0; i < 9; i++) { - this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 142 + 56)); + this.addSlotToContainer(new Slot(invPlayer, i, 15 + i * 18, 191)); } } @@ -82,20 +71,12 @@ public class ContainerMachineCyclotron extends Container { } else { if(stack.getItem() instanceof IBatteryItem || stack.getItem() == ModItems.battery_creative) { - if(!this.mergeItemStack(stack, 13, 14, true)) - return null; - - } else if(FluidContainerRegistry.getFluidContent(stack, Fluids.COOLANT) > 0) { - if(!this.mergeItemStack(stack, 11, 12, true)) - return null; - - } else if(FluidContainerRegistry.getFullContainer(stack, Fluids.AMAT) != null) { if(!this.mergeItemStack(stack, 9, 10, true)) return null; } else if(stack.getItem() instanceof ItemMachineUpgrade) { - if(!this.mergeItemStack(stack, 14, 15, true)) - if(!this.mergeItemStack(stack, 15, 16, true)) + if(!this.mergeItemStack(stack, 10, 11, true)) + if(!this.mergeItemStack(stack, 11, 12, true)) return null; } else { diff --git a/src/main/java/com/hbm/inventory/container/ContainerMachineSolderingStation.java b/src/main/java/com/hbm/inventory/container/ContainerMachineSolderingStation.java index abb9cba02..d1ce587b2 100644 --- a/src/main/java/com/hbm/inventory/container/ContainerMachineSolderingStation.java +++ b/src/main/java/com/hbm/inventory/container/ContainerMachineSolderingStation.java @@ -2,6 +2,7 @@ package com.hbm.inventory.container; import com.hbm.inventory.RecipesCommon.AStack; import com.hbm.inventory.SlotCraftingOutput; +import com.hbm.inventory.SlotNonRetarded; import com.hbm.inventory.SlotUpgrade; import com.hbm.inventory.recipes.SolderingRecipes; import com.hbm.items.ModItems; @@ -24,7 +25,7 @@ public class ContainerMachineSolderingStation extends Container { solderer = tile; //Inputs - for(int i = 0; i < 2; i++) for(int j = 0; j < 3; j++) this.addSlotToContainer(new Slot(tile, i * 3 + j, 17 + j * 18, 18 + i * 18)); + for(int i = 0; i < 2; i++) for(int j = 0; j < 3; j++) this.addSlotToContainer(new SlotNonRetarded(tile, i * 3 + j, 17 + j * 18, 18 + i * 18)); //Output this.addSlotToContainer(new SlotCraftingOutput(playerInv.player, tile, 6, 107, 27)); //Battery diff --git a/src/main/java/com/hbm/inventory/container/ContainerOreSlopper.java b/src/main/java/com/hbm/inventory/container/ContainerOreSlopper.java new file mode 100644 index 000000000..1b74dc8f8 --- /dev/null +++ b/src/main/java/com/hbm/inventory/container/ContainerOreSlopper.java @@ -0,0 +1,50 @@ +package com.hbm.inventory.container; + +import com.hbm.inventory.SlotCraftingOutput; +import com.hbm.tileentity.machine.TileEntityMachineOreSlopper; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.entity.player.InventoryPlayer; +import net.minecraft.inventory.Container; +import net.minecraft.inventory.Slot; + +public class ContainerOreSlopper extends Container { + + public TileEntityMachineOreSlopper slopper; + + public ContainerOreSlopper(InventoryPlayer player, TileEntityMachineOreSlopper slopper) { + this.slopper = slopper; + + //Battery + this.addSlotToContainer(new Slot(slopper, 0, 8, 72)); + //Fluid ID + this.addSlotToContainer(new Slot(slopper, 1, 26, 72)); + //Input + this.addSlotToContainer(new Slot(slopper, 2, 71, 27)); + //Outputs + this.addSlotToContainer(new SlotCraftingOutput(player.player, slopper, 3, 134, 18)); + this.addSlotToContainer(new SlotCraftingOutput(player.player, slopper, 4, 152, 18)); + this.addSlotToContainer(new SlotCraftingOutput(player.player, slopper, 5, 134, 36)); + this.addSlotToContainer(new SlotCraftingOutput(player.player, slopper, 6, 152, 36)); + this.addSlotToContainer(new SlotCraftingOutput(player.player, slopper, 7, 134, 54)); + this.addSlotToContainer(new SlotCraftingOutput(player.player, slopper, 8, 152, 54)); + //Upgrades + this.addSlotToContainer(new Slot(slopper, 0, 62, 72)); + this.addSlotToContainer(new Slot(slopper, 0, 80, 72)); + + for(int i = 0; i < 3; i++) { + for(int j = 0; j < 9; j++) { + this.addSlotToContainer(new Slot(player, j + i * 9 + 9, 8 + j * 18, 122 + i * 18)); + } + } + + for(int i = 0; i < 9; i++) { + this.addSlotToContainer(new Slot(player, i, 8 + i * 18, 180)); + } + } + + @Override + public boolean canInteractWith(EntityPlayer player) { + return slopper.isUseableByPlayer(player); + } +} diff --git a/src/main/java/com/hbm/inventory/fluid/Fluids.java b/src/main/java/com/hbm/inventory/fluid/Fluids.java index 9a5fc151b..77e01d676 100644 --- a/src/main/java/com/hbm/inventory/fluid/Fluids.java +++ b/src/main/java/com/hbm/inventory/fluid/Fluids.java @@ -175,6 +175,7 @@ public class Fluids { public static FluidType THORIUM_SALT_DEPLETED; public static FluidType FULLERENE; public static FluidType STELLAR_FLUX; + public static FluidType VITRIOL; /* Lagacy names for compatibility purposes */ @Deprecated public static FluidType ACID; //JAOPCA uses this, apparently @@ -375,7 +376,8 @@ public class Fluids { HOTCRACKOIL_DS = new FluidType("HOTCRACKOIL_DS", 0x3A1A28, 2, 3, 0, EnumSymbol.NONE).setTemp(350).addTraits(LIQUID, VISCOUS, P_OIL); NAPHTHA_DS = new FluidType("NAPHTHA_DS", 0x63614E, 2, 1, 0, EnumSymbol.NONE).addContainers(new CD_Canister(0x5F6D44)).addTraits(LIQUID, VISCOUS, P_FUEL); LIGHTOIL_DS = new FluidType("LIGHTOIL_DS", 0x63543E, 1, 2, 0, EnumSymbol.NONE).addContainers(new CD_Canister(0xB46B52)).addTraits(LIQUID, P_FUEL); - STELLAR_FLUX = new FluidType(139, "STELLAR_FLUX", 0xE300FF, 0, 4, 4, EnumSymbol.ANTIMATTER).addTraits(ANTI, GASEOUS); + STELLAR_FLUX = new FluidType("STELLAR_FLUX", 0xE300FF, 0, 4, 4, EnumSymbol.ANTIMATTER).addTraits(ANTI, GASEOUS); + VITRIOL = new FluidType(140, "VITRIOL", 0x6E5222, 2, 0, 1, EnumSymbol.NONE).addTraits(LIQUID, VISCOUS); // ^ ^ ^ ^ ^ ^ ^ ^ //ADD NEW FLUIDS HERE @@ -489,6 +491,7 @@ public class Fluids { metaOrder.add(SALIENT); metaOrder.add(SEEDSLURRY); metaOrder.add(COLLOID); + metaOrder.add(VITRIOL); metaOrder.add(IONGEL); metaOrder.add(PEROXIDE); metaOrder.add(SULFURIC_ACID); diff --git a/src/main/java/com/hbm/inventory/fluid/tank/FluidTank.java b/src/main/java/com/hbm/inventory/fluid/tank/FluidTank.java index d30374713..641769b1c 100644 --- a/src/main/java/com/hbm/inventory/fluid/tank/FluidTank.java +++ b/src/main/java/com/hbm/inventory/fluid/tank/FluidTank.java @@ -250,10 +250,10 @@ public class FluidTank { maxX += i; maxY += height; - minV = 0; + minV = 0D; maxV = height / 16D; - minU = 0D; - maxU = width / 16D; + minU = 1D; + maxU = 1D - i / 16D; } Tessellator tessellator = Tessellator.instance; diff --git a/src/main/java/com/hbm/inventory/gui/GUIMachineCyclotron.java b/src/main/java/com/hbm/inventory/gui/GUIMachineCyclotron.java index c0ad1c777..5f5cfc339 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIMachineCyclotron.java +++ b/src/main/java/com/hbm/inventory/gui/GUIMachineCyclotron.java @@ -4,13 +4,10 @@ import org.lwjgl.opengl.GL11; import com.hbm.inventory.container.ContainerMachineCyclotron; import com.hbm.lib.RefStrings; -import com.hbm.packet.AuxButtonPacket; -import com.hbm.packet.PacketDispatcher; import com.hbm.tileentity.machine.TileEntityMachineCyclotron; import com.hbm.util.I18nUtil; import net.minecraft.client.Minecraft; -import net.minecraft.client.audio.PositionedSoundRecord; import net.minecraft.client.resources.I18n; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.util.ResourceLocation; @@ -24,25 +21,26 @@ public class GUIMachineCyclotron extends GuiInfoContainer { super(new ContainerMachineCyclotron(invPlayer, tile)); cyclotron = tile; - this.xSize = 176; - this.ySize = 222; + this.xSize = 190; + this.ySize = 215; } @Override public void drawScreen(int mouseX, int mouseY, float f) { super.drawScreen(mouseX, mouseY, f); - this.drawElectricityInfo(this, mouseX, mouseY, guiLeft + 80, guiTop + 72, 7, 52, cyclotron.power, cyclotron.maxPower); + this.drawElectricityInfo(this, mouseX, mouseY, guiLeft + 168, guiTop + 18, 16, 63, cyclotron.power, cyclotron.maxPower); - cyclotron.coolant.renderTankInfo(this, mouseX, mouseY, guiLeft + 53, guiTop + 72, 7, 52); - cyclotron.amat.renderTankInfo(this, mouseX, mouseY, guiLeft + 134, guiTop + 90, 7, 34); + cyclotron.tanks[0].renderTankInfo(this, mouseX, mouseY, guiLeft + 11, guiTop + 81, 34, 7); + cyclotron.tanks[1].renderTankInfo(this, mouseX, mouseY, guiLeft + 11, guiTop + 90, 34, 7); + cyclotron.tanks[2].renderTankInfo(this, mouseX, mouseY, guiLeft + 107, guiTop + 81, 34, 16); String[] upgradeText = new String[4]; upgradeText[0] = I18nUtil.resolveKey("desc.gui.upgrade"); upgradeText[1] = I18nUtil.resolveKey("desc.gui.upgrade.speed"); upgradeText[2] = I18nUtil.resolveKey("desc.gui.upgrade.effectiveness"); upgradeText[3] = I18nUtil.resolveKey("desc.gui.upgrade.power"); - this.drawCustomInfoStat(mouseX, mouseY, guiLeft + 21, guiTop + 75, 8, 8, mouseX, mouseY, upgradeText); + this.drawCustomInfoStat(mouseX, mouseY, guiLeft + 49, guiTop + 85, 8, 8, mouseX, mouseY, upgradeText); } @Override @@ -50,38 +48,28 @@ public class GUIMachineCyclotron extends GuiInfoContainer { String name = this.cyclotron.hasCustomInventoryName() ? this.cyclotron.getInventoryName() : I18n.format(this.cyclotron.getInventoryName()); this.fontRendererObj.drawString(name, this.xSize / 2 - this.fontRendererObj.getStringWidth(name) / 2, 6, 4210752); - this.fontRendererObj.drawString(I18n.format("container.inventory"), 8, this.ySize - 96 + 2, 4210752); + this.fontRendererObj.drawString(I18n.format("container.inventory"), 15, this.ySize - 96 + 2, 4210752); } @Override - protected void mouseClicked(int x, int y, int i) { - super.mouseClicked(x, y, i); - - if(guiLeft + 97 <= x && guiLeft + 97 + 18 > x && guiTop + 107 < y && guiTop + 107 + 18 >= y) { - - mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F)); - PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(cyclotron.xCoord, cyclotron.yCoord, cyclotron.zCoord, 0, 0)); - } - } - - @Override - protected void drawGuiContainerBackgroundLayer(float p_146976_1_, int p_146976_2_, int p_146976_3_) { + protected void drawGuiContainerBackgroundLayer(float interp, int x, int y) { GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); Minecraft.getMinecraft().getTextureManager().bindTexture(texture); drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize); - int k = (int) cyclotron.getPowerScaled(52); - drawTexturedModalRect(guiLeft + 80, guiTop + 124 - k, 212, 52 - k, 7, k); - - int l = cyclotron.getProgressScaled(36); - drawTexturedModalRect(guiLeft + 52, guiTop + 26, 176, 0, l, 36); - - if(cyclotron.isOn) - drawTexturedModalRect(guiLeft + 97, guiTop + 107, 219, 0, 18, 18); - - this.drawInfoPanel(guiLeft + 21, guiTop + 75, 8, 8, 8); - - cyclotron.coolant.renderTank(guiLeft + 53, guiTop + 124, this.zLevel, 7, 52); - cyclotron.amat.renderTank(guiLeft + 134, guiTop + 124, this.zLevel, 7, 34); + int k = (int) cyclotron.getPowerScaled(63); + drawTexturedModalRect(guiLeft + 168, guiTop + 80 - k, 190, 62 - k, 16, k); + + int l = cyclotron.getProgressScaled(34); + drawTexturedModalRect(guiLeft + 48, guiTop + 27, 206, 0, l, 34); + + if(l > 0) + drawTexturedModalRect(guiLeft + 172, guiTop + 4, 190, 63, 9, 12); + + this.drawInfoPanel(guiLeft + 49, guiTop + 85, 8, 8, 8); + + cyclotron.tanks[0].renderTank(guiLeft + 11, guiTop + 88, this.zLevel, 34, 7, 1); + cyclotron.tanks[1].renderTank(guiLeft + 11, guiTop + 97, this.zLevel, 34, 7, 1); + cyclotron.tanks[2].renderTank(guiLeft + 107, guiTop + 97, this.zLevel, 34, 16, 1); } } diff --git a/src/main/java/com/hbm/inventory/gui/GUIOreSlopper.java b/src/main/java/com/hbm/inventory/gui/GUIOreSlopper.java new file mode 100644 index 000000000..26f4937fc --- /dev/null +++ b/src/main/java/com/hbm/inventory/gui/GUIOreSlopper.java @@ -0,0 +1,41 @@ +package com.hbm.inventory.gui; + +import org.lwjgl.opengl.GL11; + +import com.hbm.inventory.container.ContainerOreSlopper; +import com.hbm.lib.RefStrings; +import com.hbm.tileentity.machine.TileEntityMachineOreSlopper; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.resources.I18n; +import net.minecraft.entity.player.InventoryPlayer; +import net.minecraft.util.ResourceLocation; + +public class GUIOreSlopper extends GuiInfoContainer { + + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/processing/gui_ore_slopper.png"); + private TileEntityMachineOreSlopper slopper; + + public GUIOreSlopper(InventoryPlayer player, TileEntityMachineOreSlopper slopper) { + super(new ContainerOreSlopper(player, slopper)); + this.slopper = slopper; + + this.xSize = 176; + this.ySize = 204; + } + + @Override + protected void drawGuiContainerForegroundLayer( int i, int j) { + + String name = this.slopper.hasCustomInventoryName() ? this.slopper.getInventoryName() : I18n.format(this.slopper.getInventoryName()); + this.fontRendererObj.drawString(name, this.xSize / 2 - this.fontRendererObj.getStringWidth(name) / 2, 6, 4210752); + this.fontRendererObj.drawString(I18n.format("container.inventory"), 8, this.ySize - 96 + 2, 4210752); + } + + @Override + protected void drawGuiContainerBackgroundLayer(float interp, int x, int y) { + GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); + Minecraft.getMinecraft().getTextureManager().bindTexture(texture); + drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize); + } +} diff --git a/src/main/java/com/hbm/inventory/gui/GUIScreenPreview.java b/src/main/java/com/hbm/inventory/gui/GUIScreenPreview.java index 0165aa62d..a4e9fe0e7 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIScreenPreview.java +++ b/src/main/java/com/hbm/inventory/gui/GUIScreenPreview.java @@ -11,6 +11,7 @@ import net.minecraft.client.gui.ScaledResolution; import net.minecraft.client.renderer.OpenGlHelper; import net.minecraft.client.renderer.RenderHelper; import net.minecraft.client.renderer.Tessellator; +import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; @@ -54,10 +55,16 @@ public class GUIScreenPreview extends GuiScreen { this.drawTexturedModalRect(res.getScaledWidth_double() / 2D / zoom - 9D, res.getScaledHeight_double() / 2D / zoom - 9D, 5, 87, 18, 18); GL11.glPopMatrix(); + String nameString = Item.itemRegistry.getNameForObject(preview.getItem()) + ", " + preview.getItemDamage(); String zoomString = "Zoom: " + zoom; String scaleString = "Windows Scale: " + res.getScaleFactor(); - this.fontRendererObj.drawString(zoomString, this.width - this.fontRendererObj.getStringWidth(zoomString) - 2, this.height - 20, 0xff0000); - this.fontRendererObj.drawString(scaleString, this.width - this.fontRendererObj.getStringWidth(scaleString) - 2, this.height - 10, 0xff0000); + + GL11.glPushMatrix(); + GL11.glScaled(0.5, 0.5, 1); + this.fontRendererObj.drawString(zoomString, this.width * 2 - this.fontRendererObj.getStringWidth(zoomString) - 2, this.height * 2 - 35, 0xff0000); + this.fontRendererObj.drawString(scaleString, this.width * 2 - this.fontRendererObj.getStringWidth(scaleString) - 2, this.height * 2 - 25, 0xff0000); + this.fontRendererObj.drawString(nameString, this.width * 2 - this.fontRendererObj.getStringWidth(nameString) - 2, this.height * 2 - 15, 0xff0000); + GL11.glPopMatrix(); } public void drawTexturedModalRect(double x, double y, int sourceX, int sourceY, int sizeX, int sizeY) { diff --git a/src/main/java/com/hbm/inventory/recipes/ArcFurnaceRecipes.java b/src/main/java/com/hbm/inventory/recipes/ArcFurnaceRecipes.java index 1be8bdd3c..e99642cfa 100644 --- a/src/main/java/com/hbm/inventory/recipes/ArcFurnaceRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/ArcFurnaceRecipes.java @@ -25,6 +25,9 @@ import com.hbm.inventory.material.Mats.MaterialStack; import com.hbm.inventory.recipes.loader.SerializableRecipe; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemScraps; +import com.hbm.items.special.ItemBedrockOreNew; +import com.hbm.items.special.ItemBedrockOreNew.BedrockOreGrade; +import com.hbm.items.special.ItemBedrockOreNew.BedrockOreType; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; @@ -51,6 +54,24 @@ public class ArcFurnaceRecipes extends SerializableRecipe { recipes.put(new ComparableStack(ModBlocks.sand_quartz), new ArcFurnaceRecipe().solid(new ItemStack(ModBlocks.glass_quartz))); recipes.put(new OreDictStack(BORAX.dust()), new ArcFurnaceRecipe().solid(new ItemStack(ModItems.powder_boron_tiny, 3)).fluid(new MaterialStack(Mats.MAT_BORON, MaterialShapes.NUGGET.q(3)))); + for(BedrockOreType type : BedrockOreType.values()) { + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_BYPRODUCT, type)), new ArcFurnaceRecipe().solid(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_ARC, type, 2))); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_ROASTED, type)), new ArcFurnaceRecipe().solid(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_ARC, type, 3))); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_BYPRODUCT, type)), new ArcFurnaceRecipe().solid(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_ARC, type, 2))); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_ROASTED, type)), new ArcFurnaceRecipe().solid(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_ARC, type, 3))); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.RAD_BYPRODUCT, type)), new ArcFurnaceRecipe().solid(ItemBedrockOreNew.make(BedrockOreGrade.RAD_ARC, type, 2))); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.RAD_ROASTED, type)), new ArcFurnaceRecipe().solid(ItemBedrockOreNew.make(BedrockOreGrade.RAD_ARC, type, 3))); + + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_FIRST, type)), new ArcFurnaceRecipe().fluidNull(ItemBedrockOreNew.toFluid(type.primary1, MaterialShapes.INGOT.q(5)), ItemBedrockOreNew.toFluid(type.primary2, MaterialShapes.INGOT.q(2)))); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SECOND, type)), new ArcFurnaceRecipe().fluidNull(ItemBedrockOreNew.toFluid(type.primary1, MaterialShapes.INGOT.q(2)), ItemBedrockOreNew.toFluid(type.primary2, MaterialShapes.INGOT.q(5)))); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)), new ArcFurnaceRecipe().fluidNull(ItemBedrockOreNew.toFluid(type.primary1, MaterialShapes.INGOT.q(1)), ItemBedrockOreNew.toFluid(type.primary2, MaterialShapes.INGOT.q(1)))); + + int i3 = MaterialShapes.INGOT.q(3); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_WASHED, type)), new ArcFurnaceRecipe().fluidNull(ItemBedrockOreNew.toFluid(type.byproductAcid1, i3), ItemBedrockOreNew.toFluid(type.byproductAcid2, i3), ItemBedrockOreNew.toFluid(type.byproductAcid3, i3))); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_WASHED, type)), new ArcFurnaceRecipe().fluidNull(ItemBedrockOreNew.toFluid(type.byproductSolvent1, i3), ItemBedrockOreNew.toFluid(type.byproductSolvent2, i3), ItemBedrockOreNew.toFluid(type.byproductSolvent3, i3))); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.RAD_WASHED, type)), new ArcFurnaceRecipe().fluidNull(ItemBedrockOreNew.toFluid(type.byproductRad1, i3), ItemBedrockOreNew.toFluid(type.byproductRad2, i3), ItemBedrockOreNew.toFluid(type.byproductRad3, i3))); + } + // Autogen for simple single type items for(NTMMaterial material : Mats.orderedList) { int in = material.convIn; @@ -151,7 +172,7 @@ public class ArcFurnaceRecipes extends SerializableRecipe { public static HashMap getFluidRecipes() { HashMap recipes = new HashMap(); for(Entry recipe : ArcFurnaceRecipes.recipes.entrySet()) { - if(recipe.getValue().fluidOutput != null) { + if(recipe.getValue().fluidOutput != null && recipe.getValue().fluidOutput.length > 0) { Object[] out = new Object[recipe.getValue().fluidOutput.length]; for(int i = 0; i < out.length; i++) out[i] = ItemScraps.create(recipe.getValue().fluidOutput[i], true); recipes.put(recipe.getKey().copy(), out); @@ -244,6 +265,13 @@ public class ArcFurnaceRecipes extends SerializableRecipe { return this; } + public ArcFurnaceRecipe fluidNull(MaterialStack... outputs) { + List mat = new ArrayList(); + for(MaterialStack stack : outputs) if(stack != null) mat.add(stack); + if(!mat.isEmpty()) this.fluidOutput = mat.toArray(new MaterialStack[0]); + return this; + } + public ArcFurnaceRecipe solid(ItemStack output) { this.solidOutput = output; return this; diff --git a/src/main/java/com/hbm/inventory/recipes/ArcWelderRecipes.java b/src/main/java/com/hbm/inventory/recipes/ArcWelderRecipes.java index 611997149..7bc108bfa 100644 --- a/src/main/java/com/hbm/inventory/recipes/ArcWelderRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/ArcWelderRecipes.java @@ -20,6 +20,7 @@ import com.hbm.inventory.RecipesCommon.OreDictStack; import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.material.Mats; import com.hbm.inventory.recipes.loader.SerializableRecipe; +import com.hbm.items.ItemGenericPart.EnumPartType; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemFluidIcon; @@ -37,6 +38,10 @@ public class ArcWelderRecipes extends SerializableRecipe { new OreDictStack(IRON.plate(), 2), new ComparableStack(ModItems.coil_copper), new ComparableStack(ModItems.coil_copper_torus))); recipes.add(new ArcWelderRecipe(new ItemStack(ModItems.motor, 2), 100, 400L, new OreDictStack(STEEL.plate(), 1), new ComparableStack(ModItems.coil_copper), new ComparableStack(ModItems.coil_copper_torus))); + recipes.add(new ArcWelderRecipe(DictFrame.fromOne(ModItems.part_generic, EnumPartType.LDE), 200, 5_000L, + new OreDictStack(AL.plate(), 4), new OreDictStack(FIBER.ingot(), 4), new OreDictStack(ANY_HARDPLASTIC.ingot()))); + recipes.add(new ArcWelderRecipe(DictFrame.fromOne(ModItems.part_generic, EnumPartType.LDE), 200, 10_000L, + new OreDictStack(TI.plate(), 2), new OreDictStack(FIBER.ingot(), 4), new OreDictStack(ANY_HARDPLASTIC.ingot()))); //Dense Wires recipes.add(new ArcWelderRecipe(new ItemStack(ModItems.wire_dense, 1, Mats.MAT_ALLOY.id), 100, 10_000L, @@ -68,6 +73,8 @@ public class ArcWelderRecipes extends SerializableRecipe { new OreDictStack(CDALLOY.plateCast(), 2))); recipes.add(new ArcWelderRecipe(new ItemStack(ModItems.plate_welded, 1, Mats.MAT_TUNGSTEN.id), 1_200, 250_000L, new FluidStack(Fluids.OXYGEN, 1_000), new OreDictStack(W.plateCast(), 2))); + recipes.add(new ArcWelderRecipe(new ItemStack(ModItems.plate_welded, 1, Mats.MAT_CMB.id), 1_200, 10_000_000L, new FluidStack(Fluids.REFORMGAS, 1_000), + new OreDictStack(CMB.plateCast(), 2))); //pre-DFC recipes.add(new ArcWelderRecipe(new ItemStack(ModItems.plate_welded, 1, Mats.MAT_OSMIRIDIUM.id), 6_000, 20_000_000L, new FluidStack(Fluids.REFORMGAS, 16_000), new OreDictStack(OSMIRIDIUM.plateCast(), 2))); @@ -103,6 +110,12 @@ public class ArcWelderRecipes extends SerializableRecipe { recipes.add(new ArcWelderRecipe(new ItemStack(ModItems.missile_nuclear), 600, 50_000L, new ComparableStack(ModItems.warhead_nuclear), new ComparableStack(ModItems.fuel_tank_large), new ComparableStack(ModItems.thruster_large, 3))); recipes.add(new ArcWelderRecipe(new ItemStack(ModItems.missile_nuclear_cluster), 600, 50_000L, new ComparableStack(ModItems.warhead_mirv), new ComparableStack(ModItems.fuel_tank_large), new ComparableStack(ModItems.thruster_large, 3))); recipes.add(new ArcWelderRecipe(new ItemStack(ModItems.missile_volcano), 600, 50_000L, new ComparableStack(ModItems.warhead_volcano), new ComparableStack(ModItems.fuel_tank_large), new ComparableStack(ModItems.thruster_large, 3))); + + recipes.add(new ArcWelderRecipe(new ItemStack(ModItems.sat_mapper), 600, 10_000L, new ComparableStack(ModItems.sat_base), new ComparableStack(ModItems.sat_head_mapper))); + recipes.add(new ArcWelderRecipe(new ItemStack(ModItems.sat_scanner), 600, 10_000L, new ComparableStack(ModItems.sat_base), new ComparableStack(ModItems.sat_head_scanner))); + recipes.add(new ArcWelderRecipe(new ItemStack(ModItems.sat_radar), 600, 10_000L, new ComparableStack(ModItems.sat_base), new ComparableStack(ModItems.sat_head_radar))); + recipes.add(new ArcWelderRecipe(new ItemStack(ModItems.sat_laser), 600, 50_000L, new ComparableStack(ModItems.sat_base), new ComparableStack(ModItems.sat_head_laser))); + recipes.add(new ArcWelderRecipe(new ItemStack(ModItems.sat_resonator), 600, 50_000L, new ComparableStack(ModItems.sat_base), new ComparableStack(ModItems.sat_head_resonator))); } public static HashMap getRecipes() { diff --git a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java index 599cd0f0d..3ede78d79 100644 --- a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java @@ -98,15 +98,6 @@ public class AssemblerRecipes extends SerializableRecipe { makeRecipe(new ComparableStack(ModItems.warhead_volcano, 1), new AStack[] {new OreDictStack(TI.plate(), 24), new OreDictStack(STEEL.plate(), 16), new ComparableStack(ModBlocks.det_nuke, 3), new OreDictStack(U238.block(), 24), new ComparableStack(ModItems.circuit, 5, EnumCircuitType.CAPACITOR_BOARD.ordinal()) }, 600); makeRecipe(new ComparableStack(ModItems.missile_stealth, 1), new AStack[] { new OreDictStack(TI.plate(), 20), new OreDictStack(AL.plate(), 20), new OreDictStack(CU.plate(), 10), new OreDictStack(KEY_BLACK, 16), new OreDictStack(ANY_HARDPLASTIC.ingot(), 16), new OreDictStack(ANY_HIGHEXPLOSIVE.ingot(), 4), new ComparableStack(ModItems.circuit, 4, EnumCircuitType.ADVANCED.ordinal()), new OreDictStack(STEEL.bolt(), 32) },1200); makeRecipe(new ComparableStack(ModItems.thruster_nuclear, 1), new AStack[] {new OreDictStack(DURA.ingot(), 32), new OreDictStack(B.ingot(), 8), new OreDictStack(PB.plate(), 16), new ComparableStack(ModItems.pipes_steel) },600); - makeRecipe(new ComparableStack(ModItems.sat_base, 1), new AStack[] {new ComparableStack(ModItems.thruster_large, 1), new OreDictStack(STEEL.plate(), 6), new ComparableStack(ModItems.plate_desh, 4), new OreDictStack(TI.shell(), 3), new ComparableStack(ModItems.fluid_barrel_full, 1, Fluids.KEROSENE.getID()), new ComparableStack(ModItems.photo_panel, 24), new OreDictStack(CU.plateCast(), 12), new ComparableStack(ModItems.circuit, 12, EnumCircuitType.BASIC.ordinal()), new ComparableStack(ModItems.battery_lithium_cell_6, 1), },500); - makeRecipe(new ComparableStack(ModItems.sat_head_mapper, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 4), new OreDictStack(STEEL.plate(), 6), new OreDictStack(STEEL.shell(), 3), new ComparableStack(ModItems.plate_desh, 2), new ComparableStack(ModItems.circuit, 4, EnumCircuitType.ADVANCED.ordinal()), new OreDictStack(RUBBER.ingot(), 12), new OreDictStack(REDSTONE.dust(), 6), new ComparableStack(Items.diamond, 1), new ComparableStack(Blocks.glass_pane, 6), },400); - makeRecipe(new ComparableStack(ModItems.sat_head_scanner, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 6), new OreDictStack(TI.plate(), 32), new ComparableStack(ModItems.plate_desh, 6), new ComparableStack(ModItems.magnetron, 6), new ComparableStack(ModItems.coil_advanced_torus, 2), new ComparableStack(ModItems.circuit, 4, EnumCircuitType.ADVANCED.ordinal()), new OreDictStack(RUBBER.ingot(), 6), new ComparableStack(Items.diamond, 1), },400); - makeRecipe(new ComparableStack(ModItems.sat_head_radar, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 4), new OreDictStack(TI.plate(), 32), new ComparableStack(ModItems.magnetron, 12), new OreDictStack(RUBBER.ingot(), 16), new OreDictStack(MINGRADE.wireFine(), 16), new ComparableStack(ModItems.coil_gold, 3), new ComparableStack(ModItems.circuit, 4, EnumCircuitType.ADVANCED.ordinal()), new ComparableStack(Items.diamond, 1), },400); - makeRecipe(new ComparableStack(ModItems.sat_head_laser, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 12), new OreDictStack(W.ingot(), 16), new OreDictStack(ANY_PLASTIC.ingot(), 6), new OreDictStack(RUBBER.ingot(), 16), new OreDictStack(CU.plateCast(), 24), new ComparableStack(ModItems.circuit, 16, EnumCircuitType.ADVANCED), new OreDictStack(REDSTONE.dust(), 16), new ComparableStack(Items.diamond, 5), new ComparableStack(Blocks.glass_pane, 16), },450); - makeRecipe(new ComparableStack(ModItems.sat_head_resonator, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 32), new OreDictStack(ANY_PLASTIC.ingot(), 48), new OreDictStack(RUBBER.ingot(), 8), new ComparableStack(ModItems.crystal_xen, 1), new OreDictStack(STAR.ingot(), 7), new ComparableStack(ModItems.circuit, 16, EnumCircuitType.ADVANCED) },1000); - makeRecipe(new ComparableStack(ModItems.sat_foeq, 1), new AStack[] {new OreDictStack(STEEL.plate(), 8), new OreDictStack(TI.plate(), 12), new ComparableStack(ModItems.plate_desh, 8), new OreDictStack(TI.shell(), 3), new ComparableStack(ModItems.fluid_barrel_full, 1, Fluids.HYDROGEN.getID()), new ComparableStack(ModItems.photo_panel, 16), new ComparableStack(ModItems.thruster_nuclear, 1), new ComparableStack(ModItems.ingot_uranium_fuel, 6), new ComparableStack(ModItems.circuit, 24, EnumCircuitType.BASIC), new ComparableStack(ModItems.magnetron, 3), new ComparableStack(ModItems.battery_lithium_cell_6, 1), },1200); - makeRecipe(new ComparableStack(ModItems.sat_miner, 1), new AStack[] {new OreDictStack(BIGMT.plate(), 24), new ComparableStack(ModItems.plate_desh, 8), new ComparableStack(ModItems.motor, 2), new ComparableStack(ModItems.drill_titanium, 2), new ComparableStack(ModItems.circuit, 12, EnumCircuitType.ADVANCED), new ComparableStack(ModItems.fluid_barrel_full, 1, Fluids.KEROSENE.getID()), new ComparableStack(ModItems.thruster_small, 1), new ComparableStack(ModItems.photo_panel, 12), new ComparableStack(ModItems.centrifuge_element, 4), new ComparableStack(ModItems.magnetron, 3), new OreDictStack(RUBBER.ingot(), 12), new ComparableStack(ModItems.battery_lithium_cell_6, 1), },600); - makeRecipe(new ComparableStack(ModItems.sat_lunar_miner, 1), new AStack[] {new ComparableStack(ModItems.ingot_meteorite, 4), new ComparableStack(ModItems.plate_desh, 4), new ComparableStack(ModItems.motor_desh, 2), new ComparableStack(ModItems.drill_titanium, 2), new ComparableStack(ModItems.circuit, 8, EnumCircuitType.ADVANCED), new ComparableStack(ModItems.fluid_barrel_full, 1, Fluids.KEROSENE.getID()), new ComparableStack(ModItems.thruster_small, 1), new ComparableStack(ModItems.photo_panel, 12), new ComparableStack(ModItems.magnetron, 3), new OreDictStack(RUBBER.ingot(), 12), new ComparableStack(ModItems.battery_lithium_cell_6, 1), },600); makeRecipe(new ComparableStack(ModItems.chopper_head, 1), new AStack[] {new ComparableStack(ModBlocks.reinforced_glass, 2), new OreDictStack(CMB.ingot(), 22), new OreDictStack(MAGTUNG.wireFine(), 4), },300); makeRecipe(new ComparableStack(ModItems.chopper_gun, 1), new AStack[] {new OreDictStack(CMB.plate(), 4), new OreDictStack(CMB.ingot(), 2), new OreDictStack(W.wireFine(), 6), new ComparableStack(ModItems.coil_magnetized_tungsten, 1), new ComparableStack(ModItems.motor, 1), },150); makeRecipe(new ComparableStack(ModItems.chopper_torso, 1), new AStack[] {new OreDictStack(CMB.ingot(), 26), new OreDictStack(MAGTUNG.wireFine(), 4), new ComparableStack(ModItems.motor, 2), new ComparableStack(ModItems.chopper_blades, 2), },350); @@ -140,7 +131,7 @@ public class AssemblerRecipes extends SerializableRecipe { makeRecipe(new ComparableStack(ModBlocks.machine_schrabidium_battery, 1), new AStack[] {new OreDictStack(DESH.ingot(), 4), new OreDictStack(NP237.dust(), 12), new OreDictStack(SA326.dust(), 12), new OreDictStack(SA326.ingot(), 2), new OreDictStack(SA326.wireFine(), 4), },800); makeRecipe(new ComparableStack(ModBlocks.machine_dineutronium_battery, 1), new AStack[] {new OreDictStack(DNT.ingot(), 24), new ComparableStack(ModItems.powder_spark_mix, 12), new ComparableStack(ModItems.battery_spark_cell_1000, 1), new OreDictStack(CMB.ingot(), 32), new ComparableStack(ModItems.coil_magnetized_tungsten, 8), },1600); makeRecipe(new ComparableStack(ModBlocks.machine_shredder, 1), new AStack[] {new OreDictStack(STEEL.plate528(), 8), new ComparableStack(ModItems.motor, 2), new ComparableStack(ModBlocks.steel_beam, 2), new ComparableStack(Blocks.iron_bars, 2) },200); - makeRecipe(new ComparableStack(ModBlocks.machine_well, 1), new AStack[] {new ComparableStack(ModBlocks.steel_scaffold, 20), new ComparableStack(ModBlocks.steel_beam, 8), new ComparableStack(ModItems.tank_steel, 2), new ComparableStack(ModItems.motor, 1), new ComparableStack(ModItems.pipes_steel, 1), new ComparableStack(ModItems.drill_titanium, 1), new OreDictStack(MINGRADE.wireFine(), 6), },250); + makeRecipe(new ComparableStack(ModBlocks.machine_well, 1), new AStack[] {new ComparableStack(ModBlocks.steel_scaffold, 20), new ComparableStack(ModItems.tank_steel, 2), new ComparableStack(ModItems.motor, 1), new ComparableStack(ModItems.pipes_steel, 1), new ComparableStack(ModItems.drill_titanium, 1) }, 200); makeRecipe(new ComparableStack(ModBlocks.machine_pumpjack, 1), new AStack[] {new ComparableStack(ModBlocks.steel_scaffold, 8), new OreDictStack(STEEL.plateWelded(), 8), new ComparableStack(ModItems.pipes_steel, 4), new ComparableStack(ModItems.tank_steel, 4), new OreDictStack(STEEL.plate(), 32), new ComparableStack(ModItems.drill_titanium, 1), new ComparableStack(ModItems.motor_desh) }, 400); makeRecipe(new ComparableStack(ModBlocks.machine_flare, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 12), new OreDictStack(IRON.ingot(), 12), new OreDictStack(CU.plate528(), 4), new ComparableStack(ModItems.tank_steel, 1), new OreDictStack(STEEL.pipe(), 8), new OreDictStack(STEEL.shell(), 4), new ComparableStack(ModItems.thermo_element, 3), },200); makeRecipe(new ComparableStack(ModBlocks.machine_coker, 1), new AStack[] {!exp ? new OreDictStack(STEEL.plateWelded(), 3) : new OreDictStack(STEEL.heavyComp(), 2), new OreDictStack(IRON.ingot(), 16), new OreDictStack(CU.plate528(), 8), new OreDictStack(RUBBER.ingot(), 4), new ComparableStack(ModItems.tank_steel, 2), new ComparableStack(ModBlocks.steel_grate, 4) },200); @@ -264,12 +255,109 @@ public class AssemblerRecipes extends SerializableRecipe { makeRecipe(new ComparableStack(ModItems.mp_warhead_15_nuclear, 1), new AStack[] {new ComparableStack(ModItems.seg_15, 1), new OreDictStack(STEEL.plate(), 24), new OreDictStack(TI.plate(), 12), new OreDictStack(PU239.ingot(), 3), new ComparableStack(ModBlocks.det_charge, 6), new ComparableStack(ModItems.circuit, 5, EnumCircuitType.ADVANCED), },500); makeRecipe(new ComparableStack(ModItems.mp_warhead_15_n2, 1), new AStack[] {new ComparableStack(ModItems.seg_15, 1), new OreDictStack(STEEL.plate(), 8), new OreDictStack(TI.plate(), 20), new ComparableStack(ModBlocks.det_charge, 24), new ComparableStack(Blocks.redstone_block, 12), new OreDictStack(MAGTUNG.dust(), 6), new ComparableStack(ModItems.circuit, 4, EnumCircuitType.ADVANCED), },400); makeRecipe(new ComparableStack(ModItems.mp_warhead_15_balefire, 1), new AStack[] {new ComparableStack(ModItems.seg_15, 1), new OreDictStack(OreDictManager.getReflector(), 16), new ComparableStack(ModItems.powder_magic, 6), new ComparableStack(ModItems.egg_balefire_shard, 4), new OreDictStack(ANY_HIGHEXPLOSIVE.ingot(), 8), new ComparableStack(ModItems.circuit, 8, EnumCircuitType.ADVANCED), }, 60, ModItems.journal_bj); - makeRecipe(new ComparableStack(ModItems.missile_soyuz, 1), new AStack[] {new ComparableStack(ModItems.rocket_fuel, 40), new ComparableStack(ModBlocks.det_cord, 20), new ComparableStack(ModItems.thruster_medium, 12), new ComparableStack(ModItems.thruster_small, 12), new ComparableStack(ModItems.tank_steel, 10), new ComparableStack(ModItems.circuit, 32, EnumCircuitType.ADVANCED), new OreDictStack(RUBBER.ingot(), 64), new ComparableStack(ModItems.fins_small_steel, 4), new OreDictStack(TI.shell(), 32), new OreDictStack(STEEL.shell(), 18), new OreDictStack(FIBER.ingot(), 64), },600); - makeRecipe(new ComparableStack(ModItems.missile_soyuz_lander, 1), new AStack[] {new ComparableStack(ModItems.rocket_fuel, 10), new ComparableStack(ModItems.thruster_small, 3), new ComparableStack(ModItems.tank_steel, 2), new ComparableStack(ModItems.circuit, 16, EnumCircuitType.BASIC), new OreDictStack(ANY_RUBBER.ingot(), 32), new OreDictStack(AL.shell(), 2), new ComparableStack(ModItems.sphere_steel, 1), new OreDictStack(FIBER.ingot(), 12), },600, ModItems.journal_bj); makeRecipe(new ComparableStack(ModItems.fusion_shield_tungsten, 1), new AStack[] {new OreDictStack(W.block(), 32), new OreDictStack(OreDictManager.getReflector(), 96)}, 600); makeRecipe(new ComparableStack(ModItems.fusion_shield_desh, 1), new AStack[] {new OreDictStack(DESH.block(), 16), new OreDictStack(CO.block(), 16), new OreDictStack(BIGMT.plate(), 96)}, 600); makeRecipe(new ComparableStack(ModItems.fusion_shield_chlorophyte, 1), new AStack[] {new OreDictStack(W.block(), 16), new OreDictStack(DURA.block(), 16), new OreDictStack(OreDictManager.getReflector(), 48), new ComparableStack(ModItems.powder_chlorophyte, 48)}, 600); + + makeRecipe(new ComparableStack(ModItems.missile_soyuz, 1), new AStack[] { + new OreDictStack(TI.shell(), 32), + new OreDictStack(RUBBER.ingot(), 64), + new ComparableStack(ModItems.rocket_fuel, 64), + new ComparableStack(ModItems.thruster_small, 12), + new ComparableStack(ModItems.thruster_medium, 12), + new ComparableStack(ModItems.circuit, 4, EnumCircuitType.CONTROLLER), + new ComparableStack(ModItems.part_generic, 32, EnumPartType.LDE) + },600); + makeRecipe(new ComparableStack(ModItems.missile_soyuz_lander, 1), new AStack[] { + new OreDictStack(AL.shell(), 4), + new OreDictStack(RUBBER.ingot(), 16), + new ComparableStack(ModItems.rocket_fuel, 16), + new ComparableStack(ModItems.thruster_small, 3), + new ComparableStack(ModItems.circuit, 3, EnumCircuitType.CONTROLLER_ADVANCED), + new ComparableStack(ModItems.part_generic, 12, EnumPartType.LDE) + },600, ModItems.journal_bj); + + makeRecipe(new ComparableStack(ModItems.sat_base, 1), new AStack[] { + new OreDictStack(RUBBER.ingot(), 12), + new OreDictStack(TI.shell(), 3), + new ComparableStack(ModItems.thruster_large, 1), + new ComparableStack(ModItems.part_generic, 8, EnumPartType.LDE), + new ComparableStack(ModItems.plate_desh, 4), + new ComparableStack(ModItems.fluid_barrel_full, 1, Fluids.KEROSENE.getID()), + new ComparableStack(ModItems.photo_panel, 24), + new ComparableStack(ModItems.circuit, 12, EnumCircuitType.BASIC), + new ComparableStack(ModBlocks.machine_lithium_battery, 1) + },500); + makeRecipe(new ComparableStack(ModItems.sat_head_mapper, 1), new AStack[] { + new OreDictStack(STEEL.shell(), 3), + new ComparableStack(ModItems.plate_desh, 4), + new ComparableStack(ModItems.circuit, 4, EnumCircuitType.ADVANCED), + new ComparableStack(ModBlocks.glass_quartz, 8), + },400); + makeRecipe(new ComparableStack(ModItems.sat_head_scanner, 1), new AStack[] { + new OreDictStack(STEEL.shell(), 3), + new OreDictStack(TI.plateCast(), 8), + new ComparableStack(ModItems.plate_desh, 4), + new ComparableStack(ModItems.magnetron, 8), + new ComparableStack(ModItems.circuit, 8, EnumCircuitType.ADVANCED.ordinal()) + },400); + makeRecipe(new ComparableStack(ModItems.sat_head_radar, 1), new AStack[] { + new OreDictStack(STEEL.shell(), 3), + new OreDictStack(TI.plateCast(), 12), + new ComparableStack(ModItems.magnetron, 12), + new ComparableStack(ModItems.coil_gold, 16), + new ComparableStack(ModItems.circuit, 4, EnumCircuitType.ADVANCED.ordinal()) + },400); + makeRecipe(new ComparableStack(ModItems.sat_head_laser, 1), new AStack[] { + new OreDictStack(STEEL.shell(), 6), + new OreDictStack(CU.plateCast(), 24), + new OreDictStack(ANY_HARDPLASTIC.ingot(), 16), + new ComparableStack(ModItems.circuit, 8, EnumCircuitType.CONTROLLER_ADVANCED), + new ComparableStack(ModItems.circuit, 16, EnumCircuitType.CAPACITOR_BOARD), + new ComparableStack(ModItems.crystal_diamond, 8), + new ComparableStack(ModBlocks.glass_quartz, 8) + },450); + makeRecipe(new ComparableStack(ModItems.sat_head_resonator, 1), new AStack[] { + new OreDictStack(STEEL.plateCast(), 6), + new OreDictStack(STAR.ingot(), 12), + new OreDictStack(ANY_PLASTIC.ingot(), 48), + new ComparableStack(ModItems.crystal_xen, 1), + new ComparableStack(ModItems.circuit, 16, EnumCircuitType.ADVANCED) + },1000); + makeRecipe(new ComparableStack(ModItems.sat_foeq, 1), new AStack[] { + new OreDictStack(TI.shell(), 3), + new ComparableStack(ModItems.plate_desh, 8), + new ComparableStack(ModItems.fluid_barrel_full, 1, Fluids.HYDROGEN.getID()), + new ComparableStack(ModItems.photo_panel, 16), + new ComparableStack(ModItems.thruster_nuclear, 1), + new ComparableStack(ModItems.ingot_uranium_fuel, 6), + new ComparableStack(ModItems.circuit, 24, EnumCircuitType.BASIC), + new ComparableStack(ModItems.magnetron, 3), + new ComparableStack(ModBlocks.machine_lithium_battery, 1) + },1200); + makeRecipe(new ComparableStack(ModItems.sat_miner, 1), new AStack[] { + new OreDictStack(BIGMT.plate(), 24), + new ComparableStack(ModItems.motor_desh, 2), + new ComparableStack(ModItems.drill_titanium, 2), + new ComparableStack(ModItems.circuit, 12, EnumCircuitType.ADVANCED), + new ComparableStack(ModItems.fluid_barrel_full, 1, Fluids.KEROSENE.getID()), + new ComparableStack(ModItems.thruster_small, 1), + new ComparableStack(ModItems.photo_panel, 12), + new ComparableStack(ModItems.centrifuge_element, 4), + new ComparableStack(ModBlocks.machine_lithium_battery, 1) + },600); + makeRecipe(new ComparableStack(ModItems.sat_lunar_miner, 1), new AStack[] { + new ComparableStack(ModItems.ingot_meteorite, 4), + new ComparableStack(ModItems.plate_desh, 4), + new ComparableStack(ModItems.motor, 2), + new ComparableStack(ModItems.drill_titanium, 2), + new ComparableStack(ModItems.circuit, 8, EnumCircuitType.ADVANCED), + new ComparableStack(ModItems.fluid_barrel_full, 1, Fluids.KEROSENE.getID()), + new ComparableStack(ModItems.thruster_small, 1), + new ComparableStack(ModItems.photo_panel, 12), + new ComparableStack(ModBlocks.machine_lithium_battery, 1) + },600); makeRecipe(new ComparableStack(ModItems.upgrade_overdrive_1, 1), new AStack[] { new ComparableStack(ModItems.upgrade_speed_3, 1), @@ -510,30 +598,26 @@ public class AssemblerRecipes extends SerializableRecipe { }, 200); makeRecipe(new ComparableStack(ModItems.ammo_75bolt, 2, ItemAmmoEnums.Ammo75Bolt.STOCK.ordinal()), new AStack[] { - new OreDictStack(STEEL.plate(), 2), - new OreDictStack(CU.plate(), 1), - new ComparableStack(ModItems.casing_50, 5), + new OreDictStack(STEEL.plate(), 4), new OreDictStack(ANY_PLASTICEXPLOSIVE.ingot(), 2), + new OreDictStack(ANY_HARDPLASTIC.ingot(), 2), new ComparableStack(ModItems.cordite, 3), new OreDictStack(U238.ingot(), 1) }, 60); makeRecipe(new ComparableStack(ModItems.ammo_75bolt, 2, ItemAmmoEnums.Ammo75Bolt.INCENDIARY.ordinal()), new AStack[] { - new OreDictStack(STEEL.plate(), 2), - new OreDictStack(CU.plate(), 1), - new ComparableStack(ModItems.casing_50, 5), - new OreDictStack(ANY_PLASTICEXPLOSIVE.ingot(), 3), + new OreDictStack(STEEL.plate(), 4), + new OreDictStack(ANY_PLASTICEXPLOSIVE.ingot(), 2), + new OreDictStack(ANY_HARDPLASTIC.ingot(), 2), new ComparableStack(ModItems.cordite, 3), new OreDictStack(P_WHITE.ingot(), 3) }, 60); makeRecipe(new ComparableStack(ModItems.ammo_75bolt, 2, ItemAmmoEnums.Ammo75Bolt.HE.ordinal()), new AStack[] { - new OreDictStack(STEEL.plate(), 2), - new OreDictStack(CU.plate(), 1), - new ComparableStack(ModItems.casing_50, 5), - new OreDictStack(ANY_HIGHEXPLOSIVE.ingot(), 5), - new ComparableStack(ModItems.cordite, 5), - new OreDictStack(REDSTONE.dust(), 3) + new OreDictStack(STEEL.plate(), 4), + new OreDictStack(ANY_PLASTICEXPLOSIVE.ingot(), 2), + new OreDictStack(ANY_HARDPLASTIC.ingot(), 5), + new ComparableStack(ModItems.cordite, 5) }, 60); makeRecipe(new ComparableStack(ModItems.spawn_worm, 1), new AStack[] { @@ -1121,8 +1205,7 @@ public class AssemblerRecipes extends SerializableRecipe { makeRecipe(new ComparableStack(ModBlocks.machine_catalytic_cracker), new AStack[] { new ComparableStack(ModBlocks.steel_scaffold, 16), - !exp ? new OreDictStack(STEEL.shell(), 4) : new OreDictStack(STEEL.heavyComp()), - new ComparableStack(ModItems.tank_steel, 3), + !exp ? new OreDictStack(STEEL.shell(), 6) : new OreDictStack(STEEL.heavyComp()), new OreDictStack(ANY_PLASTIC.ingot(), 4), new OreDictStack(NB.ingot(), 2), new ComparableStack(ModItems.catalyst_clay, 12), @@ -1132,10 +1215,10 @@ public class AssemblerRecipes extends SerializableRecipe { new OreDictStack(STEEL.ingot(), 8), new OreDictStack(CU.plate528(), 12), new OreDictStack(ANY_TAR.any(), 8), + new OreDictStack(STEEL.shell(), 3), new ComparableStack(ModItems.circuit, 12, EnumCircuitType.CAPACITOR), new ComparableStack(ModItems.catalyst_clay, 4), - new ComparableStack(ModItems.coil_tungsten, 8), - new ComparableStack(ModItems.tank_steel, 2) + new ComparableStack(ModItems.coil_tungsten, 8) }, 200); makeRecipe(new ComparableStack(ModBlocks.machine_solidifier), new AStack[] { @@ -1145,8 +1228,7 @@ public class AssemblerRecipes extends SerializableRecipe { new OreDictStack(STEEL.shell(), 3), new ComparableStack(ModItems.circuit, 12, EnumCircuitType.CAPACITOR), new ComparableStack(ModItems.catalyst_clay, 4), - new ComparableStack(ModItems.coil_copper, 4), - new ComparableStack(ModItems.tank_steel, 2) + new ComparableStack(ModItems.coil_copper, 4) }, 200); makeRecipe(new ComparableStack(ModBlocks.machine_radiolysis), new AStack[] { @@ -1187,26 +1269,21 @@ public class AssemblerRecipes extends SerializableRecipe { makeRecipe(new ComparableStack(ModBlocks.silo_hatch, 1), new AStack[]{new OreDictStack(STEEL.plateWelded(), 4), new ComparableStack(ModItems.plate_polymer, 4), new ComparableStack(ModItems.motor, 2), new OreDictStack(STEEL.bolt(), 16), new OreDictStack(KEY_GREEN, 4)}, 200); makeRecipe(new ComparableStack(ModBlocks.silo_hatch_large, 1), new AStack[]{new OreDictStack(STEEL.plateWelded(), 6), new ComparableStack(ModItems.plate_polymer, 8), new ComparableStack(ModItems.motor, 2), new OreDictStack(STEEL.bolt(), 16), new OreDictStack(KEY_GREEN, 8)}, 200); - if(Loader.isModLoaded("Mekanism")) { + if(GeneralConfig.enableMekanismChanges && Loader.isModLoaded("Mekanism")) { Block mb = (Block) Block.blockRegistry.getObject("Mekanism:MachineBlock"); if(mb != null) { makeRecipe(new ComparableStack(mb, 1, 4), new AStack[] { - new OreDictStack(DURA.ingot(), 16), - new OreDictStack(DESH.ingot(), 16), - new OreDictStack(STEEL.plateWelded(), 32), - new OreDictStack(CU.plateWelded(), 24), - new ComparableStack(ModItems.pipes_steel, 8), + new OreDictStack(BIGMT.plateCast(), 16), + new OreDictStack(CU.plateWelded(), 12), + new OreDictStack("alloyUltimate", 32), new ComparableStack(ModItems.circuit, 16, EnumCircuitType.BISMOID), - new ComparableStack(ModItems.wire_dense, 32, Mats.MAT_ALLOY.id), - new ComparableStack(ModBlocks.fusion_conductor, 12), - new ComparableStack(ModBlocks.capacitor_tantalium, 53), - new ComparableStack(ModItems.crystal_redstone, 16), - new ComparableStack(ModItems.crystal_diamond, 8), - new ComparableStack(ModItems.motor_bismuth, 4) - }, 15 * 60 * 20); + new ComparableStack(ModItems.circuit, 32, EnumCircuitType.CAPACITOR_BOARD), + new ComparableStack(ModItems.wire_dense, 32, Mats.MAT_GOLD.id), + new ComparableStack(ModItems.motor_bismuth, 3) + }, 1200); } } diff --git a/src/main/java/com/hbm/inventory/recipes/CentrifugeRecipes.java b/src/main/java/com/hbm/inventory/recipes/CentrifugeRecipes.java index 5896e1a7e..a3aaea30c 100644 --- a/src/main/java/com/hbm/inventory/recipes/CentrifugeRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/CentrifugeRecipes.java @@ -25,7 +25,10 @@ import com.hbm.items.ItemEnums.EnumChunkType; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemPWRFuel.EnumPWRFuel; import com.hbm.items.machine.ItemWatzPellet.EnumWatzType; +import com.hbm.items.special.ItemBedrockOreNew; import com.hbm.items.special.ItemBedrockOre.EnumBedrockOre; +import com.hbm.items.special.ItemBedrockOreNew.BedrockOreGrade; +import com.hbm.items.special.ItemBedrockOreNew.BedrockOreType; import com.hbm.items.special.ItemByproduct.EnumByproduct; import com.hbm.main.MainRegistry; import com.hbm.util.ItemStackUtil; @@ -509,6 +512,40 @@ public class CentrifugeRecipes extends SerializableRecipe { ItemStackUtil.carefulCopy(by3) }); } + for(BedrockOreType type : BedrockOreType.values()) { + + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.BASE, type)), new ItemStack[] {ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY, type), new ItemStack(Blocks.gravel)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.BASE_ROASTED, type)), new ItemStack[] {ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY, type), new ItemStack(Blocks.gravel)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.BASE_WASHED, type)), new ItemStack[] {ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY, type), ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY, type), new ItemStack(Blocks.gravel)}); + + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SULFURIC, type)), new ItemStack[] {ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NOSULFURIC, type), ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NOSULFURIC, type), ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_BYPRODUCT, type)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SOLVENT, type)), new ItemStack[] {ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NOSOLVENT, type), ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NOSOLVENT, type), ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_BYPRODUCT, type)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_RAD, type)), new ItemStack[] {ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NORAD, type), ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NORAD, type), ItemBedrockOreNew.make(BedrockOreGrade.RAD_BYPRODUCT, type)}); + + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.primary1), ItemBedrockOreNew.extract(type.primary2)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_ROASTED, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.primary1), ItemBedrockOreNew.extract(type.primary2), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NOSULFURIC, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.primary1), ItemBedrockOreNew.extract(type.primary2), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NOSOLVENT, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.primary1), ItemBedrockOreNew.extract(type.primary2), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NORAD, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.primary1), ItemBedrockOreNew.extract(type.primary2), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_FIRST, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.primary1), ItemBedrockOreNew.extract(type.primary1), ItemBedrockOreNew.extract(type.primary2), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type, 2)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SECOND, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.primary1), ItemBedrockOreNew.extract(type.primary2), ItemBedrockOreNew.extract(type.primary2), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type, 2)}); + + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_BYPRODUCT, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.byproductAcid1), ItemBedrockOreNew.extract(type.byproductAcid2), ItemBedrockOreNew.extract(type.byproductAcid3), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_ROASTED, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.byproductAcid1), ItemBedrockOreNew.extract(type.byproductAcid2), ItemBedrockOreNew.extract(type.byproductAcid3), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_ARC, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.byproductAcid1), ItemBedrockOreNew.extract(type.byproductAcid2), ItemBedrockOreNew.extract(type.byproductAcid3), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_WASHED, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.byproductAcid1, 2), ItemBedrockOreNew.extract(type.byproductAcid2, 2), ItemBedrockOreNew.extract(type.byproductAcid3, 2), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)}); + + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_BYPRODUCT, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.byproductSolvent1), ItemBedrockOreNew.extract(type.byproductSolvent2), ItemBedrockOreNew.extract(type.byproductSolvent3), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_ROASTED, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.byproductSolvent1), ItemBedrockOreNew.extract(type.byproductSolvent2), ItemBedrockOreNew.extract(type.byproductSolvent3), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_ARC, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.byproductSolvent1), ItemBedrockOreNew.extract(type.byproductSolvent2), ItemBedrockOreNew.extract(type.byproductSolvent3), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_WASHED, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.byproductSolvent1, 2), ItemBedrockOreNew.extract(type.byproductSolvent2, 2), ItemBedrockOreNew.extract(type.byproductSolvent3, 2), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)}); + + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.RAD_BYPRODUCT, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.byproductRad1), ItemBedrockOreNew.extract(type.byproductRad2), ItemBedrockOreNew.extract(type.byproductRad3), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.RAD_ROASTED, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.byproductRad1), ItemBedrockOreNew.extract(type.byproductRad2), ItemBedrockOreNew.extract(type.byproductRad3), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.RAD_ARC, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.byproductRad1), ItemBedrockOreNew.extract(type.byproductRad2), ItemBedrockOreNew.extract(type.byproductRad3), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)}); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.RAD_WASHED, type)), new ItemStack[] {ItemBedrockOreNew.extract(type.byproductRad1, 2), ItemBedrockOreNew.extract(type.byproductRad2, 2), ItemBedrockOreNew.extract(type.byproductRad3, 2), ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)}); + } + List quartz = OreDictionary.getOres("crystalCertusQuartz"); if(quartz != null && !quartz.isEmpty()) { diff --git a/src/main/java/com/hbm/inventory/recipes/CombinationRecipes.java b/src/main/java/com/hbm/inventory/recipes/CombinationRecipes.java index 1fe93cf7e..e512e8529 100644 --- a/src/main/java/com/hbm/inventory/recipes/CombinationRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/CombinationRecipes.java @@ -24,6 +24,9 @@ import com.hbm.items.ItemEnums.EnumCokeType; import com.hbm.items.ItemEnums.EnumTarType; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemFluidIcon; +import com.hbm.items.special.ItemBedrockOreNew; +import com.hbm.items.special.ItemBedrockOreNew.BedrockOreGrade; +import com.hbm.items.special.ItemBedrockOreNew.BedrockOreType; import com.hbm.util.Tuple.Pair; import net.minecraft.init.Blocks; @@ -63,6 +66,14 @@ public class CombinationRecipes extends SerializableRecipe { recipes.put(new ComparableStack(Items.reeds), new Pair(new ItemStack(Items.sugar, 2), new FluidStack(Fluids.ETHANOL, 50))); recipes.put(new ComparableStack(Blocks.clay), new Pair(new ItemStack(Blocks.brick_block, 1), null)); + + for(BedrockOreType type : BedrockOreType.values()) { + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.BASE, type)), new Pair(ItemBedrockOreNew.make(BedrockOreGrade.BASE_ROASTED, type), new FluidStack(Fluids.VITRIOL, 50))); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY, type)), new Pair(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_ROASTED, type), new FluidStack(Fluids.VITRIOL, 50))); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_BYPRODUCT, type)), new Pair(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_ROASTED, type), new FluidStack(Fluids.VITRIOL, 50))); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_BYPRODUCT, type)), new Pair(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_ROASTED, type), new FluidStack(Fluids.VITRIOL, 50))); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.RAD_BYPRODUCT, type)), new Pair(ItemBedrockOreNew.make(BedrockOreGrade.RAD_ROASTED, type), new FluidStack(Fluids.VITRIOL, 50))); + } } public static Pair getOutput(ItemStack stack) { diff --git a/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java b/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java index e4095c351..2c5867d72 100644 --- a/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java @@ -25,7 +25,10 @@ import com.hbm.items.ItemEnums.EnumTarType; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemChemicalDye.EnumChemDye; import com.hbm.items.machine.ItemFluidIcon; +import com.hbm.items.special.ItemBedrockOreNew; import com.hbm.items.special.ItemBedrockOre.EnumBedrockOre; +import com.hbm.items.special.ItemBedrockOreNew.BedrockOreGrade; +import com.hbm.items.special.ItemBedrockOreNew.BedrockOreType; import com.hbm.items.special.ItemPlasticScrap.ScrapType; import com.hbm.main.MainRegistry; import com.hbm.util.Tuple.Pair; @@ -83,7 +86,7 @@ public class CrystallizerRecipes extends SerializableRecipe { registerRecipe(new ComparableStack(ModBlocks.gravel_diamond), new CrystallizerRecipe(ModItems.crystal_diamond, baseTime)); registerRecipe(SRN.ingot(), new CrystallizerRecipe(ModItems.crystal_schraranium, baseTime)); - registerRecipe("sand", new CrystallizerRecipe(ModItems.ingot_fiberglass, utilityTime)); + registerRecipe(KEY_SAND, new CrystallizerRecipe(ModItems.ingot_fiberglass, utilityTime)); registerRecipe(SI.ingot(), new CrystallizerRecipe(new ItemStack(Items.quartz, 2), utilityTime), new FluidStack(Fluids.OXYGEN, 250)); registerRecipe(REDSTONE.block(), new CrystallizerRecipe(ModItems.ingot_mercury, baseTime)); registerRecipe(CINNABAR.crystal(), new CrystallizerRecipe(new ItemStack(ModItems.ingot_mercury, 3), baseTime)); @@ -133,6 +136,59 @@ public class CrystallizerRecipes extends SerializableRecipe { registerRecipe(new ComparableStack(ModItems.ore_nitrocrystalline, 1, i), new CrystallizerRecipe(new ItemStack(ModItems.ore_deepcleaned, 1, i), oreTime), organic); registerRecipe(new ComparableStack(ModItems.ore_nitrocrystalline, 1, i), new CrystallizerRecipe(new ItemStack(ModItems.ore_seared, 1, i), oreTime), hiperf); } + + int bedrock = 200; + int washing = 100; + for(BedrockOreType type : BedrockOreType.values()) { + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.BASE, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.BASE_WASHED, type), washing), new FluidStack(Fluids.WATER, 250)); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.BASE_ROASTED, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.BASE_WASHED, type), washing), new FluidStack(Fluids.WATER, 250)); + + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SULFURIC, type), bedrock), new FluidStack(Fluids.SULFURIC_ACID, 250)); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_ROASTED, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SULFURIC, type), bedrock), new FluidStack(Fluids.SULFURIC_ACID, 250)); + + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SOLVENT, type), bedrock), new FluidStack(Fluids.SOLVENT, 250)); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_ROASTED, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SOLVENT, type), bedrock), new FluidStack(Fluids.SOLVENT, 250)); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NOSULFURIC, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SOLVENT, type), bedrock), new FluidStack(Fluids.SOLVENT, 250)); + + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_RAD, type), bedrock), new FluidStack(Fluids.RADIOSOLVENT, 250)); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_ROASTED, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_RAD, type), bedrock), new FluidStack(Fluids.RADIOSOLVENT, 250)); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NOSULFURIC, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_RAD, type), bedrock), new FluidStack(Fluids.RADIOSOLVENT, 250)); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NOSOLVENT, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_RAD, type), bedrock), new FluidStack(Fluids.RADIOSOLVENT, 250)); + + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_BYPRODUCT, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_WASHED, type), washing), new FluidStack(Fluids.WATER, 250)); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_ROASTED, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_WASHED, type), washing), new FluidStack(Fluids.WATER, 250)); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_ARC, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.SULFURIC_WASHED, type), washing), new FluidStack(Fluids.WATER, 250)); + + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_BYPRODUCT, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_WASHED, type), washing), new FluidStack(Fluids.WATER, 250)); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_ROASTED, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_WASHED, type), washing), new FluidStack(Fluids.WATER, 250)); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_ARC, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.SOLVENT_WASHED, type), washing), new FluidStack(Fluids.WATER, 250)); + + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.RAD_BYPRODUCT, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.RAD_WASHED, type), washing), new FluidStack(Fluids.WATER, 250)); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.RAD_ROASTED, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.RAD_WASHED, type), washing), new FluidStack(Fluids.WATER, 250)); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.RAD_ARC, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.RAD_WASHED, type), washing), new FluidStack(Fluids.WATER, 250)); + + FluidStack primary = new FluidStack(Fluids.HYDROGEN, 250); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_FIRST, type), bedrock), primary); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_ROASTED, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_FIRST, type), bedrock), primary); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SULFURIC, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_FIRST, type), bedrock), primary); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NOSULFURIC, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_FIRST, type), bedrock), primary); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SOLVENT, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_FIRST, type), bedrock), primary); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NOSOLVENT, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_FIRST, type), bedrock), primary); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_RAD, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_FIRST, type), bedrock), primary); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NORAD, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_FIRST, type), bedrock), primary); + + FluidStack secondary = new FluidStack(Fluids.CHLORINE, 250); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SECOND, type), bedrock), secondary); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_ROASTED, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SECOND, type), bedrock), secondary); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SULFURIC, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SECOND, type), bedrock), secondary); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NOSULFURIC, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SECOND, type), bedrock), secondary); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SOLVENT, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SECOND, type), bedrock), secondary); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NOSOLVENT, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SECOND, type), bedrock), secondary); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_RAD, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SECOND, type), bedrock), secondary); + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_NORAD, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SECOND, type), bedrock), secondary); + + registerRecipe(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)), new CrystallizerRecipe(ItemBedrockOreNew.make(BedrockOreGrade.BASE, type), bedrock).setReq(64), new FluidStack(Fluids.NITRIC_ACID, 1000)); + } FluidStack[] dyes = new FluidStack[] {new FluidStack(Fluids.WOODOIL, 100), new FluidStack(Fluids.FISHOIL, 100)}; for(FluidStack dye : dyes) { diff --git a/src/main/java/com/hbm/inventory/recipes/ElectrolyserMetalRecipes.java b/src/main/java/com/hbm/inventory/recipes/ElectrolyserMetalRecipes.java index 2e240f391..8932941c2 100644 --- a/src/main/java/com/hbm/inventory/recipes/ElectrolyserMetalRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/ElectrolyserMetalRecipes.java @@ -21,6 +21,9 @@ import com.hbm.inventory.recipes.loader.SerializableRecipe; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemFluidIcon; import com.hbm.items.machine.ItemScraps; +import com.hbm.items.special.ItemBedrockOreNew; +import com.hbm.items.special.ItemBedrockOreNew.BedrockOreGrade; +import com.hbm.items.special.ItemBedrockOreNew.BedrockOreType; import com.hbm.util.ItemStackUtil; import net.minecraft.item.ItemStack; @@ -128,6 +131,33 @@ public class ElectrolyserMetalRecipes extends SerializableRecipe { new MaterialStack(Mats.MAT_IRON, MaterialShapes.INGOT.q(4)), new ItemStack(ModItems.powder_copper, 4), new ItemStack(ModItems.powder_lithium_tiny, 3))); + + for(BedrockOreType type : BedrockOreType.values()) { + + MaterialStack f0 = ItemBedrockOreNew.toFluid(type.primary1, MaterialShapes.INGOT.q(7)); + MaterialStack f1 = ItemBedrockOreNew.toFluid(type.primary2, MaterialShapes.INGOT.q(4)); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_FIRST, type)), new ElectrolysisMetalRecipe( + f0 != null ? f0 : new MaterialStack(Mats.MAT_SLAG, MaterialShapes.INGOT.q(1)), + f1 != null ? f1 : new MaterialStack(Mats.MAT_SLAG, MaterialShapes.INGOT.q(1)), + f0 == null ? ItemBedrockOreNew.extract(type.primary1, 7) : new ItemStack(ModItems.dust), + f1 == null ? ItemBedrockOreNew.extract(type.primary2, 4) : new ItemStack(ModItems.dust))); + + MaterialStack s0 = ItemBedrockOreNew.toFluid(type.primary1, MaterialShapes.INGOT.q(4)); + MaterialStack s1 = ItemBedrockOreNew.toFluid(type.primary2, MaterialShapes.INGOT.q(7)); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.PRIMARY_SECOND, type)), new ElectrolysisMetalRecipe( + s0 != null ? s0 : new MaterialStack(Mats.MAT_SLAG, MaterialShapes.INGOT.q(1)), + s1 != null ? s1 : new MaterialStack(Mats.MAT_SLAG, MaterialShapes.INGOT.q(1)), + s0 == null ? ItemBedrockOreNew.extract(type.primary1, 4) : new ItemStack(ModItems.dust), + s1 == null ? ItemBedrockOreNew.extract(type.primary2, 7) : new ItemStack(ModItems.dust))); + + MaterialStack c0 = ItemBedrockOreNew.toFluid(type.primary1, MaterialShapes.INGOT.q(2)); + MaterialStack c1 = ItemBedrockOreNew.toFluid(type.primary2, MaterialShapes.INGOT.q(2)); + recipes.put(new ComparableStack(ItemBedrockOreNew.make(BedrockOreGrade.CRUMBS, type)), new ElectrolysisMetalRecipe( + c0 != null ? c0 : new MaterialStack(Mats.MAT_SLAG, MaterialShapes.INGOT.q(1, 2)), + c1 != null ? c1 : new MaterialStack(Mats.MAT_SLAG, MaterialShapes.INGOT.q(1, 2)), + c0 == null ? ItemBedrockOreNew.extract(type.primary1, 2) : new ItemStack(ModItems.dust), + c1 == null ? ItemBedrockOreNew.extract(type.primary2, 2) : new ItemStack(ModItems.dust))); + } } public static ElectrolysisMetalRecipe getRecipe(ItemStack stack) { 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 0c1815206..a556e80a4 100644 --- a/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java @@ -439,10 +439,9 @@ public class AnvilRecipes { new AStack[] { new ComparableStack(ModItems.deuterium_filter, 2), new OreDictStack(STEEL.shell(), 5), - new ComparableStack(ModBlocks.concrete_smooth, 8), - new ComparableStack(ModBlocks.concrete_asbestos, 4), - new ComparableStack(ModBlocks.steel_scaffold, 16), new OreDictStack(STEEL.pipe(), 12), + new ComparableStack(ModBlocks.concrete_asbestos, 8), + new ComparableStack(ModBlocks.steel_scaffold, 16), new OreDictStack(Fluids.SOURGAS.getDict(1_000), 8), }, new AnvilOutput(new ItemStack(ModBlocks.machine_deuterium_tower))).setTier(4)); diff --git a/src/main/java/com/hbm/items/ItemEnums.java b/src/main/java/com/hbm/items/ItemEnums.java index cfc8072df..8e4592d72 100644 --- a/src/main/java/com/hbm/items/ItemEnums.java +++ b/src/main/java/com/hbm/items/ItemEnums.java @@ -75,4 +75,8 @@ public class ItemEnums { public static enum EnumPages { PAGE1, PAGE2, PAGE3, PAGE4, PAGE5, PAGE6, PAGE7, PAGE8 } + + public static enum EnumSecretType { + CANISTER, CONTROLLER + } } diff --git a/src/main/java/com/hbm/items/ItemGenericPart.java b/src/main/java/com/hbm/items/ItemGenericPart.java index 67e129cfd..f77155547 100644 --- a/src/main/java/com/hbm/items/ItemGenericPart.java +++ b/src/main/java/com/hbm/items/ItemGenericPart.java @@ -12,7 +12,8 @@ public class ItemGenericPart extends ItemEnumMulti { public static enum EnumPartType { PISTON_PNEUMATIC("piston_pneumatic"), PISTON_HYDRAULIC("piston_hydraulic"), - PISTON_ELECTRIC("piston_electric"); + PISTON_ELECTRIC("piston_electric"), + LDE("low_density_element"); private String texName; diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 1c501b89d..f58d01323 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -213,6 +213,8 @@ public class ModItems { public static Item ore_seared; //public static Item ore_radcleaned; public static Item ore_enriched; //final stage + public static Item bedrock_ore_base; + public static Item bedrock_ore; public static Item billet_uranium; public static Item billet_u233; @@ -347,6 +349,7 @@ public class ModItems { public static Item thruster_nuclear; public static Item safety_fuse; public static Item part_generic; + public static Item item_secret; public static Item chemical_dye; public static Item crayon; @@ -675,7 +678,6 @@ public class ModItems { public static Item dysfunctional_reactor; public static Item blade_titanium; public static Item turbine_titanium; - public static Item generator_front; public static Item blade_tungsten; public static Item turbine_tungsten; public static Item pellet_coal; @@ -702,7 +704,6 @@ public class ModItems { public static Item warhead_buster_medium; public static Item warhead_buster_large; public static Item warhead_nuclear; - public static Item warhead_mirvlet; public static Item warhead_mirv; public static Item warhead_volcano; @@ -1086,7 +1087,7 @@ public class ModItems { public static Item waste_u233; public static Item waste_u235; public static Item waste_schrabidium; - public static Item waste_zfb_mox; //TODO: remind me to smite these useless waste items and condense em like the rbmk waste + public static Item waste_zfb_mox; public static Item waste_plate_u233; public static Item waste_plate_u235; @@ -1262,6 +1263,7 @@ public class ModItems { public static Item geiger_counter; public static Item digamma_diagnostic; public static Item pollution_detector; + public static Item ore_density_scanner; public static Item survey_scanner; public static Item mirror_tool; public static Item rbmk_tool; @@ -2615,6 +2617,7 @@ public class ModItems { thruster_nuclear = new Item().setUnlocalizedName("thruster_nuclear").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":thruster_nuclear"); safety_fuse = new Item().setUnlocalizedName("safety_fuse").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":safety_fuse"); part_generic = new ItemGenericPart().setUnlocalizedName("part_generic").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":part_generic"); + item_secret = new ItemEnumMulti(EnumSecretType.class, true, true).setUnlocalizedName("item_secret").setCreativeTab(null).setTextureName(RefStrings.MODID + ":item_secret"); chemical_dye = new ItemChemicalDye().setUnlocalizedName("chemical_dye").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":chemical_dye"); crayon = new ItemCrayon().setUnlocalizedName("crayon").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":crayon"); @@ -2720,6 +2723,8 @@ public class ModItems { ore_seared = new ItemBedrockOre().setUnlocalizedName("ore_seared").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ore_seared"); //ore_radcleaned = new ItemBedrockOre().setUnlocalizedName("ore_radcleaned").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ore_radcleaned"); ore_enriched = new ItemBedrockOre().setUnlocalizedName("ore_enriched").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ore_enriched"); + bedrock_ore_base = new ItemBedrockOreBase().setUnlocalizedName("bedrock_ore_base").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":bedrock_ore_new"); + bedrock_ore = new ItemBedrockOreNew().setUnlocalizedName("bedrock_ore").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":bedrock_ore_new"); ingot_lanthanium = new ItemCustomLore().setUnlocalizedName("ingot_lanthanium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_lanthanium"); ingot_actinium = new ItemCustomLore().setUnlocalizedName("ingot_actinium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_actinium"); @@ -3030,7 +3035,6 @@ public class ModItems { dysfunctional_reactor = new Item().setUnlocalizedName("dysfunctional_reactor").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":dysfunctional_reactor"); blade_titanium = new Item().setUnlocalizedName("blade_titanium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":blade_titanium"); turbine_titanium = new Item().setUnlocalizedName("turbine_titanium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":turbine_titanium"); - generator_front = new Item().setUnlocalizedName("generator_front").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":generator_front"); blade_tungsten = new Item().setUnlocalizedName("blade_tungsten").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":blade_tungsten"); turbine_tungsten = new Item().setUnlocalizedName("turbine_tungsten").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":turbine_tungsten"); @@ -3051,7 +3055,6 @@ public class ModItems { warhead_buster_medium = new Item().setUnlocalizedName("warhead_buster_medium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":warhead_buster_medium"); warhead_buster_large = new Item().setUnlocalizedName("warhead_buster_large").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":warhead_buster_large"); warhead_nuclear = new Item().setUnlocalizedName("warhead_nuclear").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":warhead_nuclear"); - warhead_mirvlet = new Item().setUnlocalizedName("warhead_mirvlet").setCreativeTab(null).setTextureName(RefStrings.MODID + ":warhead_mirvlet"); warhead_mirv = new Item().setUnlocalizedName("warhead_mirv").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":warhead_mirv"); warhead_volcano = new Item().setUnlocalizedName("warhead_volcano").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":warhead_volcano"); @@ -4602,6 +4605,7 @@ public class ModItems { geiger_counter = new ItemGeigerCounter().setUnlocalizedName("geiger_counter").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":geiger_counter"); digamma_diagnostic = new ItemDigammaDiagnostic().setUnlocalizedName("digamma_diagnostic").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":digamma_diagnostic"); pollution_detector = new ItemPollutionDetector().setUnlocalizedName("pollution_detector").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":pollution_detector"); + ore_density_scanner = new ItemOreDensityScanner().setUnlocalizedName("ore_density_scanner").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":ore_density_scanner"); survey_scanner = new ItemSurveyScanner().setUnlocalizedName("survey_scanner").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":survey_scanner"); mirror_tool = new ItemMirrorTool().setUnlocalizedName("mirror_tool").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":mirror_tool"); rbmk_tool = new ItemRBMKTool().setUnlocalizedName("rbmk_tool").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":rbmk_tool"); @@ -5939,9 +5943,10 @@ public class ModItems { GameRegistry.registerItem(ore_nitrocrystalline, ore_nitrocrystalline.getUnlocalizedName()); GameRegistry.registerItem(ore_deepcleaned, ore_deepcleaned.getUnlocalizedName()); GameRegistry.registerItem(ore_seared, ore_seared.getUnlocalizedName()); - //GameRegistry.registerItem(ore_radcleaned, ore_radcleaned.getUnlocalizedName()); GameRegistry.registerItem(ore_enriched, ore_enriched.getUnlocalizedName()); GameRegistry.registerItem(ore_byproduct, ore_byproduct.getUnlocalizedName()); + GameRegistry.registerItem(bedrock_ore_base, bedrock_ore_base.getUnlocalizedName()); + GameRegistry.registerItem(bedrock_ore, bedrock_ore.getUnlocalizedName()); //Crystals GameRegistry.registerItem(crystal_coal, crystal_coal.getUnlocalizedName()); @@ -6153,6 +6158,7 @@ public class ModItems { GameRegistry.registerItem(chemical_dye, chemical_dye.getUnlocalizedName()); GameRegistry.registerItem(crayon, crayon.getUnlocalizedName()); GameRegistry.registerItem(part_generic, part_generic.getUnlocalizedName()); + GameRegistry.registerItem(item_secret, item_secret.getUnlocalizedName()); GameRegistry.registerItem(parts_legendary, parts_legendary.getUnlocalizedName()); GameRegistry.registerItem(gear_large, gear_large.getUnlocalizedName()); GameRegistry.registerItem(sawblade, sawblade.getUnlocalizedName()); @@ -6182,7 +6188,6 @@ public class ModItems { GameRegistry.registerItem(turbine_titanium, turbine_titanium.getUnlocalizedName()); GameRegistry.registerItem(turbine_tungsten, turbine_tungsten.getUnlocalizedName()); GameRegistry.registerItem(flywheel_beryllium, flywheel_beryllium.getUnlocalizedName()); - GameRegistry.registerItem(generator_front, generator_front.getUnlocalizedName()); GameRegistry.registerItem(toothpicks, toothpicks.getUnlocalizedName()); GameRegistry.registerItem(ducttape, ducttape.getUnlocalizedName()); GameRegistry.registerItem(catalyst_clay, catalyst_clay.getUnlocalizedName()); @@ -6200,7 +6205,6 @@ public class ModItems { GameRegistry.registerItem(warhead_buster_medium, warhead_buster_medium.getUnlocalizedName()); GameRegistry.registerItem(warhead_buster_large, warhead_buster_large.getUnlocalizedName()); GameRegistry.registerItem(warhead_nuclear, warhead_nuclear.getUnlocalizedName()); - GameRegistry.registerItem(warhead_mirvlet, warhead_mirvlet.getUnlocalizedName()); GameRegistry.registerItem(warhead_mirv, warhead_mirv.getUnlocalizedName()); GameRegistry.registerItem(warhead_volcano, warhead_volcano.getUnlocalizedName()); GameRegistry.registerItem(fuel_tank_small, fuel_tank_small.getUnlocalizedName()); @@ -6845,6 +6849,7 @@ public class ModItems { GameRegistry.registerItem(linker, linker.getUnlocalizedName()); GameRegistry.registerItem(reactor_sensor, reactor_sensor.getUnlocalizedName()); GameRegistry.registerItem(oil_detector, oil_detector.getUnlocalizedName()); + GameRegistry.registerItem(ore_density_scanner, ore_density_scanner.getUnlocalizedName()); GameRegistry.registerItem(survey_scanner, survey_scanner.getUnlocalizedName()); GameRegistry.registerItem(mirror_tool, mirror_tool.getUnlocalizedName()); GameRegistry.registerItem(rbmk_tool, rbmk_tool.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/special/ItemBedrockOreBase.java b/src/main/java/com/hbm/items/special/ItemBedrockOreBase.java new file mode 100644 index 000000000..a20220d8e --- /dev/null +++ b/src/main/java/com/hbm/items/special/ItemBedrockOreBase.java @@ -0,0 +1,57 @@ +package com.hbm.items.special; + +import java.util.List; +import java.util.Random; + +import com.hbm.items.special.ItemBedrockOreNew.BedrockOreType; +import com.hbm.items.tool.ItemOreDensityScanner; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.MathHelper; +import net.minecraft.util.StatCollector; +import net.minecraft.world.gen.NoiseGeneratorPerlin; + +public class ItemBedrockOreBase extends Item { + + public static double getOreAmount(ItemStack stack, BedrockOreType type) { + if(!stack.hasTagCompound()) return 0; + NBTTagCompound data = stack.getTagCompound(); + return data.getDouble(type.suffix); + } + + public static void setOreAmount(ItemStack stack, int x, int z) { + if(!stack.hasTagCompound()) stack.stackTagCompound = new NBTTagCompound(); + NBTTagCompound data = stack.getTagCompound(); + + for(BedrockOreType type : BedrockOreType.values()) { + data.setDouble(type.suffix, getOreLevel(x, z, type)); + } + } + + @Override + public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) { + + for(BedrockOreType type : BedrockOreType.values()) { + double amount = this.getOreAmount(stack, type); + String typeName = StatCollector.translateToLocalFormatted("item.bedrock_ore.type." + type.suffix + ".name"); + list.add(typeName + ": " + ((int) (amount * 100)) / 100D + " (" + ItemOreDensityScanner.translateDensity(amount) + EnumChatFormatting.RESET + ")"); + } + } + + private static NoiseGeneratorPerlin[] ores = new NoiseGeneratorPerlin[BedrockOreType.values().length]; + private static NoiseGeneratorPerlin level; + + public static double getOreLevel(int x, int z, BedrockOreType type) { + + if(level == null) level = new NoiseGeneratorPerlin(new Random(2114043), 4); + if(ores[type.ordinal()] == null) ores[type.ordinal()] = new NoiseGeneratorPerlin(new Random(2082127 + type.ordinal()), 4); + + double scale = 0.01D; + + return MathHelper.clamp_double(Math.abs(level.func_151601_a(x * scale, z * scale) * ores[type.ordinal()].func_151601_a(x * scale, z * scale)) * 0.05, 0, 2); + } +} diff --git a/src/main/java/com/hbm/items/special/ItemBedrockOreNew.java b/src/main/java/com/hbm/items/special/ItemBedrockOreNew.java new file mode 100644 index 000000000..da7713b81 --- /dev/null +++ b/src/main/java/com/hbm/items/special/ItemBedrockOreNew.java @@ -0,0 +1,214 @@ +package com.hbm.items.special; + +import static com.hbm.inventory.OreDictManager.*; + +import java.util.List; +import java.util.Locale; + +import com.hbm.items.ModItems; +import com.hbm.util.EnumUtil; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; + +import com.hbm.inventory.material.Mats; +import com.hbm.inventory.material.Mats.MaterialStack; +import com.hbm.inventory.material.NTMMaterial; +import com.hbm.inventory.material.NTMMaterial.SmeltingBehavior; +import com.hbm.items.ItemEnums.EnumChunkType; +import com.hbm.lib.RefStrings; +import com.hbm.render.icon.RGBMutatorInterpolatedComponentRemap; +import com.hbm.render.icon.TextureAtlasSpriteMutatable; + +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.client.renderer.texture.TextureMap; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; +import net.minecraft.util.StatCollector; +import net.minecraftforge.oredict.OreDictionary; + +public class ItemBedrockOreNew extends Item { + + public IIcon[] icons = new IIcon[BedrockOreType.values().length * BedrockOreGrade.values().length]; + + public ItemBedrockOreNew() { + this.setHasSubtypes(true); + this.setMaxDamage(0); + } + + @Override + @SideOnly(Side.CLIENT) + public void registerIcons(IIconRegister reg) { + + + if(reg instanceof TextureMap) { + TextureMap map = (TextureMap) reg; + + for(int i = 0; i < BedrockOreGrade.values().length; i++) { BedrockOreGrade grade = BedrockOreGrade.values()[i]; + for(int j = 0; j < BedrockOreType.values().length; j++) { BedrockOreType type = BedrockOreType.values()[j]; + String placeholderName = RefStrings.MODID + ":bedrock_ore_" + grade.prefix + "_" + type.suffix + "-" + (i * BedrockOreType.values().length + j); + TextureAtlasSpriteMutatable mutableIcon = new TextureAtlasSpriteMutatable(placeholderName, new RGBMutatorInterpolatedComponentRemap(0xFFFFFF, 0x505050, type.light, type.dark)); + map.setTextureEntry(placeholderName, mutableIcon); + this.icons[i * BedrockOreType.values().length + j] = mutableIcon; + } + } + } + } + + @Override + @SideOnly(Side.CLIENT) + public void getSubItems(Item item, CreativeTabs tab, List list) { + + for(int j = 0; j < BedrockOreType.values().length; j++) { BedrockOreType type = BedrockOreType.values()[j]; + for(int i = 0; i < BedrockOreGrade.values().length; i++) { BedrockOreGrade grade = BedrockOreGrade.values()[i]; + list.add(this.make(grade, type)); + } + } + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIconFromDamage(int meta) { + int icon = this.getGrade(meta).ordinal() * BedrockOreType.values().length + this.getType(meta).ordinal(); + return icons[Math.abs(icon % icons.length)]; + } + + @Override + public String getItemStackDisplayName(ItemStack stack) { + int meta = stack.getItemDamage(); + String type = StatCollector.translateToLocalFormatted(this.getUnlocalizedNameInefficiently(stack) + ".type." + this.getType(meta).suffix + ".name"); + return StatCollector.translateToLocalFormatted(this.getUnlocalizedNameInefficiently(stack) + ".grade." + this.getGrade(meta).name().toLowerCase(Locale.US) + ".name", type); + } + + public static enum BedrockOreType { + // primary sulfuric solvent radsolvent + LIGHT_METAL( 0xFFFFFF, 0x353535, "light", IRON, CU, TI, AL, AL, CHLOROCALCITE, LI, NA, CHLOROCALCITE, LI, NA), + HEAVY_METAL( 0x868686, 0x000000, "heavy", W, PB, GOLD, GOLD, BE, W, PB, GOLD, BI, BI, GOLD), + RARE_EARTH( 0xE6E6B6, 0x1C1C00, "rare", CO, EnumChunkType.RARE, B, LA, NB, ND, B, ZR, CO, ND, ZR), + ACTINIDE( 0xC1C7BD, 0x2B3227, "actinide", U, TH232, RA226, RA226, PO210, RA226, RA226, PO210, TC99, TC99, U238), + NON_METAL( 0xAFAFAF, 0x0F0F0F, "nonmetal", COAL, S, LIGNITE, KNO, F, P_RED, F, S, CHLOROCALCITE, SI, SI), + CRYSTALLINE( 0xE2FFFA, 0x1E8A77, "crystal", DIAMOND, SODALITE, CINNABAR, ASBESTOS, REDSTONE, CINNABAR, ASBESTOS, EMERALD, BORAX, MOLYSITE, SODALITE); + //sediment + + public int light; + public int dark; + public String suffix; + public Object primary1, primary2; + public Object byproductAcid1, byproductAcid2, byproductAcid3; + public Object byproductSolvent1, byproductSolvent2, byproductSolvent3; + public Object byproductRad1, byproductRad2, byproductRad3; + + private BedrockOreType(int light, int dark, String suffix, Object p1, Object p2, Object bA1, Object bA2, Object bA3, Object bS1, Object bS2, Object bS3, Object bR1, Object bR2, Object bR3) { + this.light = light; + this.dark = dark; + this.suffix = suffix; + this.primary1 = p1; this.primary2 = p2; + this.byproductAcid1 = bA1; this.byproductAcid2 = bA2; this.byproductAcid3 = bA3; + this.byproductSolvent1 = bS1; this.byproductSolvent2 = bS2; this.byproductSolvent3 = bS3; + this.byproductRad1 = bR1; this.byproductRad2 = bR2; this.byproductRad3 = bR3; + } + } + + public static MaterialStack toFluid(Object o, int amount) { + if(o instanceof DictFrame) { + NTMMaterial mat = Mats.matByName.get(((DictFrame) o).mats[0]); + if(mat != null && mat.smeltable == SmeltingBehavior.SMELTABLE) { + return new MaterialStack(mat, amount); + } + } + return null; + } + + public static ItemStack extract(Object o) { + return extract(o, 1); + } + + public static ItemStack extract(Object o, int amount) { + if(o instanceof EnumChunkType) return new ItemStack(ModItems.chunk_ore, amount, ((EnumChunkType) o).ordinal()); + if(o instanceof DictFrame) { + DictFrame frame = (DictFrame) o; + List gems = OreDictionary.getOres(frame.gem(), false); if(!gems.isEmpty()) return fromList(gems, amount); + List dusts = OreDictionary.getOres(frame.dust(), false); if(!dusts.isEmpty()) return fromList(dusts, amount); + List crystals = OreDictionary.getOres(frame.crystal(), false); if(!crystals.isEmpty()) return fromList(crystals, amount); + List billets = OreDictionary.getOres(frame.billet(), false); if(!billets.isEmpty()) return fromList(billets, amount); + List ingots = OreDictionary.getOres(frame.ingot(), false); if(!ingots.isEmpty()) return fromList(ingots, amount); + } + return new ItemStack(ModItems.nothing); + } + + private static ItemStack fromList(List list, int amount) { + ItemStack first = list.get(0).copy(); + first.stackSize = amount; + return first; + } + + @Override + @SideOnly(Side.CLIENT) + public int getColorFromItemStack(ItemStack stack, int pass) { + BedrockOreGrade grade = this.getGrade(stack.getItemDamage()); + return grade.tint; + } + + public static final int none = 0xFFFFFF; + public static final int roasted = 0xCFCFCF; + public static final int arc = 0xC3A2A2; + public static final int washed = 0xDBE2CB; + + public static enum BedrockOreGrade { + BASE(none, "base"), //from the slopper + BASE_ROASTED(roasted, "base"), //optional combination oven step, yields vitriol + BASE_WASHED(washed, "base"), //primitive-ass acidizer with water + PRIMARY(none, "primary"), //centrifuging for more primary + PRIMARY_ROASTED(roasted, "primary"), //optional comboven + PRIMARY_SULFURIC(0xFFFFD3, "primary"), //sulfuric acid + PRIMARY_NOSULFURIC(0xD3D4FF, "primary"),//from centrifuging, sulfuric byproduct removed + PRIMARY_SOLVENT(0xD3F0FF, "primary"), //solvent + PRIMARY_NOSOLVENT(0xFFDED3, "primary"), //solvent byproduct removed + PRIMARY_RAD(0xECFFD3, "primary"), //radsolvent + PRIMARY_NORAD(0xEBD3FF, "primary"), //radsolvent byproduct removed + PRIMARY_FIRST(0xFFD3D4, "primary"), //higher first material yield + PRIMARY_SECOND(0xD3FFEB, "primary"), //higher second material yield + CRUMBS(none, "crumbs"), //endpoint for primary, recycling + + SULFURIC_BYPRODUCT(none, "sulfuric"), //from centrifuging + SULFURIC_ROASTED(roasted, "sulfuric"), //comboven again + SULFURIC_ARC(arc, "sulfuric"), //alternate step + SULFURIC_WASHED(washed, "sulfuric"), //sulfuric endpoint + + SOLVENT_BYPRODUCT(none, "solvent"), //from centrifuging + SOLVENT_ROASTED(roasted, "solvent"), //comboven again + SOLVENT_ARC(arc, "solvent"), //alternate step + SOLVENT_WASHED(washed, "solvent"), //solvent endpoint + + RAD_BYPRODUCT(none, "rad"), //from centrifuging + RAD_ROASTED(roasted, "rad"), //comboven again + RAD_ARC(arc, "rad"), //alternate step + RAD_WASHED(washed, "rad"); //rad endpoint + + public int tint; + public String prefix; + + private BedrockOreGrade(int tint, String prefix) { + this.tint = tint; + this.prefix = prefix; + } + } + + public static ItemStack make(BedrockOreGrade grade, BedrockOreType type) { + return make(grade, type, 1); + } + + public static ItemStack make(BedrockOreGrade grade, BedrockOreType type, int amount) { + return new ItemStack(ModItems.bedrock_ore, amount, grade.ordinal() << 4 | type.ordinal()); + } + + public BedrockOreGrade getGrade(int meta) { + return EnumUtil.grabEnumSafely(BedrockOreGrade.class, meta >> 4); + } + + public BedrockOreType getType(int meta) { + return EnumUtil.grabEnumSafely(BedrockOreType.class, meta & 15); + } +} diff --git a/src/main/java/com/hbm/items/special/ItemOreBlock.java b/src/main/java/com/hbm/items/special/ItemOreBlock.java index 9b0596fa4..b58585514 100644 --- a/src/main/java/com/hbm/items/special/ItemOreBlock.java +++ b/src/main/java/com/hbm/items/special/ItemOreBlock.java @@ -30,36 +30,6 @@ public class ItemOreBlock extends ItemBlock { list.add("Deposit location: X:-400; Z:-400"); list.add("Estimated quantity: 490"); } - - if(this.field_150939_a == ModBlocks.ore_weidanium) { - list.add("Weidanium ore"); - list.add("Deposit location: X:0; Z:300"); - list.add("Estimated quantity: 2800"); - } - - if(this.field_150939_a == ModBlocks.ore_reiium) { - list.add("Reiium ore"); - list.add("Deposit location: X:0; Z:0"); - list.add("Estimated quantity: 2800"); - } - - if(this.field_150939_a == ModBlocks.ore_unobtainium) { - list.add("Unobtainium ore"); - list.add("Deposit location: X:200; Z:200"); - list.add("Estimated quantity: 12480"); - } - - if(this.field_150939_a == ModBlocks.ore_daffergon) { - list.add("Daffergon ore"); - list.add("Deposit location: X:400; Z:-200"); - list.add("Estimated quantity: 14980"); - } - - if(this.field_150939_a == ModBlocks.ore_verticium) { - list.add("Verticium ore"); - list.add("Deposit location: X:-300; Z:200"); - list.add("Estimated quantity: 4680"); - } } } diff --git a/src/main/java/com/hbm/items/tool/ItemOreDensityScanner.java b/src/main/java/com/hbm/items/tool/ItemOreDensityScanner.java new file mode 100644 index 000000000..ffe5b17f0 --- /dev/null +++ b/src/main/java/com/hbm/items/tool/ItemOreDensityScanner.java @@ -0,0 +1,42 @@ +package com.hbm.items.tool; + +import com.hbm.items.special.ItemBedrockOreBase; +import com.hbm.items.special.ItemBedrockOreNew.BedrockOreType; +import com.hbm.packet.PacketDispatcher; +import com.hbm.packet.PlayerInformPacket; + +import net.minecraft.entity.Entity; +import net.minecraft.entity.player.EntityPlayerMP; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.StatCollector; +import net.minecraft.world.World; + +public class ItemOreDensityScanner extends Item { + + @Override + public void onUpdate(ItemStack stack, World world, Entity entity, int i, boolean bool) { + + if(!(entity instanceof EntityPlayerMP) || world.getTotalWorldTime() % 5 != 0) return; + + EntityPlayerMP player = (EntityPlayerMP) entity; + + for(BedrockOreType type : BedrockOreType.values()) { + double level = ItemBedrockOreBase.getOreLevel((int) Math.floor(player.posX), (int) Math.floor(player.posZ), type); + PacketDispatcher.wrapper.sendTo(new PlayerInformPacket( + StatCollector.translateToLocalFormatted("item.bedrock_ore.type." + type.suffix + ".name") + ": " + ((int) (level * 100) / 100D) + " (" + translateDensity(level) + EnumChatFormatting.RESET + ")", + 777 + type.ordinal(), 4000), player); + } + } + + public static String translateDensity(double density) { + if(density <= 0.1) return EnumChatFormatting.DARK_RED + "Very poor"; + if(density <= 0.35) return EnumChatFormatting.RED + "Poor"; + if(density <= 0.75) return EnumChatFormatting.GOLD + "Low"; + if(density >= 1.9) return EnumChatFormatting.AQUA + "Excellent"; + if(density >= 1.65) return EnumChatFormatting.BLUE + "Very high"; + if(density >= 1.25) return EnumChatFormatting.GREEN + "High"; + return EnumChatFormatting.YELLOW + "Moderate"; + } +} diff --git a/src/main/java/com/hbm/lib/RefStrings.java b/src/main/java/com/hbm/lib/RefStrings.java index 17155d5a6..1a5c1bf6d 100644 --- a/src/main/java/com/hbm/lib/RefStrings.java +++ b/src/main/java/com/hbm/lib/RefStrings.java @@ -3,7 +3,7 @@ package com.hbm.lib; public class RefStrings { public static final String MODID = "hbm"; public static final String NAME = "Hbm's Nuclear Tech Mod"; - public static final String VERSION = "1.0.27 BETA (4991)"; + public static final String VERSION = "1.0.27 BETA (5000)"; //HBM's Beta Naming Convention: //V T (X) //V -> next release version diff --git a/src/main/java/com/hbm/main/ClientProxy.java b/src/main/java/com/hbm/main/ClientProxy.java index 4718a6332..ee1339949 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -302,6 +302,7 @@ public class ClientProxy extends ServerProxy { ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineDiesel.class, new RenderDieselGen()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineCombustionEngine.class, new RenderCombustionEngine()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineExcavator.class, new RenderExcavator()); + ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineOreSlopper.class, new RenderOreSlopper()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineMixer.class, new RenderMixer()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineHephaestus.class, new RenderHephaestus()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineAutosaw.class, new RenderAutosaw()); @@ -734,8 +735,6 @@ public class ClientProxy extends ServerProxy { RenderingRegistry.registerEntityRenderingHandler(EntityMIRV.class, new RenderMirv()); RenderingRegistry.registerEntityRenderingHandler(EntityMissileDoomsday.class, new RenderMissileNuclear()); RenderingRegistry.registerEntityRenderingHandler(EntityMissileDoomsdayRusted.class, new RenderMissileNuclear()); - RenderingRegistry.registerEntityRenderingHandler(EntityCarrier.class, new RenderCarrierMissile()); - RenderingRegistry.registerEntityRenderingHandler(EntityBooster.class, new RenderBoosterMissile()); RenderingRegistry.registerEntityRenderingHandler(EntitySoyuz.class, new RenderSoyuz()); RenderingRegistry.registerEntityRenderingHandler(EntitySoyuzCapsule.class, new RenderSoyuzCapsule()); RenderingRegistry.registerEntityRenderingHandler(EntityMissileTaint.class, new RenderMissileTaint()); diff --git a/src/main/java/com/hbm/main/CraftingManager.java b/src/main/java/com/hbm/main/CraftingManager.java index 553cc2b58..a349a3ac8 100644 --- a/src/main/java/com/hbm/main/CraftingManager.java +++ b/src/main/java/com/hbm/main/CraftingManager.java @@ -254,7 +254,7 @@ public class CraftingManager { addRecipeAuto(new ItemStack(ModBlocks.red_cable_paintable, 16), new Object[] { "WRW", "RIR", "WRW", 'W', STEEL.plate(), 'I', MINGRADE.ingot(), 'R', MINGRADE.wireFine() }); addRecipeAuto(new ItemStack(ModBlocks.cable_switch, 1), new Object[] { "S", "W", 'S', Blocks.lever, 'W', ModBlocks.red_wire_coated }); addRecipeAuto(new ItemStack(ModBlocks.cable_detector, 1), new Object[] { "S", "W", 'S', REDSTONE.dust(), 'W', ModBlocks.red_wire_coated }); - addRecipeAuto(new ItemStack(ModBlocks.cable_diode, 1), new Object[] { " Q ", "CAC", " Q ", 'Q', NETHERQUARTZ.gem(), 'C', ModBlocks.red_cable, 'A', AL.ingot() }); + addRecipeAuto(new ItemStack(ModBlocks.cable_diode, 1), new Object[] { " Q ", "CAC", " Q ", 'Q', SI.nugget(), 'C', ModBlocks.red_cable, 'A', AL.ingot() }); addRecipeAuto(new ItemStack(ModBlocks.machine_detector, 1), new Object[] { "IRI", "CTC", "IRI", 'I', ModItems.plate_polymer, 'R', REDSTONE.dust(), 'C', MINGRADE.wireFine(), 'T', ModItems.coil_tungsten }); addRecipeAuto(new ItemStack(ModBlocks.red_cable, 16), new Object[] { " W ", "RRR", " W ", 'W', ModItems.plate_polymer, 'R', MINGRADE.wireFine() }); addShapelessAuto(new ItemStack(ModBlocks.red_cable_classic, 1), new Object[] { ModBlocks.red_cable }); @@ -309,6 +309,7 @@ public class CraftingManager { addRecipeAuto(new ItemStack(ModItems.upgrade_muffler, 16), new Object[] { "III", "IWI", "III", 'I', ANY_RUBBER.ingot(), 'W', Blocks.wool }); addRecipeAuto(new ItemStack(ModItems.upgrade_template, 1), new Object[] { "WIW", "PCP", "WIW", 'W', CU.wireFine(), 'I', IRON.plate(), 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.ANALOG), 'P', ModItems.plate_polymer }); + addRecipeAuto(new ItemStack(ModItems.upgrade_template, 1), new Object[] { "WIW", "PCP", "WIW", 'W', CU.wireFine(), 'I', ANY_PLASTIC.ingot(), 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.BASIC), 'P', ModItems.plate_polymer }); addRecipeAuto(new ItemStack(Item.getItemFromBlock(ModBlocks.factory_titanium_hull), 8), new Object[] { "PIP", "I I", "PIP", 'P', TI.plate(), 'I', TI.ingot() }); addRecipeAuto(new ItemStack(Item.getItemFromBlock(ModBlocks.factory_advanced_hull), 8), new Object[] { "PIP", "I I", "PIP", 'P', ALLOY.plate(), 'I', ALLOY.ingot() }); @@ -655,11 +656,6 @@ public class CraftingManager { addRecipeAuto(new ItemStack(ModBlocks.machine_satlinker), new Object[] { "PSP", "SCS", "PSP", 'P', STEEL.plate(), 'S', STAR.ingot(), 'C', ModItems.sat_chip }); addRecipeAuto(new ItemStack(ModBlocks.machine_keyforge), new Object[] { "PCP", "WSW", "WSW", 'P', STEEL.plate(), 'S', W.ingot(), 'C', ModItems.padlock, 'W', KEY_PLANKS }); addRecipeAuto(new ItemStack(ModItems.sat_chip), new Object[] { "WWW", "CIC", "WWW", 'W', MINGRADE.wireFine(), 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.ADVANCED), 'I', ANY_PLASTIC.ingot() }); - addRecipeAuto(new ItemStack(ModItems.sat_mapper), new Object[] { "H", "B", 'H', ModItems.sat_head_mapper, 'B', ModItems.sat_base }); - addRecipeAuto(new ItemStack(ModItems.sat_scanner), new Object[] { "H", "B", 'H', ModItems.sat_head_scanner, 'B', ModItems.sat_base }); - addRecipeAuto(new ItemStack(ModItems.sat_radar), new Object[] { "H", "B", 'H', ModItems.sat_head_radar, 'B', ModItems.sat_base }); - addRecipeAuto(new ItemStack(ModItems.sat_laser), new Object[] { "H", "B", 'H', ModItems.sat_head_laser, 'B', ModItems.sat_base }); - addRecipeAuto(new ItemStack(ModItems.sat_resonator), new Object[] { "H", "B", 'H', ModItems.sat_head_resonator, 'B', ModItems.sat_base }); addShapelessAuto(new ItemStack(ModItems.sat_mapper), new Object[] { ModBlocks.sat_mapper }); addShapelessAuto(new ItemStack(ModItems.sat_scanner), new Object[] { ModBlocks.sat_scanner }); addShapelessAuto(new ItemStack(ModItems.sat_radar), new Object[] { ModBlocks.sat_radar }); @@ -667,12 +663,6 @@ public class CraftingManager { addShapelessAuto(new ItemStack(ModItems.sat_resonator), new Object[] { ModBlocks.sat_resonator }); addShapelessAuto(new ItemStack(ModItems.sat_foeq), new Object[] { ModBlocks.sat_foeq }); addShapelessAuto(new ItemStack(ModItems.geiger_counter), new Object[] { ModBlocks.geiger }); - addShapelessAuto(new ItemStack(ModBlocks.sat_mapper), new Object[] { ModItems.sat_mapper }); - addShapelessAuto(new ItemStack(ModBlocks.sat_scanner), new Object[] { ModItems.sat_scanner }); - addShapelessAuto(new ItemStack(ModBlocks.sat_radar), new Object[] { ModItems.sat_radar }); - addShapelessAuto(new ItemStack(ModBlocks.sat_laser), new Object[] { ModItems.sat_laser }); - addShapelessAuto(new ItemStack(ModBlocks.sat_resonator), new Object[] { ModItems.sat_resonator }); - addShapelessAuto(new ItemStack(ModBlocks.sat_foeq), new Object[] { ModItems.sat_foeq }); addRecipeAuto(new ItemStack(ModItems.sat_interface), new Object[] { "ISI", "PCP", "PAP", 'I', STEEL.ingot(), 'S', STAR.ingot(), 'P', ModItems.plate_polymer, 'C', ModItems.sat_chip, 'A', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.ADVANCED) }); addRecipeAuto(new ItemStack(ModItems.sat_coord), new Object[] { "SII", "SCA", "SPP", 'I', STEEL.ingot(), 'S', STAR.ingot(), 'P', ModItems.plate_polymer, 'C', ModItems.sat_chip, 'A', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.ADVANCED) }); addRecipeAuto(new ItemStack(ModBlocks.machine_transformer), new Object[] { "SCS", "MDM", "SCS", 'S', IRON.ingot(), 'D', MINGRADE.ingot(), 'M',ModItems.coil_advanced_alloy, 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.CAPACITOR) }); @@ -1008,7 +998,6 @@ public class CraftingManager { addRecipeAuto(new ItemStack(ModBlocks.drone_waypoint, 4), new Object[] { "G", "T", "C", 'G', KEY_GREEN, 'T', Blocks.redstone_torch, 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.BASIC) }); addRecipeAuto(new ItemStack(ModBlocks.drone_crate), new Object[] { "T", "C", 'T', ModBlocks.drone_waypoint, 'C', ModBlocks.crate_steel }); addRecipeAuto(new ItemStack(ModBlocks.drone_waypoint_request, 4), new Object[] { "G", "T", "C", 'G', KEY_BLUE, 'T', Blocks.redstone_torch, 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.BASIC) }); - addRecipeAuto(new ItemStack(ModBlocks.drone_crate), new Object[] { "T", "C", "B", 'T', ModBlocks.drone_waypoint_request, 'C', ModBlocks.crate_steel, 'B', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.BASIC) }); addRecipeAuto(new ItemStack(ModBlocks.drone_crate_requester), new Object[] { "T", "C", "B", 'T', ModBlocks.drone_waypoint_request, 'C', ModBlocks.crate_steel, 'B', KEY_YELLOW }); addRecipeAuto(new ItemStack(ModBlocks.drone_crate_provider), new Object[] { "T", "C", "B", 'T', ModBlocks.drone_waypoint_request, 'C', ModBlocks.crate_steel, 'B', KEY_ORANGE }); addRecipeAuto(new ItemStack(ModBlocks.drone_dock), new Object[] { "T", "C", "B", 'T', ModBlocks.drone_waypoint_request, 'C', ModBlocks.crate_steel, 'B', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.ADVANCED) }); @@ -1184,21 +1173,32 @@ public class CraftingManager { public static void crumple() { - if(Loader.isModLoaded("Mekanism")) { + List targets = new ArrayList(); + + if(GeneralConfig.enableMekanismChanges) { + + if(Loader.isModLoaded("Mekanism")) { + Block mb = (Block) Block.blockRegistry.getObject("Mekanism:MachineBlock"); + Item disassembler = (Item) Item.itemRegistry.getObject("Mekanism:AtomicDisassembler"); + targets.add(new ItemStack(mb, 1, 4)); // digiminer + targets.add(new ItemStack(disassembler)); // atomic disassembler + } + + if(Loader.isModLoaded("MekanismGenerators")) { + Block mb = (Block) Block.blockRegistry.getObject("MekanismGenerators:Generator"); + targets.add(new ItemStack(mb, 1, 6)); // wind turbine + } List toDestroy = new ArrayList(); - Block mb = (Block) Block.blockRegistry.getObject("Mekanism:MachineBlock"); - ItemStack digiminer = new ItemStack(mb, 1, 4); - for(Object o : net.minecraft.item.crafting.CraftingManager.getInstance().getRecipeList()) { if(o instanceof IRecipe) { IRecipe rec = (IRecipe)o; ItemStack stack = rec.getRecipeOutput(); - if(stack != null && stack.getItem() == digiminer.getItem() && stack.getItemDamage() == digiminer.getItemDamage()) { - toDestroy.add(rec); + for(ItemStack target : targets) { + if(stack != null && stack.getItem() == target.getItem() && stack.getItemDamage() == target.getItemDamage()) toDestroy.add(rec); } } } @@ -1206,6 +1206,18 @@ public class CraftingManager { if(toDestroy.size() > 0) { net.minecraft.item.crafting.CraftingManager.getInstance().getRecipeList().removeAll(toDestroy); } + + if(Loader.isModLoaded("Mekanism")) { + Item disassembler = (Item) Item.itemRegistry.getObject("Mekanism:AtomicDisassembler"); + + if(disassembler != null) addRecipeAuto(new ItemStack(disassembler, 1), "GAG", "EIE", " I ", 'G', GOLD.plateCast(), 'A', "alloyUltimate", 'E', "battery", 'I', "ingotRefinedObsidian"); + } + + if(Loader.isModLoaded("MekanismGenerators")) { + Block generator = (Block) Block.blockRegistry.getObject("MekanismGenerators:Generator"); + + if(generator != null) addRecipeAuto(new ItemStack(generator, 1, 6), " T ", "TAT", "BCB", 'T', TI.plateCast(), 'A', "alloyAdvanced", 'B', "battery", 'C', ANY_PLASTIC.ingot()); + } } } diff --git a/src/main/java/com/hbm/main/MainRegistry.java b/src/main/java/com/hbm/main/MainRegistry.java index 23a24261c..b5d663e6e 100644 --- a/src/main/java/com/hbm/main/MainRegistry.java +++ b/src/main/java/com/hbm/main/MainRegistry.java @@ -1332,6 +1332,13 @@ public class MainRegistry { ignoreMappings.add("hbm:item.arc_electrode_desh"); ignoreMappings.add("hbm:tile.sand_gold"); ignoreMappings.add("hbm:tile.sand_gold198"); + ignoreMappings.add("hbm:tile.ore_weidanium"); + ignoreMappings.add("hbm:tile.ore_reiium"); + ignoreMappings.add("hbm:tile.ore_unobtainium"); + ignoreMappings.add("hbm:tile.ore_daffergon"); + ignoreMappings.add("hbm:tile.ore_verticium"); + ignoreMappings.add("hbm:item.warhead_mirvlet"); + ignoreMappings.add("hbm:item.generator_front"); /// REMAP /// remapItems.put("hbm:item.gadget_explosive8", ModItems.early_explosive_lenses); diff --git a/src/main/java/com/hbm/main/ModEventHandler.java b/src/main/java/com/hbm/main/ModEventHandler.java index 1ceb0ada5..f3a2293ad 100644 --- a/src/main/java/com/hbm/main/ModEventHandler.java +++ b/src/main/java/com/hbm/main/ModEventHandler.java @@ -7,10 +7,12 @@ import java.util.List; import java.util.Locale; import java.util.Map; import java.util.Random; +import java.util.UUID; import org.apache.commons.lang3.math.NumberUtils; import org.apache.logging.log4j.Level; +import com.google.common.collect.HashMultimap; import com.google.common.collect.Multimap; import com.hbm.blocks.IStepTickReceiver; import com.hbm.blocks.ModBlocks; @@ -49,6 +51,8 @@ import com.hbm.items.armor.ItemArmorMod; import com.hbm.items.armor.ItemModRevive; import com.hbm.items.armor.ItemModShackles; import com.hbm.items.food.ItemConserve.EnumFoodType; +import com.hbm.items.special.ItemBedrockOreBase; +import com.hbm.items.special.ItemBedrockOreNew.BedrockOreType; import com.hbm.items.tool.ItemGuideBook.BookType; import com.hbm.items.weapon.ItemGunBase; import com.hbm.lib.HbmCollection; @@ -87,6 +91,8 @@ import net.minecraft.enchantment.Enchantment; import net.minecraft.enchantment.EnchantmentHelper; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.entity.ai.attributes.AttributeModifier; import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.monster.EntityCaveSpider; import net.minecraft.entity.monster.EntityCreeper; @@ -117,6 +123,7 @@ import net.minecraft.util.EntityDamageSource; import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.FoodStats; import net.minecraft.util.MathHelper; +import net.minecraft.util.StatCollector; import net.minecraft.util.Vec3; import net.minecraft.world.World; import net.minecraftforge.common.util.FakePlayer; @@ -848,6 +855,8 @@ public class ModEventHandler { ((ArmorFSB)((EntityPlayer)e).inventory.armorInventory[2].getItem()).handleFall((EntityPlayer)e); } + private static final UUID fopSpeed = UUID.fromString("e5a8c95d-c7a0-4ecf-8126-76fb8c949389"); + @SubscribeEvent public void onWingFlop(TickEvent.PlayerTickEvent event) { @@ -967,6 +976,17 @@ public class ModEventHandler { } } } + + if(player.getUniqueID().toString().equals(ShadyUtil.LePeeperSauvage) || player.getDisplayName().equals("LePeeperSauvage")) { + + Multimap multimap = HashMultimap.create(); + multimap.put(SharedMonsterAttributes.movementSpeed.getAttributeUnlocalizedName(), new AttributeModifier(fopSpeed, "FOP SPEED", 0.5, 1)); + player.getAttributeMap().removeAttributeModifiers(multimap); + + if(player.isSprinting()) { + player.getAttributeMap().applyAttributeModifiers(multimap); + } + } } } @@ -1060,34 +1080,62 @@ public class ModEventHandler { /// SYNC END /// } - //TODO: rewrite this so it doesn't look like shit if(player.worldObj.isRemote && event.phase == event.phase.START && !player.isInvisible() && !player.isSneaking()) { - if(player.getUniqueID().toString().equals(ShadyUtil.HbMinecraft)) { - - int i = player.ticksExisted * 3; - - Vec3 vec = Vec3.createVectorHelper(3, 0, 0); - - vec.rotateAroundY((float) (i * Math.PI / 180D)); - - for(int k = 0; k < 5; k++) { - - vec.rotateAroundY((float) (1F * Math.PI / 180D)); - //player.worldObj.spawnParticle("townaura", player.posX + vec.xCoord, player.posY + 1 + player.worldObj.rand.nextDouble() * 0.05, player.posZ + vec.zCoord, 0.0, 0.0, 0.0); - } - } - if(player.getUniqueID().toString().equals(ShadyUtil.Pu_238)) { Vec3 vec = Vec3.createVectorHelper(3 * rand.nextDouble(), 0, 0); - vec.rotateAroundZ((float) (rand.nextDouble() * Math.PI)); vec.rotateAroundY((float) (rand.nextDouble() * Math.PI * 2)); - player.worldObj.spawnParticle("townaura", player.posX + vec.xCoord, player.posY + 1 + vec.yCoord, player.posZ + vec.zCoord, 0.0, 0.0, 0.0); } } + + // OREDBG + /*if(!event.player.worldObj.isRemote) { + for(BedrockOreType type : BedrockOreType.values()) { + PacketDispatcher.wrapper.sendTo(new PlayerInformPacket(StatCollector.translateToLocalFormatted("item.bedrock_ore.type." + type.suffix + ".name") + ": " + ((int) (ItemBedrockOreBase.getOreLevel((int) Math.floor(player.posX), (int) Math.floor(player.posZ), type) * 100) / 100D), 777 + type.ordinal()), (EntityPlayerMP) player); + } + }*/ + + // PRISMDBG + /*if(!event.player.worldObj.isRemote) { + ChunkRadiationHandlerPRISM prism = (ChunkRadiationHandlerPRISM) ChunkRadiationManager.proxy; + + RadPerWorld perWorld = prism.perWorld.get(player.worldObj); + + if(perWorld != null) { + SubChunk[] chunk = perWorld.radiation.get(new ChunkCoordIntPair(((int) Math.floor(player.posX)) >> 4, ((int) Math.floor(player.posZ)) >> 4)); + + if(chunk != null) { + + int y = ((int) Math.floor(player.posY)) >> 4; + + if(y >= 0 && y <= 15) { + SubChunk sub = chunk[y]; + + if(sub != null) { + float xSum = 0, ySum = 0, zSum = 0; + for(int i = 0; i < 16; i++) { + xSum += sub.xResist[i]; ySum += sub.yResist[i]; zSum += sub.zResist[i]; + } + PacketDispatcher.wrapper.sendTo(new PlayerInformPacket(EnumChatFormatting.RED + "FREE SPACE", 1), (EntityPlayerMP) player); + PacketDispatcher.wrapper.sendTo(new PlayerInformPacket(EnumChatFormatting.RED + "FREE SPACE", 2), (EntityPlayerMP) player); + PacketDispatcher.wrapper.sendTo(new PlayerInformPacket(EnumChatFormatting.GREEN + "" + sub.checksum + " - " + ((int) sub.radiation) + "RAD/s - " + sub.needsRebuild + + " - " + (int) xSum+ " - " + (int) ySum + " - " + (int) zSum, 3), (EntityPlayerMP) player); + } else { + PacketDispatcher.wrapper.sendTo(new PlayerInformPacket(EnumChatFormatting.RED + "SUB IS NULL", 1), (EntityPlayerMP) player); + } + } else { + PacketDispatcher.wrapper.sendTo(new PlayerInformPacket(EnumChatFormatting.RED + "OUTSIDE OF WORLD", 1), (EntityPlayerMP) player); + } + } else { + PacketDispatcher.wrapper.sendTo(new PlayerInformPacket(EnumChatFormatting.RED + "CHUNK IS NULL", 1), (EntityPlayerMP) player); + } + } else { + PacketDispatcher.wrapper.sendTo(new PlayerInformPacket(EnumChatFormatting.RED + "PERWORLD IS NULL", 1), (EntityPlayerMP) player); + } + }*/ } @SubscribeEvent diff --git a/src/main/java/com/hbm/main/ModEventHandlerClient.java b/src/main/java/com/hbm/main/ModEventHandlerClient.java index f29158539..e9a5a6bfd 100644 --- a/src/main/java/com/hbm/main/ModEventHandlerClient.java +++ b/src/main/java/com/hbm/main/ModEventHandlerClient.java @@ -577,12 +577,10 @@ public class ModEventHandlerClient { } if(player.getCurrentArmor(2) == null && !player.isPotionActive(Potion.invisibility)) { - if(player.getUniqueID().toString().equals(ShadyUtil.HbMinecraft) || player.getDisplayName().equals("HbMinecraft")) - RenderAccessoryUtility.renderWings(event, 2); - if(player.getUniqueID().toString().equals(ShadyUtil.the_NCR) || player.getDisplayName().equals("the_NCR")) - RenderAccessoryUtility.renderWings(event, 3); - if(player.getUniqueID().toString().equals(ShadyUtil.Barnaby99_x) || player.getDisplayName().equals("pheo7")) - RenderAccessoryUtility.renderAxePack(event); + if(player.getUniqueID().toString().equals(ShadyUtil.HbMinecraft) || player.getDisplayName().equals("HbMinecraft")) RenderAccessoryUtility.renderWings(event, 2); + if(player.getUniqueID().toString().equals(ShadyUtil.the_NCR) || player.getDisplayName().equals("the_NCR")) RenderAccessoryUtility.renderWings(event, 3); + if(player.getUniqueID().toString().equals(ShadyUtil.Barnaby99_x) || player.getDisplayName().equals("pheo7")) RenderAccessoryUtility.renderAxePack(event); + if(player.getUniqueID().toString().equals(ShadyUtil.LePeeperSauvage) || player.getDisplayName().equals("LePeeperSauvage")) RenderAccessoryUtility.renderFaggot(event); } } diff --git a/src/main/java/com/hbm/main/NEIConfig.java b/src/main/java/com/hbm/main/NEIConfig.java index f40158fe1..a2b9b5215 100644 --- a/src/main/java/com/hbm/main/NEIConfig.java +++ b/src/main/java/com/hbm/main/NEIConfig.java @@ -36,7 +36,8 @@ public class NEIConfig implements IConfigureNEI { //Some things are even beyond my control...or are they? API.hideItem(ItemBattery.getEmptyBattery(ModItems.memory)); API.hideItem(ItemBattery.getFullBattery(ModItems.memory)); - + + API.hideItem(new ItemStack(ModItems.item_secret)); API.hideItem(new ItemStack(ModBlocks.machine_electric_furnace_on)); API.hideItem(new ItemStack(ModBlocks.machine_difurnace_on)); API.hideItem(new ItemStack(ModBlocks.machine_nuke_furnace_on)); diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index b1f7f9d0b..4df4c2649 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -17,11 +17,6 @@ import net.minecraftforge.client.model.IModelCustom; public class ResourceManager { - //public static final Shader test_shader = ShaderManager.loadShader(new ResourceLocation(RefStrings.MODID, "shaders/test_shader")); - - //God - public static final IModelCustom error = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/error.obj")); - ////Obj TEs //Turrets @@ -179,6 +174,7 @@ public class ResourceManager { //Mining Drill public static final IModelCustom mining_drill = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/machines/mining_drill.obj")).asVBO(); + public static final IModelCustom ore_slopper = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/machines/ore_slopper.obj")).asVBO(); //Laser Miner public static final IModelCustom mining_laser = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/machines/mining_laser.obj")).asVBO(); @@ -246,7 +242,6 @@ public class ResourceManager { //Radar public static final IModelCustom radar_body = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/radar_base.obj"), false).asVBO(); - public static final IModelCustom radar_head = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/radar_head.obj"), false).asVBO(); public static final IModelCustom radar = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/machines/radar.obj"), false).asVBO(); public static final IModelCustom radar_large = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/machines/radar_large.obj"), false).asVBO(); public static final IModelCustom radar_screen = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/machines/radar_screen.obj"), false).asVBO(); @@ -581,9 +576,8 @@ public class ResourceManager { public static final ResourceLocation autosaw_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/autosaw.png"); //Mining Drill - public static final ResourceLocation drill_body_tex = new ResourceLocation(RefStrings.MODID, "textures/models/mining_drill.png"); - public static final ResourceLocation drill_bolt_tex = new ResourceLocation(RefStrings.MODID, "textures/models/textureIGenRotor.png"); public static final ResourceLocation mining_drill_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/mining_drill.png"); + public static final ResourceLocation ore_slopper_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/ore_slopper.png"); //Laser Miner public static final ResourceLocation mining_laser_base_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/mining_laser_base.png"); @@ -796,7 +790,6 @@ public class ResourceManager { public static final IModelCustom shimmer_sledge = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/shimmer_sledge.obj")); public static final IModelCustom shimmer_axe = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/shimmer_axe.obj")); public static final IModelCustom stopsign = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/weapons/stopsign.obj")); - public static final IModelCustom pch = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/pch.obj")); public static final IModelCustom gavel = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/gavel.obj")); public static final IModelCustom crucible = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/crucible.obj")); public static final IModelCustom chainsaw = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/chainsaw.obj"), false); @@ -871,6 +864,7 @@ public class ResourceManager { public static final IModelCustom armor_mod_tesla = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/mod_tesla.obj")); public static final IModelCustom armor_wings = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/murk.obj")); public static final IModelCustom armor_axepack = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/wings_pheo.obj")); + public static final IModelCustom armor_tail = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/tail_peep.obj")); public static final IModelCustom player_manly_af = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/armor/player_fem.obj")); public static final IModelCustom armor_envsuit = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/envsuit.obj")); public static final IModelCustom armor_trenchmaster = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/trenchmaster.obj")); @@ -1035,6 +1029,7 @@ public class ResourceManager { public static final ResourceLocation wings_bob = new ResourceLocation(RefStrings.MODID, "textures/armor/wings_bob.png"); public static final ResourceLocation wings_black = new ResourceLocation(RefStrings.MODID, "textures/armor/wings_black.png"); public static final ResourceLocation wings_pheo = new ResourceLocation(RefStrings.MODID, "textures/armor/axepack.png"); + public static final ResourceLocation tail_peep = new ResourceLocation(RefStrings.MODID, "textures/armor/tail_peep.png"); public static final ResourceLocation hat = new ResourceLocation(RefStrings.MODID, "textures/armor/hat.png"); public static final ResourceLocation no9 = new ResourceLocation(RefStrings.MODID, "textures/armor/no9.png"); @@ -1074,8 +1069,6 @@ public class ResourceManager { public static final IModelCustom missileNuclear = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/missile_atlas.obj")).asVBO(); public static final IModelCustom missileMicro = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/missile_micro.obj")).asVBO(); public static final IModelCustom missileShuttle = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/missileShuttle.obj")); - public static final IModelCustom missileCarrier = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/missileCarrier.obj")); - public static final IModelCustom missileBooster = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/missileBooster.obj")); public static final IModelCustom minerRocket = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/minerRocket.obj")); public static final IModelCustom soyuz = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/soyuz.obj")).asVBO(); public static final IModelCustom soyuz_lander = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/soyuz_lander.obj")).asVBO(); diff --git a/src/main/java/com/hbm/render/entity/rocket/RenderBoosterMissile.java b/src/main/java/com/hbm/render/entity/rocket/RenderBoosterMissile.java deleted file mode 100644 index c586ec6d5..000000000 --- a/src/main/java/com/hbm/render/entity/rocket/RenderBoosterMissile.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.hbm.render.entity.rocket; - -import org.lwjgl.opengl.GL11; - -import com.hbm.main.ResourceManager; - -import net.minecraft.client.renderer.entity.Render; -import net.minecraft.entity.Entity; -import net.minecraft.util.ResourceLocation; - -public class RenderBoosterMissile extends Render { - - public RenderBoosterMissile() { } - - @Override - public void doRender(Entity p_76986_1_, double p_76986_2_, double p_76986_4_, double p_76986_6_, float p_76986_8_, float p_76986_9_) { - - GL11.glPushMatrix(); - GL11.glTranslatef((float)p_76986_2_, (float)p_76986_4_, (float)p_76986_6_); - GL11.glRotatef(p_76986_1_.prevRotationYaw + (p_76986_1_.rotationYaw - p_76986_1_.prevRotationYaw) * p_76986_9_ - 90.0F, 0.0F, 1.0F, 0.0F); - GL11.glRotatef(p_76986_1_.prevRotationPitch + (p_76986_1_.rotationPitch - p_76986_1_.prevRotationPitch) * p_76986_9_, 0.0F, 0.0F, 1.0F); - - GL11.glEnable(GL11.GL_LIGHTING); - GL11.glDisable(GL11.GL_CULL_FACE); - GL11.glScalef(2F, 2F, 2F); - - bindTexture(ResourceManager.missileBooster_tex); - ResourceManager.missileBooster.renderAll(); - - GL11.glEnable(GL11.GL_CULL_FACE); - - GL11.glPopMatrix(); - } - - @Override - protected ResourceLocation getEntityTexture(Entity p_110775_1_) { - return ResourceManager.missileBooster_tex; - } -} diff --git a/src/main/java/com/hbm/render/entity/rocket/RenderCarrierMissile.java b/src/main/java/com/hbm/render/entity/rocket/RenderCarrierMissile.java deleted file mode 100644 index ad6391fe6..000000000 --- a/src/main/java/com/hbm/render/entity/rocket/RenderCarrierMissile.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.hbm.render.entity.rocket; - -import org.lwjgl.opengl.GL11; - -import com.hbm.main.ResourceManager; -import net.minecraft.client.renderer.entity.Render; -import net.minecraft.entity.Entity; -import net.minecraft.util.ResourceLocation; - -public class RenderCarrierMissile extends Render { - - public RenderCarrierMissile() { } - - @Override - public void doRender(Entity rocket, double p_76986_2_, double p_76986_4_, double p_76986_6_, float p_76986_8_, - float p_76986_9_) { - GL11.glPushMatrix(); - GL11.glTranslatef((float) p_76986_2_, (float) p_76986_4_, (float) p_76986_6_); - GL11.glScalef(1.0F, 1.0F, 1.0F); - - GL11.glEnable(GL11.GL_LIGHTING); - GL11.glDisable(GL11.GL_CULL_FACE); - GL11.glScalef(2F, 2F, 2F); - bindTexture(ResourceManager.missileCarrier_tex); - ResourceManager.missileCarrier.renderAll(); - - if(rocket.getDataWatcher().getWatchableObjectInt(8) == 1) { - GL11.glTranslated(0.0D, 0.5D, 0.0D); - GL11.glTranslated(1.25D, 0.0D, 0.0D); - bindTexture(ResourceManager.missileBooster_tex); - ResourceManager.missileBooster.renderAll(); - GL11.glTranslated(-2.5D, 0.0D, 0.0D); - ResourceManager.missileBooster.renderAll(); - GL11.glTranslated(1.25D, 0.0D, 0.0D); - GL11.glTranslated(0.0D, 0.0D, 1.25D); - ResourceManager.missileBooster.renderAll(); - GL11.glTranslated(0.0D, 0.0D, -2.5D); - ResourceManager.missileBooster.renderAll(); - GL11.glTranslated(0.0D, 0.0D, 1.25D); - } - - GL11.glEnable(GL11.GL_CULL_FACE); - GL11.glPopMatrix(); - } - - @Override - protected ResourceLocation getEntityTexture(Entity p_110775_1_) { - return ResourceManager.missileCarrier_tex; - } -} diff --git a/src/main/java/com/hbm/render/item/ItemRenderMissileGeneric.java b/src/main/java/com/hbm/render/item/ItemRenderMissileGeneric.java index 08bbe24d0..9985a4c4c 100644 --- a/src/main/java/com/hbm/render/item/ItemRenderMissileGeneric.java +++ b/src/main/java/com/hbm/render/item/ItemRenderMissileGeneric.java @@ -167,24 +167,6 @@ public class ItemRenderMissileGeneric implements IItemRenderer { renderers.put(new ComparableStack(ModItems.missile_doomsday), generateStandard(ResourceManager.missileDoomsday_tex, ResourceManager.missileNuclear)); renderers.put(new ComparableStack(ModItems.missile_doomsday_rusted), generateStandard(ResourceManager.missileDoomsdayRusted_tex, ResourceManager.missileNuclear)); - renderers.put(new ComparableStack(ModItems.missile_carrier), x -> { - GL11.glScalef(2F, 2F, 2F); - x.bindTexture(ResourceManager.missileCarrier_tex); - ResourceManager.missileCarrier.renderAll(); - GL11.glTranslated(0.0D, 0.5D, 0.0D); - GL11.glTranslated(1.25D, 0.0D, 0.0D); - x.bindTexture(ResourceManager.missileBooster_tex); - ResourceManager.missileBooster.renderAll(); - GL11.glTranslated(-2.5D, 0.0D, 0.0D); - ResourceManager.missileBooster.renderAll(); - GL11.glTranslated(1.25D, 0.0D, 0.0D); - GL11.glTranslated(0.0D, 0.0D, 1.25D); - ResourceManager.missileBooster.renderAll(); - GL11.glTranslated(0.0D, 0.0D, -2.5D); - ResourceManager.missileBooster.renderAll(); - GL11.glTranslated(0.0D, 0.0D, 1.25D); - }); - renderers.put(new ComparableStack(ModItems.missile_shuttle), generateStandard(ResourceManager.missileShuttle_tex, ResourceManager.missileShuttle)); } } diff --git a/src/main/java/com/hbm/render/model/ModelArmorTailPeep.java b/src/main/java/com/hbm/render/model/ModelArmorTailPeep.java new file mode 100644 index 000000000..5a8cb8370 --- /dev/null +++ b/src/main/java/com/hbm/render/model/ModelArmorTailPeep.java @@ -0,0 +1,26 @@ +package com.hbm.render.model; + +import com.hbm.main.ResourceManager; +import com.hbm.render.loader.ModelRendererObj; + +import net.minecraft.client.Minecraft; +import net.minecraft.entity.Entity; + +public class ModelArmorTailPeep extends ModelArmorBase { + + ModelRendererObj tail; + + public ModelArmorTailPeep() { + super(0); + tail = new ModelRendererObj(ResourceManager.armor_tail, "FaggyAssFuckingTailThing"); + } + + @Override + public void render(Entity entity, float par2, float par3, float par4, float par5, float par6, float par7) { + setRotationAngles(par2, par3, par4, par5, par6, par7, entity); + body.copyTo(tail); + + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.tail_peep); + tail.render(par7); + } +} diff --git a/src/main/java/com/hbm/render/tileentity/RenderOreSlopper.java b/src/main/java/com/hbm/render/tileentity/RenderOreSlopper.java new file mode 100644 index 000000000..6db111b7f --- /dev/null +++ b/src/main/java/com/hbm/render/tileentity/RenderOreSlopper.java @@ -0,0 +1,95 @@ +package com.hbm.render.tileentity; + +import org.lwjgl.opengl.GL11; + +import com.hbm.blocks.BlockDummyable; +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.item.ItemStack; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.MathHelper; +import net.minecraftforge.client.IItemRenderer; + +public class RenderOreSlopper extends TileEntitySpecialRenderer implements IItemRendererProvider { + + @Override + public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float interp) { + GL11.glPushMatrix(); + GL11.glTranslated(x + 0.5D, y, z + 0.5D); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glEnable(GL11.GL_CULL_FACE); + + switch(tile.getBlockMetadata() - BlockDummyable.offset) { + case 3: GL11.glRotatef(180, 0F, 1F, 0F); break; + case 5: GL11.glRotatef(270, 0F, 1F, 0F); break; + case 2: GL11.glRotatef(0, 0F, 1F, 0F); break; + case 4: GL11.glRotatef(90, 0F, 1F, 0F); break; + } + + GL11.glShadeModel(GL11.GL_SMOOTH); + bindTexture(ResourceManager.ore_slopper_tex); + ResourceManager.ore_slopper.renderPart("Base"); + ResourceManager.ore_slopper.renderPart("Slider"); + + GL11.glPushMatrix(); + double extend = Math.sin(((tile.getWorldObj().getTotalWorldTime() + interp) * 0.1 % (Math.PI * 2))) * 0.625+ 0.625; + GL11.glTranslated(0, -MathHelper.clamp_double(extend - 0.25, 0, 1.25), 0); + ResourceManager.ore_slopper.renderPart("Hydraulics"); + GL11.glTranslated(0, -MathHelper.clamp_double(extend, 0, 1.25), 0); + ResourceManager.ore_slopper.renderPart("Bucket"); + GL11.glPopMatrix(); + + double speed = 10; + + GL11.glPushMatrix(); + GL11.glTranslated(0.375, 2.75, 0); + GL11.glRotated((tile.getWorldObj().getTotalWorldTime() % 360 + interp) * speed, 0, 0, 1); + GL11.glTranslated(-0.375, -2.75, 0); + ResourceManager.ore_slopper.renderPart("BladesLeft"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(-0.375, 2.75, 0); + GL11.glRotated((tile.getWorldObj().getTotalWorldTime() % 360 + interp) * -speed, 0, 0, 1); + GL11.glTranslated(0.375, -2.75, 0); + ResourceManager.ore_slopper.renderPart("BladesRight"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1.875, -1); + GL11.glRotated((tile.getWorldObj().getTotalWorldTime() % 360 + interp) * -25, 1, 0, 0); + GL11.glTranslated(0, -1.875, 1); + ResourceManager.ore_slopper.renderPart("Fan"); + GL11.glPopMatrix(); + + GL11.glShadeModel(GL11.GL_FLAT); + + GL11.glPopMatrix(); + } + + @Override + public Item getItemForRenderer() { + return Item.getItemFromBlock(ModBlocks.machine_ore_slopper); + } + + @Override + public IItemRenderer getRenderer() { + return new ItemRenderBase( ) { + public void renderInventory() { + GL11.glTranslated(0, -3, 0); + GL11.glScaled(3.75, 3.75, 3.75); + } + public void renderCommonWithStack(ItemStack item) { + GL11.glScaled(0.5, 0.5, 0.5); + GL11.glRotatef(-90, 0F, 1F, 0F); + GL11.glShadeModel(GL11.GL_SMOOTH); + bindTexture(ResourceManager.ore_slopper_tex); + ResourceManager.ore_slopper.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + }}; + } +} diff --git a/src/main/java/com/hbm/render/tileentity/RendererObjTester.java b/src/main/java/com/hbm/render/tileentity/RendererObjTester.java index d6311b241..e6bcf7f06 100644 --- a/src/main/java/com/hbm/render/tileentity/RendererObjTester.java +++ b/src/main/java/com/hbm/render/tileentity/RendererObjTester.java @@ -23,8 +23,6 @@ import net.minecraft.util.ResourceLocation; public class RendererObjTester extends TileEntitySpecialRenderer { - //private static final ResourceLocation objTesterModelRL = new ResourceLocation(/*"/assets/" + */RefStrings.MODID, "models/TestObj.obj"); - private static ResourceLocation extra = new ResourceLocation(RefStrings.MODID, "textures/models/horse/dyx.png"); @Override diff --git a/src/main/java/com/hbm/render/util/ErrorPronter.java b/src/main/java/com/hbm/render/util/ErrorPronter.java deleted file mode 100644 index 421e83c08..000000000 --- a/src/main/java/com/hbm/render/util/ErrorPronter.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.hbm.render.util; - -import org.lwjgl.opengl.GL11; - -import com.hbm.main.ResourceManager; - -import net.minecraft.client.Minecraft; - -public class ErrorPronter { - - public static void prontError() { - - GL11.glDisable(GL11.GL_CULL_FACE); - - GL11.glScaled(2, 2, 2); - - GL11.glColor3d(Math.sin(System.currentTimeMillis() % 1000 / 1000D * Math.PI) * 0.5 + 0.5, 0.0, 0.0); - Minecraft.getMinecraft().getTextureManager().bindTexture(ResourceManager.universal_bright); - ResourceManager.error.renderAll(); - - GL11.glEnable(GL11.GL_CULL_FACE); - } - -} diff --git a/src/main/java/com/hbm/render/util/RenderAccessoryUtility.java b/src/main/java/com/hbm/render/util/RenderAccessoryUtility.java index 2087547de..943faf575 100644 --- a/src/main/java/com/hbm/render/util/RenderAccessoryUtility.java +++ b/src/main/java/com/hbm/render/util/RenderAccessoryUtility.java @@ -2,6 +2,7 @@ package com.hbm.render.util; import com.hbm.lib.RefStrings; import com.hbm.main.MainRegistry; +import com.hbm.render.model.ModelArmorTailPeep; import com.hbm.render.model.ModelArmorWings; import com.hbm.render.model.ModelArmorWingsPheo; import com.hbm.util.ShadyUtil; @@ -184,4 +185,26 @@ public class RenderAccessoryUtility { axePackModel.render(event.entityPlayer, 0.0F, 0.0F, yawWrapped, yaw, pitch, 0.0625F); } + + private static ModelBiped tailModel; + public static void renderFaggot(RenderPlayerEvent.SetArmorModel event) { + + if(tailModel == null) + tailModel = new ModelArmorTailPeep(); + + RenderPlayer renderer = event.renderer; + ModelBiped model = renderer.modelArmor; + EntityPlayer player = event.entityPlayer; + + tailModel.isSneak = model.isSneak; + + float interp = event.partialRenderTick; + float yawHead = player.prevRotationYawHead + (player.rotationYawHead - player.prevRotationYawHead) * interp; + float yawOffset = player.prevRenderYawOffset + (player.renderYawOffset - player.prevRenderYawOffset) * interp; + float yaw = yawHead - yawOffset; + float yawWrapped = MathHelper.wrapAngleTo180_float(yawHead - yawOffset); + float pitch = player.rotationPitch; + + tailModel.render(event.entityPlayer, 0.0F, 0.0F, yawWrapped, yaw, pitch, 0.0625F); + } } diff --git a/src/main/java/com/hbm/tileentity/IUpgradeInfoProvider.java b/src/main/java/com/hbm/tileentity/IUpgradeInfoProvider.java index 90a348e1c..0fd4f7dab 100644 --- a/src/main/java/com/hbm/tileentity/IUpgradeInfoProvider.java +++ b/src/main/java/com/hbm/tileentity/IUpgradeInfoProvider.java @@ -26,6 +26,5 @@ public interface IUpgradeInfoProvider { public static final String KEY_DELAY = "upgrade.delay"; public static final String KEY_EFFICIENCY = "upgrade.efficiency"; public static final String KEY_FORTUNE = "upgrade.fortune"; - public static final String KEY_OVERHEAT_CHANCE = "upgrade.overheatChance"; public static final String KEY_RANGE = "upgrade.range"; } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityCrucible.java b/src/main/java/com/hbm/tileentity/machine/TileEntityCrucible.java index 23cdbd0ab..1fb87fc69 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityCrucible.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityCrucible.java @@ -30,6 +30,7 @@ import api.hbm.tile.IHeatSource; import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.item.EntityItem; @@ -220,38 +221,47 @@ public class TileEntityCrucible extends TileEntityMachineBase implements IGUIPro this.wasteStack.removeIf(x -> x.amount <= 0); /* sync */ - NBTTagCompound data = new NBTTagCompound(); - int[] rec = new int[recipeStack.size() * 2]; - int[] was = new int[wasteStack.size() * 2]; - for(int i = 0; i < recipeStack.size(); i++) { MaterialStack sta = recipeStack.get(i); rec[i * 2] = sta.material.id; rec[i * 2 + 1] = sta.amount; } - for(int i = 0; i < wasteStack.size(); i++) { MaterialStack sta = wasteStack.get(i); was[i * 2] = sta.material.id; was[i * 2 + 1] = sta.amount; } - data.setIntArray("rec", rec); - data.setIntArray("was", was); - data.setInteger("progress", progress); - data.setInteger("heat", heat); - this.networkPack(data, 25); + this.networkPackNT(25); } } - + @Override - public void networkUnpack(NBTTagCompound nbt) { - super.networkUnpack(nbt); - - this.recipeStack.clear(); - this.wasteStack.clear(); + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeInt(progress); + buf.writeInt(heat); - int[] rec = nbt.getIntArray("rec"); - for(int i = 0; i < rec.length / 2; i++) { - recipeStack.add(new MaterialStack(Mats.matById.get(rec[i * 2]), rec[i * 2 + 1])); + buf.writeShort(recipeStack.size()); + for(MaterialStack sta : recipeStack) { + buf.writeInt(sta.material.id); + buf.writeInt(sta.amount); } - int[] was = nbt.getIntArray("was"); - for(int i = 0; i < was.length / 2; i++) { - wasteStack.add(new MaterialStack(Mats.matById.get(was[i * 2]), was[i * 2 + 1])); + buf.writeShort(wasteStack.size()); + for(MaterialStack sta : wasteStack) { + buf.writeInt(sta.material.id); + buf.writeInt(sta.amount); + } + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + progress = buf.readInt(); + heat = buf.readInt(); + + recipeStack.clear(); + wasteStack.clear(); + + int mats = buf.readShort(); + for(int i = 0; i < mats; i++) { + recipeStack.add(new MaterialStack(Mats.matById.get(buf.readInt()), buf.readInt())); } - this.progress = nbt.getInteger("progress"); - this.heat = nbt.getInteger("heat"); + mats = buf.readShort(); + for(int i = 0; i < mats; i++) { + wasteStack.add(new MaterialStack(Mats.matById.get(buf.readInt()), buf.readInt())); + } } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityFEL.java b/src/main/java/com/hbm/tileentity/machine/TileEntityFEL.java index e48dfd33a..5867f36d2 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityFEL.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityFEL.java @@ -16,6 +16,7 @@ import com.hbm.main.MainRegistry; import com.hbm.sound.AudioWrapper; import com.hbm.tileentity.IGUIProvider; import com.hbm.tileentity.TileEntityMachineBase; +import com.hbm.util.BufferUtil; import com.hbm.util.ContaminationUtil; import com.hbm.util.ContaminationUtil.ContaminationType; import com.hbm.util.ContaminationUtil.HazardType; @@ -23,6 +24,7 @@ import com.hbm.util.ContaminationUtil.HazardType; import api.hbm.energymk2.IEnergyReceiverMK2; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.block.Block; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.EntityLivingBase; @@ -176,13 +178,7 @@ public class TileEntityFEL extends TileEntityMachineBase implements IEnergyRecei } } - NBTTagCompound data = new NBTTagCompound(); - data.setLong("power", power); - data.setString("mode", mode.toString()); - data.setBoolean("isOn", isOn); - data.setBoolean("valid", missingValidSilex); - data.setInteger("distance", distance); - this.networkPack(data, 250); + this.networkPackNT(250); } else { if(power > powerReq * Math.pow(2, mode.ordinal()) && isOn && !(mode == EnumWavelengths.NULL) && distance - 3 > 0) { @@ -224,16 +220,25 @@ public class TileEntityFEL extends TileEntityMachineBase implements IEnergyRecei return false; } - + @Override - public void networkUnpack(NBTTagCompound nbt) { - super.networkUnpack(nbt); - - this.power = nbt.getLong("power"); - this.mode = EnumWavelengths.valueOf(nbt.getString("mode")); - this.isOn = nbt.getBoolean("isOn"); - this.distance = nbt.getInteger("distance"); - this.missingValidSilex = nbt.getBoolean("valid"); + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeLong(power); + BufferUtil.writeString(buf, mode.toString()); + buf.writeBoolean(isOn); + buf.writeBoolean(missingValidSilex); + buf.writeInt(distance); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + power = buf.readLong(); + mode = EnumWavelengths.valueOf(BufferUtil.readString(buf)); + isOn = buf.readBoolean(); + missingValidSilex = buf.readBoolean(); + distance = buf.readInt(); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityFireboxBase.java b/src/main/java/com/hbm/tileentity/machine/TileEntityFireboxBase.java index c52d0270d..9f49f439e 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityFireboxBase.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityFireboxBase.java @@ -17,6 +17,7 @@ import api.hbm.fluid.IFluidStandardSender; import api.hbm.tile.IHeatSource; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; @@ -121,14 +122,7 @@ public abstract class TileEntityFireboxBase extends TileEntityMachinePolluting i this.burnHeat = 0; } - NBTTagCompound data = new NBTTagCompound(); - data.setInteger("maxBurnTime", this.maxBurnTime); - data.setInteger("burnTime", this.burnTime); - data.setInteger("burnHeat", this.burnHeat); - data.setInteger("heatEnergy", this.heatEnergy); - data.setInteger("playersUsing", this.playersUsing); - data.setBoolean("wasOn", this.wasOn); - this.networkPack(data, 50); + this.networkPackNT(50); } else { this.prevDoorAngle = this.doorAngle; float swingSpeed = (doorAngle / 10F) + 3; @@ -151,6 +145,28 @@ public abstract class TileEntityFireboxBase extends TileEntityMachinePolluting i } } + @Override + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeInt(maxBurnTime); + buf.writeInt(burnTime); + buf.writeInt(burnHeat); + buf.writeInt(heatEnergy); + buf.writeInt(playersUsing); + buf.writeBoolean(wasOn); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + maxBurnTime = buf.readInt(); + burnTime = buf.readInt(); + burnHeat = buf.readInt(); + heatEnergy = buf.readInt(); + playersUsing = buf.readInt(); + wasOn = buf.readBoolean(); + } + public static EnumAshType getAshFromFuel(ItemStack stack) { List names = ItemStackUtil.getOreDictNames(stack); @@ -181,18 +197,6 @@ public abstract class TileEntityFireboxBase extends TileEntityMachinePolluting i public boolean isItemValidForSlot(int i, ItemStack itemStack) { return getModule().getBurnTime(itemStack) > 0; } - - @Override - public void networkUnpack(NBTTagCompound nbt) { - super.networkUnpack(nbt); - - this.maxBurnTime = nbt.getInteger("maxBurnTime"); - this.burnTime = nbt.getInteger("burnTime"); - this.burnHeat = nbt.getInteger("burnHeat"); - this.heatEnergy = nbt.getInteger("heatEnergy"); - this.playersUsing = nbt.getInteger("playersUsing"); - this.wasOn = nbt.getBoolean("wasOn"); - } @Override public void readFromNBT(NBTTagCompound nbt) { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityFurnaceCombination.java b/src/main/java/com/hbm/tileentity/machine/TileEntityFurnaceCombination.java index 81fb4c1c3..2ef8e189e 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityFurnaceCombination.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityFurnaceCombination.java @@ -18,6 +18,7 @@ import api.hbm.fluid.IFluidStandardSender; import api.hbm.tile.IHeatSource; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; @@ -128,12 +129,7 @@ public class TileEntityFurnaceCombination extends TileEntityMachinePolluting imp this.progress = 0; } - NBTTagCompound data = new NBTTagCompound(); - data.setBoolean("wasOn", this.wasOn); - data.setInteger("heat", this.heat); - data.setInteger("progress", this.progress); - tank.writeToNBT(data, "t"); - this.networkPack(data, 50); + this.networkPackNT(50); } else { if(this.wasOn && worldObj.rand.nextInt(15) == 0) { @@ -142,6 +138,24 @@ public class TileEntityFurnaceCombination extends TileEntityMachinePolluting imp } } + @Override + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeBoolean(wasOn); + buf.writeInt(heat); + buf.writeInt(progress); + tank.serialize(buf); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + wasOn = buf.readBoolean(); + heat = buf.readInt(); + progress = buf.readInt(); + tank.deserialize(buf); + } + public boolean canSmelt() { if(slots[0] == null) return false; Pair pair = CombinationRecipes.getOutput(slots[0]); @@ -165,16 +179,6 @@ public class TileEntityFurnaceCombination extends TileEntityMachinePolluting imp return true; } - - @Override - public void networkUnpack(NBTTagCompound nbt) { - super.networkUnpack(nbt); - - this.wasOn = nbt.getBoolean("wasOn"); - this.heat = nbt.getInteger("heat"); - this.progress = nbt.getInteger("progress"); - this.tank.readFromNBT(nbt, "t"); - } protected void tryPullHeat() { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityHeaterOilburner.java b/src/main/java/com/hbm/tileentity/machine/TileEntityHeaterOilburner.java index c68190025..0d19a14bc 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityHeaterOilburner.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityHeaterOilburner.java @@ -16,6 +16,7 @@ import api.hbm.fluid.IFluidStandardTransceiver; import api.hbm.tile.IHeatSource; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; @@ -94,23 +95,28 @@ public class TileEntityHeaterOilburner extends TileEntityMachinePolluting implem if(shouldCool) this.heatEnergy = Math.max(this.heatEnergy - Math.max(this.heatEnergy / 1000, 1), 0); - NBTTagCompound data = new NBTTagCompound(); - tank.writeToNBT(data, "tank"); - data.setBoolean("isOn", isOn); - data.setInteger("h", heatEnergy); - data.setByte("s", (byte) this.setting); - this.networkPack(data, 25); + this.networkPackNT(25); } } - + @Override - public void networkUnpack(NBTTagCompound nbt) { - super.networkUnpack(nbt); + public void serialize(ByteBuf buf) { + super.serialize(buf); + tank.serialize(buf); - tank.readFromNBT(nbt, "tank"); - isOn = nbt.getBoolean("isOn"); - heatEnergy = nbt.getInteger("h"); - setting = nbt.getByte("s"); + buf.writeBoolean(isOn); + buf.writeInt(heatEnergy); + buf.writeByte((byte) this.setting); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + tank.deserialize(buf); + + isOn = buf.readBoolean(); + heatEnergy = buf.readInt(); + setting = buf.readByte(); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityICFPress.java b/src/main/java/com/hbm/tileentity/machine/TileEntityICFPress.java index 60df455b8..9c6eef7ad 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityICFPress.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityICFPress.java @@ -153,6 +153,11 @@ public class TileEntityICFPress extends TileEntityMachineBase implements IFluidS public int[] getAccessibleSlotsFromSide(int side) { return side == 0 || side == 1 ? topBottom : sides; } + + @Override + public boolean canExtractItem(int slot, ItemStack itemStack, int side) { + return slot == 1; + } @Override public void readFromNBT(NBTTagCompound nbt) { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineArcWelder.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineArcWelder.java index 1f899b27c..6a3132006 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineArcWelder.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineArcWelder.java @@ -29,6 +29,7 @@ import api.hbm.fluid.IFluidStandardReceiver; import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; @@ -135,21 +136,48 @@ public class TileEntityMachineArcWelder extends TileEntityMachineBase implements this.maxPower = Math.max(intendedMaxPower, power); - NBTTagCompound data = new NBTTagCompound(); - data.setLong("power", power); - data.setLong("maxPower", maxPower); - data.setLong("consumption", consumption); - data.setInteger("progress", progress); - data.setInteger("processTime", processTime); - if(recipe != null) { - data.setInteger("display", Item.getIdFromItem(recipe.output.getItem())); - data.setInteger("displayMeta", recipe.output.getItemDamage()); - } - this.tank.writeToNBT(data, "t"); - this.networkPack(data, 25); + this.networkPackNT(25); } } + @Override + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeLong(power); + buf.writeLong(maxPower); + buf.writeLong(consumption); + buf.writeInt(progress); + buf.writeInt(processTime); + + tank.serialize(buf); + + ArcWelderRecipe recipe = ArcWelderRecipes.getRecipe(slots[0], slots[1], slots[2]); + + if(recipe != null) { + buf.writeBoolean(true); + buf.writeInt(Item.getIdFromItem(recipe.output.getItem())); + buf.writeInt(recipe.output.getItemDamage()); + } else + buf.writeBoolean(false); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + power = buf.readLong(); + maxPower = buf.readLong(); + consumption = buf.readLong(); + progress = buf.readInt(); + processTime = buf.readInt(); + + tank.deserialize(buf); + + if(buf.readBoolean()) { + this.display = new ItemStack(Item.getItemById(buf.readInt()), 1, buf.readInt()); + } else + this.display = null; + } + public boolean canProcess(ArcWelderRecipe recipe) { if(this.power < this.consumption) return false; @@ -204,25 +232,6 @@ public class TileEntityMachineArcWelder extends TileEntityMachineBase implements new DirPos(xCoord - dir.offsetX - rot.offsetX * 2, yCoord, zCoord - dir.offsetZ - rot.offsetZ * 2, rot.getOpposite()) }; } - - @Override - public void networkUnpack(NBTTagCompound nbt) { - super.networkUnpack(nbt); - - this.power = nbt.getLong("power"); - this.maxPower = nbt.getLong("maxPower"); - this.consumption = nbt.getLong("consumption"); - this.progress = nbt.getInteger("progress"); - this.processTime = nbt.getInteger("processTime"); - - if(nbt.hasKey("display")) { - this.display = new ItemStack(Item.getItemById(nbt.getInteger("display")), 1, nbt.getInteger("displayMeta")); - } else { - this.display = null; - } - - this.tank.readFromNBT(nbt, "t"); - } @Override public void readFromNBT(NBTTagCompound nbt) { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssembler.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssembler.java index 89a674740..c16320387 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssembler.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssembler.java @@ -6,12 +6,9 @@ import java.util.Random; import com.hbm.blocks.BlockDummyable; import com.hbm.blocks.ModBlocks; import com.hbm.handler.MultiblockHandlerXR; -import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.UpgradeManager; import com.hbm.inventory.container.ContainerMachineAssembler; import com.hbm.inventory.gui.GUIMachineAssembler; -import com.hbm.inventory.recipes.AssemblerRecipes; -import com.hbm.items.machine.ItemAssemblyTemplate; import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType; import com.hbm.main.MainRegistry; import com.hbm.sound.AudioWrapper; @@ -23,6 +20,7 @@ import com.hbm.util.fauxpointtwelve.DirPos; import api.hbm.energymk2.IBatteryItem; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; @@ -105,19 +103,13 @@ public class TileEntityMachineAssembler extends TileEntityMachineAssemblerBase i speed /= (overLevel + 1); consumption *= (overLevel + 1); - int rec = -1; + /*int rec = -1; if(AssemblerRecipes.getOutputFromTempate(slots[4]) != null) { ComparableStack comp = ItemAssemblyTemplate.readType(slots[4]); rec = AssemblerRecipes.recipeList.indexOf(comp); - } + }*/ - NBTTagCompound data = new NBTTagCompound(); - data.setLong("power", power); - data.setIntArray("progress", this.progress); - data.setIntArray("maxProgress", this.maxProgress); - data.setBoolean("isProgressing", isProgressing); - data.setInteger("recipe", rec); - this.networkPack(data, 150); + this.networkPackNT(150); } else { float volume = this.getVolume(2F); @@ -142,16 +134,31 @@ public class TileEntityMachineAssembler extends TileEntityMachineAssemblerBase i } } } - + @Override - public void networkUnpack(NBTTagCompound nbt) { - super.networkUnpack(nbt); + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeLong(power); + for(int i = 0; i < getRecipeCount(); i++) { + buf.writeInt(progress[i]); + buf.writeInt(maxProgress[i]); + } - this.power = nbt.getLong("power"); - this.progress = nbt.getIntArray("progress"); - this.maxProgress = nbt.getIntArray("maxProgress"); - this.isProgressing = nbt.getBoolean("isProgressing"); - this.recipe = nbt.getInteger("recipe"); + buf.writeBoolean(isProgressing); + buf.writeInt(recipe); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + power = buf.readLong(); + for(int i = 0; i < getRecipeCount(); i++) { + progress[i] = buf.readInt(); + maxProgress[i] = buf.readInt(); + } + + isProgressing = buf.readBoolean(); + recipe = buf.readInt(); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssemfac.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssemfac.java index a44f0e996..948022a43 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssemfac.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssemfac.java @@ -20,6 +20,7 @@ import com.hbm.util.fauxpointtwelve.DirPos; import api.hbm.fluid.IFluidStandardTransceiver; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; @@ -93,16 +94,7 @@ public class TileEntityMachineAssemfac extends TileEntityMachineAssemblerBase im this.sendFluid(steam, worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir()); } - NBTTagCompound data = new NBTTagCompound(); - data.setLong("power", this.power); - data.setIntArray("progress", this.progress); - data.setIntArray("maxProgress", this.maxProgress); - data.setBoolean("isProgressing", isProgressing); - - water.writeToNBT(data, "w"); - steam.writeToNBT(data, "s"); - - this.networkPack(data, 150); + this.networkPackNT(150); } else { @@ -114,7 +106,33 @@ public class TileEntityMachineAssemfac extends TileEntityMachineAssemblerBase im } } } - + + @Override + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeLong(power); + for(int i = 0; i < getRecipeCount(); i++) { + buf.writeInt(progress[i]); + buf.writeInt(maxProgress[i]); + } + buf.writeBoolean(isProgressing); + water.serialize(buf); + steam.serialize(buf); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + power = buf.readLong(); + for(int i = 0; i < getRecipeCount(); i++) { + progress[i] = buf.readInt(); + maxProgress[i] = buf.readInt(); + } + isProgressing = buf.readBoolean(); + water.deserialize(buf); + steam.deserialize(buf); + } + @Override public void networkUnpack(NBTTagCompound nbt) { super.networkUnpack(nbt); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAutocrafter.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAutocrafter.java index 9f1834c63..a15e82e8c 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAutocrafter.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAutocrafter.java @@ -8,11 +8,13 @@ import com.hbm.inventory.gui.GUIAutocrafter; import com.hbm.lib.Library; import com.hbm.tileentity.IGUIProvider; import com.hbm.tileentity.TileEntityMachineBase; +import com.hbm.util.BufferUtil; import com.hbm.util.ItemStackUtil; import api.hbm.energymk2.IEnergyReceiverMK2; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; @@ -193,33 +195,38 @@ public class TileEntityMachineAutocrafter extends TileEntityMachineBase implemen } } - NBTTagCompound data = new NBTTagCompound(); - data.setLong("power", power); - for(int i = 0; i < 9; i++) { - if(modes[i] != null) { - data.setString("mode" + i, modes[i]); - } - } - data.setInteger("count", this.recipeCount); - data.setInteger("rec", this.recipeIndex); - this.networkPack(data, 15); + this.networkPackNT(15); } } @Override - public void networkUnpack(NBTTagCompound data) { - super.networkUnpack(data); + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeLong(power); + for(int i = 0; i < 9; i++) { + if(modes[i] != null) { + buf.writeBoolean(true); + BufferUtil.writeString(buf, modes[i]); + } else + buf.writeBoolean(false); + } - this.power = data.getLong("power"); + buf.writeInt(recipeCount); + buf.writeInt(recipeIndex); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + power = buf.readLong(); modes = new String[9]; for(int i = 0; i < 9; i++) { - if(data.hasKey("mode" + i)) { - modes[i] = data.getString("mode" + i); - } + if(buf.readBoolean()) modes[i] = BufferUtil.readString(buf); } - this.recipeCount = data.getInteger("count"); - this.recipeIndex = data.getInteger("rec"); + + recipeCount = buf.readInt(); + recipeIndex = buf.readInt(); } public void updateTemplateGrid() { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCentrifuge.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCentrifuge.java index a8e271bf5..ed7993281 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCentrifuge.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCentrifuge.java @@ -22,6 +22,7 @@ import api.hbm.energymk2.IEnergyReceiverMK2; import api.hbm.tile.IInfoProviderEC; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; @@ -198,11 +199,7 @@ public class TileEntityMachineCentrifuge extends TileEntityMachineBase implement progress = 0; } - NBTTagCompound data = new NBTTagCompound(); - data.setLong("power", power); - data.setInteger("progress", progress); - data.setBoolean("isProgressing", isProgressing); - this.networkPack(data, 50); + this.networkPackNT(50); } else { if(isProgressing) { @@ -234,14 +231,21 @@ public class TileEntityMachineCentrifuge extends TileEntityMachineBase implement } } } - + @Override - public void networkUnpack(NBTTagCompound data) { - super.networkUnpack(data); - - this.power = data.getLong("power"); - this.progress = data.getInteger("progress"); - this.isProgressing = data.getBoolean("isProgressing"); + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeLong(power); + buf.writeInt(progress); + buf.writeBoolean(isProgressing); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + power = buf.readLong(); + progress = buf.readInt(); + isProgressing = buf.readBoolean(); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemfac.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemfac.java index 4fbfdfab9..53c90a9c0 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemfac.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemfac.java @@ -21,6 +21,7 @@ import com.hbm.util.fauxpointtwelve.DirPos; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; @@ -101,19 +102,7 @@ public class TileEntityMachineChemfac extends TileEntityMachineChemplantBase imp this.speed = 1; } - NBTTagCompound data = new NBTTagCompound(); - data.setLong("power", this.power); - data.setIntArray("progress", this.progress); - data.setIntArray("maxProgress", this.maxProgress); - data.setBoolean("isProgressing", isProgressing); - - for(int i = 0; i < tanks.length; i++) { - tanks[i].writeToNBT(data, "t" + i); - } - water.writeToNBT(data, "w"); - steam.writeToNBT(data, "s"); - - this.networkPack(data, 150); + this.networkPackNT(150); } else { float maxSpeed = 30F; @@ -156,21 +145,39 @@ public class TileEntityMachineChemfac extends TileEntityMachineChemplantBase imp } } } - + @Override - public void networkUnpack(NBTTagCompound nbt) { - super.networkUnpack(nbt); - - this.power = nbt.getLong("power"); - this.progress = nbt.getIntArray("progress"); - this.maxProgress = nbt.getIntArray("maxProgress"); - this.isProgressing = nbt.getBoolean("isProgressing"); - - for(int i = 0; i < tanks.length; i++) { - tanks[i].readFromNBT(nbt, "t" + i); + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeLong(power); + for(int i = 0; i < getRecipeCount(); i++) { + buf.writeInt(progress[i]); + buf.writeInt(maxProgress[i]); } - water.readFromNBT(nbt, "w"); - steam.readFromNBT(nbt, "s"); + + buf.writeBoolean(isProgressing); + + for(int i = 0; i < tanks.length; i++) tanks[i].serialize(buf); + + water.serialize(buf); + steam.serialize(buf); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + power = buf.readLong(); + for(int i = 0; i < getRecipeCount(); i++) { + progress[i] = buf.readInt(); + maxProgress[i] = buf.readInt(); + } + + isProgressing = buf.readBoolean(); + + for(int i = 0; i < tanks.length; i++) tanks[i].deserialize(buf); + + water.deserialize(buf); + steam.deserialize(buf); } private int getWaterRequired() { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCrystallizer.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCrystallizer.java index 0f1197c2b..96e400b49 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCrystallizer.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCrystallizer.java @@ -27,6 +27,7 @@ import api.hbm.energymk2.IEnergyReceiverMK2; import api.hbm.fluid.IFluidStandardReceiver; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; @@ -97,13 +98,7 @@ public class TileEntityMachineCrystallizer extends TileEntityMachineBase impleme } } - NBTTagCompound data = new NBTTagCompound(); - data.setShort("progress", progress); - data.setShort("duration", getDuration()); - data.setLong("power", power); - data.setBoolean("isOn", isOn); - tank.writeToNBT(data, "t"); - this.networkPack(data, 25); + this.networkPackNT(25); } else { prevAngle = angle; @@ -124,7 +119,7 @@ public class TileEntityMachineCrystallizer extends TileEntityMachineBase impleme ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - 10); ForgeDirection rot = dir.getRotation(ForgeDirection.UP); - List players = worldObj.getEntitiesWithinAABB(EntityPlayer.class, AxisAlignedBB.getBoundingBox(xCoord + 0.25, yCoord + 1, zCoord + 0.25, xCoord + 0.75, yCoord + 5.875, zCoord + 0.75).offset(rot.offsetX * 1.5, 0, rot.offsetZ * 1.5)); + List players = worldObj.getEntitiesWithinAABB(EntityPlayer.class, AxisAlignedBB.getBoundingBox(xCoord + 0.25, yCoord + 1, zCoord + 0.25, xCoord + 0.75, yCoord + 6, zCoord + 0.75).offset(rot.offsetX * 1.5, 0, rot.offsetZ * 1.5)); for(EntityPlayer player : players) { HbmPlayerProps props = HbmPlayerProps.getData(player); @@ -154,14 +149,24 @@ public class TileEntityMachineCrystallizer extends TileEntityMachineBase impleme }; } - public void networkUnpack(NBTTagCompound data) { - super.networkUnpack(data); - - this.power = data.getLong("power"); - this.progress = data.getShort("progress"); - this.duration = data.getShort("duration"); - this.isOn = data.getBoolean("isOn"); - this.tank.readFromNBT(data, "t"); + @Override + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeShort(progress); + buf.writeShort(getDuration()); + buf.writeLong(power); + buf.writeBoolean(isOn); + tank.serialize(buf); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + progress = buf.readShort(); + duration = buf.readShort(); + power = buf.readLong(); + isOn = buf.readBoolean(); + tank.deserialize(buf); } private void processItem() { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCyclotron.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCyclotron.java index 87660cb63..effd7bf2e 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCyclotron.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCyclotron.java @@ -4,18 +4,10 @@ import java.util.List; import java.util.Map.Entry; import com.hbm.blocks.ModBlocks; -import com.hbm.config.BombConfig; -import com.hbm.entity.effect.EntityBlackHole; -import com.hbm.entity.logic.EntityBalefire; -import com.hbm.entity.logic.EntityNukeExplosionMK5; -import com.hbm.explosion.ExplosionLarge; -import com.hbm.explosion.ExplosionThermo; -import com.hbm.interfaces.IFluidAcceptor; -import com.hbm.interfaces.IFluidSource; +import com.hbm.inventory.UpgradeManager; import com.hbm.inventory.RecipesCommon.AStack; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.container.ContainerMachineCyclotron; -import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.fluid.tank.FluidTank; import com.hbm.inventory.gui.GUIMachineCyclotron; @@ -24,8 +16,6 @@ import com.hbm.items.ModItems; import com.hbm.items.machine.ItemMachineUpgrade; import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType; import com.hbm.lib.Library; -import com.hbm.packet.AuxParticlePacketNT; -import com.hbm.packet.PacketDispatcher; import com.hbm.tileentity.IConditionalInvAccess; import com.hbm.tileentity.IGUIProvider; import com.hbm.tileentity.IUpgradeInfoProvider; @@ -38,9 +28,9 @@ import com.hbm.util.fauxpointtwelve.DirPos; import api.hbm.energymk2.IEnergyReceiverMK2; import api.hbm.fluid.IFluidStandardTransceiver; import api.hbm.tile.IInfoProviderEC; -import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; @@ -52,30 +42,26 @@ import net.minecraft.util.EnumChatFormatting; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; -public class TileEntityMachineCyclotron extends TileEntityMachineBase implements IFluidSource, IFluidAcceptor, IEnergyReceiverMK2, IFluidStandardTransceiver, IGUIProvider, IConditionalInvAccess, IUpgradeInfoProvider, IInfoProviderEC { +public class TileEntityMachineCyclotron extends TileEntityMachineBase implements IEnergyReceiverMK2, IFluidStandardTransceiver, IGUIProvider, IConditionalInvAccess, IUpgradeInfoProvider, IInfoProviderEC { public long power; public static final long maxPower = 100000000; - public int consumption = 1_000_000; - - public boolean isOn; - - private int age; - private int countdown; + public static int consumption = 1_000_000; private byte plugs; public int progress; public static final int duration = 690; - public FluidTank coolant; - public FluidTank amat; + public FluidTank[] tanks; public TileEntityMachineCyclotron() { - super(16); - - coolant = new FluidTank(Fluids.COOLANT, 32000, 0); - amat = new FluidTank(Fluids.AMAT, 8000, 1); + super(12); + + this.tanks = new FluidTank[3]; + this.tanks[0] = new FluidTank(Fluids.WATER, 32000); + this.tanks[1] = new FluidTank(Fluids.SPENTSTEAM, 32000); + this.tanks[2] = new FluidTank(Fluids.AMAT, 8000); } @Override @@ -90,72 +76,22 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements this.updateConnections(); - age++; - if(age >= 20) - { - age = 0; - } + this.power = Library.chargeTEFromItems(slots, 9, power, maxPower); - if(age == 9 || age == 19) - fillFluidInit(amat.getTankType()); - - this.power = Library.chargeTEFromItems(slots, 13, power, maxPower); - this.coolant.loadTank(11, 12, slots); - this.amat.unloadTank(9, 10, slots); + UpgradeManager.eval(slots, 10, 11); - if(isOn) { + if(canProcess()) { + progress += getSpeed(); + power -= getConsumption(); - int defConsumption = consumption - 100_000 * getConsumption(); + int convert = getCoolantConsumption(); + tanks[0].setFill(tanks[0].getFill() - convert); + tanks[1].setFill(tanks[1].getFill() + convert); - if(canProcess() && power >= defConsumption) { - - progress += this.getSpeed(); - power -= defConsumption; - - if(progress >= duration) { - process(); - progress = 0; - this.markDirty(); - } - - int safety = this.getSafety(); - - if(coolant.getFill() > 0) { - - countdown = 0; - - if(worldObj.rand.nextInt(3 * safety) == 0) - coolant.setFill(coolant.getFill() - 1); - - } else if(worldObj.rand.nextInt(safety) == 0) { - - countdown++; - - int chance = 7 - Math.min((int) Math.ceil(countdown / 200D), 6); - - if(worldObj.rand.nextInt(chance) == 0) - ExplosionLarge.spawnTracers(worldObj, xCoord + 0.5, yCoord + 3.25, zCoord + 0.5, 1); - - if(countdown > 1000) { - ExplosionThermo.setEntitiesOnFire(worldObj, xCoord + 0.5, yCoord + 1.5, zCoord + 0.5, 25); - ExplosionThermo.scorchLight(worldObj, xCoord, yCoord, zCoord, 7); - - if(countdown % 4 == 0) - ExplosionLarge.spawnBurst(worldObj, xCoord + 0.5, yCoord + 3.25, zCoord + 0.5, 18, 1); - - } else if(countdown > 600) { - ExplosionThermo.setEntitiesOnFire(worldObj, xCoord + 0.5, yCoord + 1.5, zCoord + 0.5, 10); - } - - if(countdown == 1140) - worldObj.playSoundEffect(xCoord + 0.5, yCoord + 1.5, zCoord + 0.5, "hbm:block.shutdown", 10.0F, 1.0F); - - if(countdown > 1200) - explode(); - } - - } else { + if(progress >= duration) { + process(); progress = 0; + this.markDirty(); } } else { @@ -163,29 +99,46 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements } this.sendFluid(); - - NBTTagCompound data = new NBTTagCompound(); - data.setLong("power", power); - data.setInteger("progress", progress); - data.setBoolean("isOn", isOn); - data.setByte("plugs", plugs); - this.networkPack(data, 25); - - coolant.updateTank(xCoord, yCoord, zCoord, worldObj.provider.dimensionId); - amat.updateTank(xCoord, yCoord, zCoord, worldObj.provider.dimensionId); + this.networkPackNT(25); } } + @Override + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeLong(power); + buf.writeInt(progress); + buf.writeByte(plugs); + + for(int i = 0; i < 3; i++) + tanks[i].serialize(buf); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + power = buf.readLong(); + progress = buf.readInt(); + plugs = buf.readByte(); + + for(int i = 0; i < 3; i++) + tanks[i].deserialize(buf); + } + private void updateConnections() { for(DirPos pos : getConPos()) { this.trySubscribe(worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir()); - this.trySubscribe(coolant.getTankType(), worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir()); + this.trySubscribe(tanks[0].getTankType(), worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir()); } } private void sendFluid() { - for(DirPos pos : getConPos()) { - this.sendFluid(amat, worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir()); + for(int i = 1; i < 3; i++) { + if(tanks[i].getFill() > 0) { + for(DirPos pos : getConPos()) { + this.sendFluid(tanks[i], worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir()); + } + } } } @@ -202,62 +155,19 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements }; } - public void networkUnpack(NBTTagCompound data) { - super.networkUnpack(data); - - this.isOn = data.getBoolean("isOn"); - this.power = data.getLong("power"); - this.progress = data.getInteger("progress"); - this.plugs = data.getByte("plugs"); - } - - public void handleButtonPacket(int value, int meta) { - - this.isOn = !this.isOn; - } - - private void explode() { - - ExplosionLarge.explodeFire(worldObj, xCoord + 0.5, yCoord + 1.5, zCoord + 0.5, 25, true, false, true); - - int rand = worldObj.rand.nextInt(10); - - if(rand < 2) { - - worldObj.spawnEntityInWorld(EntityNukeExplosionMK5.statFac(worldObj, (int)(BombConfig.fatmanRadius * 1.5), xCoord + 0.5, yCoord + 1.5, zCoord + 0.5)); - - NBTTagCompound data = new NBTTagCompound(); - data.setString("type", "muke"); - PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(data, xCoord + 0.5, yCoord + 0.5, zCoord + 0.5), new TargetPoint(worldObj.provider.dimensionId, xCoord + 0.5, yCoord + 0.5, zCoord + 0.5, 250)); - worldObj.playSoundEffect(xCoord + 0.5, yCoord + 0.5, zCoord + 0.5, "hbm:weapon.mukeExplosion", 15.0F, 1.0F); - - } else if(rand < 4) { - - EntityBalefire bf = new EntityBalefire(worldObj); - bf.posX = xCoord + 0.5; - bf.posY = yCoord + 1.5; - bf.posZ = zCoord + 0.5; - bf.destructionRange = (int)(BombConfig.fatmanRadius * 1.5); - worldObj.spawnEntityInWorld(bf); - - NBTTagCompound data = new NBTTagCompound(); - data.setString("type", "muke"); - data.setBoolean("balefire", true); - PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(data, xCoord + 0.5, yCoord + 0.5, zCoord + 0.5), new TargetPoint(worldObj.provider.dimensionId, xCoord + 0.5, yCoord + 0.5, zCoord + 0.5, 250)); - worldObj.playSoundEffect(xCoord + 0.5, yCoord + 0.5, zCoord + 0.5, "hbm:weapon.mukeExplosion", 15.0F, 1.0F); - - } else if(rand < 5) { - - EntityBlackHole bl = new EntityBlackHole(worldObj, 1.5F + worldObj.rand.nextFloat()); - bl.posX = xCoord + 0.5F; - bl.posY = yCoord + 1.5F; - bl.posZ = zCoord + 0.5F; - worldObj.spawnEntityInWorld(bl); - } - } - public boolean canProcess() { + if(power < getConsumption()) + return false; + + int convert = getCoolantConsumption(); + + if(tanks[0].getFill() < convert) + return false; + + if(tanks[1].getFill() + convert > tanks[1].getMaxFill()) + return false; + for(int i = 0; i < 3; i++) { Object[] res = CyclotronRecipes.getOutput(slots[i + 3], slots[i]); @@ -300,7 +210,7 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements this.decrStackSize(i + 3, 1); slots[i + 6] = out; - this.amat.setFill(this.amat.getFill() + (Integer)res[1]); + this.tanks[2].setFill(this.tanks[2].getFill() + (Integer)res[1]); continue; } @@ -311,72 +221,28 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements this.decrStackSize(i + 3, 1); slots[i + 6].stackSize++; - this.amat.setFill(this.amat.getFill() + (Integer)res[1]); + this.tanks[2].setFill(this.tanks[2].getFill() + (Integer)res[1]); } } - if(this.amat.getFill() > this.amat.getMaxFill()) - this.amat.setFill(this.amat.getMaxFill()); + if(this.tanks[2].getFill() > this.tanks[2].getMaxFill()) + this.tanks[2].setFill(this.tanks[2].getMaxFill()); } public int getSpeed() { - - int speed = 1; - - for(int i = 14; i < 16; i++) { - - if(slots[i] != null) { - - if(slots[i].getItem() == ModItems.upgrade_speed_1) - speed += 1; - else if(slots[i].getItem() == ModItems.upgrade_speed_2) - speed += 2; - else if(slots[i].getItem() == ModItems.upgrade_speed_3) - speed += 3; - } - } - - return Math.min(speed, 4); + return Math.min(UpgradeManager.getLevel(UpgradeType.SPEED), 3) + 1; } public int getConsumption() { + int efficiency = Math.min(UpgradeManager.getLevel(UpgradeType.POWER), 3); - int speed = 0; - - for(int i = 14; i < 16; i++) { - - if(slots[i] != null) { - - if(slots[i].getItem() == ModItems.upgrade_power_1) - speed += 1; - else if(slots[i].getItem() == ModItems.upgrade_power_2) - speed += 2; - else if(slots[i].getItem() == ModItems.upgrade_power_3) - speed += 3; - } - } - - return Math.min(speed, 3); + return consumption - 100_000 * efficiency; } - public int getSafety() { - - int speed = 1; - - for(int i = 14; i < 16; i++) { - - if(slots[i] != null) { - - if(slots[i].getItem() == ModItems.upgrade_effect_1) - speed += 1; - else if(slots[i].getItem() == ModItems.upgrade_effect_2) - speed += 2; - else if(slots[i].getItem() == ModItems.upgrade_effect_3) - speed += 3; - } - } - - return Math.min(speed, 4); + public int getCoolantConsumption() { + int efficiency = Math.min(UpgradeManager.getLevel(UpgradeType.EFFECT), 3); + //half a small tower's worth + return 500 / (efficiency + 1) * getSpeed(); } public long getPowerScaled(long i) { @@ -386,56 +252,6 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements public int getProgressScaled(int i) { return (progress * i) / duration; } - - @Override - public void setFillForSync(int fill, int index) { - - if(index == 0) - coolant.setFill(fill); - else if(index == 1) - amat.setFill(fill); - } - - @Override - public void setFluidFill(int fill, FluidType type) { - if(type == Fluids.COOLANT) - coolant.setFill(fill); - else if(type == Fluids.AMAT) - amat.setFill(fill); - } - - @Override - public void setTypeForSync(FluidType type, int index) { - if(index == 0) - coolant.setTankType(type); - else if(index == 1) - amat.setTankType(type); - } - - @Override - public int getFluidFill(FluidType type) { - if(type == Fluids.COOLANT) - return coolant.getFill(); - else if(type == Fluids.AMAT) - return amat.getFill(); - - return 0; - } - - @Override public void fillFluidInit(FluidType type) { } - @Override public void fillFluid(int x, int y, int z, boolean newTact, FluidType type) { } - @Override public boolean getTact() { return false; } - @Override public List getFluidList(FluidType type) { return null; } - @Override public void clearFluidList(FluidType type) { } - - @Override - public int getMaxFluidFill(FluidType type) { - - if(type == Fluids.COOLANT) - return coolant.getMaxFill(); - - return 0; - } @Override public AxisAlignedBB getRenderBoundingBox() { @@ -452,11 +268,9 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements public void readFromNBT(NBTTagCompound nbt) { super.readFromNBT(nbt); - coolant.readFromNBT(nbt, "coolant"); - amat.readFromNBT(nbt, "amat"); + for(int i = 0; i < 3; i++) + tanks[i].readFromNBT(nbt, "t" + i); - this.isOn = nbt.getBoolean("isOn"); - this.countdown = nbt.getInteger("countdown"); this.progress = nbt.getInteger("progress"); this.power = nbt.getLong("power"); this.plugs = nbt.getByte("plugs"); @@ -466,11 +280,9 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements public void writeToNBT(NBTTagCompound nbt) { super.writeToNBT(nbt); - coolant.writeToNBT(nbt, "coolant"); - amat.writeToNBT(nbt, "amat"); + for(int i = 0; i < 3; i++) + tanks[i].writeToNBT(nbt, "t" + i); - nbt.setBoolean("isOn", isOn); - nbt.setInteger("countdown", countdown); nbt.setInteger("progress", progress); nbt.setLong("power", power); nbt.setByte("plugs", plugs); @@ -522,17 +334,17 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements @Override public FluidTank[] getSendingTanks() { - return new FluidTank[] { amat }; + return new FluidTank[] { tanks[1], tanks[2] }; } @Override public FluidTank[] getReceivingTanks() { - return new FluidTank[] { coolant }; + return new FluidTank[] { tanks[0] }; } @Override public FluidTank[] getAllTanks() { - return new FluidTank[] { amat, coolant }; + return tanks; } @Override @@ -598,13 +410,13 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements info.add(IUpgradeInfoProvider.getStandardLabel(ModBlocks.machine_cyclotron)); if(type == UpgradeType.SPEED) { info.add(EnumChatFormatting.GREEN + I18nUtil.resolveKey(this.KEY_DELAY, "-" + (100 - 100 / (level + 1)) + "%")); + info.add(EnumChatFormatting.RED + I18nUtil.resolveKey(this.KEY_COOLANT_CONSUMPTION, "+" + (level * 100) + "%")); } if(type == UpgradeType.POWER) { info.add(EnumChatFormatting.GREEN + I18nUtil.resolveKey(this.KEY_CONSUMPTION, "-" + (level * 10) + "%")); } if(type == UpgradeType.EFFECT) { info.add(EnumChatFormatting.GREEN + I18nUtil.resolveKey(this.KEY_COOLANT_CONSUMPTION, "-" + (100 - 100 / (level + 1)) + "%")); - info.add(EnumChatFormatting.GREEN + I18nUtil.resolveKey(this.KEY_OVERHEAT_CHANCE, "-" + (100 - 100 / (level + 1)) + "%")); } } @@ -618,7 +430,7 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements @Override public void provideExtraInfo(NBTTagCompound data) { - data.setBoolean(CompatEnergyControl.B_ACTIVE, this.isOn && this.progress > 0); - data.setDouble(CompatEnergyControl.D_CONSUMPTION_HE, this.progress > 0 ? consumption - 100_000 * getConsumption() : 0); + data.setBoolean(CompatEnergyControl.B_ACTIVE, this.progress > 0); + data.setDouble(CompatEnergyControl.D_CONSUMPTION_HE, this.progress > 0 ? getConsumption() : 0); } } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineElectricFurnace.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineElectricFurnace.java index 87b0a777f..26c2630f7 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineElectricFurnace.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineElectricFurnace.java @@ -20,6 +20,7 @@ import api.hbm.energymk2.IBatteryItem; import api.hbm.energymk2.IEnergyReceiverMK2; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; @@ -219,12 +220,8 @@ public class TileEntityMachineElectricFurnace extends TileEntityMachineBase impl markDirty = true; MachineElectricFurnace.updateBlockState(this.progress > 0, this.worldObj, this.xCoord, this.yCoord, this.zCoord); } - - NBTTagCompound data = new NBTTagCompound(); - data.setLong("power", this.power); - data.setInteger("MaxProgress", this.maxProgress); - data.setInteger("progress", this.progress); - this.networkPack(data, 50); + + this.networkPackNT(50); if(markDirty) { @@ -232,22 +229,29 @@ public class TileEntityMachineElectricFurnace extends TileEntityMachineBase impl } } } - + + @Override + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeLong(power); + buf.writeInt(maxProgress); + buf.writeInt(progress); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + power = buf.readLong(); + maxProgress = buf.readInt(); + progress = buf.readInt(); + } + private void updateConnections() { for(ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) this.trySubscribe(worldObj, xCoord + dir.offsetX, yCoord + dir.offsetY, zCoord + dir.offsetZ, dir); } - public void networkUnpack(NBTTagCompound nbt) { - super.networkUnpack(nbt); - - this.power = nbt.getLong("power"); - this.maxProgress = nbt.getInteger("MaxProgress"); - this.progress = nbt.getInteger("progress"); - - } - @Override public void setPower(long i) { power = i; diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineExcavator.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineExcavator.java index 2dbbcb63b..2f9414039 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineExcavator.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineExcavator.java @@ -22,6 +22,7 @@ import com.hbm.items.ModItems; import com.hbm.items.machine.ItemDrillbit; import com.hbm.items.machine.ItemDrillbit.EnumDrillType; import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType; +import com.hbm.items.special.ItemBedrockOreBase; import com.hbm.lib.Library; import com.hbm.tileentity.IGUIProvider; import com.hbm.tileentity.IUpgradeInfoProvider; @@ -40,6 +41,7 @@ import api.hbm.fluid.IFluidStandardReceiver; import cpw.mods.fml.relauncher.ReflectionHelper; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.block.Block; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.item.EntityItem; @@ -150,18 +152,7 @@ public class TileEntityMachineExcavator extends TileEntityMachineBase implements this.targetDepth = 0; } - NBTTagCompound data = new NBTTagCompound(); - data.setBoolean("d", enableDrill); - data.setBoolean("c", enableCrusher); - data.setBoolean("w", enableWalling); - data.setBoolean("v", enableVeinMiner); - data.setBoolean("s", enableSilkTouch); - data.setBoolean("o", operational); - data.setInteger("t", targetDepth); - data.setInteger("g", chuteTimer); - data.setLong("p", power); - tank.writeToNBT(data, "tank"); - this.networkPack(data, 150); + this.networkPackNT(150); } else { @@ -214,19 +205,34 @@ public class TileEntityMachineExcavator extends TileEntityMachineBase implements }; } - public void networkUnpack(NBTTagCompound nbt) { - super.networkUnpack(nbt); - - this.enableDrill = nbt.getBoolean("d"); - this.enableCrusher = nbt.getBoolean("c"); - this.enableWalling = nbt.getBoolean("w"); - this.enableVeinMiner = nbt.getBoolean("v"); - this.enableSilkTouch = nbt.getBoolean("s"); - this.operational = nbt.getBoolean("o"); - this.targetDepth = nbt.getInteger("t"); - this.chuteTimer = nbt.getInteger("g"); - this.power = nbt.getLong("p"); - this.tank.readFromNBT(nbt, "tank"); + @Override + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeBoolean(enableDrill); + buf.writeBoolean(enableCrusher); + buf.writeBoolean(enableWalling); + buf.writeBoolean(enableVeinMiner); + buf.writeBoolean(enableSilkTouch); + buf.writeBoolean(operational); + buf.writeInt(targetDepth); + buf.writeInt(chuteTimer); + buf.writeLong(power); + tank.serialize(buf); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + enableDrill = buf.readBoolean(); + enableCrusher = buf.readBoolean(); + enableWalling = buf.readBoolean(); + enableVeinMiner = buf.readBoolean(); + enableSilkTouch = buf.readBoolean(); + operational = buf.readBoolean(); + targetDepth = buf.readInt(); + chuteTimer = buf.readInt(); + power = buf.readLong(); + tank.deserialize(buf); } protected int getY() { @@ -321,6 +327,10 @@ public class TileEntityMachineExcavator extends TileEntityMachineBase implements ItemStack stack = ore.resource.copy(); List stacks = new ArrayList(); stacks.add(stack); + + if(stack.getItem() == ModItems.bedrock_ore_base) { + ItemBedrockOreBase.setOreAmount(stack, pos.getX(), pos.getZ()); + } ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - 10); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineFunnel.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineFunnel.java index 3b7a8f6fd..23ec51164 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineFunnel.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineFunnel.java @@ -1,6 +1,9 @@ package com.hbm.tileentity.machine; +import java.util.HashMap; + import com.hbm.interfaces.IControlReceiver; +import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.container.ContainerFunnel; import com.hbm.inventory.gui.GUIFunnel; import com.hbm.tileentity.IGUIProvider; @@ -96,24 +99,37 @@ public class TileEntityMachineFunnel extends TileEntityMachineBase implements IG @Override public boolean isItemValidForSlot(int slot, ItemStack stack) { if(slot > 8) return false; + if(slots[slot] != null) return true; //if the slot is already occupied, return true because then the same type merging skips the validity check return this.getFrom9(stack) != null || this.getFrom4(stack) != null; } protected InventoryCraftingAuto craftingInventory = new InventoryCraftingAuto(3, 3); + + //hashmap lookups are way faster than iterating over the entire ass crafting list all the fucking time + public static final HashMap from4Cache = new HashMap(); + public static final HashMap from9Cache = new HashMap(); public ItemStack getFrom4(ItemStack ingredient) { + ComparableStack singular = new ComparableStack(ingredient).makeSingular(); + if(from4Cache.containsKey(singular)) return from4Cache.get(singular); this.craftingInventory.clear(); this.craftingInventory.setInventorySlotContents(0, ingredient.copy()); this.craftingInventory.setInventorySlotContents(1, ingredient.copy()); this.craftingInventory.setInventorySlotContents(3, ingredient.copy()); this.craftingInventory.setInventorySlotContents(4, ingredient.copy()); - return getMatch(this.craftingInventory); + ItemStack match = getMatch(this.craftingInventory); + from4Cache.put(singular, match != null ? match.copy() : null); + return match; } public ItemStack getFrom9(ItemStack ingredient) { + ComparableStack singular = new ComparableStack(ingredient).makeSingular(); + if(from9Cache.containsKey(singular)) return from9Cache.get(singular); this.craftingInventory.clear(); for(int i = 0; i < 9; i++) this.craftingInventory.setInventorySlotContents(i, ingredient.copy()); - return getMatch(this.craftingInventory); + ItemStack match = getMatch(this.craftingInventory); + from9Cache.put(singular, match != null ? match.copy() : null); + return match; } public ItemStack getMatch(InventoryCrafting grid) { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineGasCent.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineGasCent.java index cf0ad2b1c..b3179241c 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineGasCent.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineGasCent.java @@ -15,6 +15,7 @@ import com.hbm.packet.LoopedSoundPacket; import com.hbm.packet.PacketDispatcher; import com.hbm.tileentity.IGUIProvider; import com.hbm.tileentity.TileEntityMachineBase; +import com.hbm.util.BufferUtil; import com.hbm.util.CompatEnergyControl; import com.hbm.util.InventoryUtil; import com.hbm.util.fauxpointtwelve.DirPos; @@ -25,6 +26,7 @@ import api.hbm.tile.IInfoProviderEC; import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; @@ -168,19 +170,6 @@ public class TileEntityMachineGasCent extends TileEntityMachineBase implements I return false; } - public void networkUnpack(NBTTagCompound data) { - super.networkUnpack(data); - - this.power = data.getLong("power"); - this.progress = data.getInteger("progress"); - this.isProgressing = data.getBoolean("isProgressing"); - this.inputTank.setTankType(PseudoFluidType.types.get(data.getString("inputType"))); - this.outputTank.setTankType(PseudoFluidType.types.get(data.getString("outputType"))); - this.inputTank.setFill(data.getInteger("inputFill")); - this.outputTank.setFill(data.getInteger("outputFill")); - this.tank.readFromNBT(data, "t"); - } - @Override public void updateEntity() { @@ -234,21 +223,42 @@ public class TileEntityMachineGasCent extends TileEntityMachineBase implements I } } - NBTTagCompound data = new NBTTagCompound(); - data.setLong("power", power); - data.setInteger("progress", progress); - data.setBoolean("isProgressing", isProgressing); - data.setInteger("inputFill", inputTank.getFill()); - data.setInteger("outputFill", outputTank.getFill()); - data.setString("inputType", inputTank.getTankType().name); - data.setString("outputType", outputTank.getTankType().name); - tank.writeToNBT(data, "t"); - this.networkPack(data, 50); + this.networkPackNT(50); PacketDispatcher.wrapper.sendToAllAround(new LoopedSoundPacket(xCoord, yCoord, zCoord), new TargetPoint(worldObj.provider.dimensionId, xCoord, yCoord, zCoord, 50)); } } + @Override + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeLong(power); + buf.writeInt(progress); + buf.writeBoolean(isProgressing); + //pseudofluids can be refactored another day + buf.writeInt(inputTank.getFill()); + buf.writeInt(outputTank.getFill()); + BufferUtil.writeString(buf, inputTank.getTankType().name); //cough cough + BufferUtil.writeString(buf, outputTank.getTankType().name); + + tank.serialize(buf); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + power = buf.readLong(); + progress = buf.readInt(); + isProgressing = buf.readBoolean(); + + inputTank.setFill(buf.readInt()); + outputTank.setFill(buf.readInt()); + inputTank.setTankType(PseudoFluidType.types.get(BufferUtil.readString(buf))); + outputTank.setTankType(PseudoFluidType.types.get(BufferUtil.readString(buf))); + + tank.deserialize(buf); + } + private void updateConnections() { for(DirPos pos : getConPos()) { this.trySubscribe(worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir()); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineMixer.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineMixer.java index 34e2b1498..e9751c820 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineMixer.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineMixer.java @@ -25,6 +25,7 @@ import api.hbm.energymk2.IEnergyReceiverMK2; import api.hbm.fluid.IFluidStandardTransceiver; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; @@ -121,7 +122,7 @@ public class TileEntityMachineMixer extends TileEntityMachineBase implements INB for(int i = 0; i < 3; i++) { tanks[i].writeToNBT(data, i + ""); } - this.networkPack(data, 50); + this.networkPackNT(50); } else { @@ -137,6 +138,30 @@ public class TileEntityMachineMixer extends TileEntityMachineBase implements INB } } } + + @Override + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeLong(power); + buf.writeInt(processTime); + buf.writeInt(progress); + buf.writeInt(recipeIndex); + buf.writeBoolean(wasOn); + + for(int i = 0; i < tanks.length; i++) tanks[i].serialize(buf); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + power = buf.readLong(); + processTime = buf.readInt(); + progress = buf.readInt(); + recipeIndex = buf.readInt(); + wasOn = buf.readBoolean(); + + for(int i = 0; i < tanks.length; i++) tanks[i].deserialize(buf); + } @Override public void networkUnpack(NBTTagCompound nbt) { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineOreSlopper.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineOreSlopper.java new file mode 100644 index 000000000..1fdbe4de6 --- /dev/null +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineOreSlopper.java @@ -0,0 +1,41 @@ +package com.hbm.tileentity.machine; + +import com.hbm.inventory.container.ContainerOreSlopper; +import com.hbm.inventory.gui.GUIOreSlopper; +import com.hbm.tileentity.IGUIProvider; +import com.hbm.tileentity.TileEntityMachineBase; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.client.gui.GuiScreen; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.inventory.Container; +import net.minecraft.world.World; + +public class TileEntityMachineOreSlopper extends TileEntityMachineBase implements IGUIProvider { + + public TileEntityMachineOreSlopper() { + super(11); + } + + @Override + public String getName() { + return "container.machineOreSlopper"; + } + + @Override + public void updateEntity() { + + } + + @Override + public Container provideContainer(int ID, EntityPlayer player, World world, int x, int y, int z) { + return new ContainerOreSlopper(player.inventory, this); + } + + @Override + @SideOnly(Side.CLIENT) + public GuiScreen provideGUI(int ID, EntityPlayer player, World world, int x, int y, int z) { + return new GUIOreSlopper(player.inventory, this); + } +} diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineWoodBurner.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineWoodBurner.java index 72306abf9..46de4e4e1 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineWoodBurner.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineWoodBurner.java @@ -24,6 +24,7 @@ import api.hbm.fluid.IFluidStandardReceiver; import api.hbm.tile.IInfoProviderEC; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; @@ -126,15 +127,7 @@ public class TileEntityMachineWoodBurner extends TileEntityMachineBase implement this.power += this.powerGen; if(this.power > this.maxPower) this.power = this.maxPower; - NBTTagCompound data = new NBTTagCompound(); - data.setLong("power", power); - data.setInteger("burnTime", burnTime); - data.setInteger("powerGen", powerGen); - data.setInteger("maxBurnTime", maxBurnTime); - data.setBoolean("isOn", isOn); - data.setBoolean("liquidBurn", liquidBurn); - tank.writeToNBT(data, "t"); - this.networkPack(data, 25); + this.networkPackNT(25); } else { if(powerGen > 0) { @@ -145,6 +138,32 @@ public class TileEntityMachineWoodBurner extends TileEntityMachineBase implement } } + @Override + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeLong(power); + buf.writeInt(burnTime); + buf.writeInt(powerGen); + buf.writeInt(maxBurnTime); + buf.writeBoolean(isOn); + buf.writeBoolean(liquidBurn); + + tank.serialize(buf); + } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + power = buf.readLong(); + burnTime = buf.readInt(); + powerGen = buf.readInt(); + maxBurnTime = buf.readInt(); + isOn = buf.readBoolean(); + liquidBurn = buf.readBoolean(); + + tank.deserialize(buf); + } + private DirPos[] getConPos() { ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - 10); ForgeDirection rot = dir.getRotation(ForgeDirection.UP); @@ -153,20 +172,7 @@ public class TileEntityMachineWoodBurner extends TileEntityMachineBase implement new DirPos(xCoord - dir.offsetX * 2 + rot.offsetX, yCoord, zCoord - dir.offsetZ * 2 + rot.offsetZ, dir.getOpposite()) }; } - - @Override - public void networkUnpack(NBTTagCompound nbt) { - super.networkUnpack(nbt); - - this.power = nbt.getLong("power"); - this.powerGen = nbt.getInteger("powerGen"); - this.burnTime = nbt.getInteger("burnTime"); - this.maxBurnTime = nbt.getInteger("maxBurnTime"); - this.isOn = nbt.getBoolean("isOn"); - this.liquidBurn = nbt.getBoolean("liquidBurn"); - tank.readFromNBT(nbt, "t"); - } - + @Override public void readFromNBT(NBTTagCompound nbt) { super.readFromNBT(nbt); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntitySILEX.java b/src/main/java/com/hbm/tileentity/machine/TileEntitySILEX.java index 3be37d486..21acbc542 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntitySILEX.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntitySILEX.java @@ -15,6 +15,7 @@ import com.hbm.items.ModItems; import com.hbm.items.machine.ItemFELCrystal.EnumWavelengths; import com.hbm.tileentity.IGUIProvider; import com.hbm.tileentity.TileEntityMachineBase; +import com.hbm.util.BufferUtil; import com.hbm.util.CompatEnergyControl; import com.hbm.util.InventoryUtil; import com.hbm.util.WeightedRandomObject; @@ -23,6 +24,7 @@ import api.hbm.fluid.IFluidStandardReceiver; import api.hbm.tile.IInfoProviderEC; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import io.netty.buffer.ByteBuf; import net.minecraft.client.gui.GuiScreen; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.Container; @@ -84,38 +86,42 @@ public class TileEntitySILEX extends TileEntityMachineBase implements IFluidAcce if(currentFill <= 0) { current = null; } - - NBTTagCompound data = new NBTTagCompound(); - data.setInteger("fill", currentFill); - data.setInteger("progress", progress); - data.setString("mode", mode.toString()); - - if(this.current != null) { - data.setInteger("item", Item.getIdFromItem(this.current.item)); - data.setInteger("meta", this.current.meta); - } - - tank.updateTank(xCoord, yCoord, zCoord, worldObj.provider.dimensionId); - this.networkPack(data, 50); + + this.networkPackNT(50); this.mode = EnumWavelengths.NULL; } } - - public void networkUnpack(NBTTagCompound nbt) { - super.networkUnpack(nbt); - - this.currentFill = nbt.getInteger("fill"); - this.progress = nbt.getInteger("progress"); - this.mode = EnumWavelengths.valueOf(nbt.getString("mode")); - - if(this.currentFill > 0) { - this.current = new ComparableStack(Item.getItemById(nbt.getInteger("item")), 1, nbt.getInteger("meta")); - - } else { - this.current = null; + + @Override + public void serialize(ByteBuf buf) { + super.serialize(buf); + buf.writeInt(currentFill); + buf.writeInt(progress); + BufferUtil.writeString(buf, mode.toString()); + + tank.serialize(buf); + + if(this.current != null) { + buf.writeInt(Item.getIdFromItem(this.current.item)); + buf.writeInt(this.current.meta); } } + + @Override + public void deserialize(ByteBuf buf) { + super.deserialize(buf); + currentFill = buf.readInt(); + progress = buf.readInt(); + mode = EnumWavelengths.valueOf(BufferUtil.readString(buf)); + + tank.deserialize(buf); + + if(currentFill > 0) { + current = new ComparableStack(Item.getItemById(buf.readInt()), 1, buf.readInt()); + } else + current = null; + } public void handleButtonPacket(int value, int meta) { diff --git a/src/main/java/com/hbm/tileentity/network/TileEntityConverterRfHe.java b/src/main/java/com/hbm/tileentity/network/TileEntityConverterRfHe.java index a41c62ce2..32242267d 100644 --- a/src/main/java/com/hbm/tileentity/network/TileEntityConverterRfHe.java +++ b/src/main/java/com/hbm/tileentity/network/TileEntityConverterRfHe.java @@ -35,9 +35,9 @@ public class TileEntityConverterRfHe extends TileEntityLoadedBase implements IEn @Untested @Override public int receiveEnergy(ForgeDirection from, int maxReceive, boolean simulate) { - - if(recursionBrake) - return 0; + + if(this.tileEntityInvalid) return 0; + if(recursionBrake) return 0; if(simulate) return maxReceive; diff --git a/src/main/java/com/hbm/util/ShadyUtil.java b/src/main/java/com/hbm/util/ShadyUtil.java index f416debc0..35ea12722 100644 --- a/src/main/java/com/hbm/util/ShadyUtil.java +++ b/src/main/java/com/hbm/util/ShadyUtil.java @@ -53,6 +53,7 @@ public class ShadyUtil { public static String Adam29Adam29 = "bbae7bfa-0eba-40ac-a0dd-f3b715e73e61"; public static String Alcater = "0b399a4a-8545-45a1-be3d-ece70d7d48e9"; public static String ege444 = "42ee978c-442a-4cd8-95b6-29e469b6df10"; + public static String LePeeperSauvage = "433c2bb7-018c-4d51-acfe-27f907432b5e"; public static final Set hashes = new HashSet(); static { diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index 0bef59215..9c93972a5 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -782,6 +782,7 @@ hbmfluid.tritium=Tritium hbmfluid.uf6=Uranhexafluorid hbmfluid.ultrahotsteam=Ultraverdichteter Dampf hbmfluid.unsaturateds=Ungesättigte Kohlenwasserstoffe +hbmfluid.vitriol=Vitriol hbmfluid.wastefluid=Flüssiger Atommüll hbmfluid.wastegas=Gasförmiger Atommüll hbmfluid.water=Wasser @@ -1259,6 +1260,38 @@ item.battery_su.name=Einwegbatterie item.battery_su_l.name=Große Einwegbatterie item.battery_trixite.name=Billige Spark-Batterie-Nachmache item.bdcl.name=BDCL +item.bedrock_ore.grade.base.name=%s-Bedrockerz +item.bedrock_ore.grade.base_roasted.name=Geröstetes %s-Bedrockerz +item.bedrock_ore.grade.base_washed.name=Gewaschenes %s-Bedrockerz +item.bedrock_ore.grade.primary.name=%s-Bedrockerz, Primärfraktion +item.bedrock_ore.grade.primary_roasted.name=%s-Bedrockerz, geröstete Primärfraktion +item.bedrock_ore.grade.primary_sulfuric.name=%s-Bedrockerz, schwefelige Primärfraktion +item.bedrock_ore.grade.primary_nosulfuric.name=%s-Bedrockerz, geteilte schwefelige Primärfraktion +item.bedrock_ore.grade.primary_solvent.name=%s-Bedrockerz, gelöste Primärfraktion +item.bedrock_ore.grade.primary_nosolvent.name=%s-Bedrockerz, geteilte gelöste Primärfraktion +item.bedrock_ore.grade.primary_rad.name=%s-Bedrockerz, gereinigte Primärfraktion +item.bedrock_ore.grade.primary_norad.name=%s-Bedrockerz, geteilte gereinigte Primärfraktion +item.bedrock_ore.grade.primary_first.name=%s-Bedrockerz, Primärfraktion, hohe Gewichtung +item.bedrock_ore.grade.primary_second.name=%s-Bedrockerz, Primärfraktion, niedrige Gewichtung +item.bedrock_ore.grade.crumbs.name=%s-Bedrockerzkrumen +item.bedrock_ore.grade.sulfuric_byproduct.name=%s-Bedrockerz, schwefeliges Nebenprodukt +item.bedrock_ore.grade.sulfuric_roasted.name=%s-Bedrockerz, geröstetes schwefeliges Nebenprodukt +item.bedrock_ore.grade.sulfuric_arc.name=%s-Bedrockerz, gebranntes schwefeliges Nebenprodukt +item.bedrock_ore.grade.sulfuric_washed.name=%s-Bedrockerz, gewaschenes schwefeliges Nebenprodukt +item.bedrock_ore.grade.solvent_byproduct.name=%s-Bedrockerz, gelöstes Nebenprodukt +item.bedrock_ore.grade.solvent_roasted.name=%s-Bedrockerz, geröstetes gelöstes Nebenprodukt +item.bedrock_ore.grade.solvent_arc.name=%s-Bedrockerz, gebranntes gelöstes Nebenprodukt +item.bedrock_ore.grade.solvent_washed.name=%s-Bedrockerz, gewaschenes gelöstes Nebenprodukt +item.bedrock_ore.grade.rad_byproduct.name=%s-Bedrockerz, gereinigtes Nebenprodukt +item.bedrock_ore.grade.rad_roasted.name=%s-Bedrockerz, geröstetes gereinigtes Nebenprodukt +item.bedrock_ore.grade.rad_arc.name=%s-Bedrockerz, gebranntes gereinigtes Nebenprodukt +item.bedrock_ore.grade.rad_washed.name=%s-Bedrockerz, gewaschenes gereinigtes Nebenprodukt +item.bedrock_ore.type.actinide.name=Actinoide +item.bedrock_ore.type.crystal.name=Kristall +item.bedrock_ore.type.heavy.name=Schwermetall +item.bedrock_ore.type.light.name=Leichtmetall +item.bedrock_ore.type.nonmetal.name=Nichtmetall +item.bedrock_ore.type.rare.name=Seltenerden item.beta.name=Beta-Features item.big_sword.name=Großes Schwert item.billet_am_mix.name=Reaktorfähiges Americiumbillet @@ -2273,6 +2306,8 @@ item.insert_polonium.name=Poloniumeinlage item.insert_steel.name=Schwere Stahleinlage item.insert_xsapi.name=XSAPI-Einlage item.insert_yharonite.name=Yharoniteinlage +item.item_secret.canister.name=Komposit SB-26 +item.item_secret.controller.name=Proprietäre Steuereinheit item.iv_blood.name=Blutbeutel item.iv_empty.name=Infusionsbeutel item.iv_xp.name=Erfahrungsbeutel @@ -2713,6 +2748,7 @@ item.part_copper.name=Kupferstaubkiste item.part_generic.piston_electric.name=Electrischer Kolben item.part_generic.piston_hydraulic.name=Hydraulischer Kolben item.part_generic.piston_pneumatic.name=Pneumatischer Kolben +item.part_generic.lde.name=Leichtbauteil item.part_lithium.name=Lithiumstaubkiste item.part_plutonium.name=Plutoniumstaubkiste item.particle_aelectron.name=Positronenkapsel diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index 5cb3100bd..7c6fd6b3a 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -1482,6 +1482,7 @@ hbmfluid.tritium=Tritium hbmfluid.uf6=Uranium Hexafluoride hbmfluid.ultrahotsteam=Ultra Dense Steam hbmfluid.unsaturateds=Unsaturated Hydrocarbons +hbmfluid.vitriol=Vitriol hbmfluid.wastefluid=Liquid Nuclear Waste hbmfluid.wastegas=Gaseous Nuclear Waste hbmfluid.water=Water @@ -1491,8 +1492,6 @@ hbmfluid.xenon=Xenon Gas hbmfluid.xpjuice=Experience Juice hbmfluid.xylene=BTX - - hbmpseudofluid.none=Empty hbmpseudofluid.heuf6=Highly Enriched UF6 hbmpseudofluid.meuf6=Medium Enriched UF6 @@ -1974,6 +1973,38 @@ item.battery_su.name=SU-Battery item.battery_su_l.name=Large SU-Battery item.battery_trixite.name=Off-Brand Spark Battery item.bdcl.name=BDCL +item.bedrock_ore.grade.base.name=%s Bedrock Ore +item.bedrock_ore.grade.base_roasted.name=Roasted %s Bedrock Ore +item.bedrock_ore.grade.base_washed.name=Washed %s Bedrock Ore +item.bedrock_ore.grade.primary.name=%s Bedrock Ore, Primary Fraction +item.bedrock_ore.grade.primary_roasted.name=%s Bedrock Ore, Roasted Primary Fraction +item.bedrock_ore.grade.primary_sulfuric.name=%s Bedrock Ore, Sulfuric Primary Fraction +item.bedrock_ore.grade.primary_nosulfuric.name=%s Bedrock Ore, Separated Sulfuric Primary Fraction +item.bedrock_ore.grade.primary_solvent.name=%s Bedrock Ore, Dissolved Primary Fraction +item.bedrock_ore.grade.primary_nosolvent.name=%s Bedrock Ore, Separated Dissolved Primary Fraction +item.bedrock_ore.grade.primary_rad.name=%s Bedrock Ore, Cleaned Primary Fraction +item.bedrock_ore.grade.primary_norad.name=%s Bedrock Ore, Separated Cleaned Primary Fraction +item.bedrock_ore.grade.primary_first.name=%s Bedrock Ore, Primary Fraction, Higher Weight +item.bedrock_ore.grade.primary_second.name=%s Bedrock Ore, Primary Fraction, Lower Weight +item.bedrock_ore.grade.crumbs.name=%s Bedrock Ore Crumbs +item.bedrock_ore.grade.sulfuric_byproduct.name=%s Bedrock Ore, Sulfuric Byproduct +item.bedrock_ore.grade.sulfuric_roasted.name=%s Bedrock Ore, Roasted Sulfuric Byproduct +item.bedrock_ore.grade.sulfuric_arc.name=%s Bedrock Ore, Seared Sulfuric Byproduct +item.bedrock_ore.grade.sulfuric_washed.name=%s Bedrock Ore, Washed Sulfuric Byproduct +item.bedrock_ore.grade.solvent_byproduct.name=%s Bedrock Ore, Dissolved Byproduct +item.bedrock_ore.grade.solvent_roasted.name=%s Bedrock Ore, Roasted Dissolved Byproduct +item.bedrock_ore.grade.solvent_arc.name=%s Bedrock Ore, Seared Dissolved Byproduct +item.bedrock_ore.grade.solvent_washed.name=%s Bedrock Ore, Washed Dissolved Byproduct +item.bedrock_ore.grade.rad_byproduct.name=%s Bedrock Ore, Cleaned Byproduct +item.bedrock_ore.grade.rad_roasted.name=%s Bedrock Ore, Roasted Cleaned Byproduct +item.bedrock_ore.grade.rad_arc.name=%s Bedrock Ore, Seared Cleaned Byproduct +item.bedrock_ore.grade.rad_washed.name=%s Bedrock Ore, Washed Cleaned Byproduct +item.bedrock_ore.type.actinide.name=Actinide +item.bedrock_ore.type.crystal.name=Crystalline +item.bedrock_ore.type.heavy.name=Heavy Metal +item.bedrock_ore.type.light.name=Light Metal +item.bedrock_ore.type.nonmetal.name=Non-Metal +item.bedrock_ore.type.rare.name=Rare Earth item.beta.name=Beta Features item.big_sword.name=Great Sword item.billet_actinium.name=Actinium-227 Billet @@ -3081,6 +3112,8 @@ item.insert_polonium.name=Polonium Insert item.insert_steel.name=Heavy Steel Insert item.insert_xsapi.name=XSAPI Insert item.insert_yharonite.name=Yharonite Insert +item.item_secret.canister.name=Composition SB-26 +item.item_secret.controller.name=Proprietary Control Unit item.iv_blood.name=Blood Bag item.iv_empty.name=IV Bag item.iv_xp.name=Experience Bag @@ -3540,6 +3573,7 @@ item.part_copper.name=Box of Copper Dust item.part_generic.piston_electric.name=Electric Piston item.part_generic.piston_hydraulic.name=Hydraulic Piston item.part_generic.piston_pneumatic.name=Pneumatic Piston +item.part_generic.lde.name=Low-Density Element item.part_lithium.name=Box of Lithium Dust item.part_plutonium.name=Box of Plutonium Dust item.particle_aelectron.name=Positron Capsule diff --git a/src/main/resources/assets/hbm/models/LaunchPad.obj b/src/main/resources/assets/hbm/models/LaunchPad.obj deleted file mode 100644 index 4beabf648..000000000 --- a/src/main/resources/assets/hbm/models/LaunchPad.obj +++ /dev/null @@ -1,302 +0,0 @@ -# Blender v2.76 (sub 0) OBJ File: 'launchpad.blend' -# www.blender.org -o Cylinder -v 1.060660 0.250000 -1.060660 -v 0.000000 0.500000 -1.000000 -v 1.500000 0.250000 0.000000 -v 0.707107 0.500000 -0.707107 -v 1.060660 0.250000 1.060660 -v 1.000000 0.500000 0.000000 -v -0.000000 0.250000 1.500000 -v 0.707107 0.500000 0.707107 -v -1.060660 0.250000 1.060660 -v -0.000000 0.500000 1.000000 -v 0.000000 0.250000 -1.500000 -v -0.707107 0.500000 0.707107 -v -1.060660 0.250000 -1.060660 -v -1.000000 0.500000 -0.000000 -v -1.500000 0.250000 -0.000000 -v -0.707107 0.500000 -0.707107 -v 0.000000 0.250000 -1.000000 -v 0.707107 0.250000 -0.707107 -v 1.000000 0.250000 0.000000 -v 0.707107 0.250000 0.707107 -v -0.000000 0.250000 1.000000 -v -0.707107 0.250000 0.707107 -v -1.000000 0.250000 -0.000000 -v -0.707107 0.250000 -0.707107 -v 0.000000 0.000000 -1.500000 -v 1.060660 0.000000 -1.060660 -v 1.500000 0.000000 0.000000 -v 1.060660 0.000000 1.060660 -v -0.000000 0.000000 1.500000 -v -1.060660 0.000000 1.060660 -v -1.500000 0.000000 -0.000000 -v -1.060660 0.000000 -1.060660 -v -0.500000 0.000000 2.000000 -v 0.500000 0.000000 2.000000 -v -0.500000 0.000000 -2.000000 -v 0.500000 0.000000 -2.000000 -v -0.500000 0.125000 -2.000000 -v 0.500000 0.125000 -2.000000 -v -0.500000 0.475000 -0.750000 -v 0.500000 0.475000 -0.750000 -v -0.500000 0.475000 0.750000 -v 0.500000 0.475000 0.750000 -v 0.500000 0.125000 2.000000 -v -0.500000 0.125000 2.000000 -v -0.500000 0.100000 0.750000 -v 0.500000 0.100000 0.750000 -v -0.500000 0.100000 -0.750000 -v 0.500000 0.100000 -0.750000 -v 2.000000 0.000000 0.500000 -v 2.000000 0.000000 -0.500000 -v -2.000000 0.000000 0.500000 -v -2.000000 0.000000 -0.500000 -v -2.000000 0.125000 0.500000 -v -2.000000 0.125000 -0.500000 -v -0.750000 0.475000 0.500000 -v -0.750000 0.475000 -0.500000 -v 0.750000 0.475000 0.500000 -v 0.750000 0.475000 -0.500000 -v 2.000000 0.125000 -0.500000 -v 2.000000 0.125000 0.500000 -v 0.750000 0.100000 0.500000 -v 0.750000 0.100000 -0.500000 -v -0.750000 0.100000 0.500000 -v -0.750000 0.100000 -0.500000 -vt 0.679427 0.603288 -vt 0.736986 0.545729 -vt 0.755787 0.564530 -vt 0.736986 0.464329 -vt 0.763575 0.464329 -vt 0.679428 0.406770 -vt 0.698229 0.387969 -vt 0.598027 0.406770 -vt 0.598027 0.380181 -vt 0.540468 0.464329 -vt 0.521667 0.445528 -vt 0.540468 0.545729 -vt 0.513879 0.545729 -vt 0.598027 0.603288 -vt 0.679427 0.629877 -vt 0.579226 0.622089 -vt 0.371403 0.064091 -vt 0.370621 0.122777 -vt 0.246818 0.069553 -vt 0.028468 0.292851 -vt 0.071192 0.251063 -vt 0.122297 0.378412 -vt 0.289175 0.473320 -vt 0.246967 0.432446 -vt 0.370760 0.378824 -vt 0.456943 0.213084 -vt 0.412191 0.251217 -vt 0.204262 0.028468 -vt 0.122271 0.123726 -vt 0.028468 0.209288 -vt 0.062521 0.124396 -vt 0.121333 0.437581 -vt 0.143605 0.355918 -vt 0.245661 0.401664 -vt 0.429011 0.374227 -vt 0.552285 0.820181 -vt 0.552285 0.686813 -vt 0.658640 0.686813 -vt 0.346906 0.359230 -vt 0.145516 0.144219 -vt 0.102263 0.249691 -vt 0.382068 0.252292 -vt 0.248398 0.100332 -vt 0.348830 0.144590 -vt 0.898743 0.686813 -vt 0.898743 0.820181 -vt 0.792388 0.820181 -vt 0.658640 0.971532 -vt 0.552285 0.971532 -vt 0.552285 0.833475 -vt 0.898743 0.833475 -vt 0.792388 0.833475 -vt 0.898743 0.971532 -vt 0.658640 0.833475 -vt 0.792388 0.971532 -vt 0.753982 0.960778 -vt 0.937149 0.960778 -vt 0.513879 0.960778 -vt 0.539483 0.829891 -vt 0.671442 0.829891 -vt 0.697046 0.960778 -vt 0.413332 0.663908 -vt 0.306977 0.663908 -vt 0.306977 0.530539 -vt 0.066874 0.530539 -vt 0.173229 0.530539 -vt 0.173229 0.663908 -vt 0.413332 0.815259 -vt 0.306977 0.815259 -vt 0.306977 0.677202 -vt 0.066874 0.663908 -vt 0.173229 0.677202 -vt 0.066874 0.815259 -vt 0.066874 0.677202 -vt 0.413332 0.677202 -vt 0.028468 0.804505 -vt 0.211635 0.804505 -vt 0.173229 0.815259 -vt 0.268571 0.804505 -vt 0.294175 0.673617 -vt 0.426134 0.673617 -vt 0.451738 0.804505 -vt 0.722318 0.323245 -vt 0.513879 0.236907 -vt 0.600218 0.028468 -vt 0.698228 0.622089 -vt 0.763575 0.545729 -vt 0.755787 0.445528 -vt 0.679428 0.380181 -vt 0.579226 0.387969 -vt 0.513880 0.464329 -vt 0.598027 0.629877 -vt 0.521667 0.564530 -vt 0.288867 0.028609 -vt 0.062538 0.377750 -vt 0.371704 0.437572 -vt 0.429230 0.127457 -vt 0.121231 0.064583 -vt 0.204447 0.473603 -vt 0.456631 0.289155 -vt 0.658640 0.820181 -vt 0.792388 0.686813 -vt 0.779586 0.829891 -vt 0.911545 0.829891 -vt 0.413332 0.530539 -vt 0.054072 0.673618 -vt 0.186031 0.673618 -vt 0.722318 0.028468 -vt 0.808657 0.114806 -vt 0.808657 0.236907 -vt 0.600218 0.323245 -vt 0.513879 0.114806 -vn 0.382700 0.000000 -0.923900 -vn 0.923900 0.000000 -0.382700 -vn 0.923900 0.000000 0.382700 -vn 0.382700 0.000000 0.923900 -vn -0.382700 0.000000 0.923900 -vn -0.923900 0.000000 0.382700 -vn 0.000000 1.000000 -0.000000 -vn -0.382700 0.000000 -0.923900 -vn -0.923900 0.000000 -0.382700 -vn 0.000000 -0.996800 0.079700 -vn 0.000000 -0.996800 -0.079700 -vn 0.000000 0.963000 -0.269600 -vn 0.000000 0.000000 1.000000 -vn 0.000000 0.963000 0.269600 -vn 0.000000 0.000000 -1.000000 -vn -1.000000 0.000000 0.000000 -vn 1.000000 0.000000 0.000000 -vn 0.079700 -0.996800 0.000000 -vn -0.079700 -0.996800 -0.000000 -vn -0.269600 0.963000 -0.000000 -vn 0.269600 0.963000 0.000000 -vn 0.000000 -1.000000 0.000000 -s off -f 2/1/1 4/2/1 18/3/1 -f 4/2/2 6/4/2 19/5/2 -f 6/4/3 8/6/3 20/7/3 -f 8/6/4 10/8/4 21/9/4 -f 10/8/5 12/10/5 22/11/5 -f 12/10/6 14/12/6 23/13/6 -f 14/12/7 8/6/7 6/4/7 -f 16/14/8 2/1/8 17/15/8 -f 14/12/9 16/14/9 24/16/9 -f 17/17/7 11/18/7 13/19/7 -f 22/20/7 9/21/7 7/22/7 -f 20/23/7 5/24/7 3/25/7 -f 18/26/7 1/27/7 11/18/7 -f 24/28/7 13/19/7 15/29/7 -f 22/30/7 23/31/7 15/29/7 -f 21/32/7 7/22/7 5/24/7 -f 7/22/4 29/33/4 28/34/4 -f 19/35/7 3/25/7 1/27/7 -f 36/36/10 48/37/10 47/38/10 -f 5/24/3 28/34/3 27/39/3 -f 15/29/6 31/40/6 30/41/6 -f 9/21/5 30/41/5 29/33/5 -f 3/25/2 27/39/2 26/42/2 -f 13/19/9 32/43/9 31/40/9 -f 1/27/1 26/42/1 25/44/1 -f 11/18/8 25/44/8 32/43/8 -f 46/45/11 34/46/11 33/47/11 -f 39/48/12 40/49/12 38/50/12 -f 33/47/13 34/46/13 43/51/13 -f 44/52/14 43/51/14 42/53/14 -f 37/54/15 38/50/15 36/36/15 -f 44/52/16 41/55/16 45/56/16 -f 46/57/17 42/53/17 43/51/17 -f 48/58/17 36/59/17 38/50/17 -f 37/54/16 35/60/16 47/61/16 -f 51/62/18 52/63/18 64/64/18 -f 61/65/19 62/66/19 50/67/19 -f 55/68/20 56/69/20 54/70/20 -f 49/71/17 50/67/17 59/72/17 -f 57/73/21 60/74/21 59/72/21 -f 53/75/16 54/70/16 52/63/16 -f 60/74/13 57/73/13 61/76/13 -f 62/77/15 58/78/15 59/72/15 -f 64/79/15 52/80/15 54/70/15 -f 53/75/13 51/81/13 63/82/13 -f 28/83/22 30/84/22 32/85/22 -f 17/86/1 2/1/1 18/3/1 -f 18/87/2 4/2/2 19/5/2 -f 19/88/3 6/4/3 20/7/3 -f 20/89/4 8/6/4 21/9/4 -f 21/90/5 10/8/5 22/11/5 -f 22/91/6 12/10/6 23/13/6 -f 6/4/7 4/2/7 2/1/7 -f 2/1/7 16/14/7 6/4/7 -f 14/12/7 12/10/7 10/8/7 -f 10/8/7 8/6/7 14/12/7 -f 6/4/7 16/14/7 14/12/7 -f 24/92/8 16/14/8 17/15/8 -f 23/93/9 14/12/9 24/16/9 -f 24/94/7 17/17/7 13/19/7 -f 21/95/7 22/20/7 7/22/7 -f 19/96/7 20/23/7 3/25/7 -f 17/97/7 18/26/7 11/18/7 -f 23/98/7 24/28/7 15/29/7 -f 9/21/7 22/30/7 15/29/7 -f 20/99/7 21/32/7 5/24/7 -f 5/24/4 7/22/4 28/34/4 -f 18/100/7 19/35/7 1/27/7 -f 35/101/10 36/36/10 47/38/10 -f 3/25/3 5/24/3 27/39/3 -f 9/21/6 15/29/6 30/41/6 -f 7/22/5 9/21/5 29/33/5 -f 1/27/2 3/25/2 26/42/2 -f 15/29/9 13/19/9 31/40/9 -f 11/18/1 1/27/1 25/44/1 -f 13/19/8 11/18/8 32/43/8 -f 45/102/11 46/45/11 33/47/11 -f 37/54/12 39/48/12 38/50/12 -f 44/52/13 33/47/13 43/51/13 -f 41/55/14 44/52/14 42/53/14 -f 35/101/15 37/54/15 36/36/15 -f 33/103/16 44/52/16 45/56/16 -f 34/104/17 46/57/17 43/51/17 -f 40/49/17 48/58/17 38/50/17 -f 39/48/16 37/54/16 47/61/16 -f 63/105/18 51/62/18 64/64/18 -f 49/71/19 61/65/19 50/67/19 -f 53/75/20 55/68/20 54/70/20 -f 60/74/17 49/71/17 59/72/17 -f 58/78/21 57/73/21 59/72/21 -f 51/62/16 53/75/16 52/63/16 -f 49/106/13 60/74/13 61/76/13 -f 50/107/15 62/77/15 59/72/15 -f 56/69/15 64/79/15 54/70/15 -f 55/68/13 53/75/13 63/82/13 -f 32/85/22 25/108/22 26/109/22 -f 26/109/22 27/110/22 28/83/22 -f 28/83/22 29/111/22 30/84/22 -f 30/84/22 31/112/22 32/85/22 -f 32/85/22 26/109/22 28/83/22 diff --git a/src/main/resources/assets/hbm/models/armor/tail_peep.obj b/src/main/resources/assets/hbm/models/armor/tail_peep.obj new file mode 100644 index 000000000..737184c93 --- /dev/null +++ b/src/main/resources/assets/hbm/models/armor/tail_peep.obj @@ -0,0 +1,447 @@ +# Blender v2.79 (sub 0) OBJ File: '' +# www.blender.org +o FaggyAssFuckingTailThing +v -0.627682 10.005125 -0.450454 +v -0.000123 11.075396 0.277636 +v -0.000084 10.418571 -0.643246 +v 0.627711 10.005373 -0.450569 +v 0.798890 10.572883 0.567761 +v 0.388113 9.285591 -0.074662 +v -0.493534 9.759312 1.037476 +v -0.000153 10.383696 3.486781 +v -0.814369 10.383530 3.486841 +v -0.000151 9.759405 1.037423 +v -0.000151 9.285519 -0.074620 +v -0.387763 9.285445 -0.074578 +v -0.798885 10.572582 0.567935 +v 1.318130 11.840109 2.956691 +v 1.303919 10.780759 6.464269 +v 0.814971 10.383862 3.486721 +v -0.000243 12.739786 2.629235 +v -1.318200 11.839571 2.956887 +v 0.493946 9.759499 1.037369 +v -1.303027 10.780201 6.464366 +v -0.000150 9.794444 9.202967 +v -1.563645 9.794115 9.202877 +v -2.109154 13.221715 6.033862 +v -0.000424 14.731211 5.767698 +v -0.000150 10.780479 6.464317 +v 2.108972 13.222614 6.033704 +v -3.037204 8.839604 13.587263 +v -2.530998 12.667759 9.972871 +v -0.000522 14.444422 10.448926 +v 2.530752 12.668819 9.973157 +v 1.564689 9.794771 9.203056 +v -0.000772 3.865773 18.280907 +v -0.000633 10.105603 15.395302 +v 3.036897 8.840356 13.588348 +v 1.877619 6.792392 10.663549 +v -0.000148 6.792160 10.663214 +v -1.876381 6.791927 10.662880 +v 4.008683 -1.231076 17.008335 +v 3.644264 3.180661 15.724039 +v -0.000157 2.071596 11.584938 +v -2.251669 2.071471 11.584467 +v -3.644658 3.180254 15.722511 +v 2.253131 2.071720 11.585409 +v -0.000585 -5.243139 19.012844 +v 2.806094 -5.420787 16.982361 +v -2.476843 -1.641940 12.312111 +v -4.009130 -1.231225 17.006601 +v 2.478435 -1.641846 12.313181 +v -0.000858 -0.977296 19.909027 +v -0.000141 -1.641892 12.312647 +v 0.520518 -6.788428 15.666166 +v 1.734920 -5.708327 13.695753 +v -1.733776 -5.708388 13.695004 +v -2.806377 -5.420892 16.981148 +v -0.000133 -6.788437 15.666052 +v 0.841869 -6.702163 16.652149 +v -0.000133 -6.648875 17.261292 +v -0.841870 -6.702197 16.651783 +v -0.000135 -5.708357 13.695379 +v -0.520090 -6.788447 15.665939 +vt 0.710651 0.397343 +vt 0.673447 0.425869 +vt 0.686110 0.391250 +vt 0.640510 0.034849 +vt 0.603308 0.006319 +vt 0.627849 0.000228 +vt 0.752962 0.426119 +vt 0.711107 0.401105 +vt 0.736879 0.391250 +vt 0.932680 0.039627 +vt 0.948768 0.122001 +vt 0.922233 0.122004 +vt 0.961407 0.000228 +vt 0.948759 0.039625 +vt 0.948753 0.000230 +vt 0.952761 0.401105 +vt 0.910907 0.426121 +vt 0.926989 0.391250 +vt 0.655952 0.797121 +vt 0.676401 0.823580 +vt 0.663769 0.823582 +vt 0.790100 0.507814 +vt 0.746990 0.619172 +vt 0.738502 0.520352 +vt 0.609711 0.044182 +vt 0.672570 0.123097 +vt 0.620455 0.133276 +vt 0.940524 0.438709 +vt 0.873772 0.507814 +vt 0.704244 0.435206 +vt 0.641379 0.514115 +vt 0.723345 0.438709 +vt 0.906315 0.219899 +vt 0.948774 0.314756 +vt 0.897820 0.314756 +vt 0.687894 0.637069 +vt 0.603308 0.629110 +vt 0.948776 0.219895 +vt 0.626049 0.246054 +vt 0.916885 0.619168 +vt 0.832166 0.612780 +vt 0.819888 0.129973 +vt 0.737083 0.000228 +vt 0.897348 0.063686 +vt 0.703938 0.390793 +vt 0.603308 0.374429 +vt 0.856460 0.740857 +vt 0.807406 0.740873 +vt 0.711107 0.707398 +vt 0.610024 0.781808 +vt 0.547346 0.239308 +vt 0.393707 0.049939 +vt 0.602852 0.130282 +vt 0.819901 0.231924 +vt 0.737074 0.361669 +vt 0.711092 0.242118 +vt 0.884411 0.981518 +vt 0.711107 0.859180 +vt 0.923667 0.887428 +vt 0.711092 0.180923 +vt 0.711092 0.119777 +vt 0.910366 0.786348 +vt 0.743952 0.741330 +vt 0.393706 0.771551 +vt 0.208303 0.661960 +vt 0.355061 0.629918 +vt 0.494347 0.349574 +vt 0.337604 0.410716 +vt 0.337605 0.337340 +vt 0.547358 0.582179 +vt 0.355064 0.191572 +vt 0.494355 0.471915 +vt 0.337604 0.484150 +vt 0.092732 0.820324 +vt 0.074194 0.708811 +vt 0.214393 0.328358 +vt 0.206875 0.167042 +vt 0.214386 0.493131 +vt 0.208315 0.159535 +vt 0.234787 0.000228 +vt 0.214281 0.410714 +vt 0.214285 0.329999 +vt 0.068166 0.623727 +vt 0.001808 0.553219 +vt 0.073433 0.510806 +vt 0.073441 0.310677 +vt 0.068178 0.197756 +vt 0.206862 0.654446 +vt 0.092733 0.001179 +vt 0.074307 0.354217 +vt 0.613282 0.823429 +vt 0.623242 0.782265 +vt 0.655495 0.792745 +vt 0.018317 0.059452 +vt 0.023876 0.025998 +vt 0.074305 0.410716 +vt 0.001068 0.393780 +vt 0.018313 0.762053 +vt 0.001815 0.268262 +vt 0.000237 0.234386 +vt 0.655495 0.826658 +vt 0.623242 0.837137 +vt 0.214278 0.491490 +vt 0.696873 0.797121 +vt 0.689055 0.823582 +vt 0.964861 0.039622 +vt 0.975332 0.121997 +vt 0.001067 0.427694 +vt 0.001067 0.410726 +vt 0.074302 0.467260 +vt 0.991275 0.219891 +vt 0.936121 0.000232 +vt 0.999772 0.314756 +vt 0.676413 0.782265 +vt 0.831709 0.612784 +vt 0.925371 0.520351 +vt 0.693494 0.524297 +vt 0.710635 0.238095 +vt 0.952761 0.707388 +vt 0.710651 0.765428 +vt 0.897364 0.298208 +vt 0.712040 0.981518 +vt 0.819894 0.180926 +vt 0.234786 0.821264 +vt 0.494351 0.410719 +vt 0.602852 0.691211 +vt 0.000228 0.587095 +vt 0.074203 0.112694 +vt 0.603308 0.809701 +vt 0.023875 0.795507 +vn -0.5837 0.6621 -0.4701 +vn -0.5883 0.6607 -0.4663 +vn -0.5815 0.6623 -0.4724 +vn 0.5878 0.6613 -0.4661 +vn 0.5833 0.6623 -0.4702 +vn 0.5811 0.6626 -0.4726 +vn 0.9469 -0.3196 0.0349 +vn 0.9480 -0.3169 0.0288 +vn 0.9507 -0.3098 0.0128 +vn 0.0002 -0.9690 0.2470 +vn 0.0002 -0.9200 0.3920 +vn -0.9479 -0.3172 0.0290 +vn -0.9468 -0.3199 0.0351 +vn -0.9506 -0.3101 0.0130 +vn 0.0169 -0.4513 -0.8922 +vn 0.0088 -0.4569 -0.8895 +vn -0.0000 -0.4629 -0.8864 +vn 0.9333 -0.3447 -0.1003 +vn 0.9368 -0.3359 -0.0977 +vn 0.9276 -0.3586 -0.1045 +vn 0.5865 0.6617 -0.4671 +vn 0.5760 0.6649 -0.4756 +vn 0.5731 0.6659 -0.4778 +vn -0.9358 -0.3518 -0.0208 +vn -0.9386 -0.3435 -0.0310 +vn -0.9336 -0.3581 -0.0130 +vn -0.5869 0.6613 -0.4671 +vn -0.5764 0.6646 -0.4755 +vn 0.9360 -0.3514 -0.0210 +vn 0.9388 -0.3432 -0.0311 +vn 0.9403 -0.3384 -0.0370 +vn 0.0002 -0.9409 -0.3388 +vn -0.5692 0.6881 -0.4500 +vn -0.5630 0.6951 -0.4471 +vn -0.5578 0.7008 -0.4447 +vn 0.0002 -0.9912 0.1321 +vn 0.5689 0.6883 -0.4501 +vn 0.5626 0.6953 -0.4472 +vn 0.5765 0.6797 -0.4535 +vn -0.9332 -0.3451 -0.1002 +vn -0.9367 -0.3363 -0.0975 +vn -0.9402 -0.3271 -0.0947 +vn -0.9259 -0.1545 -0.3448 +vn -0.9311 -0.1294 -0.3411 +vn -0.9114 -0.2123 -0.3525 +vn 0.5780 0.8145 0.0508 +vn 0.5788 0.8138 0.0514 +vn 0.5800 0.8129 0.0522 +vn -0.9378 -0.3064 -0.1634 +vn -0.9396 -0.2981 -0.1685 +vn -0.9313 -0.3334 -0.1466 +vn 0.9379 -0.3060 -0.1633 +vn 0.9397 -0.2977 -0.1684 +vn 0.9453 -0.2678 -0.1864 +vn -0.5783 0.8142 0.0507 +vn -0.5792 0.8136 0.0513 +vn -0.5772 0.8151 0.0499 +vn -0.5820 0.3412 0.7381 +vn -0.5821 0.3411 0.7381 +vn -0.5819 0.3414 0.7382 +vn 0.9260 -0.1543 -0.3445 +vn 0.9312 -0.1292 -0.3407 +vn 0.9420 -0.0622 -0.3298 +vn -0.5565 0.6203 0.5528 +vn -0.5681 0.6094 0.5531 +vn -0.5461 0.6298 0.5524 +vn 0.0002 -0.4374 -0.8993 +vn 0.5562 0.6204 0.5529 +vn 0.5677 0.6096 0.5532 +vn 0.5787 0.5991 0.5534 +vn 0.5814 0.2653 0.7692 +vn 0.5812 0.2651 0.7694 +vn 0.5864 0.2707 0.7634 +vn 0.0002 -0.1916 -0.9815 +vn 0.0002 -0.1920 -0.9814 +vn 0.5817 0.3413 0.7384 +vn 0.5818 0.3412 0.7383 +vn 0.5820 0.3410 0.7383 +vn -0.9408 -0.0140 -0.3388 +vn -0.9427 -0.0059 -0.3337 +vn -0.9363 -0.0314 -0.3497 +vn 0.9409 -0.0139 -0.3384 +vn 0.9428 -0.0058 -0.3333 +vn 0.9468 0.0125 -0.3216 +vn 0.5707 -0.1688 0.8036 +vn -0.9497 -0.0087 -0.3130 +vn -0.9495 -0.0081 -0.3136 +vn -0.9509 -0.0115 -0.3094 +vn 0.9499 -0.0086 -0.3126 +vn 0.9496 -0.0080 -0.3132 +vn 0.9483 -0.0047 -0.3175 +vn -0.5817 0.2652 0.7689 +vn -0.5816 0.2651 0.7691 +vn -0.5770 0.2603 0.7741 +vn 0.0002 -0.1923 -0.9813 +vn 0.5559 -0.8240 -0.1091 +vn 0.5559 -0.8241 -0.1091 +vn -0.9236 -0.2635 -0.2784 +vn 0.9237 -0.2634 -0.2780 +vn -0.5710 -0.1688 0.8034 +vn 0.0002 -0.3219 -0.9468 +vn 0.0000 -0.9962 0.0872 +vn -0.3744 -0.7232 0.5803 +vn 0.0001 -0.8769 -0.4806 +vn 0.3742 -0.7232 0.5805 +vn -0.5558 -0.8241 -0.1093 +vn -0.0088 -0.4569 -0.8895 +vn -0.0168 -0.4513 -0.8922 +vn 0.0002 -0.9409 -0.3387 +vn 0.9442 -0.3257 0.0490 +vn -0.9441 -0.3261 0.0492 +vn 0.0209 -0.4484 -0.8936 +vn 0.9403 -0.3267 -0.0949 +vn -0.9402 -0.3387 -0.0368 +vn -0.5734 0.6656 -0.4777 +vn 0.9337 -0.3577 -0.0132 +vn -0.5768 0.6794 -0.4535 +vn 0.5574 0.7010 -0.4448 +vn -0.9275 -0.3589 -0.1044 +vn -0.9419 -0.0624 -0.3301 +vn 0.5768 0.8153 0.0500 +vn -0.9451 -0.2682 -0.1865 +vn 0.9315 -0.3329 -0.1465 +vn -0.5804 0.8127 0.0521 +vn -0.5823 0.3410 0.7380 +vn 0.9116 -0.2120 -0.3522 +vn -0.5791 0.5989 0.5532 +vn 0.0001 -0.4374 -0.8993 +vn 0.5457 0.6299 0.5526 +vn 0.5767 0.2603 0.7744 +vn 0.5815 0.3415 0.7384 +vn -0.9467 0.0124 -0.3220 +vn 0.9365 -0.0313 -0.3493 +vn -0.9481 -0.0048 -0.3179 +vn 0.9510 -0.0114 -0.3090 +vn -0.5868 0.2706 0.7632 +vn -0.0209 -0.4484 -0.8936 +s 1 +f 1/1/1 2/2/2 3/3/3 +f 2/4/4 4/5/5 3/6/6 +f 5/7/7 6/8/8 4/9/9 +f 7/10/10 8/11/10 9/12/10 +f 6/13/11 10/14/11 11/15/11 +f 12/16/12 13/17/13 1/18/14 +f 1/19/15 11/20/16 12/21/17 +f 14/22/18 15/23/19 16/24/20 +f 5/25/21 17/26/22 14/27/23 +f 7/28/24 18/29/25 13/17/26 +f 13/30/27 17/31/28 2/2/2 +f 19/32/29 14/22/30 16/24/31 +f 20/33/32 21/34/32 22/35/32 +f 17/31/33 23/36/34 24/37/35 +f 9/12/36 25/38/36 20/33/36 +f 17/26/37 26/39/38 14/27/39 +f 18/29/40 20/40/41 23/41/42 +f 22/42/43 27/43/44 28/44/45 +f 26/39/46 29/45/47 30/46/48 +f 20/40/49 28/47/50 23/41/51 +f 15/23/52 30/48/53 31/49/54 +f 23/36/55 29/50/56 24/37/57 +f 27/51/58 32/52/59 33/53/60 +f 31/54/61 34/55/62 35/56/63 +f 28/57/64 33/58/65 29/59/66 +f 22/42/67 36/60/67 37/61/67 +f 30/62/68 33/58/69 34/63/70 +f 32/64/71 38/65/72 39/66/73 +f 37/67/74 40/68/75 41/69/75 +f 34/70/76 32/64/77 39/66/78 +f 37/67/79 42/71/80 27/51/81 +f 35/72/82 39/66/83 43/73/84 +f 38/65/85 44/74/85 45/75/85 +f 42/71/86 46/76/87 47/77/88 +f 39/66/89 48/78/90 43/73/91 +f 32/52/92 47/79/93 49/80/94 +f 41/69/75 50/81/95 46/82/95 +f 45/83/96 51/84/97 52/85/96 +f 47/77/98 53/86/98 54/87/98 +f 38/88/99 52/85/99 48/78/99 +f 47/79/100 44/89/100 49/80/100 +f 50/81/101 53/90/101 46/82/101 +f 55/91/102 56/92/102 57/93/102 +f 44/89/103 58/94/103 57/95/103 +f 59/96/104 60/97/104 53/90/104 +f 44/74/105 56/98/105 45/75/105 +f 54/87/106 60/99/106 58/100/106 +f 55/91/102 58/101/102 60/102/102 +f 50/81/95 43/73/75 48/103/95 +f 11/20/107 4/104/108 6/105/17 +f 8/11/10 19/106/10 16/107/10 +f 59/96/104 51/108/104 55/109/104 +f 50/81/101 52/110/101 59/96/101 +f 25/38/36 16/107/36 15/111/36 +f 10/14/11 12/112/11 11/15/11 +f 40/68/75 35/72/74 43/73/75 +f 36/60/67 31/54/67 35/56/67 +f 21/34/32 15/111/32 31/113/109 +f 1/1/1 13/30/27 2/2/2 +f 2/4/4 5/25/21 4/5/5 +f 5/7/7 19/32/110 6/8/8 +f 7/10/10 10/14/10 8/11/10 +f 6/13/11 19/106/11 10/14/11 +f 12/16/12 7/28/111 13/17/13 +f 1/19/15 3/114/112 11/20/16 +f 14/22/18 26/115/113 15/23/19 +f 5/25/21 2/4/4 17/26/22 +f 7/28/24 9/116/114 18/29/25 +f 13/30/27 18/117/115 17/31/28 +f 19/32/29 5/7/116 14/22/30 +f 20/33/32 25/38/32 21/34/32 +f 17/31/33 18/117/117 23/36/34 +f 9/12/36 8/11/36 25/38/36 +f 17/26/37 24/118/118 26/39/38 +f 18/29/40 9/116/119 20/40/41 +f 22/42/43 37/61/120 27/43/44 +f 26/39/46 24/118/121 29/45/47 +f 20/40/49 22/119/122 28/47/50 +f 15/23/52 26/115/123 30/48/53 +f 23/36/55 28/120/124 29/50/56 +f 27/51/58 42/71/125 32/52/59 +f 31/54/61 30/121/126 34/55/62 +f 28/57/64 27/122/127 33/58/65 +f 22/42/67 21/123/128 36/60/67 +f 30/62/68 29/59/129 33/58/69 +f 32/64/71 49/124/130 38/65/72 +f 37/67/74 36/125/74 40/68/75 +f 34/70/76 33/126/131 32/64/77 +f 37/67/79 41/69/132 42/71/80 +f 35/72/82 34/70/133 39/66/83 +f 38/65/85 49/124/85 44/74/85 +f 42/71/86 41/69/134 46/76/87 +f 39/66/89 38/88/135 48/78/90 +f 32/52/92 42/71/136 47/79/93 +f 41/69/75 40/68/75 50/81/95 +f 45/83/96 56/127/97 51/84/97 +f 47/77/98 46/76/98 53/86/98 +f 38/88/99 45/83/99 52/85/99 +f 47/79/100 54/128/100 44/89/100 +f 50/81/101 59/96/101 53/90/101 +f 55/91/102 51/129/102 56/92/102 +f 44/89/103 54/128/103 58/94/103 +f 59/96/104 55/109/104 60/97/104 +f 44/74/105 57/130/105 56/98/105 +f 54/87/106 53/86/106 60/99/106 +f 55/91/102 57/93/102 58/101/102 +f 50/81/95 40/68/75 43/73/75 +f 11/20/107 3/114/137 4/104/108 +f 8/11/10 10/14/10 19/106/10 +f 59/96/104 52/110/104 51/108/104 +f 50/81/101 48/103/101 52/110/101 +f 25/38/36 8/11/36 16/107/36 +f 10/14/11 7/10/11 12/112/11 +f 40/68/75 36/125/74 35/72/74 +f 36/60/67 21/123/128 31/54/67 +f 21/34/32 25/38/32 15/111/32 diff --git a/src/main/resources/assets/hbm/models/cwis_base.obj b/src/main/resources/assets/hbm/models/cwis_base.obj deleted file mode 100644 index 47dc23c11..000000000 --- a/src/main/resources/assets/hbm/models/cwis_base.obj +++ /dev/null @@ -1,44 +0,0 @@ -# Blender v2.76 (sub 0) OBJ File: 'cwis_base.blend' -# www.blender.org -o Cube_Cube.001 -v -1.000000 0.000000 1.000000 -v -1.000000 0.250000 1.000000 -v -1.000000 0.000000 -1.000000 -v -1.000000 0.250000 -1.000000 -v 1.000000 0.000000 1.000000 -v 1.000000 0.250000 1.000000 -v 1.000000 0.000000 -1.000000 -v 1.000000 0.250000 -1.000000 -vt 0.444444 0.444444 -vt 0.444444 0.500000 -vt 0.000000 0.500000 -vt 0.888889 0.444444 -vt 0.888889 0.500000 -vt 0.444444 1.000000 -vt 0.444444 0.944444 -vt 0.888888 0.944444 -vt 0.000000 1.000000 -vt 0.000000 0.944444 -vt 0.444444 0.000000 -vt 0.000000 0.444444 -vt 0.888888 1.000000 -vt 0.000000 0.000000 -vn -1.000000 0.000000 0.000000 -vn 0.000000 0.000000 -1.000000 -vn 1.000000 0.000000 0.000000 -vn 0.000000 0.000000 1.000000 -vn 0.000000 -1.000000 0.000000 -vn 0.000000 1.000000 0.000000 -s off -f 4/1/1 3/2/1 1/3/1 -f 8/4/2 7/5/2 3/2/2 -f 6/6/3 5/7/3 7/8/3 -f 2/9/4 1/10/4 5/7/4 -f 3/2/5 7/7/5 5/10/5 -f 8/11/6 4/1/6 2/12/6 -f 2/12/1 4/1/1 1/3/1 -f 4/1/2 8/4/2 3/2/2 -f 8/13/3 6/6/3 7/8/3 -f 6/6/4 2/9/4 5/7/4 -f 1/3/5 3/2/5 5/10/5 -f 6/14/6 8/11/6 2/12/6 diff --git a/src/main/resources/assets/hbm/models/cwis_gun.obj b/src/main/resources/assets/hbm/models/cwis_gun.obj deleted file mode 100644 index b0a3f9bfc..000000000 --- a/src/main/resources/assets/hbm/models/cwis_gun.obj +++ /dev/null @@ -1,438 +0,0 @@ -# Blender v2.76 (sub 0) OBJ File: 'cwis_gun.blend' -# www.blender.org -o Cylinder -v -0.000000 0.125000 0.950000 -v -0.000000 0.125000 1.050000 -v 0.088388 0.088388 0.950000 -v 0.088388 0.088388 1.050000 -v 0.125000 -0.000000 0.950000 -v 0.125000 -0.000000 1.050000 -v 0.088388 -0.088388 0.950000 -v 0.088388 -0.088388 1.050000 -v -0.000000 -0.125000 0.950000 -v -0.000000 -0.125000 1.050000 -v -0.088388 -0.088388 0.950000 -v -0.088388 -0.088388 1.050000 -v -0.125000 0.000000 0.950000 -v -0.125000 0.000000 1.050000 -v -0.088388 0.088388 0.950000 -v -0.088388 0.088388 1.050000 -v -0.000000 0.125000 0.450000 -v -0.000000 0.125000 0.550000 -v 0.088388 0.088388 0.450000 -v 0.088388 0.088388 0.550000 -v 0.125000 -0.000000 0.450000 -v 0.125000 -0.000000 0.550000 -v 0.088388 -0.088388 0.450000 -v 0.088388 -0.088388 0.550000 -v -0.000000 -0.125000 0.450000 -v -0.000000 -0.125000 0.550000 -v -0.088388 -0.088388 0.450000 -v -0.088388 -0.088388 0.550000 -v -0.125000 0.000000 0.450000 -v -0.125000 0.000000 0.550000 -v -0.088388 0.088388 0.450000 -v -0.088388 0.088388 0.550000 -v -0.000000 0.125000 1.450000 -v -0.000000 0.125000 1.950000 -v 0.088388 0.088388 1.450000 -v 0.088388 0.088388 1.950000 -v 0.125000 -0.000000 1.450000 -v 0.125000 -0.000000 1.950000 -v 0.088388 -0.088388 1.450000 -v 0.088388 -0.088388 1.950000 -v -0.000000 -0.125000 1.450000 -v -0.000000 -0.125000 1.950000 -v -0.088388 -0.088388 1.450000 -v -0.088388 -0.088388 1.950000 -v -0.125000 0.000000 1.450000 -v -0.125000 0.000000 1.950000 -v -0.088388 0.088388 1.450000 -v -0.088388 0.088388 1.950000 -v -0.025000 0.050000 2.000000 -v -0.025000 0.100000 2.000000 -v -0.025000 0.050000 0.550000 -v -0.025000 0.100000 0.550000 -v 0.025000 0.050000 2.000000 -v 0.025000 0.100000 2.000000 -v 0.025000 0.050000 0.550000 -v 0.025000 0.100000 0.550000 -v -0.025000 -0.100000 2.000000 -v -0.025000 -0.050000 2.000000 -v -0.025000 -0.100000 0.550000 -v -0.025000 -0.050000 0.550000 -v 0.025000 -0.100000 2.000000 -v 0.025000 -0.050000 2.000000 -v 0.025000 -0.100000 0.550000 -v 0.025000 -0.050000 0.550000 -v 0.030801 0.046651 2.000000 -v 0.074103 0.071651 2.000000 -v 0.030801 0.046651 0.550000 -v 0.074103 0.071651 0.550000 -v 0.055801 0.003349 2.000000 -v 0.099103 0.028349 2.000000 -v 0.055801 0.003349 0.550000 -v 0.099103 0.028349 0.550000 -v -0.099103 -0.028349 2.000000 -v -0.055801 -0.003349 2.000000 -v -0.099103 -0.028349 0.550000 -v -0.055801 -0.003349 0.550000 -v -0.074103 -0.071651 2.000000 -v -0.030801 -0.046651 2.000000 -v -0.074103 -0.071651 0.550000 -v -0.030801 -0.046651 0.550000 -v 0.055801 -0.003349 2.000000 -v 0.099103 -0.028349 2.000000 -v 0.055801 -0.003349 0.550000 -v 0.099103 -0.028349 0.550000 -v 0.030801 -0.046651 2.000000 -v 0.074103 -0.071651 2.000000 -v 0.030801 -0.046651 0.550000 -v 0.074103 -0.071651 0.550000 -v -0.074103 0.071651 2.000000 -v -0.030801 0.046651 2.000000 -v -0.074103 0.071651 0.550000 -v -0.030801 0.046651 0.550000 -v -0.099103 0.028349 2.000000 -v -0.055801 0.003349 2.000000 -v -0.099103 0.028349 0.550000 -v -0.055801 0.003349 0.550000 -vt 0.550118 0.760811 -vt 0.591204 0.760811 -vt 0.591204 0.803757 -vt 0.632291 0.760811 -vt 0.673377 0.760811 -vt 0.673377 0.803757 -vt 0.714463 0.760811 -vt 0.714463 0.803757 -vt 0.385773 0.760811 -vt 0.426859 0.760811 -vt 0.426859 0.803757 -vt 0.467946 0.760811 -vt 0.781571 0.779002 -vt 0.752518 0.708863 -vt 0.822657 0.679811 -vt 0.509032 0.760811 -vt 0.550118 0.803757 -vt 0.509032 0.803757 -vt 0.781571 0.916248 -vt 0.752519 0.846109 -vt 0.822657 0.817057 -vt 0.550118 0.679811 -vt 0.550118 0.722756 -vt 0.509032 0.722756 -vt 0.467946 0.722756 -vt 0.467946 0.679811 -vt 0.426859 0.722756 -vt 0.426859 0.679811 -vt 0.385773 0.722756 -vt 0.385773 0.679811 -vt 0.714463 0.722756 -vt 0.673377 0.722756 -vt 0.673377 0.679811 -vt 0.632291 0.722756 -vt 0.951920 0.118219 -vt 0.881781 0.089166 -vt 0.910834 0.019028 -vt 0.591204 0.722756 -vt 0.632291 0.679811 -vt 0.183373 0.233755 -vt 0.142286 0.233755 -vt 0.142286 0.019028 -vt 0.101200 0.233755 -vt 0.101200 0.019028 -vt 0.060114 0.233755 -vt 0.060114 0.019028 -vt 0.019028 0.233755 -vt 0.019028 0.019028 -vt 0.347718 0.233755 -vt 0.306632 0.233755 -vt 0.306632 0.019028 -vt 0.265545 0.233755 -vt 0.265545 0.019028 -vt 0.414825 0.941003 -vt 0.414825 0.841812 -vt 0.455912 0.841812 -vt 0.224459 0.019028 -vt 0.224459 0.233755 -vt 0.552072 0.941003 -vt 0.552072 0.841812 -vt 0.593158 0.841812 -vt 0.676830 0.019028 -vt 0.698302 0.019028 -vt 0.698303 0.641726 -vt 0.509936 0.019028 -vt 0.531409 0.019028 -vt 0.531408 0.641726 -vt 0.655356 0.641726 -vt 0.633883 0.641726 -vt 0.633884 0.019028 -vt 0.266926 0.293283 -vt 0.266926 0.271810 -vt 0.288398 0.271810 -vt 0.719775 0.019028 -vt 0.719777 0.641726 -vt 0.655357 0.019028 -vt 0.676830 0.641726 -vt 0.574354 0.641726 -vt 0.552882 0.641726 -vt 0.552881 0.019028 -vt 0.266926 0.352811 -vt 0.266926 0.331338 -vt 0.288398 0.331338 -vt 0.574355 0.019028 -vt 0.595827 0.019028 -vt 0.595828 0.641726 -vt 0.061974 0.271810 -vt 0.083446 0.271810 -vt 0.083448 0.894508 -vt 0.757834 0.019028 -vt 0.779306 0.019028 -vt 0.779306 0.641726 -vt 0.040500 0.894508 -vt 0.019028 0.894508 -vt 0.019028 0.271810 -vt 0.288398 0.590923 -vt 0.266926 0.590923 -vt 0.266926 0.569450 -vt 0.104919 0.271810 -vt 0.104921 0.894508 -vt 0.040501 0.271810 -vt 0.061974 0.894508 -vt 0.822252 0.641725 -vt 0.800780 0.641726 -vt 0.800779 0.019028 -vt 0.288398 0.531395 -vt 0.266926 0.531395 -vt 0.266926 0.509922 -vt 0.822253 0.019028 -vt 0.843725 0.019028 -vt 0.843726 0.641726 -vt 0.428934 0.019043 -vt 0.450407 0.019050 -vt 0.450193 0.641748 -vt 0.142978 0.271810 -vt 0.164451 0.271810 -vt 0.164450 0.894508 -vt 0.407245 0.641733 -vt 0.385773 0.641726 -vt 0.385988 0.019028 -vt 0.266926 0.450394 -vt 0.288398 0.450394 -vt 0.288398 0.471867 -vt 0.471879 0.019057 -vt 0.471667 0.641755 -vt 0.407462 0.019035 -vt 0.428719 0.641741 -vt 0.207397 0.894508 -vt 0.185924 0.894508 -vt 0.185923 0.271810 -vt 0.288398 0.390866 -vt 0.288398 0.412339 -vt 0.266926 0.412339 -vt 0.207397 0.271810 -vt 0.228869 0.271810 -vt 0.228870 0.894508 -vt 0.632291 0.803757 -vt 0.385773 0.803757 -vt 0.467946 0.803757 -vt 0.851710 0.708863 -vt 0.851710 0.749949 -vt 0.822657 0.779002 -vt 0.752519 0.749949 -vt 0.781571 0.679811 -vt 0.851710 0.846109 -vt 0.851710 0.887195 -vt 0.822657 0.916248 -vt 0.752518 0.887195 -vt 0.781571 0.817057 -vt 0.509032 0.679811 -vt 0.714463 0.679811 -vt 0.951920 0.019028 -vt 0.980972 0.048080 -vt 0.980972 0.089166 -vt 0.910834 0.118219 -vt 0.881781 0.048080 -vt 0.591204 0.679811 -vt 0.183373 0.019028 -vt 0.347718 0.019028 -vt 0.484964 0.870865 -vt 0.484964 0.911951 -vt 0.455912 0.941003 -vt 0.385773 0.911951 -vt 0.385773 0.870865 -vt 0.622210 0.870864 -vt 0.622210 0.911951 -vt 0.593158 0.941003 -vt 0.523019 0.911951 -vt 0.523019 0.870864 -vt 0.509934 0.641726 -vt 0.288398 0.293283 -vt 0.288398 0.352811 -vt 0.757832 0.641725 -vt 0.288398 0.569450 -vt 0.288398 0.509922 -vt 0.142977 0.894508 -vt 0.266926 0.471867 -vt 0.266926 0.390866 -vn 0.382700 0.923900 0.000000 -vn 0.923900 0.382700 -0.000000 -vn 0.923900 -0.382700 0.000000 -vn 0.382700 -0.923900 0.000000 -vn -0.382700 -0.923900 0.000000 -vn -0.923900 -0.382700 0.000000 -vn 0.000000 0.000000 1.000000 -vn -0.382700 0.923900 0.000000 -vn -0.923900 0.382700 -0.000000 -vn -0.000000 -0.000000 -1.000000 -vn -1.000000 0.000000 0.000000 -vn 1.000000 0.000000 0.000000 -vn 0.000000 -1.000000 -0.000000 -vn 0.000000 1.000000 0.000000 -vn -0.500000 0.866000 -0.000000 -vn 0.500000 -0.866000 0.000000 -vn -0.866000 -0.500000 -0.000000 -vn 0.866000 0.500000 0.000000 -vn 0.500000 0.866000 -0.000000 -vn -0.500000 -0.866000 0.000000 -vn -0.866000 0.500000 -0.000000 -vn 0.866000 -0.500000 0.000000 -s off -f 2/1/1 4/2/1 3/3/1 -f 3/3/2 4/2/2 6/4/2 -f 6/4/3 8/5/3 7/6/3 -f 8/5/4 10/7/4 9/8/4 -f 10/9/5 12/10/5 11/11/5 -f 11/11/6 12/10/6 14/12/6 -f 14/13/7 10/14/7 6/15/7 -f 16/16/8 2/1/8 1/17/8 -f 14/12/9 16/16/9 15/18/9 -f 7/19/10 11/20/10 15/21/10 -f 17/22/1 18/23/1 20/24/1 -f 20/24/2 22/25/2 21/26/2 -f 22/25/3 24/27/3 23/28/3 -f 24/27/4 26/29/4 25/30/4 -f 26/31/5 28/32/5 27/33/5 -f 27/33/6 28/32/6 30/34/6 -f 30/35/7 26/36/7 22/37/7 -f 32/38/8 18/23/8 17/22/8 -f 29/39/9 30/34/9 32/38/9 -f 34/40/1 36/41/1 35/42/1 -f 36/41/2 38/43/2 37/44/2 -f 38/43/3 40/45/3 39/46/3 -f 40/45/4 42/47/4 41/48/4 -f 42/49/5 44/50/5 43/51/5 -f 44/50/6 46/52/6 45/53/6 -f 46/54/7 40/55/7 38/56/7 -f 47/57/8 48/58/8 34/40/8 -f 46/52/9 48/58/9 47/57/9 -f 39/59/10 45/60/10 47/61/10 -f 52/62/11 51/63/11 49/64/11 -f 60/65/11 59/66/11 57/67/11 -f 54/68/12 53/69/12 55/70/12 -f 50/71/7 49/72/7 53/73/7 -f 51/63/13 55/74/13 53/75/13 -f 56/76/14 52/62/14 50/77/14 -f 62/78/12 61/79/12 63/80/12 -f 58/81/7 57/82/7 61/83/7 -f 59/66/13 63/80/13 61/79/13 -f 64/84/14 60/85/14 58/86/14 -f 68/87/15 67/88/15 65/89/15 -f 76/90/15 75/91/15 73/92/15 -f 70/93/16 69/94/16 71/95/16 -f 66/96/7 65/97/7 69/98/7 -f 67/88/17 71/99/17 69/100/17 -f 72/101/18 68/87/18 66/102/18 -f 78/103/16 77/104/16 79/105/16 -f 74/106/7 73/107/7 77/108/7 -f 75/91/17 79/105/17 77/104/17 -f 80/109/18 76/110/18 74/111/18 -f 84/112/19 83/113/19 81/114/19 -f 92/115/19 91/116/19 89/117/19 -f 86/118/20 85/119/20 87/120/20 -f 82/121/7 81/122/7 85/123/7 -f 83/113/21 87/124/21 85/125/21 -f 88/126/22 84/112/22 82/127/22 -f 94/128/20 93/129/20 95/130/20 -f 94/131/7 90/132/7 89/133/7 -f 91/116/21 95/130/21 93/129/21 -f 96/134/22 92/135/22 90/136/22 -f 1/17/1 2/1/1 3/3/1 -f 5/137/2 3/3/2 6/4/2 -f 5/137/3 6/4/3 7/6/3 -f 7/6/4 8/5/4 9/8/4 -f 9/138/5 10/9/5 11/11/5 -f 13/139/6 11/11/6 14/12/6 -f 6/15/7 4/140/7 2/141/7 -f 2/141/7 16/142/7 14/13/7 -f 14/13/7 12/143/7 10/14/7 -f 10/14/7 8/144/7 6/15/7 -f 6/15/7 2/141/7 14/13/7 -f 15/18/8 16/16/8 1/17/8 -f 13/139/9 14/12/9 15/18/9 -f 15/21/10 1/145/10 3/146/10 -f 3/146/10 5/147/10 15/21/10 -f 7/19/10 9/148/10 11/20/10 -f 11/20/10 13/149/10 15/21/10 -f 15/21/10 5/147/10 7/19/10 -f 19/150/1 17/22/1 20/24/1 -f 19/150/2 20/24/2 21/26/2 -f 21/26/3 22/25/3 23/28/3 -f 23/28/4 24/27/4 25/30/4 -f 25/151/5 26/31/5 27/33/5 -f 29/39/6 27/33/6 30/34/6 -f 22/37/7 20/152/7 18/153/7 -f 18/153/7 32/154/7 30/35/7 -f 30/35/7 28/155/7 26/36/7 -f 26/36/7 24/156/7 22/37/7 -f 22/37/7 18/153/7 30/35/7 -f 31/157/8 32/38/8 17/22/8 -f 31/157/9 29/39/9 32/38/9 -f 33/158/1 34/40/1 35/42/1 -f 35/42/2 36/41/2 37/44/2 -f 37/44/3 38/43/3 39/46/3 -f 39/46/4 40/45/4 41/48/4 -f 41/159/5 42/49/5 43/51/5 -f 43/51/6 44/50/6 45/53/6 -f 38/56/7 36/160/7 34/161/7 -f 34/161/7 48/162/7 46/54/7 -f 46/54/7 44/163/7 42/164/7 -f 42/164/7 40/55/7 46/54/7 -f 38/56/7 34/161/7 46/54/7 -f 33/158/8 47/57/8 34/40/8 -f 45/53/9 46/52/9 47/57/9 -f 47/61/10 33/165/10 35/166/10 -f 35/166/10 37/167/10 47/61/10 -f 39/59/10 41/168/10 43/169/10 -f 43/169/10 45/60/10 39/59/10 -f 47/61/10 37/167/10 39/59/10 -f 50/77/11 52/62/11 49/64/11 -f 58/170/11 60/65/11 57/67/11 -f 56/76/12 54/68/12 55/70/12 -f 54/171/7 50/71/7 53/73/7 -f 49/64/13 51/63/13 53/75/13 -f 54/68/14 56/76/14 50/77/14 -f 64/84/12 62/78/12 63/80/12 -f 62/172/7 58/81/7 61/83/7 -f 57/67/13 59/66/13 61/79/13 -f 62/78/14 64/84/14 58/86/14 -f 66/102/15 68/87/15 65/89/15 -f 74/173/15 76/90/15 73/92/15 -f 72/101/16 70/93/16 71/95/16 -f 70/174/7 66/96/7 69/98/7 -f 65/89/17 67/88/17 69/100/17 -f 70/93/18 72/101/18 66/102/18 -f 80/109/16 78/103/16 79/105/16 -f 78/175/7 74/106/7 77/108/7 -f 73/92/17 75/91/17 77/104/17 -f 78/103/18 80/109/18 74/111/18 -f 82/127/19 84/112/19 81/114/19 -f 90/176/19 92/115/19 89/117/19 -f 88/126/20 86/118/20 87/120/20 -f 86/177/7 82/121/7 85/123/7 -f 81/114/21 83/113/21 85/125/21 -f 86/118/22 88/126/22 82/127/22 -f 96/134/20 94/128/20 95/130/20 -f 93/178/7 94/131/7 89/133/7 -f 89/117/21 91/116/21 93/129/21 -f 94/128/22 96/134/22 90/136/22 diff --git a/src/main/resources/assets/hbm/models/cwis_head.obj b/src/main/resources/assets/hbm/models/cwis_head.obj deleted file mode 100644 index fe093b5d8..000000000 --- a/src/main/resources/assets/hbm/models/cwis_head.obj +++ /dev/null @@ -1,613 +0,0 @@ -# Blender v2.76 (sub 0) OBJ File: 'cwis_head.blend' -# www.blender.org -o Cube.001_Cube.002 -v -0.500000 -0.250000 0.500000 -v -0.500000 0.250000 0.500000 -v -0.500000 -0.250000 -0.500000 -v -0.500000 0.250000 -0.500000 -v 0.500000 -0.250000 0.500000 -v 0.500000 0.250000 0.500000 -v 0.500000 -0.250000 -0.500000 -v 0.500000 0.250000 -0.500000 -v -0.187500 -0.187500 1.000000 -v -0.187500 0.187500 1.000000 -v 0.187500 -0.187500 1.000000 -v 0.187500 0.187500 1.000000 -v 0.250000 2.183013 0.000000 -v 0.000000 2.250000 0.000000 -v 0.000000 0.250000 -0.500000 -v 0.250000 0.250000 -0.433013 -v 0.433013 0.250000 -0.250000 -v 0.500000 0.250000 0.000000 -v 0.433013 0.250000 0.250000 -v 0.250000 0.250000 0.433013 -v 0.000000 0.250000 0.500000 -v -0.250000 0.250000 0.433013 -v -0.433013 0.250000 0.250000 -v -0.500000 0.250000 0.000000 -v -0.433013 0.250000 -0.250000 -v -0.250000 0.250000 -0.433013 -v 0.433013 2.000000 0.000000 -v 0.500000 1.750000 0.000000 -v -0.433013 1.750000 0.250000 -v 0.433013 1.750000 -0.250000 -v 0.375000 2.000000 -0.216506 -v 0.216506 2.183013 -0.125000 -v -0.500000 1.750000 0.000000 -v -0.433013 2.000000 0.000000 -v -0.250000 2.183012 0.000000 -v -0.375000 2.000000 0.216506 -v -0.216507 2.183012 0.125000 -v -0.250000 1.750000 0.433013 -v 0.250000 1.750000 -0.433013 -v 0.216506 2.000000 -0.375000 -v 0.125000 2.183013 -0.216506 -v -0.216506 2.000000 0.375000 -v -0.125000 2.183012 0.216507 -v 0.000000 1.750000 0.500000 -v -0.000000 1.750000 -0.500000 -v -0.000000 2.000000 -0.433013 -v -0.000000 2.183013 -0.250000 -v 0.000000 2.000000 0.433013 -v 0.000000 2.183012 0.250000 -v 0.250000 1.750000 0.433013 -v -0.250000 1.750000 -0.433013 -v -0.216507 2.000000 -0.375000 -v -0.125000 2.183013 -0.216506 -v 0.216507 2.000000 0.375000 -v 0.125000 2.183012 0.216507 -v 0.433013 1.750000 0.250000 -v -0.433013 1.750000 -0.250000 -v -0.375000 2.000000 -0.216506 -v -0.216507 2.183013 -0.125000 -v 0.375000 2.000000 0.216506 -v 0.216507 2.183012 0.125000 -v 0.000000 -0.250000 -0.650000 -v 0.000000 -0.250000 0.500000 -v 0.125000 -0.283494 -0.650000 -v 0.125000 -0.283494 0.500000 -v 0.216506 -0.375000 -0.650000 -v 0.216506 -0.375000 0.500000 -v 0.250000 -0.500000 -0.650000 -v 0.250000 -0.500000 0.500000 -v 0.216506 -0.625000 -0.650000 -v 0.216506 -0.625000 0.500000 -v 0.125000 -0.716506 -0.650000 -v 0.125000 -0.716506 0.500000 -v 0.000000 -0.750000 -0.650000 -v 0.000000 -0.750000 0.500000 -v -0.125000 -0.716506 -0.650000 -v -0.125000 -0.716506 0.500000 -v -0.216506 -0.625000 -0.650000 -v -0.216506 -0.625000 0.500000 -v -0.250000 -0.500000 -0.650000 -v -0.250000 -0.500000 0.500000 -v -0.216506 -0.375000 -0.650000 -v -0.216506 -0.375000 0.500000 -v -0.125000 -0.283494 -0.650000 -v -0.125000 -0.283494 0.500000 -v 0.106250 -0.315970 0.650000 -v -0.000000 -0.287500 0.650000 -v 0.184030 -0.393750 0.650000 -v 0.212500 -0.500000 0.650000 -v 0.184030 -0.606250 0.650000 -v 0.106250 -0.684030 0.650000 -v 0.000000 -0.712500 0.650000 -v -0.106250 -0.684030 0.650000 -v -0.184030 -0.606250 0.650000 -v -0.212500 -0.500000 0.650000 -v -0.184030 -0.393750 0.650000 -v -0.106250 -0.315970 0.650000 -v -0.300000 -0.500000 0.300000 -v -0.400000 -0.250000 0.400000 -v -0.300000 -0.500000 0.250000 -v -0.400000 -0.250000 0.150000 -v 0.300000 -0.500000 0.300000 -v 0.400000 -0.250000 0.400000 -v 0.300000 -0.500000 0.250000 -v 0.400000 -0.250000 0.150000 -v -0.300000 -0.500000 -0.250000 -v -0.400000 -0.250000 -0.150000 -v -0.300000 -0.500000 -0.300000 -v -0.400000 -0.250000 -0.400000 -v 0.300000 -0.500000 -0.250000 -v 0.400000 -0.250000 -0.150000 -v 0.300000 -0.500000 -0.300000 -v 0.400000 -0.250000 -0.400000 -vt 0.192029 0.192029 -vt 0.192029 0.280351 -vt 0.015385 0.280351 -vt 0.368673 0.192029 -vt 0.368673 0.280351 -vt 0.545317 0.192029 -vt 0.545317 0.280351 -vt 0.807971 0.378738 -vt 0.807971 0.290416 -vt 0.984615 0.290416 -vt 0.368673 0.456995 -vt 0.192029 0.015385 -vt 0.680241 0.170636 -vt 0.680241 0.104395 -vt 0.746483 0.104395 -vt 0.801684 0.259645 -vt 0.625040 0.259645 -vt 0.625040 0.015385 -vt 0.801684 0.015385 -vt 0.576088 0.181676 -vt 0.564012 0.487768 -vt 0.564011 0.752734 -vt 0.518292 0.752734 -vt 0.472573 0.752733 -vt 0.472575 0.487768 -vt 0.426855 0.752733 -vt 0.426856 0.487767 -vt 0.381136 0.752733 -vt 0.381137 0.487767 -vt 0.335417 0.752733 -vt 0.278268 0.843295 -vt 0.266839 0.887562 -vt 0.255409 0.843295 -vt 0.247042 0.798349 -vt 0.286636 0.798349 -vt 0.243980 0.752733 -vt 0.323987 0.843296 -vt 0.312557 0.887563 -vt 0.301128 0.843296 -vt 0.292761 0.798349 -vt 0.332355 0.798349 -vt 0.289698 0.752733 -vt 0.369706 0.843296 -vt 0.358276 0.887563 -vt 0.346847 0.843296 -vt 0.403995 0.887563 -vt 0.392565 0.843296 -vt 0.415425 0.843296 -vt 0.449713 0.887563 -vt 0.438284 0.843296 -vt 0.461143 0.843296 -vt 0.484003 0.843296 -vt 0.506862 0.843296 -vt 0.495432 0.887563 -vt 0.529722 0.843296 -vt 0.552581 0.843296 -vt 0.541151 0.887563 -vt 0.049674 0.843295 -vt 0.038244 0.887562 -vt 0.026815 0.843295 -vt 0.095393 0.843295 -vt 0.083963 0.887562 -vt 0.072534 0.843295 -vt 0.141112 0.843295 -vt 0.129682 0.887562 -vt 0.118253 0.843295 -vt 0.163971 0.843295 -vt 0.186831 0.843295 -vt 0.175401 0.887562 -vt 0.232550 0.843295 -vt 0.221120 0.887563 -vt 0.209690 0.843295 -vt 0.201323 0.798349 -vt 0.198261 0.752732 -vt 0.240917 0.798349 -vt 0.195198 0.798348 -vt 0.155604 0.798348 -vt 0.109886 0.798348 -vt 0.106823 0.752732 -vt 0.152542 0.752732 -vt 0.149479 0.798348 -vt 0.064167 0.798348 -vt 0.103760 0.798348 -vt 0.061104 0.752732 -vt 0.018448 0.798348 -vt 0.058041 0.798348 -vt 0.015385 0.752732 -vt 0.521355 0.798350 -vt 0.560948 0.798350 -vt 0.475636 0.798350 -vt 0.515230 0.798350 -vt 0.429917 0.798349 -vt 0.469511 0.798349 -vt 0.423792 0.798349 -vt 0.338480 0.798349 -vt 0.378073 0.798349 -vt 0.384198 0.798349 -vt 0.015386 0.487766 -vt 0.061105 0.487766 -vt 0.289699 0.487767 -vt 0.198262 0.487767 -vt 0.152543 0.487766 -vt 0.746483 0.170636 -vt 0.850636 0.093354 -vt 0.622041 0.762079 -vt 0.622041 0.739219 -vt 0.825182 0.739220 -vt 0.622041 0.716360 -vt 0.825182 0.716360 -vt 0.622041 0.693501 -vt 0.825182 0.693501 -vt 0.622041 0.670641 -vt 0.825182 0.670642 -vt 0.622041 0.647782 -vt 0.825182 0.647782 -vt 0.622041 0.624922 -vt 0.825182 0.624923 -vt 0.622042 0.602063 -vt 0.825182 0.602064 -vt 0.622042 0.579204 -vt 0.825182 0.579204 -vt 0.622042 0.556344 -vt 0.825182 0.556345 -vt 0.622042 0.533485 -vt 0.825182 0.533486 -vt 0.594783 0.691786 -vt 0.594783 0.672356 -vt 0.622042 0.510625 -vt 0.622042 0.487766 -vt 0.825183 0.487767 -vt 0.825182 0.510626 -vt 0.911978 0.846936 -vt 0.838096 0.866733 -vt 0.857892 0.792850 -vt 0.855953 0.514308 -vt 0.882496 0.487766 -vt 0.928469 0.533739 -vt 0.594784 0.508911 -vt 0.594783 0.760364 -vt 0.594783 0.740934 -vt 0.594783 0.714646 -vt 0.594783 0.695215 -vt 0.594784 0.531770 -vt 0.594784 0.512340 -vt 0.594783 0.737505 -vt 0.594784 0.554630 -vt 0.594784 0.535199 -vt 0.594783 0.577489 -vt 0.594784 0.558059 -vt 0.594783 0.600348 -vt 0.594783 0.623208 -vt 0.594783 0.603777 -vt 0.594783 0.646067 -vt 0.594783 0.626637 -vt 0.594783 0.668927 -vt 0.594783 0.649496 -vt 0.576088 0.320315 -vt 0.623651 0.337979 -vt 0.623651 0.346811 -vt 0.747302 0.290416 -vt 0.729637 0.337979 -vt 0.777200 0.364476 -vt 0.729637 0.346811 -vt 0.605986 0.394374 -vt 0.594783 0.822748 -vt 0.642346 0.840413 -vt 0.642346 0.849245 -vt 0.765997 0.792850 -vt 0.748332 0.840413 -vt 0.795895 0.866909 -vt 0.748332 0.849245 -vt 0.624682 0.896808 -vt 0.015385 0.192029 -vt 0.984615 0.378738 -vt 0.192029 0.456995 -vt 0.368673 0.015385 -vt 0.576088 0.093354 -vt 0.518293 0.487768 -vt 0.335418 0.487767 -vt 0.106824 0.487766 -vt 0.243980 0.487767 -vt 0.850636 0.181676 -vt 0.825182 0.762079 -vt 0.880752 0.792850 -vt 0.900549 0.804280 -vt 0.911978 0.824077 -vt 0.900549 0.866733 -vt 0.880752 0.878162 -vt 0.857892 0.878162 -vt 0.826666 0.846936 -vt 0.826666 0.824076 -vt 0.838096 0.804280 -vt 0.918754 0.550566 -vt 0.865668 0.550566 -vt 0.901926 0.560282 -vt 0.882496 0.560281 -vt 0.855953 0.533739 -vt 0.865669 0.497481 -vt 0.901926 0.487766 -vt 0.918754 0.497481 -vt 0.928469 0.514309 -vt 0.594784 0.489480 -vt 0.594783 0.718075 -vt 0.594783 0.580918 -vt 0.576088 0.364476 -vt 0.605986 0.290416 -vt 0.777200 0.320315 -vt 0.747302 0.394374 -vt 0.594783 0.866909 -vt 0.624682 0.792850 -vt 0.795895 0.822748 -vt 0.765997 0.896808 -vn -1.000000 0.000000 0.000000 -vn 0.000000 0.000000 -1.000000 -vn 1.000000 0.000000 0.000000 -vn 0.000000 0.000000 1.000000 -vn 0.000000 -1.000000 0.000000 -vn 0.000000 1.000000 0.000000 -vn 0.000000 0.992300 0.124000 -vn 0.000000 -0.992300 0.124000 -vn -0.848000 0.000000 0.530000 -vn 0.258800 0.000000 -0.965900 -vn 0.707100 0.000000 -0.707100 -vn 0.965900 0.000000 -0.258800 -vn 0.965900 0.000000 0.258800 -vn 0.707100 0.000000 0.707100 -vn -0.069200 0.963600 0.258200 -vn -0.186200 0.694700 0.694700 -vn -0.250600 0.250600 0.935100 -vn 0.069200 0.963600 0.258200 -vn 0.186200 0.694700 0.694700 -vn 0.250600 0.250600 0.935100 -vn 0.189000 0.963600 0.189000 -vn 0.258200 0.963600 0.069200 -vn 0.258200 0.963600 -0.069200 -vn 0.189000 0.963600 -0.189000 -vn 0.069200 0.963600 -0.258200 -vn -0.069200 0.963600 -0.258200 -vn -0.189000 0.963600 -0.189000 -vn -0.258200 0.963600 -0.069200 -vn -0.258200 0.963600 0.069200 -vn -0.189000 0.963600 0.189000 -vn -0.508600 0.694700 0.508600 -vn -0.684600 0.250600 0.684600 -vn -0.694700 0.694700 0.186200 -vn -0.935100 0.250600 0.250600 -vn -0.694700 0.694700 -0.186200 -vn -0.935100 0.250600 -0.250600 -vn -0.508600 0.694700 -0.508600 -vn -0.684600 0.250600 -0.684500 -vn -0.186200 0.694700 -0.694700 -vn -0.250600 0.250600 -0.935100 -vn 0.186200 0.694700 -0.694700 -vn 0.250600 0.250600 -0.935100 -vn 0.508600 0.694700 -0.508600 -vn 0.684600 0.250600 -0.684500 -vn 0.694700 0.694700 -0.186200 -vn 0.935100 0.250600 -0.250600 -vn 0.694700 0.694700 0.186200 -vn 0.508600 0.694700 0.508600 -vn 0.684600 0.250600 0.684500 -vn 0.935100 0.250600 0.250600 -vn -0.258800 0.000000 -0.965900 -vn -0.707100 0.000000 -0.707100 -vn 0.258800 -0.000000 0.965900 -vn -0.258800 0.000000 0.965900 -vn -0.707100 -0.000000 0.707100 -vn -0.965900 -0.000000 0.258800 -vn -0.965900 -0.000000 -0.258800 -vn 0.848000 0.000000 0.530000 -vn 0.258800 0.965900 -0.000000 -vn 0.707100 0.707100 -0.000000 -vn 0.965900 0.258800 -0.000000 -vn 0.965900 -0.258800 0.000000 -vn 0.707100 -0.707100 0.000000 -vn 0.258800 -0.965900 0.000000 -vn -0.258800 -0.965900 0.000000 -vn -0.707100 -0.707100 0.000000 -vn -0.965900 -0.258800 0.000000 -vn -0.965900 0.258800 -0.000000 -vn 0.938900 -0.251600 0.234700 -vn -0.258800 0.965900 -0.000000 -vn -0.707100 0.707100 -0.000000 -vn -0.251600 0.938900 0.234700 -vn 0.251600 0.938900 0.234700 -vn 0.938900 0.251600 0.234700 -vn -0.687400 0.687300 0.234700 -vn 0.687400 0.687300 0.234700 -vn -0.938900 0.251600 0.234700 -vn -0.938900 -0.251600 0.234700 -vn -0.687300 -0.687400 0.234700 -vn -0.251600 -0.938900 0.234700 -vn 0.251600 -0.938900 0.234700 -vn 0.687300 -0.687300 0.234700 -vn -0.928500 -0.371400 0.000000 -vn 0.000000 -0.371400 -0.928500 -vn 0.928500 -0.371400 0.000000 -vn 0.000000 -0.371400 0.928500 -vn 0.684600 0.250600 -0.684600 -vn 0.684600 0.250600 0.684600 -vn 0.687300 0.687400 0.234700 -vn 0.687300 -0.687400 0.234700 -s off -f 4/1/1 3/2/1 1/3/1 -f 8/4/2 7/5/2 3/2/2 -f 6/6/3 5/7/3 7/5/3 -f 2/8/4 1/9/4 5/10/4 -f 3/2/5 7/5/5 5/11/5 -f 8/4/6 4/1/6 2/12/6 -f 10/13/4 9/14/4 11/15/4 -f 6/16/7 2/17/7 10/13/7 -f 1/18/8 5/19/8 11/15/8 -f 9/14/9 10/13/9 2/20/9 -f 15/21/10 45/22/10 39/23/10 -f 39/23/11 30/24/11 17/25/11 -f 17/25/12 30/24/12 28/26/12 -f 18/27/13 28/26/13 56/28/13 -f 19/29/14 56/28/14 50/30/14 -f 49/31/15 14/32/15 43/33/15 -f 49/31/16 43/33/16 42/34/16 -f 48/35/17 42/34/17 38/36/17 -f 55/37/18 14/38/18 49/39/18 -f 48/40/19 54/41/19 55/37/19 -f 44/42/20 50/30/20 54/41/20 -f 61/43/21 14/44/21 55/45/21 -f 14/46/22 61/47/22 13/48/22 -f 14/49/23 13/50/23 32/51/23 -f 32/52/24 41/53/24 14/54/24 -f 41/55/25 47/56/25 14/57/25 -f 53/58/26 14/59/26 47/60/26 -f 59/61/27 14/62/27 53/63/27 -f 35/64/28 14/65/28 59/66/28 -f 35/67/29 37/68/29 14/69/29 -f 43/70/30 14/71/30 37/72/30 -f 43/70/31 37/72/31 36/73/31 -f 29/74/32 38/36/32 42/75/32 -f 36/76/33 37/68/33 35/67/33 -f 29/74/34 36/76/34 34/77/34 -f 35/64/35 59/66/35 58/78/35 -f 57/79/36 33/80/36 34/81/36 -f 53/63/37 52/82/37 58/83/37 -f 52/82/38 51/84/38 57/79/38 -f 47/60/39 46/85/39 52/86/39 -f 46/85/40 45/87/40 51/84/40 -f 41/55/41 40/88/41 46/89/41 -f 40/88/42 39/23/42 45/22/42 -f 32/52/43 31/90/43 40/91/43 -f 31/90/44 30/24/44 39/23/44 -f 32/51/45 13/50/45 27/92/45 -f 28/26/46 30/24/46 31/93/46 -f 27/94/47 13/48/47 61/47/47 -f 54/95/48 60/96/48 61/43/48 -f 50/30/49 56/28/49 60/96/49 -f 28/26/50 27/94/50 60/97/50 -f 45/87/51 15/98/51 26/99/51 -f 57/79/52 51/84/52 26/99/52 -f 50/30/53 44/42/53 21/100/53 -f 21/100/54 44/42/54 38/36/54 -f 38/36/55 29/74/55 23/101/55 -f 29/74/56 33/80/56 24/102/56 -f 24/102/57 33/80/57 57/79/57 -f 12/103/58 11/15/58 5/104/58 -f 63/105/59 65/106/59 64/107/59 -f 65/106/60 67/108/60 66/109/60 -f 67/108/61 69/110/61 68/111/61 -f 69/110/62 71/112/62 70/113/62 -f 71/112/63 73/114/63 72/115/63 -f 73/114/64 75/116/64 74/117/64 -f 75/116/65 77/118/65 76/119/65 -f 77/118/66 79/120/66 78/121/66 -f 79/120/67 81/122/67 80/123/67 -f 81/122/68 83/124/68 82/125/68 -f 69/110/69 89/126/69 90/127/69 -f 85/128/70 63/129/70 62/130/70 -f 83/124/71 85/128/71 84/131/71 -f 68/132/2 76/133/2 84/134/2 -f 94/135/4 92/136/4 88/137/4 -f 63/129/72 85/128/72 97/138/72 -f 63/105/73 87/139/73 86/140/73 -f 67/108/74 88/141/74 89/142/74 -f 83/124/75 96/143/75 97/144/75 -f 67/108/76 65/106/76 86/145/76 -f 81/122/77 95/146/77 96/147/77 -f 79/120/78 94/148/78 95/149/78 -f 79/120/79 77/118/79 93/150/79 -f 75/116/80 92/151/80 93/152/80 -f 73/114/81 91/153/81 92/154/81 -f 71/112/82 90/155/82 91/156/82 -f 101/157/83 100/158/83 98/159/83 -f 105/160/84 104/161/84 100/158/84 -f 103/162/85 102/163/85 104/161/85 -f 99/164/86 98/159/86 102/163/86 -f 100/158/5 104/161/5 102/163/5 -f 109/165/83 108/166/83 106/167/83 -f 113/168/84 112/169/84 108/166/84 -f 111/170/85 110/171/85 112/169/85 -f 107/172/86 106/167/86 110/171/86 -f 108/166/5 112/169/5 110/171/5 -f 2/173/1 4/1/1 1/3/1 -f 4/1/2 8/4/2 3/2/2 -f 8/4/3 6/6/3 7/5/3 -f 6/174/4 2/8/4 5/10/4 -f 1/175/5 3/2/5 5/11/5 -f 6/176/6 8/4/6 2/12/6 -f 12/103/4 10/13/4 11/15/4 -f 12/103/7 6/16/7 10/13/7 -f 9/14/8 1/18/8 11/15/8 -f 1/177/9 9/14/9 2/20/9 -f 16/178/10 15/21/10 39/23/10 -f 16/178/11 39/23/11 17/25/11 -f 18/27/12 17/25/12 28/26/12 -f 19/29/13 18/27/13 56/28/13 -f 20/179/14 19/29/14 50/30/14 -f 48/35/16 49/31/16 42/34/16 -f 44/42/17 48/35/17 38/36/17 -f 49/39/19 48/40/19 55/37/19 -f 48/40/20 44/42/20 54/41/20 -f 42/75/31 43/70/31 36/73/31 -f 36/73/32 29/74/32 42/75/32 -f 34/77/33 36/76/33 35/67/33 -f 33/80/34 29/74/34 34/77/34 -f 34/81/35 35/64/35 58/78/35 -f 58/78/36 57/79/36 34/81/36 -f 59/61/37 53/63/37 58/83/37 -f 58/83/38 52/82/38 57/79/38 -f 53/58/39 47/60/39 52/86/39 -f 52/86/40 46/85/40 51/84/40 -f 47/56/41 41/55/41 46/89/41 -f 46/89/42 40/88/42 45/22/42 -f 41/53/43 32/52/43 40/91/43 -f 40/91/87 31/90/87 39/23/87 -f 31/93/45 32/51/45 27/92/45 -f 27/92/46 28/26/46 31/93/46 -f 60/97/47 27/94/47 61/47/47 -f 55/45/48 54/95/48 61/43/48 -f 54/95/88 50/30/88 60/96/88 -f 56/28/50 28/26/50 60/97/50 -f 51/84/51 45/87/51 26/99/51 -f 25/180/52 57/79/52 26/99/52 -f 20/179/53 50/30/53 21/100/53 -f 22/181/54 21/100/54 38/36/54 -f 22/181/55 38/36/55 23/101/55 -f 23/101/56 29/74/56 24/102/56 -f 25/180/57 24/102/57 57/79/57 -f 6/182/58 12/103/58 5/104/58 -f 62/183/59 63/105/59 64/107/59 -f 64/107/60 65/106/60 66/109/60 -f 66/109/61 67/108/61 68/111/61 -f 68/111/62 69/110/62 70/113/62 -f 70/113/63 71/112/63 72/115/63 -f 72/115/64 73/114/64 74/117/64 -f 74/117/65 75/116/65 76/119/65 -f 76/119/66 77/118/66 78/121/66 -f 78/121/67 79/120/67 80/123/67 -f 80/123/68 81/122/68 82/125/68 -f 71/112/69 69/110/69 90/127/69 -f 84/131/70 85/128/70 62/130/70 -f 82/125/71 83/124/71 84/131/71 -f 84/134/2 62/184/2 64/185/2 -f 64/185/2 66/186/2 84/134/2 -f 68/132/2 70/187/2 72/188/2 -f 72/188/2 74/189/2 68/132/2 -f 76/133/2 78/190/2 80/191/2 -f 80/191/2 82/192/2 84/134/2 -f 84/134/2 66/186/2 68/132/2 -f 68/132/2 74/189/2 76/133/2 -f 76/133/2 80/191/2 84/134/2 -f 88/137/4 86/193/4 96/194/4 -f 87/195/4 97/196/4 96/194/4 -f 96/194/4 95/197/4 94/135/4 -f 94/135/4 93/198/4 92/136/4 -f 92/136/4 91/199/4 88/137/4 -f 90/200/4 89/201/4 88/137/4 -f 86/193/4 87/195/4 96/194/4 -f 96/194/4 94/135/4 88/137/4 -f 91/199/4 90/200/4 88/137/4 -f 87/202/72 63/129/72 97/138/72 -f 65/106/73 63/105/73 86/140/73 -f 69/110/74 67/108/74 89/142/74 -f 85/128/75 83/124/75 97/144/75 -f 88/203/89 67/108/89 86/145/89 -f 83/124/77 81/122/77 96/147/77 -f 81/122/78 79/120/78 95/149/78 -f 94/204/79 79/120/79 93/150/79 -f 77/118/80 75/116/80 93/152/80 -f 75/116/81 73/114/81 92/154/81 -f 73/114/90 71/112/90 91/156/90 -f 99/205/83 101/157/83 98/159/83 -f 101/206/84 105/160/84 100/158/84 -f 105/207/85 103/162/85 104/161/85 -f 103/208/86 99/164/86 102/163/86 -f 98/159/5 100/158/5 102/163/5 -f 107/209/83 109/165/83 106/167/83 -f 109/210/84 113/168/84 108/166/84 -f 113/211/85 111/170/85 112/169/85 -f 111/212/86 107/172/86 110/171/86 -f 106/167/5 108/166/5 110/171/5 diff --git a/src/main/resources/assets/hbm/models/cwis_rotor.obj b/src/main/resources/assets/hbm/models/cwis_rotor.obj deleted file mode 100644 index 07d783822..000000000 --- a/src/main/resources/assets/hbm/models/cwis_rotor.obj +++ /dev/null @@ -1,202 +0,0 @@ -# Blender v2.76 (sub 0) OBJ File: 'cwis_rotor.blend' -# www.blender.org -o Cylinder.001 -v 0.000000 0.250000 -1.000000 -v 0.000000 0.375000 -1.000000 -v 0.500000 0.250000 -0.866025 -v 0.500000 0.375000 -0.866025 -v 0.866025 0.250000 -0.500000 -v 0.866025 0.375000 -0.500000 -v 1.000000 0.250000 0.000000 -v 1.000000 0.375000 0.000000 -v 0.866025 0.250000 0.500000 -v 0.866025 0.375000 0.500000 -v 0.500000 0.250000 0.866025 -v 0.500000 0.375000 0.866025 -v 0.000000 0.250000 1.000000 -v 0.000000 0.375000 1.000000 -v -0.500000 0.250000 0.866026 -v -0.500000 0.375000 0.866026 -v -0.866025 0.250000 0.500000 -v -0.866025 0.375000 0.500000 -v -1.000000 0.250000 0.000000 -v -1.000000 0.375000 0.000000 -v -0.866026 0.250000 -0.499999 -v -0.866026 0.375000 -0.499999 -v -0.500001 0.250000 -0.866025 -v -0.500001 0.375000 -0.866025 -v 0.500000 0.375000 0.500000 -v 0.850000 0.375000 0.500000 -v 0.500000 0.375000 -0.500000 -v 0.850000 0.375000 -0.500000 -v 0.500000 1.875000 -0.325000 -v 0.500000 1.875000 0.325000 -v 0.850000 1.875000 0.325000 -v 0.850000 1.875000 -0.325000 -v -0.850000 0.375000 0.500000 -v -0.500000 0.375000 0.500000 -v -0.850000 0.375000 -0.500000 -v -0.500000 0.375000 -0.500000 -v -0.850000 1.875000 -0.325000 -v -0.850000 1.875000 0.325000 -v -0.500000 1.875000 0.325000 -v -0.500000 1.875000 -0.325000 -vt 0.447419 0.884668 -vt 0.375998 0.884668 -vt 0.375998 0.867421 -vt 0.304576 0.884668 -vt 0.304576 0.867421 -vt 0.233155 0.884668 -vt 0.233155 0.867421 -vt 0.161734 0.884668 -vt 0.161734 0.867421 -vt 0.090312 0.884668 -vt 0.090312 0.867421 -vt 0.018891 0.884668 -vt 0.018891 0.867421 -vt 0.485201 0.867421 -vt 0.556623 0.867421 -vt 0.556623 0.884668 -vt 0.628044 0.867421 -vt 0.628044 0.884668 -vt 0.699465 0.867421 -vt 0.699465 0.884668 -vt 0.770886 0.867421 -vt 0.770886 0.884668 -vt 0.054602 0.793928 -vt 0.116454 0.563091 -vt 0.285439 0.732075 -vt 0.842308 0.867421 -vt 0.913729 0.867421 -vt 0.913729 0.884668 -vt 0.842308 0.884668 -vt 0.589769 0.732075 -vt 0.323221 0.660654 -vt 0.420785 0.563091 -vt 0.274146 0.227258 -vt 0.274146 0.316942 -vt 0.225854 0.316942 -vt 0.774146 0.227258 -vt 0.774146 0.316942 -vt 0.725854 0.316942 -vt 0.518891 0.203112 -vt 0.725854 0.227258 -vt 0.725854 0.525308 -vt 0.774146 0.018891 -vt 0.981109 0.341087 -vt 0.018891 0.203112 -vt 0.225854 0.227258 -vt 0.225854 0.525308 -vt 0.274146 0.018891 -vt 0.481109 0.341087 -vt 0.447419 0.867421 -vt 0.485201 0.884668 -vt 0.249728 0.793928 -vt 0.187876 0.829639 -vt 0.116454 0.829638 -vt 0.018891 0.732075 -vt 0.018891 0.660654 -vt 0.054602 0.598801 -vt 0.187876 0.563091 -vt 0.249728 0.598801 -vt 0.285439 0.660654 -vt 0.492206 0.563091 -vt 0.554059 0.598801 -vt 0.589769 0.660654 -vt 0.554059 0.793928 -vt 0.492206 0.829638 -vt 0.420785 0.829638 -vt 0.358932 0.793928 -vt 0.323221 0.732075 -vt 0.358932 0.598801 -vt 0.518891 0.341087 -vt 0.774145 0.525308 -vt 0.725854 0.018891 -vt 0.981109 0.203112 -vt 0.018891 0.341087 -vt 0.274145 0.525308 -vt 0.225854 0.018891 -vt 0.481109 0.203112 -vn 0.258800 0.000000 -0.965900 -vn 0.707100 0.000000 -0.707100 -vn 0.965900 0.000000 -0.258800 -vn 0.965900 0.000000 0.258800 -vn 0.707100 0.000000 0.707100 -vn 0.258800 0.000000 0.965900 -vn -0.258800 0.000000 0.965900 -vn -0.707100 0.000000 0.707100 -vn -0.965900 0.000000 0.258800 -vn -0.965900 0.000000 -0.258800 -vn 0.000000 1.000000 0.000000 -vn -0.258800 0.000000 -0.965900 -vn -0.707100 0.000000 -0.707100 -vn 0.000000 -1.000000 0.000000 -vn -1.000000 0.000000 0.000000 -vn 0.000000 0.115900 -0.993300 -vn 0.000000 0.115900 0.993300 -vn 1.000000 0.000000 0.000000 -s off -f 2/1/1 4/2/1 3/3/1 -f 4/2/2 6/4/2 5/5/2 -f 6/4/3 8/6/3 7/7/3 -f 8/6/4 10/8/4 9/9/4 -f 10/8/5 12/10/5 11/11/5 -f 12/10/6 14/12/6 13/13/6 -f 14/14/7 16/15/7 15/16/7 -f 16/15/8 18/17/8 17/18/8 -f 18/17/9 20/19/9 19/20/9 -f 20/19/10 22/21/10 21/22/10 -f 22/23/11 14/24/11 6/25/11 -f 24/26/12 2/27/12 1/28/12 -f 22/21/13 24/26/13 23/29/13 -f 7/30/14 19/31/14 23/32/14 -f 39/33/11 40/34/11 37/35/11 -f 31/36/11 32/37/11 29/38/11 -f 25/39/15 30/40/15 29/38/15 -f 27/41/16 29/38/16 32/37/16 -f 26/42/17 31/36/17 30/40/17 -f 28/43/18 32/37/18 31/36/18 -f 33/44/15 38/45/15 37/35/15 -f 35/46/16 37/35/16 40/34/16 -f 34/47/17 39/33/17 38/45/17 -f 36/48/18 40/34/18 39/33/18 -f 1/49/1 2/1/1 3/3/1 -f 3/3/2 4/2/2 5/5/2 -f 5/5/3 6/4/3 7/7/3 -f 7/7/4 8/6/4 9/9/4 -f 9/9/5 10/8/5 11/11/5 -f 11/11/6 12/10/6 13/13/6 -f 13/50/7 14/14/7 15/16/7 -f 15/16/8 16/15/8 17/18/8 -f 17/18/9 18/17/9 19/20/9 -f 19/20/10 20/19/10 21/22/10 -f 6/25/11 4/51/11 2/52/11 -f 2/52/11 24/53/11 22/23/11 -f 22/23/11 20/54/11 18/55/11 -f 18/55/11 16/56/11 14/24/11 -f 14/24/11 12/57/11 10/58/11 -f 10/58/11 8/59/11 6/25/11 -f 6/25/11 2/52/11 22/23/11 -f 22/23/11 18/55/11 14/24/11 -f 14/24/11 10/58/11 6/25/11 -f 23/29/12 24/26/12 1/28/12 -f 21/22/13 22/21/13 23/29/13 -f 23/32/14 1/60/14 3/61/14 -f 3/61/14 5/62/14 7/30/14 -f 7/30/14 9/63/14 11/64/14 -f 11/64/14 13/65/14 15/66/14 -f 15/66/14 17/67/14 19/31/14 -f 19/31/14 21/68/14 23/32/14 -f 23/32/14 3/61/14 7/30/14 -f 7/30/14 11/64/14 15/66/14 -f 15/66/14 19/31/14 7/30/14 -f 38/45/11 39/33/11 37/35/11 -f 30/40/11 31/36/11 29/38/11 -f 27/69/15 25/39/15 29/38/15 -f 28/70/16 27/41/16 32/37/16 -f 25/71/17 26/42/17 30/40/17 -f 26/72/18 28/43/18 31/36/18 -f 35/73/15 33/44/15 37/35/15 -f 36/74/16 35/46/16 40/34/16 -f 33/75/17 34/47/17 38/45/17 -f 34/76/18 36/48/18 39/33/18 diff --git a/src/main/resources/assets/hbm/models/cyclotron.obj b/src/main/resources/assets/hbm/models/cyclotron.obj deleted file mode 100644 index f645eb5bf..000000000 --- a/src/main/resources/assets/hbm/models/cyclotron.obj +++ /dev/null @@ -1,2212 +0,0 @@ -# Blender v2.76 (sub 0) OBJ File: 'zyclotron.blend' -# www.blender.org -o Cube -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.500001 2.000000 -1.499999 -v 1.499999 2.000000 1.500001 -v -1.500000 2.000000 1.500000 -v -1.500000 2.000000 -1.500000 -v 0.000000 2.000000 -1.375000 -v -0.526190 2.000000 -1.270334 -v -0.972272 2.000000 -0.972272 -v -1.270334 2.000000 -0.526190 -v -1.375000 2.000000 0.000000 -v -1.270334 2.000000 0.526190 -v -0.972272 2.000000 0.972272 -v -0.526190 2.000000 1.270334 -v -0.000000 2.000000 1.375000 -v 0.526190 2.000000 1.270335 -v 0.972272 2.000000 0.972272 -v 1.270334 2.000000 0.526190 -v 1.375000 2.000000 -0.000000 -v 1.270334 2.000000 -0.526190 -v 0.972272 2.000000 -0.972272 -v 0.526189 2.000000 -1.270335 -v -0.526190 6.000000 -1.270334 -v -0.000000 6.000000 -1.375000 -v -0.972272 6.000000 -0.972272 -v -1.270335 6.000000 -0.526190 -v -1.375000 6.000000 0.000000 -v -1.270335 6.000000 0.526190 -v -0.972272 6.000000 0.972272 -v -0.526190 6.000000 1.270334 -v -0.000000 6.000000 1.375000 -v 0.526189 6.000000 1.270335 -v 0.972272 6.000000 0.972272 -v 1.270334 6.000000 0.526190 -v 1.375000 6.000000 -0.000000 -v 1.270334 6.000000 -0.526190 -v 0.972271 6.000000 -0.972272 -v 0.526189 6.000000 -1.270335 -v 0.000000 2.000000 -1.500000 -v -0.750000 2.000000 -1.500000 -v 0.750001 2.000000 -1.500000 -v -1.500000 2.000000 -0.000000 -v -1.500000 2.000000 -0.750000 -v -1.500000 2.000000 0.750000 -v -0.000001 2.000000 1.500000 -v -0.750001 2.000000 1.500000 -v 0.749999 2.000000 1.500000 -v 1.500000 2.000000 0.000001 -v 1.500000 2.000000 0.750001 -v 1.500000 2.000000 -0.749999 -v -0.358766 6.000000 -0.866137 -v -0.000000 6.000000 -0.937500 -v -0.662913 6.000000 -0.662913 -v -0.866137 6.000000 -0.358766 -v -0.937500 6.000000 0.000000 -v -0.866137 6.000000 0.358766 -v -0.662913 6.000000 0.662913 -v -0.358766 6.000000 0.866137 -v -0.000000 6.000000 0.937500 -v 0.358765 6.000000 0.866137 -v 0.662912 6.000000 0.662913 -v 0.866137 6.000000 0.358766 -v 0.937500 6.000000 -0.000000 -v 0.866137 6.000000 -0.358766 -v 0.662912 6.000000 -0.662913 -v 0.358765 6.000000 -0.866137 -v -0.358766 5.850000 -0.866137 -v -0.000000 5.850000 -0.937500 -v -0.662913 5.850000 -0.662913 -v -0.866137 5.850000 -0.358766 -v -0.937500 5.850000 0.000000 -v -0.866137 5.850000 0.358766 -v -0.662913 5.850000 0.662913 -v -0.358766 5.850000 0.866137 -v -0.000000 5.850000 0.937500 -v 0.358765 5.850000 0.866137 -v 0.662912 5.850000 0.662913 -v 0.866137 5.850000 0.358766 -v 0.937500 5.850000 -0.000000 -v 0.866137 5.850000 -0.358766 -v 0.662912 5.850000 -0.662913 -v 0.358765 5.850000 -0.866137 -v 0.866137 5.925000 0.358766 -v 0.662912 5.925000 0.662913 -v -0.866137 5.925000 -0.358766 -v -0.662913 5.925000 -0.662913 -v -1.500000 1.750000 1.500000 -v -1.500000 0.250000 1.500000 -v 1.499999 1.750000 1.500001 -v 1.500000 0.250000 1.500000 -v 1.500000 1.750000 -1.499999 -v 1.500000 0.250000 -1.500000 -v 1.500000 1.750000 1.250001 -v 1.500000 1.750000 -1.249999 -v 1.500000 0.250000 -1.250000 -v 1.500000 0.250000 1.250000 -v 1.500000 0.250000 0.500000 -v 1.500000 1.000000 0.500000 -v 1.500000 0.000000 0.500000 -v 1.500000 1.000000 -0.500000 -v 1.500000 0.000000 -0.500000 -v 1.500000 0.250000 -0.500000 -v 1.350000 1.750000 -1.249999 -v 1.350000 1.750000 1.250001 -v 1.350000 0.250000 -1.250000 -v 1.350000 0.250000 1.250000 -v 1.350000 1.000000 -0.500000 -v 1.350000 1.000000 0.500000 -v 1.350000 0.250000 0.500000 -v 1.350000 0.250000 -0.500000 -v 0.500000 0.000000 -1.500000 -v -1.250000 0.250000 -1.500000 -v 1.250000 0.250000 -1.500000 -v -1.250000 1.750000 -1.500000 -v 1.250000 1.750000 -1.500000 -v 0.500000 0.250000 -1.500000 -v -0.500000 0.000000 -1.500000 -v -0.500000 0.250000 -1.500000 -v 0.500000 1.000000 -1.500000 -v -0.500000 1.000000 -1.500000 -v 1.250000 1.750000 -1.350000 -v -1.250000 1.750000 -1.350000 -v 1.250000 0.250000 -1.350000 -v -1.250000 0.250000 -1.350000 -v -0.500000 0.250000 -1.350000 -v 0.500000 1.000000 -1.350000 -v -0.500000 1.000000 -1.350000 -v 0.500000 0.250000 -1.350000 -v -1.500000 1.750000 -1.250000 -v -1.500000 1.750000 1.250000 -v -1.500000 0.250000 -1.250000 -v -1.500000 0.250000 1.250000 -v -1.500000 0.000000 -0.500000 -v -1.500000 0.250000 -0.500000 -v -1.500000 0.000000 0.500000 -v -1.500000 0.250000 0.500000 -v -1.500000 1.000000 -0.500000 -v -1.500000 1.000000 0.500000 -v -1.350000 1.750000 1.250000 -v -1.350000 1.750000 -1.250000 -v -1.350000 0.250000 -1.250000 -v -1.350000 0.250000 1.250000 -v -1.349999 1.000000 0.500000 -v -1.349999 1.000000 -0.500000 -v -1.350000 0.250000 -0.500000 -v -1.350000 0.250000 0.500000 -v -0.500000 0.000000 1.500000 -v 1.250000 0.250000 1.500000 -v -1.250000 0.250000 1.500000 -v -1.250000 1.750000 1.500000 -v 1.249999 1.750000 1.500000 -v -0.500000 0.250000 1.500000 -v 0.500000 0.000000 1.500000 -v 0.500000 0.250000 1.500000 -v -0.500000 1.000000 1.500000 -v 0.500000 1.000000 1.500000 -v 1.249999 1.750000 1.350000 -v 0.500000 1.000000 1.350000 -v -1.250000 1.750000 1.350000 -v -1.250000 0.250000 1.350000 -v 1.250000 0.250000 1.350000 -v -0.500000 1.000000 1.350000 -v -0.500000 0.250000 1.350000 -v 0.500000 0.250000 1.350000 -v -0.883884 5.750000 0.883884 -v -1.154850 5.750000 0.478354 -v 0.883883 5.750000 -0.883884 -v 1.154849 5.750000 -0.478355 -v -0.478354 5.750000 1.154849 -v 0.478354 5.750000 -1.154850 -v -0.000000 5.750000 1.250000 -v -0.478354 5.750000 -1.154849 -v -0.000000 5.750000 -1.250000 -v 0.478354 5.750000 1.154850 -v -0.883884 5.750000 -0.883884 -v 0.883883 5.750000 0.883884 -v -1.154850 5.750000 -0.478354 -v 1.154849 5.750000 0.478354 -v -1.250000 5.750000 0.000000 -v 1.250000 5.750000 -0.000000 -v -0.526190 5.750000 -1.270334 -v -0.000000 5.750000 -1.375000 -v -0.972272 5.750000 -0.972272 -v -1.270335 5.750000 -0.526190 -v -1.375000 5.750000 0.000000 -v -1.270335 5.750000 0.526190 -v -0.972272 5.750000 0.972272 -v -0.526190 5.750000 1.270334 -v -0.000000 5.750000 1.375000 -v 0.526189 5.750000 1.270335 -v 0.972272 5.750000 0.972272 -v 1.270334 5.750000 0.526190 -v 1.375000 5.750000 -0.000000 -v 1.270334 5.750000 -0.526190 -v 0.972271 5.750000 -0.972272 -v 0.526189 5.750000 -1.270335 -v 1.100000 5.750000 1.000000 -v 1.100000 2.000000 1.000000 -v 1.100000 2.000000 -1.200000 -v 1.100000 5.750000 -1.200000 -v 1.170711 2.000000 -1.170711 -v 1.170711 5.750000 -1.170711 -v 1.200000 2.000000 -1.100000 -v 1.200000 5.750000 -1.100000 -v 1.170711 2.000000 -1.029289 -v 1.170711 5.750000 -1.029289 -v 1.100000 2.000000 -1.000000 -v 1.100000 5.750000 -1.000000 -v 1.029289 2.000000 -1.029289 -v 1.029289 5.750000 -1.029289 -v 1.000000 2.000000 -1.100000 -v 1.000000 5.750000 -1.100000 -v 1.029289 2.000000 -1.170711 -v 1.029289 5.750000 -1.170711 -v 1.170711 2.000000 1.029289 -v 1.170711 5.750000 1.029289 -v 1.200000 2.000000 1.100000 -v 1.200000 5.750000 1.100000 -v 1.170711 2.000000 1.170711 -v 1.170711 5.750000 1.170711 -v 1.100000 2.000000 1.200000 -v 1.100000 5.750000 1.200000 -v 1.029289 2.000000 1.170711 -v 1.029289 5.750000 1.170711 -v 1.000000 2.000000 1.100000 -v 1.000000 5.750000 1.100000 -v 1.029289 2.000000 1.029289 -v 1.029289 5.750000 1.029289 -v -1.100000 5.750000 1.000000 -v -1.100000 2.000000 1.000000 -v -1.029289 2.000000 1.029289 -v -1.029289 5.750000 1.029289 -v -1.000000 2.000000 1.100000 -v -1.000000 5.750000 1.100000 -v -1.029289 2.000000 1.170711 -v -1.029289 5.750000 1.170711 -v -1.100000 2.000000 1.200000 -v -1.100000 5.750000 1.200000 -v -1.170711 2.000000 1.170711 -v -1.170711 5.750000 1.170711 -v -1.200000 2.000000 1.100000 -v -1.200000 5.750000 1.100000 -v -1.170711 2.000000 1.029289 -v -1.170711 5.750000 1.029289 -v -1.100000 5.750000 -1.200000 -v -1.100000 2.000000 -1.200000 -v -1.029289 2.000000 -1.170711 -v -1.029289 5.750000 -1.170711 -v -1.000000 2.000000 -1.100000 -v -1.000000 5.750000 -1.100000 -v -1.029289 2.000000 -1.029289 -v -1.029289 5.750000 -1.029289 -v -1.100000 2.000000 -1.000000 -v -1.100000 5.750000 -1.000000 -v -1.170711 2.000000 -1.029289 -v -1.170711 5.750000 -1.029289 -v -1.200000 2.000000 -1.100000 -v -1.200000 5.750000 -1.100000 -v -1.170711 2.000000 -1.170711 -v -1.170711 5.750000 -1.170711 -v 1.000000 5.975001 -1.000000 -v 0.950000 5.945711 -1.050000 -v 0.929289 5.875000 -1.070711 -v 0.950000 5.804290 -1.050000 -v 1.000000 5.775001 -1.000000 -v 1.050000 5.804290 -0.950000 -v 1.070711 5.875000 -0.929289 -v 1.050000 5.945711 -0.950000 -v 0.879289 5.945711 -0.979289 -v 0.929289 5.975001 -0.929289 -v 0.858579 5.875000 -1.000000 -v 0.879289 5.804290 -0.979289 -v 0.929289 5.775001 -0.929289 -v 0.979289 5.804290 -0.879289 -v 1.000000 5.875000 -0.858578 -v 0.979289 5.945711 -0.879289 -v 1.070711 5.875000 0.929289 -v 1.050000 5.804289 0.950000 -v 1.000000 5.775000 1.000000 -v 0.950000 5.804289 1.050000 -v 0.929289 5.875000 1.070711 -v 0.950000 5.945711 1.050000 -v 1.000000 5.975000 1.000000 -v 1.050000 5.945711 0.950000 -v 0.879289 5.945711 0.979289 -v 0.858578 5.875000 1.000000 -v 0.929289 5.775000 0.929289 -v 0.979289 5.804289 0.879289 -v 0.879289 5.804289 0.979289 -v 1.000000 5.875000 0.858579 -v 0.929289 5.975000 0.929289 -v 0.979289 5.945711 0.879289 -v -0.929289 5.875000 -1.070711 -v -0.950000 5.804289 -1.050000 -v -1.000000 5.775000 -1.000000 -v -1.050000 5.804289 -0.950000 -v -1.070710 5.875000 -0.929289 -v -1.050000 5.945711 -0.950000 -v -1.000000 5.975000 -1.000000 -v -0.950000 5.945711 -1.050000 -v -0.979289 5.945711 -0.879289 -v -1.000000 5.875000 -0.858579 -v -0.929289 5.775000 -0.929289 -v -0.879289 5.804289 -0.979289 -v -0.979289 5.804289 -0.879289 -v -0.858578 5.875000 -1.000000 -v -0.929289 5.975000 -0.929289 -v -0.879289 5.945711 -0.979289 -v -1.000000 5.975000 1.000000 -v -0.950000 5.945711 1.050000 -v -0.929289 5.875000 1.070711 -v -0.950000 5.804289 1.050000 -v -1.000000 5.775000 1.000000 -v -1.050000 5.804289 0.950000 -v -1.070711 5.875000 0.929289 -v -1.050000 5.945711 0.950000 -v -0.979289 5.804289 0.879289 -v -0.929289 5.775000 0.929289 -v -0.858579 5.875000 1.000000 -v -0.879289 5.945711 0.979289 -v -0.879289 5.804289 0.979289 -v -0.929289 5.975000 0.929289 -v -1.000000 5.875000 0.858579 -v -0.979289 5.945711 0.879289 -v -0.883884 2.250000 0.883884 -v -1.154850 2.250000 0.478354 -v 0.883883 2.250000 -0.883884 -v 1.154849 2.250000 -0.478355 -v -0.478354 2.250000 1.154849 -v 0.478354 2.250000 -1.154850 -v -0.000000 2.250000 1.250000 -v -0.478354 2.250000 -1.154849 -v -0.000000 2.250000 -1.250000 -v 0.478354 2.250000 1.154850 -v -0.883884 2.250000 -0.883884 -v 0.883883 2.250000 0.883884 -v -1.154850 2.250000 -0.478354 -v 1.154849 2.250000 0.478354 -v -1.250000 2.250000 0.000000 -v 1.250000 2.250000 -0.000000 -v -0.526190 2.250000 -1.270334 -v 0.000000 2.250000 -1.375000 -v -0.972272 2.250000 -0.972272 -v -1.270334 2.250000 -0.526190 -v -1.375000 2.250000 0.000000 -v -1.270334 2.250000 0.526190 -v -0.972272 2.250000 0.972272 -v -0.526190 2.250000 1.270334 -v -0.000000 2.250000 1.375000 -v 0.526190 2.250000 1.270335 -v 0.972272 2.250000 0.972272 -v 1.270334 2.250000 0.526190 -v 1.375000 2.250000 -0.000000 -v 1.270334 2.250000 -0.526190 -v 0.972272 2.250000 -0.972272 -v 0.526189 2.250000 -1.270335 -v 1.500000 0.656250 -0.156250 -v 1.500000 0.250000 -0.250000 -v 1.500000 0.750000 -0.250000 -v 1.500000 0.250000 0.250000 -v 0.250000 0.750000 1.450000 -v 0.156250 0.656250 1.450000 -v -0.156250 0.343750 1.500000 -v 0.156250 0.343750 1.500000 -v 1.500000 0.750000 0.250000 -v 1.500000 0.343750 -0.156250 -v -0.250000 0.750000 1.450000 -v -0.250000 0.250000 1.450000 -v 0.250000 0.250000 1.450000 -v -0.156250 0.656250 1.450000 -v 0.250000 0.750000 1.500000 -v -0.250000 0.750000 1.500000 -v -0.156250 0.656250 1.500000 -v 0.250000 0.250000 1.500000 -v -0.156250 0.343750 1.450000 -v 0.156250 0.343750 1.450000 -v 0.156250 0.656250 1.500000 -v -0.250000 0.250000 1.500000 -v 1.500000 0.343750 0.156250 -v 1.500000 0.656250 0.156250 -v 1.450000 0.656250 -0.156250 -v 1.450000 0.656250 0.156250 -v 1.450000 0.343750 -0.156250 -v 1.450000 0.343750 0.156250 -v 1.450000 0.250000 -0.250000 -v 1.450000 0.250000 0.250000 -v 1.450000 0.750000 -0.250000 -v 1.450000 0.750000 0.250000 -v 0.250000 0.250000 -1.500000 -v -0.156250 0.343750 -1.500000 -v -0.250000 0.250000 -1.500000 -v 0.156250 0.343750 -1.500000 -v 0.250000 0.750000 -1.500000 -v -0.250000 0.750000 -1.500000 -v 0.156250 0.656250 -1.500000 -v -0.156250 0.656250 -1.500000 -v 0.156250 0.656250 -1.450000 -v -0.156250 0.656250 -1.450000 -v 0.156250 0.343750 -1.450000 -v -0.156250 0.343750 -1.450000 -v 0.250000 0.250000 -1.450000 -v -0.250000 0.250000 -1.450000 -v 0.250000 0.750000 -1.450000 -v -0.250000 0.750000 -1.450000 -v -1.500000 0.250000 -0.250001 -v -1.500000 0.343750 0.156250 -v -1.500000 0.250000 0.250000 -v -1.500000 0.343750 -0.156251 -v -1.500000 0.750000 -0.250001 -v -1.500000 0.750000 0.250000 -v -1.500000 0.656250 -0.156251 -v -1.500000 0.656250 0.156250 -v -1.449999 0.656250 0.156250 -v -1.449999 0.343750 0.156250 -v -1.449999 0.656250 -0.156251 -v -1.449999 0.750000 -0.250001 -v -1.449999 0.750000 0.250000 -v -1.449999 0.250000 0.250000 -v -1.449999 0.250000 -0.250001 -v -1.449999 0.343750 -0.156251 -vt 0.000461 0.950818 -vt 0.000470 0.922808 -vt 0.040543 0.922822 -vt 0.361111 0.875563 -vt 0.321038 0.875563 -vt 0.327413 0.843513 -vt 0.080605 0.903573 -vt 0.040533 0.903573 -vt 0.040533 0.875564 -vt 0.120677 0.903573 -vt 0.080605 0.875564 -vt 0.160749 0.903573 -vt 0.120677 0.875563 -vt 0.200821 0.903573 -vt 0.160749 0.875563 -vt 0.240894 0.903573 -vt 0.200821 0.875563 -vt 0.280966 0.903573 -vt 0.240894 0.875563 -vt 0.321038 0.903572 -vt 0.280966 0.875563 -vt 0.361111 0.903572 -vt 0.401183 0.903572 -vt 0.441256 0.903572 -vt 0.401183 0.875563 -vt 0.481328 0.903572 -vt 0.441255 0.875563 -vt 0.521400 0.903572 -vt 0.481328 0.875563 -vt 0.561472 0.903572 -vt 0.521400 0.875562 -vt 0.601545 0.903572 -vt 0.561472 0.875562 -vt 0.641617 0.903572 -vt 0.601544 0.875562 -vt 0.255335 0.430863 -vt 0.242613 0.466253 -vt 0.250054 0.428675 -vt 0.449535 0.505555 -vt 0.440199 0.505555 -vt 0.432381 0.466253 -vt 0.432381 0.544857 -vt 0.449535 0.393517 -vt 0.449535 0.449536 -vt 0.427127 0.423394 -vt 0.424940 0.418112 -vt 0.419658 0.415924 -vt 0.337497 0.617593 -vt 0.337497 0.608257 -vt 0.376799 0.600439 -vt 0.298195 0.600439 -vt 0.260617 0.418112 -vt 0.298194 0.410671 -vt 0.262805 0.423394 -vt 0.264876 0.432934 -vt 0.225458 0.505555 -vt 0.234795 0.505555 -vt 0.242613 0.544857 -vt 0.225458 0.449536 -vt 0.281478 0.393517 -vt 0.337497 0.393517 -vt 0.337497 0.402853 -vt 0.376799 0.410671 -vt 0.797881 0.890085 -vt 0.787427 0.915324 -vt 0.779665 0.912108 -vt 0.607920 0.843512 -vt 0.635242 0.843512 -vt 0.287341 0.843513 -vt 0.567847 0.843512 -vt 0.595169 0.843512 -vt 0.247269 0.843513 -vt 0.527775 0.843513 -vt 0.555097 0.843513 -vt 0.207196 0.843513 -vt 0.234518 0.843513 -vt 0.487703 0.843513 -vt 0.127052 0.843513 -vt 0.154374 0.843513 -vt 0.167124 0.843513 -vt 0.194446 0.843513 -vt 0.447631 0.843513 -vt 0.086980 0.843514 -vt 0.114302 0.843514 -vt 0.407558 0.843513 -vt 0.434880 0.843513 -vt 0.046908 0.843514 -vt 0.074230 0.843514 -vt 0.367486 0.843513 -vt 0.000461 0.875564 -vt 0.006836 0.843514 -vt 0.034157 0.843514 -vt 0.869755 0.860314 -vt 0.914311 0.890085 -vt 0.557352 0.796015 -vt 0.567806 0.770776 -vt 0.575568 0.773991 -vt 0.805316 0.858886 -vt 0.817198 0.870768 -vt 0.549917 0.827213 -vt 0.538035 0.815332 -vt 0.836006 0.844789 -vt 0.842437 0.860314 -vt 0.519226 0.841310 -vt 0.512796 0.825786 -vt 0.869755 0.843510 -vt 0.485478 0.842589 -vt 0.485478 0.825786 -vt 0.901424 0.855244 -vt 0.894994 0.870768 -vt 0.429040 0.807896 -vt 0.440922 0.796015 -vt 0.460239 0.815332 -vt 0.453809 0.830856 -vt 0.926192 0.878203 -vt 0.430354 0.770506 -vt 0.430468 0.770776 -vt 0.924879 0.915593 -vt 0.924765 0.915323 -vt 0.371218 0.823282 -vt 0.371218 0.795960 -vt 0.379621 0.795960 -vt 0.225458 0.795960 -vt 0.233861 0.795960 -vt 0.233861 0.823282 -vt 0.233861 0.787557 -vt 0.371218 0.787557 -vt 0.233861 0.831685 -vt 0.205864 0.421526 -vt 0.224537 0.421526 -vt 0.224537 0.589584 -vt 0.075153 0.987414 -vt 0.075153 0.976210 -vt 0.159182 0.976210 -vt 0.584251 0.645601 -vt 0.584251 0.477544 -vt 0.602924 0.477544 -vt 0.019134 0.589584 -vt 0.000461 0.589584 -vt 0.000461 0.421526 -vt 0.019134 0.421526 -vt 0.000461 0.393517 -vt 0.224537 0.393517 -vt 0.569989 0.999539 -vt 0.383259 0.999539 -vt 0.383259 0.988335 -vt 0.159182 0.999539 -vt 0.159182 0.988336 -vt 0.215201 0.988336 -vt 0.738046 0.999539 -vt 0.738046 0.988335 -vt 0.794065 0.988335 -vt 0.809250 0.000461 -vt 0.865269 0.000461 -vt 0.865269 0.084489 -vt 0.995980 0.000461 -vt 0.995980 0.168518 -vt 0.939961 0.084489 -vt 0.794065 0.999539 -vt 0.878094 0.988335 -vt 0.569989 0.988335 -vt 0.112499 0.617593 -vt 0.056480 0.617593 -vt 0.000461 0.999539 -vt 0.000461 0.988336 -vt 0.075153 0.988336 -vt 0.075153 0.999539 -vt 0.215201 0.999539 -vt 0.721511 0.878976 -vt 0.721511 0.902318 -vt 0.686499 0.902318 -vt 0.084490 0.951960 -vt 0.140510 0.951960 -vt 0.140510 0.963164 -vt 0.663356 0.951960 -vt 0.663356 0.963164 -vt 0.495300 0.963164 -vt 0.958633 0.842589 -vt 0.902614 0.842589 -vt 0.902614 0.758560 -vt 0.827922 0.758560 -vt 0.827922 0.842589 -vt 0.771903 0.842589 -vt 0.771903 0.674532 -vt 0.958633 0.674532 -vt 0.308568 0.951960 -vt 0.308568 0.963164 -vt 0.719375 0.951960 -vt 0.719375 0.963164 -vt 0.803403 0.951960 -vt 0.803403 0.963163 -vt 0.878094 0.951960 -vt 0.878094 0.963163 -vt 0.084490 0.963164 -vt 0.000461 0.963164 -vt 0.696290 0.149845 -vt 0.612261 0.149845 -vt 0.668281 0.131172 -vt 0.668281 0.093826 -vt 0.696290 0.075153 -vt 0.308565 0.964085 -vt 0.495295 0.964085 -vt 0.495295 0.975289 -vt 0.878094 0.964085 -vt 0.878094 0.975289 -vt 0.803401 0.975289 -vt 0.084489 0.964085 -vt 0.140508 0.964085 -vt 0.140508 0.975289 -vt 0.612261 0.131172 -vt 0.584252 0.149845 -vt 0.584252 0.075153 -vt 0.612262 0.075153 -vt 0.770982 0.674532 -vt 0.714963 0.758560 -vt 0.640270 0.758560 -vt 0.770982 0.842589 -vt 0.714963 0.842589 -vt 0.640270 0.842589 -vt 0.584251 0.842589 -vt 0.084489 0.975289 -vt 0.000461 0.975289 -vt 0.663353 0.964085 -vt 0.663353 0.975289 -vt 0.719372 0.964085 -vt 0.719372 0.975289 -vt 0.612261 0.205864 -vt 0.780319 0.205864 -vt 0.808328 0.224537 -vt 0.308565 0.975289 -vt 0.803401 0.964085 -vt 0.789655 0.477544 -vt 0.808328 0.477544 -vt 0.808328 0.645601 -vt 0.569989 0.987414 -vt 0.569989 0.976210 -vt 0.738046 0.976210 -vt 0.658943 0.449534 -vt 0.658943 0.477544 -vt 0.733636 0.449534 -vt 0.808328 0.449534 -vt 0.225516 0.618514 -vt 0.281536 0.618534 -vt 0.281507 0.702563 -vt 0.356199 0.702588 -vt 0.356228 0.618560 -vt 0.412247 0.618579 -vt 0.738046 0.987414 -vt 0.794065 0.976210 -vt 0.000461 0.987414 -vt 0.000461 0.976210 -vt 0.215201 0.987414 -vt 0.215201 0.976210 -vt 0.383259 0.976210 -vt 0.794065 0.987414 -vt 0.878094 0.976210 -vt 0.640270 0.673611 -vt 0.584251 0.673611 -vt 0.602924 0.645601 -vt 0.159182 0.987414 -vt 0.075153 0.618515 -vt 0.224537 0.767899 -vt 0.149845 0.842591 -vt 0.361111 0.950942 -vt 0.361121 0.922932 -vt 0.401193 0.922946 -vt 0.040533 0.950831 -vt 0.080615 0.922836 -vt 0.401183 0.950956 -vt 0.441265 0.922960 -vt 0.080605 0.950845 -vt 0.120687 0.922849 -vt 0.441256 0.950970 -vt 0.481338 0.922974 -vt 0.160750 0.950873 -vt 0.160759 0.922863 -vt 0.200832 0.922877 -vt 0.120677 0.950859 -vt 0.481328 0.950983 -vt 0.521410 0.922988 -vt 0.200822 0.950887 -vt 0.240904 0.922891 -vt 0.521400 0.950997 -vt 0.561482 0.923001 -vt 0.240894 0.950900 -vt 0.280976 0.922905 -vt 0.561472 0.951011 -vt 0.601554 0.923015 -vt 0.280967 0.950914 -vt 0.321049 0.922919 -vt 0.601545 0.951025 -vt 0.641626 0.923029 -vt 0.321039 0.950928 -vt 0.483162 0.913817 -vt 0.000461 0.903573 -vt 0.639795 0.912729 -vt 0.603366 0.912729 -vt 0.599723 0.912729 -vt 0.563294 0.912729 -vt 0.559651 0.912729 -vt 0.523222 0.912729 -vt 0.519579 0.912729 -vt 0.483149 0.912729 -vt 0.479506 0.912729 -vt 0.443077 0.912730 -vt 0.439434 0.912729 -vt 0.403005 0.912730 -vt 0.399362 0.912730 -vt 0.362932 0.912730 -vt 0.359289 0.912730 -vt 0.322860 0.912730 -vt 0.319217 0.912730 -vt 0.282788 0.912730 -vt 0.279145 0.912730 -vt 0.242715 0.912730 -vt 0.239072 0.912730 -vt 0.202643 0.912730 -vt 0.199000 0.912730 -vt 0.162571 0.912730 -vt 0.158928 0.912730 -vt 0.122499 0.912730 -vt 0.118856 0.912730 -vt 0.082426 0.912730 -vt 0.078783 0.912730 -vt 0.042354 0.912730 -vt 0.038711 0.912730 -vt 0.002282 0.912730 -vt 0.854572 0.540418 -vt 0.848098 0.540441 -vt 0.848098 0.169483 -vt 0.255335 0.415924 -vt 0.482830 0.764540 -vt 0.476355 0.764562 -vt 0.476367 0.393604 -vt 0.828674 0.540507 -vt 0.822199 0.540529 -vt 0.822199 0.169572 -vt 0.516136 0.764607 -vt 0.509662 0.764629 -vt 0.509662 0.393672 -vt 0.469880 0.764584 -vt 0.469893 0.393626 -vt 0.841623 0.540463 -vt 0.835148 0.540485 -vt 0.835148 0.169528 -vt 0.522611 0.764584 -vt 0.516136 0.393649 -vt 0.463406 0.764605 -vt 0.463418 0.393648 -vt 0.828674 0.169550 -vt 0.529086 0.764562 -vt 0.522611 0.393627 -vt 0.456931 0.764627 -vt 0.456943 0.393670 -vt 0.225458 0.393517 -vt 0.535561 0.764540 -vt 0.529086 0.393605 -vt 0.450456 0.764649 -vt 0.450468 0.393692 -vt 0.503187 0.764651 -vt 0.503187 0.393694 -vt 0.542035 0.764518 -vt 0.535561 0.393583 -vt 0.502254 0.764474 -vt 0.495779 0.764496 -vt 0.495791 0.393539 -vt 0.247866 0.423394 -vt 0.489304 0.764518 -vt 0.482842 0.393582 -vt 0.489317 0.393560 -vt 0.841623 0.169505 -vt 0.554985 0.764474 -vt 0.548510 0.764496 -vt 0.548510 0.393539 -vt 0.542035 0.393561 -vt 0.861047 0.540396 -vt 0.854572 0.169461 -vt 0.815724 0.540551 -vt 0.815724 0.169594 -vt 0.809250 0.540573 -vt 0.809250 0.169616 -vt 0.868443 0.540551 -vt 0.861968 0.540573 -vt 0.861968 0.169616 -vt 0.894342 0.540463 -vt 0.887867 0.540485 -vt 0.887867 0.169528 -vt 0.907291 0.540418 -vt 0.900816 0.540440 -vt 0.900816 0.169483 -vt 0.894342 0.169505 -vt 0.250054 0.418112 -vt 0.913766 0.540396 -vt 0.907291 0.169461 -vt 0.874918 0.540529 -vt 0.868443 0.169594 -vt 0.881392 0.540507 -vt 0.881392 0.169550 -vt 0.874918 0.169572 -vt 0.414377 0.418112 -vt 0.393516 0.393517 -vt 0.424940 0.428675 -vt 0.419658 0.430863 -vt 0.410118 0.432934 -vt 0.412189 0.423394 -vt 0.225459 0.617593 -vt 0.250054 0.592998 -vt 0.255335 0.595186 -vt 0.225459 0.561574 -vt 0.247866 0.587717 -vt 0.250054 0.582435 -vt 0.260617 0.592998 -vt 0.281478 0.617593 -vt 0.255335 0.580247 -vt 0.262805 0.587717 -vt 0.264876 0.578176 -vt 0.449535 0.617593 -vt 0.424940 0.592998 -vt 0.427127 0.587717 -vt 0.393516 0.617593 -vt 0.419658 0.595186 -vt 0.414377 0.592998 -vt 0.424940 0.582435 -vt 0.449535 0.561574 -vt 0.419658 0.580247 -vt 0.410118 0.578176 -vt 0.412189 0.587717 -vt 0.438110 0.746694 -vt 0.434057 0.747689 -vt 0.430486 0.742598 -vt 0.438378 0.740984 -vt 0.423490 0.738286 -vt 0.440859 0.735833 -vt 0.416492 0.733975 -vt 0.443344 0.730685 -vt 0.413168 0.728720 -vt 0.433106 0.705319 -vt 0.434728 0.710801 -vt 0.426679 0.711114 -vt 0.438365 0.715211 -vt 0.420912 0.716970 -vt 0.442006 0.719619 -vt 0.415143 0.722824 -vt 0.443938 0.724999 -vt 0.563375 0.466621 -vt 0.563375 0.474840 -vt 0.555906 0.474840 -vt 0.873658 0.639627 -vt 0.879140 0.638005 -vt 0.879453 0.646055 -vt 0.563375 0.458403 -vt 0.555906 0.458403 -vt 0.555906 0.452185 -vt 0.563375 0.503714 -vt 0.555906 0.503714 -vt 0.555906 0.495495 -vt 0.563375 0.481058 -vt 0.563375 0.487276 -vt 0.555906 0.487276 -vt 0.555906 0.481058 -vt 0.555906 0.466621 -vt 0.563375 0.509932 -vt 0.555906 0.509932 -vt 0.563375 0.495495 -vt 0.915033 0.634623 -vt 0.916028 0.638677 -vt 0.910938 0.642247 -vt 0.909323 0.634355 -vt 0.906625 0.649244 -vt 0.904173 0.631874 -vt 0.902315 0.656241 -vt 0.899024 0.629390 -vt 0.897060 0.659565 -vt 0.883551 0.634368 -vt 0.885309 0.651822 -vt 0.887958 0.630728 -vt 0.891164 0.657590 -vt 0.893339 0.628795 -vt 0.563375 0.525290 -vt 0.563375 0.533508 -vt 0.555906 0.533508 -vt 0.563375 0.545944 -vt 0.563375 0.554163 -vt 0.555906 0.554163 -vt 0.563375 0.539726 -vt 0.555906 0.539726 -vt 0.563375 0.562382 -vt 0.555906 0.562382 -vt 0.563375 0.568600 -vt 0.555906 0.568600 -vt 0.555906 0.545944 -vt 0.563375 0.517071 -vt 0.555906 0.517071 -vt 0.555906 0.510853 -vt 0.555906 0.525290 -vt 0.767541 0.913748 -vt 0.768536 0.917801 -vt 0.763446 0.921372 -vt 0.731961 0.925179 -vt 0.726166 0.922925 -vt 0.726166 0.918751 -vt 0.737817 0.930946 -vt 0.731648 0.917130 -vt 0.743672 0.936714 -vt 0.736059 0.913493 -vt 0.761831 0.913480 -vt 0.759133 0.928368 -vt 0.756681 0.910999 -vt 0.754822 0.935366 -vt 0.751532 0.908514 -vt 0.749568 0.938690 -vt 0.740466 0.909852 -vt 0.564296 0.451264 -vt 0.564296 0.445046 -vt 0.571765 0.445046 -vt 0.682764 0.917805 -vt 0.688246 0.916183 -vt 0.688559 0.924233 -vt 0.564296 0.428608 -vt 0.564296 0.422390 -vt 0.571765 0.422390 -vt 0.564296 0.393517 -vt 0.571765 0.393517 -vt 0.571765 0.399735 -vt 0.564296 0.407953 -vt 0.564296 0.399735 -vt 0.571765 0.407953 -vt 0.571765 0.416172 -vt 0.571765 0.428608 -vt 0.571765 0.436827 -vt 0.564296 0.416172 -vt 0.564296 0.436827 -vt 0.724139 0.912802 -vt 0.725134 0.916855 -vt 0.720043 0.920425 -vt 0.718429 0.912533 -vt 0.715731 0.927422 -vt 0.713278 0.910053 -vt 0.711420 0.934420 -vt 0.692657 0.912546 -vt 0.694415 0.930000 -vt 0.697064 0.908906 -vt 0.700270 0.935768 -vt 0.702444 0.906973 -vt 0.706165 0.937743 -vt 0.708130 0.907568 -vt 0.555906 0.393517 -vt 0.563375 0.393517 -vt 0.563375 0.399735 -vt 0.555906 0.445046 -vt 0.563375 0.445046 -vt 0.563375 0.451264 -vt 0.555906 0.428608 -vt 0.555906 0.422390 -vt 0.563375 0.422390 -vt 0.555906 0.436827 -vt 0.563375 0.436827 -vt 0.555906 0.416172 -vt 0.563375 0.416172 -vt 0.555906 0.407953 -vt 0.563375 0.407953 -vt 0.563375 0.428608 -vt 0.555906 0.399735 -vt 0.443090 0.913804 -vt 0.439447 0.913802 -vt 0.362945 0.913776 -vt 0.322873 0.913762 -vt 0.282801 0.913748 -vt 0.279158 0.913747 -vt 0.239086 0.913733 -vt 0.199013 0.913719 -vt 0.158941 0.913705 -vt 0.082439 0.913679 -vt 0.078797 0.913678 -vt 0.002295 0.913651 -vt 0.603379 0.913859 -vt 0.523234 0.913831 -vt 0.563307 0.913845 -vt 0.583330 0.000461 -vt 0.583330 0.392595 -vt 0.546901 0.392595 -vt 0.036890 0.000461 -vt 0.036891 0.392595 -vt 0.000462 0.392596 -vt 0.073319 0.000461 -vt 0.073320 0.392595 -vt 0.109749 0.000461 -vt 0.109749 0.392595 -vt 0.146178 0.000461 -vt 0.146178 0.392595 -vt 0.182607 0.000461 -vt 0.182607 0.392595 -vt 0.219037 0.000461 -vt 0.219036 0.392595 -vt 0.255466 0.000461 -vt 0.255466 0.392595 -vt 0.291895 0.000461 -vt 0.291896 0.392595 -vt 0.328325 0.000461 -vt 0.328325 0.392595 -vt 0.364754 0.000461 -vt 0.364755 0.392595 -vt 0.401183 0.000461 -vt 0.401184 0.392595 -vt 0.437613 0.000461 -vt 0.437613 0.392595 -vt 0.474042 0.000461 -vt 0.474043 0.392595 -vt 0.510471 0.000461 -vt 0.510472 0.392595 -vt 0.546901 0.000461 -vt 0.416903 0.700663 -vt 0.413168 0.700663 -vt 0.413168 0.665651 -vt 0.896067 0.541495 -vt 0.896067 0.545229 -vt 0.858721 0.545229 -vt 0.416903 0.622249 -vt 0.416903 0.618514 -vt 0.440244 0.618514 -vt 0.440244 0.622249 -vt 0.443979 0.622249 -vt 0.443979 0.657261 -vt 0.858721 0.604983 -vt 0.858721 0.601248 -vt 0.896067 0.601248 -vt 0.889064 0.590745 -vt 0.889064 0.555733 -vt 0.865723 0.555733 -vt 0.865723 0.590745 -vt 0.677616 0.533563 -vt 0.714963 0.533563 -vt 0.733636 0.561572 -vt 0.733636 0.477544 -vt 0.714963 0.477544 -vt 0.677616 0.477544 -vt 0.658943 0.561572 -vt 0.416903 0.657261 -vt 0.413168 0.657261 -vt 0.413168 0.622249 -vt 0.899801 0.601248 -vt 0.440244 0.657261 -vt 0.440244 0.660996 -vt 0.416903 0.660996 -vt 0.854986 0.545229 -vt 0.721511 0.870586 -vt 0.686499 0.870586 -vt 0.686499 0.847245 -vt 0.440244 0.665651 -vt 0.440244 0.700663 -vt 0.854065 0.601248 -vt 0.850330 0.601248 -vt 0.850330 0.545229 -vt 0.440244 0.704398 -vt 0.416903 0.704398 -vt 0.850330 0.541495 -vt 0.812984 0.545229 -vt 0.093826 0.477545 -vt 0.075153 0.505555 -vt 0.075153 0.421526 -vt 0.149845 0.393517 -vt 0.131172 0.421526 -vt 0.093826 0.421526 -vt 0.149845 0.421526 -vt 0.131172 0.477545 -vt 0.149845 0.505555 -vt 0.819987 0.555733 -vt 0.819987 0.590745 -vt 0.843328 0.555733 -vt 0.843328 0.590745 -vt 0.812984 0.601248 -vt 0.812984 0.604983 -vt 0.416903 0.665651 -vt 0.416903 0.661917 -vt 0.440244 0.661917 -vt 0.443979 0.665651 -vt 0.443979 0.700663 -vt 0.809250 0.545229 -vt 0.725245 0.878976 -vt 0.725245 0.902318 -vt 0.872737 0.669876 -vt 0.869003 0.669876 -vt 0.869003 0.632530 -vt 0.812984 0.673611 -vt 0.812984 0.669876 -vt 0.686499 0.878976 -vt 0.686499 0.875242 -vt 0.721511 0.875242 -vt 0.858499 0.639532 -vt 0.823487 0.639532 -vt 0.812984 0.632530 -vt 0.823487 0.662874 -vt 0.858499 0.662874 -vt 0.721511 0.906052 -vt 0.686499 0.906052 -vt 0.869003 0.628795 -vt 0.809249 0.632530 -vt 0.682764 0.902318 -vt 0.682764 0.878976 -vt 0.721511 0.847245 -vt 0.725245 0.847245 -vt 0.725245 0.870586 -vt 0.770982 0.903264 -vt 0.767247 0.903264 -vt 0.767247 0.847245 -vt 0.767247 0.843510 -vt 0.729901 0.847245 -vt 0.682764 0.870586 -vt 0.682764 0.847245 -vt 0.584252 0.000461 -vt 0.612262 0.019134 -vt 0.612262 0.000461 -vt 0.780319 0.019134 -vt 0.808328 0.056480 -vt 0.808328 0.112499 -vt 0.736903 0.857749 -vt 0.736903 0.892760 -vt 0.760245 0.857748 -vt 0.760245 0.892760 -vt 0.729901 0.903264 -vt 0.721511 0.874321 -vt 0.686499 0.874321 -vt 0.726166 0.847245 -vt 0.729901 0.906999 -vt 0.686499 0.843510 -vt 0.721511 0.843510 -vt 0.495300 0.951960 -vt 0.412189 0.786636 -vt 0.225458 0.786572 -vt 0.383259 0.987414 -vt 0.612261 0.317903 -vt 0.612261 0.355249 -vt 0.584251 0.373922 -vt 0.696290 0.373922 -vt 0.668280 0.355249 -vt 0.668280 0.317903 -vt 0.612261 0.373922 -vt 0.584251 0.299230 -vt 0.612261 0.299230 -vt 0.584251 0.224537 -vt 0.612261 0.243210 -vt 0.612262 0.429940 -vt 0.612262 0.448613 -vt 0.780319 0.429940 -vt 0.808328 0.336575 -vt 0.780319 0.243210 -vt 0.354735 0.843513 -vt 0.641617 0.875562 -vt 0.260617 0.428675 -vt 0.771903 0.908893 -vt 0.782357 0.883655 -vt 0.314663 0.843513 -vt 0.274591 0.843513 -vt 0.515025 0.843513 -vt 0.474953 0.843513 -vt 0.394808 0.843513 -vt 0.583330 0.777207 -vt 0.572876 0.802445 -vt 0.785999 0.878203 -vt 0.569233 0.807897 -vt 0.810768 0.855244 -vt 0.544465 0.830856 -vt 0.842437 0.843510 -vt 0.512796 0.842589 -vt 0.876185 0.844789 -vt 0.448357 0.827213 -vt 0.479047 0.841310 -vt 0.906875 0.858886 -vt 0.425398 0.802445 -vt 0.414944 0.777206 -vt 0.929835 0.883654 -vt 0.940289 0.908893 -vt 0.379621 0.823282 -vt 0.225458 0.823282 -vt 0.371218 0.831685 -vt 0.205864 0.589584 -vt 0.075153 0.393517 -vt 0.809250 0.168518 -vt 0.939961 0.000461 -vt 0.878094 0.999539 -vt 0.224537 0.617593 -vt 0.168518 0.617593 -vt 0.000461 0.617593 -vt 0.000461 0.951960 -vt 0.612262 0.093826 -vt 0.584251 0.674532 -vt 0.000461 0.964085 -vt 0.789655 0.645601 -vt 0.584251 0.449534 -vt 0.878094 0.987414 -vt 0.808328 0.673611 -vt 0.752309 0.673611 -vt 0.696290 0.673611 -vt 0.075153 0.842591 -vt 0.000461 0.842591 -vt 0.000461 0.767899 -vt 0.000461 0.693207 -vt 0.149845 0.618515 -vt 0.224537 0.693207 -vt 0.000461 0.618514 -vt 0.224537 0.842591 -vt 0.224537 0.618515 -vt 0.641617 0.951039 -vt 0.519591 0.913830 -vt 0.502266 0.393517 -vt 0.554985 0.393517 -vt 0.861047 0.169439 -vt 0.913766 0.169439 -vt 0.414377 0.428675 -vt 0.260617 0.582435 -vt 0.414377 0.582435 -vt 0.428933 0.705319 -vt 0.873658 0.643801 -vt 0.563375 0.452185 -vt 0.563375 0.510853 -vt 0.745847 0.907920 -vt 0.571765 0.451264 -vt 0.682764 0.921979 -vt 0.555906 0.451264 -vt 0.479519 0.913816 -vt 0.403018 0.913790 -vt 0.399375 0.913788 -vt 0.359303 0.913775 -vt 0.319230 0.913761 -vt 0.242729 0.913734 -vt 0.202656 0.913721 -vt 0.162584 0.913707 -vt 0.122512 0.913693 -vt 0.118869 0.913692 -vt 0.042367 0.913665 -vt 0.038724 0.913664 -vt 0.639808 0.913871 -vt 0.559664 0.913844 -vt 0.599736 0.913857 -vt 0.000461 0.000461 -vt 0.858721 0.541495 -vt 0.896067 0.604983 -vt 0.899801 0.545229 -vt 0.854986 0.601248 -vt 0.854065 0.545229 -vt 0.812984 0.541495 -vt 0.850330 0.604983 -vt 0.809250 0.601248 -vt 0.872737 0.632530 -vt 0.869003 0.673611 -vt 0.812984 0.628795 -vt 0.809249 0.669876 -vt 0.770982 0.847245 -vt 0.729901 0.843510 -vt 0.780319 0.000461 -vt 0.808328 0.000461 -vt 0.808328 0.168518 -vt 0.726166 0.903264 -vt 0.767247 0.906999 -vt 0.696290 0.299230 -vt 0.584253 0.448613 -vt 0.808329 0.448613 -vt 0.780319 0.448613 -vt 0.808328 0.280556 -vt 0.808328 0.392594 -vn -0.980800 0.000000 -0.195100 -vn 0.000000 1.000000 0.000000 -vn -0.831500 0.000000 -0.555600 -vn -0.555600 0.000000 -0.831500 -vn -0.195100 0.000000 -0.980800 -vn 0.195100 0.000000 -0.980800 -vn 0.555600 0.000000 -0.831500 -vn 0.831500 0.000000 -0.555600 -vn 0.980800 0.000000 -0.195100 -vn 0.980800 0.000000 0.195100 -vn 0.831500 0.000000 0.555600 -vn 0.555600 0.000000 0.831500 -vn 0.195100 0.000000 0.980800 -vn -0.195100 0.000000 0.980800 -vn -0.555600 0.000000 0.831500 -vn -0.831500 0.000000 0.555600 -vn -0.980800 0.000000 0.195100 -vn 1.000000 -0.000000 0.000000 -vn -1.000000 0.000000 0.000000 -vn -0.000000 0.000000 1.000000 -vn 0.000000 -1.000000 0.000000 -vn 0.000000 -0.000000 -1.000000 -vn 0.923900 0.000000 0.382700 -vn 0.382700 0.000000 -0.923900 -vn -0.923900 0.000000 -0.382700 -vn -0.923900 0.000000 0.382700 -vn 0.923900 0.000000 -0.382700 -vn -0.382700 0.000000 0.923900 -vn 0.382700 0.000000 0.923900 -vn -0.382700 0.000000 -0.923900 -vn -0.580700 -0.806900 0.108000 -vn -0.826100 -0.367200 -0.427500 -vn -0.392300 0.362500 -0.845400 -vn 0.252800 0.703100 -0.664600 -vn -0.244600 -0.769100 0.590500 -vn 0.351200 -0.397300 0.847800 -vn 0.853400 0.383100 0.353500 -vn 0.656100 0.704000 -0.271800 -vn 0.653300 0.382700 0.653300 -vn -0.590500 -0.769100 -0.244600 -vn 0.270600 -0.923900 0.270600 -vn -0.653300 -0.382700 -0.653300 -vn -0.270600 0.923900 -0.270600 -vn 0.270600 0.923900 0.270600 -vn 0.653300 -0.382700 0.653300 -vn -0.270600 -0.923900 -0.270600 -vn -0.653300 0.382700 -0.653300 -vn -0.108000 -0.806900 -0.580700 -vn 0.427500 -0.367200 -0.826100 -vn 0.845400 0.362500 -0.392300 -vn 0.664600 0.703100 0.252800 -vn -0.847800 -0.397300 0.351200 -vn -0.353500 0.383100 0.853400 -vn 0.271800 0.704000 0.656100 -vn -0.653300 0.382700 0.653300 -vn 0.653300 0.382700 -0.653300 -vn -0.270600 0.923900 0.270600 -vn 0.653300 -0.382700 -0.653300 -vn 0.270600 -0.923900 -0.270600 -vn 0.270600 0.923900 -0.270600 -vn -0.270600 -0.923900 0.270600 -vn -0.653300 -0.382700 0.653300 -vn 0.108000 -0.806900 0.580700 -vn 0.580700 -0.806900 0.108000 -vn 0.826100 -0.367200 -0.427500 -vn 0.392300 0.362500 -0.845400 -vn -0.427500 -0.367200 0.826100 -vn -0.845400 0.362500 0.392300 -vn -0.664600 0.703100 -0.252700 -vn -0.252800 0.703100 -0.664600 -vn 0.244600 -0.769100 -0.590500 -vn 0.580700 -0.806900 -0.108000 -vn 0.826100 -0.367200 0.427500 -vn 0.392300 0.362500 0.845400 -vn -0.351200 -0.397300 -0.847800 -vn -0.853400 0.383100 -0.353500 -vn -0.656100 0.704000 0.271800 -vn -0.252800 0.703100 0.664600 -vn -0.590500 -0.769100 0.244600 -vn -0.847800 -0.397300 -0.351200 -vn -0.353500 0.383100 -0.853400 -vn 0.271800 0.704000 -0.656100 -vn -0.108000 -0.806900 0.580700 -vn 0.427500 -0.367200 0.826100 -vn 0.845400 0.362500 0.392300 -vn 0.664600 0.703100 -0.252800 -vn -0.580700 -0.806900 -0.108000 -vn -0.244600 -0.769100 -0.590500 -vn 0.351200 -0.397300 -0.847800 -vn 0.853400 0.383100 -0.353500 -vn 0.656100 0.704000 0.271800 -vn -0.826100 -0.367200 0.427500 -vn -0.392300 0.362500 0.845400 -vn 0.252800 0.703100 0.664600 -vn 0.244600 -0.769100 0.590500 -vn 0.590500 -0.769100 0.244600 -vn 0.847800 -0.397300 -0.351200 -vn 0.353500 0.383100 -0.853400 -vn -0.351200 -0.397300 0.847800 -vn -0.853400 0.383100 0.353500 -vn -0.656100 0.704000 -0.271800 -vn -0.271800 0.704000 -0.656100 -vn 0.108000 -0.806900 -0.580700 -vn 0.590500 -0.769100 -0.244600 -vn 0.847800 -0.397300 0.351200 -vn 0.353500 0.383100 0.853400 -vn -0.427500 -0.367200 -0.826100 -vn -0.845400 0.362500 -0.392300 -vn -0.664600 0.703100 0.252800 -vn -0.271800 0.704000 0.656100 -s off -f 13/1/1 347/2/1 346/3/1 -f 36/4/2 37/5/2 65/6/2 -f 185/7/3 186/8/3 28/9/3 -f 183/10/4 185/7/4 27/11/4 -f 184/12/5 183/10/5 25/13/5 -f 198/14/6 184/12/6 26/15/6 -f 197/16/7 198/14/7 40/17/7 -f 196/18/8 197/16/8 39/19/8 -f 195/20/9 196/18/9 38/21/9 -f 194/22/10 195/20/10 37/5/10 -f 193/23/11 194/22/11 36/4/11 -f 192/24/12 193/23/12 35/25/12 -f 191/26/13 192/24/13 34/27/13 -f 190/28/14 191/26/14 33/29/14 -f 189/30/15 190/28/15 32/31/15 -f 188/32/16 189/30/16 31/33/16 -f 187/34/17 188/32/17 30/35/17 -f 232/36/2 14/37/2 245/38/2 -f 50/39/2 21/40/2 20/41/2 -f 22/42/2 21/40/2 50/39/2 -f 6/43/2 51/44/2 219/45/2 -f 6/43/2 221/46/2 223/47/2 -f 41/48/2 9/49/2 24/50/2 -f 10/51/2 9/49/2 41/48/2 -f 237/52/2 16/53/2 235/54/2 -f 235/54/2 16/53/2 15/55/2 -f 44/56/2 13/57/2 12/58/2 -f 14/37/2 13/57/2 44/56/2 -f 46/59/2 245/38/2 14/37/2 -f 16/53/2 237/52/2 48/60/2 -f 47/61/2 17/62/2 16/53/2 -f 18/63/2 17/62/2 47/61/2 -f 15/55/2 14/37/2 232/36/2 -f 73/64/10 72/65/10 87/66/10 -f 30/35/2 58/67/2 57/68/2 -f 37/5/2 38/21/2 66/69/2 -f 31/33/2 59/70/2 58/71/2 -f 38/21/2 39/19/2 67/72/2 -f 32/31/2 60/73/2 59/74/2 -f 40/17/2 68/75/2 67/76/2 -f 32/31/2 33/29/2 61/77/2 -f 25/13/2 53/78/2 54/79/2 -f 26/15/2 54/80/2 68/81/2 -f 33/29/2 34/27/2 62/82/2 -f 27/11/2 55/83/2 53/84/2 -f 35/25/2 63/85/2 62/86/2 -f 28/9/2 56/87/2 55/88/2 -f 35/25/2 36/4/2 64/89/2 -f 29/90/2 57/91/2 56/92/2 -f 76/93/2 78/94/2 72/65/2 -f 81/95/1 80/96/1 85/97/1 -f 58/98/9 74/99/9 73/64/9 -f 66/100/17 82/101/17 81/95/17 -f 59/102/8 75/103/8 74/99/8 -f 67/104/16 83/105/16 82/101/16 -f 60/106/7 76/93/7 75/103/7 -f 68/107/15 84/108/15 83/105/15 -f 61/109/6 77/110/6 76/93/6 -f 53/111/13 69/112/13 70/113/13 -f 54/114/14 70/113/14 84/108/14 -f 62/115/5 78/94/5 77/110/5 -f 88/116/12 71/117/12 69/112/12 -f 86/118/4 79/119/4 78/94/4 -f 85/120/3 86/121/3 63/122/3 -f 56/123/11 87/124/11 88/125/11 -f 81/95/2 83/105/2 70/113/2 -f 88/125/2 87/124/2 86/121/2 -f 87/124/15 72/126/15 79/127/15 -f 71/128/7 88/125/7 85/120/7 -f 97/129/18 94/130/18 93/131/18 -f 157/132/19 164/133/19 165/134/19 -f 89/135/20 90/136/20 151/137/20 -f 95/138/18 91/139/18 92/140/18 -f 98/141/18 92/140/18 2/142/18 -f 94/130/18 97/129/18 1/143/18 -f 96/144/21 95/145/21 106/146/21 -f 99/147/2 111/148/2 108/149/2 -f 97/150/2 107/151/2 112/152/2 -f 108/153/18 111/154/18 110/155/18 -f 107/156/18 105/157/18 109/158/18 -f 110/155/18 109/158/18 105/157/18 -f 104/159/22 112/152/22 109/160/22 -f 96/144/20 105/161/20 107/151/20 -f 50/162/18 51/163/18 95/138/18 -f 102/164/2 109/165/2 110/166/2 -f 100/167/20 110/166/20 111/148/20 -f 98/168/22 108/149/22 106/146/22 -f 398/169/22 397/170/22 394/171/22 -f 120/172/2 114/173/2 126/174/2 -f 115/175/19 125/176/19 123/177/19 -f 125/178/22 130/179/22 128/180/22 -f 129/181/22 127/182/22 126/183/22 -f 124/184/22 123/185/22 128/180/22 -f 116/186/18 124/187/18 126/174/18 -f 118/188/2 130/189/2 125/176/2 -f 121/190/18 128/191/18 130/189/18 -f 122/192/2 129/193/2 128/191/2 -f 120/172/19 127/194/19 129/195/19 -f 139/196/19 136/197/19 411/198/19 -f 411/198/19 412/199/19 140/200/19 -f 132/201/21 131/202/21 142/203/21 -f 140/204/2 145/205/2 146/206/2 -f 138/207/2 134/208/2 144/209/2 -f 407/210/19 135/211/19 137/212/19 -f 138/213/19 140/200/19 412/199/19 -f 142/214/19 146/215/19 145/216/19 -f 143/217/19 147/218/19 146/215/19 -f 145/216/19 148/219/19 144/220/19 -f 138/207/20 148/221/20 145/222/20 -f 133/223/20 143/224/20 142/203/20 -f 136/225/2 147/226/2 143/224/2 -f 133/227/19 131/228/19 8/229/19 -f 132/201/22 141/230/22 144/209/22 -f 139/231/22 146/206/22 147/226/22 -f 150/232/20 92/233/20 91/234/20 -f 153/235/19 159/236/19 163/237/19 -f 149/238/20 154/239/20 151/137/20 -f 150/232/20 155/240/20 2/241/20 -f 162/242/20 165/243/20 164/244/20 -f 160/245/20 166/246/20 163/247/20 -f 150/248/2 163/237/2 166/249/2 -f 158/250/2 160/251/2 164/133/2 -f 151/252/18 162/253/18 161/254/18 -f 156/255/18 166/249/18 160/256/18 -f 48/257/20 7/258/20 152/259/20 -f 154/260/2 165/134/2 162/253/2 -f 137/261/21 113/262/21 103/263/21 -f 20/264/11 354/265/11 353/266/11 -f 12/267/3 346/3/3 345/268/3 -f 19/269/12 353/266/12 352/270/12 -f 11/271/4 345/268/4 343/272/4 -f 18/273/13 352/270/13 351/274/13 -f 9/275/6 344/276/6 358/277/6 -f 10/278/5 343/272/5 344/276/5 -f 17/279/14 351/274/14 350/280/14 -f 24/281/7 358/277/7 357/282/7 -f 16/283/15 350/280/15 349/284/15 -f 23/285/8 357/282/8 356/286/8 -f 15/287/16 349/284/16 348/288/16 -f 22/289/9 356/286/9 355/290/9 -f 14/291/17 348/288/17 347/292/17 -f 21/293/10 355/290/10 354/265/10 -f 350/280/2 351/274/2 333/294/2 -f 186/8/1 187/295/1 29/90/1 -f 181/296/21 168/297/21 188/32/21 -f 168/298/21 167/299/21 189/30/21 -f 167/300/21 171/301/21 190/28/21 -f 171/302/21 173/303/21 191/26/21 -f 173/304/21 176/305/21 192/24/21 -f 176/306/21 178/307/21 193/23/21 -f 178/308/21 180/309/21 194/22/21 -f 194/22/21 180/310/21 182/311/21 -f 182/312/21 170/313/21 196/18/21 -f 196/18/21 170/314/21 169/315/21 -f 197/16/21 169/316/21 172/317/21 -f 172/318/21 175/319/21 184/12/21 -f 184/12/21 175/320/21 174/321/21 -f 183/10/21 174/322/21 177/323/21 -f 185/7/21 177/324/21 179/325/21 -f 186/8/21 179/326/21 181/327/21 -f 236/328/23 238/329/23 237/330/23 -f 239/331/2 48/60/2 237/52/2 -f 202/332/24 204/333/24 203/334/24 -f 244/335/25 246/336/25 245/337/25 -f 226/338/26 228/339/26 227/340/26 -f 204/333/27 206/341/27 205/342/27 -f 240/343/28 242/344/28 241/345/28 -f 224/346/28 226/338/28 225/347/28 -f 206/341/23 208/348/23 207/349/23 -f 242/344/26 244/335/26 243/350/26 -f 222/351/29 224/346/29 223/352/29 -f 208/348/29 210/353/29 209/354/29 -f 7/355/2 48/60/2 239/331/2 -f 220/356/23 222/351/23 221/357/23 -f 210/353/28 212/358/28 211/359/28 -f 228/339/25 230/360/25 229/361/25 -f 218/362/27 220/356/27 219/363/27 -f 212/364/26 214/365/26 213/366/26 -f 243/367/2 245/38/2 46/59/2 -f 216/368/30 202/332/30 201/369/30 -f 214/365/25 216/368/25 215/370/25 -f 238/329/29 240/343/29 239/371/29 -f 230/372/30 199/373/30 200/374/30 -f 199/373/24 218/362/24 217/375/24 -f 234/376/27 236/328/27 235/377/27 -f 246/336/30 231/378/30 232/379/30 -f 231/378/24 234/380/24 233/381/24 -f 252/382/23 254/383/23 253/384/23 -f 260/385/25 262/386/25 261/387/25 -f 256/388/28 258/389/28 257/390/28 -f 258/389/26 260/385/26 259/391/26 -f 7/355/2 241/392/2 243/367/2 -f 254/393/29 256/388/29 255/394/29 -f 250/395/27 252/382/27 251/396/27 -f 262/386/30 247/397/30 248/398/30 -f 247/397/24 250/395/24 249/399/24 -f 223/47/2 225/400/2 49/401/2 -f 219/45/2 51/44/2 217/402/2 -f 51/44/2 20/41/2 217/402/2 -f 217/402/2 20/41/2 200/403/2 -f 200/403/2 20/41/2 19/404/2 -f 49/401/2 225/400/2 18/63/2 -f 225/400/2 227/405/2 18/63/2 -f 19/404/2 18/63/2 227/405/2 -f 8/406/2 261/407/2 248/408/2 -f 8/406/2 45/409/2 259/410/2 -f 259/410/2 45/409/2 257/411/2 -f 248/408/2 249/412/2 42/413/2 -f 42/413/2 249/412/2 10/51/2 -f 45/409/2 12/58/2 257/411/2 -f 257/411/2 12/58/2 255/414/2 -f 249/412/2 251/415/2 10/51/2 -f 11/416/2 10/51/2 251/415/2 -f 255/414/2 12/58/2 11/416/2 -f 5/417/2 203/418/2 205/419/2 -f 5/417/2 43/420/2 201/421/2 -f 201/421/2 43/420/2 215/422/2 -f 205/419/2 207/423/2 52/424/2 -f 52/424/2 207/423/2 22/42/2 -f 43/420/2 24/50/2 215/422/2 -f 207/423/2 209/425/2 22/42/2 -f 23/426/2 22/42/2 209/425/2 -f 215/422/2 24/50/2 213/427/2 -f 213/427/2 24/50/2 23/426/2 -f 212/428/31 267/429/31 266/430/31 -f 214/431/32 266/430/32 265/432/32 -f 216/433/33 265/432/33 264/434/33 -f 202/435/34 264/434/34 263/436/34 -f 212/437/35 210/438/35 268/439/35 -f 210/438/36 208/440/36 269/441/36 -f 208/440/37 206/442/37 270/443/37 -f 206/442/38 204/444/38 263/436/38 -f 269/445/39 270/446/39 278/447/39 -f 230/448/40 228/449/40 282/450/40 -f 268/451/41 276/452/41 275/453/41 -f 266/454/42 274/455/42 273/456/42 -f 263/457/43 264/458/43 271/459/43 -f 270/446/44 263/457/44 272/460/44 -f 268/451/45 269/445/45 277/461/45 -f 267/462/46 275/463/46 274/455/46 -f 265/464/47 273/456/47 271/459/47 -f 230/465/48 281/466/48 280/467/48 -f 199/468/49 280/467/49 279/469/49 -f 218/470/50 279/469/50 286/471/50 -f 220/472/51 286/471/51 285/473/51 -f 228/449/52 226/474/52 283/475/52 -f 226/474/53 224/476/53 284/477/53 -f 224/476/54 222/478/54 285/473/54 -f 283/479/55 284/480/55 287/481/55 -f 286/482/56 279/483/56 292/484/56 -f 284/480/57 285/485/57 293/486/57 -f 279/483/58 280/487/58 290/488/58 -f 281/489/59 289/490/59 290/488/59 -f 286/482/60 294/491/60 293/486/60 -f 282/492/61 291/493/61 289/494/61 -f 283/479/62 288/495/62 291/493/62 -f 254/496/63 297/497/63 298/498/63 -f 296/499/64 297/500/64 254/501/64 -f 295/502/65 296/499/65 252/503/65 -f 302/504/66 295/502/66 250/505/66 -f 256/506/67 298/498/67 299/507/67 -f 258/508/68 299/507/68 300/509/68 -f 260/510/69 300/509/69 301/511/69 -f 301/511/70 302/504/70 247/512/70 -f 297/513/59 296/514/59 306/515/59 -f 234/516/71 231/517/71 316/518/71 -f 302/519/60 301/520/60 309/521/60 -f 297/522/61 305/523/61 307/524/61 -f 299/525/62 298/526/62 307/524/62 -f 299/525/55 304/527/55 303/528/55 -f 302/519/56 310/529/56 308/530/56 -f 301/520/57 300/531/57 303/528/57 -f 295/532/58 308/530/58 306/515/58 -f 234/533/72 315/534/72 314/535/72 -f 236/536/73 314/535/73 313/537/73 -f 238/538/74 313/537/74 312/539/74 -f 231/517/75 246/540/75 317/541/75 -f 246/540/76 244/542/76 318/543/76 -f 244/542/77 242/544/77 311/545/77 -f 240/546/78 312/539/78 311/545/78 -f 315/547/41 320/548/41 323/549/41 -f 316/550/46 319/551/46 320/552/46 -f 318/553/43 311/554/43 324/555/43 -f 317/556/42 325/557/42 319/551/42 -f 311/554/44 312/558/44 322/559/44 -f 312/558/39 313/560/39 321/561/39 -f 318/553/47 326/562/47 325/557/47 -f 313/560/45 314/563/45 323/549/45 -f 351/274/2 352/270/2 336/564/2 -f 336/565/2 352/270/2 353/266/2 -f 353/266/2 354/265/2 340/566/2 -f 354/265/2 355/290/2 342/567/2 -f 355/290/2 356/286/2 330/568/2 -f 330/569/2 356/286/2 357/282/2 -f 329/570/2 357/282/2 358/277/2 -f 332/571/2 358/277/2 344/276/2 -f 335/572/2 344/276/2 343/272/2 -f 343/272/2 345/268/2 337/573/2 -f 337/574/2 345/268/2 346/3/2 -f 346/3/2 347/2/2 341/575/2 -f 347/292/2 348/288/2 328/576/2 -f 349/284/2 350/280/2 331/577/2 -f 348/288/2 349/284/2 327/578/2 -f 341/579/1 181/580/1 179/581/1 -f 328/582/17 168/583/17 181/584/17 -f 327/585/16 167/586/16 168/583/16 -f 331/587/15 171/588/15 167/586/15 -f 333/589/14 173/590/14 171/588/14 -f 336/591/13 176/592/13 173/590/13 -f 338/593/12 178/594/12 176/592/12 -f 340/595/11 180/596/11 178/594/11 -f 342/597/10 182/598/10 180/596/10 -f 330/599/9 170/600/9 182/598/9 -f 329/601/8 169/602/8 170/600/8 -f 332/603/7 172/604/7 169/602/7 -f 335/605/6 175/606/6 172/604/6 -f 334/607/5 174/608/5 175/606/5 -f 337/609/4 177/610/4 174/608/4 -f 339/611/3 179/581/3 177/610/3 -f 382/612/20 384/613/20 386/614/20 -f 376/615/2 371/616/2 370/617/2 -f 365/618/21 377/619/21 378/620/21 -f 366/621/18 378/622/18 364/623/18 -f 374/624/21 369/625/21 363/626/21 -f 363/626/20 364/627/20 378/628/20 -f 371/616/20 378/628/20 377/629/20 -f 369/625/20 372/630/20 364/627/20 -f 369/625/20 370/617/20 377/629/20 -f 374/631/20 373/632/20 158/633/20 -f 156/634/20 373/632/20 376/635/20 -f 155/240/20 376/635/20 380/636/20 -f 374/631/20 157/637/20 154/239/20 -f 375/638/19 372/639/19 377/640/19 -f 373/641/19 363/626/19 371/616/19 -f 379/642/2 364/643/2 372/644/2 -f 380/645/18 370/617/18 369/625/18 -f 413/646/19 410/647/19 408/648/19 -f 366/621/20 379/642/20 375/638/20 -f 368/649/18 359/650/18 382/612/18 -f 361/651/20 389/652/20 387/653/20 -f 359/650/2 383/654/2 384/655/2 -f 360/656/2 387/653/2 388/657/2 -f 367/658/18 100/659/18 99/660/18 -f 103/661/18 360/662/18 362/663/18 -f 104/664/18 361/665/18 360/662/18 -f 367/658/18 361/665/18 102/666/18 -f 388/657/18 386/667/18 384/668/18 -f 388/657/18 387/653/18 385/669/18 -f 383/670/18 385/669/18 387/653/18 -f 383/670/18 389/652/18 390/671/18 -f 367/672/21 390/671/21 389/652/21 -f 381/673/21 386/674/21 385/675/21 -f 368/649/22 385/676/22 383/677/22 -f 362/678/22 388/657/22 390/671/22 -f 398/169/2 400/679/2 399/680/2 -f 393/681/2 404/682/2 403/683/2 -f 396/684/18 406/685/18 404/682/18 -f 392/686/19 402/687/19 400/688/19 -f 403/683/22 401/689/22 399/690/22 -f 401/689/22 403/683/22 404/682/22 -f 406/685/22 405/691/22 399/690/22 -f 406/685/22 400/692/22 402/693/22 -f 397/170/18 399/694/18 401/695/18 -f 391/696/19 403/683/19 405/691/19 -f 395/697/21 405/691/21 406/685/21 -f 394/171/21 401/698/21 402/699/21 -f 414/700/2 415/701/2 417/702/2 -f 412/703/22 419/704/22 420/705/22 -f 409/706/2 420/705/2 421/707/2 -f 410/647/21 422/708/21 416/709/21 -f 135/211/19 136/197/19 133/227/19 -f 137/212/19 3/710/19 134/711/19 -f 134/711/19 3/710/19 90/712/19 -f 132/713/19 46/714/19 44/715/19 -f 421/707/19 422/716/19 417/717/19 -f 416/718/19 422/716/19 421/707/19 -f 420/705/19 419/704/19 415/719/19 -f 419/704/19 418/720/19 417/717/19 -f 413/646/22 417/721/22 422/722/22 -f 407/723/20 421/707/20 418/720/20 -f 411/724/21 418/720/21 419/704/21 -f 408/648/20 416/725/20 415/726/20 -f 124/187/21 116/186/21 117/727/21 -f 159/728/20 161/729/20 164/244/20 -f 153/235/21 152/730/21 161/254/21 -f 393/731/22 391/732/22 113/733/22 -f 121/734/22 395/735/22 396/736/22 -f 118/737/22 391/732/22 395/735/22 -f 393/731/22 119/738/22 120/739/22 -f 119/738/22 4/740/22 114/741/22 -f 113/733/22 118/737/22 115/742/22 -f 94/743/22 115/742/22 117/744/22 -f 41/745/22 117/744/22 116/746/22 -f 114/741/22 4/740/22 8/229/22 -f 12/267/1 13/1/1 346/3/1 -f 64/747/2 36/4/2 65/6/2 -f 27/11/3 185/7/3 28/9/3 -f 25/13/4 183/10/4 27/11/4 -f 26/15/5 184/12/5 25/13/5 -f 40/17/6 198/14/6 26/15/6 -f 39/19/7 197/16/7 40/17/7 -f 38/21/8 196/18/8 39/19/8 -f 37/5/9 195/20/9 38/21/9 -f 36/4/10 194/22/10 37/5/10 -f 35/25/11 193/23/11 36/4/11 -f 34/27/12 192/24/12 35/25/12 -f 33/29/13 191/26/13 34/27/13 -f 32/31/14 190/28/14 33/29/14 -f 31/33/15 189/30/15 32/31/15 -f 30/35/16 188/32/16 31/33/16 -f 29/748/17 187/34/17 30/35/17 -f 51/44/2 50/39/2 20/41/2 -f 52/424/2 22/42/2 50/39/2 -f 221/46/2 6/43/2 219/45/2 -f 49/401/2 6/43/2 223/47/2 -f 43/420/2 41/48/2 24/50/2 -f 42/413/2 10/51/2 41/48/2 -f 233/749/2 235/54/2 15/55/2 -f 45/409/2 44/56/2 12/58/2 -f 46/59/2 14/37/2 44/56/2 -f 48/60/2 47/61/2 16/53/2 -f 49/401/2 18/63/2 47/61/2 -f 233/749/2 15/55/2 232/36/2 -f 87/66/10 56/750/10 57/751/10 -f 57/751/10 73/64/10 87/66/10 -f 29/748/2 30/35/2 57/68/2 -f 65/752/2 37/5/2 66/69/2 -f 30/35/2 31/33/2 58/71/2 -f 66/753/2 38/21/2 67/72/2 -f 31/33/2 32/31/2 59/74/2 -f 39/19/2 40/17/2 67/76/2 -f 60/754/2 32/31/2 61/77/2 -f 26/15/2 25/13/2 54/79/2 -f 40/17/2 26/15/2 68/81/2 -f 61/755/2 33/29/2 62/82/2 -f 25/13/2 27/11/2 53/84/2 -f 34/27/2 35/25/2 62/86/2 -f 27/11/2 28/9/2 55/88/2 -f 63/756/2 35/25/2 64/89/2 -f 28/9/2 29/90/2 56/92/2 -f 72/65/2 73/64/2 74/99/2 -f 74/99/2 75/103/2 76/93/2 -f 76/93/2 77/110/2 78/94/2 -f 78/94/2 79/119/2 72/65/2 -f 72/65/2 74/99/2 76/93/2 -f 85/97/1 64/757/1 65/758/1 -f 65/758/1 81/95/1 85/97/1 -f 57/759/9 58/98/9 73/64/9 -f 65/760/17 66/100/17 81/95/17 -f 58/761/8 59/102/8 74/99/8 -f 66/762/16 67/104/16 82/101/16 -f 59/763/7 60/106/7 75/103/7 -f 67/764/15 68/107/15 83/105/15 -f 60/765/6 61/109/6 76/93/6 -f 54/766/13 53/111/13 70/113/13 -f 68/767/14 54/114/14 84/108/14 -f 61/768/5 62/115/5 77/110/5 -f 69/112/12 53/769/12 88/116/12 -f 55/770/12 88/116/12 53/769/12 -f 78/94/4 62/771/4 86/118/4 -f 63/772/4 86/118/4 62/771/4 -f 64/773/3 85/120/3 63/122/3 -f 55/774/11 56/123/11 88/125/11 -f 70/113/2 69/112/2 71/117/2 -f 71/117/2 80/96/2 81/95/2 -f 81/95/2 82/101/2 83/105/2 -f 83/105/2 84/108/2 70/113/2 -f 70/113/2 71/117/2 81/95/2 -f 85/120/2 88/125/2 86/121/2 -f 86/121/15 87/124/15 79/127/15 -f 80/775/7 71/128/7 85/120/7 -f 96/776/18 97/129/18 93/131/18 -f 154/260/19 157/132/19 165/134/19 -f 152/259/20 89/135/20 151/137/20 -f 98/141/18 95/138/18 92/140/18 -f 2/142/18 101/777/18 98/141/18 -f 99/660/18 98/141/18 101/777/18 -f 103/661/18 1/143/18 97/129/18 -f 97/129/18 104/664/18 103/661/18 -f 105/161/21 96/144/21 106/146/21 -f 98/168/2 99/147/2 108/149/2 -f 104/159/2 97/150/2 112/152/2 -f 106/778/18 108/153/18 110/155/18 -f 112/779/18 107/156/18 109/158/18 -f 106/778/18 110/155/18 105/157/18 -f 102/780/22 104/159/22 109/160/22 -f 97/150/20 96/144/20 107/151/20 -f 96/776/18 93/131/18 5/781/18 -f 5/781/18 52/782/18 96/776/18 -f 51/163/18 6/783/18 95/138/18 -f 52/782/18 50/162/18 96/776/18 -f 95/138/18 96/776/18 50/162/18 -f 6/783/18 91/139/18 95/138/18 -f 100/167/2 102/164/2 110/166/2 -f 99/147/20 100/167/20 111/148/20 -f 95/145/22 98/168/22 106/146/22 -f 392/686/22 398/169/22 394/171/22 -f 127/194/2 120/172/2 126/174/2 -f 117/727/19 115/175/19 123/177/19 -f 123/185/22 125/178/22 128/180/22 -f 124/184/22 129/181/22 126/183/22 -f 129/181/22 124/184/22 128/180/22 -f 114/173/18 116/186/18 126/174/18 -f 115/175/2 118/188/2 125/176/2 -f 118/188/18 121/190/18 130/189/18 -f 121/190/2 122/192/2 128/191/2 -f 122/784/19 120/172/19 129/195/19 -f 407/210/19 411/198/19 136/197/19 -f 136/197/19 135/211/19 407/210/19 -f 139/196/19 411/198/19 140/200/19 -f 141/230/21 132/201/21 142/203/21 -f 139/231/2 140/204/2 146/206/2 -f 148/221/2 138/207/2 144/209/2 -f 409/785/19 407/210/19 137/212/19 -f 412/199/19 409/785/19 138/213/19 -f 137/212/19 138/213/19 409/785/19 -f 141/786/19 142/214/19 145/216/19 -f 142/214/19 143/217/19 146/215/19 -f 141/786/19 145/216/19 144/220/19 -f 140/787/20 138/207/20 145/222/20 -f 131/202/20 133/223/20 142/203/20 -f 133/223/2 136/225/2 143/224/2 -f 4/740/19 133/227/19 8/229/19 -f 134/208/22 132/201/22 144/209/22 -f 136/225/22 139/231/22 147/226/22 -f 153/788/20 150/232/20 91/234/20 -f 150/248/19 153/235/19 163/237/19 -f 151/137/20 90/136/20 3/789/20 -f 3/789/20 149/238/20 151/137/20 -f 2/241/20 92/233/20 150/232/20 -f 150/232/20 156/634/20 155/240/20 -f 161/729/20 162/242/20 164/244/20 -f 159/728/20 160/245/20 163/247/20 -f 156/255/2 150/248/2 166/249/2 -f 157/132/2 158/250/2 164/133/2 -f 152/730/18 151/252/18 161/254/18 -f 158/790/18 156/255/18 160/256/18 -f 153/788/20 91/234/20 6/791/20 -f 6/791/20 49/792/20 153/788/20 -f 47/793/20 48/257/20 152/259/20 -f 7/258/20 89/135/20 152/259/20 -f 152/259/20 153/788/20 47/793/20 -f 49/792/20 47/793/20 153/788/20 -f 151/252/2 154/260/2 162/253/2 -f 101/794/21 2/795/21 155/796/21 -f 155/796/21 149/797/21 137/261/21 -f 137/261/21 135/798/21 119/799/21 -f 149/797/21 3/800/21 137/261/21 -f 103/263/21 101/794/21 155/796/21 -f 113/262/21 1/801/21 103/263/21 -f 135/798/21 4/802/21 119/799/21 -f 119/799/21 113/262/21 137/261/21 -f 103/263/21 155/796/21 137/261/21 -f 19/269/11 20/264/11 353/266/11 -f 11/271/3 12/267/3 345/268/3 -f 18/273/12 19/269/12 352/270/12 -f 10/278/4 11/271/4 343/272/4 -f 17/279/13 18/273/13 351/274/13 -f 24/281/6 9/275/6 358/277/6 -f 9/275/5 10/278/5 344/276/5 -f 16/283/14 17/279/14 350/280/14 -f 23/285/7 24/281/7 357/282/7 -f 15/287/15 16/283/15 349/284/15 -f 22/289/8 23/285/8 356/286/8 -f 14/291/16 15/287/16 348/288/16 -f 21/293/9 22/289/9 355/290/9 -f 13/803/17 14/291/17 347/292/17 -f 20/264/10 21/293/10 354/265/10 -f 331/804/2 350/280/2 333/294/2 -f 28/9/1 186/8/1 29/90/1 -f 187/34/21 181/296/21 188/32/21 -f 188/32/21 168/298/21 189/30/21 -f 189/30/21 167/300/21 190/28/21 -f 190/28/21 171/302/21 191/26/21 -f 191/26/21 173/304/21 192/24/21 -f 192/24/21 176/306/21 193/23/21 -f 193/23/21 178/308/21 194/22/21 -f 195/20/21 194/22/21 182/311/21 -f 195/20/21 182/312/21 196/18/21 -f 197/16/21 196/18/21 169/315/21 -f 198/14/21 197/16/21 172/317/21 -f 198/14/21 172/318/21 184/12/21 -f 183/10/21 184/12/21 174/321/21 -f 185/7/21 183/10/21 177/323/21 -f 186/8/21 185/7/21 179/325/21 -f 187/295/21 186/8/21 181/327/21 -f 235/377/23 236/328/23 237/330/23 -f 201/369/24 202/332/24 203/334/24 -f 243/350/25 244/335/25 245/337/25 -f 225/347/26 226/338/26 227/340/26 -f 203/334/27 204/333/27 205/342/27 -f 239/371/28 240/343/28 241/345/28 -f 223/352/28 224/346/28 225/347/28 -f 205/342/23 206/341/23 207/349/23 -f 241/345/26 242/344/26 243/350/26 -f 221/357/29 222/351/29 223/352/29 -f 207/349/29 208/348/29 209/354/29 -f 241/392/2 7/355/2 239/331/2 -f 219/363/23 220/356/23 221/357/23 -f 209/354/28 210/353/28 211/359/28 -f 227/340/25 228/339/25 229/361/25 -f 217/375/27 218/362/27 219/363/27 -f 211/805/26 212/364/26 213/366/26 -f 215/370/30 216/368/30 201/369/30 -f 213/366/25 214/365/25 215/370/25 -f 237/330/29 238/329/29 239/371/29 -f 229/806/30 230/372/30 200/374/30 -f 200/374/24 199/373/24 217/375/24 -f 233/807/27 234/376/27 235/377/27 -f 245/337/30 246/336/30 232/379/30 -f 232/379/24 231/378/24 233/381/24 -f 251/396/23 252/382/23 253/384/23 -f 259/391/25 260/385/25 261/387/25 -f 255/394/28 256/388/28 257/390/28 -f 257/390/26 258/389/26 259/391/26 -f 46/59/2 7/355/2 243/367/2 -f 253/808/29 254/393/29 255/394/29 -f 249/399/27 250/395/27 251/396/27 -f 261/387/30 262/386/30 248/398/30 -f 248/398/24 247/397/24 249/399/24 -f 229/809/2 200/403/2 19/404/2 -f 229/809/2 19/404/2 227/405/2 -f 42/413/2 8/406/2 248/408/2 -f 261/407/2 8/406/2 259/410/2 -f 253/810/2 11/416/2 251/415/2 -f 253/810/2 255/414/2 11/416/2 -f 52/424/2 5/417/2 205/419/2 -f 203/418/2 5/417/2 201/421/2 -f 211/811/2 23/426/2 209/425/2 -f 211/811/2 213/427/2 23/426/2 -f 214/431/79 212/428/79 266/430/79 -f 216/433/80 214/431/80 265/432/80 -f 202/435/81 216/433/81 264/434/81 -f 204/444/82 202/435/82 263/436/82 -f 267/812/83 212/437/83 268/439/83 -f 268/439/84 210/438/84 269/441/84 -f 269/441/85 208/440/85 270/443/85 -f 270/443/86 206/442/86 263/436/86 -f 277/461/39 269/445/39 278/447/39 -f 281/813/87 230/448/87 282/450/87 -f 267/814/41 268/451/41 275/453/41 -f 265/464/42 266/454/42 273/456/42 -f 272/460/43 263/457/43 271/459/43 -f 278/447/44 270/446/44 272/460/44 -f 276/452/45 268/451/45 277/461/45 -f 266/454/46 267/462/46 274/455/46 -f 264/458/47 265/464/47 271/459/47 -f 199/468/88 230/465/88 280/467/88 -f 218/470/89 199/468/89 279/469/89 -f 220/472/90 218/470/90 286/471/90 -f 222/478/91 220/472/91 285/473/91 -f 282/450/92 228/449/92 283/475/92 -f 283/475/93 226/474/93 284/477/93 -f 284/477/94 224/476/94 285/473/94 -f 288/495/55 283/479/55 287/481/55 -f 294/491/56 286/482/56 292/484/56 -f 287/481/57 284/480/57 293/486/57 -f 292/484/58 279/483/58 290/488/58 -f 280/487/59 281/489/59 290/488/59 -f 285/485/60 286/482/60 293/486/60 -f 281/815/61 282/492/61 289/494/61 -f 282/492/62 283/479/62 291/493/62 -f 256/506/95 254/496/95 298/498/95 -f 252/503/96 296/499/96 254/501/96 -f 250/505/97 295/502/97 252/503/97 -f 247/512/98 302/504/98 250/505/98 -f 258/508/99 256/506/99 299/507/99 -f 260/510/100 258/508/100 300/509/100 -f 262/816/101 260/510/101 301/511/101 -f 262/816/102 301/511/102 247/512/102 -f 305/817/59 297/513/59 306/515/59 -f 315/818/103 234/516/103 316/518/103 -f 310/529/60 302/519/60 309/521/60 -f 298/526/61 297/522/61 307/524/61 -f 304/527/62 299/525/62 307/524/62 -f 300/531/55 299/525/55 303/528/55 -f 295/532/56 302/519/56 308/530/56 -f 309/521/57 301/520/57 303/528/57 -f 296/514/58 295/532/58 306/515/58 -f 236/536/104 234/533/104 314/535/104 -f 238/538/105 236/536/105 313/537/105 -f 240/546/106 238/538/106 312/539/106 -f 316/518/107 231/517/107 317/541/107 -f 317/541/108 246/540/108 318/543/108 -f 318/543/109 244/542/109 311/545/109 -f 242/544/110 240/546/110 311/545/110 -f 314/563/41 315/547/41 323/549/41 -f 315/819/46 316/550/46 320/552/46 -f 326/562/43 318/553/43 324/555/43 -f 316/550/42 317/556/42 319/551/42 -f 324/555/44 311/554/44 322/559/44 -f 322/559/39 312/558/39 321/561/39 -f 317/556/47 318/553/47 325/557/47 -f 321/561/45 313/560/45 323/549/45 -f 333/820/2 351/274/2 336/564/2 -f 338/821/2 336/565/2 353/266/2 -f 338/822/2 353/266/2 340/566/2 -f 340/823/2 354/265/2 342/567/2 -f 342/824/2 355/290/2 330/568/2 -f 329/825/2 330/569/2 357/282/2 -f 332/826/2 329/570/2 358/277/2 -f 335/827/2 332/571/2 344/276/2 -f 334/828/2 335/572/2 343/272/2 -f 334/829/2 343/272/2 337/573/2 -f 339/830/2 337/574/2 346/3/2 -f 339/831/2 346/3/2 341/575/2 -f 341/832/2 347/292/2 328/576/2 -f 327/833/2 349/284/2 331/577/2 -f 328/834/2 348/288/2 327/578/2 -f 339/611/1 341/579/1 179/581/1 -f 341/835/17 328/582/17 181/584/17 -f 328/582/16 327/585/16 168/583/16 -f 327/585/15 331/587/15 167/586/15 -f 331/587/14 333/589/14 171/588/14 -f 333/589/13 336/591/13 173/590/13 -f 336/591/12 338/593/12 176/592/12 -f 338/593/11 340/595/11 178/594/11 -f 340/595/10 342/597/10 180/596/10 -f 342/597/9 330/599/9 182/598/9 -f 330/599/8 329/601/8 170/600/8 -f 329/601/7 332/603/7 169/602/7 -f 332/603/6 335/605/6 172/604/6 -f 335/605/5 334/607/5 175/606/5 -f 334/607/4 337/609/4 174/608/4 -f 337/609/3 339/611/3 177/610/3 -f 381/673/20 382/612/20 386/614/20 -f 380/836/2 376/615/2 370/617/2 -f 366/621/21 365/618/21 378/620/21 -f 379/642/18 366/621/18 364/623/18 -f 373/837/21 374/624/21 363/626/21 -f 371/616/20 363/626/20 378/628/20 -f 370/617/20 371/616/20 377/629/20 -f 363/626/20 369/625/20 364/627/20 -f 372/630/20 369/625/20 377/629/20 -f 157/637/20 374/631/20 158/633/20 -f 376/635/20 155/240/20 156/634/20 -f 156/634/20 158/633/20 373/632/20 -f 149/238/20 155/240/20 380/636/20 -f 154/239/20 149/238/20 380/636/20 -f 380/636/20 374/631/20 154/239/20 -f 365/618/19 375/638/19 377/640/19 -f 376/838/19 373/641/19 371/616/19 -f 375/638/2 379/642/2 372/644/2 -f 374/839/18 380/645/18 369/625/18 -f 414/700/19 413/646/19 408/648/19 -f 365/618/20 366/621/20 375/638/20 -f 381/673/18 368/649/18 382/612/18 -f 360/840/20 361/651/20 387/653/20 -f 382/612/2 359/650/2 384/655/2 -f 362/841/2 360/656/2 388/657/2 -f 99/660/18 101/777/18 362/663/18 -f 362/663/18 367/658/18 99/660/18 -f 101/777/18 103/661/18 362/663/18 -f 360/662/18 103/661/18 104/664/18 -f 104/664/18 102/666/18 361/665/18 -f 100/659/18 367/658/18 102/666/18 -f 390/671/18 388/657/18 384/668/18 -f 386/667/18 388/657/18 385/669/18 -f 389/652/18 383/670/18 387/653/18 -f 384/668/18 383/670/18 390/671/18 -f 361/842/21 367/672/21 389/652/21 -f 368/649/21 381/673/21 385/675/21 -f 359/650/22 368/649/22 383/677/22 -f 367/843/22 362/678/22 390/671/22 -f 397/170/2 398/169/2 399/680/2 -f 391/844/2 393/681/2 403/683/2 -f 393/845/18 396/684/18 404/682/18 -f 398/169/19 392/686/19 400/688/19 -f 405/691/22 403/683/22 399/690/22 -f 402/693/22 401/689/22 404/682/22 -f 400/692/22 406/685/22 399/690/22 -f 404/682/22 406/685/22 402/693/22 -f 394/171/18 397/170/18 401/695/18 -f 395/846/19 391/696/19 405/691/19 -f 396/847/21 395/697/21 406/685/21 -f 392/686/21 394/171/21 402/699/21 -f 413/646/2 414/700/2 417/702/2 -f 409/848/22 412/703/22 420/705/22 -f 407/849/2 409/706/2 421/707/2 -f 408/648/21 410/647/21 416/709/21 -f 4/740/19 135/211/19 133/227/19 -f 138/213/19 137/212/19 134/711/19 -f 89/850/19 7/851/19 132/713/19 -f 132/713/19 134/711/19 90/712/19 -f 90/712/19 89/850/19 132/713/19 -f 44/715/19 45/852/19 131/228/19 -f 8/229/19 131/228/19 45/852/19 -f 132/713/19 7/851/19 46/714/19 -f 44/715/19 131/228/19 132/713/19 -f 418/720/19 421/707/19 417/717/19 -f 420/705/19 416/718/19 421/707/19 -f 416/718/19 420/705/19 415/719/19 -f 415/719/19 419/704/19 417/717/19 -f 410/647/22 413/646/22 422/722/22 -f 411/853/20 407/723/20 418/720/20 -f 412/854/21 411/724/21 419/704/21 -f 414/700/20 408/648/20 415/726/20 -f 123/177/21 124/187/21 117/727/21 -f 160/245/20 159/728/20 164/244/20 -f 159/236/21 153/235/21 161/254/21 -f 119/738/22 393/731/22 113/733/22 -f 122/855/22 121/734/22 396/736/22 -f 395/735/22 121/734/22 118/737/22 -f 118/737/22 113/733/22 391/732/22 -f 120/739/22 122/855/22 396/736/22 -f 396/736/22 393/731/22 120/739/22 -f 120/739/22 119/738/22 114/741/22 -f 1/856/22 113/733/22 115/742/22 -f 117/744/22 5/857/22 93/858/22 -f 93/858/22 94/743/22 117/744/22 -f 1/856/22 115/742/22 94/743/22 -f 8/229/22 42/859/22 116/746/22 -f 41/745/22 43/860/22 117/744/22 -f 5/857/22 117/744/22 43/860/22 -f 116/746/22 42/859/22 41/745/22 -f 116/746/22 114/741/22 8/229/22 diff --git a/src/main/resources/assets/hbm/models/error.obj b/src/main/resources/assets/hbm/models/error.obj deleted file mode 100644 index e948f3e60..000000000 --- a/src/main/resources/assets/hbm/models/error.obj +++ /dev/null @@ -1,2909 +0,0 @@ -# Blender v2.76 (sub 0) OBJ File: 'error.blend' -# www.blender.org -o Text_Mesh -v -0.125000 -0.000000 -0.643408 -v -0.125000 -0.000000 -0.745792 -v -0.125000 0.234222 -0.745792 -v -0.125000 0.247672 -0.751697 -v -0.125000 0.259659 -0.758142 -v -0.125000 0.270238 -0.765055 -v -0.125000 0.279466 -0.772362 -v -0.125000 0.287399 -0.779991 -v -0.125000 0.294092 -0.787868 -v -0.125000 0.299602 -0.795920 -v -0.125000 0.303984 -0.804075 -v -0.125000 0.307295 -0.812259 -v -0.125000 0.309591 -0.820399 -v -0.125000 0.310927 -0.828422 -v -0.125000 0.311360 -0.836255 -v -0.125000 0.311317 -0.840189 -v -0.125000 0.311185 -0.843943 -v -0.125000 0.310966 -0.847541 -v -0.125000 0.310659 -0.851008 -v -0.125000 0.310265 -0.854367 -v -0.125000 0.309783 -0.857644 -v -0.125000 0.309213 -0.860862 -v -0.125000 0.308555 -0.864046 -v -0.125000 0.307810 -0.867220 -v -0.125000 0.306978 -0.870409 -v -0.125000 0.306057 -0.873637 -v -0.125000 0.305049 -0.876928 -v -0.125000 0.394109 -0.895161 -v -0.125000 0.395306 -0.892161 -v -0.125000 0.396437 -0.889103 -v -0.125000 0.397495 -0.885957 -v -0.125000 0.398473 -0.882694 -v -0.125000 0.399363 -0.879286 -v -0.125000 0.400158 -0.875701 -v -0.125000 0.400850 -0.871913 -v -0.125000 0.401434 -0.867890 -v -0.125000 0.401900 -0.863605 -v -0.125000 0.402242 -0.859027 -v -0.125000 0.402453 -0.854128 -v -0.125000 0.402524 -0.848878 -v -0.125000 0.401943 -0.838689 -v -0.125000 0.400210 -0.828493 -v -0.125000 0.397342 -0.818340 -v -0.125000 0.393356 -0.808283 -v -0.125000 0.388270 -0.798371 -v -0.125000 0.382100 -0.788657 -v -0.125000 0.374864 -0.779191 -v -0.125000 0.366578 -0.770025 -v -0.125000 0.357260 -0.761209 -v -0.125000 0.346927 -0.752795 -v -0.125000 0.335595 -0.744834 -v -0.125000 0.323282 -0.737377 -v -0.125000 0.323282 -0.734572 -v -0.125000 0.392707 -0.727560 -v -0.125000 0.392707 -0.643408 -v -0.125000 -0.009818 -0.368513 -v -0.125000 -0.008252 -0.392849 -v -0.125000 -0.003607 -0.416576 -v -0.125000 0.004043 -0.439407 -v -0.125000 0.014623 -0.461054 -v -0.125000 0.028056 -0.481231 -v -0.125000 0.044267 -0.499649 -v -0.125000 0.063181 -0.516023 -v -0.125000 0.084723 -0.530063 -v -0.125000 0.108816 -0.541484 -v -0.125000 0.135386 -0.549997 -v -0.125000 0.164356 -0.555316 -v -0.125000 0.195652 -0.557153 -v -0.125000 0.227270 -0.555316 -v -0.125000 0.256509 -0.549997 -v -0.125000 0.283299 -0.541484 -v -0.125000 0.307568 -0.530063 -v -0.125000 0.329247 -0.516023 -v -0.125000 0.348264 -0.499649 -v -0.125000 0.364550 -0.481231 -v -0.125000 0.378032 -0.461054 -v -0.125000 0.388642 -0.439407 -v -0.125000 0.396307 -0.416576 -v -0.125000 0.400958 -0.392849 -v -0.125000 0.402525 -0.368513 -v -0.125000 0.400958 -0.344178 -v -0.125000 0.396307 -0.320451 -v -0.125000 0.388642 -0.297620 -v -0.125000 0.378032 -0.275973 -v -0.125000 0.364550 -0.255796 -v -0.125000 0.348264 -0.237377 -v -0.125000 0.329247 -0.221004 -v -0.125000 0.307568 -0.206963 -v -0.125000 0.283299 -0.195543 -v -0.125000 0.256509 -0.187029 -v -0.125000 0.227270 -0.181710 -v -0.125000 0.195652 -0.179874 -v -0.125000 0.164356 -0.181710 -v -0.125000 0.135386 -0.187029 -v -0.125000 0.108816 -0.195543 -v -0.125000 0.084723 -0.206963 -v -0.125000 0.063181 -0.221004 -v -0.125000 0.044267 -0.237377 -v -0.125000 0.028056 -0.255796 -v -0.125000 0.014623 -0.275973 -v -0.125000 0.004043 -0.297620 -v -0.125000 -0.003607 -0.320451 -v -0.125000 -0.008252 -0.344178 -v -0.125000 0.074334 -0.368513 -v -0.125000 0.075315 -0.355675 -v -0.125000 0.078207 -0.343826 -v -0.125000 0.082935 -0.332990 -v -0.125000 0.089424 -0.323191 -v -0.125000 0.097598 -0.314454 -v -0.125000 0.107381 -0.306802 -v -0.125000 0.118698 -0.300261 -v -0.125000 0.131474 -0.294855 -v -0.125000 0.145632 -0.290607 -v -0.125000 0.161099 -0.287543 -v -0.125000 0.177797 -0.285687 -v -0.125000 0.195652 -0.285063 -v -0.125000 0.213682 -0.285687 -v -0.125000 0.230553 -0.287543 -v -0.125000 0.246187 -0.290607 -v -0.125000 0.260506 -0.294855 -v -0.125000 0.273432 -0.300261 -v -0.125000 0.284888 -0.306802 -v -0.125000 0.294795 -0.314454 -v -0.125000 0.303075 -0.323191 -v -0.125000 0.309651 -0.332990 -v -0.125000 0.314445 -0.343826 -v -0.125000 0.317378 -0.355675 -v -0.125000 0.318373 -0.368513 -v -0.125000 0.317378 -0.381351 -v -0.125000 0.314445 -0.393200 -v -0.125000 0.309651 -0.404037 -v -0.125000 0.303075 -0.413836 -v -0.125000 0.294795 -0.422573 -v -0.125000 0.284888 -0.430224 -v -0.125000 0.273432 -0.436765 -v -0.125000 0.260506 -0.442172 -v -0.125000 0.246187 -0.446419 -v -0.125000 0.230553 -0.449483 -v -0.125000 0.213682 -0.451339 -v -0.125000 0.195652 -0.451963 -v -0.125000 0.177797 -0.451339 -v -0.125000 0.161099 -0.449483 -v -0.125000 0.145632 -0.446419 -v -0.125000 0.131474 -0.442172 -v -0.125000 0.118698 -0.436765 -v -0.125000 0.107381 -0.430224 -v -0.125000 0.097598 -0.422573 -v -0.125000 0.089424 -0.413836 -v -0.125000 0.082935 -0.404037 -v -0.125000 0.078207 -0.393200 -v -0.125000 0.075315 -0.381351 -v -0.125000 0.000000 0.101332 -v -0.125000 -0.000000 -0.001052 -v -0.125000 0.234222 -0.001052 -v -0.125000 0.247672 -0.006957 -v -0.125000 0.259659 -0.013402 -v -0.125000 0.270238 -0.020315 -v -0.125000 0.279466 -0.027622 -v -0.125000 0.287399 -0.035251 -v -0.125000 0.294092 -0.043128 -v -0.125000 0.299602 -0.051180 -v -0.125000 0.303984 -0.059335 -v -0.125000 0.307295 -0.067518 -v -0.125000 0.309591 -0.075658 -v -0.125000 0.310927 -0.083682 -v -0.125000 0.311360 -0.091515 -v -0.125000 0.311317 -0.095449 -v -0.125000 0.311185 -0.099203 -v -0.125000 0.310966 -0.102801 -v -0.125000 0.310659 -0.106267 -v -0.125000 0.310265 -0.109627 -v -0.125000 0.309783 -0.112903 -v -0.125000 0.309213 -0.116121 -v -0.125000 0.308555 -0.119305 -v -0.125000 0.307810 -0.122480 -v -0.125000 0.306978 -0.125669 -v -0.125000 0.306057 -0.128897 -v -0.125000 0.305049 -0.132188 -v -0.125000 0.394109 -0.150421 -v -0.125000 0.395306 -0.147421 -v -0.125000 0.396437 -0.144363 -v -0.125000 0.397495 -0.141217 -v -0.125000 0.398473 -0.137954 -v -0.125000 0.399363 -0.134545 -v -0.125000 0.400158 -0.130961 -v -0.125000 0.400851 -0.127172 -v -0.125000 0.401434 -0.123149 -v -0.125000 0.401900 -0.118864 -v -0.125000 0.402242 -0.114286 -v -0.125000 0.402453 -0.109387 -v -0.125000 0.402525 -0.104137 -v -0.125000 0.401943 -0.093948 -v -0.125000 0.400210 -0.083752 -v -0.125000 0.397342 -0.073600 -v -0.125000 0.393356 -0.063542 -v -0.125000 0.388270 -0.053631 -v -0.125000 0.382100 -0.043917 -v -0.125000 0.374864 -0.034451 -v -0.125000 0.366578 -0.025284 -v -0.125000 0.357260 -0.016469 -v -0.125000 0.346927 -0.008055 -v -0.125000 0.335595 -0.000094 -v -0.125000 0.323282 0.007363 -v -0.125000 0.323282 0.010168 -v -0.125000 0.392707 0.017181 -v -0.125000 0.392707 0.101332 -v -0.125000 0.000000 0.407083 -v -0.125000 0.000000 0.304698 -v -0.125000 0.234222 0.304698 -v -0.125000 0.247672 0.298794 -v -0.125000 0.259659 0.292348 -v -0.125000 0.270238 0.285436 -v -0.125000 0.279466 0.278128 -v -0.125000 0.287399 0.270500 -v -0.125000 0.294092 0.262623 -v -0.125000 0.299602 0.254570 -v -0.125000 0.303984 0.246416 -v -0.125000 0.307295 0.238232 -v -0.125000 0.309591 0.230092 -v -0.125000 0.310927 0.222069 -v -0.125000 0.311360 0.214236 -v -0.125000 0.311317 0.210302 -v -0.125000 0.311185 0.206548 -v -0.125000 0.310966 0.202950 -v -0.125000 0.310659 0.199483 -v -0.125000 0.310265 0.196124 -v -0.125000 0.309783 0.192847 -v -0.125000 0.309213 0.189629 -v -0.125000 0.308555 0.186445 -v -0.125000 0.307810 0.183270 -v -0.125000 0.306978 0.180082 -v -0.125000 0.306057 0.176854 -v -0.125000 0.305049 0.173562 -v -0.125000 0.394109 0.155330 -v -0.125000 0.395306 0.158329 -v -0.125000 0.396437 0.161388 -v -0.125000 0.397495 0.164534 -v -0.125000 0.398473 0.167796 -v -0.125000 0.399363 0.171205 -v -0.125000 0.400158 0.174790 -v -0.125000 0.400851 0.178578 -v -0.125000 0.401434 0.182601 -v -0.125000 0.401900 0.186886 -v -0.125000 0.402242 0.191464 -v -0.125000 0.402453 0.196363 -v -0.125000 0.402525 0.201613 -v -0.125000 0.401943 0.211802 -v -0.125000 0.400210 0.221998 -v -0.125000 0.397342 0.232151 -v -0.125000 0.393356 0.242208 -v -0.125000 0.388270 0.252120 -v -0.125000 0.382100 0.261834 -v -0.125000 0.374864 0.271300 -v -0.125000 0.366578 0.280466 -v -0.125000 0.357260 0.289282 -v -0.125000 0.346927 0.297696 -v -0.125000 0.335595 0.305657 -v -0.125000 0.323282 0.313114 -v -0.125000 0.323282 0.315919 -v -0.125000 0.392707 0.322931 -v -0.125000 0.392707 0.407083 -v -0.125000 0.000000 0.829944 -v -0.125000 0.000000 0.503857 -v -0.125000 0.086957 0.503857 -v -0.125000 0.086957 0.726157 -v -0.125000 0.225807 0.726157 -v -0.125000 0.225806 0.543829 -v -0.125000 0.312763 0.543829 -v -0.125000 0.312763 0.726157 -v -0.125000 0.432679 0.726157 -v -0.125000 0.432679 0.511571 -v -0.125000 0.518934 0.511571 -v -0.125000 0.518934 0.829944 -v 0.125000 0.364550 -0.255796 -v 0.125000 0.348264 -0.237377 -v 0.125000 0.311185 -0.099203 -v 0.125000 0.310966 -0.102801 -v 0.125000 0.014623 -0.461054 -v 0.125000 0.014623 -0.275973 -v 0.125000 0.000000 0.503857 -v 0.125000 0.086957 0.503857 -v 0.125000 0.398473 0.167797 -v 0.125000 0.397342 0.232151 -v 0.125000 0.401900 -0.118864 -v 0.125000 0.400210 -0.083752 -v 0.125000 0.164356 -0.181710 -v 0.125000 0.135386 -0.187029 -v 0.125000 0.294092 -0.043128 -v 0.125000 0.299602 -0.051180 -v 0.125000 0.074334 -0.368513 -v 0.125000 0.075315 -0.381351 -v 0.125000 0.063181 -0.221004 -v 0.125000 0.388642 -0.439407 -v 0.125000 0.396307 -0.416576 -v 0.125000 0.305049 -0.876928 -v 0.125000 0.374864 -0.779191 -v 0.125000 0.305049 0.173562 -v 0.125000 0.357260 0.289282 -v 0.125000 0.306978 -0.125669 -v 0.125000 0.306057 -0.128897 -v 0.125000 0.227270 -0.555316 -v 0.125000 0.256509 -0.549997 -v 0.125000 0.000000 0.407083 -v 0.125000 0.392707 0.407083 -v 0.125000 0.399363 -0.134545 -v 0.125000 0.400158 -0.130961 -v 0.125000 0.401434 -0.867890 -v 0.125000 0.400210 -0.828493 -v 0.125000 0.309783 -0.112903 -v 0.125000 0.335595 -0.000094 -v 0.125000 0.082935 -0.332990 -v 0.125000 0.089424 -0.323191 -v 0.125000 0.131474 -0.442172 -v 0.125000 0.118698 -0.436765 -v 0.125000 0.329247 -0.516023 -v 0.125000 0.329247 -0.221004 -v 0.125000 -0.000000 0.101332 -v 0.125000 -0.000000 -0.001052 -v 0.125000 0.028056 -0.255796 -v 0.125000 0.318373 -0.368513 -v 0.125000 0.260506 -0.442172 -v 0.125000 0.246187 -0.446419 -v 0.125000 0.177797 -0.285687 -v 0.125000 0.195652 -0.285063 -v 0.125000 0.378032 -0.461054 -v 0.125000 0.294795 -0.314454 -v 0.125000 0.303075 -0.323191 -v 0.125000 0.108816 -0.541484 -v 0.125000 0.366578 -0.770025 -v 0.125000 0.310927 0.222069 -v 0.125000 0.311360 0.214236 -v 0.125000 0.305049 -0.132188 -v 0.125000 0.382100 -0.043917 -v 0.125000 0.394109 -0.150421 -v 0.125000 0.393356 -0.063542 -v 0.125000 0.402453 -0.854128 -v 0.125000 0.402524 -0.848878 -v 0.125000 0.270238 0.285436 -v 0.125000 0.279466 0.278128 -v 0.125000 0.323282 0.010168 -v 0.125000 0.392707 0.017181 -v 0.125000 0.084723 -0.530063 -v 0.125000 0.089424 -0.413836 -v 0.125000 0.063181 -0.516023 -v 0.125000 0.084723 -0.206963 -v 0.125000 0.107381 -0.306802 -v 0.125000 0.309783 -0.857644 -v 0.125000 0.335595 -0.744834 -v 0.125000 0.396437 0.161388 -v 0.125000 0.397495 0.164534 -v 0.125000 0.401943 -0.093948 -v 0.125000 0.161099 -0.287543 -v 0.125000 0.388270 -0.053631 -v 0.125000 0.311185 -0.843943 -v 0.125000 0.310966 -0.847541 -v 0.125000 0.311185 0.206548 -v 0.125000 0.323282 0.313114 -v 0.125000 0.306978 -0.870409 -v 0.125000 0.306057 -0.873637 -v 0.125000 0.307568 -0.206963 -v 0.125000 0.314445 -0.343826 -v 0.125000 0.225807 0.726157 -v 0.125000 0.225806 0.543829 -v 0.125000 0.283299 -0.541484 -v 0.125000 0.294795 -0.422573 -v 0.125000 0.309591 -0.820399 -v 0.125000 0.323282 -0.737377 -v 0.125000 0.294092 -0.787868 -v 0.125000 0.299602 -0.795920 -v 0.125000 0.309591 0.230092 -v 0.125000 0.309213 0.189629 -v 0.125000 0.308555 0.186445 -v 0.125000 0.382100 0.261834 -v 0.125000 0.374864 0.271300 -v 0.125000 0.402453 0.196363 -v 0.125000 0.401943 0.211802 -v 0.125000 0.311317 -0.095449 -v 0.125000 0.323282 0.007363 -v 0.125000 0.402242 0.191464 -v 0.125000 -0.000000 -0.643408 -v 0.125000 -0.000000 -0.745792 -v 0.125000 0.294092 0.262623 -v 0.125000 0.309213 -0.116121 -v 0.125000 0.308555 -0.119305 -v 0.125000 0.378032 -0.275973 -v 0.125000 0.323282 0.315919 -v 0.125000 -0.003607 -0.416576 -v 0.125000 -0.008252 -0.344178 -v 0.125000 0.306057 0.176854 -v 0.125000 0.346927 0.297696 -v 0.125000 0.259659 -0.758142 -v 0.125000 0.259659 0.292348 -v 0.125000 0.307295 -0.067518 -v 0.125000 0.346927 -0.008055 -v 0.125000 0.195652 -0.179874 -v 0.125000 0.400958 -0.344178 -v 0.125000 0.287399 -0.035251 -v 0.125000 0.400158 0.174790 -v 0.125000 0.400210 0.221998 -v 0.125000 0.310927 -0.083682 -v 0.125000 0.311360 -0.091515 -v 0.125000 0.402242 -0.114286 -v 0.125000 0.402453 -0.109387 -v 0.125000 0.195652 -0.557153 -v 0.125000 0.366578 0.280466 -v 0.125000 0.396437 -0.144363 -v 0.125000 0.397495 -0.141217 -v 0.125000 0.395306 -0.892161 -v 0.125000 0.393356 -0.808283 -v 0.125000 0.395306 0.158329 -v 0.125000 0.393356 0.242208 -v 0.125000 0.396307 -0.320451 -v 0.125000 0.097598 -0.314454 -v 0.125000 0.399363 -0.879286 -v 0.125000 0.397342 -0.818340 -v 0.125000 0.004043 -0.297620 -v 0.125000 0.145632 -0.446419 -v 0.125000 0.213682 -0.285687 -v 0.125000 0.247672 -0.006957 -v 0.125000 0.273432 -0.436765 -v 0.125000 0.309651 -0.332990 -v 0.125000 0.398473 -0.137954 -v 0.125000 0.397342 -0.073600 -v 0.125000 0.357260 -0.761209 -v 0.125000 0.000000 0.304698 -v 0.125000 0.401943 -0.838689 -v 0.125000 0.299602 0.254570 -v 0.125000 0.097598 -0.422573 -v 0.125000 -0.009818 -0.368513 -v 0.125000 -0.008252 -0.392849 -v 0.125000 0.082935 -0.404037 -v 0.125000 0.366578 -0.025284 -v 0.125000 0.357260 -0.016469 -v 0.125000 0.164356 -0.555316 -v 0.125000 0.177797 -0.451339 -v 0.125000 0.432679 0.726157 -v 0.125000 0.518934 0.511571 -v 0.125000 0.307810 -0.867220 -v 0.125000 0.346927 -0.752795 -v 0.125000 0.312763 0.726157 -v 0.125000 0.398473 -0.882694 -v 0.125000 0.310966 0.202950 -v 0.125000 0.309783 0.192847 -v 0.125000 0.335595 0.305657 -v 0.125000 0.317378 -0.355675 -v 0.125000 0.307810 0.183271 -v 0.125000 0.311317 -0.840189 -v 0.125000 0.287399 -0.779991 -v 0.125000 0.234222 -0.745792 -v 0.125000 0.000000 0.829944 -v 0.125000 0.402525 0.201613 -v 0.125000 -0.003607 -0.320451 -v 0.125000 0.310659 -0.106267 -v 0.125000 0.310265 -0.109627 -v 0.125000 0.401434 -0.123149 -v 0.125000 0.108816 -0.195543 -v 0.125000 0.399363 0.171205 -v 0.125000 0.303984 -0.059335 -v 0.125000 0.400958 -0.392849 -v 0.125000 0.402525 -0.368513 -v 0.125000 0.392707 0.101332 -v 0.125000 0.307568 -0.530063 -v 0.125000 0.323282 -0.734572 -v 0.125000 0.400851 -0.127172 -v 0.125000 0.396437 -0.889103 -v 0.125000 0.400850 -0.871913 -v 0.125000 0.107381 -0.430224 -v 0.125000 0.234222 -0.001052 -v 0.125000 0.230553 -0.287543 -v 0.125000 0.230553 -0.449483 -v 0.125000 0.213682 -0.451339 -v 0.125000 0.314445 -0.393200 -v 0.125000 0.309651 -0.404037 -v 0.125000 0.234222 0.304698 -v 0.125000 0.388270 -0.798371 -v 0.125000 0.382100 -0.788657 -v 0.125000 0.307295 0.238232 -v 0.125000 0.401900 -0.863605 -v 0.125000 0.402242 -0.859027 -v 0.125000 0.518934 0.829944 -v 0.125000 0.247672 0.298794 -v 0.125000 0.392707 -0.727560 -v 0.125000 0.028056 -0.481231 -v 0.125000 0.044267 -0.499649 -v 0.125000 0.394109 0.155330 -v 0.125000 0.309213 -0.860862 -v 0.125000 0.308555 -0.864046 -v 0.125000 0.310927 -0.828422 -v 0.125000 0.397495 -0.885957 -v 0.125000 0.312763 0.543829 -v 0.125000 0.310265 0.196124 -v 0.125000 0.311360 -0.836255 -v 0.125000 0.388270 0.252120 -v 0.125000 0.279466 -0.772362 -v 0.125000 0.401434 0.182601 -v 0.125000 0.401900 0.186886 -v 0.125000 0.086957 0.726157 -v 0.125000 0.392707 0.322931 -v 0.125000 0.270238 -0.765055 -v 0.125000 0.388642 -0.297620 -v 0.125000 0.306978 0.180082 -v 0.125000 0.256509 -0.187029 -v 0.125000 0.227270 -0.181710 -v 0.125000 0.309591 -0.075658 -v 0.125000 0.348264 -0.499649 -v 0.125000 0.364550 -0.481231 -v 0.125000 0.395306 -0.147421 -v 0.125000 0.078207 -0.393200 -v 0.125000 0.135386 -0.549997 -v 0.125000 0.078207 -0.343826 -v 0.125000 0.317378 -0.381351 -v 0.125000 0.400158 -0.875701 -v 0.125000 0.270238 -0.020315 -v 0.125000 0.279466 -0.027622 -v 0.125000 0.044267 -0.237377 -v 0.125000 0.161099 -0.449483 -v 0.125000 0.284888 -0.430224 -v 0.125000 0.284888 -0.306802 -v 0.125000 0.118698 -0.300261 -v 0.125000 0.303984 0.246416 -v 0.125000 0.004043 -0.439407 -v 0.125000 0.246187 -0.290607 -v 0.125000 0.310659 -0.851008 -v 0.125000 0.303984 -0.804075 -v 0.125000 0.283299 -0.195543 -v 0.125000 0.392707 -0.643408 -v 0.125000 0.131474 -0.294855 -v 0.125000 0.259659 -0.013402 -v 0.125000 0.195652 -0.451963 -v 0.125000 0.260506 -0.294855 -v 0.125000 0.303075 -0.413836 -v 0.125000 0.432679 0.511571 -v 0.125000 0.310659 0.199483 -v 0.125000 0.400851 0.178578 -v 0.125000 0.075315 -0.355675 -v 0.125000 0.145632 -0.290607 -v 0.125000 0.273432 -0.300261 -v 0.125000 0.310265 -0.854367 -v 0.125000 0.394109 -0.895161 -v 0.125000 0.307295 -0.812259 -v 0.125000 0.247672 -0.751697 -v 0.125000 0.307810 -0.122480 -v 0.125000 0.402525 -0.104137 -v 0.125000 0.287399 0.270500 -v 0.125000 0.374864 -0.034451 -v 0.125000 0.311317 0.210302 -vt 0.426575 0.688748 -vt 0.421208 0.689051 -vt 0.418443 0.689014 -vt 0.415862 0.688904 -vt 0.413450 0.688726 -vt 0.431947 0.687846 -vt 0.411193 0.688483 -vt 0.409074 0.688180 -vt 0.407078 0.687819 -vt 0.437295 0.686354 -vt 0.405190 0.687406 -vt 0.403394 0.686942 -vt 0.401675 0.686434 -vt 0.400018 0.685883 -vt 0.442593 0.684280 -vt 0.398407 0.685294 -vt 0.396827 0.684672 -vt 0.406431 0.638321 -vt 0.447814 0.681632 -vt 0.529446 0.479562 -vt 0.529446 0.683942 -vt 0.485117 0.683942 -vt 0.481422 0.647810 -vt 0.452931 0.678421 -vt 0.457918 0.674655 -vt 0.462747 0.670343 -vt 0.467391 0.665494 -vt 0.471823 0.660116 -vt 0.476017 0.654218 -vt 0.413218 0.640146 -vt 0.411546 0.639758 -vt 0.409866 0.639325 -vt 0.408165 0.638846 -vt 0.479945 0.647810 -vt 0.420086 0.641241 -vt 0.418316 0.641036 -vt 0.416590 0.640785 -vt 0.414895 0.640488 -vt 0.475512 0.601460 -vt 0.472401 0.608460 -vt 0.469006 0.614698 -vt 0.465365 0.620204 -vt 0.461515 0.625007 -vt 0.457497 0.629135 -vt 0.453347 0.632619 -vt 0.449105 0.635486 -vt 0.444809 0.637767 -vt 0.440498 0.639490 -vt 0.436210 0.640685 -vt 0.431984 0.641380 -vt 0.427857 0.641606 -vt 0.425785 0.641583 -vt 0.423808 0.641515 -vt 0.421912 0.641401 -vt 0.475512 0.479562 -vt 0.105673 0.484231 -vt 0.092827 0.484303 -vt 0.080077 0.482747 -vt 0.067743 0.479607 -vt 0.118294 0.482538 -vt 0.055974 0.474928 -vt 0.130536 0.479252 -vt 0.044917 0.468756 -vt 0.142248 0.474400 -vt 0.153274 0.468010 -vt 0.034723 0.461136 -vt 0.163463 0.460111 -vt 0.025540 0.452114 -vt 0.172660 0.450730 -vt 0.017516 0.441734 -vt 0.180713 0.439895 -vt 0.095424 0.440582 -vt 0.010802 0.430043 -vt 0.102206 0.440457 -vt 0.088703 0.439674 -vt 0.108528 0.439294 -vt 0.082563 0.437789 -vt 0.114374 0.437134 -vt 0.077012 0.434968 -vt 0.119730 0.434017 -vt 0.072062 0.431253 -vt 0.187468 0.427634 -vt 0.005545 0.417086 -vt 0.124581 0.429981 -vt 0.067723 0.426684 -vt 0.128910 0.425067 -vt 0.064005 0.421304 -vt 0.132703 0.419315 -vt 0.060919 0.415153 -vt 0.192772 0.413976 -vt 0.001895 0.402908 -vt 0.135945 0.412764 -vt 0.058474 0.408272 -vt 0.138621 0.405454 -vt 0.056683 0.400703 -vt 0.196472 0.398947 -vt 0.000000 0.387554 -vt 0.140715 0.397425 -vt 0.055554 0.392487 -vt 0.142212 0.388717 -vt 0.055099 0.383665 -vt 0.198413 0.382576 -vt 0.000010 0.371071 -vt 0.143096 0.379368 -vt 0.055327 0.374279 -vt 0.198413 0.366260 -vt 0.143319 0.370073 -vt 0.056206 0.365022 -vt 0.001942 0.354868 -vt 0.142859 0.361341 -vt 0.057698 0.356403 -vt 0.196511 0.351047 -vt 0.005633 0.339979 -vt 0.141725 0.353212 -vt 0.059786 0.348461 -vt 0.139928 0.345726 -vt 0.062457 0.341234 -vt 0.192854 0.336983 -vt 0.010930 0.326434 -vt 0.137479 0.338924 -vt 0.065694 0.334761 -vt 0.134389 0.332844 -vt 0.069484 0.329081 -vt 0.187591 0.324117 -vt 0.017680 0.314265 -vt 0.130667 0.327528 -vt 0.073809 0.324232 -vt 0.126324 0.323015 -vt 0.078656 0.320251 -vt 0.121372 0.319345 -vt 0.084010 0.317179 -vt 0.180872 0.312497 -vt 0.025728 0.303501 -vt 0.115819 0.316558 -vt 0.089854 0.315053 -vt 0.109677 0.314694 -vt 0.096175 0.313912 -vt 0.102956 0.313793 -vt 0.172846 0.302171 -vt 0.034922 0.294174 -vt 0.163660 0.293187 -vt 0.045109 0.286313 -vt 0.153464 0.285593 -vt 0.056134 0.279949 -vt 0.142407 0.279436 -vt 0.067844 0.275113 -vt 0.130637 0.274765 -vt 0.080087 0.271834 -vt 0.118303 0.271628 -vt 0.092707 0.270144 -vt 0.105553 0.270073 -vt 0.578122 0.000303 -vt 0.583490 0.000000 -vt 0.586255 0.000037 -vt 0.588836 0.000147 -vt 0.591247 0.000325 -vt 0.572751 0.001205 -vt 0.593505 0.000568 -vt 0.595624 0.000871 -vt 0.597620 0.001232 -vt 0.567403 0.002697 -vt 0.599508 0.001645 -vt 0.601304 0.002109 -vt 0.603022 0.002617 -vt 0.604680 0.003168 -vt 0.562105 0.004772 -vt 0.606291 0.003757 -vt 0.607871 0.004380 -vt 0.598266 0.050730 -vt 0.556884 0.007419 -vt 0.475251 0.209489 -vt 0.475251 0.005109 -vt 0.519581 0.005109 -vt 0.523275 0.041241 -vt 0.551766 0.010630 -vt 0.546780 0.014396 -vt 0.541951 0.018708 -vt 0.537307 0.023557 -vt 0.532875 0.028935 -vt 0.528681 0.034833 -vt 0.591480 0.048905 -vt 0.593152 0.049293 -vt 0.594832 0.049726 -vt 0.596532 0.050205 -vt 0.524753 0.041241 -vt 0.584612 0.047810 -vt 0.586381 0.048016 -vt 0.588107 0.048266 -vt 0.589803 0.048563 -vt 0.529186 0.087591 -vt 0.532296 0.080591 -vt 0.535692 0.074353 -vt 0.539333 0.068847 -vt 0.543182 0.064044 -vt 0.547201 0.059916 -vt 0.551351 0.056432 -vt 0.555592 0.053565 -vt 0.559888 0.051284 -vt 0.564199 0.049561 -vt 0.568487 0.048366 -vt 0.572714 0.047671 -vt 0.576840 0.047445 -vt 0.578913 0.047468 -vt 0.580890 0.047536 -vt 0.582785 0.047651 -vt 0.529186 0.209489 -vt 0.426575 0.479259 -vt 0.421208 0.479562 -vt 0.418443 0.479525 -vt 0.415862 0.479415 -vt 0.413450 0.479237 -vt 0.431947 0.478357 -vt 0.411193 0.478994 -vt 0.409074 0.478691 -vt 0.407078 0.478330 -vt 0.437295 0.476865 -vt 0.405190 0.477917 -vt 0.403394 0.477453 -vt 0.401675 0.476945 -vt 0.400018 0.476394 -vt 0.442593 0.474790 -vt 0.398407 0.475805 -vt 0.396827 0.475182 -vt 0.406431 0.428832 -vt 0.447814 0.472143 -vt 0.529446 0.270073 -vt 0.529446 0.474453 -vt 0.485117 0.474453 -vt 0.481422 0.438321 -vt 0.452931 0.468932 -vt 0.457918 0.465166 -vt 0.462747 0.460854 -vt 0.467391 0.456005 -vt 0.471823 0.450627 -vt 0.476017 0.444729 -vt 0.413218 0.430657 -vt 0.411546 0.430269 -vt 0.409866 0.429836 -vt 0.408165 0.429357 -vt 0.479945 0.438321 -vt 0.420086 0.431752 -vt 0.418316 0.431547 -vt 0.416590 0.431296 -vt 0.414895 0.430999 -vt 0.475512 0.391971 -vt 0.472401 0.398971 -vt 0.469006 0.405209 -vt 0.465365 0.410715 -vt 0.461515 0.415518 -vt 0.457496 0.419646 -vt 0.453347 0.423130 -vt 0.449105 0.425997 -vt 0.444809 0.428278 -vt 0.440498 0.430001 -vt 0.436210 0.431196 -vt 0.431984 0.431891 -vt 0.427857 0.432117 -vt 0.425785 0.432094 -vt 0.423808 0.432026 -vt 0.421912 0.431911 -vt 0.475512 0.270073 -vt 0.000000 0.270073 -vt 0.000000 0.000000 -vt 0.054673 0.044891 -vt 0.167714 0.000000 -vt 0.167714 0.044891 -vt 0.054673 0.107299 -vt 0.054673 0.152555 -vt 0.150721 0.107299 -vt 0.150721 0.152555 -vt 0.054673 0.224818 -vt 0.171778 0.224817 -vt 0.171778 0.270073 -vt 0.559195 0.479865 -vt 0.551062 0.479599 -vt 0.553828 0.479562 -vt 0.548481 0.479709 -vt 0.546070 0.479887 -vt 0.564566 0.480767 -vt 0.543812 0.480130 -vt 0.541693 0.480433 -vt 0.539698 0.480794 -vt 0.569915 0.482259 -vt 0.537809 0.481208 -vt 0.536014 0.481671 -vt 0.534295 0.482179 -vt 0.532638 0.482730 -vt 0.575213 0.484334 -vt 0.531027 0.483319 -vt 0.529446 0.483942 -vt 0.539051 0.530292 -vt 0.580434 0.486981 -vt 0.662066 0.689051 -vt 0.617736 0.484672 -vt 0.662066 0.484672 -vt 0.614042 0.520803 -vt 0.585551 0.490192 -vt 0.590538 0.493958 -vt 0.595366 0.498270 -vt 0.600010 0.503119 -vt 0.604443 0.508497 -vt 0.608636 0.514395 -vt 0.545837 0.528467 -vt 0.544165 0.528855 -vt 0.542485 0.529288 -vt 0.540785 0.529767 -vt 0.612565 0.520803 -vt 0.552706 0.527372 -vt 0.550936 0.527578 -vt 0.549210 0.527828 -vt 0.547515 0.528125 -vt 0.608132 0.567153 -vt 0.605021 0.560153 -vt 0.601626 0.553915 -vt 0.597984 0.548409 -vt 0.594135 0.543606 -vt 0.590116 0.539478 -vt 0.585967 0.535995 -vt 0.581725 0.533127 -vt 0.577429 0.530846 -vt 0.573118 0.529123 -vt 0.568830 0.527928 -vt 0.564604 0.527233 -vt 0.560477 0.527007 -vt 0.558405 0.527030 -vt 0.556427 0.527099 -vt 0.554532 0.527213 -vt 0.608132 0.689051 -vt 0.304086 0.270145 -vt 0.278491 0.271629 -vt 0.291240 0.270073 -vt 0.266157 0.274769 -vt 0.316707 0.271838 -vt 0.254387 0.279447 -vt 0.328950 0.275124 -vt 0.243331 0.285620 -vt 0.340661 0.279976 -vt 0.351688 0.286366 -vt 0.233136 0.293240 -vt 0.361877 0.294265 -vt 0.223953 0.302262 -vt 0.371074 0.303646 -vt 0.215930 0.312642 -vt 0.379127 0.314481 -vt 0.293837 0.313793 -vt 0.209215 0.324333 -vt 0.300619 0.313919 -vt 0.287117 0.314702 -vt 0.306941 0.315082 -vt 0.280976 0.316587 -vt 0.312788 0.317242 -vt 0.275426 0.319408 -vt 0.318144 0.320359 -vt 0.270475 0.323123 -vt 0.385882 0.326742 -vt 0.203958 0.337290 -vt 0.322994 0.324395 -vt 0.266136 0.327692 -vt 0.327323 0.329309 -vt 0.262418 0.333072 -vt 0.331117 0.335061 -vt 0.259332 0.339223 -vt 0.391185 0.340400 -vt 0.200308 0.351468 -vt 0.334359 0.341612 -vt 0.256888 0.346104 -vt 0.337034 0.348922 -vt 0.255096 0.353673 -vt 0.394885 0.355429 -vt 0.198413 0.366821 -vt 0.339128 0.356951 -vt 0.253967 0.361889 -vt 0.340625 0.365659 -vt 0.253512 0.370710 -vt 0.396827 0.371800 -vt 0.198423 0.383304 -vt 0.341510 0.375008 -vt 0.253740 0.380097 -vt 0.396827 0.388116 -vt 0.341733 0.384303 -vt 0.254620 0.389354 -vt 0.200355 0.399508 -vt 0.341272 0.393035 -vt 0.256111 0.397973 -vt 0.394924 0.403330 -vt 0.204046 0.414397 -vt 0.340138 0.401164 -vt 0.258200 0.405915 -vt 0.338341 0.408650 -vt 0.260870 0.413142 -vt 0.391267 0.417393 -vt 0.209343 0.427942 -vt 0.335892 0.415452 -vt 0.264108 0.419614 -vt 0.332802 0.421531 -vt 0.267897 0.425295 -vt 0.386005 0.430259 -vt 0.216093 0.440111 -vt 0.329080 0.426848 -vt 0.272222 0.430144 -vt 0.324738 0.431361 -vt 0.277069 0.434124 -vt 0.319785 0.435031 -vt 0.282423 0.437197 -vt 0.379286 0.441879 -vt 0.224141 0.450874 -vt 0.314232 0.437817 -vt 0.288267 0.439323 -vt 0.308090 0.439681 -vt 0.294588 0.440464 -vt 0.301369 0.440582 -vt 0.371259 0.452205 -vt 0.233335 0.460202 -vt 0.362073 0.461189 -vt 0.243522 0.468063 -vt 0.351877 0.468783 -vt 0.254547 0.474427 -vt 0.340820 0.474940 -vt 0.266257 0.479263 -vt 0.329050 0.479611 -vt 0.278500 0.482542 -vt 0.316716 0.482748 -vt 0.291121 0.484232 -vt 0.303967 0.484303 -vt 0.559195 0.270376 -vt 0.551062 0.270110 -vt 0.553828 0.270073 -vt 0.548481 0.270220 -vt 0.546070 0.270398 -vt 0.564566 0.271278 -vt 0.543813 0.270641 -vt 0.541694 0.270944 -vt 0.539698 0.271305 -vt 0.569915 0.272770 -vt 0.537810 0.271719 -vt 0.536014 0.272182 -vt 0.534295 0.272690 -vt 0.532638 0.273241 -vt 0.575213 0.274845 -vt 0.531027 0.273830 -vt 0.529446 0.274453 -vt 0.539051 0.320803 -vt 0.580434 0.277492 -vt 0.662066 0.479562 -vt 0.617736 0.275182 -vt 0.662066 0.275182 -vt 0.614042 0.311314 -vt 0.585551 0.280703 -vt 0.590538 0.284469 -vt 0.595366 0.288781 -vt 0.600010 0.293630 -vt 0.604443 0.299008 -vt 0.608636 0.304906 -vt 0.545837 0.318978 -vt 0.544165 0.319366 -vt 0.542485 0.319799 -vt 0.540785 0.320278 -vt 0.612565 0.311314 -vt 0.552706 0.317883 -vt 0.550936 0.318089 -vt 0.549210 0.318339 -vt 0.547515 0.318636 -vt 0.608132 0.357664 -vt 0.605021 0.350664 -vt 0.601626 0.344426 -vt 0.597984 0.338920 -vt 0.594135 0.334117 -vt 0.590116 0.329989 -vt 0.585967 0.326505 -vt 0.581725 0.323638 -vt 0.577429 0.321357 -vt 0.573118 0.319634 -vt 0.568830 0.318439 -vt 0.564604 0.317744 -vt 0.560477 0.317518 -vt 0.558405 0.317541 -vt 0.556427 0.317609 -vt 0.554532 0.317724 -vt 0.608132 0.479562 -vt 0.029749 0.484606 -vt 0.021616 0.484340 -vt 0.024381 0.484303 -vt 0.019035 0.484450 -vt 0.016624 0.484628 -vt 0.035120 0.485508 -vt 0.014366 0.484871 -vt 0.012247 0.485174 -vt 0.010251 0.485535 -vt 0.040468 0.487000 -vt 0.008363 0.485948 -vt 0.006567 0.486412 -vt 0.004849 0.486920 -vt 0.003191 0.487471 -vt 0.045766 0.489074 -vt 0.001580 0.488060 -vt 0.000000 0.488682 -vt 0.009605 0.535033 -vt 0.050987 0.491721 -vt 0.132620 0.693792 -vt 0.088290 0.489412 -vt 0.132620 0.489412 -vt 0.084596 0.525544 -vt 0.056105 0.494932 -vt 0.061091 0.498698 -vt 0.065920 0.503011 -vt 0.070564 0.507860 -vt 0.074996 0.513238 -vt 0.079190 0.519136 -vt 0.016391 0.533208 -vt 0.014719 0.533596 -vt 0.013039 0.534029 -vt 0.011339 0.534508 -vt 0.083118 0.525544 -vt 0.023259 0.532113 -vt 0.021490 0.532318 -vt 0.019764 0.532569 -vt 0.018068 0.532866 -vt 0.078685 0.571894 -vt 0.075575 0.564894 -vt 0.072179 0.558656 -vt 0.068538 0.553150 -vt 0.064688 0.548347 -vt 0.060670 0.544219 -vt 0.056520 0.540735 -vt 0.052278 0.537868 -vt 0.047983 0.535587 -vt 0.043672 0.533864 -vt 0.039384 0.532669 -vt 0.035157 0.531973 -vt 0.031031 0.531748 -vt 0.028958 0.531771 -vt 0.026981 0.531839 -vt 0.025086 0.531953 -vt 0.078685 0.693792 -vt 0.343555 0.270073 -vt 0.288882 0.044891 -vt 0.343555 0.000000 -vt 0.175841 0.000000 -vt 0.175841 0.044891 -vt 0.288882 0.107299 -vt 0.288882 0.152555 -vt 0.192834 0.107299 -vt 0.192834 0.152555 -vt 0.288882 0.224818 -vt 0.000000 0.703709 -vt 0.131696 0.703709 -vt 0.131696 0.714506 -vt 0.916252 0.609672 -vt 0.916252 0.739781 -vt 0.914116 0.739781 -vt 0.739066 0.811666 -vt 0.739066 0.941775 -vt 0.736796 0.941775 -vt 0.717198 0.941775 -vt 0.717198 0.811666 -vt 0.718894 0.811666 -vt 0.280391 0.972763 -vt 0.280391 0.842654 -vt 0.286716 0.842654 -vt 0.393453 0.842654 -vt 0.393453 0.972764 -vt 0.386676 0.972763 -vt 0.961733 0.609672 -vt 0.961733 0.739781 -vt 0.957061 0.739781 -vt 0.558392 0.973773 -vt 0.558392 0.843663 -vt 0.560462 0.843663 -vt 0.644885 0.973773 -vt 0.644885 0.843663 -vt 0.650663 0.843663 -vt 0.386676 0.842654 -vt 0.380393 0.972763 -vt 0.923522 0.609672 -vt 0.923522 0.739781 -vt 0.920940 0.739781 -vt 0.793762 0.570314 -vt 0.662066 0.570314 -vt 0.662066 0.553834 -vt 0.549165 0.973773 -vt 0.549165 0.843663 -vt 0.550904 0.843663 -vt 0.610237 0.843663 -vt 0.612307 0.843663 -vt 0.612307 0.973773 -vt 0.822592 0.869891 -vt 0.822592 1.000000 -vt 0.815816 1.000000 -vt 0.396827 0.693059 -vt 0.528523 0.693059 -vt 0.528523 0.697688 -vt 0.715444 0.941775 -vt 0.715444 0.811666 -vt 0.749745 0.130110 -vt 0.749745 0.000000 -vt 0.760787 0.000000 -vt 0.952060 0.260219 -vt 0.952060 0.130110 -vt 0.996252 0.130110 -vt 0.053834 0.960358 -vt 0.053834 0.830249 -vt 0.058761 0.830249 -vt 0.000000 0.799734 -vt 0.131696 0.799734 -vt 0.131696 0.810754 -vt 0.955807 0.609672 -vt 0.955807 0.479562 -vt 1.000000 0.479562 -vt 0.835339 0.130109 -vt 0.835339 0.000000 -vt 0.847061 0.000000 -vt 0.952216 0.869891 -vt 0.952216 0.739781 -vt 0.996409 0.739781 -vt 0.697517 0.941775 -vt 0.697517 0.811666 -vt 0.700277 0.811666 -vt 0.817025 0.609672 -vt 0.817025 0.479562 -vt 0.824637 0.479562 -vt 0.264316 0.779822 -vt 0.132620 0.779822 -vt 0.132620 0.763555 -vt 0.500979 0.973773 -vt 0.500979 0.843663 -vt 0.502689 0.843663 -vt 0.000000 0.714506 -vt 0.131696 0.726038 -vt 0.852290 0.609672 -vt 0.852290 0.739781 -vt 0.842836 0.739781 -vt 0.631826 0.843663 -vt 0.631826 0.973773 -vt 0.630063 0.973773 -vt 0.264316 0.708611 -vt 0.132620 0.708611 -vt 0.132620 0.697702 -vt 0.793762 0.553834 -vt 0.662066 0.538446 -vt 0.884784 0.609672 -vt 0.884784 0.479562 -vt 0.891347 0.479562 -vt 0.089888 0.960358 -vt 0.089888 0.830249 -vt 0.095991 0.830249 -vt 0.906593 0.270073 -vt 0.906593 0.400182 -vt 0.793762 0.400182 -vt 0.499283 0.973773 -vt 0.499283 0.843663 -vt 0.070062 0.960358 -vt 0.070062 0.830249 -vt 0.076405 0.830249 -vt 0.568743 0.973773 -vt 0.568743 0.843663 -vt 0.572949 0.843663 -vt 0.311896 0.972763 -vt 0.311896 0.842654 -vt 0.316837 0.842654 -vt 0.725449 0.811666 -vt 0.725449 0.941775 -vt 0.723796 0.941775 -vt 0.661142 0.839656 -vt 0.529446 0.839656 -vt 0.529446 0.835027 -vt 0.904905 0.609672 -vt 0.904905 0.739781 -vt 0.903252 0.739781 -vt 0.618017 0.843663 -vt 0.618017 0.973773 -vt 0.616184 0.973773 -vt 0.000000 0.810754 -vt 0.131696 0.820976 -vt 0.692190 0.941775 -vt 0.692190 0.811666 -vt 0.803756 0.869891 -vt 0.803756 1.000000 -vt 0.798495 1.000000 -vt 0.705277 0.941775 -vt 0.705277 0.811666 -vt 0.707547 0.811666 -vt 0.901973 0.609672 -vt 0.901973 0.479562 -vt 0.662066 0.941775 -vt 0.662066 0.811666 -vt 0.666737 0.811666 -vt 0.793762 0.646485 -vt 0.662066 0.646485 -vt 0.662066 0.637347 -vt 0.518091 0.973773 -vt 0.518091 0.843663 -vt 0.522266 0.843663 -vt 0.931608 0.609672 -vt 0.931608 0.739781 -vt 0.926282 0.739781 -vt 0.824637 0.609672 -vt 0.832887 0.479562 -vt 0.589407 0.843663 -vt 0.589407 0.973773 -vt 0.585350 0.973773 -vt 0.734660 0.811666 -vt 0.734660 0.941775 -vt 0.732641 0.941775 -vt 0.793762 0.488769 -vt 0.662066 0.488769 -vt 0.824980 0.609672 -vt 0.824980 0.739781 -vt 0.817127 0.739781 -vt 0.720547 0.941775 -vt 0.720547 0.811666 -vt 0.722171 0.811666 -vt 0.784873 0.130109 -vt 0.784873 0.000000 -vt 0.797618 0.000000 -vt 0.906601 0.609672 -vt 0.906601 0.739781 -vt 0.554515 0.973773 -vt 0.554515 0.843663 -vt 0.556414 0.843663 -vt 0.891347 0.609672 -vt 0.897090 0.479562 -vt 0.396012 0.828743 -vt 0.264316 0.828743 -vt 0.264316 0.822799 -vt 0.095991 0.960358 -vt 0.101486 0.830249 -vt 0.223020 0.845800 -vt 0.223020 0.975910 -vt 0.178003 0.975910 -vt 0.762648 0.811666 -vt 0.762648 0.941775 -vt 0.757435 0.941775 -vt 0.264316 0.763555 -vt 0.132620 0.748242 -vt 0.650663 0.973773 -vt 0.655923 0.843663 -vt 0.178003 0.845800 -vt 0.132620 0.975909 -vt 0.890963 0.609672 -vt 0.890963 0.739781 -vt 0.884517 0.739781 -vt 0.064176 0.960358 -vt 0.064176 0.830249 -vt 0.264316 0.733940 -vt 0.132620 0.733940 -vt 0.132620 0.720710 -vt 0.513986 0.973773 -vt 0.513986 0.843663 -vt 0.623245 0.843663 -vt 0.623245 0.973773 -vt 0.621534 0.973773 -vt 0.793762 0.601285 -vt 0.662066 0.601285 -vt 0.662066 0.586474 -vt 0.396827 0.689051 -vt 0.528523 0.689051 -vt 0.374616 0.842654 -vt 0.374616 0.972763 -vt 0.369356 0.972763 -vt 0.728899 0.811666 -vt 0.728899 0.941775 -vt 0.727145 0.941775 -vt 0.581293 0.973773 -vt 0.581293 0.843663 -vt 0.585350 0.843663 -vt 0.552683 0.973773 -vt 0.552683 0.843663 -vt 0.083187 0.960358 -vt 0.083187 0.830249 -vt 0.495887 0.973773 -vt 0.495887 0.843663 -vt 0.497590 0.843663 -vt 0.396012 0.834017 -vt 0.264316 0.834017 -vt 0.936891 0.609672 -vt 0.936891 0.739781 -vt 0.662066 0.270073 -vt 0.793762 0.270073 -vt 0.793762 0.439465 -vt 0.661142 0.835027 -vt 0.529446 0.829752 -vt 0.777606 0.811666 -vt 0.777606 0.941775 -vt 0.772759 0.941775 -vt 0.000000 0.775910 -vt 0.131696 0.775910 -vt 0.131696 0.788069 -vt 0.889631 0.869890 -vt 0.889631 0.739781 -vt 0.858102 0.130109 -vt 0.858102 0.000000 -vt 0.868307 0.000000 -vt 0.741484 0.811666 -vt 0.741484 0.941775 -vt 0.000000 0.738158 -vt 0.131696 0.738158 -vt 0.131696 0.750719 -vt 0.540636 0.973773 -vt 0.540636 0.843663 -vt 0.542363 0.843663 -vt 0.793762 0.524197 -vt 0.662066 0.524197 -vt 0.662066 0.511135 -vt 0.832887 0.609672 -vt 0.841733 0.479562 -vt 0.910182 0.609672 -vt 0.910182 0.739781 -vt 0.908355 0.739781 -vt 0.264316 0.810695 -vt 0.132620 0.810695 -vt 0.132620 0.795995 -vt 0.912097 0.609672 -vt 0.912097 0.739781 -vt 0.833562 0.609672 -vt 0.833562 0.739781 -vt 0.616184 0.843663 -vt 0.614285 0.973773 -vt 0.396012 0.688042 -vt 0.264316 0.688042 -vt 0.264316 0.484303 -vt 0.897090 0.609672 -vt 0.711702 0.941775 -vt 0.711702 0.811666 -vt 0.713617 0.811666 -vt 0.577146 0.973773 -vt 0.577146 0.843663 -vt 0.896681 0.609672 -vt 0.896681 0.739781 -vt 0.809533 0.869891 -vt 0.809533 1.000000 -vt 0.626633 0.843663 -vt 0.626633 0.973773 -vt 0.624940 0.973773 -vt 0.772546 0.130110 -vt 0.772546 0.000000 -vt 0.942104 0.609672 -vt 0.942104 0.739781 -vt 0.509938 0.973773 -vt 0.509938 0.843663 -vt 0.511916 0.843663 -vt 0.058761 0.960358 -vt 0.369356 0.842654 -vt 0.364622 0.972763 -vt 0.810091 0.609672 -vt 0.810091 0.479562 -vt 0.396012 0.842654 -vt 0.264316 0.842654 -vt 0.264316 0.838646 -vt 0.396827 0.715542 -vt 0.528523 0.715542 -vt 0.528523 0.722894 -vt 0.960427 0.270073 -vt 0.264316 0.845800 -vt 0.132620 0.845800 -vt 0.132620 0.835614 -vt 0.847061 0.130109 -vt 0.504427 0.973773 -vt 0.504427 0.843663 -vt 0.506206 0.843663 -vt 0.746826 0.811666 -vt 0.746826 0.941775 -vt 0.744066 0.941775 -vt 0.655923 0.973773 -vt 0.660657 0.843663 -vt 0.538873 0.973773 -vt 0.538873 0.843663 -vt 0.597750 0.843663 -vt 0.597750 0.973773 -vt 0.593554 0.973773 -vt 0.877442 0.609672 -vt 0.877442 0.479562 -vt 0.709683 0.941775 -vt 0.709683 0.811666 -vt 0.914116 0.609672 -vt 0.793762 0.511135 -vt 0.662066 0.499310 -vt 0.842836 0.609672 -vt 0.444612 0.973773 -vt 0.444612 0.843663 -vt 0.492397 0.843663 -vt 0.076405 0.960358 -vt 0.380393 0.842654 -vt 0.638603 0.973773 -vt 0.638603 0.843663 -vt 0.550904 0.973773 -vt 0.901627 0.609672 -vt 0.901627 0.739781 -vt 0.815816 0.869891 -vt 0.661142 0.823809 -vt 0.529446 0.823809 -vt 0.529446 0.817173 -vt 0.760787 0.130110 -vt 0.793762 0.626749 -vt 0.662066 0.626749 -vt 0.662066 0.614719 -vt 0.798495 0.869891 -vt 0.793762 1.000000 -vt 0.793762 0.811666 -vt 0.610237 0.973773 -vt 0.606133 0.973773 -vt 0.681695 0.941775 -vt 0.681695 0.811666 -vt 0.686908 0.811666 -vt 0.572949 0.973773 -vt 0.752153 0.811666 -vt 0.752153 0.941775 -vt 0.793762 0.609672 -vt 0.793762 0.479562 -vt 0.798419 0.479562 -vt 0.000000 0.750719 -vt 0.131696 0.763410 -vt 0.926282 0.609672 -vt 0.506206 0.973773 -vt 0.508039 0.843663 -vt 0.132620 0.688042 -vt 0.396827 0.697688 -vt 0.528523 0.702962 -vt 0.526473 0.973773 -vt 0.526473 0.843663 -vt 0.530669 0.843663 -vt 0.797618 0.130109 -vt 0.810464 0.000000 -vt 0.396827 0.973773 -vt 0.396827 0.843663 -vt 0.997465 0.609672 -vt 0.614285 0.843663 -vt 0.793762 0.637347 -vt 0.264316 0.835614 -vt 0.132620 0.823907 -vt 0.851135 0.609672 -vt 0.851135 0.479562 -vt 0.860577 0.479562 -vt 0.492397 0.973773 -vt 0.494160 0.843663 -vt 0.264316 0.720710 -vt 0.628336 0.843663 -vt 0.628336 0.973773 -vt 0.707547 0.941775 -vt 0.817127 0.609672 -vt 0.810041 0.739781 -vt 0.986157 0.000000 -vt 0.986157 0.130109 -vt 0.940774 0.130109 -vt 0.727145 0.811666 -vt 0.884517 0.609672 -vt 0.877384 0.739781 -vt 0.757435 0.811666 -vt 0.798321 0.609672 -vt 0.798321 0.739781 -vt 0.793762 0.739781 -vt 0.686908 0.941775 -vt 0.730726 0.811666 -vt 0.730726 0.941775 -vt 0.952215 0.609672 -vt 0.947221 0.739781 -vt 0.530669 0.973773 -vt 0.534816 0.843663 -vt 0.396012 0.816163 -vt 0.264316 0.816163 -vt 0.264316 0.808811 -vt 0.666737 0.941776 -vt 0.671583 0.811666 -vt 0.630063 0.843663 -vt 0.508039 0.973773 -vt 0.793762 0.499310 -vt 0.269176 0.972764 -vt 0.269176 0.842654 -vt 0.274539 0.842654 -vt 0.606133 0.843663 -vt 0.601957 0.973773 -vt 0.732641 0.811666 -vt 0.823089 0.130109 -vt 0.823089 0.000000 -vt 0.556414 0.973773 -vt 0.798419 0.609672 -vt 0.803875 0.479562 -vt 0.494160 0.973773 -vt 0.396827 0.702962 -vt 0.528523 0.708906 -vt 0.396012 0.808811 -vt 0.661142 0.817173 -vt 0.529446 0.809820 -vt 0.856309 0.260219 -vt 0.739567 0.260219 -vt 0.739567 0.130110 -vt 0.547455 0.973773 -vt 0.547455 0.843663 -vt 0.861228 0.609672 -vt 0.861228 0.739781 -vt 0.793762 0.869891 -vt 0.918522 0.609672 -vt 0.918522 0.739781 -vt 0.860577 0.609672 -vt 0.869359 0.479562 -vt 0.793762 0.614719 -vt 0.783750 0.941775 -vt 0.783750 0.811666 -vt 0.785223 0.811666 -vt 0.996159 0.270073 -vt 0.996159 0.400182 -vt 0.960427 0.400182 -vt 0.306352 0.972763 -vt 0.306352 0.842654 -vt 0.000000 0.726038 -vt 0.274539 0.972763 -vt 0.534816 0.973773 -vt 0.793762 0.538446 -vt 0.957061 0.609672 -vt 0.624940 0.843663 -vt 0.792289 0.941775 -vt 0.792289 0.811666 -vt 0.739567 0.203739 -vt 0.607871 0.203739 -vt 0.607871 0.000000 -vt 0.601957 0.843663 -vt 0.782277 0.811666 -vt 0.782277 0.941775 -vt 0.739567 0.000000 -vt 0.564567 0.973773 -vt 0.564567 0.843663 -vt 0.920940 0.609672 -vt 0.000000 0.763410 -vt 0.000000 0.820976 -vt 0.131696 0.830249 -vt 0.475251 0.269226 -vt 0.343555 0.269226 -vt 0.744066 0.811666 -vt 0.702859 0.941775 -vt 0.702859 0.811666 -vt 0.396827 0.708906 -vt 0.000000 0.960358 -vt 0.000000 0.830249 -vt 0.264316 0.823907 -vt 0.364622 0.842654 -vt 0.316837 0.972763 -vt 0.671583 0.941775 -vt 0.676578 0.811666 -vt 0.545760 0.973773 -vt 0.545760 0.843663 -vt 0.542363 0.973773 -vt 0.544067 0.843663 -vt 0.502689 0.973773 -vt 0.000000 0.693792 -vt 0.131696 0.693792 -vt 0.718894 0.941775 -vt 0.258752 0.845800 -vt 0.258752 0.975909 -vt 0.783750 0.811666 -vt 0.713617 0.941775 -vt 0.903252 0.609672 -vt 0.264316 0.748242 -vt 0.264316 0.697702 -vt 0.723796 0.811666 -vt 0.722172 0.941775 -vt 0.619796 0.843663 -vt 0.619796 0.973773 -vt 0.810041 0.609672 -vt 0.803760 0.739781 -vt 0.803760 0.609672 -vt 0.522266 0.973773 -vt 0.497590 0.973773 -vt 0.940774 0.000000 -vt 0.868307 0.130109 -vt 0.661142 0.829752 -vt 0.810464 0.130110 -vt 0.803875 0.609672 -vt 0.101486 0.960358 -vt 0.106364 0.830249 -vt 0.676578 0.941776 -vt 0.661142 0.809820 -vt 0.529446 0.689051 -vt 0.841733 0.609672 -vt 0.793762 0.586474 -vt 0.869607 0.609672 -vt 0.869607 0.739781 -vt 0.736796 0.811666 -vt 0.908355 0.609672 -vt 0.869359 0.609672 -vt 0.293498 0.972763 -vt 0.293498 0.842654 -vt 0.300216 0.842654 -vt 0.661142 0.843663 -vt 0.529446 0.843663 -vt 0.286716 0.972763 -vt 0.621534 0.843663 -vt 0.560462 0.973773 -vt 0.300216 0.972763 -vt 0.767765 0.811666 -vt 0.767765 0.941775 -vt 0.947221 0.609672 -vt 0.000000 0.788069 -vt 0.511916 0.973773 -vt 0.264316 0.972764 -vt 0.772759 0.811666 -vt 0.700277 0.941775 -vt 0.396012 0.822799 -vt 0.396827 0.722894 -vt 0.528523 0.843663 -vt 0.396012 0.838646 -vt 0.264316 0.795995 -vt 0.544067 0.973773 -vt 0.593554 0.843663 -vt 0.996252 0.260219 -vt 1.000000 0.609672 -vt 0.996409 0.869891 -vt 0.662066 0.439465 -vt 0.396012 0.484303 -vt 0.660657 0.973773 -vt 0.132620 0.484303 -vt 0.997465 0.739781 -vt 0.856309 0.130110 -vt 0.785223 0.941775 -vt 0.793762 0.941775 -vt 0.475251 0.000000 -vt 0.106364 0.960358 -vt 0.661142 0.689051 -vn -1.000000 -0.000000 0.000000 -vn -1.000000 0.000100 0.000000 -vn -1.000000 0.000200 0.000000 -vn -1.000000 -0.000100 -0.000000 -vn 1.000000 0.000100 0.000000 -vn 1.000000 0.000000 0.000000 -vn 1.000000 -0.000100 0.000000 -vn 1.000000 -0.000200 0.000000 -vn 1.000000 -0.000500 0.000100 -vn 0.000000 0.898000 0.440100 -vn 0.000000 0.989700 -0.143500 -vn 0.000000 0.994100 -0.108200 -vn 0.000000 0.947800 -0.318800 -vn 0.000000 -0.970700 0.240300 -vn 0.000000 0.518000 0.855400 -vn 0.000000 0.794500 0.607300 -vn -0.000000 -0.999900 0.011200 -vn -0.000000 0.631400 0.775500 -vn 0.000000 0.574900 0.818300 -vn 0.000000 0.999100 -0.042900 -vn -0.000000 0.058000 0.998300 -vn -0.000000 -0.989300 0.145600 -vn 0.000000 -0.999900 0.011100 -vn 0.000000 -0.693200 -0.720800 -vn 0.000000 0.957900 -0.287000 -vn 0.000000 -0.898400 -0.439100 -vn 0.000000 1.000000 -0.000000 -vn 0.000000 0.730300 -0.683200 -vn 0.000000 0.831400 -0.555600 -vn 0.000000 -0.898400 0.439100 -vn 0.000000 0.999900 -0.013700 -vn 0.000000 0.287300 0.957800 -vn 0.000000 -0.058600 -0.998300 -vn 0.000000 -0.984700 0.174300 -vn 0.000000 0.948000 0.318300 -vn 0.000000 -0.034600 -0.999400 -vn -0.000000 -0.956200 0.292900 -vn 0.000000 -0.654500 -0.756100 -vn -0.000000 0.179000 0.983900 -vn 0.000000 -0.385900 0.922600 -vn 0.000000 0.971500 0.237100 -vn 0.000000 -1.000000 -0.000000 -vn 0.000000 -0.979300 0.202200 -vn 0.000000 0.971500 -0.237100 -vn 0.000000 -0.962500 -0.271400 -vn 0.000000 -0.830400 -0.557200 -vn 0.000000 0.937900 -0.346900 -vn 0.000000 -0.996100 0.088200 -vn 0.000000 0.749200 -0.662400 -vn -0.000000 0.998400 0.057000 -vn 0.000000 0.687300 0.726400 -vn -0.000000 -0.654500 0.756100 -vn 0.000000 -0.986400 -0.164300 -vn 0.000000 0.194300 0.980900 -vn 0.000000 -0.825300 -0.564700 -vn 0.000000 0.983700 -0.179900 -vn -0.000000 0.749200 0.662400 -vn 0.000000 0.194300 -0.980900 -vn 0.000000 0.928800 -0.370500 -vn -0.000000 -0.997900 -0.064200 -vn -0.000000 -0.998100 0.060800 -vn 0.000000 -0.495900 0.868400 -vn 0.000000 -0.547000 -0.837100 -vn 0.000000 0.916500 0.399900 -vn 0.000000 0.000000 -1.000000 -vn 0.000000 0.962300 0.271800 -vn 0.000000 -0.180600 -0.983600 -vn 0.000000 -0.495900 -0.868400 -vn 0.000000 0.916500 -0.399900 -vn -0.000000 -0.428300 -0.903600 -vn 0.000000 -0.998500 -0.055200 -vn -0.000000 -0.180600 0.983600 -vn 0.000000 -0.762000 -0.647500 -vn 0.000000 0.997100 0.076200 -vn 0.000000 -0.967600 0.252700 -vn 0.000000 -0.620800 -0.784000 -vn 0.000000 0.985900 0.167600 -vn 0.000000 0.844100 0.536100 -vn 0.000000 0.948000 -0.318300 -vn 0.000000 -0.750700 0.660700 -vn 0.000000 0.997200 -0.074500 -vn 0.000000 0.997900 0.064200 -vn -0.000000 -0.961700 0.274200 -vn 0.000000 0.425800 0.904800 -vn 0.000000 0.110500 0.993900 -vn 0.000000 0.967600 -0.252600 -vn 0.000000 0.179000 -0.983900 -vn 0.000000 0.976300 -0.216500 -vn 0.000000 0.110500 -0.993900 -vn 0.000000 -0.998200 0.060800 -vn 0.000000 0.000000 1.000000 -vn 0.000000 -0.611200 0.791400 -vn 0.000000 -0.880900 -0.473400 -vn 0.000000 -0.611200 -0.791400 -vn 0.000000 -0.973500 0.228500 -vn -0.000000 -0.981400 -0.192100 -vn 0.000000 -0.999400 0.035000 -vn 0.000000 0.833800 -0.552100 -vn 0.000000 0.741800 0.670600 -vn 0.000000 0.389700 0.920900 -vn 0.000000 -0.402000 -0.915600 -vn 0.000000 0.543600 -0.839300 -vn 0.000000 -0.832400 0.554200 -vn 0.000000 -0.993200 0.116600 -vn 0.000000 -0.927000 -0.375100 -vn 0.000000 -0.284400 0.958700 -vn -0.000000 0.543600 0.839300 -vn 0.000000 0.034900 -0.999400 -vn 0.000000 -0.200600 -0.979700 -vn 0.000000 0.997100 -0.076200 -vn 0.000000 -0.725800 -0.687900 -vn 0.000000 -0.473600 -0.880800 -vn 0.000000 -0.948200 -0.317700 -vn -0.000000 -0.428300 0.903600 -vn 0.000000 0.730300 0.683200 -vn 0.000000 0.997900 -0.064200 -vn -0.000000 -0.997900 0.064200 -vn 0.000000 0.100500 -0.994900 -vn -0.000000 -0.546000 0.837800 -vn 0.000000 0.425800 -0.904800 -vn 0.000000 -0.034600 0.999400 -vn 0.000000 -0.546000 -0.837800 -vn 0.000000 0.287300 -0.957800 -vn 0.000000 -0.385900 -0.922600 -vn 0.000000 0.616100 -0.787700 -vn 0.000000 0.889700 0.456600 -vn -0.000000 0.652500 0.757800 -vn 0.000000 -0.830400 0.557200 -vn 0.000000 -0.948200 0.317700 -vn 0.000000 0.616100 0.787700 -vn 0.000000 -0.402000 -0.915700 -vn 0.000000 -0.109400 -0.994000 -vn 0.000000 -0.109400 0.994000 -vn 0.000000 -0.305100 0.952300 -vn 0.000000 -0.914500 -0.404500 -vn 0.000000 0.981300 0.192400 -vn 0.000000 -0.914500 0.404500 -vn -0.000000 0.302900 0.953000 -vn 0.000000 -0.832400 -0.554200 -vn 0.000000 0.981300 -0.192400 -vn 0.000000 0.652500 -0.757800 -vn 0.000000 0.302900 -0.953000 -vn 0.000000 0.831500 0.555600 -vn 0.000000 -0.305100 -0.952300 -vn 0.000000 -0.750700 -0.660700 -vn 0.000000 0.389700 -0.920900 -vn 0.000000 0.500400 -0.865800 -vn -0.000000 -0.981400 0.192100 -vn 0.000000 0.500400 0.865800 -vn 0.000000 0.833800 0.552100 -vn -0.000000 0.929700 0.368400 -vn 0.000000 0.034900 0.999400 -vn -0.000000 -0.058600 0.998300 -vn 0.000000 -0.192300 -0.981300 -vn 0.000000 -0.284400 -0.958700 -vn 0.000000 -0.192300 0.981300 -vn 0.000000 -0.997000 -0.077300 -vn 0.000000 -0.997000 0.077300 -vn 0.000000 -0.970700 -0.240300 -vn 0.000000 0.898000 -0.440100 -vn 0.000000 -0.725800 0.687900 -vn 0.000000 0.058000 -0.998300 -vn 0.000000 0.999100 -0.043000 -vn 0.000000 0.831500 -0.555600 -vn 0.000000 0.928800 -0.370600 -vn 0.000000 -0.956200 0.292800 -vn 0.000000 0.831400 0.555600 -s off -f 41/1/1 40/2/1 39/3/1 -f 41/1/1 39/3/1 38/4/1 -f 41/1/1 38/4/1 37/5/1 -f 42/6/1 41/1/1 37/5/1 -f 42/6/1 37/5/1 36/7/1 -f 42/6/1 36/7/1 35/8/1 -f 42/6/1 35/8/1 34/9/1 -f 43/10/1 42/6/1 34/9/1 -f 43/10/1 34/9/1 33/11/1 -f 43/10/1 33/11/1 32/12/1 -f 43/10/1 32/12/1 31/13/1 -f 43/10/1 31/13/1 30/14/1 -f 44/15/1 43/10/1 30/14/1 -f 44/15/1 30/14/1 29/16/1 -f 44/15/1 29/16/1 28/17/1 -f 44/15/1 28/17/1 27/18/1 -f 45/19/1 44/15/1 27/18/1 -f 1/20/1 55/21/1 54/22/1 -f 1/20/1 54/22/1 53/23/1 -f 46/24/1 45/19/1 27/18/1 -f 47/25/1 46/24/1 27/18/1 -f 48/26/1 47/25/1 27/18/1 -f 49/27/1 48/26/1 27/18/1 -f 50/28/1 49/27/1 27/18/1 -f 51/29/1 50/28/1 23/30/1 -f 23/30/1 50/28/1 24/31/1 -f 24/31/1 50/28/1 25/32/1 -f 25/32/2 50/28/2 26/33/2 -f 26/33/1 50/28/1 27/18/1 -f 52/34/1 51/29/1 19/35/1 -f 19/35/1 51/29/1 20/36/1 -f 20/36/1 51/29/1 21/37/1 -f 21/37/1 51/29/1 22/38/1 -f 22/38/3 51/29/3 23/30/3 -f 1/20/1 53/23/1 52/34/1 -f 1/20/1 52/34/1 3/39/1 -f 3/39/1 52/34/1 4/40/1 -f 4/40/1 52/34/1 5/41/1 -f 5/41/1 52/34/1 6/42/1 -f 6/42/1 52/34/1 7/43/1 -f 7/43/1 52/34/1 8/44/1 -f 8/44/1 52/34/1 9/45/1 -f 9/45/1 52/34/1 10/46/1 -f 10/46/1 52/34/1 11/47/1 -f 11/47/1 52/34/1 12/48/1 -f 12/48/1 52/34/1 13/49/1 -f 13/49/1 52/34/1 14/50/1 -f 14/50/1 52/34/1 15/51/1 -f 15/51/1 52/34/1 16/52/1 -f 16/52/2 52/34/2 17/53/2 -f 17/53/1 52/34/1 18/54/1 -f 18/54/1 52/34/1 19/35/1 -f 1/20/1 3/39/1 2/55/1 -f 81/56/1 80/57/1 79/58/1 -f 81/56/1 79/58/1 78/59/1 -f 82/60/1 81/56/1 78/59/1 -f 82/60/1 78/59/1 77/61/1 -f 83/62/1 82/60/1 77/61/1 -f 83/62/1 77/61/1 76/63/1 -f 84/64/1 83/62/1 76/63/1 -f 85/65/1 84/64/1 76/63/1 -f 85/65/1 76/63/1 75/66/1 -f 86/67/1 85/65/1 75/66/1 -f 86/67/1 75/66/1 74/68/1 -f 87/69/1 86/67/1 74/68/1 -f 87/69/1 74/68/1 73/70/1 -f 88/71/1 87/69/1 73/70/1 -f 88/71/1 73/70/1 128/72/1 -f 128/72/1 73/70/1 72/73/1 -f 88/71/2 128/72/2 127/74/2 -f 129/75/1 128/72/1 72/73/1 -f 88/71/1 127/74/1 126/76/1 -f 130/77/1 129/75/1 72/73/1 -f 88/71/1 126/76/1 125/78/1 -f 131/79/1 130/77/1 72/73/1 -f 88/71/1 125/78/1 124/80/1 -f 132/81/1 131/79/1 72/73/1 -f 89/82/1 88/71/1 124/80/1 -f 132/81/1 72/73/1 71/83/1 -f 89/82/1 124/80/1 123/84/1 -f 133/85/1 132/81/1 71/83/1 -f 89/82/1 123/84/1 122/86/1 -f 134/87/1 133/85/1 71/83/1 -f 89/82/1 122/86/1 121/88/1 -f 135/89/1 134/87/1 71/83/1 -f 90/90/1 89/82/1 121/88/1 -f 135/89/1 71/83/1 70/91/1 -f 90/90/1 121/88/1 120/92/1 -f 136/93/1 135/89/1 70/91/1 -f 90/90/1 120/92/1 119/94/1 -f 137/95/1 136/93/1 70/91/1 -f 91/96/1 90/90/1 119/94/1 -f 137/95/1 70/91/1 69/97/1 -f 91/96/1 119/94/1 118/98/1 -f 138/99/1 137/95/1 69/97/1 -f 91/96/1 118/98/1 117/100/1 -f 139/101/1 138/99/1 69/97/1 -f 92/102/1 91/96/1 117/100/1 -f 139/101/1 69/97/1 68/103/1 -f 92/102/1 117/100/1 116/104/1 -f 140/105/1 139/101/1 68/103/1 -f 93/106/1 92/102/1 116/104/1 -f 93/106/1 116/104/1 115/107/1 -f 141/108/1 140/105/1 68/103/1 -f 141/108/1 68/103/1 67/109/1 -f 93/106/1 115/107/1 114/110/1 -f 142/111/1 141/108/1 67/109/1 -f 94/112/1 93/106/1 114/110/1 -f 142/111/1 67/109/1 66/113/1 -f 94/112/1 114/110/1 113/114/1 -f 143/115/1 142/111/1 66/113/1 -f 94/112/1 113/114/1 112/116/1 -f 144/117/1 143/115/1 66/113/1 -f 95/118/1 94/112/1 112/116/1 -f 144/117/1 66/113/1 65/119/1 -f 95/118/1 112/116/1 111/120/1 -f 145/121/1 144/117/1 65/119/1 -f 95/118/1 111/120/1 110/122/1 -f 146/123/1 145/121/1 65/119/1 -f 96/124/1 95/118/1 110/122/1 -f 146/123/1 65/119/1 64/125/1 -f 96/124/1 110/122/1 109/126/1 -f 147/127/1 146/123/1 64/125/1 -f 96/124/1 109/126/1 108/128/1 -f 148/129/1 147/127/1 64/125/1 -f 96/124/1 108/128/1 107/130/1 -f 149/131/1 148/129/1 64/125/1 -f 97/132/1 96/124/1 107/130/1 -f 149/131/1 64/125/1 63/133/1 -f 97/132/1 107/130/1 106/134/1 -f 150/135/1 149/131/1 63/133/1 -f 97/132/1 106/134/1 105/136/1 -f 151/137/1 150/135/1 63/133/1 -f 97/132/1 105/136/1 104/138/1 -f 104/138/1 151/137/1 63/133/1 -f 97/132/1 104/138/1 63/133/1 -f 98/139/1 97/132/1 63/133/1 -f 98/139/1 63/133/1 62/140/1 -f 99/141/1 98/139/1 62/140/1 -f 99/141/1 62/140/1 61/142/1 -f 100/143/1 99/141/1 61/142/1 -f 100/143/1 61/142/1 60/144/1 -f 101/145/1 100/143/1 60/144/1 -f 101/145/1 60/144/1 59/146/1 -f 102/147/1 101/145/1 59/146/1 -f 102/147/1 59/146/1 58/148/1 -f 103/149/1 102/147/1 58/148/1 -f 103/149/1 58/148/1 57/150/1 -f 56/151/1 103/149/1 57/150/1 -f 192/152/1 191/153/1 190/154/1 -f 192/152/4 190/154/4 189/155/4 -f 192/152/1 189/155/1 188/156/1 -f 193/157/1 192/152/1 188/156/1 -f 193/157/1 188/156/1 187/158/1 -f 193/157/1 187/158/1 186/159/1 -f 193/157/1 186/159/1 185/160/1 -f 194/161/1 193/157/1 185/160/1 -f 194/161/1 185/160/1 184/162/1 -f 194/161/1 184/162/1 183/163/1 -f 194/161/1 183/163/1 182/164/1 -f 194/161/1 182/164/1 181/165/1 -f 195/166/1 194/161/1 181/165/1 -f 195/166/1 181/165/1 180/167/1 -f 195/166/1 180/167/1 179/168/1 -f 195/166/1 179/168/1 178/169/1 -f 196/170/1 195/166/1 178/169/1 -f 152/171/1 206/172/1 205/173/1 -f 152/171/1 205/173/1 204/174/1 -f 197/175/1 196/170/1 178/169/1 -f 198/176/1 197/175/1 178/169/1 -f 199/177/1 198/176/1 178/169/1 -f 200/178/1 199/177/1 178/169/1 -f 201/179/1 200/178/1 178/169/1 -f 202/180/1 201/179/1 174/181/1 -f 174/181/1 201/179/1 175/182/1 -f 175/182/1 201/179/1 176/183/1 -f 176/183/1 201/179/1 177/184/1 -f 177/184/1 201/179/1 178/169/1 -f 203/185/1 202/180/1 170/186/1 -f 170/186/1 202/180/1 171/187/1 -f 171/187/1 202/180/1 172/188/1 -f 172/188/1 202/180/1 173/189/1 -f 173/189/1 202/180/1 174/181/1 -f 152/171/1 204/174/1 203/185/1 -f 152/171/1 203/185/1 154/190/1 -f 154/190/1 203/185/1 155/191/1 -f 155/191/1 203/185/1 156/192/1 -f 156/192/1 203/185/1 157/193/1 -f 157/193/1 203/185/1 158/194/1 -f 158/194/1 203/185/1 159/195/1 -f 159/195/1 203/185/1 160/196/1 -f 160/196/1 203/185/1 161/197/1 -f 161/197/1 203/185/1 162/198/1 -f 162/198/1 203/185/1 163/199/1 -f 163/199/1 203/185/1 164/200/1 -f 164/200/1 203/185/1 165/201/1 -f 165/201/1 203/185/1 166/202/1 -f 166/202/1 203/185/1 167/203/1 -f 167/203/1 203/185/1 168/204/1 -f 168/204/1 203/185/1 169/205/1 -f 169/205/1 203/185/1 170/186/1 -f 152/171/1 154/190/1 153/206/1 -f 247/207/1 246/208/1 245/209/1 -f 247/207/1 245/209/1 244/210/1 -f 247/207/1 244/210/1 243/211/1 -f 248/212/1 247/207/1 243/211/1 -f 248/212/1 243/211/1 242/213/1 -f 248/212/1 242/213/1 241/214/1 -f 248/212/1 241/214/1 240/215/1 -f 249/216/1 248/212/1 240/215/1 -f 249/216/1 240/215/1 239/217/1 -f 249/216/1 239/217/1 238/218/1 -f 249/216/1 238/218/1 237/219/1 -f 249/216/1 237/219/1 236/220/1 -f 250/221/1 249/216/1 236/220/1 -f 250/221/1 236/220/1 235/222/1 -f 250/221/1 235/222/1 234/223/1 -f 250/221/1 234/223/1 233/224/1 -f 251/225/1 250/221/1 233/224/1 -f 207/226/1 261/227/1 260/228/1 -f 207/226/1 260/228/1 259/229/1 -f 252/230/1 251/225/1 233/224/1 -f 253/231/1 252/230/1 233/224/1 -f 254/232/1 253/231/1 233/224/1 -f 255/233/1 254/232/1 233/224/1 -f 256/234/1 255/233/1 233/224/1 -f 257/235/1 256/234/1 229/236/1 -f 229/236/1 256/234/1 230/237/1 -f 230/237/1 256/234/1 231/238/1 -f 231/238/1 256/234/1 232/239/1 -f 232/239/1 256/234/1 233/224/1 -f 258/240/1 257/235/1 225/241/1 -f 225/241/1 257/235/1 226/242/1 -f 226/242/1 257/235/1 227/243/1 -f 227/243/1 257/235/1 228/244/1 -f 228/244/1 257/235/1 229/236/1 -f 207/226/1 259/229/1 258/240/1 -f 207/226/1 258/240/1 209/245/1 -f 209/245/1 258/240/1 210/246/1 -f 210/246/1 258/240/1 211/247/1 -f 211/247/1 258/240/1 212/248/1 -f 212/248/1 258/240/1 213/249/1 -f 213/249/1 258/240/1 214/250/1 -f 214/250/1 258/240/1 215/251/1 -f 215/251/1 258/240/1 216/252/1 -f 216/252/1 258/240/1 217/253/1 -f 217/253/1 258/240/1 218/254/1 -f 218/254/1 258/240/1 219/255/1 -f 219/255/1 258/240/1 220/256/1 -f 220/256/1 258/240/1 221/257/1 -f 221/257/1 258/240/1 222/258/1 -f 222/258/1 258/240/1 223/259/1 -f 223/259/1 258/240/1 224/260/1 -f 224/260/1 258/240/1 225/241/1 -f 207/226/1 209/245/1 208/261/1 -f 262/262/1 273/263/1 270/264/1 -f 270/264/1 273/263/1 272/265/1 -f 270/264/1 272/265/1 271/266/1 -f 262/262/1 270/264/1 269/267/1 -f 262/262/1 269/267/1 266/268/1 -f 266/268/1 269/267/1 268/269/1 -f 266/268/1 268/269/1 267/270/1 -f 262/262/1 266/268/1 265/271/1 -f 262/262/1 265/271/1 264/272/1 -f 262/262/1 264/272/1 263/273/1 -f 426/274/5 336/275/5 337/276/5 -f 426/274/6 479/277/6 336/275/6 -f 426/274/6 478/278/6 479/277/6 -f 308/279/6 478/278/6 426/274/6 -f 308/279/6 307/280/6 478/278/6 -f 308/279/6 466/281/6 307/280/6 -f 308/279/6 512/282/6 466/281/6 -f 415/283/6 512/282/6 308/279/6 -f 415/283/6 414/284/6 512/282/6 -f 415/283/6 441/285/6 414/284/6 -f 415/283/6 489/286/6 441/285/6 -f 415/283/6 465/287/6 489/286/6 -f 409/288/6 465/287/6 415/283/6 -f 409/288/6 408/289/6 465/287/6 -f 409/288/6 539/290/6 408/289/6 -f 409/288/6 295/291/6 539/290/6 -f 475/292/6 295/291/6 409/288/6 -f 380/293/6 482/294/6 526/295/6 -f 380/293/6 463/296/6 482/294/6 -f 476/297/6 295/291/6 475/292/6 -f 296/298/6 295/291/6 476/297/6 -f 329/299/6 295/291/6 296/298/6 -f 424/300/6 295/291/6 329/299/6 -f 439/301/6 295/291/6 424/300/6 -f 348/302/6 487/303/6 439/301/6 -f 487/303/6 438/304/6 439/301/6 -f 438/304/6 358/305/6 439/301/6 -f 358/305/7 359/306/7 439/301/7 -f 359/306/6 295/291/6 439/301/6 -f 367/307/6 523/308/6 348/302/6 -f 523/308/6 538/309/6 348/302/6 -f 538/309/6 347/310/6 348/302/6 -f 347/310/6 486/311/6 348/302/6 -f 486/311/8 487/303/8 348/302/8 -f 380/293/6 367/307/6 463/296/6 -f 380/293/6 449/312/6 367/307/6 -f 449/312/6 541/313/6 367/307/6 -f 541/313/6 391/314/6 367/307/6 -f 391/314/6 499/315/6 367/307/6 -f 499/315/6 494/316/6 367/307/6 -f 494/316/6 448/317/6 367/307/6 -f 448/317/6 368/318/6 367/307/6 -f 368/318/6 369/319/6 367/307/6 -f 369/319/6 524/320/6 367/307/6 -f 524/320/6 540/321/6 367/307/6 -f 540/321/6 366/322/6 367/307/6 -f 366/322/6 488/323/6 367/307/6 -f 488/323/6 492/324/6 367/307/6 -f 492/324/6 447/325/6 367/307/6 -f 447/325/7 354/326/7 367/307/7 -f 354/326/6 355/327/6 367/307/6 -f 355/327/6 523/308/6 367/307/6 -f 380/293/6 381/328/6 449/312/6 -f 396/329/6 459/330/6 460/331/6 -f 396/329/6 294/332/6 459/330/6 -f 412/333/6 294/332/6 396/329/6 -f 412/333/6 293/334/6 294/332/6 -f 500/335/6 293/334/6 412/333/6 -f 500/335/6 325/336/6 293/334/6 -f 385/337/6 325/336/6 500/335/6 -f 274/338/6 325/336/6 385/337/6 -f 274/338/6 506/339/6 325/336/6 -f 275/340/6 506/339/6 274/338/6 -f 275/340/6 505/341/6 506/339/6 -f 316/342/6 505/341/6 275/340/6 -f 316/342/6 315/343/6 505/341/6 -f 360/344/6 315/343/6 316/342/6 -f 360/344/6 320/345/6 315/343/6 -f 320/345/6 462/346/6 315/343/6 -f 360/344/7 445/347/7 320/345/7 -f 511/348/6 462/346/6 320/345/6 -f 360/344/6 361/349/6 445/347/6 -f 472/350/6 462/346/6 511/348/6 -f 360/344/6 421/351/6 361/349/6 -f 473/352/6 462/346/6 472/350/6 -f 360/344/6 327/353/6 421/351/6 -f 531/354/6 462/346/6 473/352/6 -f 525/355/6 327/353/6 360/344/6 -f 531/354/6 364/356/6 462/346/6 -f 525/355/6 326/357/6 327/353/6 -f 365/358/6 364/356/6 531/354/6 -f 525/355/6 518/359/6 326/357/6 -f 517/360/6 364/356/6 365/358/6 -f 525/355/6 537/361/6 518/359/6 -f 420/362/6 364/356/6 517/360/6 -f 502/363/6 537/361/6 525/355/6 -f 420/362/6 302/364/6 364/356/6 -f 502/363/6 530/365/6 537/361/6 -f 321/366/6 302/364/6 420/362/6 -f 502/363/6 522/367/6 530/365/6 -f 322/368/6 302/364/6 321/366/6 -f 503/369/6 522/367/6 502/363/6 -f 322/368/6 301/370/6 302/364/6 -f 503/369/6 469/371/6 522/367/6 -f 470/372/6 301/370/6 322/368/6 -f 503/369/6 418/373/6 469/371/6 -f 471/374/6 301/370/6 470/372/6 -f 395/375/6 418/373/6 503/369/6 -f 471/374/6 404/376/6 301/370/6 -f 395/375/6 324/377/6 418/373/6 -f 529/378/6 404/376/6 471/374/6 -f 286/379/6 324/377/6 395/375/6 -f 286/379/6 323/380/6 324/377/6 -f 435/381/6 404/376/6 529/378/6 -f 435/381/6 434/382/6 404/376/6 -f 286/379/6 352/383/6 323/380/6 -f 516/384/6 434/382/6 435/381/6 -f 287/385/6 352/383/6 286/379/6 -f 516/384/6 509/386/6 434/382/6 -f 287/385/6 536/387/6 352/383/6 -f 417/388/6 509/386/6 516/384/6 -f 287/385/6 527/389/6 536/387/6 -f 313/390/6 509/386/6 417/388/6 -f 456/391/6 527/389/6 287/385/6 -f 313/390/6 328/392/6 509/386/6 -f 456/391/6 519/393/6 527/389/6 -f 314/394/6 328/392/6 313/390/6 -f 456/391/6 346/395/6 519/393/6 -f 467/396/6 328/392/6 314/394/6 -f 345/397/6 346/395/6 456/391/6 -f 467/396/6 342/398/6 328/392/6 -f 345/397/6 413/399/6 346/395/6 -f 428/400/6 342/398/6 467/396/6 -f 345/397/6 312/401/6 413/399/6 -f 343/402/6 342/398/6 428/400/6 -f 345/397/6 311/403/6 312/401/6 -f 431/404/6 342/398/6 343/402/6 -f 292/405/6 311/403/6 345/397/6 -f 431/404/6 344/406/6 342/398/6 -f 292/405/6 510/407/6 311/403/6 -f 508/408/6 344/406/6 431/404/6 -f 292/405/6 535/409/6 510/407/6 -f 291/410/6 344/406/6 508/408/6 -f 292/405/6 290/411/6 535/409/6 -f 290/411/6 344/406/6 291/410/6 -f 292/405/6 344/406/6 290/411/6 -f 515/412/6 344/406/6 292/405/6 -f 515/412/6 484/413/6 344/406/6 -f 319/414/6 484/413/6 515/412/6 -f 319/414/6 483/415/6 484/413/6 -f 279/416/6 483/415/6 319/414/6 -f 279/416/6 278/417/6 483/415/6 -f 416/418/6 278/417/6 279/416/6 -f 416/418/6 521/419/6 278/417/6 -f 452/420/6 521/419/6 416/418/6 -f 452/420/6 387/421/6 521/419/6 -f 388/422/6 387/421/6 452/420/6 -f 388/422/6 430/423/6 387/421/6 -f 429/424/6 430/423/6 388/422/6 -f 351/425/6 403/426/6 543/427/6 -f 351/425/6 402/428/6 403/426/6 -f 351/425/6 284/429/6 402/428/6 -f 285/430/6 284/429/6 351/425/6 -f 285/430/6 455/431/6 284/429/6 -f 285/430/6 464/432/6 455/431/6 -f 285/430/6 306/433/6 464/432/6 -f 423/434/6 306/433/6 285/430/6 -f 423/434/6 305/435/6 306/433/6 -f 423/434/6 422/436/6 305/435/6 -f 423/434/6 407/437/6 422/436/6 -f 423/434/6 406/438/6 407/437/6 -f 335/439/6 406/438/6 423/434/6 -f 335/439/6 507/440/6 406/438/6 -f 335/439/6 334/441/6 507/440/6 -f 335/439/6 332/442/6 334/441/6 -f 353/443/6 332/442/6 335/439/6 -f 317/444/6 341/445/6 461/446/6 -f 317/444/6 340/447/6 341/445/6 -f 333/448/6 332/442/6 353/443/6 -f 545/449/6 332/442/6 333/448/6 -f 432/450/6 332/442/6 545/449/6 -f 433/451/6 332/442/6 432/450/6 -f 394/452/6 332/442/6 433/451/6 -f 310/453/6 384/454/6 394/452/6 -f 384/454/6 542/455/6 394/452/6 -f 542/455/6 299/456/6 394/452/6 -f 299/456/6 300/457/6 394/452/6 -f 300/457/6 332/442/6 394/452/6 -f 378/458/6 453/459/6 310/453/6 -f 453/459/6 454/460/6 310/453/6 -f 454/460/6 309/461/6 310/453/6 -f 309/461/6 383/462/6 310/453/6 -f 383/462/9 384/454/9 310/453/9 -f 317/444/6 378/458/6 340/447/6 -f 317/444/6 468/463/6 378/458/6 -f 468/463/6 419/464/6 378/458/6 -f 419/464/6 528/465/6 378/458/6 -f 528/465/6 513/466/6 378/458/6 -f 513/466/6 514/467/6 378/458/6 -f 514/467/6 397/468/6 378/458/6 -f 397/468/6 288/469/6 378/458/6 -f 288/469/6 289/470/6 378/458/6 -f 289/470/6 458/471/6 378/458/6 -f 458/471/6 393/472/6 378/458/6 -f 393/472/6 504/473/6 378/458/6 -f 504/473/6 400/474/6 378/458/6 -f 400/474/6 401/475/6 378/458/6 -f 401/475/6 377/476/6 378/458/6 -f 377/476/6 276/477/6 378/458/6 -f 276/477/6 277/478/6 378/458/6 -f 277/478/6 453/459/6 378/458/6 -f 317/444/6 318/479/6 468/463/6 -f 376/480/6 375/481/6 451/482/6 -f 376/480/6 379/483/6 375/481/6 -f 376/480/6 496/484/6 379/483/6 -f 399/485/6 496/484/6 376/480/6 -f 399/485/6 495/486/6 496/484/6 -f 399/485/6 534/487/6 495/486/6 -f 399/485/6 398/488/6 534/487/6 -f 283/489/6 398/488/6 399/485/6 -f 283/489/6 457/490/6 398/488/6 -f 283/489/6 282/491/6 457/490/6 -f 283/489/6 350/492/6 282/491/6 -f 283/489/6 349/493/6 350/492/6 -f 411/494/6 349/493/6 283/489/6 -f 411/494/6 410/495/6 349/493/6 -f 411/494/6 485/496/6 410/495/6 -f 411/494/6 297/497/6 485/496/6 -f 493/498/6 297/497/6 411/494/6 -f 303/499/6 498/500/6 304/501/6 -f 303/499/6 386/502/6 498/500/6 -f 373/503/6 297/497/6 493/498/6 -f 374/504/6 297/497/6 373/503/6 -f 405/505/6 297/497/6 374/504/6 -f 298/506/6 297/497/6 405/505/6 -f 390/507/6 297/497/6 298/506/6 -f 444/508/6 372/509/6 390/507/6 -f 372/509/6 446/510/6 390/507/6 -f 446/510/6 501/511/6 390/507/6 -f 501/511/6 389/512/6 390/507/6 -f 389/512/6 297/497/6 390/507/6 -f 357/513/6 533/514/6 444/508/6 -f 533/514/6 491/515/6 444/508/6 -f 491/515/6 443/516/6 444/508/6 -f 443/516/6 371/517/6 444/508/6 -f 371/517/6 372/509/6 444/508/6 -f 303/499/6 357/513/6 386/502/6 -f 303/499/6 474/518/6 357/513/6 -f 474/518/6 481/519/6 357/513/6 -f 481/519/6 392/520/6 357/513/6 -f 392/520/6 338/521/6 357/513/6 -f 338/521/6 339/522/6 357/513/6 -f 339/522/6 544/523/6 357/513/6 -f 544/523/6 382/524/6 357/513/6 -f 382/524/6 427/525/6 357/513/6 -f 427/525/6 520/526/6 357/513/6 -f 520/526/6 477/527/6 357/513/6 -f 477/527/6 370/528/6 357/513/6 -f 370/528/6 330/529/6 357/513/6 -f 330/529/6 331/530/6 357/513/6 -f 331/530/6 546/531/6 357/513/6 -f 546/531/6 356/532/6 357/513/6 -f 356/532/6 442/533/6 357/513/6 -f 442/533/6 533/514/6 357/513/6 -f 303/499/6 425/534/6 474/518/6 -f 450/535/6 436/536/6 480/537/6 -f 436/536/6 437/538/6 480/537/6 -f 436/536/6 532/539/6 437/538/6 -f 450/535/6 440/540/6 436/536/6 -f 450/535/6 362/541/6 440/540/6 -f 362/541/6 490/542/6 440/540/6 -f 362/541/6 363/543/6 490/542/6 -f 450/535/6 497/544/6 362/541/6 -f 450/535/6 281/272/6 497/544/6 -f 450/535/6 280/273/6 281/272/6 -f 84/545/10 385/546/10 500/547/10 -f 36/548/11 307/549/11 466/550/11 -f 243/551/12 496/552/12 495/553/12 -f 182/554/13 407/555/13 406/556/13 -f 130/557/14 472/558/14 511/559/14 -f 258/560/15 357/561/15 444/562/15 -f 47/563/16 296/564/16 476/565/16 -f 167/566/17 377/567/17 401/568/17 -f 201/569/18 394/570/18 433/571/18 -f 257/572/19 444/562/19 390/573/19 -f 39/574/20 336/575/20 479/576/20 -f 92/577/21 395/578/21 503/579/21 -f 172/580/22 309/581/22 454/582/22 -f 221/583/23 222/584/23 546/585/23 -f 52/586/15 367/587/15 348/588/15 -f 214/589/24 544/590/24 339/591/24 -f 183/592/25 422/593/25 407/555/25 -f 60/594/26 278/595/26 521/596/26 -f 261/597/27 304/598/27 498/599/27 -f 109/600/28 413/601/28 312/602/28 -f 76/603/29 325/604/29 506/605/29 -f 55/606/27 526/607/27 482/608/27 -f 101/609/30 416/610/30 279/611/30 -f 206/612/27 461/613/27 341/614/27 -f 191/615/31 543/616/31 403/617/31 -f 144/618/32 313/619/32 417/620/32 -f 68/621/33 404/622/33 434/623/33 -f 22/624/34 486/625/34 347/626/34 -f 83/627/35 500/547/35 412/628/35 -f 117/629/36 418/630/36 324/631/36 -f 233/632/37 297/633/37 389/634/37 -f 63/635/38 344/636/38 484/637/38 -f 91/638/39 503/579/39 502/639/39 -f 136/640/40 321/641/40 420/642/40 -f 151/643/41 291/644/41 508/645/41 -f 271/646/42 532/647/42 436/648/42 -f 23/649/43 487/650/43 486/625/43 -f 106/651/44 510/652/44 535/653/44 -f 164/654/45 504/655/45 393/656/45 -f 125/657/46 421/658/46 327/659/46 -f 236/660/47 349/661/47 410/662/47 -f 159/663/24 397/664/24 514/665/24 -f 30/666/47 465/667/47 408/668/47 -f 225/669/48 533/670/48 442/671/48 -f 75/672/49 506/605/49 505/673/49 -f 192/674/50 351/675/50 543/616/50 -f 49/676/51 424/677/51 329/678/51 -f 188/679/12 284/680/12 455/681/12 -f 208/682/42 425/683/42 303/607/42 -f 198/684/16 545/685/16 333/686/16 -f 98/687/52 515/688/52 292/689/52 -f 14/690/53 488/691/53 366/692/53 -f 41/693/50 426/694/50 337/695/50 -f 143/696/54 417/620/54 516/697/54 -f 216/698/55 427/699/55 382/700/55 -f 241/701/56 534/702/56 398/703/56 -f 86/704/57 275/705/57 274/444/57 -f 114/706/58 352/707/58 536/708/58 -f 180/709/59 507/710/59 334/711/59 -f 57/712/60 430/713/60 429/714/60 -f 31/715/13 489/716/13 465/667/13 -f 169/717/61 277/718/61 276/719/61 -f 135/720/62 420/642/62 517/721/62 -f 6/722/63 499/723/63 391/724/63 -f 150/725/64 508/645/64 431/726/64 -f 272/727/65 437/728/65 532/729/65 -f 249/730/66 283/731/66 399/732/66 -f 67/733/67 434/623/67 509/734/67 -f 200/735/51 433/571/51 432/736/51 -f 264/737/65 281/729/65 280/738/65 -f 122/739/68 518/740/68 537/741/68 -f 107/742/69 311/743/69 510/652/69 -f 65/744/70 328/745/70 342/746/70 -f 15/747/71 492/748/71 488/691/71 -f 228/749/34 371/750/34 443/751/34 -f 94/752/72 287/753/72 286/754/72 -f 215/755/73 382/756/73 544/590/73 -f 255/757/51 298/758/51 405/759/51 -f 238/760/25 282/761/25 350/762/25 -f 161/763/55 289/764/55 288/765/55 -f 170/766/48 453/767/48 277/718/48 -f 104/768/74 290/769/74 291/644/74 -f 25/770/75 358/771/75 438/772/75 -f 7/773/76 494/774/76 499/723/76 -f 42/775/77 308/776/77 426/694/77 -f 263/777/42 280/778/42 450/779/42 -f 158/780/76 514/665/76 513/781/76 -f 252/782/78 373/783/78 493/784/78 -f 78/785/79 294/786/79 293/787/79 -f 270/788/65 436/789/65 440/613/65 -f 99/790/80 319/791/80 515/792/80 -f 244/793/81 379/794/81 496/552/81 -f 81/795/82 396/796/82 460/797/82 -f 177/798/83 300/799/83 299/800/83 -f 89/801/84 525/802/84 360/803/84 -f 142/804/85 516/697/85 435/805/85 -f 33/806/86 414/807/86 441/808/86 -f 70/809/87 302/810/87 301/811/87 -f 34/812/88 512/813/88 414/807/88 -f 115/814/89 323/815/89 352/707/89 -f 224/816/90 442/671/90 356/817/90 -f 207/818/91 303/819/91 304/820/91 -f 134/821/92 517/721/92 365/683/92 -f 185/822/88 306/823/88 305/824/88 -f 162/825/93 458/826/93 289/764/93 -f 123/827/94 326/828/94 518/740/94 -f 50/829/18 439/830/18 424/677/18 -f 230/831/95 446/832/95 372/833/95 -f 58/834/96 387/835/96 430/713/96 -f 43/836/66 415/837/66 308/776/66 -f 17/838/97 354/839/97 447/840/97 -f 108/841/98 312/602/98 311/743/98 -f 254/842/99 405/759/99 374/843/99 -f 145/844/100 314/845/100 313/619/100 -f 9/846/73 368/847/73 448/848/73 -f 210/849/101 481/850/101 474/851/101 -f 153/647/42 318/646/42 317/852/42 -f 73/853/102 315/854/102 462/855/102 -f 100/856/103 279/611/103 319/791/103 -f 20/857/104 538/858/104 523/859/104 -f 246/860/31 451/861/31 375/862/31 -f 199/863/99 432/736/99 545/864/99 -f 178/865/37 332/866/37 300/799/37 -f 218/867/105 477/868/105 520/869/105 -f 137/870/106 322/871/106 321/641/106 -f 186/872/56 464/873/56 306/823/56 -f 35/874/56 466/550/56 512/813/56 -f 88/875/107 360/803/107 316/876/107 -f 116/877/108 324/631/108 323/815/108 -f 28/878/109 539/879/109 295/880/109 -f 105/881/110 535/653/110 290/769/110 -f 256/882/18 390/573/18 298/758/18 -f 202/883/19 310/884/19 394/570/19 -f 171/885/104 454/582/104 453/767/104 -f 124/886/111 327/887/111 326/828/111 -f 51/888/19 348/588/19 439/830/19 -f 156/889/112 528/890/112 419/891/112 -f 59/892/113 521/596/113 387/835/113 -f 96/893/114 345/894/114 456/895/114 -f 48/896/99 329/678/99 296/897/99 -f 273/688/27 480/687/27 437/898/27 -f 221/583/71 331/899/71 330/900/71 -f 194/901/66 423/902/66 285/903/66 -f 163/904/105 393/656/105 458/826/105 -f 247/905/50 376/906/50 451/861/50 -f 148/907/115 343/908/115 428/909/115 -f 80/910/116 460/797/116 459/911/116 -f 40/912/31 337/695/31 336/575/31 -f 19/913/48 523/859/48 355/914/48 -f 206/820/91 152/819/91 317/915/91 -f 213/916/76 339/591/76 338/917/76 -f 12/918/105 540/919/105 524/920/105 -f 56/921/117 429/714/117 388/922/117 -f 179/923/109 334/924/109 332/879/109 -f 205/564/118 341/563/118 340/925/118 -f 223/926/97 356/817/97 546/585/97 -f 97/927/119 292/689/119 345/894/119 -f 72/928/120 462/855/120 364/929/120 -f 140/930/121 529/931/121 471/932/121 -f 27/933/37 295/880/37 359/934/37 -f 64/935/122 342/746/122 344/636/122 -f 231/936/75 501/937/75 446/832/75 -f 187/938/11 455/681/11 464/873/11 -f 113/939/123 536/708/123 527/940/123 -f 268/941/65 490/942/65 363/943/65 -f 237/944/13 350/762/13 349/661/13 -f 121/945/124 537/741/124 530/946/124 -f 248/947/77 399/732/77 376/906/77 -f 110/948/125 346/949/125 413/950/125 -f 193/951/77 285/903/77 351/675/77 -f 239/952/86 457/953/86 282/761/86 -f 45/954/126 475/613/126 409/955/126 -f 11/956/93 524/920/93 369/957/93 -f 4/958/101 541/959/101 449/960/101 -f 197/961/78 333/686/78 353/962/78 -f 232/963/83 389/634/83 501/937/83 -f 18/964/61 355/914/61 354/839/61 -f 87/965/127 316/876/127 275/705/127 -f 132/966/128 531/967/128 473/968/128 -f 220/969/53 330/900/53 370/970/53 -f 240/971/88 398/703/88 457/953/88 -f 102/972/129 452/973/129 416/610/129 -f 168/974/97 276/719/97 377/567/97 -f 147/975/130 428/909/130 467/976/130 -f 26/977/83 359/934/83 358/771/83 -f 212/978/63 338/917/63 392/979/63 -f 3/980/65 449/960/65 381/819/65 -f 155/981/131 419/891/131 468/982/131 -f 264/983/27 265/984/27 497/985/27 -f 173/986/34 383/987/34 309/581/34 -f 118/988/132 469/989/132 418/630/132 -f 267/990/42 363/950/42 362/789/42 -f 37/991/12 478/992/12 307/549/12 -f 139/993/133 471/932/133 470/994/133 -f 95/995/134 456/895/134 287/753/134 -f 204/996/27 340/997/27 378/998/27 -f 260/999/118 498/1000/118 386/1001/118 -f 126/1002/135 361/1003/135 421/658/135 -f 82/1004/136 412/628/136 396/796/136 -f 131/1005/137 473/968/137 472/558/137 -f 10/1006/55 369/957/55 368/866/55 -f 90/1007/138 502/639/138 525/802/138 -f 46/1008/78 476/565/78 475/613/78 -f 229/1009/43 372/833/43 371/750/43 -f 53/1010/27 463/1011/27 367/898/27 -f 1/1012/91 380/1013/91 526/1014/91 -f 219/1015/45 370/970/45 477/868/45 -f 253/1016/16 374/1017/16 373/783/16 -f 61/985/139 483/1018/139 278/595/139 -f 165/1019/53 400/1020/53 504/655/53 -f 38/1021/81 479/576/81 478/992/81 -f 79/1022/140 459/911/140 294/786/140 -f 74/1023/141 505/673/141 315/1024/141 -f 262/1025/91 450/1026/91 480/537/91 -f 245/1027/20 375/862/20 379/794/20 -f 189/1028/81 402/1029/81 284/680/81 -f 211/1030/112 392/979/112 481/850/112 -f 2/1031/42 381/1032/42 380/601/42 -f 71/1033/142 364/929/142 302/810/142 -f 234/1034/109 485/843/109 297/1035/109 -f 203/633/15 378/632/15 310/884/15 -f 196/1036/126 353/962/126 335/1037/126 -f 174/1038/43 384/1039/43 383/987/43 -f 176/1040/75 299/800/75 542/1041/75 -f 21/1042/22 347/626/22 538/858/22 -f 85/1043/143 274/1044/143 385/546/143 -f 181/1045/47 406/556/47 507/710/47 -f 54/1046/118 482/1047/118 463/728/118 -f 259/1017/27 386/1016/27 357/1048/27 -f 184/1049/86 305/824/86 422/593/86 -f 29/1050/59 408/668/59 539/887/59 -f 66/1051/144 509/734/144 328/745/144 -f 62/1052/145 484/637/145 483/915/145 -f 235/1053/59 410/662/59 485/1054/59 -f 226/1055/104 491/1056/104 533/670/104 -f 112/1057/146 527/940/146 519/1058/146 -f 111/1059/147 519/1058/147 346/949/147 -f 13/1060/45 366/692/45 540/919/45 -f 24/1061/95 438/772/95 487/650/95 -f 266/1062/65 362/943/65 497/1063/65 -f 157/1064/63 513/781/63 528/890/63 -f 103/1065/148 388/922/148 452/973/148 -f 146/1066/149 467/976/149 314/845/149 -f 149/1067/150 431/726/150 343/1068/150 -f 195/1069/151 335/1037/151 423/902/151 -f 154/1070/65 468/982/65 318/1071/65 -f 141/1072/152 435/805/152 529/931/152 -f 93/1073/153 286/754/153 395/578/153 -f 119/1074/154 522/1075/154 469/989/154 -f 242/1076/11 495/553/11 534/702/11 -f 120/870/155 530/946/155 522/1075/155 -f 32/1077/25 441/808/25 489/716/25 -f 138/1078/156 470/994/156 322/871/156 -f 128/1079/157 320/1080/157 445/1081/157 -f 269/598/27 440/597/27 490/983/27 -f 160/1082/73 288/1083/73 397/664/73 -f 129/1084/158 511/559/158 320/1080/158 -f 227/1085/22 443/751/22 491/1056/22 -f 166/1086/71 401/568/71 400/1020/71 -f 127/1087/159 445/1081/159 361/1003/159 -f 250/1088/151 411/1089/151 283/731/151 -f 44/1090/151 409/955/151 415/837/151 -f 77/1091/160 293/787/160 325/604/160 -f 16/1092/17 447/840/17 492/748/17 -f 133/1093/161 365/847/161 531/967/161 -f 251/1094/126 493/784/126 411/1089/126 -f 190/1095/20 403/617/20 402/1029/20 -f 5/1096/112 391/724/112 541/959/112 -f 209/1097/65 474/851/65 425/1098/65 -f 8/1099/24 448/848/24 494/774/24 -f 69/1100/162 301/811/162 404/622/162 -f 175/1101/95 542/1041/95 384/1039/95 -f 217/1102/93 520/869/93 427/699/93 -f 83/627/10 84/545/10 500/547/10 -f 35/874/11 36/548/11 466/550/11 -f 242/1076/12 243/551/12 495/553/12 -f 181/1045/13 182/554/13 406/556/13 -f 129/1084/14 130/557/14 511/559/14 -f 257/572/15 258/560/15 444/562/15 -f 46/1008/16 47/563/16 476/565/16 -f 166/1086/23 167/566/23 401/568/23 -f 200/735/18 201/569/18 433/571/18 -f 256/882/19 257/572/19 390/573/19 -f 38/1021/163 39/574/163 479/576/163 -f 91/638/21 92/577/21 503/579/21 -f 171/885/22 172/580/22 454/582/22 -f 331/899/17 221/583/17 546/585/17 -f 51/888/15 52/586/15 348/588/15 -f 213/916/24 214/589/24 339/591/24 -f 182/554/25 183/592/25 407/555/25 -f 59/892/26 60/594/26 521/596/26 -f 260/1103/27 261/597/27 498/599/27 -f 108/841/28 109/600/28 312/602/28 -f 75/672/164 76/603/164 506/605/164 -f 54/1104/27 55/606/27 482/608/27 -f 100/856/30 101/609/30 279/611/30 -f 205/1105/27 206/612/27 341/614/27 -f 190/1095/31 191/615/31 403/617/31 -f 143/696/32 144/618/32 417/620/32 -f 67/733/33 68/621/33 434/623/33 -f 21/1042/34 22/624/34 347/626/34 -f 82/1004/35 83/627/35 412/628/35 -f 116/877/36 117/629/36 324/631/36 -f 232/963/37 233/632/37 389/634/37 -f 62/1052/38 63/635/38 484/637/38 -f 90/1007/39 91/638/39 502/639/39 -f 135/720/40 136/640/40 420/642/40 -f 150/725/41 151/643/41 508/645/41 -f 270/778/42 271/646/42 436/648/42 -f 22/624/43 23/649/43 486/625/43 -f 105/881/44 106/651/44 535/653/44 -f 163/904/45 164/654/45 393/656/45 -f 124/1035/46 125/657/46 327/659/46 -f 235/1053/47 236/660/47 410/662/47 -f 158/780/24 159/663/24 514/665/24 -f 29/1050/47 30/666/47 408/668/47 -f 224/816/48 225/669/48 442/671/48 -f 74/1023/49 75/672/49 505/673/49 -f 191/615/50 192/674/50 543/616/50 -f 48/896/51 49/676/51 329/678/51 -f 187/938/12 188/679/12 455/681/12 -f 207/606/42 208/682/42 303/607/42 -f 197/961/16 198/684/16 333/686/16 -f 97/927/52 98/687/52 292/689/52 -f 13/1060/53 14/690/53 366/692/53 -f 40/912/50 41/693/50 337/695/50 -f 142/804/54 143/696/54 516/697/54 -f 215/765/55 216/698/55 382/700/55 -f 240/971/56 241/701/56 398/703/56 -f 85/908/57 86/704/57 274/444/57 -f 113/939/58 114/706/58 536/708/58 -f 179/1054/165 180/709/165 334/711/165 -f 56/921/60 57/712/60 429/714/60 -f 30/666/13 31/715/13 465/667/13 -f 168/974/90 169/717/90 276/719/90 -f 134/821/62 135/720/62 517/721/62 -f 5/1096/63 6/722/63 391/724/63 -f 149/1067/64 150/725/64 431/726/64 -f 271/737/65 272/727/65 532/729/65 -f 248/947/66 249/730/66 399/732/66 -f 66/1051/67 67/733/67 509/734/67 -f 199/863/51 200/735/51 432/736/51 -f 263/854/65 264/737/65 280/738/65 -f 121/945/68 122/739/68 537/741/68 -f 106/651/69 107/742/69 510/652/69 -f 64/935/70 65/744/70 342/746/70 -f 14/690/71 15/747/71 488/691/71 -f 227/1085/34 228/749/34 443/751/34 -f 93/1073/72 94/752/72 286/754/72 -f 214/589/73 215/755/73 544/590/73 -f 254/842/51 255/757/51 405/759/51 -f 237/944/25 238/760/25 350/762/25 -f 160/700/55 161/763/55 288/765/55 -f 169/717/48 170/766/48 277/718/48 -f 151/643/74 104/768/74 291/644/74 -f 24/1061/75 25/770/75 438/772/75 -f 6/722/76 7/773/76 499/723/76 -f 41/693/77 42/775/77 426/694/77 -f 262/1106/42 263/777/42 450/779/42 -f 157/1064/76 158/780/76 513/781/76 -f 251/1094/78 252/782/78 493/784/78 -f 77/1091/79 78/785/79 293/787/79 -f 269/612/65 270/788/65 440/613/65 -f 98/1063/80 99/790/80 515/792/80 -f 243/551/81 244/793/81 496/552/81 -f 80/910/82 81/795/82 460/797/82 -f 176/1040/83 177/798/83 299/800/83 -f 88/875/84 89/801/84 360/803/84 -f 141/1072/85 142/804/85 435/805/85 -f 32/1077/86 33/806/86 441/808/86 -f 69/1100/87 70/809/87 301/811/87 -f 33/806/88 34/812/88 414/807/88 -f 114/706/89 115/814/89 352/707/89 -f 223/926/61 224/816/61 356/817/61 -f 261/1107/91 207/818/91 304/820/91 -f 133/682/92 134/821/92 365/683/92 -f 184/1049/88 185/822/88 305/824/88 -f 161/763/93 162/825/93 289/764/93 -f 122/739/94 123/827/94 518/740/94 -f 49/676/18 50/829/18 424/677/18 -f 229/1009/95 230/831/95 372/833/95 -f 57/712/96 58/834/96 430/713/96 -f 42/775/66 43/836/66 308/776/66 -f 16/1092/97 17/838/97 447/840/97 -f 107/742/98 108/841/98 311/743/98 -f 253/1034/99 254/842/99 374/843/99 -f 144/618/100 145/844/100 313/619/100 -f 8/1099/73 9/846/73 448/848/73 -f 209/1097/101 210/849/101 474/851/101 -f 152/1001/42 153/647/42 317/852/42 -f 72/928/102 73/853/102 462/855/102 -f 99/790/103 100/856/103 319/791/103 -f 19/913/104 20/857/104 523/859/104 -f 245/1027/31 246/860/31 375/862/31 -f 198/1108/99 199/863/99 545/864/99 -f 177/798/37 178/865/37 300/799/37 -f 217/1102/105 218/867/105 520/869/105 -f 136/640/106 137/870/106 321/641/106 -f 185/822/56 186/872/56 306/823/56 -f 34/812/56 35/874/56 512/813/56 -f 87/965/107 88/875/107 316/876/107 -f 115/814/108 116/877/108 323/815/108 -f 27/933/109 28/878/109 295/880/109 -f 104/768/110 105/881/110 290/769/110 -f 255/757/18 256/882/18 298/758/18 -f 201/569/19 202/883/19 394/570/19 -f 170/766/104 171/885/104 453/767/104 -f 123/827/111 124/886/111 326/828/111 -f 50/829/19 51/888/19 439/830/19 -f 155/981/112 156/889/112 419/891/112 -f 58/834/113 59/892/113 387/835/113 -f 95/995/114 96/893/114 456/895/114 -f 47/990/99 48/896/99 296/897/99 -f 272/685/27 273/688/27 437/898/27 -f 220/969/71 221/583/71 330/900/71 -f 193/951/66 194/901/66 285/903/66 -f 162/825/105 163/904/105 458/826/105 -f 246/860/50 247/905/50 451/861/50 -f 147/975/115 148/907/115 428/909/115 -f 79/1022/116 80/910/116 459/911/116 -f 39/574/31 40/912/31 336/575/31 -f 18/964/48 19/913/48 355/914/48 -f 461/1109/91 206/820/91 317/915/91 -f 212/978/76 213/916/76 338/917/76 -f 11/956/105 12/918/105 524/920/105 -f 103/1065/117 56/921/117 388/922/117 -f 178/878/109 179/923/109 332/879/109 -f 204/1110/118 205/564/118 340/925/118 -f 222/584/97 223/926/97 546/585/97 -f 96/893/119 97/927/119 345/894/119 -f 71/1033/120 72/928/120 364/929/120 -f 139/993/121 140/930/121 471/932/121 -f 26/977/166 27/933/166 359/934/166 -f 63/635/122 64/935/122 344/636/122 -f 230/831/75 231/936/75 446/832/75 -f 186/872/11 187/938/11 464/873/11 -f 112/1057/123 113/939/123 527/940/123 -f 267/1062/65 268/941/65 363/943/65 -f 236/660/13 237/944/13 349/661/13 -f 120/870/124 121/945/124 530/946/124 -f 247/905/77 248/947/77 376/906/77 -f 109/907/125 110/948/125 413/950/125 -f 192/674/77 193/951/77 351/675/77 -f 238/760/86 239/952/86 282/761/86 -f 44/1090/126 45/954/126 409/955/126 -f 10/1006/93 11/956/93 369/957/93 -f 3/980/101 4/958/101 449/960/101 -f 196/1036/78 197/961/78 353/962/78 -f 231/936/83 232/963/83 501/937/83 -f 17/838/90 18/964/90 354/839/90 -f 86/704/127 87/965/127 275/705/127 -f 131/1005/128 132/966/128 473/968/128 -f 219/1015/53 220/969/53 370/970/53 -f 239/952/88 240/971/88 457/953/88 -f 101/609/129 102/972/129 416/610/129 -f 167/566/97 168/974/97 377/567/97 -f 146/1066/130 147/975/130 467/976/130 -f 25/770/83 26/977/83 358/771/83 -f 211/1030/63 212/978/63 392/979/63 -f 2/818/65 3/980/65 381/819/65 -f 154/1070/101 155/981/101 468/982/101 -f 281/1111/27 264/983/27 497/985/27 -f 172/580/34 173/986/34 309/581/34 -f 117/629/132 118/988/132 418/630/132 -f 266/788/42 267/990/42 362/789/42 -f 36/548/12 37/991/12 307/549/12 -f 138/1078/133 139/993/133 470/994/133 -f 94/752/134 95/995/134 287/753/134 -f 203/1112/27 204/996/27 378/998/27 -f 259/852/118 260/999/118 386/1001/118 -f 125/657/135 126/1002/135 421/658/135 -f 81/795/136 82/1004/136 396/796/136 -f 130/557/137 131/1005/137 472/558/137 -f 9/865/55 10/1006/55 368/866/55 -f 89/801/138 90/1007/138 525/802/138 -f 45/954/78 46/1008/78 475/613/78 -f 228/749/43 229/1009/43 371/750/43 -f 52/1113/27 53/1010/27 367/898/27 -f 55/1018/91 1/1012/91 526/1014/91 -f 218/867/45 219/1015/45 477/868/45 -f 252/782/16 253/1016/16 373/783/16 -f 60/594/139 61/985/139 278/595/139 -f 164/654/53 165/1019/53 504/655/53 -f 37/991/81 38/1021/81 478/992/81 -f 78/785/140 79/1022/140 294/786/140 -f 73/1032/141 74/1023/141 315/1024/141 -f 273/1114/91 262/1025/91 480/537/91 -f 244/793/163 245/1027/163 379/794/163 -f 188/679/81 189/1028/81 284/680/81 -f 210/849/112 211/1030/112 481/850/112 -f 1/600/42 2/1031/42 380/601/42 -f 70/809/142 71/1033/142 302/810/142 -f 233/659/109 234/1034/109 297/1035/109 -f 202/883/15 203/633/15 310/884/15 -f 195/1069/126 196/1036/126 335/1037/126 -f 173/986/43 174/1038/43 383/987/43 -f 175/1101/75 176/1040/75 542/1041/75 -f 20/857/22 21/1042/22 538/858/22 -f 84/545/167 85/1043/167 385/546/167 -f 180/709/47 181/1045/47 507/710/47 -f 53/727/118 54/1046/118 463/728/118 -f 258/996/27 259/1017/27 357/1048/27 -f 183/592/86 184/1049/86 422/593/86 -f 28/886/165 29/1050/165 539/887/165 -f 65/744/144 66/1051/144 328/745/144 -f 61/819/145 62/1052/145 483/915/145 -f 234/711/165 235/1053/165 485/1054/165 -f 225/669/104 226/1055/104 533/670/104 -f 111/1059/146 112/1057/146 519/1058/146 -f 110/948/147 111/1059/147 346/949/147 -f 12/918/45 13/1060/45 540/919/45 -f 23/649/95 24/1061/95 487/650/95 -f 265/792/65 266/1062/65 497/1063/65 -f 156/889/63 157/1064/63 528/890/63 -f 102/972/148 103/1065/148 452/973/148 -f 145/844/149 146/1066/149 314/845/149 -f 148/1115/150 149/1067/150 343/1068/150 -f 194/901/151 195/1069/151 423/902/151 -f 153/1116/65 154/1070/65 318/1071/65 -f 140/930/152 141/1072/152 529/931/152 -f 92/577/153 93/1073/153 395/578/153 -f 118/988/154 119/1074/154 469/989/154 -f 241/701/11 242/1076/11 534/702/11 -f 119/1074/155 120/870/155 522/1075/155 -f 31/715/25 32/1077/25 489/716/25 -f 137/870/156 138/1078/156 322/871/156 -f 127/1087/157 128/1079/157 445/1081/157 -f 268/1111/27 269/598/27 490/983/27 -f 159/663/73 160/1082/73 397/664/73 -f 128/1079/158 129/1084/158 320/1080/158 -f 226/1055/22 227/1085/22 491/1056/22 -f 165/1019/71 166/1086/71 400/1020/71 -f 126/1002/159 127/1087/159 361/1003/159 -f 249/730/151 250/1088/151 283/731/151 -f 43/836/151 44/1090/151 415/837/151 -f 76/603/160 77/1091/160 325/604/160 -f 15/747/23 16/1092/23 492/748/23 -f 132/966/161 133/1093/161 531/967/161 -f 250/1088/126 251/1094/126 411/1089/126 -f 189/1028/163 190/1095/163 402/1029/163 -f 4/958/112 5/1096/112 541/959/112 -f 208/924/65 209/1097/65 425/1098/65 -f 7/773/24 8/1099/24 494/774/24 -f 68/621/162 69/1100/162 404/622/162 -f 174/1038/95 175/1101/95 384/1039/95 -f 216/698/93 217/1102/93 427/699/93 diff --git a/src/main/resources/assets/hbm/models/machines/ore_slopper.obj b/src/main/resources/assets/hbm/models/machines/ore_slopper.obj new file mode 100644 index 000000000..0670c20f5 --- /dev/null +++ b/src/main/resources/assets/hbm/models/machines/ore_slopper.obj @@ -0,0 +1,4345 @@ +# Blender v2.79 (sub 0) OBJ File: 'ore_slopper.blend' +# www.blender.org +o Slider +v 1.125000 3.562500 1.437500 +v 1.375000 3.562500 1.437500 +v 1.125000 3.562500 1.187500 +v 1.375000 3.562500 1.187500 +v 1.375000 5.562500 1.187500 +v 1.125000 5.562500 1.187500 +v 1.375000 5.562500 1.437500 +v 1.125000 5.562500 1.437500 +v 1.125000 5.562500 2.937500 +v 1.375000 5.562500 2.937500 +v 1.125000 5.562500 2.687500 +v 1.375000 5.562500 2.687500 +v 1.375000 3.562500 2.687500 +v 1.125000 3.562500 2.687500 +v 1.375000 3.562500 2.937500 +v 1.125000 3.562500 2.937500 +v -1.437500 3.312500 1.500000 +v -1.062500 3.312500 1.500000 +v -1.437500 3.312500 1.125000 +v -1.062500 3.312500 1.125000 +v -1.062500 3.562500 1.125000 +v -1.437500 3.562500 1.125000 +v -1.062500 3.562500 1.500000 +v -1.437500 3.562500 1.500000 +v -1.437500 3.562500 3.000000 +v -1.062500 3.562500 3.000000 +v -1.437500 3.562500 2.625000 +v -1.062500 3.562500 2.625000 +v -1.062500 3.312500 2.625000 +v -1.437500 3.312500 2.625000 +v -1.062500 3.312500 3.000000 +v -1.437500 3.312500 3.000000 +v 1.062500 3.312500 3.000000 +v 1.437500 3.312500 3.000000 +v 1.062500 3.312500 2.625000 +v 1.437500 3.312500 2.625000 +v 1.437500 3.562500 2.625000 +v 1.062500 3.562500 2.625000 +v 1.437500 3.562500 3.000000 +v 1.062500 3.562500 3.000000 +v 1.062500 3.562500 1.500000 +v 1.437500 3.562500 1.500000 +v 1.062500 3.562500 1.125000 +v 1.437500 3.562500 1.125000 +v 1.437500 3.312500 1.125000 +v 1.062500 3.312500 1.125000 +v 1.437500 3.312500 1.500000 +v 1.062500 3.312500 1.500000 +v -1.375000 3.562500 1.437500 +v -1.125000 3.562500 1.437500 +v -1.375000 3.562500 1.187500 +v -1.125000 3.562500 1.187500 +v -1.125000 5.562500 1.187500 +v -1.375000 5.562500 1.187500 +v -1.125000 5.562500 1.437500 +v -1.375000 5.562500 1.437500 +v -1.375000 5.562500 2.937500 +v -1.125000 5.562500 2.937500 +v -1.375000 5.562500 2.687500 +v -1.125000 5.562500 2.687500 +v -1.125000 3.562500 2.687500 +v -1.375000 3.562500 2.687500 +v -1.125000 3.562500 2.937500 +v -1.375000 3.562500 2.937500 +v 1.375000 5.562500 1.187500 +v 1.375000 5.562500 1.437500 +v -1.375000 5.562500 1.187500 +v -1.375000 5.562500 1.437500 +v 1.125000 5.812500 1.437500 +v 1.125000 5.812500 1.187500 +v -1.125000 5.812500 1.187500 +v -1.125000 5.812500 1.437500 +v 1.375000 5.562500 2.937500 +v 1.375000 5.562500 2.687500 +v -1.375000 5.562500 2.937500 +v -1.375000 5.562500 2.687500 +v 1.125000 5.812500 2.937500 +v 1.125000 5.812500 2.687500 +v -1.125000 5.812500 2.687500 +v -1.125000 5.812500 2.937500 +v -1.000000 5.562500 3.062500 +v 1.000000 5.562500 3.062500 +v -1.000000 5.562500 1.062500 +v 1.000000 5.562500 1.062500 +v -1.000000 4.562500 1.062500 +v -1.000000 4.562500 3.062500 +v 1.000000 4.562500 3.062500 +v 1.000000 4.562500 1.062500 +v 0.500000 4.312500 1.562500 +v -0.500000 4.312500 1.562500 +v -0.500000 4.312500 2.562500 +v 0.500000 4.312500 2.562500 +v -0.750000 4.312500 1.312500 +v -0.750000 4.312500 2.812500 +v 0.750000 4.312500 2.812500 +v 0.750000 4.312500 1.312500 +v -0.500000 4.812500 1.562500 +v -0.500000 4.812500 2.562500 +v 0.500000 4.812500 2.562500 +v 0.500000 4.812500 1.562500 +v 1.187500 4.000000 2.687500 +v 1.187500 4.125000 2.687500 +v 1.187500 4.000000 1.437500 +v 1.187500 4.125000 1.437500 +v 1.312500 4.000000 2.687500 +v 1.312500 4.125000 2.687500 +v 1.312500 4.000000 1.437500 +v 1.312500 4.125000 1.437500 +v -1.312500 4.000000 2.687500 +v -1.312500 4.125000 2.687500 +v -1.312500 4.000000 1.437500 +v -1.312500 4.125000 1.437500 +v -1.187500 4.000000 2.687500 +v -1.187500 4.125000 2.687500 +v -1.187500 4.000000 1.437500 +v -1.187500 4.125000 1.437500 +vt 0.512195 0.461538 +vt 0.500000 0.256410 +vt 0.512195 0.256410 +vt 0.536585 0.461538 +vt 0.524390 0.256410 +vt 0.536585 0.256410 +vt 0.524390 0.461538 +vt 0.500000 0.461538 +vt 0.487805 0.256410 +vt 0.658537 0.256410 +vt 0.676829 0.294872 +vt 0.658537 0.294872 +vt 0.676829 0.320513 +vt 0.658537 0.358974 +vt 0.658537 0.320513 +vt 0.713415 0.294872 +vt 0.695122 0.320513 +vt 0.695122 0.294872 +vt 0.731707 0.294872 +vt 0.713415 0.320513 +vt 0.695122 0.294872 +vt 0.676829 0.320513 +vt 0.676829 0.294872 +vt 0.731707 0.294872 +vt 0.713415 0.320513 +vt 0.713415 0.294872 +vt 0.695122 0.320513 +vt 0.658537 0.320513 +vt 0.658537 0.294872 +vt 0.658537 0.358974 +vt 0.658537 0.256410 +vt 0.658537 0.256410 +vt 0.676829 0.294872 +vt 0.658537 0.294872 +vt 0.676829 0.320513 +vt 0.658537 0.358974 +vt 0.658537 0.320513 +vt 0.713415 0.294872 +vt 0.695122 0.320513 +vt 0.695122 0.294872 +vt 0.731707 0.294872 +vt 0.713415 0.320513 +vt 0.695122 0.294872 +vt 0.676829 0.320513 +vt 0.676829 0.294872 +vt 0.731707 0.294872 +vt 0.713415 0.320513 +vt 0.713415 0.294872 +vt 0.695122 0.320513 +vt 0.658537 0.320513 +vt 0.658537 0.294872 +vt 0.658537 0.358974 +vt 0.658537 0.256410 +vt 0.512195 0.461538 +vt 0.500000 0.256410 +vt 0.512195 0.256410 +vt 0.536585 0.461538 +vt 0.524390 0.256410 +vt 0.536585 0.256410 +vt 0.524390 0.461538 +vt 0.500000 0.461538 +vt 0.487805 0.256410 +vt 0.512195 0.461538 +vt 0.500000 0.256410 +vt 0.512195 0.256410 +vt 0.536585 0.461538 +vt 0.524390 0.256410 +vt 0.536585 0.256410 +vt 0.524390 0.461538 +vt 0.500000 0.461538 +vt 0.487805 0.256410 +vt 0.512195 0.461538 +vt 0.500000 0.256410 +vt 0.512195 0.256410 +vt 0.536585 0.461538 +vt 0.524390 0.256410 +vt 0.536585 0.256410 +vt 0.524390 0.461538 +vt 0.500000 0.461538 +vt 0.487805 0.256410 +vt 0.274390 0.692308 +vt 0.408537 0.717949 +vt 0.274390 0.717949 +vt 0.396341 0.743590 +vt 0.286585 0.769231 +vt 0.286585 0.743590 +vt 0.408537 0.769231 +vt 0.408537 0.743590 +vt 0.274390 0.794872 +vt 0.396341 0.769231 +vt 0.408537 0.794872 +vt 0.274390 0.743590 +vt 0.274390 0.769231 +vt 0.274390 0.692308 +vt 0.408537 0.717949 +vt 0.274390 0.717949 +vt 0.396341 0.743590 +vt 0.286585 0.769231 +vt 0.286585 0.743590 +vt 0.274390 0.794872 +vt 0.396341 0.769231 +vt 0.408537 0.794872 +vt 0.274390 0.743590 +vt 0.274390 0.769231 +vt 0.408537 0.769231 +vt 0.408537 0.743590 +vt 0.512195 0.794872 +vt 0.414634 1.000000 +vt 0.414634 0.794872 +vt 0.609756 0.692308 +vt 0.707317 0.794872 +vt 0.609756 0.794872 +vt 0.414634 0.692308 +vt 0.512195 0.692308 +vt 0.707317 0.692308 +vt 0.804878 0.794872 +vt 0.439024 0.641026 +vt 0.487805 0.589744 +vt 0.487805 0.641026 +vt 0.792683 0.666667 +vt 0.804878 0.692308 +vt 0.597561 0.666667 +vt 0.500000 0.666667 +vt 0.695122 0.666667 +vt 0.780488 0.641026 +vt 0.719512 0.666667 +vt 0.731707 0.641026 +vt 0.585366 0.641026 +vt 0.524390 0.666667 +vt 0.536585 0.641026 +vt 0.426829 0.666667 +vt 0.682927 0.641026 +vt 0.621951 0.666667 +vt 0.634146 0.641026 +vt 0.487805 0.487179 +vt 0.439024 0.589744 +vt 0.439024 0.487179 +vt 0.780488 0.589744 +vt 0.682927 0.589744 +vt 0.585366 0.589744 +vt 0.725610 0.448718 +vt 0.731707 0.320513 +vt 0.731707 0.448718 +vt 0.719512 0.320513 +vt 0.713415 0.448718 +vt 0.713415 0.320513 +vt 0.719512 0.320513 +vt 0.713415 0.448718 +vt 0.713415 0.320513 +vt 0.725610 0.448718 +vt 0.731707 0.320513 +vt 0.731707 0.448718 +vt 0.707317 0.448718 +vt 0.707317 0.320513 +vt 0.725610 0.320513 +vt 0.719512 0.448718 +vt 0.707317 0.448718 +vt 0.707317 0.320513 +vt 0.725610 0.320513 +vt 0.719512 0.448718 +vt 0.487805 0.461538 +vt 0.676829 0.256410 +vt 0.676829 0.358974 +vt 0.731707 0.320513 +vt 0.731707 0.320513 +vt 0.676829 0.358974 +vt 0.676829 0.256410 +vt 0.676829 0.256410 +vt 0.676829 0.358974 +vt 0.731707 0.320513 +vt 0.731707 0.320513 +vt 0.676829 0.358974 +vt 0.676829 0.256410 +vt 0.487805 0.461538 +vt 0.487805 0.461538 +vt 0.487805 0.461538 +vt 0.408537 0.692308 +vt 0.408537 0.692308 +vt 0.512195 1.000000 +vt 0.731707 0.589744 +vt 0.634146 0.589744 +vt 0.536585 0.589744 +vn 1.0000 0.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 0.0000 -1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn -0.7071 0.7071 0.0000 +vn 0.7071 0.7071 0.0000 +vn -0.7071 -0.7071 0.0000 +vn 0.7071 -0.7071 0.0000 +vn 0.0000 -0.7071 0.7071 +vn 0.0000 -0.7071 -0.7071 +s off +f 12/1/1 15/2/1 13/3/1 +f 9/4/2 14/5/2 16/6/2 +f 11/7/3 13/3/3 14/5/3 +f 10/8/4 16/9/4 15/2/4 +f 19/10/5 18/11/5 17/12/5 +f 23/13/6 22/14/6 24/15/6 +f 18/11/4 24/15/4 17/12/4 +f 19/16/3 21/17/3 20/18/3 +f 17/19/2 22/20/2 19/16/2 +f 20/18/1 23/13/1 18/11/1 +f 29/21/1 26/22/1 31/23/1 +f 32/24/2 27/25/2 30/26/2 +f 30/26/3 28/27/3 29/21/3 +f 31/23/4 25/28/4 32/29/4 +f 26/22/6 27/30/6 25/28/6 +f 30/31/5 31/23/5 32/29/5 +f 35/32/5 34/33/5 33/34/5 +f 39/35/6 38/36/6 40/37/6 +f 34/33/4 40/37/4 33/34/4 +f 35/38/3 37/39/3 36/40/3 +f 33/41/2 38/42/2 35/38/2 +f 36/40/1 39/35/1 34/33/1 +f 45/43/1 42/44/1 47/45/1 +f 48/46/2 43/47/2 46/48/2 +f 46/48/3 44/49/3 45/43/3 +f 47/45/4 41/50/4 48/51/4 +f 42/44/6 43/52/6 41/50/6 +f 46/53/5 47/45/5 48/51/5 +f 5/54/1 2/55/1 4/56/1 +f 8/57/2 3/58/2 1/59/2 +f 6/60/3 4/56/3 3/58/3 +f 7/61/4 1/62/4 2/55/4 +f 60/63/1 63/64/1 61/65/1 +f 57/66/2 62/67/2 64/68/2 +f 59/69/3 61/65/3 62/67/3 +f 58/70/4 64/71/4 63/64/4 +f 53/72/1 50/73/1 52/74/1 +f 56/75/2 51/76/2 49/77/2 +f 54/78/3 52/74/3 51/76/3 +f 55/79/4 49/80/4 50/73/4 +f 66/81/5 67/82/5 65/83/5 +f 71/84/6 69/85/6 70/86/6 +f 67/82/3 70/86/3 65/83/3 +f 68/87/7 71/84/7 67/88/7 +f 66/89/4 72/90/4 68/91/4 +f 65/92/8 69/85/8 66/93/8 +f 73/94/5 76/95/5 74/96/5 +f 79/97/6 77/98/6 78/99/6 +f 73/100/4 80/101/4 75/102/4 +f 74/103/8 77/98/8 73/104/8 +f 76/95/3 78/99/3 74/96/3 +f 75/105/7 79/97/7 76/106/7 +f 82/107/6 83/108/6 81/109/6 +f 88/110/3 83/111/3 84/112/3 +f 86/113/4 82/107/4 81/109/4 +f 87/114/1 84/112/1 82/107/1 +f 85/115/2 81/116/2 83/111/2 +f 91/117/3 99/118/3 92/119/3 +f 85/115/9 94/120/9 86/121/9 +f 87/114/10 96/122/10 88/110/10 +f 86/113/11 95/123/11 87/114/11 +f 88/110/12 93/124/12 85/115/12 +f 91/125/5 93/126/5 90/127/5 +f 89/128/5 95/129/5 92/130/5 +f 92/119/5 94/131/5 91/117/5 +f 90/132/5 96/133/5 89/134/5 +f 100/135/5 98/136/5 97/137/5 +f 90/127/1 98/138/1 91/125/1 +f 89/134/4 97/139/4 90/132/4 +f 92/130/2 100/140/2 89/128/2 +f 102/141/2 103/142/2 101/143/2 +f 116/144/1 113/145/1 115/146/1 +f 108/147/1 105/148/1 107/149/1 +f 110/150/2 111/151/2 109/152/2 +f 107/149/5 101/153/5 103/154/5 +f 104/155/6 106/156/6 108/147/6 +f 115/146/5 109/157/5 111/158/5 +f 112/159/6 114/160/6 116/144/6 +f 12/1/1 10/8/1 15/2/1 +f 9/4/2 11/7/2 14/5/2 +f 11/7/3 12/1/3 13/3/3 +f 10/8/4 9/161/4 16/9/4 +f 19/10/5 20/162/5 18/11/5 +f 23/13/6 21/163/6 22/14/6 +f 18/11/4 23/13/4 24/15/4 +f 19/16/3 22/20/3 21/17/3 +f 17/19/2 24/164/2 22/20/2 +f 20/18/1 21/17/1 23/13/1 +f 29/21/1 28/27/1 26/22/1 +f 32/24/2 25/165/2 27/25/2 +f 30/26/3 27/25/3 28/27/3 +f 31/23/4 26/22/4 25/28/4 +f 26/22/6 28/166/6 27/30/6 +f 30/31/5 29/167/5 31/23/5 +f 35/32/5 36/168/5 34/33/5 +f 39/35/6 37/169/6 38/36/6 +f 34/33/4 39/35/4 40/37/4 +f 35/38/3 38/42/3 37/39/3 +f 33/41/2 40/170/2 38/42/2 +f 36/40/1 37/39/1 39/35/1 +f 45/43/1 44/49/1 42/44/1 +f 48/46/2 41/171/2 43/47/2 +f 46/48/3 43/47/3 44/49/3 +f 47/45/4 42/44/4 41/50/4 +f 42/44/6 44/172/6 43/52/6 +f 46/53/5 45/173/5 47/45/5 +f 5/54/1 7/61/1 2/55/1 +f 8/57/2 6/60/2 3/58/2 +f 6/60/3 5/54/3 4/56/3 +f 7/61/4 8/174/4 1/62/4 +f 60/63/1 58/70/1 63/64/1 +f 57/66/2 59/69/2 62/67/2 +f 59/69/3 60/63/3 61/65/3 +f 58/70/4 57/175/4 64/71/4 +f 53/72/1 55/79/1 50/73/1 +f 56/75/2 54/78/2 51/76/2 +f 54/78/3 53/72/3 52/74/3 +f 55/79/4 56/176/4 49/80/4 +f 66/81/5 68/177/5 67/82/5 +f 71/84/6 72/90/6 69/85/6 +f 67/82/3 71/84/3 70/86/3 +f 68/87/7 72/90/7 71/84/7 +f 66/89/4 69/85/4 72/90/4 +f 65/92/8 70/86/8 69/85/8 +f 73/94/5 75/178/5 76/95/5 +f 79/97/6 80/101/6 77/98/6 +f 73/100/4 77/98/4 80/101/4 +f 74/103/8 78/99/8 77/98/8 +f 76/95/3 79/97/3 78/99/3 +f 75/105/7 80/101/7 79/97/7 +f 82/107/6 84/179/6 83/108/6 +f 88/110/3 85/115/3 83/111/3 +f 86/113/4 87/114/4 82/107/4 +f 87/114/1 88/110/1 84/112/1 +f 85/115/2 86/121/2 81/116/2 +f 91/117/3 98/136/3 99/118/3 +f 85/115/9 93/126/9 94/120/9 +f 87/114/10 95/129/10 96/122/10 +f 86/113/11 94/131/11 95/123/11 +f 88/110/12 96/133/12 93/124/12 +f 91/125/5 94/120/5 93/126/5 +f 89/128/5 96/122/5 95/129/5 +f 92/119/5 95/123/5 94/131/5 +f 90/132/5 93/124/5 96/133/5 +f 100/135/5 99/118/5 98/136/5 +f 90/127/1 97/180/1 98/138/1 +f 89/134/4 100/181/4 97/139/4 +f 92/130/2 99/182/2 100/140/2 +f 102/141/2 104/155/2 103/142/2 +f 116/144/1 114/160/1 113/145/1 +f 108/147/1 106/156/1 105/148/1 +f 110/150/2 112/159/2 111/151/2 +f 107/149/5 105/148/5 101/153/5 +f 104/155/6 102/141/6 106/156/6 +f 115/146/5 113/145/5 109/157/5 +f 112/159/6 110/150/6 114/160/6 +o Hydraulics +v -0.750000 4.312500 2.812500 +v -0.500000 4.312500 2.812500 +v -0.750000 4.312500 2.562500 +v -0.500000 4.312500 2.562500 +v -0.750000 5.562500 2.562500 +v -0.750000 5.562500 2.812500 +v -0.500000 5.562500 2.812500 +v -0.500000 5.562500 2.562500 +v -0.750000 4.312500 1.562500 +v -0.500000 4.312500 1.562500 +v -0.750000 4.312500 1.312500 +v -0.500000 4.312500 1.312500 +v -0.750000 5.562500 1.312500 +v -0.750000 5.562500 1.562500 +v -0.500000 5.562500 1.562500 +v -0.500000 5.562500 1.312500 +v 0.500000 4.312500 2.812500 +v 0.750000 4.312500 2.812500 +v 0.500000 4.312500 2.562500 +v 0.750000 4.312500 2.562500 +v 0.500000 5.562500 2.562500 +v 0.500000 5.562500 2.812500 +v 0.750000 5.562500 2.812500 +v 0.750000 5.562500 2.562500 +v 0.500000 4.312500 1.562500 +v 0.750000 4.312500 1.562500 +v 0.500000 4.312500 1.312500 +v 0.750000 4.312500 1.312500 +v 0.500000 5.562500 1.312500 +v 0.500000 5.562500 1.562500 +v 0.750000 5.562500 1.562500 +v 0.750000 5.562500 1.312500 +vt 0.768293 0.230769 +vt 0.780488 0.256410 +vt 0.768293 0.256410 +vt 0.768293 0.230769 +vt 0.780488 0.256410 +vt 0.768293 0.256410 +vt 0.817073 0.256410 +vt 0.804878 0.384615 +vt 0.804878 0.256410 +vt 0.792683 0.384615 +vt 0.792683 0.256410 +vt 0.768293 0.384615 +vt 0.780488 0.384615 +vt 0.817073 0.256410 +vt 0.804878 0.384615 +vt 0.804878 0.256410 +vt 0.792683 0.384615 +vt 0.792683 0.256410 +vt 0.768293 0.384615 +vt 0.780488 0.384615 +vt 0.768293 0.230769 +vt 0.780488 0.256410 +vt 0.768293 0.256410 +vt 0.768293 0.230769 +vt 0.780488 0.256410 +vt 0.768293 0.256410 +vt 0.817073 0.256410 +vt 0.804878 0.384615 +vt 0.804878 0.256410 +vt 0.792683 0.384615 +vt 0.792683 0.256410 +vt 0.768293 0.384615 +vt 0.780488 0.384615 +vt 0.817073 0.256410 +vt 0.804878 0.384615 +vt 0.804878 0.256410 +vt 0.792683 0.384615 +vt 0.792683 0.256410 +vt 0.768293 0.384615 +vt 0.780488 0.384615 +vt 0.780488 0.230769 +vt 0.780488 0.230769 +vt 0.817073 0.384615 +vt 0.817073 0.384615 +vt 0.780488 0.230769 +vt 0.780488 0.230769 +vt 0.817073 0.384615 +vt 0.817073 0.384615 +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 +s off +f 119/183/13 118/184/13 117/185/13 +f 127/186/13 126/187/13 125/188/13 +f 117/189/14 121/190/14 119/191/14 +f 119/191/15 124/192/15 120/193/15 +f 118/184/16 122/194/16 117/185/16 +f 120/193/17 123/195/17 118/184/17 +f 125/196/14 129/197/14 127/198/14 +f 127/198/15 132/199/15 128/200/15 +f 126/187/16 130/201/16 125/188/16 +f 128/200/17 131/202/17 126/187/17 +f 135/203/13 134/204/13 133/205/13 +f 143/206/13 142/207/13 141/208/13 +f 133/209/14 137/210/14 135/211/14 +f 135/211/15 140/212/15 136/213/15 +f 134/204/16 138/214/16 133/205/16 +f 136/213/17 139/215/17 134/204/17 +f 141/216/14 145/217/14 143/218/14 +f 143/218/15 148/219/15 144/220/15 +f 142/207/16 146/221/16 141/208/16 +f 144/220/17 147/222/17 142/207/17 +f 119/183/13 120/223/13 118/184/13 +f 127/186/13 128/224/13 126/187/13 +f 117/189/14 122/225/14 121/190/14 +f 119/191/15 121/190/15 124/192/15 +f 118/184/16 123/195/16 122/194/16 +f 120/193/17 124/192/17 123/195/17 +f 125/196/14 130/226/14 129/197/14 +f 127/198/15 129/197/15 132/199/15 +f 126/187/16 131/202/16 130/201/16 +f 128/200/17 132/199/17 131/202/17 +f 135/203/13 136/227/13 134/204/13 +f 143/206/13 144/228/13 142/207/13 +f 133/209/14 138/229/14 137/210/14 +f 135/211/15 137/210/15 140/212/15 +f 134/204/16 139/215/16 138/214/16 +f 136/213/17 140/212/17 139/215/17 +f 141/216/14 146/230/14 145/217/14 +f 143/218/15 145/217/15 148/219/15 +f 142/207/16 147/222/16 146/221/16 +f 144/220/17 148/219/17 147/222/17 +o Bucket +v -0.500000 4.062500 1.562500 +v -0.500000 4.062500 2.562500 +v 0.500000 4.062500 2.562500 +v 0.500000 4.062500 1.562500 +v 0.750000 4.312500 1.312500 +v -0.750000 4.312500 1.312500 +v -0.750000 4.312500 2.812500 +v 0.750000 4.312500 2.812500 +v 0.250000 4.187500 1.812500 +v -0.250000 4.187500 1.812500 +v -0.250000 4.187500 2.312500 +v 0.250000 4.187500 2.312500 +v -0.750000 4.562500 1.312500 +v -0.750000 4.562500 2.812500 +v 0.750000 4.562500 2.812500 +v 0.750000 4.562500 1.312500 +v -0.687500 4.312500 2.750000 +v -0.562500 4.312500 2.750000 +v -0.687500 4.312500 2.625000 +v -0.562500 4.312500 2.625000 +v -0.687500 5.562500 2.750000 +v -0.562500 5.562500 2.750000 +v -0.687500 5.562500 2.625000 +v -0.562500 5.562500 2.625000 +v 0.562500 4.312500 2.750000 +v 0.687500 4.312500 2.750000 +v 0.562500 4.312500 2.625000 +v 0.687500 4.312500 2.625000 +v 0.562500 5.562500 2.750000 +v 0.687500 5.562500 2.750000 +v 0.562500 5.562500 2.625000 +v 0.687500 5.562500 2.625000 +v -0.687500 4.312500 1.500000 +v -0.562500 4.312500 1.500000 +v -0.687500 4.312500 1.375000 +v -0.562500 4.312500 1.375000 +v -0.687500 5.562500 1.500000 +v -0.562500 5.562500 1.500000 +v -0.687500 5.562500 1.375000 +v -0.562500 5.562500 1.375000 +v 0.562500 4.312500 1.500000 +v 0.687500 4.312500 1.500000 +v 0.562500 4.312500 1.375000 +v 0.687500 4.312500 1.375000 +v 0.562500 5.562500 1.500000 +v 0.687500 5.562500 1.500000 +v 0.562500 5.562500 1.375000 +v 0.687500 5.562500 1.375000 +vt 0.829268 0.410256 +vt 0.890244 0.384615 +vt 0.902439 0.410256 +vt 0.841463 0.282051 +vt 0.890244 0.282051 +vt 0.902439 0.256410 +vt 0.829268 0.256410 +vt 0.841463 0.384615 +vt 0.902439 0.230769 +vt 0.914634 0.410256 +vt 0.829268 0.435897 +vt 0.817073 0.256410 +vt 0.878049 0.538462 +vt 0.853659 0.487179 +vt 0.878049 0.487179 +vt 0.902439 0.589744 +vt 0.853659 0.538462 +vt 0.829268 0.589744 +vt 0.902439 0.435897 +vt 0.762195 0.230769 +vt 0.756098 0.358974 +vt 0.756098 0.230769 +vt 0.750000 0.230769 +vt 0.743902 0.358974 +vt 0.743902 0.230769 +vt 0.762195 0.230769 +vt 0.756098 0.358974 +vt 0.756098 0.230769 +vt 0.750000 0.230769 +vt 0.743902 0.358974 +vt 0.743902 0.230769 +vt 0.750000 0.358974 +vt 0.768293 0.230769 +vt 0.762195 0.358974 +vt 0.750000 0.358974 +vt 0.768293 0.230769 +vt 0.762195 0.358974 +vt 0.762195 0.230769 +vt 0.756098 0.358974 +vt 0.756098 0.230769 +vt 0.750000 0.230769 +vt 0.743902 0.358974 +vt 0.743902 0.230769 +vt 0.762195 0.230769 +vt 0.756098 0.358974 +vt 0.756098 0.230769 +vt 0.750000 0.230769 +vt 0.743902 0.358974 +vt 0.743902 0.230769 +vt 0.750000 0.358974 +vt 0.768293 0.230769 +vt 0.762195 0.358974 +vt 0.750000 0.358974 +vt 0.768293 0.230769 +vt 0.762195 0.358974 +vt 0.829268 0.230769 +vt 0.914634 0.256410 +vt 0.817073 0.410256 +vt 0.768293 0.358974 +vt 0.768293 0.358974 +vt 0.768293 0.358974 +vt 0.768293 0.358974 +vn 0.0000 -0.7071 -0.7071 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 -0.7071 0.7071 +vn 0.7071 -0.7071 0.0000 +vn -0.7071 -0.7071 0.0000 +vn 0.0000 0.0000 1.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 0.0000 -1.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.6000 0.8000 0.0000 +vn -0.6000 0.8000 0.0000 +vn 0.0000 0.8000 -0.6000 +vn 0.0000 0.8000 0.6000 +s off +f 153/231/18 149/232/18 154/233/18 +f 149/232/19 151/234/19 150/235/19 +f 155/236/20 151/234/20 156/237/20 +f 156/237/21 152/238/21 153/231/21 +f 154/233/22 150/235/22 155/236/22 +f 156/237/23 162/239/23 155/236/23 +f 155/236/24 161/240/24 154/233/24 +f 154/233/25 164/241/25 153/231/25 +f 153/231/26 163/242/26 156/237/26 +f 159/243/27 157/244/27 158/245/27 +f 158/245/28 162/246/28 159/243/28 +f 160/247/29 164/241/29 157/244/29 +f 159/243/30 163/248/30 160/247/30 +f 157/244/31 161/249/31 158/245/31 +f 175/250/25 180/251/25 176/252/25 +f 174/253/23 177/254/23 173/255/23 +f 167/256/25 172/257/25 168/258/25 +f 166/259/23 169/260/23 165/261/23 +f 168/258/26 170/262/26 166/259/26 +f 165/263/24 171/264/24 167/256/24 +f 176/252/26 178/265/26 174/253/26 +f 173/266/24 179/267/24 175/250/24 +f 191/268/25 196/269/25 192/270/25 +f 190/271/23 193/272/23 189/273/23 +f 183/274/25 188/275/25 184/276/25 +f 182/277/23 185/278/23 181/279/23 +f 184/276/26 186/280/26 182/277/26 +f 181/281/24 187/282/24 183/274/24 +f 192/270/26 194/283/26 190/271/26 +f 189/284/24 195/285/24 191/268/24 +f 153/231/18 152/238/18 149/232/18 +f 149/232/19 152/238/19 151/234/19 +f 155/236/20 150/235/20 151/234/20 +f 156/237/21 151/234/21 152/238/21 +f 154/233/22 149/232/22 150/235/22 +f 156/237/23 163/286/23 162/239/23 +f 155/236/24 162/287/24 161/240/24 +f 154/233/25 161/249/25 164/241/25 +f 153/231/26 164/288/26 163/242/26 +f 159/243/27 160/247/27 157/244/27 +f 158/245/28 161/249/28 162/246/28 +f 160/247/29 163/248/29 164/241/29 +f 159/243/30 162/246/30 163/248/30 +f 157/244/31 164/241/31 161/249/31 +f 175/250/25 179/267/25 180/251/25 +f 174/253/23 178/265/23 177/254/23 +f 167/256/25 171/264/25 172/257/25 +f 166/259/23 170/262/23 169/260/23 +f 168/258/26 172/257/26 170/262/26 +f 165/263/24 169/289/24 171/264/24 +f 176/252/26 180/251/26 178/265/26 +f 173/266/24 177/290/24 179/267/24 +f 191/268/25 195/285/25 196/269/25 +f 190/271/23 194/283/23 193/272/23 +f 183/274/25 187/282/25 188/275/25 +f 182/277/23 186/280/23 185/278/23 +f 184/276/26 188/275/26 186/280/26 +f 181/281/24 185/291/24 187/282/24 +f 192/270/26 196/269/26 194/283/26 +f 189/284/24 193/292/24 195/285/24 +o BladesRight +v -0.375000 3.187500 0.000000 +v -0.156250 3.128886 0.000000 +v 0.003886 2.968750 0.000000 +v 0.062500 2.750000 0.000000 +v 0.003886 2.531250 0.000000 +v -0.156250 2.371114 0.000000 +v -0.375000 2.312500 0.000000 +v -0.593750 2.371114 0.000000 +v -0.753886 2.531250 0.000000 +v -0.812500 2.750000 0.000000 +v -0.753886 2.968750 0.000000 +v -0.593750 3.128886 0.000000 +v -0.375000 3.062500 -0.250000 +v -0.218750 3.020633 -0.250000 +v -0.104367 2.906250 -0.250000 +v -0.062500 2.750000 -0.250000 +v -0.104367 2.593750 -0.250000 +v -0.218750 2.479367 -0.250000 +v -0.375000 2.437500 -0.250000 +v -0.531250 2.479367 -0.250000 +v -0.645633 2.593750 -0.250000 +v -0.687500 2.750000 -0.250000 +v -0.645633 2.906250 -0.250000 +v -0.531250 3.020633 -0.250000 +v -0.375000 3.187500 -0.250000 +v -0.156250 3.128886 -0.250000 +v 0.003886 2.968750 -0.250000 +v 0.062500 2.750000 -0.250000 +v 0.003886 2.531250 -0.250000 +v -0.156250 2.371114 -0.250000 +v -0.375000 2.312500 -0.250000 +v -0.593750 2.371114 -0.250000 +v -0.753886 2.531250 -0.250000 +v -0.812500 2.750000 -0.250000 +v -0.753886 2.968750 -0.250000 +v -0.593750 3.128886 -0.250000 +v -0.375000 3.062500 -0.500000 +v -0.218750 3.020633 -0.500000 +v -0.104367 2.906250 -0.500000 +v -0.062500 2.750000 -0.500000 +v -0.104367 2.593750 -0.500000 +v -0.218750 2.479367 -0.500000 +v -0.375000 2.437500 -0.500000 +v -0.531250 2.479367 -0.500000 +v -0.645633 2.593750 -0.500000 +v -0.687500 2.750000 -0.500000 +v -0.645633 2.906250 -0.500000 +v -0.531250 3.020633 -0.500000 +v -0.375000 3.187500 -1.500000 +v -0.156250 3.128886 -1.500000 +v 0.003886 2.968750 -1.500000 +v 0.062500 2.750000 -1.500000 +v 0.003886 2.531250 -1.500000 +v -0.156250 2.371114 -1.500000 +v -0.375000 2.312500 -1.500000 +v -0.593750 2.371114 -1.500000 +v -0.753886 2.531250 -1.500000 +v -0.812500 2.750000 -1.500000 +v -0.753886 2.968750 -1.500000 +v -0.593750 3.128886 -1.500000 +v -0.375000 3.062500 -1.750000 +v -0.218750 3.020633 -1.750000 +v -0.104367 2.906250 -1.750000 +v -0.062500 2.750000 -1.750000 +v -0.104367 2.593750 -1.750000 +v -0.218750 2.479367 -1.750000 +v -0.375000 2.437500 -1.750000 +v -0.531250 2.479367 -1.750000 +v -0.645633 2.593750 -1.750000 +v -0.687500 2.750000 -1.750000 +v -0.645633 2.906250 -1.750000 +v -0.531250 3.020633 -1.750000 +v -0.375000 3.187500 -1.750000 +v -0.156250 3.128886 -1.750000 +v 0.003886 2.968750 -1.750000 +v 0.062500 2.750000 -1.750000 +v 0.003886 2.531250 -1.750000 +v -0.156250 2.371114 -1.750000 +v -0.375000 2.312500 -1.750000 +v -0.593750 2.371114 -1.750000 +v -0.753886 2.531250 -1.750000 +v -0.812500 2.750000 -1.750000 +v -0.753886 2.968750 -1.750000 +v -0.593750 3.128886 -1.750000 +v -0.375000 3.062500 -2.000000 +v -0.218750 3.020633 -2.000000 +v -0.104367 2.906250 -2.000000 +v -0.062500 2.750000 -2.000000 +v -0.104367 2.593750 -2.000000 +v -0.218750 2.479367 -2.000000 +v -0.375000 2.437500 -2.000000 +v -0.531250 2.479367 -2.000000 +v -0.645633 2.593750 -2.000000 +v -0.687500 2.750000 -2.000000 +v -0.645633 2.906250 -2.000000 +v -0.531250 3.020633 -2.000000 +v -0.531250 3.020633 -1.500000 +v -0.645633 2.906250 -1.500000 +v -0.687500 2.750000 -1.500000 +v -0.645633 2.593750 -1.500000 +v -0.531250 2.479367 -1.500000 +v -0.375000 2.437500 -1.500000 +v -0.218750 2.479367 -1.500000 +v -0.104367 2.593750 -1.500000 +v -0.062500 2.750000 -1.500000 +v -0.104367 2.906250 -1.500000 +v -0.218750 3.020633 -1.500000 +v -0.375000 3.062500 -1.500000 +v -0.593750 3.128886 -1.250000 +v -0.753886 2.968750 -1.250000 +v -0.812500 2.750000 -1.250000 +v -0.753886 2.531250 -1.250000 +v -0.593750 2.371114 -1.250000 +v -0.375000 2.312500 -1.250000 +v -0.156250 2.371114 -1.250000 +v 0.003886 2.531250 -1.250000 +v 0.062500 2.750000 -1.250000 +v 0.003886 2.968750 -1.250000 +v -0.156250 3.128886 -1.250000 +v -0.375000 3.187500 -1.250000 +v -0.531250 3.020633 -1.250000 +v -0.645633 2.906250 -1.250000 +v -0.687500 2.750000 -1.250000 +v -0.645633 2.593750 -1.250000 +v -0.531250 2.479367 -1.250000 +v -0.375000 2.437500 -1.250000 +v -0.218750 2.479367 -1.250000 +v -0.104367 2.593750 -1.250000 +v -0.062500 2.750000 -1.250000 +v -0.104367 2.906250 -1.250000 +v -0.218750 3.020633 -1.250000 +v -0.375000 3.062500 -1.250000 +v -0.593750 3.128886 -1.000000 +v -0.753886 2.968750 -1.000000 +v -0.812500 2.750000 -1.000000 +v -0.753886 2.531250 -1.000000 +v -0.593750 2.371114 -1.000000 +v -0.375000 2.312500 -1.000000 +v -0.156250 2.371114 -1.000000 +v 0.003886 2.531250 -1.000000 +v 0.062500 2.750000 -1.000000 +v 0.003886 2.968750 -1.000000 +v -0.156250 3.128886 -1.000000 +v -0.375000 3.187500 -1.000000 +v -0.531250 3.020633 -1.000000 +v -0.645633 2.906250 -1.000000 +v -0.687500 2.750000 -1.000000 +v -0.645633 2.593750 -1.000000 +v -0.531250 2.479367 -1.000000 +v -0.375000 2.437500 -1.000000 +v -0.218750 2.479367 -1.000000 +v -0.104367 2.593750 -1.000000 +v -0.062500 2.750000 -1.000000 +v -0.104367 2.906250 -1.000000 +v -0.218750 3.020633 -1.000000 +v -0.375000 3.062500 -1.000000 +v -0.593750 3.128886 -0.750000 +v -0.753886 2.968750 -0.750000 +v -0.812500 2.750000 -0.750000 +v -0.753886 2.531250 -0.750000 +v -0.593750 2.371114 -0.750000 +v -0.375000 2.312500 -0.750000 +v -0.156250 2.371114 -0.750000 +v 0.003886 2.531250 -0.750000 +v 0.062500 2.750000 -0.750000 +v 0.003886 2.968750 -0.750000 +v -0.156250 3.128886 -0.750000 +v -0.375000 3.187500 -0.750000 +v -0.531250 3.020633 -0.750000 +v -0.645633 2.906250 -0.750000 +v -0.687500 2.750000 -0.750000 +v -0.645633 2.593750 -0.750000 +v -0.531250 2.479367 -0.750000 +v -0.375000 2.437500 -0.750000 +v -0.218750 2.479367 -0.750000 +v -0.104367 2.593750 -0.750000 +v -0.062500 2.750000 -0.750000 +v -0.104367 2.906250 -0.750000 +v -0.218750 3.020633 -0.750000 +v -0.375000 3.062500 -0.750000 +v -0.593750 3.128886 -0.500000 +v -0.753886 2.968750 -0.500000 +v -0.812500 2.750000 -0.500000 +v -0.753886 2.531250 -0.500000 +v -0.593750 2.371114 -0.500000 +v -0.375000 2.312500 -0.500000 +v -0.156250 2.371114 -0.500000 +v 0.003886 2.531250 -0.500000 +v 0.062500 2.750000 -0.500000 +v 0.003886 2.968750 -0.500000 +v -0.156250 3.128886 -0.500000 +v -0.375000 3.187500 -0.500000 +vt 0.051829 0.846154 +vt 0.060976 0.833333 +vt 0.057927 0.846154 +vt 0.070122 0.846154 +vt 0.064024 0.846154 +vt 0.076220 0.846154 +vt 0.085366 0.833333 +vt 0.082317 0.846154 +vt 0.088415 0.846154 +vt 0.097561 0.833333 +vt 0.094512 0.846154 +vt 0.106707 0.846154 +vt 0.100610 0.846154 +vt 0.112805 0.846154 +vt 0.121951 0.833333 +vt 0.118902 0.846154 +vt 0.125000 0.846154 +vt 0.134146 0.833333 +vt 0.131098 0.846154 +vt 0.143293 0.846154 +vt 0.137195 0.846154 +vt 0.003049 0.846154 +vt 0.012195 0.833333 +vt 0.009146 0.846154 +vt 0.015244 0.846154 +vt 0.024390 0.833333 +vt 0.021341 0.846154 +vt 0.033537 0.846154 +vt 0.027439 0.846154 +vt 0.036585 0.833333 +vt 0.045732 0.846154 +vt 0.039634 0.846154 +vt 0.051829 0.846154 +vt 0.060976 0.833333 +vt 0.057927 0.846154 +vt 0.070122 0.846154 +vt 0.064024 0.846154 +vt 0.076220 0.846154 +vt 0.085366 0.833333 +vt 0.082317 0.846154 +vt 0.088415 0.846154 +vt 0.097561 0.833333 +vt 0.094512 0.846154 +vt 0.106707 0.846154 +vt 0.100610 0.846154 +vt 0.112805 0.846154 +vt 0.121951 0.833333 +vt 0.118902 0.846154 +vt 0.125000 0.846154 +vt 0.134146 0.833333 +vt 0.131098 0.846154 +vt 0.143293 0.846154 +vt 0.137195 0.846154 +vt 0.003049 0.846154 +vt 0.012195 0.833333 +vt 0.009146 0.846154 +vt 0.015244 0.846154 +vt 0.024390 0.833333 +vt 0.021341 0.846154 +vt 0.033537 0.846154 +vt 0.027439 0.846154 +vt 0.036585 0.833333 +vt 0.045732 0.846154 +vt 0.039634 0.846154 +vt 0.057927 0.794872 +vt 0.048780 0.807692 +vt 0.051829 0.794872 +vt 0.070122 0.794872 +vt 0.060976 0.807692 +vt 0.064024 0.794872 +vt 0.076220 0.794872 +vt 0.085366 0.807692 +vt 0.073171 0.807692 +vt 0.094512 0.794872 +vt 0.088415 0.794872 +vt 0.106707 0.794872 +vt 0.097561 0.807692 +vt 0.100610 0.794872 +vt 0.112805 0.794872 +vt 0.121951 0.807692 +vt 0.109756 0.807692 +vt 0.125000 0.794872 +vt 0.134146 0.807692 +vt 0.143293 0.794872 +vt 0.137195 0.794872 +vt 0.003049 0.794872 +vt 0.012195 0.807692 +vt 0.000000 0.807692 +vt 0.015244 0.794872 +vt 0.024390 0.807692 +vt 0.033537 0.794872 +vt 0.027439 0.794872 +vt 0.045732 0.794872 +vt 0.036585 0.807692 +vt 0.039634 0.794872 +vt 0.036585 0.833333 +vt 0.045732 0.846154 +vt 0.039634 0.846154 +vt 0.024390 0.833333 +vt 0.033537 0.846154 +vt 0.027439 0.846154 +vt 0.015244 0.846154 +vt 0.021341 0.846154 +vt 0.003049 0.846154 +vt 0.012195 0.833333 +vt 0.009146 0.846154 +vt 0.134146 0.833333 +vt 0.143293 0.846154 +vt 0.137195 0.846154 +vt 0.125000 0.846154 +vt 0.131098 0.846154 +vt 0.112805 0.846154 +vt 0.121951 0.833333 +vt 0.118902 0.846154 +vt 0.097561 0.833333 +vt 0.106707 0.846154 +vt 0.100610 0.846154 +vt 0.088415 0.846154 +vt 0.094512 0.846154 +vt 0.076220 0.846154 +vt 0.085366 0.833333 +vt 0.082317 0.846154 +vt 0.060976 0.833333 +vt 0.070122 0.846154 +vt 0.064024 0.846154 +vt 0.051829 0.846154 +vt 0.057927 0.846154 +vt 0.045732 0.794872 +vt 0.036585 0.807692 +vt 0.039634 0.794872 +vt 0.033537 0.794872 +vt 0.024390 0.807692 +vt 0.027439 0.794872 +vt 0.021341 0.794872 +vt 0.012195 0.807692 +vt 0.015244 0.794872 +vt 0.003049 0.794872 +vt 0.000000 0.807692 +vt 0.143293 0.794872 +vt 0.134146 0.807692 +vt 0.137195 0.794872 +vt 0.131098 0.794872 +vt 0.121951 0.807692 +vt 0.125000 0.794872 +vt 0.112805 0.794872 +vt 0.109756 0.807692 +vt 0.106707 0.794872 +vt 0.097561 0.807692 +vt 0.100610 0.794872 +vt 0.088415 0.794872 +vt 0.085366 0.807692 +vt 0.076220 0.794872 +vt 0.073171 0.807692 +vt 0.070122 0.794872 +vt 0.060976 0.807692 +vt 0.064024 0.794872 +vt 0.051829 0.794872 +vt 0.048780 0.807692 +vt 0.036585 0.833333 +vt 0.045732 0.846154 +vt 0.039634 0.846154 +vt 0.024390 0.833333 +vt 0.033537 0.846154 +vt 0.027439 0.846154 +vt 0.015244 0.846154 +vt 0.021341 0.846154 +vt 0.003049 0.846154 +vt 0.012195 0.833333 +vt 0.009146 0.846154 +vt 0.134146 0.833333 +vt 0.143293 0.846154 +vt 0.137195 0.846154 +vt 0.125000 0.846154 +vt 0.131098 0.846154 +vt 0.112805 0.846154 +vt 0.121951 0.833333 +vt 0.118902 0.846154 +vt 0.097561 0.833333 +vt 0.106707 0.846154 +vt 0.100610 0.846154 +vt 0.088415 0.846154 +vt 0.094512 0.846154 +vt 0.076220 0.846154 +vt 0.085366 0.833333 +vt 0.082317 0.846154 +vt 0.060976 0.833333 +vt 0.070122 0.846154 +vt 0.064024 0.846154 +vt 0.051829 0.846154 +vt 0.057927 0.846154 +vt 0.036585 0.807692 +vt 0.045732 0.794872 +vt 0.048780 0.807692 +vt 0.024390 0.807692 +vt 0.033537 0.794872 +vt 0.015244 0.794872 +vt 0.012195 0.807692 +vt 0.003049 0.794872 +vt 0.000000 0.807692 +vt 0.134146 0.807692 +vt 0.143293 0.794872 +vt 0.146341 0.807692 +vt 0.125000 0.794872 +vt 0.121951 0.807692 +vt 0.112805 0.794872 +vt 0.109756 0.807692 +vt 0.097561 0.807692 +vt 0.106707 0.794872 +vt 0.088415 0.794872 +vt 0.085366 0.807692 +vt 0.076220 0.794872 +vt 0.073171 0.807692 +vt 0.060976 0.807692 +vt 0.070122 0.794872 +vt 0.051829 0.794872 +vt 0.048780 0.833333 +vt 0.073171 0.833333 +vt 0.109756 0.833333 +vt 0.146341 0.833333 +vt -0.000000 0.833333 +vt 0.048780 0.833333 +vt 0.073171 0.833333 +vt 0.109756 0.833333 +vt 0.146341 0.833333 +vt 0.000000 0.833333 +vt 0.082317 0.794872 +vt 0.118902 0.794872 +vt 0.131098 0.794872 +vt 0.146341 0.807692 +vt 0.009146 0.794872 +vt 0.021341 0.794872 +vt 0.048780 0.833333 +vt 0.000000 0.833333 +vt 0.146341 0.833333 +vt 0.109756 0.833333 +vt 0.073171 0.833333 +vt 0.009146 0.794872 +vt 0.146341 0.807692 +vt 0.118902 0.794872 +vt 0.094512 0.794872 +vt 0.082317 0.794872 +vt 0.057927 0.794872 +vt 0.048780 0.833333 +vt 0.000000 0.833333 +vt 0.146341 0.833333 +vt 0.109756 0.833333 +vt 0.073171 0.833333 +vt 0.039634 0.794872 +vt 0.027439 0.794872 +vt 0.021341 0.794872 +vt 0.009146 0.794872 +vt 0.137195 0.794872 +vt 0.131098 0.794872 +vt 0.118902 0.794872 +vt 0.100610 0.794872 +vt 0.094512 0.794872 +vt 0.082317 0.794872 +vt 0.064024 0.794872 +vt 0.057927 0.794872 +vt 0.134146 0.807692 +vt 0.121951 0.807692 +vt 0.060976 0.807692 +vt 0.085366 0.807692 +vt 0.036585 0.807692 +vt 0.024390 0.807692 +vt 0.097561 0.807692 +vt 0.048780 0.807692 +vt 0.012195 0.807692 +vt -0.000000 0.807692 +vt 0.109756 0.807692 +vt 0.073171 0.807692 +vt 0.106707 0.871795 +vt 0.100610 0.871795 +vt 0.039634 0.871795 +vt 0.003049 0.871795 +vt 0.112805 0.871795 +vt 0.057927 0.871795 +vt 0.051829 0.871795 +vt 0.076220 0.871795 +vt 0.015244 0.871795 +vt 0.125000 0.871795 +vt 0.070122 0.871795 +vt 0.064024 0.871795 +vt 0.088415 0.871795 +vt 0.027439 0.871795 +vt 0.137195 0.871795 +vt 0.100610 0.871795 +vt 0.039634 0.871795 +vt 0.003049 0.871795 +vt 0.112805 0.871795 +vt 0.051829 0.871795 +vt 0.082317 0.871795 +vt 0.076220 0.871795 +vt 0.015244 0.871795 +vt 0.125000 0.871795 +vt 0.064024 0.871795 +vt 0.088415 0.871795 +vt 0.027439 0.871795 +vt 0.137195 0.871795 +vt 0.137195 0.871795 +vt 0.027439 0.871795 +vt 0.088415 0.871795 +vt 0.070122 0.871795 +vt 0.064024 0.871795 +vt 0.125000 0.871795 +vt 0.015244 0.871795 +vt 0.076220 0.871795 +vt 0.051829 0.871795 +vt 0.112805 0.871795 +vt 0.003049 0.871795 +vt 0.039634 0.871795 +vt 0.100610 0.871795 +vt 0.137195 0.871795 +vt 0.027439 0.871795 +vt 0.088415 0.871795 +vt 0.070122 0.871795 +vt 0.064024 0.871795 +vt 0.125000 0.871795 +vt 0.015244 0.871795 +vt 0.076220 0.871795 +vt 0.051829 0.871795 +vt 0.112805 0.871795 +vt 0.003049 0.871795 +vt 0.039634 0.871795 +vt 0.100610 0.871795 +vt 0.146341 0.807692 +vt 0.045732 0.871795 +vt 0.009146 0.871795 +vt 0.118902 0.871795 +vt 0.082317 0.871795 +vt 0.021341 0.871795 +vt 0.131098 0.871795 +vt 0.094512 0.871795 +vt 0.033537 0.871795 +vt 0.143293 0.871795 +vt 0.106707 0.871795 +vt 0.045732 0.871795 +vt 0.009146 0.871795 +vt 0.118902 0.871795 +vt 0.057927 0.871795 +vt 0.021341 0.871795 +vt 0.131098 0.871795 +vt 0.070122 0.871795 +vt 0.094512 0.871795 +vt 0.033537 0.871795 +vt 0.143293 0.871795 +vt 0.143293 0.871795 +vt 0.033537 0.871795 +vt 0.094512 0.871795 +vt 0.131098 0.871795 +vt 0.021341 0.871795 +vt 0.082317 0.871795 +vt 0.057927 0.871795 +vt 0.118902 0.871795 +vt 0.009146 0.871795 +vt 0.045732 0.871795 +vt 0.106707 0.871795 +vt 0.143293 0.871795 +vt 0.033537 0.871795 +vt 0.094512 0.871795 +vt 0.131098 0.871795 +vt 0.021341 0.871795 +vt 0.082317 0.871795 +vt 0.057927 0.871795 +vt 0.118902 0.871795 +vt 0.009146 0.871795 +vt 0.045732 0.871795 +vt 0.106707 0.871795 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 0.0000 1.0000 +vn 0.5000 -0.8660 0.0000 +vn 0.8660 -0.5000 -0.0000 +vn -0.5000 0.8660 -0.0000 +vn -0.0000 1.0000 -0.0000 +vn 0.5000 0.8660 -0.0000 +vn 0.8660 0.5000 -0.0000 +vn -1.0000 -0.0000 0.0000 +vn -0.8660 -0.5000 0.0000 +vn -0.0000 -1.0000 -0.0000 +vn 1.0000 0.0000 -0.0000 +vn -0.8660 0.5000 0.0000 +vn -0.5000 -0.8660 0.0000 +s off +f 219/293/32 232/294/32 220/295/32 +f 232/294/32 209/296/32 220/297/32 +f 209/298/32 222/299/32 210/300/32 +f 210/301/32 223/302/32 211/303/32 +f 223/302/32 212/304/32 211/305/32 +f 212/306/32 225/307/32 213/308/32 +f 213/309/32 226/310/32 214/311/32 +f 226/310/32 215/312/32 214/313/32 +f 215/314/32 228/315/32 216/316/32 +f 216/317/32 229/318/32 217/319/32 +f 229/318/32 218/320/32 217/321/32 +f 230/322/32 219/323/32 218/324/32 +f 267/325/32 280/326/32 268/327/32 +f 280/326/32 257/328/32 268/329/32 +f 257/330/32 270/331/32 258/332/32 +f 258/333/32 271/334/32 259/335/32 +f 271/334/32 260/336/32 259/337/32 +f 260/338/32 273/339/32 261/340/32 +f 261/341/32 274/342/32 262/343/32 +f 274/342/32 263/344/32 262/345/32 +f 263/346/32 276/347/32 264/348/32 +f 264/349/32 277/350/32 265/351/32 +f 277/350/32 266/352/32 265/353/32 +f 278/354/32 267/355/32 266/356/32 +f 293/357/33 255/358/33 294/359/33 +f 304/360/33 256/361/33 293/362/33 +f 304/363/33 246/364/33 245/365/33 +f 302/366/33 246/364/33 303/367/33 +f 301/368/33 247/369/33 302/370/33 +f 301/371/33 249/372/33 248/373/33 +f 300/374/33 250/375/33 249/372/33 +f 298/376/33 250/375/33 299/377/33 +f 298/378/33 252/379/33 251/380/33 +f 297/381/33 253/382/33 252/379/33 +f 295/383/33 253/382/33 296/384/33 +f 294/385/33 254/386/33 295/387/33 +f 307/388/32 318/389/32 319/390/32 +f 308/391/32 319/392/32 320/393/32 +f 321/394/32 308/391/32 320/395/32 +f 322/396/32 309/397/32 321/398/32 +f 311/399/32 322/400/32 323/401/32 +f 324/402/32 311/399/32 323/403/32 +f 325/404/32 312/405/32 324/406/32 +f 314/407/32 325/408/32 326/409/32 +f 327/410/32 314/407/32 326/411/32 +f 328/412/32 315/413/32 327/414/32 +f 305/415/32 328/416/32 317/417/32 +f 318/418/32 305/415/32 317/419/32 +f 243/420/33 379/421/33 242/422/33 +f 242/423/33 380/424/33 241/425/33 +f 241/426/33 381/427/33 240/428/33 +f 239/429/33 381/427/33 382/430/33 +f 239/431/33 383/432/33 238/433/33 +f 238/434/33 384/435/33 237/436/33 +f 236/437/33 384/435/33 385/438/33 +f 236/439/33 386/440/33 235/441/33 +f 234/442/33 386/440/33 387/443/33 +f 233/444/33 387/443/33 388/445/33 +f 233/446/33 377/447/33 244/448/33 +f 243/449/33 377/447/33 378/450/33 +f 355/451/32 366/452/32 367/453/32 +f 356/454/32 367/455/32 368/456/32 +f 369/457/32 356/454/32 368/458/32 +f 370/459/32 357/460/32 369/461/32 +f 359/462/32 370/463/32 371/464/32 +f 372/465/32 359/462/32 371/466/32 +f 373/467/32 360/468/32 372/469/32 +f 362/470/32 373/471/32 374/472/32 +f 375/473/32 362/470/32 374/474/32 +f 376/475/32 363/476/32 375/477/32 +f 353/478/32 376/479/32 365/480/32 +f 366/481/32 353/478/32 365/482/32 +f 331/483/33 342/484/33 330/485/33 +f 332/486/33 343/487/33 331/483/33 +f 345/488/33 332/486/33 333/489/33 +f 346/490/33 333/489/33 334/491/33 +f 335/492/33 346/493/33 334/494/33 +f 348/495/33 335/492/33 336/496/33 +f 349/497/33 336/496/33 337/498/33 +f 338/499/33 349/500/33 337/498/33 +f 351/501/33 338/499/33 339/502/33 +f 352/503/33 339/502/33 340/504/33 +f 329/505/33 352/506/33 340/504/33 +f 342/507/33 329/505/33 330/485/33 +f 219/293/32 231/508/32 232/294/32 +f 232/294/32 221/509/32 209/296/32 +f 209/298/32 221/509/32 222/299/32 +f 210/301/32 222/299/32 223/302/32 +f 223/302/32 224/510/32 212/304/32 +f 212/306/32 224/510/32 225/307/32 +f 213/309/32 225/307/32 226/310/32 +f 226/310/32 227/511/32 215/312/32 +f 215/314/32 227/512/32 228/315/32 +f 216/317/32 228/315/32 229/318/32 +f 229/318/32 230/322/32 218/320/32 +f 230/322/32 231/508/32 219/323/32 +f 267/325/32 279/513/32 280/326/32 +f 280/326/32 269/514/32 257/328/32 +f 257/330/32 269/514/32 270/331/32 +f 258/333/32 270/331/32 271/334/32 +f 271/334/32 272/515/32 260/336/32 +f 260/338/32 272/515/32 273/339/32 +f 261/341/32 273/339/32 274/342/32 +f 274/342/32 275/516/32 263/344/32 +f 263/346/32 275/517/32 276/347/32 +f 264/349/32 276/347/32 277/350/32 +f 277/350/32 278/354/32 266/352/32 +f 278/354/32 279/513/32 267/355/32 +f 293/357/33 256/361/33 255/358/33 +f 304/360/33 245/365/33 256/361/33 +f 304/363/33 303/518/33 246/364/33 +f 302/366/33 247/369/33 246/364/33 +f 301/368/33 248/373/33 247/369/33 +f 301/371/33 300/519/33 249/372/33 +f 300/374/33 299/520/33 250/375/33 +f 298/376/33 251/521/33 250/375/33 +f 298/378/33 297/522/33 252/379/33 +f 297/381/33 296/523/33 253/382/33 +f 295/383/33 254/386/33 253/382/33 +f 294/385/33 255/358/33 254/386/33 +f 307/388/32 306/524/32 318/389/32 +f 308/391/32 307/388/32 319/392/32 +f 321/394/32 309/397/32 308/391/32 +f 322/396/32 310/525/32 309/397/32 +f 311/399/32 310/526/32 322/400/32 +f 324/402/32 312/405/32 311/399/32 +f 325/404/32 313/527/32 312/405/32 +f 314/407/32 313/527/32 325/408/32 +f 327/410/32 315/413/32 314/407/32 +f 328/412/32 316/528/32 315/413/32 +f 305/415/32 316/528/32 328/416/32 +f 318/418/32 306/524/32 305/415/32 +f 243/420/33 378/450/33 379/421/33 +f 242/423/33 379/421/33 380/424/33 +f 241/426/33 380/424/33 381/427/33 +f 239/429/33 240/529/33 381/427/33 +f 239/431/33 382/530/33 383/432/33 +f 238/434/33 383/432/33 384/435/33 +f 236/437/33 237/531/33 384/435/33 +f 236/439/33 385/438/33 386/440/33 +f 234/442/33 235/532/33 386/440/33 +f 233/444/33 234/533/33 387/443/33 +f 233/446/33 388/445/33 377/447/33 +f 243/449/33 244/534/33 377/447/33 +f 355/451/32 354/535/32 366/452/32 +f 356/454/32 355/451/32 367/455/32 +f 369/457/32 357/460/32 356/454/32 +f 370/459/32 358/536/32 357/460/32 +f 359/462/32 358/537/32 370/463/32 +f 372/465/32 360/468/32 359/462/32 +f 373/467/32 361/538/32 360/468/32 +f 362/470/32 361/538/32 373/471/32 +f 375/473/32 363/476/32 362/470/32 +f 376/475/32 364/539/32 363/476/32 +f 353/478/32 364/539/32 376/479/32 +f 366/481/32 354/535/32 353/478/32 +f 331/483/33 343/540/33 342/484/33 +f 332/486/33 344/541/33 343/487/33 +f 345/488/33 344/542/33 332/486/33 +f 346/490/33 345/543/33 333/489/33 +f 335/492/33 347/544/33 346/493/33 +f 348/495/33 347/545/33 335/492/33 +f 349/497/33 348/546/33 336/496/33 +f 338/499/33 350/547/33 349/500/33 +f 351/501/33 350/548/33 338/499/33 +f 352/503/33 351/549/33 339/502/33 +f 329/505/33 341/550/33 352/506/33 +f 342/507/33 341/551/33 329/505/33 +s 1 +f 202/552/34 225/307/35 201/553/35 +f 208/554/36 221/509/37 232/294/36 +f 198/555/38 223/302/39 222/299/38 +f 206/556/40 229/318/41 205/557/41 +f 202/552/34 227/511/42 226/310/34 +f 199/558/39 224/510/43 223/302/39 +f 207/559/44 230/322/40 206/556/40 +f 204/560/45 227/512/42 203/561/42 +f 201/553/35 224/510/43 200/562/43 +f 208/554/36 231/508/44 207/559/44 +f 198/555/38 221/509/37 197/563/37 +f 205/557/41 228/315/45 204/560/45 +f 211/305/39 236/564/43 235/565/39 +f 219/323/44 242/566/40 218/324/40 +f 216/316/45 239/567/42 215/314/42 +f 213/308/35 236/568/43 212/306/43 +f 219/293/44 244/569/36 243/570/44 +f 210/300/38 233/571/37 209/298/37 +f 217/319/41 240/572/45 216/317/45 +f 214/311/34 237/573/35 213/309/35 +f 220/297/36 233/574/37 244/575/36 +f 211/303/39 234/576/38 210/301/38 +f 218/320/40 241/577/41 217/321/41 +f 215/312/42 238/578/34 214/313/34 +f 250/375/34 273/339/35 249/372/35 +f 245/365/37 280/326/36 256/361/36 +f 247/369/39 270/331/38 246/364/38 +f 254/386/40 277/350/41 253/382/41 +f 251/521/42 274/342/34 250/375/34 +f 248/373/43 271/334/39 247/369/39 +f 255/358/44 278/354/40 254/386/40 +f 252/379/45 275/517/42 251/380/42 +f 249/372/35 272/515/43 248/373/43 +f 255/358/44 280/326/36 279/513/44 +f 246/364/38 269/514/37 245/365/37 +f 253/382/41 276/347/45 252/379/45 +f 260/336/43 283/579/39 259/337/39 +f 267/355/44 290/580/40 266/356/40 +f 264/348/45 287/581/42 263/346/42 +f 261/340/35 284/582/43 260/338/43 +f 268/327/36 291/583/44 267/325/44 +f 257/330/37 282/584/38 281/585/37 +f 265/351/41 288/586/45 264/349/45 +f 262/343/34 285/587/35 261/341/35 +f 257/328/37 292/588/36 268/329/36 +f 259/335/39 282/589/38 258/333/38 +f 266/352/40 289/590/41 265/353/41 +f 263/344/42 286/591/34 262/345/34 +f 322/400/42 299/592/34 323/401/34 +f 319/392/40 296/593/41 320/393/41 +f 326/411/39 303/594/38 327/410/38 +f 317/417/36 304/595/37 293/596/36 +f 323/403/34 300/597/35 324/402/35 +f 320/395/41 297/598/45 321/394/45 +f 327/414/38 304/599/37 328/412/37 +f 317/419/36 294/600/44 318/418/44 +f 324/406/35 301/601/43 325/404/43 +f 321/398/45 298/602/42 322/396/42 +f 318/389/44 295/603/40 319/390/40 +f 325/408/43 302/604/39 326/409/39 +f 332/486/41 309/397/45 333/489/45 +f 339/502/38 316/528/37 340/504/37 +f 329/505/36 306/524/44 330/485/44 +f 336/496/35 313/527/43 337/498/43 +f 333/489/45 310/525/42 334/491/42 +f 330/485/44 307/388/40 331/483/40 +f 337/498/43 314/407/39 338/499/39 +f 334/494/42 311/399/34 335/492/34 +f 331/483/40 308/391/41 332/486/41 +f 338/499/39 315/413/38 339/502/38 +f 340/504/37 305/415/36 329/505/36 +f 335/492/34 312/405/35 336/496/35 +f 370/463/42 347/605/34 371/464/34 +f 367/455/40 344/606/41 368/456/41 +f 374/474/39 351/607/38 375/473/38 +f 365/480/36 352/608/37 341/609/36 +f 371/466/34 348/610/35 372/465/35 +f 368/458/41 345/611/45 369/457/45 +f 375/477/38 352/612/37 376/475/37 +f 365/482/36 342/613/44 366/481/44 +f 372/469/35 349/614/43 373/467/43 +f 369/461/45 346/615/42 370/459/42 +f 366/452/44 343/616/40 367/453/40 +f 373/471/43 350/617/39 374/472/39 +f 380/424/41 357/460/45 381/427/45 +f 388/445/37 363/476/38 364/539/37 +f 377/447/36 354/535/44 378/450/44 +f 385/438/43 360/468/35 361/538/43 +f 381/427/45 358/536/42 382/430/42 +f 378/450/44 355/451/40 379/421/40 +f 385/438/43 362/470/39 386/440/39 +f 382/530/42 359/462/34 383/432/34 +f 379/421/40 356/454/41 380/424/41 +f 386/440/39 363/476/38 387/443/38 +f 388/445/37 353/478/36 377/447/36 +f 383/432/34 360/468/35 384/435/35 +f 202/552/34 226/310/34 225/307/35 +f 208/554/36 197/563/37 221/509/37 +f 198/555/38 199/558/39 223/302/39 +f 206/556/40 230/322/40 229/318/41 +f 202/552/34 203/618/42 227/511/42 +f 199/558/39 200/562/43 224/510/43 +f 207/559/44 231/508/44 230/322/40 +f 204/560/45 228/315/45 227/512/42 +f 201/553/35 225/307/35 224/510/43 +f 208/554/36 232/294/36 231/508/44 +f 198/555/38 222/299/38 221/509/37 +f 205/557/41 229/318/41 228/315/45 +f 211/305/39 212/304/43 236/564/43 +f 219/323/44 243/619/44 242/566/40 +f 216/316/45 240/620/45 239/567/42 +f 213/308/35 237/621/35 236/568/43 +f 219/293/44 220/295/36 244/569/36 +f 210/300/38 234/622/38 233/571/37 +f 217/319/41 241/623/41 240/572/45 +f 214/311/34 238/624/34 237/573/35 +f 220/297/36 209/296/37 233/574/37 +f 211/303/39 235/625/39 234/576/38 +f 218/320/40 242/626/40 241/577/41 +f 215/312/42 239/627/42 238/578/34 +f 250/375/34 274/342/34 273/339/35 +f 245/365/37 269/514/37 280/326/36 +f 247/369/39 271/334/39 270/331/38 +f 254/386/40 278/354/40 277/350/41 +f 251/521/42 275/516/42 274/342/34 +f 248/373/43 272/515/43 271/334/39 +f 255/358/44 279/513/44 278/354/40 +f 252/379/45 276/347/45 275/517/42 +f 249/372/35 273/339/35 272/515/43 +f 255/358/44 256/361/36 280/326/36 +f 246/364/38 270/331/38 269/514/37 +f 253/382/41 277/350/41 276/347/45 +f 260/336/43 284/628/43 283/579/39 +f 267/355/44 291/629/44 290/580/40 +f 264/348/45 288/630/45 287/581/42 +f 261/340/35 285/631/35 284/582/43 +f 268/327/36 292/632/36 291/583/44 +f 257/330/37 258/332/38 282/584/38 +f 265/351/41 289/633/41 288/586/45 +f 262/343/34 286/634/34 285/587/35 +f 257/328/37 281/635/37 292/588/36 +f 259/335/39 283/636/39 282/589/38 +f 266/352/40 290/637/40 289/590/41 +f 263/344/42 287/638/42 286/591/34 +f 322/400/42 298/639/42 299/592/34 +f 319/392/40 295/640/40 296/593/41 +f 326/411/39 302/641/39 303/594/38 +f 317/417/36 328/416/37 304/595/37 +f 323/403/34 299/642/34 300/597/35 +f 320/395/41 296/643/41 297/598/45 +f 327/414/38 303/644/38 304/599/37 +f 317/419/36 293/645/36 294/600/44 +f 324/406/35 300/646/35 301/601/43 +f 321/398/45 297/647/45 298/602/42 +f 318/389/44 294/648/44 295/603/40 +f 325/408/43 301/649/43 302/604/39 +f 332/486/41 308/391/41 309/397/45 +f 339/502/38 315/413/38 316/528/37 +f 329/505/36 305/415/36 306/524/44 +f 336/496/35 312/405/35 313/527/43 +f 333/489/45 309/397/45 310/525/42 +f 330/485/44 306/524/44 307/388/40 +f 337/498/43 313/527/43 314/407/39 +f 334/494/42 310/526/42 311/399/34 +f 331/483/40 307/388/40 308/391/41 +f 338/499/39 314/407/39 315/413/38 +f 340/504/37 316/528/37 305/415/36 +f 335/492/34 311/399/34 312/405/35 +f 370/463/42 346/650/42 347/605/34 +f 367/455/40 343/651/40 344/606/41 +f 374/474/39 350/652/39 351/607/38 +f 365/480/36 376/479/37 352/608/37 +f 371/466/34 347/653/34 348/610/35 +f 368/458/41 344/654/41 345/611/45 +f 375/477/38 351/655/38 352/612/37 +f 365/482/36 341/656/36 342/613/44 +f 372/469/35 348/657/35 349/614/43 +f 369/461/45 345/658/45 346/615/42 +f 366/452/44 342/659/44 343/616/40 +f 373/471/43 349/660/43 350/617/39 +f 380/424/41 356/454/41 357/460/45 +f 388/445/37 387/443/38 363/476/38 +f 377/447/36 353/478/36 354/535/44 +f 385/438/43 384/435/35 360/468/35 +f 381/427/45 357/460/45 358/536/42 +f 378/450/44 354/535/44 355/451/40 +f 385/438/43 361/538/43 362/470/39 +f 382/530/42 358/537/42 359/462/34 +f 379/421/40 355/451/40 356/454/41 +f 386/440/39 362/470/39 363/476/38 +f 388/445/37 364/539/37 353/478/36 +f 383/432/34 359/462/34 360/468/35 +o BladesLeft +v 0.375000 3.187500 -2.000000 +v 0.156250 3.128886 -2.000000 +v -0.003886 2.968750 -2.000000 +v -0.062500 2.750000 -2.000000 +v -0.003886 2.531250 -2.000000 +v 0.156250 2.371114 -2.000000 +v 0.375000 2.312500 -2.000000 +v 0.593750 2.371114 -2.000000 +v 0.753886 2.531250 -2.000000 +v 0.812500 2.750000 -2.000000 +v 0.753886 2.968750 -2.000000 +v 0.593750 3.128886 -2.000000 +v 0.375000 3.062500 -1.750000 +v 0.218750 3.020633 -1.750000 +v 0.104367 2.906250 -1.750000 +v 0.062500 2.750000 -1.750000 +v 0.104367 2.593750 -1.750000 +v 0.218750 2.479367 -1.750000 +v 0.375000 2.437500 -1.750000 +v 0.531250 2.479367 -1.750000 +v 0.645633 2.593750 -1.750000 +v 0.687500 2.750000 -1.750000 +v 0.645633 2.906250 -1.750000 +v 0.531250 3.020633 -1.750000 +v 0.375000 3.187500 -1.750000 +v 0.156250 3.128886 -1.750000 +v -0.003886 2.968750 -1.750000 +v -0.062500 2.750000 -1.750000 +v -0.003886 2.531250 -1.750000 +v 0.156250 2.371114 -1.750000 +v 0.375000 2.312500 -1.750000 +v 0.593750 2.371114 -1.750000 +v 0.753886 2.531250 -1.750000 +v 0.812500 2.750000 -1.750000 +v 0.753886 2.968750 -1.750000 +v 0.593750 3.128886 -1.750000 +v 0.375000 3.062500 -1.500000 +v 0.218750 3.020633 -1.500000 +v 0.104367 2.906250 -1.500000 +v 0.062500 2.750000 -1.500000 +v 0.104367 2.593750 -1.500000 +v 0.218750 2.479367 -1.500000 +v 0.375000 2.437500 -1.500000 +v 0.531250 2.479367 -1.500000 +v 0.645633 2.593750 -1.500000 +v 0.687500 2.750000 -1.500000 +v 0.645633 2.906250 -1.500000 +v 0.531250 3.020633 -1.500000 +v 0.375000 3.187500 -0.500000 +v 0.156250 3.128886 -0.500000 +v -0.003886 2.968750 -0.500000 +v -0.062500 2.750000 -0.500000 +v -0.003886 2.531250 -0.500000 +v 0.156250 2.371114 -0.500000 +v 0.375000 2.312500 -0.500000 +v 0.593750 2.371114 -0.500000 +v 0.753886 2.531250 -0.500000 +v 0.812500 2.750000 -0.500000 +v 0.753886 2.968750 -0.500000 +v 0.593750 3.128886 -0.500000 +v 0.375000 3.062500 -0.250000 +v 0.218750 3.020633 -0.250000 +v 0.104367 2.906250 -0.250000 +v 0.062500 2.750000 -0.250000 +v 0.104367 2.593750 -0.250000 +v 0.218750 2.479367 -0.250000 +v 0.375000 2.437500 -0.250000 +v 0.531250 2.479367 -0.250000 +v 0.645633 2.593750 -0.250000 +v 0.687500 2.750000 -0.250000 +v 0.645633 2.906250 -0.250000 +v 0.531250 3.020633 -0.250000 +v 0.375000 3.187500 -0.250000 +v 0.156250 3.128886 -0.250000 +v -0.003886 2.968750 -0.250000 +v -0.062500 2.750000 -0.250000 +v -0.003886 2.531250 -0.250000 +v 0.156250 2.371114 -0.250000 +v 0.375000 2.312500 -0.250000 +v 0.593750 2.371114 -0.250000 +v 0.753886 2.531250 -0.250000 +v 0.812500 2.750000 -0.250000 +v 0.753886 2.968750 -0.250000 +v 0.593750 3.128886 -0.250000 +v 0.375000 3.062500 0.000000 +v 0.218750 3.020633 0.000000 +v 0.104367 2.906250 0.000000 +v 0.062500 2.750000 0.000000 +v 0.104367 2.593750 0.000000 +v 0.218750 2.479367 0.000000 +v 0.375000 2.437500 0.000000 +v 0.531250 2.479367 0.000000 +v 0.645633 2.593750 0.000000 +v 0.687500 2.750000 0.000000 +v 0.645633 2.906250 0.000000 +v 0.531250 3.020633 0.000000 +v 0.531250 3.020633 -0.500000 +v 0.645633 2.906250 -0.500000 +v 0.687500 2.750000 -0.500000 +v 0.645633 2.593750 -0.500000 +v 0.531250 2.479367 -0.500000 +v 0.375000 2.437500 -0.500000 +v 0.218750 2.479367 -0.500000 +v 0.104367 2.593750 -0.500000 +v 0.062500 2.750000 -0.500000 +v 0.104367 2.906250 -0.500000 +v 0.218750 3.020633 -0.500000 +v 0.375000 3.062500 -0.500000 +v 0.593750 3.128886 -0.750000 +v 0.753886 2.968750 -0.750000 +v 0.812500 2.750000 -0.750000 +v 0.753886 2.531250 -0.750000 +v 0.593750 2.371114 -0.750000 +v 0.375000 2.312500 -0.750000 +v 0.156250 2.371114 -0.750000 +v -0.003886 2.531250 -0.750000 +v -0.062500 2.750000 -0.750000 +v -0.003886 2.968750 -0.750000 +v 0.156250 3.128886 -0.750000 +v 0.375000 3.187500 -0.750000 +v 0.531250 3.020633 -0.750000 +v 0.645633 2.906250 -0.750000 +v 0.687500 2.750000 -0.750000 +v 0.645633 2.593750 -0.750000 +v 0.531250 2.479367 -0.750000 +v 0.375000 2.437500 -0.750000 +v 0.218750 2.479367 -0.750000 +v 0.104367 2.593750 -0.750000 +v 0.062500 2.750000 -0.750000 +v 0.104367 2.906250 -0.750000 +v 0.218750 3.020633 -0.750000 +v 0.375000 3.062500 -0.750000 +v 0.593750 3.128886 -1.000000 +v 0.753886 2.968750 -1.000000 +v 0.812500 2.750000 -1.000000 +v 0.753886 2.531250 -1.000000 +v 0.593750 2.371114 -1.000000 +v 0.375000 2.312500 -1.000000 +v 0.156250 2.371114 -1.000000 +v -0.003886 2.531250 -1.000000 +v -0.062500 2.750000 -1.000000 +v -0.003886 2.968750 -1.000000 +v 0.156250 3.128886 -1.000000 +v 0.375000 3.187500 -1.000000 +v 0.531250 3.020633 -1.000000 +v 0.645633 2.906250 -1.000000 +v 0.687500 2.750000 -1.000000 +v 0.645633 2.593750 -1.000000 +v 0.531250 2.479367 -1.000000 +v 0.375000 2.437500 -1.000000 +v 0.218750 2.479367 -1.000000 +v 0.104367 2.593750 -1.000000 +v 0.062500 2.750000 -1.000000 +v 0.104367 2.906250 -1.000000 +v 0.218750 3.020633 -1.000000 +v 0.375000 3.062500 -1.000000 +v 0.593750 3.128886 -1.250000 +v 0.753886 2.968750 -1.250000 +v 0.812500 2.750000 -1.250000 +v 0.753886 2.531250 -1.250000 +v 0.593750 2.371114 -1.250000 +v 0.375000 2.312500 -1.250000 +v 0.156250 2.371114 -1.250000 +v -0.003886 2.531250 -1.250000 +v -0.062500 2.750000 -1.250000 +v -0.003886 2.968750 -1.250000 +v 0.156250 3.128886 -1.250000 +v 0.375000 3.187500 -1.250000 +v 0.531250 3.020633 -1.250000 +v 0.645633 2.906250 -1.250000 +v 0.687500 2.750000 -1.250000 +v 0.645633 2.593750 -1.250000 +v 0.531250 2.479367 -1.250000 +v 0.375000 2.437500 -1.250000 +v 0.218750 2.479367 -1.250000 +v 0.104367 2.593750 -1.250000 +v 0.062500 2.750000 -1.250000 +v 0.104367 2.906250 -1.250000 +v 0.218750 3.020633 -1.250000 +v 0.375000 3.062500 -1.250000 +v 0.593750 3.128886 -1.500000 +v 0.753886 2.968750 -1.500000 +v 0.812500 2.750000 -1.500000 +v 0.753886 2.531250 -1.500000 +v 0.593750 2.371114 -1.500000 +v 0.375000 2.312500 -1.500000 +v 0.156250 2.371114 -1.500000 +v -0.003886 2.531250 -1.500000 +v -0.062500 2.750000 -1.500000 +v -0.003886 2.968750 -1.500000 +v 0.156250 3.128886 -1.500000 +v 0.375000 3.187500 -1.500000 +vt 0.051829 0.846154 +vt 0.060976 0.833333 +vt 0.057927 0.846154 +vt 0.070122 0.846154 +vt 0.064024 0.846154 +vt 0.076220 0.846154 +vt 0.085366 0.833333 +vt 0.082317 0.846154 +vt 0.088415 0.846154 +vt 0.097561 0.833333 +vt 0.094512 0.846154 +vt 0.106707 0.846154 +vt 0.100610 0.846154 +vt 0.112805 0.846154 +vt 0.121951 0.833333 +vt 0.118902 0.846154 +vt 0.125000 0.846154 +vt 0.134146 0.833333 +vt 0.131098 0.846154 +vt 0.143293 0.846154 +vt 0.137195 0.846154 +vt 0.003049 0.846154 +vt 0.012195 0.833333 +vt 0.009146 0.846154 +vt 0.015244 0.846154 +vt 0.024390 0.833333 +vt 0.021341 0.846154 +vt 0.033537 0.846154 +vt 0.027439 0.846154 +vt 0.036585 0.833333 +vt 0.045732 0.846154 +vt 0.039634 0.846154 +vt 0.051829 0.846154 +vt 0.060976 0.833333 +vt 0.057927 0.846154 +vt 0.070122 0.846154 +vt 0.064024 0.846154 +vt 0.076220 0.846154 +vt 0.085366 0.833333 +vt 0.082317 0.846154 +vt 0.088415 0.846154 +vt 0.097561 0.833333 +vt 0.094512 0.846154 +vt 0.106707 0.846154 +vt 0.100610 0.846154 +vt 0.112805 0.846154 +vt 0.121951 0.833333 +vt 0.118902 0.846154 +vt 0.125000 0.846154 +vt 0.134146 0.833333 +vt 0.131098 0.846154 +vt 0.143293 0.846154 +vt 0.137195 0.846154 +vt 0.003049 0.846154 +vt 0.012195 0.833333 +vt 0.009146 0.846154 +vt 0.015244 0.846154 +vt 0.024390 0.833333 +vt 0.021341 0.846154 +vt 0.033537 0.846154 +vt 0.027439 0.846154 +vt 0.036585 0.833333 +vt 0.045732 0.846154 +vt 0.039634 0.846154 +vt 0.057927 0.794872 +vt 0.048780 0.807692 +vt 0.051829 0.794872 +vt 0.070122 0.794872 +vt 0.060976 0.807692 +vt 0.064024 0.794872 +vt 0.076220 0.794872 +vt 0.085366 0.807692 +vt 0.073171 0.807692 +vt 0.094512 0.794872 +vt 0.088415 0.794872 +vt 0.106707 0.794872 +vt 0.097561 0.807692 +vt 0.100610 0.794872 +vt 0.112805 0.794872 +vt 0.121951 0.807692 +vt 0.109756 0.807692 +vt 0.131098 0.794872 +vt 0.125000 0.794872 +vt 0.143293 0.794872 +vt 0.134146 0.807692 +vt 0.137195 0.794872 +vt 0.003049 0.794872 +vt 0.012195 0.807692 +vt 0.000000 0.807692 +vt 0.021341 0.794872 +vt 0.015244 0.794872 +vt 0.033537 0.794872 +vt 0.024390 0.807692 +vt 0.027439 0.794872 +vt 0.045732 0.794872 +vt 0.036585 0.807692 +vt 0.039634 0.794872 +vt 0.036585 0.833333 +vt 0.045732 0.846154 +vt 0.039634 0.846154 +vt 0.024390 0.833333 +vt 0.033537 0.846154 +vt 0.027439 0.846154 +vt 0.015244 0.846154 +vt 0.021341 0.846154 +vt 0.003049 0.846154 +vt 0.012195 0.833333 +vt 0.009146 0.846154 +vt 0.134146 0.833333 +vt 0.143293 0.846154 +vt 0.137195 0.846154 +vt 0.125000 0.846154 +vt 0.131098 0.846154 +vt 0.112805 0.846154 +vt 0.121951 0.833333 +vt 0.118902 0.846154 +vt 0.097561 0.833333 +vt 0.106707 0.846154 +vt 0.100610 0.846154 +vt 0.088415 0.846154 +vt 0.094512 0.846154 +vt 0.076220 0.846154 +vt 0.085366 0.833333 +vt 0.082317 0.846154 +vt 0.060976 0.833333 +vt 0.070122 0.846154 +vt 0.064024 0.846154 +vt 0.051829 0.846154 +vt 0.057927 0.846154 +vt 0.045732 0.794872 +vt 0.036585 0.807692 +vt 0.039634 0.794872 +vt 0.033537 0.794872 +vt 0.024390 0.807692 +vt 0.027439 0.794872 +vt 0.021341 0.794872 +vt 0.012195 0.807692 +vt 0.015244 0.794872 +vt 0.003049 0.794872 +vt 0.000000 0.807692 +vt 0.143293 0.794872 +vt 0.134146 0.807692 +vt 0.137195 0.794872 +vt 0.131098 0.794872 +vt 0.121951 0.807692 +vt 0.125000 0.794872 +vt 0.112805 0.794872 +vt 0.109756 0.807692 +vt 0.106707 0.794872 +vt 0.097561 0.807692 +vt 0.100610 0.794872 +vt 0.094512 0.794872 +vt 0.085366 0.807692 +vt 0.088415 0.794872 +vt 0.076220 0.794872 +vt 0.073171 0.807692 +vt 0.070122 0.794872 +vt 0.060976 0.807692 +vt 0.064024 0.794872 +vt 0.057927 0.794872 +vt 0.048780 0.807692 +vt 0.051829 0.794872 +vt 0.036585 0.833333 +vt 0.045732 0.846154 +vt 0.039634 0.846154 +vt 0.024390 0.833333 +vt 0.033537 0.846154 +vt 0.027439 0.846154 +vt 0.015244 0.846154 +vt 0.021341 0.846154 +vt 0.003049 0.846154 +vt 0.012195 0.833333 +vt 0.009146 0.846154 +vt 0.134146 0.833333 +vt 0.143293 0.846154 +vt 0.137195 0.846154 +vt 0.125000 0.846154 +vt 0.131098 0.846154 +vt 0.112805 0.846154 +vt 0.121951 0.833333 +vt 0.118902 0.846154 +vt 0.097561 0.833333 +vt 0.106707 0.846154 +vt 0.100610 0.846154 +vt 0.088415 0.846154 +vt 0.094512 0.846154 +vt 0.076220 0.846154 +vt 0.085366 0.833333 +vt 0.082317 0.846154 +vt 0.060976 0.833333 +vt 0.070122 0.846154 +vt 0.064024 0.846154 +vt 0.051829 0.846154 +vt 0.057927 0.846154 +vt 0.036585 0.807692 +vt 0.045732 0.794872 +vt 0.048780 0.807692 +vt 0.024390 0.807692 +vt 0.033537 0.794872 +vt 0.015244 0.794872 +vt 0.012195 0.807692 +vt 0.003049 0.794872 +vt 0.000000 0.807692 +vt 0.134146 0.807692 +vt 0.143293 0.794872 +vt 0.146341 0.807692 +vt 0.125000 0.794872 +vt 0.121951 0.807692 +vt 0.112805 0.794872 +vt 0.109756 0.807692 +vt 0.097561 0.807692 +vt 0.106707 0.794872 +vt 0.088415 0.794872 +vt 0.085366 0.807692 +vt 0.076220 0.794872 +vt 0.073171 0.807692 +vt 0.060976 0.807692 +vt 0.070122 0.794872 +vt 0.051829 0.794872 +vt 0.048780 0.833333 +vt 0.073171 0.833333 +vt 0.109756 0.833333 +vt 0.146341 0.833333 +vt -0.000000 0.833333 +vt 0.048780 0.833333 +vt 0.073171 0.833333 +vt 0.109756 0.833333 +vt 0.146341 0.833333 +vt 0.000000 0.833333 +vt 0.082317 0.794872 +vt 0.118902 0.794872 +vt 0.146341 0.807692 +vt 0.009146 0.794872 +vt 0.048780 0.833333 +vt 0.000000 0.833333 +vt 0.146341 0.833333 +vt 0.109756 0.833333 +vt 0.073171 0.833333 +vt 0.009146 0.794872 +vt 0.146341 0.807692 +vt 0.118902 0.794872 +vt 0.082317 0.794872 +vt 0.048780 0.833333 +vt 0.000000 0.833333 +vt 0.146341 0.833333 +vt 0.109756 0.833333 +vt 0.073171 0.833333 +vt 0.039634 0.794872 +vt 0.027439 0.794872 +vt 0.021341 0.794872 +vt 0.009146 0.794872 +vt 0.137195 0.794872 +vt 0.131098 0.794872 +vt 0.118902 0.794872 +vt 0.100610 0.794872 +vt 0.094512 0.794872 +vt 0.082317 0.794872 +vt 0.064024 0.794872 +vt 0.057927 0.794872 +vt 0.134146 0.807692 +vt 0.121951 0.807692 +vt 0.073171 0.807692 +vt 0.060976 0.807692 +vt 0.097561 0.807692 +vt 0.085366 0.807692 +vt 0.036585 0.807692 +vt 0.024390 0.807692 +vt 0.146341 0.807692 +vt 0.109756 0.807692 +vt 0.048780 0.807692 +vt 0.012195 0.807692 +vt -0.000000 0.807692 +vt 0.100610 0.871795 +vt 0.039634 0.871795 +vt 0.003049 0.871795 +vt 0.112805 0.871795 +vt 0.051829 0.871795 +vt 0.076220 0.871795 +vt 0.015244 0.871795 +vt 0.125000 0.871795 +vt 0.064024 0.871795 +vt 0.088415 0.871795 +vt 0.027439 0.871795 +vt 0.137195 0.871795 +vt 0.100610 0.871795 +vt 0.039634 0.871795 +vt 0.003049 0.871795 +vt 0.112805 0.871795 +vt 0.051829 0.871795 +vt 0.076220 0.871795 +vt 0.015244 0.871795 +vt 0.125000 0.871795 +vt 0.064024 0.871795 +vt 0.088415 0.871795 +vt 0.027439 0.871795 +vt 0.137195 0.871795 +vt 0.137195 0.871795 +vt 0.027439 0.871795 +vt 0.088415 0.871795 +vt 0.064024 0.871795 +vt 0.125000 0.871795 +vt 0.015244 0.871795 +vt 0.076220 0.871795 +vt 0.051829 0.871795 +vt 0.112805 0.871795 +vt 0.003049 0.871795 +vt 0.039634 0.871795 +vt 0.100610 0.871795 +vt 0.137195 0.871795 +vt 0.027439 0.871795 +vt 0.088415 0.871795 +vt 0.064024 0.871795 +vt 0.125000 0.871795 +vt 0.015244 0.871795 +vt 0.076220 0.871795 +vt 0.051829 0.871795 +vt 0.112805 0.871795 +vt 0.003049 0.871795 +vt 0.039634 0.871795 +vt 0.100610 0.871795 +vt 0.106707 0.871795 +vt 0.045732 0.871795 +vt 0.009146 0.871795 +vt 0.118902 0.871795 +vt 0.057927 0.871795 +vt 0.082317 0.871795 +vt 0.021341 0.871795 +vt 0.131098 0.871795 +vt 0.070122 0.871795 +vt 0.094512 0.871795 +vt 0.033537 0.871795 +vt 0.143293 0.871795 +vt 0.106707 0.871795 +vt 0.045732 0.871795 +vt 0.009146 0.871795 +vt 0.118902 0.871795 +vt 0.057927 0.871795 +vt 0.082317 0.871795 +vt 0.021341 0.871795 +vt 0.131098 0.871795 +vt 0.070122 0.871795 +vt 0.094512 0.871795 +vt 0.033537 0.871795 +vt 0.143293 0.871795 +vt 0.143293 0.871795 +vt 0.033537 0.871795 +vt 0.094512 0.871795 +vt 0.070122 0.871795 +vt 0.131098 0.871795 +vt 0.021341 0.871795 +vt 0.082317 0.871795 +vt 0.057927 0.871795 +vt 0.118902 0.871795 +vt 0.009146 0.871795 +vt 0.045732 0.871795 +vt 0.106707 0.871795 +vt 0.143293 0.871795 +vt 0.033537 0.871795 +vt 0.094512 0.871795 +vt 0.070122 0.871795 +vt 0.131098 0.871795 +vt 0.021341 0.871795 +vt 0.082317 0.871795 +vt 0.057927 0.871795 +vt 0.118902 0.871795 +vt 0.009146 0.871795 +vt 0.045732 0.871795 +vt 0.106707 0.871795 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn -0.5000 -0.8660 0.0000 +vn -0.8660 -0.5000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.8660 0.5000 0.0000 +vn -0.5000 0.8660 0.0000 +vn 1.0000 -0.0000 0.0000 +vn 0.8660 -0.5000 0.0000 +vn -0.0000 -1.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.8660 0.5000 0.0000 +vn 0.5000 -0.8660 0.0000 +s off +f 411/661/46 424/662/46 412/663/46 +f 424/662/46 401/664/46 412/665/46 +f 401/666/46 414/667/46 402/668/46 +f 402/669/46 415/670/46 403/671/46 +f 415/670/46 404/672/46 403/673/46 +f 404/674/46 417/675/46 405/676/46 +f 405/677/46 418/678/46 406/679/46 +f 418/678/46 407/680/46 406/681/46 +f 407/682/46 420/683/46 408/684/46 +f 408/685/46 421/686/46 409/687/46 +f 421/686/46 410/688/46 409/689/46 +f 422/690/46 411/691/46 410/692/46 +f 459/693/46 472/694/46 460/695/46 +f 472/694/46 449/696/46 460/697/46 +f 449/698/46 462/699/46 450/700/46 +f 450/701/46 463/702/46 451/703/46 +f 463/702/46 452/704/46 451/705/46 +f 452/706/46 465/707/46 453/708/46 +f 453/709/46 466/710/46 454/711/46 +f 466/710/46 455/712/46 454/713/46 +f 455/714/46 468/715/46 456/716/46 +f 456/717/46 469/718/46 457/719/46 +f 469/718/46 458/720/46 457/721/46 +f 470/722/46 459/723/46 458/724/46 +f 485/725/47 447/726/47 486/727/47 +f 496/728/47 448/729/47 485/730/47 +f 496/731/47 438/732/47 437/733/47 +f 494/734/47 438/732/47 495/735/47 +f 493/736/47 439/737/47 494/738/47 +f 493/739/47 441/740/47 440/741/47 +f 491/742/47 441/740/47 492/743/47 +f 490/744/47 442/745/47 491/746/47 +f 490/747/47 444/748/47 443/749/47 +f 488/750/47 444/748/47 489/751/47 +f 487/752/47 445/753/47 488/754/47 +f 486/755/47 446/756/47 487/757/47 +f 499/758/46 510/759/46 511/760/46 +f 500/761/46 511/762/46 512/763/46 +f 513/764/46 500/761/46 512/765/46 +f 514/766/46 501/767/46 513/768/46 +f 503/769/46 514/770/46 515/771/46 +f 516/772/46 503/769/46 515/773/46 +f 517/774/46 504/775/46 516/776/46 +f 506/777/46 517/778/46 518/779/46 +f 519/780/46 506/777/46 518/781/46 +f 520/782/46 507/783/46 519/784/46 +f 497/785/46 520/786/46 509/787/46 +f 510/788/46 497/785/46 509/789/46 +f 435/790/47 571/791/47 434/792/47 +f 434/793/47 572/794/47 433/795/47 +f 433/796/47 573/797/47 432/798/47 +f 431/799/47 573/797/47 574/800/47 +f 431/801/47 575/802/47 430/803/47 +f 430/804/47 576/805/47 429/806/47 +f 428/807/47 576/805/47 577/808/47 +f 428/809/47 578/810/47 427/811/47 +f 427/812/47 579/813/47 426/814/47 +f 425/815/47 579/813/47 580/816/47 +f 425/817/47 569/818/47 436/819/47 +f 436/820/47 570/821/47 435/822/47 +f 547/823/46 558/824/46 559/825/46 +f 548/826/46 559/827/46 560/828/46 +f 561/829/46 548/826/46 560/830/46 +f 562/831/46 549/832/46 561/833/46 +f 551/834/46 562/835/46 563/836/46 +f 564/837/46 551/834/46 563/838/46 +f 565/839/46 552/840/46 564/841/46 +f 554/842/46 565/843/46 566/844/46 +f 567/845/46 554/842/46 566/846/46 +f 568/847/46 555/848/46 567/849/46 +f 545/850/46 568/851/46 557/852/46 +f 558/853/46 545/850/46 557/854/46 +f 523/855/47 534/856/47 522/857/47 +f 524/858/47 535/859/47 523/855/47 +f 537/860/47 524/858/47 525/861/47 +f 538/862/47 525/861/47 526/863/47 +f 527/864/47 538/865/47 526/866/47 +f 540/867/47 527/864/47 528/868/47 +f 541/869/47 528/868/47 529/870/47 +f 530/871/47 541/872/47 529/870/47 +f 543/873/47 530/871/47 531/874/47 +f 544/875/47 531/874/47 532/876/47 +f 521/877/47 544/878/47 532/876/47 +f 534/879/47 521/877/47 522/857/47 +f 411/661/46 423/880/46 424/662/46 +f 424/662/46 413/881/46 401/664/46 +f 401/666/46 413/881/46 414/667/46 +f 402/669/46 414/667/46 415/670/46 +f 415/670/46 416/882/46 404/672/46 +f 404/674/46 416/882/46 417/675/46 +f 405/677/46 417/675/46 418/678/46 +f 418/678/46 419/883/46 407/680/46 +f 407/682/46 419/884/46 420/683/46 +f 408/685/46 420/683/46 421/686/46 +f 421/686/46 422/690/46 410/688/46 +f 422/690/46 423/880/46 411/691/46 +f 459/693/46 471/885/46 472/694/46 +f 472/694/46 461/886/46 449/696/46 +f 449/698/46 461/886/46 462/699/46 +f 450/701/46 462/699/46 463/702/46 +f 463/702/46 464/887/46 452/704/46 +f 452/706/46 464/887/46 465/707/46 +f 453/709/46 465/707/46 466/710/46 +f 466/710/46 467/888/46 455/712/46 +f 455/714/46 467/889/46 468/715/46 +f 456/717/46 468/715/46 469/718/46 +f 469/718/46 470/722/46 458/720/46 +f 470/722/46 471/885/46 459/723/46 +f 485/725/47 448/729/47 447/726/47 +f 496/728/47 437/733/47 448/729/47 +f 496/731/47 495/890/47 438/732/47 +f 494/734/47 439/737/47 438/732/47 +f 493/736/47 440/741/47 439/737/47 +f 493/739/47 492/891/47 441/740/47 +f 491/742/47 442/745/47 441/740/47 +f 490/744/47 443/892/47 442/745/47 +f 490/747/47 489/893/47 444/748/47 +f 488/750/47 445/753/47 444/748/47 +f 487/752/47 446/756/47 445/753/47 +f 486/755/47 447/726/47 446/756/47 +f 499/758/46 498/894/46 510/759/46 +f 500/761/46 499/758/46 511/762/46 +f 513/764/46 501/767/46 500/761/46 +f 514/766/46 502/895/46 501/767/46 +f 503/769/46 502/896/46 514/770/46 +f 516/772/46 504/775/46 503/769/46 +f 517/774/46 505/897/46 504/775/46 +f 506/777/46 505/897/46 517/778/46 +f 519/780/46 507/783/46 506/777/46 +f 520/782/46 508/898/46 507/783/46 +f 497/785/46 508/898/46 520/786/46 +f 510/788/46 498/894/46 497/785/46 +f 435/790/47 570/821/47 571/791/47 +f 434/793/47 571/791/47 572/794/47 +f 433/796/47 572/794/47 573/797/47 +f 431/799/47 432/899/47 573/797/47 +f 431/801/47 574/900/47 575/802/47 +f 430/804/47 575/802/47 576/805/47 +f 428/807/47 429/901/47 576/805/47 +f 428/809/47 577/808/47 578/810/47 +f 427/812/47 578/810/47 579/813/47 +f 425/815/47 426/902/47 579/813/47 +f 425/817/47 580/816/47 569/818/47 +f 436/820/47 569/818/47 570/821/47 +f 547/823/46 546/903/46 558/824/46 +f 548/826/46 547/823/46 559/827/46 +f 561/829/46 549/832/46 548/826/46 +f 562/831/46 550/904/46 549/832/46 +f 551/834/46 550/905/46 562/835/46 +f 564/837/46 552/840/46 551/834/46 +f 565/839/46 553/906/46 552/840/46 +f 554/842/46 553/906/46 565/843/46 +f 567/845/46 555/848/46 554/842/46 +f 568/847/46 556/907/46 555/848/46 +f 545/850/46 556/907/46 568/851/46 +f 558/853/46 546/903/46 545/850/46 +f 523/855/47 535/908/47 534/856/47 +f 524/858/47 536/909/47 535/859/47 +f 537/860/47 536/910/47 524/858/47 +f 538/862/47 537/911/47 525/861/47 +f 527/864/47 539/912/47 538/865/47 +f 540/867/47 539/913/47 527/864/47 +f 541/869/47 540/914/47 528/868/47 +f 530/871/47 542/915/47 541/872/47 +f 543/873/47 542/916/47 530/871/47 +f 544/875/47 543/917/47 531/874/47 +f 521/877/47 533/918/47 544/878/47 +f 534/879/47 533/919/47 521/877/47 +s 1 +f 394/920/48 417/675/49 393/921/49 +f 389/922/50 424/662/51 400/923/51 +f 391/924/52 414/667/53 390/925/53 +f 398/926/54 421/686/55 397/927/55 +f 395/928/56 418/678/48 394/920/48 +f 392/929/57 415/670/52 391/924/52 +f 399/930/58 422/690/54 398/926/54 +f 396/931/59 419/884/56 395/932/56 +f 393/921/49 416/882/57 392/929/57 +f 400/923/51 423/880/58 399/930/58 +f 390/925/53 413/881/50 389/922/50 +f 397/927/55 420/683/59 396/931/59 +f 404/672/57 427/933/52 403/673/52 +f 411/691/58 434/934/54 410/692/54 +f 408/684/59 431/935/56 407/682/56 +f 405/676/49 428/936/57 404/674/57 +f 412/663/51 435/937/58 411/661/58 +f 402/668/53 425/938/50 401/666/50 +f 409/687/55 432/939/59 408/685/59 +f 406/679/48 429/940/49 405/677/49 +f 401/664/50 436/941/51 412/665/51 +f 403/671/52 426/942/53 402/669/53 +f 410/688/54 433/943/55 409/689/55 +f 407/680/56 430/944/48 406/681/48 +f 442/745/48 465/707/49 441/740/49 +f 437/733/50 472/694/51 448/729/51 +f 439/737/52 462/699/53 438/732/53 +f 446/756/54 469/718/55 445/753/55 +f 443/892/56 466/710/48 442/745/48 +f 440/741/57 463/702/52 439/737/52 +f 447/726/58 470/722/54 446/756/54 +f 444/748/59 467/889/56 443/749/56 +f 441/740/49 464/887/57 440/741/57 +f 448/729/51 471/885/58 447/726/58 +f 438/732/53 461/886/50 437/733/50 +f 445/753/55 468/715/59 444/748/59 +f 452/704/57 475/945/52 451/705/52 +f 459/723/58 482/946/54 458/724/54 +f 456/716/59 479/947/56 455/714/56 +f 453/708/49 476/948/57 452/706/57 +f 460/695/51 483/949/58 459/693/58 +f 450/700/53 473/950/50 449/698/50 +f 457/719/55 480/951/59 456/717/59 +f 454/711/48 477/952/49 453/709/49 +f 449/696/50 484/953/51 460/697/51 +f 451/703/52 474/954/53 450/701/53 +f 458/720/54 481/955/55 457/721/55 +f 455/712/56 478/956/48 454/713/48 +f 514/770/56 491/957/48 515/771/48 +f 511/762/54 488/958/55 512/763/55 +f 518/781/52 495/959/53 519/780/53 +f 520/786/50 485/960/51 509/787/51 +f 515/773/48 492/961/49 516/772/49 +f 512/765/55 489/962/59 513/764/59 +f 519/784/53 496/963/50 520/782/50 +f 509/789/51 486/964/58 510/788/58 +f 516/776/49 493/965/57 517/774/57 +f 513/768/59 490/966/56 514/766/56 +f 510/759/58 487/967/54 511/760/54 +f 517/778/57 494/968/52 518/779/52 +f 524/858/55 501/767/59 525/861/59 +f 531/874/53 508/898/50 532/876/50 +f 521/877/51 498/894/58 522/857/58 +f 528/868/49 505/897/57 529/870/57 +f 525/861/59 502/895/56 526/863/56 +f 522/857/58 499/758/54 523/855/54 +f 529/870/57 506/777/52 530/871/52 +f 526/866/56 503/769/48 527/864/48 +f 523/855/54 500/761/55 524/858/55 +f 530/871/52 507/783/53 531/874/53 +f 532/876/50 497/785/51 521/877/51 +f 527/864/48 504/775/49 528/868/49 +f 562/835/56 539/969/48 563/836/48 +f 559/827/54 536/970/55 560/828/55 +f 566/846/52 543/971/53 567/845/53 +f 568/851/50 533/972/51 557/852/51 +f 563/838/48 540/973/49 564/837/49 +f 560/830/55 537/974/59 561/829/59 +f 567/849/53 544/975/50 568/847/50 +f 557/854/51 534/976/58 558/853/58 +f 564/841/49 541/977/57 565/839/57 +f 561/833/59 538/978/56 562/831/56 +f 558/824/58 535/979/54 559/825/54 +f 565/843/57 542/980/52 566/844/52 +f 572/794/55 549/832/59 573/797/59 +f 579/813/53 556/907/50 580/816/50 +f 569/818/51 546/903/58 570/821/58 +f 576/805/49 553/906/57 577/808/57 +f 573/797/59 550/904/56 574/800/56 +f 570/821/58 547/823/54 571/791/54 +f 577/808/57 554/842/52 578/810/52 +f 574/900/56 551/834/48 575/802/48 +f 571/791/54 548/826/55 572/794/55 +f 578/810/52 555/848/53 579/813/53 +f 580/816/50 545/850/51 569/818/51 +f 575/802/48 552/840/49 576/805/49 +f 394/920/48 418/678/48 417/675/49 +f 389/922/50 413/881/50 424/662/51 +f 391/924/52 415/670/52 414/667/53 +f 398/926/54 422/690/54 421/686/55 +f 395/928/56 419/883/56 418/678/48 +f 392/929/57 416/882/57 415/670/52 +f 399/930/58 423/880/58 422/690/54 +f 396/931/59 420/683/59 419/884/56 +f 393/921/49 417/675/49 416/882/57 +f 400/923/51 424/662/51 423/880/58 +f 390/925/53 414/667/53 413/881/50 +f 397/927/55 421/686/55 420/683/59 +f 404/672/57 428/981/57 427/933/52 +f 411/691/58 435/982/58 434/934/54 +f 408/684/59 432/983/59 431/935/56 +f 405/676/49 429/984/49 428/936/57 +f 412/663/51 436/985/51 435/937/58 +f 402/668/53 426/986/53 425/938/50 +f 409/687/55 433/987/55 432/939/59 +f 406/679/48 430/988/48 429/940/49 +f 401/664/50 425/989/50 436/941/51 +f 403/671/52 427/990/52 426/942/53 +f 410/688/54 434/991/54 433/943/55 +f 407/680/56 431/992/56 430/944/48 +f 442/745/48 466/710/48 465/707/49 +f 437/733/50 461/886/50 472/694/51 +f 439/737/52 463/702/52 462/699/53 +f 446/756/54 470/722/54 469/718/55 +f 443/892/56 467/888/56 466/710/48 +f 440/741/57 464/887/57 463/702/52 +f 447/726/58 471/885/58 470/722/54 +f 444/748/59 468/715/59 467/889/56 +f 441/740/49 465/707/49 464/887/57 +f 448/729/51 472/694/51 471/885/58 +f 438/732/53 462/699/53 461/886/50 +f 445/753/55 469/718/55 468/715/59 +f 452/704/57 476/993/57 475/945/52 +f 459/723/58 483/994/58 482/946/54 +f 456/716/59 480/995/59 479/947/56 +f 453/708/49 477/996/49 476/948/57 +f 460/695/51 484/997/51 483/949/58 +f 450/700/53 474/998/53 473/950/50 +f 457/719/55 481/999/55 480/951/59 +f 454/711/48 478/1000/48 477/952/49 +f 449/696/50 473/1001/50 484/953/51 +f 451/703/52 475/1002/52 474/954/53 +f 458/720/54 482/1003/54 481/955/55 +f 455/712/56 479/1004/56 478/956/48 +f 514/770/56 490/1005/56 491/957/48 +f 511/762/54 487/1006/54 488/958/55 +f 518/781/52 494/1007/52 495/959/53 +f 520/786/50 496/1008/50 485/960/51 +f 515/773/48 491/1009/48 492/961/49 +f 512/765/55 488/1010/55 489/962/59 +f 519/784/53 495/1011/53 496/963/50 +f 509/789/51 485/1012/51 486/964/58 +f 516/776/49 492/1013/49 493/965/57 +f 513/768/59 489/1014/59 490/966/56 +f 510/759/58 486/1015/58 487/967/54 +f 517/778/57 493/1016/57 494/968/52 +f 524/858/55 500/761/55 501/767/59 +f 531/874/53 507/783/53 508/898/50 +f 521/877/51 497/785/51 498/894/58 +f 528/868/49 504/775/49 505/897/57 +f 525/861/59 501/767/59 502/895/56 +f 522/857/58 498/894/58 499/758/54 +f 529/870/57 505/897/57 506/777/52 +f 526/866/56 502/896/56 503/769/48 +f 523/855/54 499/758/54 500/761/55 +f 530/871/52 506/777/52 507/783/53 +f 532/876/50 508/898/50 497/785/51 +f 527/864/48 503/769/48 504/775/49 +f 562/835/56 538/1017/56 539/969/48 +f 559/827/54 535/1018/54 536/970/55 +f 566/846/52 542/1019/52 543/971/53 +f 568/851/50 544/1020/50 533/972/51 +f 563/838/48 539/1021/48 540/973/49 +f 560/830/55 536/1022/55 537/974/59 +f 567/849/53 543/1023/53 544/975/50 +f 557/854/51 533/1024/51 534/976/58 +f 564/841/49 540/1025/49 541/977/57 +f 561/833/59 537/1026/59 538/978/56 +f 558/824/58 534/1027/58 535/979/54 +f 565/843/57 541/1028/57 542/980/52 +f 572/794/55 548/826/55 549/832/59 +f 579/813/53 555/848/53 556/907/50 +f 569/818/51 545/850/51 546/903/58 +f 576/805/49 552/840/49 553/906/57 +f 573/797/59 549/832/59 550/904/56 +f 570/821/58 546/903/58 547/823/54 +f 577/808/57 553/906/57 554/842/52 +f 574/900/56 550/905/56 551/834/48 +f 571/791/54 547/823/54 548/826/55 +f 578/810/52 554/842/52 555/848/53 +f 580/816/50 556/907/50 545/850/51 +f 575/802/48 551/834/48 552/840/49 +o Fan +v 1.375000 1.875000 -1.062500 +v 1.468750 1.875000 -1.062500 +v 1.375000 1.820873 -1.031250 +v 1.468750 1.820873 -1.031250 +v 1.375000 1.820873 -0.968750 +v 1.468750 1.820873 -0.968750 +v 1.375000 1.875000 -0.937500 +v 1.468750 1.875000 -0.937500 +v 1.375000 1.929127 -0.968750 +v 1.468750 1.929127 -0.968750 +v 1.375000 1.929127 -1.031250 +v 1.468750 1.929127 -1.031250 +v 1.388971 2.199760 -1.181111 +v 1.437500 2.250000 -1.000000 +v 1.486029 2.199760 -0.818889 +v 1.431434 1.915595 -1.022639 +v 1.437500 1.921875 -1.000000 +v 1.443566 1.915595 -0.977361 +v 1.388971 1.555773 -1.190695 +v 1.437500 1.687500 -1.324759 +v 1.486029 1.869467 -1.371806 +v 1.431434 1.835097 -1.023837 +v 1.437500 1.851562 -1.040595 +v 1.443566 1.874308 -1.046476 +v 1.443566 1.835097 -0.976163 +v 1.437500 1.851562 -0.959405 +v 1.431434 1.874308 -0.953524 +v 1.486029 1.555773 -0.809305 +v 1.437500 1.687500 -0.675241 +v 1.388971 1.869467 -0.628194 +vt 0.225610 0.935897 +vt 0.228659 0.948718 +vt 0.225610 0.948718 +vt 0.228659 0.935897 +vt 0.231707 0.948718 +vt 0.213415 0.935897 +vt 0.216463 0.948718 +vt 0.213415 0.948718 +vt 0.216463 0.935897 +vt 0.219512 0.948718 +vt 0.213554 0.955128 +vt 0.215009 0.949830 +vt 0.219373 0.955128 +vt 0.219512 0.935897 +vt 0.222561 0.948718 +vt 0.222561 0.935897 +vt 0.155488 0.967949 +vt 0.158537 0.935897 +vt 0.164634 0.967949 +vt 0.152439 0.935897 +vt 0.155488 0.935897 +vt 0.155488 0.967949 +vt 0.158537 0.935897 +vt 0.164634 0.967949 +vt 0.146341 0.967949 +vt 0.155488 0.935897 +vt 0.155488 0.967949 +vt 0.152439 0.935897 +vt 0.155488 0.935897 +vt 0.158537 0.935897 +vt 0.164634 0.967949 +vt 0.231707 0.935897 +vt 0.217918 0.949830 +vt 0.217918 0.960426 +vt 0.215009 0.960426 +vt 0.146341 0.967949 +vt 0.152439 0.935897 +vt 0.146341 0.967949 +vn 0.0000 -0.5000 -0.8660 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 -0.5000 0.8660 +vn 0.0000 0.5000 0.8660 +vn 1.0000 0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 0.5000 -0.8660 +vn 0.9659 -0.0000 -0.2588 +vn 0.9659 -0.2241 0.1294 +vn 0.9659 0.2242 0.1294 +vn 0.9659 0.2241 0.1294 +vn 0.9659 -0.2242 0.1294 +s off +f 582/1029/60 583/1030/60 581/1031/60 +f 584/1032/61 585/1033/61 583/1030/61 +f 586/1034/62 587/1035/62 585/1036/62 +f 588/1037/63 589/1038/63 587/1035/63 +f 588/1039/64 586/1040/64 582/1041/64 +f 590/1042/65 591/1043/65 589/1038/65 +f 592/1044/66 581/1031/66 591/1043/66 +f 594/1045/67 596/1046/67 593/1047/67 +f 594/1045/67 598/1048/67 597/1049/67 +f 600/1050/68 602/1051/68 599/1052/68 +f 601/1053/68 603/1054/68 600/1050/68 +f 609/1055/69 605/1056/69 606/1057/69 +f 609/1055/70 607/1058/70 610/1059/70 +f 582/1029/60 584/1032/60 583/1030/60 +f 584/1032/61 586/1060/61 585/1033/61 +f 586/1034/62 588/1037/62 587/1035/62 +f 588/1037/63 590/1042/63 589/1038/63 +f 586/1040/64 584/1061/64 582/1041/64 +f 582/1041/64 592/1062/64 590/1063/64 +f 590/1063/64 588/1039/64 582/1041/64 +f 590/1042/65 592/1044/65 591/1043/65 +f 592/1044/66 582/1029/66 581/1031/66 +f 594/1045/67 597/1049/67 596/1046/67 +f 594/1045/67 595/1064/67 598/1048/67 +f 600/1050/71 603/1054/71 602/1051/71 +f 601/1053/71 604/1065/71 603/1054/71 +f 609/1055/70 608/1066/70 605/1056/70 +f 609/1055/69 606/1057/69 607/1058/69 +o Base +v -1.500000 0.000000 3.500000 +v 1.500000 0.000000 3.500000 +v -1.500000 0.000000 -3.500000 +v 1.500000 0.000000 -3.500000 +v -1.500000 1.000000 3.500000 +v 1.500000 1.000000 3.500000 +v -1.500000 1.000000 -3.500000 +v 1.500000 1.000000 -3.500000 +v 0.000000 1.250000 0.625000 +v -0.526190 1.250000 0.729666 +v -0.972272 1.250000 1.027728 +v -1.270334 1.250000 1.473810 +v -1.375000 1.250000 2.000000 +v -1.270334 1.250000 2.526190 +v -0.972272 1.250000 2.972272 +v -0.526190 1.250000 3.270334 +v 0.000000 1.250000 3.375000 +v 0.526189 1.250000 3.270334 +v 0.972271 1.250000 2.972272 +v 1.270334 1.250000 2.526190 +v 1.375000 1.250000 2.000000 +v 1.270334 1.250000 1.473810 +v 0.972271 1.250000 1.027728 +v 0.526189 1.250000 0.729665 +v 0.000000 3.000000 0.625000 +v -0.526190 3.000000 0.729666 +v -0.972272 3.000000 1.027728 +v -1.270334 3.000000 1.473810 +v -1.375000 3.000000 2.000000 +v -1.270334 3.000000 2.526190 +v -0.972272 3.000000 2.972272 +v -0.526190 3.000000 3.270334 +v 0.000000 3.000000 3.375000 +v 0.526189 3.000000 3.270334 +v 0.972271 3.000000 2.972272 +v 1.270334 3.000000 2.526190 +v 1.375000 3.000000 2.000000 +v 1.270334 3.000000 1.473810 +v 0.972271 3.000000 1.027728 +v 0.526189 3.000000 0.729665 +v 0.000000 3.000000 0.500000 +v -0.574025 3.000000 0.614181 +v -1.060660 3.000000 0.939340 +v -1.385819 3.000000 1.425975 +v -1.500000 3.000000 2.000000 +v -1.385819 3.000000 2.574025 +v -1.060660 3.000000 3.060660 +v -0.574025 3.000000 3.385819 +v -0.000000 3.000000 3.500000 +v 0.574025 3.000000 3.385819 +v 1.060660 3.000000 3.060660 +v 1.385819 3.000000 2.574025 +v 1.500000 3.000000 2.000000 +v 1.385819 3.000000 1.425975 +v 1.060659 3.000000 0.939340 +v 0.574024 3.000000 0.614180 +v 0.000000 3.250000 0.500000 +v -0.574025 3.250000 0.614181 +v -1.060660 3.250000 0.939340 +v -1.385819 3.250000 1.425975 +v -1.500000 3.250000 2.000000 +v -1.385819 3.250000 2.574025 +v -1.060660 3.250000 3.060660 +v -0.574025 3.250000 3.385819 +v -0.000000 3.250000 3.500000 +v 0.574025 3.250000 3.385819 +v 1.060660 3.250000 3.060660 +v 1.385819 3.250000 2.574025 +v 1.500000 3.250000 2.000000 +v 1.385819 3.250000 1.425975 +v 1.060659 3.250000 0.939340 +v 0.574024 3.250000 0.614180 +v 0.000000 3.250000 0.750000 +v -0.478354 3.250000 0.845150 +v -0.883883 3.250000 1.116116 +v -1.154850 3.250000 1.521646 +v -1.250000 3.250000 2.000000 +v -1.154850 3.250000 2.478354 +v -0.883883 3.250000 2.883883 +v -0.478354 3.250000 3.154849 +v -0.000000 3.250000 3.250000 +v 0.478354 3.250000 3.154850 +v 0.883883 3.250000 2.883884 +v 1.154849 3.250000 2.478354 +v 1.250000 3.250000 2.000000 +v 1.154849 3.250000 1.521645 +v 0.883883 3.250000 1.116116 +v 0.478354 3.250000 0.845150 +v 0.000000 2.250000 0.750000 +v -0.478354 2.250000 0.845150 +v -0.883883 2.250000 1.116116 +v -1.154850 2.250000 1.521646 +v -1.250000 2.250000 2.000000 +v -1.154850 2.250000 2.478354 +v -0.883883 2.250000 2.883883 +v -0.478354 2.250000 3.154849 +v -0.000000 2.250000 3.250000 +v 0.478354 2.250000 3.154850 +v 0.883883 2.250000 2.883884 +v 1.154849 2.250000 2.478354 +v 1.250000 2.250000 2.000000 +v 1.154849 2.250000 1.521645 +v 0.883883 2.250000 1.116116 +v 0.478354 2.250000 0.845150 +v -1.250000 1.000000 0.250000 +v 1.250000 1.000000 0.250000 +v -1.250000 1.000000 -2.250000 +v 1.250000 1.000000 -2.250000 +v -1.250000 2.750000 -2.250000 +v -1.250000 2.750000 0.250000 +v 1.250000 2.750000 0.250000 +v 1.250000 2.750000 -2.250000 +v -1.000000 3.250000 -2.250000 +v -1.000000 3.250000 0.250000 +v 1.000000 3.250000 0.250000 +v 1.000000 3.250000 -2.250000 +v -1.000000 1.000000 -2.250000 +v 1.000000 1.000000 -2.250000 +v -1.000000 1.000000 -3.250000 +v 1.000000 1.000000 -3.250000 +v -1.000000 1.500000 -3.250000 +v -1.000000 1.500000 -2.250000 +v 1.000000 1.500000 -2.250000 +v 1.000000 1.500000 -3.250000 +v -0.875000 1.500000 -3.125000 +v -0.875000 1.500000 -2.250000 +v 0.875000 1.500000 -2.250000 +v 0.875000 1.500000 -3.125000 +v -0.875000 1.250000 -3.125000 +v -0.875000 1.250000 -2.250000 +v 0.875000 1.250000 -2.250000 +v 0.875000 1.250000 -3.125000 +v 0.437500 1.500000 -2.250000 +v -0.437500 1.500000 -2.250000 +v 0.437500 1.500000 -2.687500 +v -0.437500 1.500000 -2.687500 +v -0.500000 2.000000 -2.250000 +v 0.500000 2.000000 -2.250000 +v -0.500000 2.000000 -2.750000 +v 0.500000 2.000000 -2.750000 +v -0.500000 2.250000 -2.750000 +v -0.500000 2.750000 -2.250000 +v 0.500000 2.750000 -2.250000 +v 0.500000 2.250000 -2.750000 +v -0.437500 2.000000 -2.687500 +v -0.437500 2.000000 -2.312500 +v 0.437500 2.000000 -2.312500 +v 0.437500 2.000000 -2.687500 +v -0.437500 2.125000 -2.687500 +v -0.437500 2.125000 -2.312500 +v 0.437500 2.125000 -2.312500 +v 0.437500 2.125000 -2.687500 +v -0.750000 3.250000 0.000000 +v 0.750000 3.250000 0.000000 +v -0.750000 3.250000 -2.000000 +v 0.750000 3.250000 -2.000000 +v -0.500000 2.750000 -2.000000 +v -0.500000 2.750000 0.000000 +v 0.500000 2.750000 0.000000 +v 0.500000 2.750000 -2.000000 +v 1.125000 1.000000 -0.125000 +v 1.375000 1.000000 -0.125000 +v 1.125000 1.000000 -0.375000 +v 1.375000 1.000000 -0.375000 +v 1.125000 3.250000 -0.375000 +v 1.125000 3.250000 -0.125000 +v 1.375000 3.250000 -0.125000 +v 1.375000 3.250000 -0.375000 +v 1.125000 1.000000 -1.625000 +v 1.375000 1.000000 -1.625000 +v 1.125000 1.000000 -1.875000 +v 1.375000 1.000000 -1.875000 +v 1.125000 3.250000 -1.875000 +v 1.125000 3.250000 -1.625000 +v 1.375000 3.250000 -1.625000 +v 1.375000 3.250000 -1.875000 +v -1.375000 1.000000 -0.125000 +v -1.125000 1.000000 -0.125000 +v -1.375000 1.000000 -0.375000 +v -1.125000 1.000000 -0.375000 +v -1.375000 3.250000 -0.375000 +v -1.375000 3.250000 -0.125000 +v -1.125000 3.250000 -0.125000 +v -1.125000 3.250000 -0.375000 +v -1.375000 1.000000 -1.625000 +v -1.125000 1.000000 -1.625000 +v -1.375000 1.000000 -1.875000 +v -1.125000 1.000000 -1.875000 +v -1.375000 3.250000 -1.875000 +v -1.375000 3.250000 -1.625000 +v -1.125000 3.250000 -1.625000 +v -1.125000 3.250000 -1.875000 +v 0.000000 1.000000 0.500000 +v -0.574025 1.000000 0.614181 +v -1.060660 1.000000 0.939340 +v -1.385819 1.000000 1.425975 +v -1.500000 1.000000 2.000000 +v -1.385819 1.000000 2.574025 +v -1.060660 1.000000 3.060660 +v -0.574025 1.000000 3.385819 +v -0.000000 1.000000 3.500000 +v 0.574025 1.000000 3.385819 +v 1.060660 1.000000 3.060660 +v 1.385819 1.000000 2.574025 +v 1.500000 1.000000 2.000000 +v 1.385819 1.000000 1.425975 +v 1.060659 1.000000 0.939340 +v 0.574024 1.000000 0.614180 +v 0.000000 1.250000 0.500000 +v -0.574025 1.250000 0.614181 +v -1.060660 1.250000 0.939340 +v -1.385819 1.250000 1.425975 +v -1.500000 1.250000 2.000000 +v -1.385819 1.250000 2.574025 +v -1.060660 1.250000 3.060660 +v -0.574025 1.250000 3.385819 +v -0.000000 1.250000 3.500000 +v 0.574025 1.250000 3.385819 +v 1.060660 1.250000 3.060660 +v 1.385819 1.250000 2.574025 +v 1.500000 1.250000 2.000000 +v 1.385819 1.250000 1.425975 +v 1.060659 1.250000 0.939340 +v 0.574024 1.250000 0.614180 +v 1.125000 3.250000 3.125000 +v 1.375000 3.250000 3.125000 +v 1.125000 3.250000 -2.000000 +v 1.375000 3.250000 -2.000000 +v 1.125000 3.500000 -2.000000 +v 1.125000 3.500000 3.125000 +v 1.375000 3.500000 3.125000 +v 1.375000 3.500000 -2.000000 +v -1.375000 3.250000 3.125000 +v -1.125000 3.250000 3.125000 +v -1.375000 3.250000 -2.000000 +v -1.125000 3.250000 -2.000000 +v -1.375000 3.500000 -2.000000 +v -1.375000 3.500000 3.125000 +v -1.125000 3.500000 3.125000 +v -1.125000 3.500000 -2.000000 +v 1.125000 1.000000 3.000000 +v 1.375000 1.000000 3.000000 +v 1.125000 1.000000 2.750000 +v 1.375000 1.000000 2.750000 +v 1.125000 3.250000 2.750000 +v 1.125000 3.250000 3.000000 +v 1.375000 3.250000 3.000000 +v 1.375000 3.250000 2.750000 +v -1.375000 1.000000 3.000000 +v -1.125000 1.000000 3.000000 +v -1.375000 1.000000 2.750000 +v -1.125000 1.000000 2.750000 +v -1.375000 3.250000 2.750000 +v -1.375000 3.250000 3.000000 +v -1.125000 3.250000 3.000000 +v -1.125000 3.250000 2.750000 +v 0.250000 2.000000 0.250000 +v 0.073223 1.926777 0.250000 +v 0.000000 1.750000 0.250000 +v 0.073223 1.573223 0.250000 +v 0.250000 1.500000 0.250000 +v 0.426777 1.573223 0.250000 +v 0.500000 1.750000 0.250000 +v 0.426777 1.926777 0.250000 +v 0.250000 2.000000 0.750000 +v 0.073223 1.926777 0.750000 +v 0.000000 1.750000 0.750000 +v 0.073223 1.573223 0.750000 +v 0.250000 1.500000 0.750000 +v 0.426777 1.573223 0.750000 +v 0.500000 1.750000 0.750000 +v 0.426777 1.926777 0.750000 +v -0.250000 2.000000 0.250000 +v -0.426777 1.926777 0.250000 +v -0.500000 1.750000 0.250000 +v -0.426777 1.573223 0.250000 +v -0.250000 1.500000 0.250000 +v -0.073223 1.573223 0.250000 +v 0.000000 1.750000 0.250000 +v -0.073223 1.926777 0.250000 +v -0.250000 2.000000 0.750000 +v -0.426777 1.926777 0.750000 +v -0.500000 1.750000 0.750000 +v -0.426777 1.573223 0.750000 +v -0.250000 1.500000 0.750000 +v -0.073223 1.573223 0.750000 +v 0.000000 1.750000 0.750000 +v -0.073223 1.926777 0.750000 +v 1.125000 1.000000 1.250000 +v 1.375000 1.000000 1.250000 +v 1.125000 1.000000 1.000000 +v 1.375000 1.000000 1.000000 +v 1.125000 3.250000 1.000000 +v 1.125000 3.250000 1.250000 +v 1.375000 3.250000 1.250000 +v 1.375000 3.250000 1.000000 +v -1.375000 1.000000 1.250000 +v -1.125000 1.000000 1.250000 +v -1.375000 1.000000 1.000000 +v -1.125000 1.000000 1.000000 +v -1.375000 3.250000 1.000000 +v -1.375000 3.250000 1.250000 +v -1.125000 3.250000 1.250000 +v -1.125000 3.250000 1.000000 +v 1.250000 2.375000 -0.500000 +v 1.250000 1.375000 -0.500000 +v 1.250000 2.375000 -1.500000 +v 1.250000 1.375000 -1.500000 +v 1.500000 2.375000 -1.500000 +v 1.500000 2.375000 -0.500000 +v 1.500000 1.375000 -0.500000 +v 1.500000 1.375000 -1.500000 +v 1.500000 2.312500 -1.437500 +v 1.500000 2.312500 -0.562500 +v 1.500000 1.437500 -0.562500 +v 1.500000 1.437500 -1.437500 +v 1.375000 2.312500 -1.437500 +v 1.375000 2.312500 -0.562500 +v 1.375000 1.437500 -0.562500 +v 1.375000 1.437500 -1.437500 +v 1.500000 2.093750 -0.562500 +v 1.500000 2.031250 -0.562500 +v 1.500000 2.093750 -1.437500 +v 1.500000 2.031250 -1.437500 +v 1.500000 2.281250 -0.562500 +v 1.500000 2.218750 -0.562500 +v 1.500000 2.281250 -1.437500 +v 1.500000 2.218750 -1.437500 +v 1.500000 1.718750 -0.562500 +v 1.500000 1.656250 -0.562500 +v 1.500000 1.718750 -1.437500 +v 1.500000 1.656250 -1.437500 +v 1.500000 1.906250 -0.562500 +v 1.500000 1.843750 -0.562500 +v 1.500000 1.906250 -1.437500 +v 1.500000 1.843750 -1.437500 +v 1.500000 1.531250 -0.562500 +v 1.500000 1.468750 -0.562500 +v 1.500000 1.531250 -1.437500 +v 1.500000 1.468750 -1.437500 +v -1.250000 2.375000 -0.500000 +v -1.250000 1.375000 -0.500000 +v -1.250000 2.375000 -1.500000 +v -1.250000 1.375000 -1.500000 +v -1.500000 2.375000 -1.500000 +v -1.500000 2.375000 -0.500000 +v -1.500000 1.375000 -0.500000 +v -1.500000 1.375000 -1.500000 +v -1.500000 2.250000 -1.375000 +v -1.500000 2.250000 -0.625000 +v -1.500000 1.500000 -0.625000 +v -1.500000 1.500000 -1.375000 +v -1.375000 2.250000 -1.375000 +v -1.375000 2.250000 -0.625000 +v -1.375000 1.500000 -0.625000 +v -1.375000 1.500000 -1.375000 +v -1.500000 2.250000 -1.375000 +v -1.982091 2.250000 -0.800467 +v -1.982091 1.500000 -0.800467 +v -1.500000 1.500000 -1.375000 +v 0.875000 1.500000 -3.125000 +v 1.000000 1.500000 -3.125000 +v 0.875000 1.500000 -3.250000 +v 1.000000 1.500000 -3.250000 +v 0.875000 2.875000 -3.125000 +v 1.000000 2.875000 -3.125000 +v 0.875000 2.875000 -3.250000 +v 1.000000 2.875000 -3.250000 +v -1.000000 1.500000 -3.125000 +v -0.875000 1.500000 -3.125000 +v -1.000000 1.500000 -3.250000 +v -0.875000 1.500000 -3.250000 +v -1.000000 2.875000 -3.125000 +v -0.875000 2.875000 -3.125000 +v -1.000000 2.875000 -3.250000 +v -0.875000 2.875000 -3.250000 +v 1.000000 2.875000 -3.250000 +v -1.000000 2.875000 -3.250000 +v 1.000000 2.875000 -2.250000 +v -1.000000 2.875000 -2.250000 +v 1.000000 3.000000 -3.250000 +v -1.000000 3.000000 -3.250000 +v 1.000000 3.000000 -2.250000 +v -1.000000 3.000000 -2.250000 +vt 0.341463 0.102564 +vt -0.000000 0.410256 +vt -0.000000 0.102564 +vt -0.000000 0.102564 +vt 0.341463 0.410256 +vt -0.000000 0.410256 +vt 0.341463 -0.000000 +vt -0.000000 0.000000 +vt 0.341463 -0.000000 +vt 0.390244 0.410256 +vt 0.341463 0.102564 +vt 0.390244 0.102564 +vt 0.390244 0.410256 +vt 0.341463 0.102564 +vt 0.390244 0.102564 +vt 0.326219 0.448718 +vt 0.301829 0.461538 +vt 0.301829 0.448718 +vt 0.329268 0.448718 +vt 0.356707 0.461538 +vt 0.329268 0.461538 +vt 0.381098 0.448718 +vt 0.356707 0.448718 +vt 0.408537 0.448718 +vt 0.384146 0.461538 +vt 0.384146 0.448718 +vt 0.435976 0.448718 +vt 0.411585 0.461538 +vt 0.411585 0.448718 +vt 0.024390 0.448718 +vt 0.000000 0.461538 +vt 0.000000 0.448718 +vt 0.051829 0.448718 +vt 0.027439 0.461538 +vt 0.027439 0.448718 +vt 0.079268 0.448718 +vt 0.054878 0.461538 +vt 0.054878 0.448718 +vt 0.106707 0.448718 +vt 0.082317 0.461538 +vt 0.082317 0.448718 +vt 0.109756 0.448718 +vt 0.137195 0.461538 +vt 0.109756 0.461538 +vt 0.137195 0.448718 +vt 0.164634 0.461538 +vt 0.164634 0.448718 +vt 0.192073 0.461538 +vt 0.192073 0.448718 +vt 0.219512 0.461538 +vt 0.219512 0.448718 +vt 0.246951 0.461538 +vt 0.271341 0.448718 +vt 0.246951 0.448718 +vt 0.274390 0.448718 +vt 0.274390 0.461538 +vt 0.329268 0.487179 +vt 0.301829 0.512821 +vt 0.301829 0.487179 +vt 0.356707 0.487179 +vt 0.329268 0.512821 +vt 0.384146 0.487179 +vt 0.356707 0.512821 +vt 0.408537 0.512821 +vt 0.384146 0.512821 +vt 0.411585 0.487179 +vt 0.435976 0.512821 +vt 0.411585 0.512821 +vt 0.027439 0.487179 +vt 0.000000 0.512821 +vt 0.000000 0.487179 +vt 0.051829 0.512821 +vt 0.027439 0.512821 +vt 0.054878 0.487179 +vt 0.079268 0.512821 +vt 0.054878 0.512821 +vt 0.082317 0.487179 +vt 0.106707 0.512821 +vt 0.082317 0.512821 +vt 0.109756 0.487179 +vt 0.134146 0.512821 +vt 0.109756 0.512821 +vt 0.164634 0.487179 +vt 0.137195 0.512821 +vt 0.137195 0.487179 +vt 0.192073 0.487179 +vt 0.164634 0.512821 +vt 0.216463 0.512821 +vt 0.192073 0.512821 +vt 0.246951 0.487179 +vt 0.219512 0.512821 +vt 0.219512 0.487179 +vt 0.274390 0.487179 +vt 0.246951 0.512821 +vt 0.298781 0.512821 +vt 0.274390 0.512821 +vt 0.451219 0.000216 +vt 0.512092 0.128205 +vt 0.451219 0.256194 +vt 0.414634 0.961538 +vt 0.408537 0.929487 +vt 0.414634 0.929487 +vt 0.756098 0.179487 +vt 0.646341 0.230769 +vt 0.634146 0.179487 +vt 0.756098 -0.000000 +vt 0.634146 0.000000 +vt 1.000000 0.000000 +vt 0.878049 0.179487 +vt 0.878049 0.000000 +vt 0.512195 0.179487 +vt 0.512195 0.000000 +vt 0.658537 0.256410 +vt 0.646341 0.487179 +vt 1.000000 0.179487 +vt 0.890244 0.230769 +vt 0.512195 0.230769 +vt 0.756098 0.230769 +vt 0.512195 0.846154 +vt 0.554878 0.858974 +vt 0.512195 0.858974 +vt 0.707317 0.846154 +vt 0.664634 0.858974 +vt 0.658537 0.846154 +vt 0.707317 0.794872 +vt 0.658537 0.794872 +vt 0.560976 0.846154 +vt 0.560976 0.794872 +vt 0.567073 0.858974 +vt 0.512195 0.794872 +vt 0.652439 0.858974 +vt 0.567073 0.884615 +vt 0.707317 0.858974 +vt 0.664634 0.884615 +vt 0.512195 0.884615 +vt 0.533537 0.929487 +vt 0.512195 0.974359 +vt 0.512195 0.884615 +vt 0.576219 0.974359 +vt 0.533537 0.974359 +vt 0.576219 0.929487 +vt 0.597561 0.974359 +vt 0.597561 0.884615 +vt 0.390244 0.794872 +vt 0.344512 0.801282 +vt 0.341463 0.794872 +vt 0.341463 0.916667 +vt 0.390244 0.865385 +vt 0.390244 0.916667 +vt 0.344512 0.833333 +vt 0.341463 0.839744 +vt 0.317073 0.839744 +vt 0.341463 0.865385 +vt 0.317073 0.916667 +vt 0.414634 0.839744 +vt 0.390244 0.839744 +vt 0.387195 0.801282 +vt 0.387195 0.833333 +vt 0.408537 0.961538 +vt 0.365854 0.929487 +vt 0.365854 0.974359 +vt 0.408537 0.974359 +vt 0.408537 0.916667 +vt 0.365854 0.916667 +vt 0.359756 0.929487 +vt 0.365854 0.961538 +vt 0.359756 0.961538 +vt 0.548781 0.282051 +vt 0.573171 0.487179 +vt 0.548781 0.487179 +vt 0.731707 0.256410 +vt 0.743902 0.230769 +vt 0.731707 0.461538 +vt 0.743902 0.487179 +vt 0.658537 0.461538 +vt 0.621951 0.282051 +vt 0.621951 0.487179 +vt 0.646341 0.487179 +vt 0.646341 0.282051 +vt 0.634146 0.230769 +vt 0.573171 0.282051 +vt 0.560976 0.230769 +vt 0.560976 0.538462 +vt 0.634146 0.538462 +vt 0.451219 0.256410 +vt 0.439024 0.487179 +vt 0.439024 0.256410 +vt 0.463415 0.256410 +vt 0.451219 0.487179 +vt 0.487805 0.256410 +vt 0.475610 0.487179 +vt 0.475610 0.256410 +vt 0.463415 0.487179 +vt 0.451219 0.256410 +vt 0.439024 0.487179 +vt 0.439024 0.256410 +vt 0.463415 0.256410 +vt 0.451219 0.487179 +vt 0.487805 0.256410 +vt 0.475610 0.487179 +vt 0.475610 0.256410 +vt 0.463415 0.487179 +vt 0.451219 0.256410 +vt 0.439024 0.487179 +vt 0.439024 0.256410 +vt 0.463415 0.256410 +vt 0.451219 0.487179 +vt 0.487805 0.256410 +vt 0.475610 0.487179 +vt 0.475610 0.256410 +vt 0.463415 0.487179 +vt 0.451219 0.256410 +vt 0.439024 0.487179 +vt 0.439024 0.256410 +vt 0.463415 0.256410 +vt 0.451219 0.487179 +vt 0.487805 0.256410 +vt 0.475610 0.487179 +vt 0.475610 0.256410 +vt 0.463415 0.487179 +vt 0.301829 0.435897 +vt 0.326219 0.448718 +vt 0.301829 0.448718 +vt 0.329268 0.448718 +vt 0.356707 0.435897 +vt 0.353659 0.448718 +vt 0.381098 0.448718 +vt 0.356707 0.448718 +vt 0.384146 0.435897 +vt 0.408537 0.448718 +vt 0.384146 0.448718 +vt 0.411585 0.435897 +vt 0.435976 0.448718 +vt 0.411585 0.448718 +vt 0.000000 0.435897 +vt 0.024390 0.448718 +vt 0.000000 0.448718 +vt 0.027439 0.435897 +vt 0.051829 0.448718 +vt 0.027439 0.448718 +vt 0.054878 0.435897 +vt 0.079268 0.448718 +vt 0.054878 0.448718 +vt 0.082317 0.435897 +vt 0.106707 0.448718 +vt 0.082317 0.448718 +vt 0.109756 0.448718 +vt 0.137195 0.435897 +vt 0.134146 0.448718 +vt 0.137195 0.448718 +vt 0.164634 0.435897 +vt 0.161585 0.448718 +vt 0.164634 0.448718 +vt 0.192073 0.435897 +vt 0.189024 0.448718 +vt 0.192073 0.448718 +vt 0.219512 0.435897 +vt 0.216463 0.448718 +vt 0.219512 0.448718 +vt 0.246951 0.435897 +vt 0.243902 0.448718 +vt 0.271341 0.448718 +vt 0.246951 0.448718 +vt 0.274390 0.448718 +vt 0.298781 0.448718 +vt 0.262195 0.692308 +vt 0.012195 0.717949 +vt 0.012195 0.692308 +vt 0.012195 0.743590 +vt 0.262195 0.769231 +vt 0.012195 0.769231 +vt 0.262195 0.717949 +vt 0.012195 0.794872 +vt 0.262195 0.794872 +vt 0.274390 0.769231 +vt 0.262195 0.743590 +vt 0.274390 0.743590 +vt 0.000000 0.743590 +vt 0.000000 0.769231 +vt 0.262195 0.692308 +vt 0.012195 0.717949 +vt 0.012195 0.692308 +vt 0.012195 0.743590 +vt 0.262195 0.769231 +vt 0.012195 0.769231 +vt 0.262195 0.717949 +vt 0.012195 0.794872 +vt 0.262195 0.794872 +vt 0.274390 0.769231 +vt 0.262195 0.743590 +vt 0.274390 0.743590 +vt 0.000000 0.743590 +vt 0.000000 0.769231 +vt 0.451219 0.256410 +vt 0.439024 0.487179 +vt 0.439024 0.256410 +vt 0.463415 0.256410 +vt 0.451219 0.487179 +vt 0.487805 0.256410 +vt 0.475610 0.487179 +vt 0.475610 0.256410 +vt 0.463415 0.487179 +vt 0.451219 0.256410 +vt 0.439024 0.487179 +vt 0.439024 0.256410 +vt 0.463415 0.256410 +vt 0.451219 0.487179 +vt 0.487805 0.256410 +vt 0.475610 0.487179 +vt 0.475610 0.256410 +vt 0.463415 0.487179 +vt 0.451219 0.256410 +vt 0.439024 0.487179 +vt 0.439024 0.256410 +vt 0.463415 0.256410 +vt 0.451219 0.487179 +vt 0.487805 0.256410 +vt 0.475610 0.487179 +vt 0.475610 0.256410 +vt 0.463415 0.487179 +vt 0.451219 0.256410 +vt 0.439024 0.487179 +vt 0.439024 0.256410 +vt 0.463415 0.256410 +vt 0.451219 0.487179 +vt 0.487805 0.256410 +vt 0.475610 0.487179 +vt 0.475610 0.256410 +vt 0.463415 0.487179 +vt 0.161585 0.839744 +vt 0.167683 0.929487 +vt 0.161585 0.929487 +vt 0.219512 0.935897 +vt 0.216463 0.839744 +vt 0.219512 0.833333 +vt 0.213415 0.794872 +vt 0.164634 0.820513 +vt 0.164634 0.794872 +vt 0.164634 0.974359 +vt 0.213415 0.948718 +vt 0.213415 0.974359 +vt 0.231707 0.935897 +vt 0.231707 0.833333 +vt 0.146341 0.833333 +vt 0.158537 0.935897 +vt 0.146341 0.935897 +vt 0.158537 0.833333 +vt 0.213415 0.820513 +vt 0.167683 0.826923 +vt 0.164634 0.948718 +vt 0.210366 0.942308 +vt 0.167683 0.839744 +vt 0.210366 0.929487 +vt 0.210366 0.826923 +vt 0.167683 0.942308 +vt 0.216463 0.929487 +vt 0.210366 0.839744 +vt 0.167683 0.974359 +vt 0.210366 0.980769 +vt 0.167683 0.980769 +vt 0.167683 0.974359 +vt 0.210366 0.980769 +vt 0.167683 0.980769 +vt 0.167683 0.974359 +vt 0.210366 0.980769 +vt 0.167683 0.980769 +vt 0.167683 0.974359 +vt 0.210366 0.980769 +vt 0.167683 0.980769 +vt 0.167683 0.974359 +vt 0.210366 0.980769 +vt 0.167683 0.980769 +vt 0.243902 0.833333 +vt 0.250000 0.923077 +vt 0.243902 0.935897 +vt 0.298781 0.794872 +vt 0.250000 0.820513 +vt 0.250000 0.794872 +vt 0.250000 0.974359 +vt 0.298781 0.948718 +vt 0.298781 0.974359 +vt 0.231707 0.833333 +vt 0.231707 0.935897 +vt 0.317073 0.935897 +vt 0.304878 0.833333 +vt 0.317073 0.833333 +vt 0.298781 0.923077 +vt 0.292683 0.846154 +vt 0.298781 0.846154 +vt 0.304878 0.935897 +vt 0.298781 0.820513 +vt 0.256098 0.833333 +vt 0.250000 0.948718 +vt 0.292683 0.935897 +vt 0.256098 0.846154 +vt 0.292683 0.923077 +vt 0.256098 0.923077 +vt 0.292683 0.833333 +vt 0.256098 0.935897 +vt 0.250000 0.846154 +vt 0.323171 0.916667 +vt 0.359756 0.993590 +vt 0.323171 0.993590 +vt 0.725610 0.935897 +vt 0.719512 0.794872 +vt 0.725610 0.794872 +vt 0.713415 0.935897 +vt 0.707317 0.794872 +vt 0.713415 0.794872 +vt 0.719512 0.935897 +vt 0.731707 0.935897 +vt 0.731707 0.794872 +vt 0.725610 0.935897 +vt 0.719512 0.794872 +vt 0.725610 0.794872 +vt 0.713415 0.935897 +vt 0.707317 0.794872 +vt 0.713415 0.794872 +vt 0.719512 0.935897 +vt 0.731707 0.935897 +vt 0.731707 0.794872 +vt 0.810976 0.589744 +vt 0.908537 0.692308 +vt 0.810976 0.692308 +vt 0.908537 0.705128 +vt 0.810976 0.807692 +vt 0.810976 0.705128 +vt 0.914634 0.807692 +vt 0.914634 0.705128 +vt 0.804878 0.705128 +vt 0.804878 0.807692 +vt 0.341463 0.410256 +vt -0.000000 -0.000000 +vt 0.341463 0.410256 +vt 0.353659 0.448718 +vt 0.439024 0.461538 +vt 0.134146 0.448718 +vt 0.161585 0.448718 +vt 0.189024 0.448718 +vt 0.216463 0.448718 +vt 0.243902 0.448718 +vt 0.298781 0.448718 +vt 0.326219 0.512821 +vt 0.353659 0.512821 +vt 0.381098 0.512821 +vt 0.439024 0.487179 +vt 0.024390 0.512821 +vt 0.161585 0.512821 +vt 0.189024 0.512821 +vt 0.243902 0.512821 +vt 0.271341 0.512821 +vt 0.474515 0.009959 +vt 0.494263 0.037704 +vt 0.507459 0.079226 +vt 0.507459 0.177184 +vt 0.494263 0.218707 +vt 0.474514 0.246451 +vt 0.427924 0.246452 +vt 0.408176 0.218707 +vt 0.394980 0.177185 +vt 0.390347 0.128205 +vt 0.394980 0.079226 +vt 0.408176 0.037703 +vt 0.427925 0.009959 +vt 0.987805 0.230769 +vt 0.634146 0.230769 +vt 0.878049 0.230769 +vt 0.652439 0.884615 +vt 0.707317 0.884615 +vt 0.554878 0.884615 +vt 0.414634 0.916667 +vt 0.487805 0.487179 +vt 0.487805 0.487179 +vt 0.487805 0.487179 +vt 0.487805 0.487179 +vt 0.329268 0.435897 +vt 0.439024 0.435897 +vt 0.109756 0.435897 +vt 0.274390 0.435897 +vt 0.487805 0.487179 +vt 0.487805 0.487179 +vt 0.487805 0.487179 +vt 0.487805 0.487179 +vt 0.210366 0.974359 +vt 0.210366 0.974359 +vt 0.210366 0.974359 +vt 0.210366 0.974359 +vt 0.210366 0.974359 +vt 0.359756 0.916667 +vt 0.707317 0.935897 +vt 0.707317 0.935897 +vt 0.908537 0.589744 +vt 0.908537 0.807692 +vt 0.341463 0.512821 +vt 0.317073 0.692308 +vt 0.317073 0.512821 +vt 0.170732 0.512821 +vt 0.146341 0.692308 +vt 0.146341 0.512821 +vt 0.365854 0.512821 +vt 0.341463 0.692308 +vt 0.195122 0.512821 +vt 0.170732 0.692308 +vt 0.024390 0.512821 +vt -0.000000 0.692308 +vt 0.000000 0.512821 +vt 0.390244 0.512821 +vt 0.365854 0.692308 +vt 0.219512 0.512821 +vt 0.195122 0.692308 +vt 0.048780 0.512821 +vt 0.024390 0.692308 +vt 0.243902 0.512821 +vt 0.219512 0.692308 +vt 0.073171 0.512821 +vt 0.048780 0.692308 +vt 0.268293 0.512821 +vt 0.243902 0.692308 +vt 0.097561 0.512821 +vt 0.073171 0.692308 +vt 0.292683 0.512821 +vt 0.268293 0.692308 +vt 0.121951 0.512821 +vt 0.097561 0.692308 +vt 0.292683 0.692308 +vt 0.121951 0.692308 +vt 0.926829 0.897436 +vt 0.902439 1.000000 +vt 0.902439 0.897436 +vt 0.853659 1.000000 +vt 0.878049 0.897436 +vt 0.878049 1.000000 +vt 0.951219 0.897436 +vt 0.926829 1.000000 +vt 0.829268 1.000000 +vt 0.853659 0.897436 +vt 0.975610 0.897436 +vt 0.951219 1.000000 +vt 0.804878 1.000000 +vt 0.829268 0.897436 +vt 0.975610 1.000000 +vt 1.000000 0.897436 +vt 1.000000 1.000000 +vt 1.000000 0.897436 +vt 0.975610 1.000000 +vt 0.829268 0.897436 +vt 0.804878 1.000000 +vt 0.804878 0.897436 +vt 0.951219 1.000000 +vt 0.975610 0.897436 +vt 0.853659 0.897436 +vt 0.829268 1.000000 +vt 0.926829 1.000000 +vt 0.951219 0.897436 +vt 0.878049 0.897436 +vt 0.853659 1.000000 +vt 0.902439 1.000000 +vt 0.926829 0.897436 +vt 0.878049 1.000000 +vt 0.902439 0.897436 +vt 0.274390 0.410256 +vt 0.246951 0.410256 +vt 0.082317 0.410256 +vt 0.054878 0.410256 +vt 0.301829 0.410256 +vt 0.109756 0.410256 +vt 0.329268 0.410256 +vt 0.137195 0.410256 +vt 0.356707 0.410256 +vt 0.164634 0.410256 +vt 0.384146 0.410256 +vt 0.192073 0.410256 +vt 0.411585 0.410256 +vt 0.219512 0.410256 +vt 0.027439 0.410256 +vt 0.000000 0.410256 +vt 0.439024 0.410256 +vt 0.692073 0.538462 +vt 0.701219 0.487179 +vt 0.701219 0.538462 +vt 0.710366 0.538462 +vt 0.719512 0.487179 +vt 0.719512 0.538462 +vt 0.655488 0.538462 +vt 0.664634 0.487179 +vt 0.664634 0.538462 +vt 0.673781 0.538462 +vt 0.682927 0.487179 +vt 0.682927 0.538462 +vt 0.692073 0.487179 +vt 0.710366 0.487179 +vt 0.646341 0.538462 +vt 0.655488 0.487179 +vt 0.673781 0.487179 +vt 0.692073 0.538462 +vt 0.701219 0.487179 +vt 0.701219 0.538462 +vt 0.710366 0.538462 +vt 0.719512 0.487179 +vt 0.719512 0.538462 +vt 0.655488 0.538462 +vt 0.664634 0.487179 +vt 0.664634 0.538462 +vt 0.673781 0.538462 +vt 0.682927 0.487179 +vt 0.682927 0.538462 +vt 0.692073 0.487179 +vt 0.710366 0.487179 +vt 0.646341 0.538462 +vt 0.655488 0.487179 +vt 0.673781 0.487179 +vt 0.390244 0.692308 +vt 0.804878 0.897436 +vt 1.000000 1.000000 +vt 0.646341 0.487179 +vt 0.646341 0.487179 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 1.0000 0.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 0.8944 0.4472 0.0000 +vn -0.8944 0.4472 0.0000 +vn 0.4961 0.8682 0.0000 +vn 0.0000 0.8682 -0.4961 +vn -0.4961 0.8682 0.0000 +vn 0.0000 0.7071 -0.7071 +vn -0.7660 0.0000 -0.6428 +vn 0.7071 0.0000 -0.7071 +vn 0.9239 0.0000 -0.3827 +vn -0.3827 0.0000 0.9239 +vn -0.7071 0.0000 0.7071 +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.9239 0.0000 0.3827 +vn 0.7071 0.7071 0.0000 +vn 0.7071 -0.7071 0.0000 +vn -0.7071 -0.7071 0.0000 +vn -0.7071 0.7071 0.0000 +s off +f 613/1067/72 612/1068/72 611/1069/72 +f 616/1070/73 617/1071/73 615/1072/73 +f 614/1073/74 616/1070/74 612/1074/74 +f 611/1069/75 617/1075/75 613/1067/75 +f 613/1076/76 618/1077/76 614/1078/76 +f 612/1079/77 615/1080/77 611/1081/77 +f 647/1082/72 662/1083/72 646/1084/72 +f 647/1085/72 664/1086/72 663/1087/72 +f 649/1088/72 664/1086/72 648/1089/72 +f 650/1090/72 665/1091/72 649/1092/72 +f 635/1093/72 666/1094/72 650/1095/72 +f 636/1096/72 651/1097/72 635/1098/72 +f 637/1099/72 652/1100/72 636/1101/72 +f 638/1102/72 653/1103/72 637/1104/72 +f 639/1105/72 654/1106/72 638/1107/72 +f 639/1108/72 656/1109/72 655/1110/72 +f 640/1111/72 657/1112/72 656/1109/72 +f 641/1113/72 658/1114/72 657/1112/72 +f 642/1115/72 659/1116/72 658/1114/72 +f 643/1117/72 660/1118/72 659/1116/72 +f 645/1119/72 660/1118/72 644/1120/72 +f 645/1121/72 662/1083/72 661/1122/72 +f 679/1123/73 694/1124/73 678/1125/73 +f 680/1126/73 695/1127/73 679/1123/73 +f 681/1128/73 696/1129/73 680/1126/73 +f 681/1128/73 698/1130/73 697/1131/73 +f 682/1132/73 683/1133/73 698/1134/73 +f 668/1135/73 683/1136/73 667/1137/73 +f 668/1135/73 685/1138/73 684/1139/73 +f 669/1140/73 686/1141/73 685/1142/73 +f 670/1143/73 687/1144/73 686/1145/73 +f 671/1146/73 688/1147/73 687/1148/73 +f 673/1149/73 688/1150/73 672/1151/73 +f 674/1152/73 689/1153/73 673/1149/73 +f 674/1152/73 691/1154/73 690/1155/73 +f 676/1156/73 691/1157/73 675/1158/73 +f 677/1159/73 692/1160/73 676/1156/73 +f 677/1159/73 694/1161/73 693/1162/73 +f 699/1163/73 703/1164/73 707/1165/73 +f 755/1166/74 760/1167/74 756/1168/74 +f 719/1169/76 726/1170/76 722/1171/76 +f 717/1172/76 722/1171/76 718/1173/76 +f 716/1174/77 720/1175/77 715/1176/77 +f 718/1173/74 721/1177/74 716/1178/74 +f 715/1176/75 719/1169/75 717/1172/75 +f 766/1179/73 725/1180/73 726/1170/73 +f 721/1181/77 724/1182/77 720/1175/77 +f 722/1171/78 725/1183/78 721/1177/78 +f 720/1175/79 723/1184/79 719/1169/79 +f 733/1185/73 738/1186/73 737/1187/73 +f 732/1188/73 735/1189/73 731/1190/73 +f 727/1191/75 731/1190/75 729/1192/75 +f 729/1192/76 734/1193/76 730/1194/76 +f 731/1190/73 738/1195/73 734/1193/73 +f 730/1194/74 733/1185/74 728/1196/74 +f 735/1197/77 742/1198/77 738/1195/77 +f 736/1199/74 739/1200/74 735/1189/74 +f 738/1186/75 741/1201/75 737/1187/75 +f 745/1202/80 741/1203/80 742/1204/80 +f 745/1202/73 744/1205/73 743/1206/73 +f 742/1204/81 746/1207/81 745/1202/81 +f 740/1208/82 746/1207/82 739/1209/82 +f 747/1210/72 757/1211/72 748/1212/72 +f 753/1213/83 751/1214/83 752/1215/83 +f 748/1212/72 758/1216/72 750/1217/72 +f 748/1218/74 754/1219/74 753/1220/74 +f 747/1221/75 751/1214/75 749/1222/75 +f 749/1222/76 754/1219/76 750/1217/76 +f 749/1222/72 756/1223/72 747/1210/72 +f 750/1217/72 755/1224/72 749/1222/72 +f 759/1225/72 761/1226/72 760/1167/72 +f 758/1227/77 759/1225/77 755/1228/77 +f 756/1229/76 761/1226/76 757/1230/76 +f 757/1231/75 762/1232/75 758/1233/75 +f 766/1234/79 769/1235/79 764/1236/79 +f 765/1237/73 726/1170/73 723/1238/73 +f 763/1239/73 723/1238/73 724/1240/73 +f 764/1241/73 724/1240/73 725/1180/73 +f 769/1235/73 767/1242/73 768/1243/73 +f 763/1244/78 767/1242/78 765/1245/78 +f 765/1246/77 770/1247/77 766/1248/77 +f 764/1249/76 768/1243/76 763/1250/76 +f 772/1251/77 776/1252/77 771/1253/77 +f 774/1254/74 777/1255/74 772/1251/74 +f 771/1256/75 775/1257/75 773/1258/75 +f 773/1258/76 778/1259/76 774/1254/76 +f 780/1260/77 784/1261/77 779/1262/77 +f 782/1263/74 785/1264/74 780/1260/74 +f 779/1265/75 783/1266/75 781/1267/75 +f 781/1267/76 786/1268/76 782/1263/76 +f 788/1269/77 792/1270/77 787/1271/77 +f 790/1272/74 793/1273/74 788/1269/74 +f 787/1274/75 791/1275/75 789/1276/75 +f 789/1276/76 794/1277/76 790/1272/76 +f 796/1278/77 800/1279/77 795/1280/77 +f 798/1281/74 801/1282/74 796/1278/74 +f 795/1283/75 799/1284/75 797/1285/75 +f 797/1285/76 802/1286/76 798/1281/76 +f 830/1287/73 631/1288/73 630/1289/73 +f 631/1290/73 832/1291/73 632/1292/73 +f 832/1291/73 633/1293/73 632/1294/73 +f 833/1295/73 634/1296/73 633/1297/73 +f 834/1298/73 619/1299/73 634/1300/73 +f 819/1301/73 620/1302/73 619/1303/73 +f 820/1304/73 621/1305/73 620/1306/73 +f 821/1307/73 622/1308/73 621/1309/73 +f 822/1310/73 623/1311/73 622/1312/73 +f 623/1313/73 824/1314/73 624/1315/73 +f 624/1316/73 825/1317/73 625/1318/73 +f 625/1319/73 826/1320/73 626/1321/73 +f 626/1322/73 827/1323/73 627/1324/73 +f 627/1325/73 828/1326/73 628/1327/73 +f 828/1326/73 629/1328/73 628/1329/73 +f 629/1330/73 830/1287/73 630/1331/73 +f 837/1332/72 836/1333/72 835/1334/72 +f 841/1335/73 839/1336/73 840/1337/73 +f 838/1338/74 841/1335/74 836/1333/74 +f 835/1339/75 839/1336/75 837/1340/75 +f 837/1341/76 842/1342/76 838/1343/76 +f 836/1344/77 840/1337/77 835/1345/77 +f 845/1346/72 844/1347/72 843/1348/72 +f 849/1349/73 847/1350/73 848/1351/73 +f 846/1352/74 849/1349/74 844/1347/74 +f 843/1353/75 847/1350/75 845/1354/75 +f 845/1355/76 850/1356/76 846/1357/76 +f 844/1358/77 848/1351/77 843/1359/77 +f 852/1360/77 856/1361/77 851/1362/77 +f 854/1363/74 857/1364/74 852/1360/74 +f 851/1365/75 855/1366/75 853/1367/75 +f 853/1367/76 858/1368/76 854/1363/76 +f 860/1369/77 864/1370/77 859/1371/77 +f 862/1372/74 865/1373/74 860/1369/74 +f 859/1374/75 863/1375/75 861/1376/75 +f 861/1376/76 866/1377/76 862/1372/76 +f 900/1378/77 904/1379/77 899/1380/77 +f 902/1381/74 905/1382/74 900/1378/74 +f 899/1383/75 903/1384/75 901/1385/75 +f 901/1385/76 906/1386/76 902/1381/76 +f 908/1387/77 912/1388/77 907/1389/77 +f 910/1390/74 913/1391/74 908/1387/74 +f 907/1392/75 911/1393/75 909/1394/75 +f 909/1394/76 914/1395/76 910/1390/76 +f 925/1396/76 928/1397/76 924/1398/76 +f 919/1399/74 926/1400/74 922/1401/74 +f 918/1402/72 921/1403/72 916/1404/72 +f 915/1405/73 919/1406/73 917/1407/73 +f 917/1408/76 922/1401/76 918/1409/76 +f 916/1410/77 920/1411/77 915/1412/77 +f 921/1413/74 924/1398/74 920/1411/74 +f 922/1414/74 925/1415/74 921/1403/74 +f 920/1416/74 923/1417/74 919/1406/74 +f 929/1418/74 927/1419/74 928/1397/74 +f 926/1420/73 929/1418/73 925/1415/73 +f 924/1421/72 927/1419/72 923/1417/72 +f 923/1422/77 930/1423/77 926/1400/77 +f 932/1424/74 933/1425/74 931/1426/74 +f 936/1427/74 937/1428/74 935/1429/74 +f 940/1430/74 941/1431/74 939/1432/74 +f 944/1433/74 945/1434/74 943/1435/74 +f 948/1436/74 949/1437/74 947/1438/74 +f 958/1439/75 959/1440/75 955/1441/75 +f 952/1442/72 958/1443/72 954/1444/72 +f 953/1445/73 956/1446/73 951/1447/73 +f 954/1448/76 955/1441/76 953/1449/76 +f 951/1450/77 957/1451/77 952/1452/77 +f 960/1453/76 965/1454/76 961/1455/76 +f 956/1456/75 961/1455/75 957/1451/75 +f 957/1457/75 962/1458/75 958/1443/75 +f 955/1459/75 960/1460/75 956/1446/75 +f 966/1461/75 964/1462/75 963/1463/75 +f 961/1464/73 966/1461/73 962/1458/73 +f 959/1465/72 964/1462/72 960/1460/72 +f 962/1466/77 963/1463/77 959/1440/77 +f 970/1467/84 968/1468/84 967/1469/84 +f 977/1470/76 974/1471/76 973/1472/76 +f 976/1473/77 971/1474/77 972/1475/77 +f 978/1476/74 972/1475/74 974/1471/74 +f 975/1477/75 973/1472/75 971/1478/75 +f 985/1479/76 982/1480/76 981/1481/76 +f 984/1482/77 979/1483/77 980/1484/77 +f 986/1485/74 980/1484/74 982/1480/74 +f 983/1486/75 981/1481/75 979/1487/75 +f 989/1488/72 988/1489/72 987/1490/72 +f 992/1491/73 993/1492/73 991/1493/73 +f 990/1494/75 992/1491/75 988/1495/75 +f 988/1489/76 991/1493/76 987/1490/76 +f 987/1496/74 993/1492/74 989/1497/74 +f 613/1067/72 614/1498/72 612/1068/72 +f 616/1070/73 618/1077/73 617/1071/73 +f 614/1073/74 618/1077/74 616/1070/74 +f 611/1069/75 615/1499/75 617/1075/75 +f 613/1076/76 617/1071/76 618/1077/76 +f 612/1079/77 616/1500/77 615/1080/77 +f 647/1082/72 663/1087/72 662/1083/72 +f 647/1085/72 648/1501/72 664/1086/72 +f 649/1088/72 665/1091/72 664/1086/72 +f 650/1090/72 666/1094/72 665/1091/72 +f 635/1093/72 651/1502/72 666/1094/72 +f 636/1096/72 652/1100/72 651/1097/72 +f 637/1099/72 653/1103/72 652/1100/72 +f 638/1102/72 654/1106/72 653/1103/72 +f 639/1105/72 655/1110/72 654/1106/72 +f 639/1108/72 640/1503/72 656/1109/72 +f 640/1111/72 641/1504/72 657/1112/72 +f 641/1113/72 642/1505/72 658/1114/72 +f 642/1115/72 643/1506/72 659/1116/72 +f 643/1117/72 644/1507/72 660/1118/72 +f 645/1119/72 661/1122/72 660/1118/72 +f 645/1121/72 646/1508/72 662/1083/72 +f 679/1123/73 695/1509/73 694/1124/73 +f 680/1126/73 696/1510/73 695/1127/73 +f 681/1128/73 697/1511/73 696/1129/73 +f 681/1128/73 682/1132/73 698/1130/73 +f 682/1132/73 667/1512/73 683/1133/73 +f 668/1135/73 684/1513/73 683/1136/73 +f 668/1135/73 669/1140/73 685/1138/73 +f 669/1140/73 670/1143/73 686/1141/73 +f 670/1143/73 671/1146/73 687/1144/73 +f 671/1146/73 672/1151/73 688/1147/73 +f 673/1149/73 689/1514/73 688/1150/73 +f 674/1152/73 690/1515/73 689/1153/73 +f 674/1152/73 675/1158/73 691/1154/73 +f 676/1156/73 692/1516/73 691/1157/73 +f 677/1159/73 693/1517/73 692/1160/73 +f 677/1159/73 678/1125/73 694/1161/73 +f 699/1163/73 700/1518/73 701/1519/73 +f 701/1519/73 702/1520/73 703/1164/73 +f 703/1164/73 704/1521/73 707/1165/73 +f 704/1521/73 705/1522/73 707/1165/73 +f 705/1522/73 706/1523/73 707/1165/73 +f 707/1165/73 708/1524/73 709/1525/73 +f 709/1525/73 710/1526/73 707/1165/73 +f 710/1526/73 711/1527/73 707/1165/73 +f 711/1527/73 712/1528/73 713/1529/73 +f 713/1529/73 714/1530/73 699/1163/73 +f 699/1163/73 701/1519/73 703/1164/73 +f 711/1527/73 713/1529/73 707/1165/73 +f 713/1529/73 699/1163/73 707/1165/73 +f 755/1166/74 759/1225/74 760/1167/74 +f 719/1169/76 723/1238/76 726/1170/76 +f 717/1172/76 719/1169/76 722/1171/76 +f 716/1174/77 721/1181/77 720/1175/77 +f 718/1173/74 722/1171/74 721/1177/74 +f 715/1176/75 720/1175/75 719/1169/75 +f 766/1179/73 764/1241/73 725/1180/73 +f 721/1181/77 725/1531/77 724/1182/77 +f 722/1171/78 726/1532/78 725/1183/78 +f 720/1175/79 724/1533/79 723/1184/79 +f 733/1185/73 734/1193/73 738/1186/73 +f 732/1188/73 736/1199/73 735/1189/73 +f 727/1191/75 732/1188/75 731/1190/75 +f 729/1192/76 731/1190/76 734/1193/76 +f 731/1190/73 735/1197/73 738/1195/73 +f 730/1194/74 734/1193/74 733/1185/74 +f 735/1197/77 739/1534/77 742/1198/77 +f 736/1199/74 740/1535/74 739/1200/74 +f 738/1186/75 742/1536/75 741/1201/75 +f 745/1202/80 743/1206/80 741/1203/80 +f 745/1202/73 746/1207/73 744/1205/73 +f 742/1204/81 739/1209/81 746/1207/81 +f 740/1208/82 744/1205/82 746/1207/82 +f 747/1210/72 756/1223/72 757/1211/72 +f 753/1213/83 754/1219/83 751/1214/83 +f 748/1212/72 757/1211/72 758/1216/72 +f 748/1218/74 750/1217/74 754/1219/74 +f 747/1221/75 752/1537/75 751/1214/75 +f 749/1222/76 751/1214/76 754/1219/76 +f 749/1222/72 755/1224/72 756/1223/72 +f 750/1217/72 758/1216/72 755/1224/72 +f 759/1225/72 762/1232/72 761/1226/72 +f 758/1227/77 762/1232/77 759/1225/77 +f 756/1229/76 760/1167/76 761/1226/76 +f 757/1231/75 761/1226/75 762/1232/75 +f 766/1234/79 770/1247/79 769/1235/79 +f 765/1237/73 766/1179/73 726/1170/73 +f 763/1239/73 765/1237/73 723/1238/73 +f 764/1241/73 763/1239/73 724/1240/73 +f 769/1235/73 770/1247/73 767/1242/73 +f 763/1244/78 768/1243/78 767/1242/78 +f 765/1246/77 767/1242/77 770/1247/77 +f 764/1249/76 769/1235/76 768/1243/76 +f 772/1251/77 777/1255/77 776/1252/77 +f 774/1254/74 778/1259/74 777/1255/74 +f 771/1256/75 776/1538/75 775/1257/75 +f 773/1258/76 775/1257/76 778/1259/76 +f 780/1260/77 785/1264/77 784/1261/77 +f 782/1263/74 786/1268/74 785/1264/74 +f 779/1265/75 784/1539/75 783/1266/75 +f 781/1267/76 783/1266/76 786/1268/76 +f 788/1269/77 793/1273/77 792/1270/77 +f 790/1272/74 794/1277/74 793/1273/74 +f 787/1274/75 792/1540/75 791/1275/75 +f 789/1276/76 791/1275/76 794/1277/76 +f 796/1278/77 801/1282/77 800/1279/77 +f 798/1281/74 802/1286/74 801/1282/74 +f 795/1283/75 800/1541/75 799/1284/75 +f 797/1285/76 799/1284/76 802/1286/76 +f 830/1287/73 831/1542/73 631/1288/73 +f 631/1290/73 831/1542/73 832/1291/73 +f 832/1291/73 833/1295/73 633/1293/73 +f 833/1295/73 834/1298/73 634/1296/73 +f 834/1298/73 819/1543/73 619/1299/73 +f 819/1301/73 820/1304/73 620/1302/73 +f 820/1304/73 821/1307/73 621/1305/73 +f 821/1307/73 822/1310/73 622/1308/73 +f 822/1310/73 823/1544/73 623/1311/73 +f 623/1313/73 823/1544/73 824/1314/73 +f 624/1316/73 824/1314/73 825/1317/73 +f 625/1319/73 825/1317/73 826/1320/73 +f 626/1322/73 826/1320/73 827/1323/73 +f 627/1325/73 827/1323/73 828/1326/73 +f 828/1326/73 829/1545/73 629/1328/73 +f 629/1330/73 829/1545/73 830/1287/73 +f 837/1332/72 838/1338/72 836/1333/72 +f 841/1335/73 842/1342/73 839/1336/73 +f 838/1338/74 842/1342/74 841/1335/74 +f 835/1339/75 840/1337/75 839/1336/75 +f 837/1341/76 839/1336/76 842/1342/76 +f 836/1344/77 841/1335/77 840/1337/77 +f 845/1346/72 846/1352/72 844/1347/72 +f 849/1349/73 850/1356/73 847/1350/73 +f 846/1352/74 850/1356/74 849/1349/74 +f 843/1353/75 848/1351/75 847/1350/75 +f 845/1355/76 847/1350/76 850/1356/76 +f 844/1358/77 849/1349/77 848/1351/77 +f 852/1360/77 857/1364/77 856/1361/77 +f 854/1363/74 858/1368/74 857/1364/74 +f 851/1365/75 856/1546/75 855/1366/75 +f 853/1367/76 855/1366/76 858/1368/76 +f 860/1369/77 865/1373/77 864/1370/77 +f 862/1372/74 866/1377/74 865/1373/74 +f 859/1374/75 864/1547/75 863/1375/75 +f 861/1376/76 863/1375/76 866/1377/76 +f 900/1378/77 905/1382/77 904/1379/77 +f 902/1381/74 906/1386/74 905/1382/74 +f 899/1383/75 904/1548/75 903/1384/75 +f 901/1385/76 903/1384/76 906/1386/76 +f 908/1387/77 913/1391/77 912/1388/77 +f 910/1390/74 914/1395/74 913/1391/74 +f 907/1392/75 912/1549/75 911/1393/75 +f 909/1394/76 911/1393/76 914/1395/76 +f 925/1396/76 929/1418/76 928/1397/76 +f 919/1399/74 923/1422/74 926/1400/74 +f 918/1402/72 922/1414/72 921/1403/72 +f 915/1405/73 920/1416/73 919/1406/73 +f 917/1408/76 919/1399/76 922/1401/76 +f 916/1410/77 921/1413/77 920/1411/77 +f 921/1413/74 925/1396/74 924/1398/74 +f 922/1414/74 926/1420/74 925/1415/74 +f 920/1416/74 924/1421/74 923/1417/74 +f 929/1418/74 930/1423/74 927/1419/74 +f 926/1420/73 930/1423/73 929/1418/73 +f 924/1421/72 928/1397/72 927/1419/72 +f 923/1422/77 927/1419/77 930/1423/77 +f 932/1424/74 934/1550/74 933/1425/74 +f 936/1427/74 938/1551/74 937/1428/74 +f 940/1430/74 942/1552/74 941/1431/74 +f 944/1433/74 946/1553/74 945/1434/74 +f 948/1436/74 950/1554/74 949/1437/74 +f 958/1439/75 962/1466/75 959/1440/75 +f 952/1442/72 957/1457/72 958/1443/72 +f 953/1445/73 955/1459/73 956/1446/73 +f 954/1448/76 958/1439/76 955/1441/76 +f 951/1450/77 956/1456/77 957/1451/77 +f 960/1453/76 964/1462/76 965/1454/76 +f 956/1456/75 960/1453/75 961/1455/75 +f 957/1457/75 961/1464/75 962/1458/75 +f 955/1459/75 959/1465/75 960/1460/75 +f 966/1461/75 965/1454/75 964/1462/75 +f 961/1464/73 965/1454/73 966/1461/73 +f 959/1465/72 963/1463/72 964/1462/72 +f 962/1466/77 966/1461/77 963/1463/77 +f 970/1467/84 969/1555/84 968/1468/84 +f 977/1470/76 978/1476/76 974/1471/76 +f 976/1473/77 975/1556/77 971/1474/77 +f 978/1476/74 976/1473/74 972/1475/74 +f 975/1477/75 977/1470/75 973/1472/75 +f 985/1479/76 986/1485/76 982/1480/76 +f 984/1482/77 983/1557/77 979/1483/77 +f 986/1485/74 984/1482/74 980/1484/74 +f 983/1486/75 985/1479/75 981/1481/75 +f 989/1488/72 990/1558/72 988/1489/72 +f 992/1491/73 994/1559/73 993/1492/73 +f 990/1494/75 994/1559/75 992/1491/75 +f 988/1489/76 992/1491/76 991/1493/76 +f 987/1496/74 991/1493/74 993/1492/74 +s 1 +f 633/1560/85 648/1561/86 632/1562/86 +f 626/1563/87 641/1564/88 625/1565/88 +f 634/1566/89 649/1567/85 633/1560/85 +f 627/1568/77 642/1569/87 626/1563/87 +f 620/1570/90 635/1571/76 619/1572/76 +f 619/1573/76 650/1574/89 634/1566/89 +f 628/1575/91 643/1576/77 627/1568/77 +f 621/1577/92 636/1578/90 620/1570/90 +f 629/1579/93 644/1580/91 628/1575/91 +f 622/1581/94 637/1582/92 621/1577/92 +f 630/1583/95 645/1584/93 629/1579/93 +f 623/1585/75 638/1586/94 622/1581/94 +f 631/1587/74 646/1588/95 630/1583/95 +f 624/1589/96 639/1590/75 623/1585/75 +f 632/1562/86 647/1591/74 631/1587/74 +f 625/1565/88 640/1592/96 624/1589/96 +f 661/1122/93 676/1156/91 660/1118/91 +f 654/1106/94 669/1140/92 653/1103/92 +f 662/1083/95 677/1159/93 661/1122/93 +f 655/1110/75 670/1143/94 654/1106/94 +f 663/1087/74 678/1125/95 662/1083/95 +f 656/1109/96 671/1146/75 655/1110/75 +f 664/1086/86 679/1123/74 663/1087/74 +f 657/1112/88 672/1151/96 656/1109/96 +f 665/1091/85 680/1126/86 664/1086/86 +f 658/1114/87 673/1149/88 657/1112/88 +f 666/1094/89 681/1128/85 665/1091/85 +f 659/1116/77 674/1152/87 658/1114/87 +f 652/1100/90 667/1137/76 651/1097/76 +f 651/1502/76 682/1132/89 666/1094/89 +f 660/1118/91 675/1158/77 659/1116/77 +f 653/1103/92 668/1135/90 652/1100/90 +f 696/1593/96 711/1594/75 695/1595/75 +f 689/1596/85 704/1597/86 688/1598/86 +f 697/1599/88 712/1600/96 696/1593/96 +f 690/1601/89 705/1602/85 689/1596/85 +f 698/1603/87 713/1604/88 697/1599/88 +f 691/1605/76 706/1606/89 690/1601/89 +f 684/1607/91 699/1608/77 683/1609/77 +f 683/1610/77 714/1611/87 698/1603/87 +f 692/1612/90 707/1613/76 691/1614/76 +f 685/1615/93 700/1616/91 684/1607/91 +f 693/1617/92 708/1618/90 692/1612/90 +f 686/1619/95 701/1620/93 685/1615/93 +f 694/1621/94 709/1622/92 693/1617/92 +f 687/1623/74 702/1624/95 686/1619/95 +f 695/1595/75 710/1625/94 694/1621/94 +f 688/1598/86 703/1626/74 687/1623/74 +f 813/1627/93 828/1326/91 812/1628/91 +f 806/1629/94 821/1307/92 805/1630/92 +f 814/1631/95 829/1545/93 813/1627/93 +f 807/1632/75 822/1310/94 806/1629/94 +f 815/1633/74 830/1287/95 814/1631/95 +f 808/1634/96 823/1544/75 807/1632/75 +f 816/1635/86 831/1542/74 815/1633/74 +f 809/1636/88 824/1314/96 808/1634/96 +f 817/1637/85 832/1291/86 816/1635/86 +f 810/1638/87 825/1317/88 809/1636/88 +f 818/1639/89 833/1295/85 817/1637/85 +f 811/1640/77 826/1320/87 810/1638/87 +f 804/1641/90 819/1301/76 803/1642/76 +f 803/1643/76 834/1298/89 818/1639/89 +f 812/1628/91 827/1323/77 811/1640/77 +f 805/1630/92 820/1304/90 804/1641/90 +f 874/1644/97 881/1645/74 873/1646/74 +f 872/1647/98 879/1648/72 871/1649/72 +f 870/1650/99 877/1651/75 869/1652/75 +f 868/1653/100 875/1654/73 867/1655/73 +f 867/1655/73 882/1656/97 874/1644/97 +f 873/1646/74 880/1657/98 872/1647/98 +f 871/1658/72 878/1659/99 870/1650/99 +f 869/1652/75 876/1660/100 868/1653/100 +f 890/1661/97 897/1662/74 889/1663/74 +f 888/1664/98 895/1665/72 887/1666/72 +f 886/1667/99 893/1668/75 885/1669/75 +f 884/1670/100 891/1671/73 883/1672/73 +f 883/1672/73 898/1673/97 890/1661/97 +f 889/1663/74 896/1674/98 888/1664/98 +f 887/1675/72 894/1676/99 886/1667/99 +f 885/1669/75 892/1677/100 884/1670/100 +f 633/1560/85 649/1567/85 648/1561/86 +f 626/1563/87 642/1569/87 641/1564/88 +f 634/1566/89 650/1574/89 649/1567/85 +f 627/1568/77 643/1576/77 642/1569/87 +f 620/1570/90 636/1578/90 635/1571/76 +f 619/1573/76 635/1678/76 650/1574/89 +f 628/1575/91 644/1580/91 643/1576/77 +f 621/1577/92 637/1582/92 636/1578/90 +f 629/1579/93 645/1584/93 644/1580/91 +f 622/1581/94 638/1586/94 637/1582/92 +f 630/1583/95 646/1588/95 645/1584/93 +f 623/1585/75 639/1590/75 638/1586/94 +f 631/1587/74 647/1591/74 646/1588/95 +f 624/1589/96 640/1592/96 639/1590/75 +f 632/1562/86 648/1561/86 647/1591/74 +f 625/1565/88 641/1564/88 640/1592/96 +f 661/1122/93 677/1159/93 676/1156/91 +f 654/1106/94 670/1143/94 669/1140/92 +f 662/1083/95 678/1125/95 677/1159/93 +f 655/1110/75 671/1146/75 670/1143/94 +f 663/1087/74 679/1123/74 678/1125/95 +f 656/1109/96 672/1151/96 671/1146/75 +f 664/1086/86 680/1126/86 679/1123/74 +f 657/1112/88 673/1149/88 672/1151/96 +f 665/1091/85 681/1128/85 680/1126/86 +f 658/1114/87 674/1152/87 673/1149/88 +f 666/1094/89 682/1132/89 681/1128/85 +f 659/1116/77 675/1158/77 674/1152/87 +f 652/1100/90 668/1135/90 667/1137/76 +f 651/1502/76 667/1512/76 682/1132/89 +f 660/1118/91 676/1156/91 675/1158/77 +f 653/1103/92 669/1140/92 668/1135/90 +f 696/1593/96 712/1600/96 711/1594/75 +f 689/1596/85 705/1602/85 704/1597/86 +f 697/1599/88 713/1604/88 712/1600/96 +f 690/1601/89 706/1606/89 705/1602/85 +f 698/1603/87 714/1611/87 713/1604/88 +f 691/1605/76 707/1679/76 706/1606/89 +f 684/1607/91 700/1616/91 699/1608/77 +f 683/1610/77 699/1680/77 714/1611/87 +f 692/1612/90 708/1618/90 707/1613/76 +f 685/1615/93 701/1620/93 700/1616/91 +f 693/1617/92 709/1622/92 708/1618/90 +f 686/1619/95 702/1624/95 701/1620/93 +f 694/1621/94 710/1625/94 709/1622/92 +f 687/1623/74 703/1626/74 702/1624/95 +f 695/1595/75 711/1594/75 710/1625/94 +f 688/1598/86 704/1597/86 703/1626/74 +f 813/1627/93 829/1545/93 828/1326/91 +f 806/1629/94 822/1310/94 821/1307/92 +f 814/1631/95 830/1287/95 829/1545/93 +f 807/1632/75 823/1544/75 822/1310/94 +f 815/1633/74 831/1542/74 830/1287/95 +f 808/1634/96 824/1314/96 823/1544/75 +f 816/1635/86 832/1291/86 831/1542/74 +f 809/1636/88 825/1317/88 824/1314/96 +f 817/1637/85 833/1295/85 832/1291/86 +f 810/1638/87 826/1320/87 825/1317/88 +f 818/1639/89 834/1298/89 833/1295/85 +f 811/1640/77 827/1323/77 826/1320/87 +f 804/1641/90 820/1304/90 819/1301/76 +f 803/1643/76 819/1543/76 834/1298/89 +f 812/1628/91 828/1326/91 827/1323/77 +f 805/1630/92 821/1307/92 820/1304/90 +f 874/1644/97 882/1656/97 881/1645/74 +f 872/1647/98 880/1657/98 879/1648/72 +f 870/1650/99 878/1659/99 877/1651/75 +f 868/1653/100 876/1660/100 875/1654/73 +f 867/1655/73 875/1654/73 882/1656/97 +f 873/1646/74 881/1645/74 880/1657/98 +f 871/1658/72 879/1681/72 878/1659/99 +f 869/1652/75 877/1651/75 876/1660/100 +f 890/1661/97 898/1673/97 897/1662/74 +f 888/1664/98 896/1674/98 895/1665/72 +f 886/1667/99 894/1676/99 893/1668/75 +f 884/1670/100 892/1677/100 891/1671/73 +f 883/1672/73 891/1671/73 898/1673/97 +f 889/1663/74 897/1662/74 896/1674/98 +f 887/1675/72 895/1682/72 894/1676/99 +f 885/1669/75 893/1668/75 892/1677/100 diff --git a/src/main/resources/assets/hbm/models/missileBooster.obj b/src/main/resources/assets/hbm/models/missileBooster.obj deleted file mode 100644 index 1b2478e83..000000000 --- a/src/main/resources/assets/hbm/models/missileBooster.obj +++ /dev/null @@ -1,416 +0,0 @@ -# Blender v2.76 (sub 0) OBJ File: 'carrier_booster.blend' -# www.blender.org -o Cylinder -v 0.000000 1.000000 -0.500000 -v 0.000000 8.000000 -0.500000 -v 0.250000 1.000000 -0.433013 -v 0.250000 8.000000 -0.433013 -v 0.433013 1.000000 -0.250000 -v 0.433013 8.000000 -0.250000 -v 0.500000 1.000000 0.000000 -v 0.500000 8.000000 0.000000 -v 0.433013 1.000000 0.250000 -v 0.433013 8.000000 0.250000 -v 0.250000 1.000000 0.433013 -v 0.250000 8.000000 0.433013 -v 0.000000 1.000000 0.500000 -v 0.000000 8.000000 0.500000 -v -0.250000 1.000000 0.433013 -v -0.250000 8.000000 0.433013 -v -0.433013 1.000000 0.250000 -v -0.433013 8.000000 0.250000 -v -0.500000 1.000000 0.000000 -v -0.500000 8.000000 0.000000 -v -0.433013 1.000000 -0.250000 -v -0.433013 8.000000 -0.250000 -v -0.250000 1.000000 -0.433013 -v -0.250000 8.000000 -0.433013 -v 0.200001 8.500000 -0.346410 -v 0.000001 8.500000 -0.400000 -v 0.346411 8.500000 -0.200000 -v 0.400001 8.500000 0.000000 -v 0.346411 8.500000 0.200000 -v 0.200001 8.500000 0.346410 -v 0.000001 8.500000 0.400000 -v -0.199999 8.500000 0.346410 -v -0.346409 8.500000 0.200000 -v -0.399999 8.500000 0.000000 -v -0.346409 8.500000 -0.200000 -v -0.199999 8.500000 -0.346410 -v 0.037502 9.000000 -0.064952 -v 0.000002 9.000000 -0.075000 -v 0.064954 9.000000 -0.037500 -v 0.075002 9.000000 0.000000 -v 0.064953 9.000000 0.037500 -v 0.037502 9.000000 0.064952 -v 0.000002 9.000000 0.075000 -v -0.037498 9.000000 0.064952 -v -0.064950 9.000000 0.037500 -v -0.074998 9.000000 0.000000 -v -0.064950 9.000000 -0.037500 -v -0.037498 9.000000 -0.064952 -v -0.000000 1.000000 -0.375000 -v 0.187500 1.000000 -0.324760 -v 0.324760 1.000000 -0.187500 -v 0.375000 1.000000 0.000000 -v 0.324760 1.000000 0.187500 -v 0.187500 1.000000 0.324760 -v 0.000000 1.000000 0.375000 -v -0.187500 1.000000 0.324760 -v -0.324759 1.000000 0.187500 -v -0.375000 1.000000 0.000000 -v -0.324760 1.000000 -0.187500 -v -0.187500 1.000000 -0.324759 -v 0.000000 0.000000 -0.500000 -v 0.250000 0.000000 -0.433013 -v 0.433013 0.000000 -0.250000 -v 0.500000 0.000000 0.000000 -v 0.433013 0.000000 0.250000 -v 0.250000 0.000000 0.433013 -v 0.000000 0.000000 0.500000 -v -0.250000 0.000000 0.433013 -v -0.433012 0.000000 0.250000 -v -0.500000 0.000000 0.000000 -v -0.433013 0.000000 -0.250000 -v -0.250000 0.000000 -0.433013 -vt 0.291673 0.852188 -vt 0.261395 0.852188 -vt 0.261395 0.033298 -vt 0.231118 0.852188 -vt 0.231118 0.033298 -vt 0.200840 0.852188 -vt 0.200840 0.033298 -vt 0.170562 0.852188 -vt 0.170563 0.033298 -vt 0.140284 0.852188 -vt 0.140285 0.033298 -vt 0.110006 0.852188 -vt 0.110008 0.033298 -vt 0.079728 0.852188 -vt 0.079730 0.033298 -vt 0.049451 0.852188 -vt 0.049453 0.033298 -vt 0.019173 0.852188 -vt 0.019175 0.033297 -vt 0.382507 0.852188 -vt 0.352229 0.852188 -vt 0.352228 0.033298 -vt 0.321951 0.852188 -vt 0.349201 0.911762 -vt 0.291673 0.033298 -vt 0.321950 0.033298 -vt 0.053237 0.019173 -vt 0.197812 0.911762 -vt 0.187972 0.980827 -vt 0.183430 0.980827 -vt 0.258368 0.911762 -vt 0.379479 0.911762 -vt 0.046423 0.911762 -vt 0.022201 0.911762 -vt 0.076701 0.911762 -vt 0.052478 0.911762 -vt 0.106979 0.911762 -vt 0.082756 0.911762 -vt 0.137256 0.911762 -vt 0.113034 0.911762 -vt 0.167534 0.911762 -vt 0.143312 0.911762 -vt 0.173590 0.911762 -vt 0.318923 0.911762 -vt 0.288645 0.911762 -vt 0.228090 0.911762 -vt 0.726241 0.560416 -vt 0.740920 0.556483 -vt 0.736987 0.571161 -vt 0.339361 0.980827 -vt 0.334819 0.980827 -vt 0.264423 0.911762 -vt 0.278805 0.980827 -vt 0.066861 0.980827 -vt 0.157694 0.980827 -vt 0.153152 0.980827 -vt 0.309083 0.980827 -vt 0.304541 0.980827 -vt 0.248527 0.980827 -vt 0.243986 0.980827 -vt 0.036583 0.980827 -vt 0.032041 0.980827 -vt 0.127416 0.980827 -vt 0.218250 0.980827 -vt 0.213708 0.980827 -vt 0.369639 0.980827 -vt 0.365097 0.980827 -vt 0.097138 0.980827 -vt 0.092596 0.980827 -vt 0.643102 0.894316 -vt 0.613151 0.780289 -vt 0.642667 0.773541 -vt 0.083515 0.019173 -vt 0.106223 0.019173 -vt 0.113792 0.019173 -vt 0.136500 0.019173 -vt 0.144070 0.019173 -vt 0.166778 0.019173 -vt 0.174347 0.019173 -vt 0.197055 0.019173 -vt 0.295457 0.019173 -vt 0.265180 0.019173 -vt 0.287888 0.019173 -vt 0.204625 0.019173 -vt 0.227333 0.019173 -vt 0.325735 0.019173 -vt 0.348443 0.019173 -vt 0.234902 0.019173 -vt 0.257610 0.019173 -vt 0.382505 0.033297 -vt 0.356012 0.019173 -vt 0.022960 0.019173 -vt 0.797384 0.255928 -vt 0.684386 0.225651 -vt 0.725746 0.184290 -vt 0.710258 0.883441 -vt 0.702692 0.765789 -vt 0.732955 0.764817 -vt 0.822808 0.894316 -vt 0.852759 0.780289 -vt 0.881781 0.788917 -vt 0.778254 0.885625 -vt 0.793354 0.768701 -vt 0.823243 0.773541 -vt 0.621335 0.900787 -vt 0.584128 0.788917 -vt 0.687655 0.885625 -vt 0.672555 0.768701 -vt 0.800671 0.889255 -vt 0.755651 0.883441 -vt 0.763217 0.765789 -vt 0.600028 0.908641 -vt 0.555719 0.799390 -vt 0.665239 0.889255 -vt 0.732955 0.882712 -vt 0.844574 0.900787 -vt 0.910190 0.799390 -vt 0.324979 0.911762 -vt 0.075946 0.019173 -vt 0.234145 0.911762 -vt 0.355257 0.911762 -vt 0.294701 0.911762 -vt 0.203868 0.911762 -vt 0.732445 0.571161 -vt 0.728512 0.568891 -vt 0.726241 0.564957 -vt 0.728512 0.556483 -vt 0.732445 0.554212 -vt 0.736987 0.554212 -vt 0.743191 0.560416 -vt 0.743191 0.564957 -vt 0.740920 0.568891 -vt 0.274263 0.980827 -vt 0.062319 0.980827 -vt 0.122875 0.980827 -vt 0.318165 0.019173 -vt 0.378720 0.019173 -vt 0.045668 0.019173 -vt 0.756024 0.184290 -vt 0.782245 0.199429 -vt 0.797384 0.225651 -vt 0.782245 0.282150 -vt 0.756024 0.297288 -vt 0.725746 0.297288 -vt 0.699525 0.282150 -vt 0.684386 0.255928 -vt 0.699525 0.199429 -vt 0.865881 0.908641 -vn 0.258800 0.000000 -0.965900 -vn 0.707100 0.000000 -0.707100 -vn 0.965900 0.000000 -0.258800 -vn 0.965900 0.000000 0.258800 -vn 0.707100 0.000000 0.707100 -vn 0.258800 0.000000 0.965900 -vn -0.258800 0.000000 0.965900 -vn -0.707100 0.000000 0.707100 -vn -0.965900 0.000000 0.258800 -vn -0.965900 0.000000 -0.258800 -vn -0.694300 0.189700 -0.694300 -vn -0.258800 0.000000 -0.965900 -vn -0.707100 0.000000 -0.707100 -vn 0.000000 -1.000000 0.000000 -vn 0.818100 0.531700 0.219200 -vn 0.694300 0.189700 -0.694300 -vn -0.948400 0.189700 -0.254100 -vn -0.948400 0.189700 0.254100 -vn -0.694300 0.189700 0.694300 -vn -0.254100 0.189700 0.948400 -vn 0.254100 0.189700 0.948400 -vn 0.694300 0.189700 0.694300 -vn 0.948400 0.189700 0.254100 -vn -0.254100 0.189700 -0.948400 -vn 0.254100 0.189700 -0.948400 -vn 0.948400 0.189700 -0.254100 -vn 0.000000 1.000000 -0.000000 -vn -0.598900 0.531700 -0.598900 -vn 0.219200 0.531700 -0.818100 -vn -0.598900 0.531700 0.598900 -vn 0.598900 0.531700 0.598900 -vn -0.219200 0.531700 -0.818100 -vn 0.598900 0.531700 -0.598900 -vn -0.818100 0.531700 0.219200 -vn 0.219200 0.531700 0.818100 -vn 0.818100 0.531700 -0.219200 -vn -0.818100 0.531700 -0.219200 -vn -0.219200 0.531700 0.818100 -vn -0.257000 0.119900 0.959000 -vn 0.959000 0.119900 0.257000 -vn -0.702000 0.119900 -0.702000 -vn 0.257000 0.119900 -0.959000 -vn -0.702000 0.119900 0.702000 -vn 0.702000 0.119900 0.702000 -vn -0.257000 0.119900 -0.959000 -vn 0.702000 0.119900 -0.702000 -vn -0.959000 0.119900 0.257000 -vn 0.257000 0.119900 0.959000 -vn 0.959000 0.119900 -0.257000 -vn -0.959000 0.119900 -0.257000 -vn 0.000000 1.000000 0.000100 -vn 0.000000 1.000000 -0.000100 -s off -f 2/1/1 4/2/1 3/3/1 -f 4/2/2 6/4/2 5/5/2 -f 6/4/3 8/6/3 7/7/3 -f 8/6/4 10/8/4 9/9/4 -f 10/8/5 12/10/5 11/11/5 -f 12/10/6 14/12/6 13/13/6 -f 14/12/7 16/14/7 15/15/7 -f 16/14/8 18/16/8 17/17/8 -f 18/16/9 20/18/9 19/19/9 -f 20/20/10 22/21/10 21/22/10 -f 24/23/11 22/21/11 35/24/11 -f 24/23/12 2/1/12 1/25/12 -f 22/21/13 24/23/13 23/26/13 -f 15/15/14 17/17/14 57/27/14 -f 28/28/15 40/29/15 41/30/15 -f 6/4/16 4/2/16 25/31/16 -f 22/21/17 20/20/17 34/32/17 -f 18/16/18 33/33/18 34/34/18 -f 16/14/19 32/35/19 33/36/19 -f 14/12/20 31/37/20 32/38/20 -f 12/10/21 30/39/21 31/40/21 -f 10/8/22 29/41/22 30/42/22 -f 8/6/23 28/28/23 29/43/23 -f 2/1/24 24/23/24 36/44/24 -f 4/2/25 2/1/25 26/45/25 -f 8/6/26 6/4/26 27/46/26 -f 47/47/27 43/48/27 39/49/27 -f 35/24/28 47/50/28 48/51/28 -f 25/52/29 26/45/29 38/53/29 -f 33/36/30 32/35/30 44/54/30 -f 29/41/31 41/55/31 42/56/31 -f 36/44/32 48/57/32 38/58/32 -f 25/31/33 37/59/33 39/60/33 -f 33/33/34 45/61/34 46/62/34 -f 31/40/35 30/39/35 42/63/35 -f 27/46/36 39/64/36 40/65/36 -f 34/32/37 46/66/37 47/67/37 -f 31/37/38 43/68/38 44/69/38 -f 56/70/39 68/71/39 67/72/39 -f 15/15/14 56/73/14 55/74/14 -f 13/13/14 55/75/14 54/76/14 -f 11/11/14 54/77/14 53/78/14 -f 9/9/14 53/79/14 52/80/14 -f 23/26/14 1/25/14 49/81/14 -f 3/3/14 50/82/14 49/83/14 -f 7/7/14 52/84/14 51/85/14 -f 23/26/14 60/86/14 59/87/14 -f 5/5/14 51/88/14 50/89/14 -f 19/90/14 21/22/14 59/91/14 -f 17/17/14 19/19/14 58/92/14 -f 64/93/14 70/94/14 72/95/14 -f 53/96/40 65/97/40 64/98/40 -f 60/99/41 72/100/41 71/101/41 -f 50/102/42 62/103/42 61/104/42 -f 57/105/43 69/106/43 68/71/43 -f 54/107/44 66/108/44 65/97/44 -f 60/99/45 49/109/45 61/104/45 -f 50/102/46 51/110/46 63/111/46 -f 57/105/47 58/112/47 70/113/47 -f 54/107/48 55/114/48 67/72/48 -f 52/115/49 64/98/49 63/111/49 -f 59/116/50 71/101/50 70/117/50 -f 1/25/1 2/1/1 3/3/1 -f 3/3/2 4/2/2 5/5/2 -f 5/5/3 6/4/3 7/7/3 -f 7/7/4 8/6/4 9/9/4 -f 9/9/5 10/8/5 11/11/5 -f 11/11/6 12/10/6 13/13/6 -f 13/13/7 14/12/7 15/15/7 -f 15/15/8 16/14/8 17/17/8 -f 17/17/9 18/16/9 19/19/9 -f 19/90/10 20/20/10 21/22/10 -f 36/118/11 24/23/11 35/24/11 -f 23/26/12 24/23/12 1/25/12 -f 21/22/13 22/21/13 23/26/13 -f 56/119/14 15/15/14 57/27/14 -f 29/43/15 28/28/15 41/30/15 -f 27/120/16 6/4/16 25/31/16 -f 35/121/17 22/21/17 34/32/17 -f 20/18/18 18/16/18 34/34/18 -f 18/16/19 16/14/19 33/36/19 -f 16/14/20 14/12/20 32/38/20 -f 14/12/21 12/10/21 31/40/21 -f 12/10/22 10/8/22 30/42/22 -f 10/8/23 8/6/23 29/43/23 -f 26/122/24 2/1/24 36/44/24 -f 25/52/25 4/2/25 26/45/25 -f 28/123/26 8/6/26 27/46/26 -f 39/49/51 37/124/51 38/125/51 -f 38/125/51 48/126/51 47/47/51 -f 47/47/27 46/127/27 43/48/27 -f 45/128/52 44/129/52 43/48/52 -f 43/48/51 42/130/51 41/131/51 -f 41/131/27 40/132/27 43/48/27 -f 39/49/27 38/125/27 47/47/27 -f 46/127/27 45/128/27 43/48/27 -f 43/48/27 40/132/27 39/49/27 -f 36/118/28 35/24/28 48/51/28 -f 37/133/29 25/52/29 38/53/29 -f 45/134/30 33/36/30 44/54/30 -f 30/42/31 29/41/31 42/56/31 -f 26/122/32 36/44/32 38/58/32 -f 27/120/33 25/31/33 39/60/33 -f 34/34/34 33/33/34 46/62/34 -f 43/135/35 31/40/35 42/63/35 -f 28/123/36 27/46/36 40/65/36 -f 35/121/37 34/32/37 47/67/37 -f 32/38/38 31/37/38 44/69/38 -f 55/114/39 56/70/39 67/72/39 -f 13/13/14 15/15/14 55/74/14 -f 11/11/14 13/13/14 54/76/14 -f 9/9/14 11/11/14 53/78/14 -f 7/7/14 9/9/14 52/80/14 -f 60/136/14 23/26/14 49/81/14 -f 1/25/14 3/3/14 49/83/14 -f 5/5/14 7/7/14 51/85/14 -f 21/22/14 23/26/14 59/87/14 -f 3/3/14 5/5/14 50/89/14 -f 58/137/14 19/90/14 59/91/14 -f 57/138/14 17/17/14 58/92/14 -f 72/95/14 61/139/14 62/140/14 -f 62/140/14 63/141/14 64/93/14 -f 64/93/14 65/142/14 66/143/14 -f 66/143/14 67/144/14 68/145/14 -f 68/145/14 69/146/14 70/94/14 -f 70/94/14 71/147/14 72/95/14 -f 72/95/14 62/140/14 64/93/14 -f 64/93/14 66/143/14 68/145/14 -f 68/145/14 70/94/14 64/93/14 -f 52/115/40 53/96/40 64/98/40 -f 59/116/41 60/99/41 71/101/41 -f 49/109/42 50/102/42 61/104/42 -f 56/70/43 57/105/43 68/71/43 -f 53/96/44 54/107/44 65/97/44 -f 72/100/45 60/99/45 61/104/45 -f 62/103/46 50/102/46 63/111/46 -f 69/106/47 57/105/47 70/113/47 -f 66/108/48 54/107/48 67/72/48 -f 51/110/49 52/115/49 63/111/49 -f 58/148/50 59/116/50 70/117/50 diff --git a/src/main/resources/assets/hbm/models/missileCarrier.obj b/src/main/resources/assets/hbm/models/missileCarrier.obj deleted file mode 100644 index 5f3734ea0..000000000 --- a/src/main/resources/assets/hbm/models/missileCarrier.obj +++ /dev/null @@ -1,1148 +0,0 @@ -# Blender v2.76 (sub 0) OBJ File: 'carrier_main.blend' -# www.blender.org -o Cylinder -v 0.000000 1.500000 -0.750000 -v 0.000000 5.000000 -0.750000 -v 0.375000 1.500000 -0.649519 -v 0.375000 5.000000 -0.649519 -v 0.649519 1.500000 -0.375000 -v 0.649519 5.000000 -0.375000 -v 0.750000 1.500000 0.000000 -v 0.750000 5.000000 0.000000 -v 0.649519 1.500000 0.375000 -v 0.649519 5.000000 0.375000 -v 0.375000 1.500000 0.649519 -v 0.375000 5.000000 0.649519 -v 0.000000 1.500000 0.750000 -v 0.000000 5.000000 0.750000 -v -0.375000 1.500000 0.649519 -v -0.375000 5.000000 0.649519 -v -0.649519 1.500000 0.375000 -v -0.649519 5.000000 0.375000 -v -0.750000 1.500000 0.000000 -v -0.750000 5.000000 0.000000 -v -0.649519 1.500000 -0.375000 -v -0.649519 5.000000 -0.375000 -v -0.375000 1.500000 -0.649519 -v -0.375000 5.000000 -0.649519 -v -0.000000 1.250000 -0.562500 -v 0.281250 1.250000 -0.487139 -v 0.487139 1.250000 -0.281250 -v 0.562500 1.250000 0.000000 -v 0.487139 1.250000 0.281250 -v 0.281250 1.250000 0.487139 -v 0.000000 1.250000 0.562500 -v -0.281250 1.250000 0.487139 -v -0.487139 1.250000 0.281250 -v -0.562500 1.250000 0.000000 -v -0.487140 1.250000 -0.281250 -v -0.281250 1.250000 -0.487139 -v -0.000000 1.000000 -0.562500 -v 0.281250 1.000000 -0.487139 -v 0.487139 1.000000 -0.281250 -v 0.562500 1.000000 0.000000 -v 0.487139 1.000000 0.281250 -v 0.281250 1.000000 0.487139 -v -0.000000 1.000000 0.562500 -v -0.281250 1.000000 0.487139 -v -0.487139 1.000000 0.281250 -v -0.562500 1.000000 0.000000 -v -0.487140 1.000000 -0.281250 -v -0.281250 1.000000 -0.487139 -v -0.000000 0.750000 -0.262500 -v 0.131250 0.750000 -0.227332 -v 0.227332 0.750000 -0.131250 -v 0.262500 0.750000 0.000000 -v 0.227332 0.750000 0.131250 -v 0.131250 0.750000 0.227332 -v -0.000000 0.750000 0.262500 -v -0.131250 0.750000 0.227332 -v -0.227332 0.750000 0.131250 -v -0.262500 0.750000 0.000000 -v -0.227332 0.750000 -0.131250 -v -0.131250 0.750000 -0.227332 -v 0.000000 0.500000 -0.450000 -v 0.225000 0.500000 -0.389711 -v 0.389711 0.500000 -0.225000 -v 0.450000 0.500000 0.000000 -v 0.389711 0.500000 0.225000 -v 0.225000 0.500000 0.389711 -v 0.000000 0.500000 0.450000 -v -0.225000 0.500000 0.389712 -v -0.389711 0.500000 0.225000 -v -0.450000 0.500000 0.000000 -v -0.389712 0.500000 -0.225000 -v -0.225000 0.500000 -0.389711 -v -0.318750 0.000000 -0.552091 -v -0.552091 0.000000 -0.318750 -v -0.637500 0.000000 0.000000 -v -0.552091 0.000000 0.318750 -v -0.318750 0.000000 0.552091 -v 0.000000 0.000000 0.637500 -v 0.318750 0.000000 0.552091 -v 0.552091 0.000000 0.318750 -v 0.637500 0.000000 0.000000 -v 0.552091 0.000000 -0.318750 -v 0.318750 0.000000 -0.552091 -v 0.000000 0.000000 -0.637500 -v -0.270938 0.000000 -0.469277 -v 0.000000 0.000000 -0.541875 -v -0.469278 0.000000 -0.270937 -v -0.541875 0.000000 0.000000 -v -0.469277 0.000000 0.270938 -v -0.270937 0.000000 0.469278 -v 0.000000 0.000000 0.541875 -v 0.270938 0.000000 0.469278 -v 0.469278 0.000000 0.270938 -v 0.541875 0.000000 0.000000 -v 0.469278 0.000000 -0.270938 -v 0.270938 0.000000 -0.469278 -v -0.054187 0.750000 -0.093855 -v 0.000000 0.750000 -0.108375 -v -0.093855 0.750000 -0.054187 -v -0.108375 0.750000 0.000000 -v -0.093855 0.750000 0.054188 -v -0.054187 0.750000 0.093856 -v 0.000000 0.750000 0.108375 -v 0.054188 0.750000 0.093856 -v 0.093856 0.750000 0.054188 -v 0.108375 0.750000 0.000000 -v 0.093856 0.750000 -0.054187 -v 0.054188 0.750000 -0.093855 -v 0.375000 7.000000 -0.649519 -v 0.000000 7.000000 -0.750000 -v 0.649519 7.000000 -0.375000 -v 0.750000 7.000000 0.000000 -v 0.649519 7.000000 0.375000 -v 0.375000 7.000000 0.649519 -v 0.000000 7.000000 0.750000 -v -0.375000 7.000000 0.649519 -v -0.649519 7.000000 0.375000 -v -0.750000 7.000000 0.000000 -v -0.649519 7.000000 -0.375000 -v -0.375000 7.000000 -0.649519 -v 0.375000 10.500000 -0.649519 -v 0.000000 10.500000 -0.750000 -v 0.649519 10.500000 -0.375000 -v 0.750000 10.500000 0.000000 -v 0.649519 10.500000 0.375000 -v 0.375000 10.500000 0.649519 -v 0.000000 10.500000 0.750000 -v -0.374999 10.500000 0.649519 -v -0.649519 10.500000 0.375000 -v -0.750000 10.500000 0.000000 -v -0.649519 10.500000 -0.375000 -v -0.375000 10.500000 -0.649519 -v -0.000000 5.000000 -0.787500 -v 0.393750 5.000000 -0.681995 -v 0.681995 5.000000 -0.393750 -v 0.787500 5.000000 0.000000 -v 0.681995 5.000000 0.393750 -v 0.393750 5.000000 0.681995 -v 0.000000 5.000000 0.787500 -v -0.393750 5.000000 0.681995 -v -0.681995 5.000000 0.393750 -v -0.787500 5.000000 0.000000 -v -0.681995 5.000000 -0.393750 -v -0.393750 5.000000 -0.681995 -v 0.393750 7.000000 -0.681995 -v 0.000000 7.000000 -0.787500 -v 0.681995 7.000000 -0.393750 -v 0.787500 7.000000 0.000000 -v 0.681995 7.000000 0.393750 -v 0.393750 7.000000 0.681995 -v 0.000000 7.000000 0.787500 -v -0.393750 7.000000 0.681995 -v -0.681995 7.000000 0.393750 -v -0.787500 7.000000 0.000000 -v -0.681995 7.000000 -0.393750 -v -0.393750 7.000000 -0.681995 -v 0.562501 12.000000 -0.974279 -v 0.000001 12.000000 -1.125000 -v 0.974279 12.000000 -0.562500 -v 1.125000 12.000000 -0.000000 -v 0.974279 12.000000 0.562500 -v 0.562501 12.000000 0.974278 -v 0.000001 12.000000 1.125000 -v -0.562499 12.000000 0.974279 -v -0.974278 12.000000 0.562500 -v -1.125000 12.000000 0.000000 -v -0.974278 12.000000 -0.562499 -v -0.562500 12.000000 -0.974278 -v 0.562500 13.500000 -0.974279 -v 0.000000 13.500000 -1.125000 -v 0.974279 13.500000 -0.562500 -v 1.125000 13.500000 -0.000000 -v 0.974279 13.500000 0.562500 -v 0.562500 13.500000 0.974278 -v 0.000000 13.500000 1.125000 -v -0.562499 13.500000 0.974279 -v -0.974278 13.500000 0.562500 -v -1.125000 13.500000 0.000000 -v -0.974279 13.500000 -0.562499 -v -0.562500 13.500000 -0.974278 -v 0.140625 15.500000 -0.243570 -v 0.000000 15.500000 -0.281250 -v 0.243570 15.500000 -0.140625 -v 0.281250 15.500000 0.000000 -v 0.243570 15.500000 0.140625 -v 0.140625 15.500000 0.243570 -v 0.000000 15.500000 0.281250 -v -0.140625 15.500000 0.243570 -v -0.243569 15.500000 0.140625 -v -0.281250 15.500000 0.000000 -v -0.243569 15.500000 -0.140625 -v -0.140625 15.500000 -0.243569 -v 0.021094 15.750000 -0.036535 -v 0.000000 15.750000 -0.042187 -v 0.036536 15.750000 -0.021094 -v 0.042188 15.750000 0.000000 -v 0.036536 15.750000 0.021094 -v 0.021094 15.750000 0.036536 -v 0.000001 15.750000 0.042188 -v -0.021093 15.750000 0.036536 -v -0.036535 15.750000 0.021094 -v -0.042187 15.750000 0.000000 -v -0.036535 15.750000 -0.021094 -v -0.021093 15.750000 -0.036535 -vt 0.301507 0.312696 -vt 0.272488 0.312697 -vt 0.272481 0.051083 -vt 0.271037 0.312697 -vt 0.242019 0.312697 -vt 0.242011 0.051084 -vt 0.240568 0.312697 -vt 0.211549 0.312698 -vt 0.211542 0.051085 -vt 0.210098 0.312698 -vt 0.181079 0.312699 -vt 0.181072 0.051086 -vt 0.179628 0.312699 -vt 0.150609 0.312700 -vt 0.150602 0.051086 -vt 0.149158 0.312700 -vt 0.120140 0.312701 -vt 0.120133 0.051087 -vt 0.118689 0.312701 -vt 0.089670 0.312702 -vt 0.089662 0.051088 -vt 0.088219 0.312702 -vt 0.059200 0.312702 -vt 0.059193 0.051089 -vt 0.057749 0.312702 -vt 0.028730 0.312703 -vt 0.028723 0.051090 -vt 0.392917 0.312693 -vt 0.363898 0.312694 -vt 0.363890 0.051081 -vt 0.331977 0.312695 -vt 0.302958 0.312696 -vt 0.302951 0.051082 -vt 0.362447 0.312694 -vt 0.333428 0.312695 -vt 0.333420 0.051081 -vt 0.240560 0.051084 -vt 0.215168 0.028010 -vt 0.614773 0.847825 -vt 0.614773 0.866512 -vt 0.593009 0.866512 -vt 0.362439 0.051081 -vt 0.337047 0.028006 -vt 0.245638 0.028009 -vt 0.267402 0.028008 -vt 0.367517 0.028006 -vt 0.389281 0.028005 -vt 0.032349 0.028015 -vt 0.054113 0.028014 -vt 0.062820 0.028014 -vt 0.084584 0.028013 -vt 0.093289 0.028013 -vt 0.115053 0.028012 -vt 0.123759 0.028012 -vt 0.145523 0.028012 -vt 0.154229 0.028011 -vt 0.175993 0.028011 -vt 0.210091 0.051085 -vt 0.184699 0.028010 -vt 0.306577 0.028007 -vt 0.328341 0.028006 -vt 0.301500 0.051082 -vt 0.276108 0.028008 -vt 0.608970 0.895119 -vt 0.549481 0.847825 -vt 0.549481 0.866512 -vt 0.527717 0.866512 -vt 0.440661 0.847825 -vt 0.440661 0.866512 -vt 0.418896 0.866512 -vt 0.636537 0.847825 -vt 0.636537 0.866512 -vt 0.571245 0.847825 -vt 0.571245 0.866512 -vt 0.462425 0.847825 -vt 0.462425 0.866512 -vt 0.505953 0.847825 -vt 0.505953 0.866512 -vt 0.484189 0.866512 -vt 0.658302 0.847825 -vt 0.658302 0.866512 -vt 0.593009 0.847825 -vt 0.484189 0.847825 -vt 0.527717 0.847825 -vt 0.680066 0.847825 -vt 0.680066 0.866512 -vt 0.253796 0.824518 -vt 0.275183 0.833911 -vt 0.265791 0.848572 -vt 0.543677 0.895119 -vt 0.533521 0.895119 -vt 0.434857 0.895119 -vt 0.630734 0.895119 -vt 0.620577 0.895119 -vt 0.565441 0.895119 -vt 0.555285 0.895119 -vt 0.456621 0.895119 -vt 0.446464 0.895119 -vt 0.500149 0.895119 -vt 0.652498 0.895119 -vt 0.642341 0.895119 -vt 0.587206 0.895119 -vt 0.577049 0.895119 -vt 0.478385 0.895119 -vt 0.468228 0.895119 -vt 0.521913 0.895119 -vt 0.674262 0.895119 -vt 0.664105 0.895119 -vt 0.224264 0.879299 -vt 0.238474 0.916598 -vt 0.214722 0.923249 -vt 0.217381 0.856977 -vt 0.226504 0.852514 -vt 0.239903 0.871647 -vt 0.178528 0.861344 -vt 0.188643 0.862267 -vt 0.190158 0.885576 -vt 0.131998 0.833070 -vt 0.114525 0.848572 -vt 0.105133 0.833911 -vt 0.229094 0.850940 -vt 0.237259 0.844899 -vt 0.253900 0.861291 -vt 0.201788 0.861344 -vt 0.207497 0.883993 -vt 0.140795 0.842882 -vt 0.126416 0.861291 -vt 0.162935 0.856977 -vt 0.156052 0.879299 -vt 0.140413 0.871647 -vt 0.239521 0.842882 -vt 0.246458 0.835463 -vt 0.214549 0.858057 -vt 0.151222 0.850940 -vt 0.175547 0.860795 -vt 0.172819 0.883993 -vt 0.119685 0.905758 -vt 0.099857 0.891087 -vt 0.297304 0.873069 -vt 0.280459 0.891087 -vt 0.141842 0.916598 -vt 0.083012 0.873069 -vt 0.190158 0.925490 -vt 0.165594 0.923249 -vt 0.260631 0.905758 -vt 0.310610 0.852299 -vt 0.262003 0.912773 -vt 0.243170 0.921987 -vt 0.792469 0.894307 -vt 0.854840 0.876912 -vt 0.856480 0.880772 -vt 0.315425 0.857581 -vt 0.161951 0.929398 -vt 0.141761 0.923745 -vt 0.114092 0.910208 -vt 0.097238 0.897737 -vt 0.238554 0.923745 -vt 0.218365 0.929398 -vt 0.301084 0.879135 -vt 0.137146 0.921987 -vt 0.118313 0.912773 -vt 0.093550 0.894450 -vt 0.079232 0.879135 -vt 0.213507 0.930293 -vt 0.192628 0.932198 -vt 0.283078 0.897737 -vt 0.266224 0.910208 -vt 0.076200 0.875235 -vt 0.064891 0.857581 -vt 0.187688 0.932198 -vt 0.166809 0.930293 -vt 0.828610 0.623227 -vt 0.832242 0.609674 -vt 0.842163 0.619596 -vt 0.910617 0.942823 -vt 0.878470 0.886616 -vt 0.881809 0.884080 -vt 0.940197 0.913601 -vt 0.884386 0.880772 -vt 0.886026 0.876912 -vt 0.849644 0.950787 -vt 0.866275 0.888209 -vt 0.870433 0.888752 -vt 0.800670 0.913603 -vt 0.859056 0.884080 -vt 0.951365 0.873551 -vt 0.948397 0.894305 -vt 0.870433 0.953503 -vt 0.874591 0.888209 -vt 0.813551 0.930145 -vt 0.862396 0.886616 -vt 0.789500 0.873552 -vt 0.854246 0.872761 -vt 0.891223 0.950787 -vt 0.927315 0.930144 -vt 0.830249 0.942823 -vt 0.088223 0.467610 -vt 0.088231 0.729223 -vt 0.059212 0.729224 -vt 0.059205 0.467611 -vt 0.058479 0.464903 -vt 0.088949 0.464902 -vt 0.028735 0.467612 -vt 0.028009 0.464904 -vt 0.363902 0.467602 -vt 0.363177 0.464895 -vt 0.393646 0.464894 -vt 0.529458 0.028005 -vt 0.536713 0.143348 -vt 0.493184 0.143348 -vt 0.179632 0.467607 -vt 0.179640 0.729221 -vt 0.150621 0.729221 -vt 0.331981 0.467603 -vt 0.331988 0.729216 -vt 0.302969 0.729217 -vt 0.271042 0.467605 -vt 0.271049 0.729219 -vt 0.242030 0.729220 -vt 0.057754 0.467611 -vt 0.057762 0.729224 -vt 0.028743 0.729225 -vt 0.149163 0.467608 -vt 0.149170 0.729221 -vt 0.120151 0.729222 -vt 0.240572 0.467606 -vt 0.240579 0.729219 -vt 0.211560 0.729220 -vt 0.392921 0.467601 -vt 0.392928 0.729214 -vt 0.363909 0.729215 -vt 0.118693 0.467609 -vt 0.118700 0.729222 -vt 0.089681 0.729223 -vt 0.210102 0.467607 -vt 0.210109 0.729219 -vt 0.181090 0.729220 -vt 0.362451 0.467602 -vt 0.362459 0.729216 -vt 0.333440 0.729217 -vt 0.301511 0.467604 -vt 0.301519 0.729218 -vt 0.272500 0.729219 -vt 0.180354 0.315407 -vt 0.180358 0.464900 -vt 0.149888 0.464901 -vt 0.210823 0.315406 -vt 0.210828 0.464899 -vt 0.332703 0.315402 -vt 0.332707 0.464896 -vt 0.302237 0.464897 -vt 0.302233 0.315403 -vt 0.271767 0.464897 -vt 0.241293 0.315405 -vt 0.241297 0.464898 -vt 0.363172 0.315401 -vt 0.271763 0.315404 -vt 0.393642 0.315401 -vt 0.058475 0.315410 -vt 0.088944 0.315409 -vt 0.119414 0.315408 -vt 0.119418 0.464902 -vt 0.149884 0.315407 -vt 0.089674 0.467610 -vt 0.120144 0.467609 -vt 0.150614 0.467608 -vt 0.181083 0.467607 -vt 0.211553 0.467607 -vt 0.242023 0.467606 -vt 0.272493 0.467605 -vt 0.302962 0.467604 -vt 0.333432 0.467603 -vt 0.028005 0.315411 -vt 0.754354 0.143348 -vt 0.754354 0.255468 -vt 0.710826 0.255468 -vt 0.660042 0.028005 -vt 0.667297 0.143348 -vt 0.623769 0.143348 -vt 0.877684 0.028005 -vt 0.884939 0.143348 -vt 0.841410 0.143348 -vt 0.790627 0.028005 -vt 0.797882 0.143348 -vt 0.485930 0.028006 -vt 0.449656 0.143348 -vt 0.587495 0.028005 -vt 0.616514 0.028005 -vt 0.747099 0.028005 -vt 0.710826 0.143348 -vt 0.935722 0.028005 -vt 0.964740 0.028005 -vt 0.971995 0.143348 -vt 0.572986 0.028005 -vt 0.580241 0.143348 -vt 0.703571 0.028005 -vt 0.892193 0.028005 -vt 0.921212 0.028005 -vt 0.928467 0.143348 -vt 0.834155 0.028005 -vt 0.580241 0.255468 -vt 0.623769 0.255468 -vt 0.607446 0.416897 -vt 0.971995 0.255468 -vt 0.928467 0.255468 -vt 0.536713 0.255468 -vt 0.667297 0.255468 -vt 0.884939 0.255468 -vt 0.841410 0.255468 -vt 0.797882 0.255468 -vt 0.493185 0.255468 -vt 0.449656 0.255468 -vt 0.602821 0.442335 -vt 0.601189 0.442335 -vt 0.738030 0.416897 -vt 0.727149 0.416897 -vt 0.955672 0.416897 -vt 0.563918 0.416897 -vt 0.553036 0.416897 -vt 0.694502 0.416897 -vt 0.683621 0.416897 -vt 0.912144 0.416897 -vt 0.825087 0.416897 -vt 0.814205 0.416897 -vt 0.520390 0.416897 -vt 0.509508 0.416897 -vt 0.650974 0.416897 -vt 0.640092 0.416897 -vt 0.868616 0.416897 -vt 0.781559 0.416897 -vt 0.476861 0.416897 -vt 0.465980 0.416897 -vt 0.919680 0.621180 -vt 0.914404 0.619766 -vt 0.918266 0.615904 -vt 0.733406 0.442335 -vt 0.731774 0.442335 -vt 0.951047 0.442335 -vt 0.949415 0.442335 -vt 0.559293 0.442335 -vt 0.557661 0.442335 -vt 0.689878 0.442335 -vt 0.901262 0.416897 -vt 0.907519 0.442335 -vt 0.820462 0.442336 -vt 0.515765 0.442335 -vt 0.514133 0.442335 -vt 0.646349 0.442335 -vt 0.857733 0.416897 -vt 0.863991 0.442336 -vt 0.776934 0.442335 -vt 0.775302 0.442335 -vt 0.472237 0.442335 -vt 0.271030 0.051083 -vt 0.179621 0.051086 -vt 0.149151 0.051087 -vt 0.118681 0.051087 -vt 0.088212 0.051088 -vt 0.057741 0.051089 -vt 0.392909 0.051080 -vt 0.331969 0.051081 -vt 0.236932 0.028009 -vt 0.358811 0.028006 -vt 0.206463 0.028010 -vt 0.297872 0.028007 -vt 0.598813 0.895119 -vt 0.418896 0.847825 -vt 0.248318 0.833070 -vt 0.424700 0.895119 -vt 0.489993 0.895119 -vt 0.511757 0.895119 -vt 0.126520 0.824518 -vt 0.191673 0.862267 -vt 0.133858 0.835463 -vt 0.153812 0.852514 -vt 0.204769 0.860795 -vt 0.143057 0.844899 -vt 0.165767 0.858056 -vt 0.069706 0.852299 -vt 0.304116 0.875235 -vt 0.286766 0.894450 -vt 0.840066 0.623227 -vt 0.836435 0.625324 -vt 0.832242 0.625324 -vt 0.826513 0.619596 -vt 0.826513 0.615403 -vt 0.828610 0.611771 -vt 0.836435 0.609674 -vt 0.840066 0.611771 -vt 0.842163 0.615403 -vt 0.886619 0.872761 -vt 0.500439 0.028005 -vt 0.631024 0.028005 -vt 0.848665 0.028005 -vt 0.761608 0.028005 -vt 0.456911 0.028006 -vt 0.718080 0.028005 -vt 0.543967 0.028005 -vt 0.674552 0.028005 -vt 0.805137 0.028005 -vt 0.596564 0.416897 -vt 0.944790 0.416897 -vt 0.770677 0.416897 -vt 0.919680 0.616720 -vt 0.920496 0.618134 -vt 0.920496 0.619766 -vt 0.918266 0.621996 -vt 0.916634 0.621996 -vt 0.915220 0.621180 -vt 0.914404 0.618134 -vt 0.915220 0.616720 -vt 0.916634 0.615904 -vt 0.688245 0.442335 -vt 0.905886 0.442335 -vt 0.818830 0.442336 -vt 0.644717 0.442335 -vt 0.862359 0.442336 -vt 0.470604 0.442335 -vn 0.258800 0.000000 -0.965900 -vn 0.707100 0.000000 -0.707100 -vn 0.965900 0.000000 -0.258800 -vn 0.965900 0.000000 0.258800 -vn 0.707100 0.000000 0.707100 -vn 0.258800 0.000000 0.965900 -vn -0.258800 0.000000 0.965900 -vn -0.707100 0.000000 0.707100 -vn -0.965900 0.000000 0.258800 -vn -0.965900 0.000000 -0.258800 -vn -0.258800 0.000000 -0.965900 -vn -0.707100 0.000000 -0.707100 -vn 0.782200 -0.586700 -0.209600 -vn -0.572600 -0.586700 -0.572600 -vn 0.572600 -0.586700 -0.572600 -vn -0.782200 -0.586700 -0.209600 -vn -0.782200 -0.586700 0.209600 -vn -0.572600 -0.586700 0.572600 -vn -0.209600 -0.586700 0.782200 -vn 0.209600 -0.586700 0.782200 -vn 0.572600 -0.586700 0.572600 -vn 0.782200 -0.586700 0.209600 -vn -0.209600 -0.586700 -0.782200 -vn 0.209600 -0.586700 -0.782200 -vn 0.169100 -0.757200 0.631000 -vn -0.782200 0.586700 0.209600 -vn 0.631000 -0.757200 -0.169100 -vn -0.631000 -0.757200 -0.169100 -vn -0.169100 -0.757200 0.631000 -vn 0.631000 -0.757200 0.169100 -vn -0.461900 -0.757200 -0.461900 -vn 0.169100 -0.757200 -0.631000 -vn -0.461900 -0.757200 0.461900 -vn 0.461900 -0.757200 0.461900 -vn -0.169100 -0.757200 -0.631000 -vn 0.461900 -0.757200 -0.461900 -vn -0.631000 -0.757200 0.169100 -vn 0.664800 0.340600 0.664800 -vn 0.209600 0.586700 0.782200 -vn 0.782200 0.586700 -0.209600 -vn -0.782200 0.586700 -0.209600 -vn -0.209600 0.586700 0.782200 -vn 0.782200 0.586700 0.209600 -vn -0.572600 0.586700 -0.572600 -vn 0.209600 0.586700 -0.782200 -vn -0.572600 0.586700 0.572600 -vn 0.572600 0.586700 0.572600 -vn -0.209600 0.586700 -0.782200 -vn 0.572600 0.586700 -0.572600 -vn -0.243300 0.340600 -0.908200 -vn -0.664800 0.340600 0.664800 -vn 0.243300 0.340600 -0.908200 -vn -0.664800 0.340600 -0.664800 -vn 0.908200 0.340600 0.243300 -vn -0.243300 0.340600 0.908200 -vn -0.908200 0.340600 -0.243300 -vn 0.908200 0.340600 -0.243300 -vn 0.243300 0.340600 0.908200 -vn -0.908200 0.340600 0.243300 -vn 0.000000 -1.000000 0.000000 -vn 0.664800 0.340600 -0.664800 -vn 0.617400 -0.487500 -0.617400 -vn -0.226000 -0.487500 0.843400 -vn 0.617400 -0.487500 0.617400 -vn -0.843400 -0.487500 -0.226000 -vn 0.226000 -0.487500 -0.843400 -vn 0.843400 -0.487500 0.226000 -vn -0.843400 -0.487500 0.226000 -vn -0.226000 -0.487500 -0.843400 -vn 0.843400 -0.487500 -0.226000 -vn -0.617400 -0.487500 0.617400 -vn 0.226000 -0.487500 0.843400 -vn -0.617400 -0.487500 -0.617400 -vn 0.000000 1.000000 0.000000 -vn -0.687300 -0.234700 0.687400 -vn 0.687400 -0.234700 0.687300 -vn -0.251600 -0.234700 -0.938900 -vn 0.687400 -0.234700 -0.687300 -vn -0.938900 -0.234700 0.251600 -vn 0.251600 -0.234700 0.938900 -vn 0.938900 -0.234700 -0.251600 -vn -0.938900 -0.234700 -0.251600 -vn -0.251600 -0.234700 0.938900 -vn 0.938900 -0.234700 0.251600 -vn -0.687300 -0.234700 -0.687400 -vn 0.251600 -0.234700 -0.938900 -vn 0.239700 0.377400 0.894500 -vn 0.190100 0.678500 0.709600 -vn 0.894500 0.377400 -0.239700 -vn -0.894500 0.377400 -0.239700 -vn -0.239700 0.377400 0.894500 -vn 0.894500 0.377400 0.239700 -vn -0.654800 0.377400 -0.654800 -vn 0.239700 0.377400 -0.894500 -vn -0.654800 0.377400 0.654800 -vn 0.654800 0.377400 0.654800 -vn -0.239700 0.377400 -0.894500 -vn 0.654800 0.377400 -0.654800 -vn -0.894500 0.377400 0.239700 -vn 0.709600 0.678500 -0.190100 -vn -0.709600 0.678500 -0.190100 -vn -0.190100 0.678500 0.709600 -vn 0.709600 0.678500 0.190100 -vn -0.519400 0.678500 -0.519400 -vn 0.190100 0.678500 -0.709600 -vn -0.519400 0.678500 0.519400 -vn 0.519400 0.678500 0.519400 -vn -0.190100 0.678500 -0.709600 -vn 0.519400 0.678500 -0.519400 -vn -0.709600 0.678500 0.190100 -vn -0.687400 -0.234700 0.687300 -vn 0.687300 -0.234700 0.687300 -vn 0.687300 -0.234700 -0.687400 -vn -0.687400 -0.234700 -0.687300 -vn 0.000000 1.000000 0.000100 -vn 0.000000 1.000000 0.000200 -vn 0.000000 1.000000 -0.000200 -vn 0.000000 1.000000 -0.000100 -s off -f 2/1/1 4/2/1 3/3/1 -f 4/4/2 6/5/2 5/6/2 -f 6/7/3 8/8/3 7/9/3 -f 8/10/4 10/11/4 9/12/4 -f 10/13/5 12/14/5 11/15/5 -f 12/16/6 14/17/6 13/18/6 -f 14/19/7 16/20/7 15/21/7 -f 16/22/8 18/23/8 17/24/8 -f 18/25/9 20/26/9 19/27/9 -f 20/28/10 22/29/10 21/30/10 -f 24/31/11 2/32/11 1/33/11 -f 22/34/12 24/35/12 23/36/12 -f 5/37/13 7/9/13 28/38/13 -f 31/39/6 43/40/6 42/41/6 -f 21/42/14 23/36/14 36/43/14 -f 5/6/15 27/44/15 26/45/15 -f 21/30/16 35/46/16 34/47/16 -f 19/27/17 34/48/17 33/49/17 -f 17/24/18 33/50/18 32/51/18 -f 15/21/19 32/52/19 31/53/19 -f 13/18/20 31/54/20 30/55/20 -f 11/15/21 30/56/21 29/57/21 -f 7/58/22 9/12/22 29/59/22 -f 1/33/23 25/60/23 36/61/23 -f 1/62/24 3/3/24 26/63/24 -f 42/41/25 43/40/25 55/64/25 -f 28/65/3 40/66/3 39/67/3 -f 35/68/10 47/69/10 46/70/10 -f 32/71/7 44/72/7 43/40/7 -f 29/73/4 41/74/4 40/66/4 -f 35/68/12 36/75/12 48/76/12 -f 26/77/1 38/78/1 37/79/1 -f 33/80/8 45/81/8 44/72/8 -f 30/82/5 42/41/5 41/74/5 -f 36/75/11 25/83/11 37/79/11 -f 26/77/2 27/84/2 39/67/2 -f 34/85/9 46/86/9 45/81/9 -f 58/87/26 70/88/26 69/89/26 -f 40/66/27 52/90/27 51/91/27 -f 46/70/28 47/69/28 59/92/28 -f 44/72/29 56/93/29 55/94/29 -f 41/74/30 53/95/30 52/96/30 -f 48/76/31 60/97/31 59/98/31 -f 37/79/32 38/78/32 50/99/32 -f 45/81/33 57/100/33 56/101/33 -f 42/41/34 54/102/34 53/103/34 -f 37/79/35 49/104/35 60/105/35 -f 38/78/36 39/67/36 51/106/36 -f 46/86/37 58/107/37 57/108/37 -f 66/109/38 79/110/38 80/111/38 -f 54/112/39 55/113/39 67/114/39 -f 51/115/40 52/116/40 64/117/40 -f 59/118/41 71/119/41 70/120/41 -f 55/121/42 56/122/42 68/123/42 -f 53/124/43 65/125/43 64/117/43 -f 60/126/44 72/127/44 71/119/44 -f 50/128/45 62/129/45 61/130/45 -f 56/131/46 57/132/46 69/89/46 -f 54/133/47 66/109/47 65/125/47 -f 49/134/48 61/130/48 72/127/48 -f 51/135/49 63/136/49 62/129/49 -f 61/130/50 84/137/50 73/138/50 -f 69/89/51 76/139/51 77/140/51 -f 62/129/52 83/141/52 84/137/52 -f 72/127/53 73/138/53 74/142/53 -f 64/117/54 65/125/54 80/111/54 -f 67/114/55 68/123/55 77/140/55 -f 70/120/56 71/119/56 74/142/56 -f 64/117/57 81/143/57 82/144/57 -f 66/109/58 67/114/58 78/145/58 -f 69/89/59 70/88/59 75/146/59 -f 78/145/60 91/147/60 92/148/60 -f 63/136/61 82/144/61 83/141/61 -f 89/149/62 101/150/62 102/151/62 -f 76/139/60 75/146/60 88/152/60 -f 82/144/60 95/153/60 96/154/60 -f 84/137/60 86/155/60 85/156/60 -f 79/110/60 92/157/60 93/158/60 -f 77/140/60 76/139/60 89/159/60 -f 83/141/60 96/160/60 86/161/60 -f 73/138/60 85/162/60 87/163/60 -f 80/111/60 93/164/60 94/165/60 -f 77/140/60 90/166/60 91/167/60 -f 74/142/60 87/168/60 88/169/60 -f 81/143/60 94/170/60 95/171/60 -f 106/172/60 102/173/60 97/174/60 -f 96/175/63 108/176/63 98/177/63 -f 85/178/64 97/179/64 99/180/64 -f 93/181/65 105/182/65 106/183/65 -f 90/184/66 102/151/66 103/185/66 -f 88/186/67 87/187/67 99/180/67 -f 94/188/68 106/183/68 107/189/68 -f 91/190/69 103/185/69 104/191/69 -f 89/149/70 88/192/70 100/193/70 -f 95/194/71 107/189/71 108/176/71 -f 86/195/72 98/177/72 97/179/72 -f 92/196/73 104/191/73 105/182/73 -f 116/197/8 128/198/8 129/199/8 -f 117/200/74 153/201/74 152/202/74 -f 118/203/74 154/204/74 153/201/74 -f 119/205/74 155/206/74 154/207/74 -f 128/208/75 164/209/75 165/210/75 -f 113/211/5 125/212/5 126/213/5 -f 120/214/11 132/215/11 122/216/11 -f 109/217/2 121/218/2 123/219/2 -f 117/220/9 129/221/9 130/222/9 -f 114/223/6 126/224/6 127/225/6 -f 111/226/3 123/227/3 124/228/3 -f 118/229/10 130/230/10 131/231/10 -f 115/232/7 127/233/7 128/234/7 -f 112/235/4 124/236/4 125/237/4 -f 119/238/12 131/239/12 132/240/12 -f 110/241/1 122/242/1 121/243/1 -f 137/244/5 149/245/5 150/246/5 -f 136/247/4 148/248/4 149/245/4 -f 144/249/11 156/250/11 146/251/11 -f 133/252/1 146/251/1 145/253/1 -f 135/254/3 147/255/3 148/248/3 -f 143/256/12 155/206/12 156/250/12 -f 134/257/2 145/253/2 147/255/2 -f 142/258/10 154/207/10 155/206/10 -f 141/259/9 153/201/9 154/204/9 -f 140/260/8 152/202/8 153/201/8 -f 139/261/7 151/262/7 152/202/7 -f 138/263/6 150/246/6 151/262/6 -f 116/264/74 152/202/74 151/262/74 -f 115/265/74 151/262/74 150/246/74 -f 114/266/74 150/246/74 149/245/74 -f 112/235/74 113/267/74 149/245/74 -f 112/268/74 148/248/74 147/255/74 -f 111/269/74 147/255/74 145/253/74 -f 109/270/74 145/253/74 146/251/74 -f 120/214/74 110/271/74 146/251/74 -f 120/272/74 156/250/74 155/206/74 -f 143/256/60 144/249/60 24/35/60 -f 144/249/60 133/252/60 2/32/60 -f 133/252/60 134/257/60 4/2/60 -f 134/257/60 135/254/60 6/5/60 -f 135/254/60 136/247/60 8/8/60 -f 136/247/60 137/244/60 10/11/60 -f 137/244/60 138/263/60 12/14/60 -f 138/263/60 139/261/60 14/17/60 -f 139/261/60 140/260/60 16/20/60 -f 140/260/60 141/259/60 18/23/60 -f 141/259/60 142/273/60 20/26/60 -f 142/258/60 143/256/60 22/29/60 -f 159/274/3 171/275/3 172/276/3 -f 125/277/76 161/278/76 162/279/76 -f 132/280/77 168/281/77 158/282/77 -f 121/283/78 157/284/78 159/274/78 -f 129/285/79 165/210/79 166/286/79 -f 127/287/80 126/288/80 162/279/80 -f 123/289/81 159/274/81 160/290/81 -f 131/291/82 130/292/82 166/293/82 -f 127/294/83 163/295/83 164/209/83 -f 124/296/84 160/290/84 161/278/84 -f 132/297/85 131/298/85 167/299/85 -f 122/300/86 158/282/86 157/284/86 -f 175/301/87 174/302/87 186/303/87 -f 166/293/10 178/304/10 179/305/10 -f 163/295/7 175/301/7 176/306/7 -f 160/290/4 172/276/4 173/307/4 -f 167/299/12 179/305/12 180/308/12 -f 158/282/1 170/309/1 169/310/1 -f 164/209/8 176/306/8 177/311/8 -f 161/278/5 173/307/5 174/302/5 -f 168/281/11 180/308/11 170/309/11 -f 157/284/2 169/310/2 171/275/2 -f 165/210/9 177/311/9 178/312/9 -f 162/279/6 174/302/6 175/301/6 -f 186/303/88 198/313/88 199/314/88 -f 171/275/89 183/315/89 184/316/89 -f 179/305/90 178/304/90 190/317/90 -f 175/301/91 187/318/91 188/319/91 -f 172/276/92 184/320/92 185/321/92 -f 180/308/93 179/305/93 191/322/93 -f 170/309/94 182/323/94 181/324/94 -f 176/306/95 188/325/95 189/326/95 -f 173/307/96 185/327/96 186/328/96 -f 170/309/97 180/308/97 192/329/97 -f 171/275/98 169/310/98 181/330/98 -f 177/311/99 189/331/99 190/332/99 -f 203/333/74 199/334/74 195/335/74 -f 183/315/100 195/336/100 196/337/100 -f 190/317/101 202/338/101 203/339/101 -f 187/318/102 199/340/102 200/341/102 -f 185/321/103 184/320/103 196/342/103 -f 192/343/104 191/322/104 203/344/104 -f 181/324/105 182/323/105 194/345/105 -f 188/325/106 200/346/106 201/347/106 -f 186/328/107 185/327/107 197/348/107 -f 182/349/108 192/329/108 204/350/108 -f 181/330/109 193/351/109 195/352/109 -f 190/332/110 189/331/110 201/353/110 -f 1/62/1 2/1/1 3/3/1 -f 3/354/2 4/4/2 5/6/2 -f 5/37/3 6/7/3 7/9/3 -f 7/58/4 8/10/4 9/12/4 -f 9/355/5 10/13/5 11/15/5 -f 11/356/6 12/16/6 13/18/6 -f 13/357/7 14/19/7 15/21/7 -f 15/358/8 16/22/8 17/24/8 -f 17/359/9 18/25/9 19/27/9 -f 19/360/10 20/28/10 21/30/10 -f 23/361/11 24/31/11 1/33/11 -f 21/42/12 22/34/12 23/36/12 -f 27/362/13 5/37/13 28/38/13 -f 30/82/6 31/39/6 42/41/6 -f 35/363/14 21/42/14 36/43/14 -f 3/354/15 5/6/15 26/45/15 -f 19/360/16 21/30/16 34/47/16 -f 17/359/17 19/27/17 33/49/17 -f 15/358/18 17/24/18 32/51/18 -f 13/357/19 15/21/19 31/53/19 -f 11/356/20 13/18/20 30/55/20 -f 9/355/21 11/15/21 29/57/21 -f 28/364/22 7/58/22 29/59/22 -f 23/361/23 1/33/23 36/61/23 -f 25/365/24 1/62/24 26/63/24 -f 54/366/25 42/41/25 55/64/25 -f 27/84/3 28/65/3 39/67/3 -f 34/367/10 35/68/10 46/70/10 -f 31/39/7 32/71/7 43/40/7 -f 28/65/4 29/73/4 40/66/4 -f 47/69/12 35/68/12 48/76/12 -f 25/83/1 26/77/1 37/79/1 -f 32/71/8 33/80/8 44/72/8 -f 29/73/5 30/82/5 41/74/5 -f 48/76/11 36/75/11 37/79/11 -f 38/78/2 26/77/2 39/67/2 -f 33/80/9 34/85/9 45/81/9 -f 57/368/26 58/87/26 69/89/26 -f 39/67/27 40/66/27 51/91/27 -f 58/369/28 46/70/28 59/92/28 -f 43/40/29 44/72/29 55/94/29 -f 40/66/30 41/74/30 52/96/30 -f 47/69/31 48/76/31 59/98/31 -f 49/370/32 37/79/32 50/99/32 -f 44/72/33 45/81/33 56/101/33 -f 41/74/34 42/41/34 53/103/34 -f 48/76/35 37/79/35 60/105/35 -f 50/371/36 38/78/36 51/106/36 -f 45/81/37 46/86/37 57/108/37 -f 65/125/38 66/109/38 80/111/38 -f 66/109/39 54/112/39 67/114/39 -f 63/136/40 51/115/40 64/117/40 -f 58/372/41 59/118/41 70/120/41 -f 67/114/42 55/121/42 68/123/42 -f 52/373/43 53/124/43 64/117/43 -f 59/374/44 60/126/44 71/119/44 -f 49/375/45 50/128/45 61/130/45 -f 68/123/46 56/131/46 69/89/46 -f 53/376/47 54/133/47 65/125/47 -f 60/377/48 49/134/48 72/127/48 -f 50/378/49 51/135/49 62/129/49 -f 72/127/50 61/130/50 73/138/50 -f 68/123/51 69/89/51 77/140/51 -f 61/130/52 62/129/52 84/137/52 -f 71/119/53 72/127/53 74/142/53 -f 81/143/54 64/117/54 80/111/54 -f 78/145/55 67/114/55 77/140/55 -f 75/379/56 70/120/56 74/142/56 -f 63/136/57 64/117/57 82/144/57 -f 79/110/58 66/109/58 78/145/58 -f 76/139/59 69/89/59 75/146/59 -f 79/110/60 78/145/60 92/148/60 -f 62/129/61 63/136/61 83/141/61 -f 90/184/62 89/149/62 102/151/62 -f 89/380/60 76/139/60 88/152/60 -f 83/141/60 82/144/60 96/154/60 -f 73/138/60 84/137/60 85/156/60 -f 80/111/60 79/110/60 93/158/60 -f 90/381/60 77/140/60 89/159/60 -f 84/137/60 83/141/60 86/161/60 -f 74/142/60 73/138/60 87/163/60 -f 81/143/60 80/111/60 94/165/60 -f 78/145/60 77/140/60 91/167/60 -f 75/379/60 74/142/60 88/169/60 -f 82/144/60 81/143/60 95/171/60 -f 97/174/60 98/382/60 108/383/60 -f 108/383/60 107/384/60 106/172/60 -f 106/172/60 105/385/60 104/386/60 -f 104/386/60 103/387/60 102/173/60 -f 102/173/60 101/388/60 97/174/60 -f 100/389/60 99/390/60 97/174/60 -f 97/174/60 108/383/60 106/172/60 -f 106/172/60 104/386/60 102/173/60 -f 101/388/60 100/389/60 97/174/60 -f 86/195/63 96/175/63 98/177/63 -f 87/187/64 85/178/64 99/180/64 -f 94/188/65 93/181/65 106/183/65 -f 91/190/66 90/184/66 103/185/66 -f 100/391/67 88/186/67 99/180/67 -f 95/194/68 94/188/68 107/189/68 -f 92/196/69 91/190/69 104/191/69 -f 101/150/70 89/149/70 100/193/70 -f 96/175/71 95/194/71 108/176/71 -f 85/178/72 86/195/72 97/179/72 -f 93/181/73 92/196/73 105/182/73 -f 117/200/8 116/197/8 129/199/8 -f 116/197/74 117/200/74 152/202/74 -f 117/220/74 118/203/74 153/201/74 -f 118/229/74 119/205/74 154/207/74 -f 129/392/111 128/208/111 165/210/111 -f 114/266/5 113/211/5 126/213/5 -f 110/271/11 120/214/11 122/216/11 -f 111/269/2 109/217/2 123/219/2 -f 118/203/9 117/220/9 130/222/9 -f 115/265/6 114/223/6 127/225/6 -f 112/268/3 111/226/3 124/228/3 -f 119/205/10 118/229/10 131/231/10 -f 116/264/7 115/232/7 128/234/7 -f 113/267/4 112/235/4 125/237/4 -f 120/272/12 119/238/12 132/240/12 -f 109/270/1 110/241/1 121/243/1 -f 138/263/5 137/244/5 150/246/5 -f 137/244/4 136/247/4 149/245/4 -f 133/252/11 144/249/11 146/251/11 -f 134/257/1 133/252/1 145/253/1 -f 136/247/3 135/254/3 148/248/3 -f 144/249/12 143/256/12 156/250/12 -f 135/254/2 134/257/2 147/255/2 -f 143/256/10 142/258/10 155/206/10 -f 142/273/9 141/259/9 154/204/9 -f 141/259/8 140/260/8 153/201/8 -f 140/260/7 139/261/7 152/202/7 -f 139/261/6 138/263/6 151/262/6 -f 115/232/74 116/264/74 151/262/74 -f 114/223/74 115/265/74 150/246/74 -f 113/211/74 114/266/74 149/245/74 -f 148/248/74 112/235/74 149/245/74 -f 111/226/74 112/268/74 147/255/74 -f 109/217/74 111/269/74 145/253/74 -f 110/241/74 109/270/74 146/251/74 -f 156/250/74 120/214/74 146/251/74 -f 119/238/74 120/272/74 155/206/74 -f 22/34/60 143/256/60 24/35/60 -f 24/31/60 144/249/60 2/32/60 -f 2/1/60 133/252/60 4/2/60 -f 4/4/60 134/257/60 6/5/60 -f 6/7/60 135/254/60 8/8/60 -f 8/10/60 136/247/60 10/11/60 -f 10/13/60 137/244/60 12/14/60 -f 12/16/60 138/263/60 14/17/60 -f 14/19/60 139/261/60 16/20/60 -f 16/22/60 140/260/60 18/23/60 -f 18/25/60 141/259/60 20/26/60 -f 20/28/60 142/258/60 22/29/60 -f 160/290/3 159/274/3 172/276/3 -f 126/393/112 125/277/112 162/279/112 -f 122/394/77 132/280/77 158/282/77 -f 123/395/113 121/283/113 159/274/113 -f 130/396/79 129/285/79 166/286/79 -f 163/295/80 127/287/80 162/279/80 -f 124/397/81 123/289/81 160/290/81 -f 167/299/82 131/291/82 166/293/82 -f 128/398/83 127/294/83 164/209/83 -f 125/399/84 124/296/84 161/278/84 -f 168/281/114 132/297/114 167/299/114 -f 121/400/86 122/300/86 157/284/86 -f 187/401/87 175/301/87 186/303/87 -f 167/299/10 166/293/10 179/305/10 -f 164/209/7 163/295/7 176/306/7 -f 161/278/4 160/290/4 173/307/4 -f 168/281/12 167/299/12 180/308/12 -f 157/284/1 158/282/1 169/310/1 -f 165/210/8 164/209/8 177/311/8 -f 162/279/5 161/278/5 174/302/5 -f 158/282/11 168/281/11 170/309/11 -f 159/274/2 157/284/2 171/275/2 -f 166/286/9 165/210/9 178/312/9 -f 163/295/6 162/279/6 175/301/6 -f 187/401/88 186/303/88 199/314/88 -f 172/276/89 171/275/89 184/316/89 -f 191/402/90 179/305/90 190/317/90 -f 176/306/91 175/301/91 188/319/91 -f 173/307/92 172/276/92 185/321/92 -f 192/343/93 180/308/93 191/322/93 -f 169/310/94 170/309/94 181/324/94 -f 177/311/95 176/306/95 189/326/95 -f 174/302/96 173/307/96 186/328/96 -f 182/349/97 170/309/97 192/329/97 -f 183/403/98 171/275/98 181/330/98 -f 178/312/99 177/311/99 190/332/99 -f 195/335/115 193/404/115 203/333/115 -f 194/405/116 204/406/116 203/333/116 -f 203/333/74 202/407/74 201/408/74 -f 201/408/117 200/409/117 199/334/117 -f 199/334/118 198/410/118 197/411/118 -f 197/411/74 196/412/74 199/334/74 -f 193/404/117 194/405/117 203/333/117 -f 203/333/74 201/408/74 199/334/74 -f 199/334/74 196/412/74 195/335/74 -f 184/316/100 183/315/100 196/337/100 -f 191/402/101 190/317/101 203/339/101 -f 188/319/102 187/318/102 200/341/102 -f 197/413/103 185/321/103 196/342/103 -f 204/414/104 192/343/104 203/344/104 -f 193/415/105 181/324/105 194/345/105 -f 189/326/106 188/325/106 201/347/106 -f 198/416/107 186/328/107 197/348/107 -f 194/417/108 182/349/108 204/350/108 -f 183/403/109 181/330/109 195/352/109 -f 202/418/110 190/332/110 201/353/110 diff --git a/src/main/resources/assets/hbm/models/radar_head.obj b/src/main/resources/assets/hbm/models/radar_head.obj deleted file mode 100644 index 346cfe68a..000000000 --- a/src/main/resources/assets/hbm/models/radar_head.obj +++ /dev/null @@ -1,404 +0,0 @@ -# Blender v2.76 (sub 0) OBJ File: 'radar_head.blend' -# www.blender.org -o Torus -v 0.578906 1.584721 -0.000000 -v 0.601365 1.806898 -0.000000 -v 0.546068 1.962747 -0.000000 -v 0.361454 1.273760 -0.000000 -v 0.487268 1.381080 -0.000000 -v 0.548050 1.592989 -0.242643 -v 0.571688 1.814850 -0.233375 -v 0.519476 1.969872 -0.209110 -v 0.334863 1.280885 -0.209110 -v 0.457591 1.389032 -0.233375 -v 0.457584 1.617229 -0.468750 -v 0.484678 1.838164 -0.450845 -v 0.441513 1.990763 -0.403970 -v 0.256899 1.301775 -0.403970 -v 0.370581 1.412347 -0.450845 -v 0.313675 1.655789 -0.662913 -v 0.346265 1.875252 -0.637592 -v 0.317491 2.023994 -0.571300 -v 0.132877 1.335007 -0.571300 -v 0.232168 1.449434 -0.637592 -v 0.126128 1.706043 -0.811899 -v 0.165882 1.923585 -0.780887 -v 0.155863 2.067302 -0.699697 -v -0.028751 1.378315 -0.699697 -v 0.051785 1.497768 -0.780887 -v 0.126128 1.706043 0.811899 -v 0.165882 1.923585 0.780887 -v 0.155863 2.067302 0.699697 -v -0.028751 1.378315 0.699697 -v 0.051785 1.497768 0.780887 -v 0.313674 1.655790 0.662913 -v 0.346265 1.875252 0.637592 -v 0.317491 2.023994 0.571301 -v 0.132877 1.335007 0.571301 -v 0.232168 1.449434 0.637592 -v 0.457584 1.617229 0.468750 -v 0.484678 1.838164 0.450845 -v 0.441513 1.990763 0.403970 -v 0.256899 1.301775 0.403970 -v 0.370581 1.412347 0.450845 -v 0.548050 1.592989 0.242643 -v 0.571688 1.814850 0.233374 -v 0.519476 1.969872 0.209110 -v 0.334863 1.280885 0.209110 -v 0.457591 1.389032 0.233374 -v -0.100000 1.000000 0.100000 -v -0.100000 1.200000 0.100000 -v -0.100000 1.000000 -0.100000 -v -0.100000 1.200000 -0.100000 -v 0.100000 1.000000 0.100000 -v 0.100000 1.200000 0.100000 -v 0.100000 1.000000 -0.100000 -v 0.100000 1.200000 -0.100000 -v -0.500000 1.550000 0.050000 -v -0.500000 1.700000 0.050000 -v -0.500000 1.700000 -0.050000 -v -0.500000 1.550000 -0.050000 -v -0.450000 1.518750 -0.025000 -v -0.450000 1.881250 -0.025000 -v -0.450000 1.518750 0.025000 -v -0.450000 1.881250 0.025000 -v -0.467678 1.518750 0.017678 -v -0.467678 1.881250 0.017678 -v -0.475000 1.518750 -0.000000 -v -0.475000 1.881250 -0.000000 -v -0.467678 1.518750 -0.017678 -v -0.467678 1.881250 -0.017678 -v -0.400000 1.518750 -0.025000 -v -0.400000 1.881250 -0.025000 -v -0.382322 1.518750 -0.017678 -v -0.382322 1.881250 -0.017678 -v -0.375000 1.518750 0.000000 -v -0.375000 1.881250 0.000000 -v -0.382322 1.518750 0.017678 -v -0.382322 1.881250 0.017678 -v -0.400000 1.518750 0.025000 -v -0.400000 1.881250 0.025000 -vt 0.749477 0.177462 -vt 0.851663 0.177461 -vt 0.849712 0.270681 -vt 0.751428 0.270681 -vt 0.844603 0.339539 -vt 0.844602 0.015383 -vt 0.849712 0.084242 -vt 0.751428 0.084242 -vt 0.718710 0.177464 -vt 0.716756 0.270683 -vt 0.618472 0.270681 -vt 0.711645 0.339542 -vt 0.623580 0.339539 -vt 0.623588 0.015383 -vt 0.711653 0.015385 -vt 0.716761 0.084244 -vt 0.616523 0.177461 -vt 0.271242 0.713845 -vt 0.373429 0.713845 -vt 0.371477 0.807065 -vt 0.366368 0.875923 -vt 0.278303 0.875923 -vt 0.366368 0.551767 -vt 0.371477 0.620625 -vt 0.273194 0.620625 -vt 0.851663 0.532386 -vt 0.849712 0.625606 -vt 0.751428 0.625606 -vt 0.844603 0.694464 -vt 0.756538 0.694464 -vt 0.844603 0.370308 -vt 0.849712 0.439167 -vt 0.751428 0.439167 -vt 0.984617 0.177461 -vt 0.982665 0.270681 -vt 0.884382 0.270681 -vt 0.977556 0.339539 -vt 0.977556 0.015383 -vt 0.982665 0.084242 -vt 0.884382 0.084242 -vt 0.882430 0.177461 -vt 0.117570 0.599110 -vt 0.115619 0.692329 -vt 0.017335 0.692329 -vt 0.110509 0.761188 -vt 0.022444 0.761188 -vt 0.022444 0.437032 -vt 0.110510 0.437032 -vt 0.115619 0.505890 -vt 0.017335 0.505890 -vt 0.718710 0.532386 -vt 0.716759 0.625606 -vt 0.618475 0.625606 -vt 0.711649 0.694464 -vt 0.623584 0.694465 -vt 0.711649 0.370308 -vt 0.716758 0.439167 -vt 0.618475 0.439167 -vt 0.616523 0.532386 -vt 0.506382 0.713845 -vt 0.504430 0.807065 -vt 0.406147 0.807065 -vt 0.499321 0.875923 -vt 0.411256 0.875923 -vt 0.499321 0.551767 -vt 0.504431 0.620625 -vt 0.406147 0.620625 -vt 0.404195 0.713845 -vt 0.041881 0.130470 -vt 0.086176 0.059678 -vt 0.107053 0.343634 -vt 0.213977 0.130470 -vt 0.169683 0.059678 -vt 0.240475 0.015383 -vt 0.502249 0.098891 -vt 0.502249 0.015383 -vt 0.585757 0.015383 -vt 0.015383 0.015383 -vt 0.585757 0.098891 -vt 0.585757 0.182399 -vt 0.502249 0.182399 -vt 0.107052 0.406265 -vt 0.148806 0.343634 -vt 0.182027 0.396728 -vt 0.564880 0.449753 -vt 0.523126 0.449753 -vt 0.469735 0.433464 -vt 0.271242 0.406604 -vt 0.340291 0.359638 -vt 0.471482 0.120906 -vt 0.445258 0.204975 -vt 0.334736 0.180122 -vt 0.292959 0.252428 -vt 0.306677 0.283195 -vt 0.452868 0.347029 -vt 0.179652 0.437032 -vt 0.187033 0.440089 -vt 0.187033 0.454851 -vt 0.685335 0.876611 -vt 0.677346 0.876608 -vt 0.677397 0.725251 -vt 0.669357 0.876605 -vt 0.669408 0.725249 -vt 0.632552 0.725236 -vt 0.653429 0.725243 -vt 0.653378 0.876600 -vt 0.661367 0.876603 -vt 0.661418 0.725246 -vt 0.706212 0.876618 -vt 0.685387 0.725254 -vt 0.632501 0.876593 -vt 0.624512 0.876590 -vt 0.624562 0.725234 -vt 0.616523 0.876588 -vt 0.616573 0.725231 -vt 0.722190 0.876623 -vt 0.714201 0.876621 -vt 0.714253 0.725264 -vt 0.706263 0.725261 -vt 0.300577 0.521000 -vt 0.460098 0.521000 -vt 0.271242 0.125882 -vt 0.312920 0.015383 -vt 0.471482 0.032841 -vt 0.756538 0.339540 -vt 0.756537 0.015383 -vt 0.618477 0.084242 -vt 0.273193 0.807065 -vt 0.278303 0.551767 -vt 0.749477 0.532386 -vt 0.756538 0.370308 -vt 0.889491 0.339539 -vt 0.889491 0.015383 -vt 0.015383 0.599110 -vt 0.623584 0.370308 -vt 0.411256 0.551767 -vt 0.073832 0.396728 -vt 0.148806 0.406265 -vt 0.179652 0.457908 -vt 0.158775 0.457908 -vt 0.151394 0.454851 -vt 0.148337 0.447470 -vt 0.151394 0.440089 -vt 0.158775 0.437032 -vt 0.190091 0.447470 -vt 0.722242 0.725267 -vn 0.986600 -0.099700 -0.128900 -vn 0.936900 0.332400 -0.107800 -vn 0.645200 -0.756400 -0.107800 -vn 0.904300 -0.406900 -0.128900 -vn 0.922200 -0.082500 -0.377800 -vn 0.883000 0.346900 -0.316100 -vn 0.591300 -0.741900 -0.316100 -vn 0.839900 -0.389700 -0.377800 -vn 0.797700 -0.049100 -0.601000 -vn 0.778900 0.374800 -0.502900 -vn 0.487100 -0.714000 -0.502900 -vn 0.715400 -0.356300 -0.601000 -vn 0.621700 -0.002000 -0.783300 -vn 0.631600 0.414300 -0.655300 -vn 0.339900 -0.674600 -0.655300 -vn 0.539400 -0.309200 -0.783300 -vn 0.621700 -0.002000 0.783300 -vn 0.631600 0.414300 0.655300 -vn 0.339900 -0.674600 0.655300 -vn 0.539400 -0.309200 0.783300 -vn 0.797700 -0.049100 0.601000 -vn 0.778900 0.374800 0.502900 -vn 0.487100 -0.714000 0.502900 -vn 0.715400 -0.356300 0.601000 -vn 0.922200 -0.082500 0.377800 -vn 0.883000 0.346900 0.316100 -vn 0.591300 -0.741900 0.316100 -vn 0.839900 -0.389700 0.377800 -vn 0.986600 -0.099700 0.128900 -vn 0.936900 0.332400 0.107800 -vn 0.645200 -0.756400 0.107800 -vn 0.904300 -0.406900 0.128900 -vn -0.124000 0.000000 -0.992300 -vn 0.000000 0.000000 1.000000 -vn 1.000000 0.000000 0.000000 -vn 0.000000 0.000000 -1.000000 -vn 0.000000 1.000000 0.000000 -vn -1.000000 0.000000 0.000000 -vn -0.124000 0.000000 0.992300 -vn -0.808700 -0.588200 0.000000 -vn 0.780900 0.624700 0.000000 -vn 0.000000 0.948300 0.317500 -vn -0.236400 0.951600 -0.196600 -vn 0.421300 0.000000 -0.906900 -vn 0.421300 0.000000 0.906900 -vn -0.382700 0.000000 0.923900 -vn -0.923900 0.000000 0.382700 -vn -0.382700 0.000000 -0.923900 -vn -0.923900 0.000000 -0.382700 -vn 0.382700 0.000000 -0.923900 -vn 0.923900 0.000000 -0.382700 -vn 0.923900 0.000000 0.382700 -vn 0.382700 0.000000 0.923900 -vn -0.483500 -0.483500 -0.729600 -vn 0.654900 -0.677600 -0.334700 -vn -0.483500 -0.483500 0.729600 -vn 0.654900 -0.677600 0.334700 -vn -0.236400 0.951600 0.196600 -vn 0.000000 0.948300 -0.317500 -s off -f 1/1/1 6/2/1 7/3/1 -f 2/4/2 7/3/2 8/5/2 -f 9/6/3 10/7/3 5/8/3 -f 5/8/4 10/7/4 6/2/4 -f 11/9/5 12/10/5 7/11/5 -f 12/10/6 13/12/6 8/13/6 -f 9/14/7 14/15/7 15/16/7 -f 15/16/8 11/9/8 6/17/8 -f 11/18/9 16/19/9 17/20/9 -f 17/20/10 18/21/10 13/22/10 -f 19/23/11 20/24/11 15/25/11 -f 20/24/12 16/19/12 11/18/12 -f 21/26/13 22/27/13 17/28/13 -f 22/27/14 23/29/14 18/30/14 -f 24/31/15 25/32/15 20/33/15 -f 20/33/16 25/32/16 21/26/16 -f 31/34/17 32/35/17 27/36/17 -f 27/36/18 32/35/18 33/37/18 -f 34/38/19 35/39/19 30/40/19 -f 35/39/20 31/34/20 26/41/20 -f 36/42/21 37/43/21 32/44/21 -f 37/43/22 38/45/22 33/46/22 -f 34/47/23 39/48/23 40/49/23 -f 35/50/24 40/49/24 36/42/24 -f 41/51/25 42/52/25 37/53/25 -f 42/52/26 43/54/26 38/55/26 -f 44/56/27 45/57/27 40/58/27 -f 45/57/28 41/51/28 36/59/28 -f 1/60/29 2/61/29 42/62/29 -f 2/61/30 3/63/30 43/64/30 -f 4/65/31 5/66/31 45/67/31 -f 5/66/32 1/60/32 41/68/32 -f 49/69/33 48/70/33 57/71/33 -f 47/72/34 46/73/34 50/74/34 -f 51/75/35 50/76/35 52/77/35 -f 48/70/36 49/69/36 52/78/36 -f 53/79/37 49/80/37 47/81/37 -f 56/82/38 57/71/38 54/83/38 -f 47/72/39 55/84/39 54/83/39 -f 46/73/40 54/83/40 57/71/40 -f 49/80/41 56/85/41 55/86/41 -f 14/87/42 49/88/42 53/89/42 -f 39/90/43 44/91/43 51/92/43 -f 50/93/44 51/92/44 44/91/44 -f 52/94/45 9/95/45 53/89/45 -f 77/96/37 75/97/37 71/98/37 -f 61/99/46 63/100/46 62/101/46 -f 63/100/47 65/102/47 64/103/47 -f 68/104/36 58/105/36 59/106/36 -f 67/107/48 59/106/48 58/105/48 -f 65/102/49 67/107/49 66/108/49 -f 77/109/34 61/99/34 60/110/34 -f 69/111/50 71/112/50 70/113/50 -f 71/112/51 73/114/51 72/115/51 -f 73/116/52 75/117/52 74/118/52 -f 75/117/53 77/109/53 76/119/53 -f 49/88/54 14/87/54 52/120/54 -f 9/121/55 52/120/55 14/87/55 -f 47/122/56 50/123/56 39/90/56 -f 39/90/57 50/123/57 44/124/57 -f 2/4/1 1/1/1 7/3/1 -f 3/125/2 2/4/2 8/5/2 -f 4/126/3 9/6/3 5/8/3 -f 1/1/4 5/8/4 6/2/4 -f 6/17/5 11/9/5 7/11/5 -f 7/11/6 12/10/6 8/13/6 -f 10/127/7 9/14/7 15/16/7 -f 10/127/8 15/16/8 6/17/8 -f 12/128/9 11/18/9 17/20/9 -f 12/128/10 17/20/10 13/22/10 -f 14/129/11 19/23/11 15/25/11 -f 15/25/12 20/24/12 11/18/12 -f 16/130/13 21/26/13 17/28/13 -f 17/28/14 22/27/14 18/30/14 -f 19/131/15 24/31/15 20/33/15 -f 16/130/16 20/33/16 21/26/16 -f 26/41/17 31/34/17 27/36/17 -f 28/132/18 27/36/18 33/37/18 -f 29/133/19 34/38/19 30/40/19 -f 30/40/20 35/39/20 26/41/20 -f 31/134/21 36/42/21 32/44/21 -f 32/44/22 37/43/22 33/46/22 -f 35/50/23 34/47/23 40/49/23 -f 31/134/24 35/50/24 36/42/24 -f 36/59/25 41/51/25 37/53/25 -f 37/53/26 42/52/26 38/55/26 -f 39/135/27 44/56/27 40/58/27 -f 40/58/28 45/57/28 36/59/28 -f 41/68/29 1/60/29 42/62/29 -f 42/62/30 2/61/30 43/64/30 -f 44/136/31 4/65/31 45/67/31 -f 45/67/32 5/66/32 41/68/32 -f 56/137/33 49/69/33 57/71/33 -f 53/79/35 51/75/35 52/77/35 -f 51/75/37 53/79/37 47/81/37 -f 55/138/38 56/82/38 54/83/38 -f 46/73/39 47/72/39 54/83/39 -f 48/70/40 46/73/40 57/71/40 -f 47/81/41 49/80/41 55/86/41 -f 9/95/58 14/87/58 53/89/58 -f 47/122/59 39/90/59 51/92/59 -f 71/98/37 69/139/37 77/96/37 -f 59/140/37 67/141/37 65/142/37 -f 65/142/37 63/143/37 61/144/37 -f 61/144/37 77/96/37 69/139/37 -f 75/97/37 73/145/37 71/98/37 -f 69/139/37 59/140/37 61/144/37 -f 65/142/37 61/144/37 59/140/37 -f 60/110/46 61/99/46 62/101/46 -f 62/101/47 63/100/47 64/103/47 -f 69/111/36 68/104/36 59/106/36 -f 66/108/48 67/107/48 58/105/48 -f 64/103/49 65/102/49 66/108/49 -f 76/119/34 77/109/34 60/110/34 -f 68/104/50 69/111/50 70/113/50 -f 70/113/51 71/112/51 72/115/51 -f 72/146/52 73/116/52 74/118/52 -f 74/118/53 75/117/53 76/119/53 diff --git a/src/main/resources/assets/hbm/models/weapons/pch.obj b/src/main/resources/assets/hbm/models/weapons/pch.obj deleted file mode 100644 index e3634a298..000000000 --- a/src/main/resources/assets/hbm/models/weapons/pch.obj +++ /dev/null @@ -1,245 +0,0 @@ -# Blender v2.76 (sub 0) OBJ File: 'pch.blend' -# www.blender.org -o ponycum_Cylinder.003 -v 0.000000 -0.457474 -0.076488 -v 0.000000 0.498621 -0.076488 -v 0.063454 0.498621 -0.038244 -v 0.063454 -0.457474 -0.038244 -v 0.063454 0.498621 0.038244 -v 0.063454 -0.457474 0.038244 -v 0.000000 0.498621 0.076488 -v 0.000000 -0.457474 0.076488 -v -0.063454 0.498621 0.038244 -v -0.063454 -0.457474 0.038244 -v -0.063454 0.498621 -0.038244 -v -0.063454 -0.457474 -0.038244 -v 0.244563 0.705111 -0.261231 -v -0.244563 0.705111 -0.261231 -v -0.244563 0.821944 -0.260374 -v 0.244563 0.821944 -0.260374 -v 0.244661 0.821816 0.260308 -v -0.244661 0.821816 0.260308 -v -0.244661 0.704698 0.259606 -v 0.244661 0.704698 0.259606 -v 0.300312 0.880010 -0.277019 -v 0.300312 0.650163 -0.277880 -v 0.244563 0.705233 -0.277878 -v 0.244563 0.822066 -0.277021 -v -0.300312 0.880010 -0.277019 -v -0.300312 1.041927 -0.113884 -v 0.300312 1.041927 -0.113884 -v -0.300312 1.041066 0.115963 -v 0.300312 1.041066 0.115963 -v -0.300312 0.877932 0.277880 -v 0.300312 0.877931 0.277880 -v -0.300312 0.648084 0.277019 -v 0.300312 0.648084 0.277019 -v 0.244662 0.704449 0.277099 -v -0.244662 0.704449 0.277099 -v -0.300312 0.486167 0.113884 -v 0.300312 0.486167 0.113884 -v -0.300312 0.650163 -0.277880 -v -0.300312 0.487028 -0.115963 -v 0.300312 0.487028 -0.115963 -v -0.244662 0.821567 0.277801 -v -0.244662 0.704698 0.259606 -v -0.244662 0.821816 0.260308 -v 0.244662 0.821567 0.277801 -v 0.244662 0.821816 0.260308 -v 0.244662 0.704698 0.259606 -v -0.244563 0.705233 -0.277878 -v -0.244563 0.705111 -0.261231 -v 0.244563 0.705111 -0.261231 -v -0.244563 0.822066 -0.277021 -v 0.244563 0.821944 -0.260374 -v -0.244563 0.821944 -0.260374 -vt 0.625000 0.687500 -vt 0.625000 0.593750 -vt 1.000000 0.593750 -vt 0.625000 0.500000 -vt 1.000000 0.500000 -vt 1.000000 0.687500 -vt 0.500000 0.250000 -vt 0.437500 0.312500 -vt 0.437500 0.250000 -vt 0.687500 0.781250 -vt 1.000000 0.781250 -vt 1.000000 0.906250 -vt 0.687500 0.906250 -vt 0.468750 1.000000 -vt 0.375000 0.781250 -vt 0.437500 0.218750 -vt 0.500000 0.218750 -vt 0.718750 0.218750 -vt 0.781250 0.250000 -vt 0.781250 0.218750 -vt 1.000000 0.218750 -vt 0.718750 0.250000 -vt 1.000000 0.187500 -vt 0.718750 0.187500 -vt 0.781250 0.187500 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.500000 0.312500 -vt 0.468750 0.312500 -vt 0.906250 1.000000 -vt 0.781250 1.000000 -vt 0.781250 0.687500 -vt 0.906250 0.687500 -vt 0.468750 0.687500 -vt 0.593750 0.687500 -vt 0.593750 1.000000 -vt 0.375000 0.906250 -vt 1.000000 0.250000 -vt 0.437500 0.187500 -vt 0.437500 0.093750 -vt 1.000000 0.093750 -vt 1.000000 0.125000 -vt 1.000000 0.156250 -vt 0.437500 0.156250 -vt 1.000000 -0.000000 -vt 1.000000 0.031250 -vt 0.437500 0.031250 -vt 1.000000 0.062500 -vt 0.437500 0.062500 -vt 0.375000 0.875000 -vt 0.343750 0.843750 -vt 0.343750 0.781250 -vt 0.000000 0.750000 -vt 0.000000 0.625000 -vt 0.375000 0.625000 -vt 0.000000 0.500000 -vt 0.375000 0.500000 -vt 0.000000 0.375000 -vt -0.000000 0.250000 -vt 0.375000 0.250000 -vt 0.343750 0.281250 -vt -0.000000 0.125000 -vt 0.375000 0.125000 -vt 0.000000 0.000000 -vt 0.375000 0.000000 -vt 0.000203 0.999797 -vt 0.000000 0.875000 -vt 0.375000 0.375000 -vt 0.343750 0.343750 -vt 0.031250 0.281250 -vt 0.031250 0.343750 -vt 0.375000 0.750000 -vt 0.031250 0.781250 -vt 0.031250 0.843750 -vt 0.437500 0.125000 -vt 0.437500 0.000000 -vt 0.375000 1.000000 -vn 0.000000 0.007300 -1.000000 -vn 0.000000 -0.006000 1.000000 -vn 0.000000 -1.000000 0.000000 -vn -1.000000 -0.000000 0.000000 -vn 1.000000 -0.000000 0.000000 -vn 0.000000 -0.999900 -0.014300 -vn 0.000000 0.999900 0.014300 -vn 0.000000 1.000000 0.007300 -vn -0.000000 -1.000000 -0.007300 -vn 0.000000 0.000000 -1.000000 -vn 0.870700 0.000000 -0.491800 -vn 0.870700 -0.000000 0.491800 -vn -0.000000 -0.000000 1.000000 -vn -0.870700 -0.000000 0.491800 -vn -0.870700 0.000000 -0.491800 -vn 0.000800 -0.379600 -0.925200 -vn 0.003600 0.003700 -1.000000 -vn -0.001200 0.002100 -1.000000 -vn 0.001000 0.385300 -0.922800 -vn 0.000000 0.925300 -0.379200 -vn 0.000000 0.922400 0.386100 -vn -0.000500 0.379500 0.925200 -vn 0.000600 -0.385600 0.922700 -vn -0.000600 -0.385600 0.922700 -vn -0.000700 -0.002700 1.000000 -vn 0.000000 -0.925300 0.379200 -vn 0.000000 -0.922400 -0.386100 -vn -0.000800 -0.379600 -0.925200 -vn 0.000500 0.379500 0.925200 -vn 0.002300 -0.003700 1.000000 -vn 0.000700 -0.002700 1.000000 -vn -0.002300 -0.003700 1.000000 -vn -0.001000 0.385300 -0.922800 -vn 0.001200 0.002100 -1.000000 -vn -0.003600 0.003700 -1.000000 -s off -f 14/1/1 15/2/1 16/3/1 -f 18/2/2 19/4/2 20/5/2 -f 13/6/1 14/1/1 16/3/1 -f 17/3/2 18/2/2 20/5/2 -f 4/7/3 10/8/3 12/9/3 -f 36/10/4 28/11/4 26/12/4 -f 29/13/5 33/14/5 40/15/5 -f 41/7/5 35/9/5 42/16/5 -f 41/7/6 43/17/6 45/18/6 -f 34/19/7 46/20/7 42/21/7 -f 44/22/4 45/18/4 46/20/4 -f 47/23/8 48/21/8 49/20/8 -f 24/24/4 23/25/4 49/20/4 -f 24/24/9 51/18/9 52/17/9 -f 50/26/5 52/17/5 48/16/5 -f 12/9/3 1/27/3 4/7/3 -f 4/7/3 6/28/3 10/8/3 -f 8/29/3 10/8/3 6/28/3 -f 26/12/4 25/30/4 38/31/4 -f 38/31/4 39/13/4 26/12/4 -f 36/10/4 32/32/4 30/33/4 -f 30/33/4 28/11/4 36/10/4 -f 26/12/4 39/13/4 36/10/4 -f 40/15/5 22/34/5 29/13/5 -f 21/35/5 27/10/5 29/13/5 -f 29/13/5 31/36/5 33/14/5 -f 33/14/5 37/37/5 40/15/5 -f 22/34/5 21/35/5 29/13/5 -f 43/17/5 41/7/5 42/16/5 -f 44/22/6 41/7/6 45/18/6 -f 35/38/7 34/19/7 42/21/7 -f 34/19/4 44/22/4 46/20/4 -f 23/25/8 47/23/8 49/20/8 -f 51/18/4 24/24/4 49/20/4 -f 50/26/9 24/24/9 52/17/9 -f 47/39/5 50/26/5 48/16/5 -s 1 -f 1/40/10 2/41/10 3/42/11 -f 3/42/11 5/43/12 6/44/12 -f 5/43/12 7/23/13 8/39/13 -f 7/45/13 9/46/14 10/47/14 -f 9/46/14 11/48/15 12/49/15 -f 11/48/15 2/41/10 1/40/10 -f 22/50/16 23/51/17 24/52/18 -f 25/53/19 26/54/20 27/55/20 -f 26/54/20 28/56/21 29/57/21 -f 29/57/21 28/56/21 30/58/22 -f 32/59/23 33/60/24 34/61/25 -f 32/59/23 36/62/26 37/63/26 -f 36/62/26 39/64/27 40/65/27 -f 39/66/27 38/67/28 22/50/16 -f 31/68/29 44/69/30 34/61/25 -f 30/58/22 32/59/23 35/70/31 -f 30/58/22 41/71/32 44/69/30 -f 21/72/33 24/52/18 50/73/34 -f 38/67/28 25/53/19 50/73/34 -f 22/50/16 38/67/28 47/74/35 -f 4/75/11 1/40/10 3/42/11 -f 4/75/11 3/42/11 6/44/12 -f 6/44/12 5/43/12 8/39/13 -f 8/76/13 7/45/13 10/47/14 -f 10/47/14 9/46/14 12/49/15 -f 12/49/15 11/48/15 1/40/10 -f 21/72/33 22/50/16 24/52/18 -f 21/72/33 25/53/19 27/55/20 -f 27/55/20 26/54/20 29/57/21 -f 31/68/29 29/57/21 30/58/22 -f 35/70/31 32/59/23 34/61/25 -f 33/60/24 32/59/23 37/63/26 -f 37/63/26 36/62/26 40/65/27 -f 40/77/27 39/66/27 22/50/16 -f 33/60/24 31/68/29 34/61/25 -f 41/71/32 30/58/22 35/70/31 -f 31/68/29 30/58/22 44/69/30 -f 25/53/19 21/72/33 50/73/34 -f 47/74/35 38/67/28 50/73/34 -f 23/51/17 22/50/16 47/74/35 diff --git a/src/main/resources/assets/hbm/shaders/test_shader.frag b/src/main/resources/assets/hbm/shaders/test_shader.frag deleted file mode 100644 index 2e6f3ab0b..000000000 --- a/src/main/resources/assets/hbm/shaders/test_shader.frag +++ /dev/null @@ -1,25 +0,0 @@ -#version 330 compatibility - -in vec2 texCoord; -in vec2 lightCoord; -in vec4 color; -in vec3 lighting; -out vec4 FragColor; - -uniform sampler2D texture; -uniform sampler2D lightmap; - -void main(){ - vec4 center = texture2D(DiffuseSampler, texCoord); - vec4 up = texture2D(DiffuseSampler, texCoord + vec2( 0.0, -oneTexel.y)); - vec4 down = texture2D(DiffuseSampler, texCoord + vec2( oneTexel.x, 0.0)); - vec4 left = texture2D(DiffuseSampler, texCoord + vec2(-oneTexel.x, 0.0)); - vec4 right = texture2D(DiffuseSampler, texCoord + vec2( 0.0, oneTexel.y)); - vec4 uDiff = center - up; - vec4 dDiff = center - down; - vec4 lDiff = center - left; - vec4 rDiff = center - right; - vec4 sum = uDiff + dDiff + lDiff + rDiff; - vec3 clamped = clamp(center.rgb - sum.rgb, 0.0, 1.0); - gl_FragColor = vec4(clamped, center.a); -} diff --git a/src/main/resources/assets/hbm/shaders/test_shader.vert b/src/main/resources/assets/hbm/shaders/test_shader.vert deleted file mode 100644 index 29c5d6a14..000000000 --- a/src/main/resources/assets/hbm/shaders/test_shader.vert +++ /dev/null @@ -1,26 +0,0 @@ -#version 330 compatibility - -out vec2 texCoord; -out vec2 lightCoord; -out vec4 color; -out vec3 lighting; - -void main(){ - gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; - texCoord = (gl_TextureMatrix[0] * gl_MultiTexCoord0).st; - lightCoord = (gl_TextureMatrix[1] * gl_MultiTexCoord1).st; - color = gl_Color; - - vec3 totalLighting = vec3(gl_LightModel.ambient) * vec3(gl_FrontMaterial.emission); - vec3 normal = (gl_NormalMatrix * gl_Normal).xyz; - vec4 difftot = vec4(0.0F); - - for (int i = 0; i < gl_MaxLights; i ++){ - - vec4 diff = gl_FrontLightProduct[i].diffuse * max(dot(normal,gl_LightSource[i].position.xyz), 0.0f); - diff = clamp(diff, 0.0F, 1.0F); - - difftot += diff; - } - lighting = clamp((difftot + gl_LightModel.ambient).rgb, 0.0F, 1.0F); -} diff --git a/src/main/resources/assets/hbm/sounds/clap.ogg b/src/main/resources/assets/hbm/sounds/clap.ogg deleted file mode 100644 index a42db9654..000000000 Binary files a/src/main/resources/assets/hbm/sounds/clap.ogg and /dev/null differ diff --git a/src/main/resources/assets/hbm/sounds/jeff.ogg b/src/main/resources/assets/hbm/sounds/jeff.ogg deleted file mode 100644 index 1c251fc42..000000000 Binary files a/src/main/resources/assets/hbm/sounds/jeff.ogg and /dev/null differ diff --git a/src/main/resources/assets/hbm/sounds/mug.ogg b/src/main/resources/assets/hbm/sounds/mug.ogg deleted file mode 100644 index c7279c971..000000000 Binary files a/src/main/resources/assets/hbm/sounds/mug.ogg and /dev/null differ diff --git a/src/main/resources/assets/hbm/sounds/sample.ogg b/src/main/resources/assets/hbm/sounds/sample.ogg deleted file mode 100644 index 30cebf4cb..000000000 Binary files a/src/main/resources/assets/hbm/sounds/sample.ogg and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/armor/tail_peep.png b/src/main/resources/assets/hbm/textures/armor/tail_peep.png new file mode 100644 index 000000000..ae222d9f4 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/armor/tail_peep.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper.png index 258a60867..7c5cd06f8 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_curve_bl.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_curve_bl.png index 1b6fdcb1a..992f81da1 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_curve_bl.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_curve_bl.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_curve_br.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_curve_br.png index a6d884bee..e0e3f2d87 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_curve_br.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_curve_br.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_curve_tl.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_curve_tl.png index 9ce5b3466..2424e7f15 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_curve_tl.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_curve_tl.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_curve_tr.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_curve_tr.png index d89bd1753..cb14afd5e 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_curve_tr.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_curve_tr.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_end.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_end.png index ed3dabe63..e93b0eeea 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_end.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_end.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction.png deleted file mode 100644 index 011c1e47d..000000000 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction_0.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction_0.png new file mode 100644 index 000000000..ec1fc103c Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction_0.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction_1.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction_1.png new file mode 100644 index 000000000..c9012efbd Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction_1.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction_2.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction_2.png new file mode 100644 index 000000000..171b3c0b4 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction_2.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction_3.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction_3.png new file mode 100644 index 000000000..02c08f0fc Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction_3.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction_4.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction_4.png new file mode 100644 index 000000000..6d74263ec Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_junction_4.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_straight.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_straight.png index 1c413b9dc..21c9779b8 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_straight.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_copper_straight.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust.png index ab1816ba5..b35129b64 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_curve_bl.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_curve_bl.png index 48dc1e6b8..24d68d1e6 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_curve_bl.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_curve_bl.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_curve_br.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_curve_br.png index 51129d041..a3326e99b 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_curve_br.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_curve_br.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_curve_tl.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_curve_tl.png index 6a7379597..f309e8de5 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_curve_tl.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_curve_tl.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_curve_tr.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_curve_tr.png index 846ec559e..dfd0747a0 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_curve_tr.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_curve_tr.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_end.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_end.png index 2065be57b..9d954e1c7 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_end.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_end.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_junction_0.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_junction_0.png new file mode 100644 index 000000000..62714bdbb Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_junction_0.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_junction_1.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_junction_1.png new file mode 100644 index 000000000..718ff2d9e Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_junction_1.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_junction_2.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_junction_2.png new file mode 100644 index 000000000..5422296f6 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_junction_2.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_junction_3.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_junction_3.png new file mode 100644 index 000000000..d8814f63e Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_junction_3.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_junction_4.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_junction_4.png new file mode 100644 index 000000000..7f1ba80d8 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_junction_4.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_straight.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_straight.png index f6a5ed43e..f76dd0378 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_straight.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_exhaust_straight.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver.png index 63002d448..2e552086b 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_curve_bl.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_curve_bl.png index cbfc0f897..3f9efab8e 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_curve_bl.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_curve_bl.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_curve_br.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_curve_br.png index a18dd32fc..ecb91be52 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_curve_br.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_curve_br.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_curve_tl.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_curve_tl.png index 304d273ed..9136999aa 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_curve_tl.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_curve_tl.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_curve_tr.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_curve_tr.png index 2db735758..704acd60c 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_curve_tr.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_curve_tr.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_end.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_end.png index b0cb42c95..24284ee8f 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_end.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_end.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction.png deleted file mode 100644 index 2ce589063..000000000 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction_0.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction_0.png new file mode 100644 index 000000000..b519a48da Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction_0.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction_1.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction_1.png new file mode 100644 index 000000000..265364ee7 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction_1.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction_2.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction_2.png new file mode 100644 index 000000000..86b1aa4fc Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction_2.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction_3.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction_3.png new file mode 100644 index 000000000..7916c63a6 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction_3.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction_4.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction_4.png new file mode 100644 index 000000000..3e6b7e9f2 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_junction_4.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_straight.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_straight.png index d8a5699bf..d051e9354 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_straight.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_silver_straight.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_white.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_white.png new file mode 100644 index 000000000..391bc0a0d Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_white.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_curve_bl.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_curve_bl.png index 586ca4d1a..94cfc0ecb 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_curve_bl.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_curve_bl.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_curve_br.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_curve_br.png index 1883702b0..b2c75f853 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_curve_br.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_curve_br.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_curve_tl.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_curve_tl.png index e79b0a583..2684f8677 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_curve_tl.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_curve_tl.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_curve_tr.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_curve_tr.png index 1732c7916..dd96f902b 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_curve_tr.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_curve_tr.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_end.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_end.png index 484764a50..3eebf73c6 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_end.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_end.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction.png deleted file mode 100644 index 36e78e712..000000000 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction_0.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction_0.png new file mode 100644 index 000000000..35019f1d8 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction_0.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction_1.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction_1.png new file mode 100644 index 000000000..3dcf36521 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction_1.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction_2.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction_2.png new file mode 100644 index 000000000..2ac37ec44 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction_2.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction_3.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction_3.png new file mode 100644 index 000000000..c188b753f Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction_3.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction_4.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction_4.png new file mode 100644 index 000000000..080929179 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_junction_4.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_straight.png b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_straight.png index 636913932..a76af87a1 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/boxduct_white_straight.png and b/src/main/resources/assets/hbm/textures/blocks/boxduct_white_straight.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/fluids/vitriol.png b/src/main/resources/assets/hbm/textures/gui/fluids/vitriol.png new file mode 100644 index 000000000..c716b6154 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/gui/fluids/vitriol.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/machine/gui_cyclotron.png b/src/main/resources/assets/hbm/textures/gui/machine/gui_cyclotron.png index 13a5d33bb..9da387278 100644 Binary files a/src/main/resources/assets/hbm/textures/gui/machine/gui_cyclotron.png and b/src/main/resources/assets/hbm/textures/gui/machine/gui_cyclotron.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/processing/gui_ore_slopper.png b/src/main/resources/assets/hbm/textures/gui/processing/gui_ore_slopper.png new file mode 100644 index 000000000..50b928eb7 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/gui/processing/gui_ore_slopper.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore.png new file mode 100644 index 000000000..1de4e8d85 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_actinide.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_actinide.png new file mode 100644 index 000000000..dd3613795 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_actinide.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_crystal.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_crystal.png new file mode 100644 index 000000000..dd3613795 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_crystal.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_heavy.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_heavy.png new file mode 100644 index 000000000..dd3613795 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_heavy.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_light.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_light.png new file mode 100644 index 000000000..dd3613795 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_light.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_nonmetal.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_nonmetal.png new file mode 100644 index 000000000..dd3613795 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_nonmetal.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_rare.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_rare.png new file mode 100644 index 000000000..dd3613795 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_base_rare.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_actinide.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_actinide.png new file mode 100644 index 000000000..0b6767953 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_actinide.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_crystal.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_crystal.png new file mode 100644 index 000000000..0b6767953 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_crystal.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_heavy.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_heavy.png new file mode 100644 index 000000000..0b6767953 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_heavy.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_light.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_light.png new file mode 100644 index 000000000..0b6767953 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_light.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_nonmetal.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_nonmetal.png new file mode 100644 index 000000000..0b6767953 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_nonmetal.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_rare.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_rare.png new file mode 100644 index 000000000..0b6767953 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_crumbs_rare.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_final.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_final.png new file mode 100644 index 000000000..24ac9d3c0 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_final.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_new.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_new.png new file mode 100644 index 000000000..269bb7039 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_new.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_new_base.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_new_base.png new file mode 100644 index 000000000..8da371d87 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_new_base.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_new_blank.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_new_blank.png new file mode 100644 index 000000000..f809d7adb Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_new_blank.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_actinide.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_actinide.png new file mode 100644 index 000000000..fb90a3472 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_actinide.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_crystal.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_crystal.png new file mode 100644 index 000000000..86e05f1be Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_crystal.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_heavy.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_heavy.png new file mode 100644 index 000000000..dbc073792 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_heavy.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_light.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_light.png new file mode 100644 index 000000000..7f796265a Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_light.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_nonmetal.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_nonmetal.png new file mode 100644 index 000000000..ae2489ea5 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_nonmetal.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_rare.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_rare.png new file mode 100644 index 000000000..fb90a3472 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_primary_rare.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_actinide.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_actinide.png new file mode 100644 index 000000000..bc9e58030 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_actinide.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_crystal.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_crystal.png new file mode 100644 index 000000000..43f08c3d9 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_crystal.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_heavy.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_heavy.png new file mode 100644 index 000000000..a580437b2 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_heavy.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_light.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_light.png new file mode 100644 index 000000000..288b49cd2 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_light.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_nonmetal.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_nonmetal.png new file mode 100644 index 000000000..1d0913dc6 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_nonmetal.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_rare.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_rare.png new file mode 100644 index 000000000..bc9e58030 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_rad_rare.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_actinide.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_actinide.png new file mode 100644 index 000000000..79b2a8687 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_actinide.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_crystal.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_crystal.png new file mode 100644 index 000000000..b6aad0884 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_crystal.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_heavy.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_heavy.png new file mode 100644 index 000000000..34d7c80e9 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_heavy.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_light.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_light.png new file mode 100644 index 000000000..745c40ab4 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_light.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_nonmetal.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_nonmetal.png new file mode 100644 index 000000000..b4f8bef82 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_nonmetal.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_rare.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_rare.png new file mode 100644 index 000000000..79b2a8687 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_solvent_rare.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_actinide.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_actinide.png new file mode 100644 index 000000000..ff99fd2b9 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_actinide.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_crystal.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_crystal.png new file mode 100644 index 000000000..d36c7234a Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_crystal.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_heavy.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_heavy.png new file mode 100644 index 000000000..e4df80773 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_heavy.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_light.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_light.png new file mode 100644 index 000000000..cd4fd8937 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_light.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_nonmetal.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_nonmetal.png new file mode 100644 index 000000000..1041858a5 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_nonmetal.png differ diff --git a/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_rare.png b/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_rare.png new file mode 100644 index 000000000..ff99fd2b9 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/bedrock_ore_sulfuric_rare.png differ diff --git a/src/main/resources/assets/hbm/textures/items/item_secret.canister b/src/main/resources/assets/hbm/textures/items/item_secret.canister.png similarity index 100% rename from src/main/resources/assets/hbm/textures/items/item_secret.canister rename to src/main/resources/assets/hbm/textures/items/item_secret.canister.png diff --git a/src/main/resources/assets/hbm/textures/items/item_secret.controller.png b/src/main/resources/assets/hbm/textures/items/item_secret.controller.png new file mode 100644 index 000000000..cb1095c9a Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/item_secret.controller.png differ diff --git a/src/main/resources/assets/hbm/textures/items/low_density_element.png b/src/main/resources/assets/hbm/textures/items/low_density_element.png new file mode 100644 index 000000000..5894636f0 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/low_density_element.png differ diff --git a/src/main/resources/assets/hbm/textures/items/neutron_reflector_old.png b/src/main/resources/assets/hbm/textures/items/neutron_reflector_old.png deleted file mode 100644 index 99d28929b..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/neutron_reflector_old.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/oil_canola.png b/src/main/resources/assets/hbm/textures/items/oil_canola.png deleted file mode 100644 index a8363032f..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/oil_canola.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/oil_crude.png b/src/main/resources/assets/hbm/textures/items/oil_crude.png deleted file mode 100644 index 9c922060a..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/oil_crude.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/oilcan_bitumen.png b/src/main/resources/assets/hbm/textures/items/oilcan_bitumen.png deleted file mode 100644 index 53b9537c7..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/oilcan_bitumen.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/oilcan_diesel.png b/src/main/resources/assets/hbm/textures/items/oilcan_diesel.png deleted file mode 100644 index 998d9cd92..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/oilcan_diesel.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/oilcan_heatingoil.png b/src/main/resources/assets/hbm/textures/items/oilcan_heatingoil.png deleted file mode 100644 index 8abf6d0ff..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/oilcan_heatingoil.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/oilcan_heavyoil.png b/src/main/resources/assets/hbm/textures/items/oilcan_heavyoil.png deleted file mode 100644 index 371de2421..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/oilcan_heavyoil.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/oilcan_kerosene.png b/src/main/resources/assets/hbm/textures/items/oilcan_kerosene.png deleted file mode 100644 index 3df5212ff..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/oilcan_kerosene.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/oilcan_lightoil.png b/src/main/resources/assets/hbm/textures/items/oilcan_lightoil.png deleted file mode 100644 index 90f74ec41..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/oilcan_lightoil.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/oilcan_lubricant.png b/src/main/resources/assets/hbm/textures/items/oilcan_lubricant.png deleted file mode 100644 index 9cee01513..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/oilcan_lubricant.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/oilcan_naphtha.png b/src/main/resources/assets/hbm/textures/items/oilcan_naphtha.png deleted file mode 100644 index 631a87058..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/oilcan_naphtha.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/oilcan_oil.png b/src/main/resources/assets/hbm/textures/items/oilcan_oil.png deleted file mode 100644 index 0cfbdc54f..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/oilcan_oil.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/oilcan_petroil.png b/src/main/resources/assets/hbm/textures/items/oilcan_petroil.png deleted file mode 100644 index d1d5f9d23..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/oilcan_petroil.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/oilcan_reclaimed.png b/src/main/resources/assets/hbm/textures/items/oilcan_reclaimed.png deleted file mode 100644 index 1f6a7db89..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/oilcan_reclaimed.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/oilcan_smear.png b/src/main/resources/assets/hbm/textures/items/oilcan_smear.png deleted file mode 100644 index 152145995..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/oilcan_smear.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/ore_density_scanner.png b/src/main/resources/assets/hbm/textures/items/ore_density_scanner.png new file mode 100644 index 000000000..c67517b88 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/ore_density_scanner.png differ diff --git a/src/main/resources/assets/hbm/textures/items/powder_template.png b/src/main/resources/assets/hbm/textures/items/powder_template.png deleted file mode 100644 index 71b8b07c5..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/powder_template.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/rubber_gloves.png b/src/main/resources/assets/hbm/textures/items/rubber_gloves.png deleted file mode 100644 index 2fd793fab..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/rubber_gloves.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/turret_cwis_ammo.png b/src/main/resources/assets/hbm/textures/items/turret_cwis_ammo.png deleted file mode 100644 index 77dd465d7..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/turret_cwis_ammo.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/turret_flamer_ammo.png b/src/main/resources/assets/hbm/textures/items/turret_flamer_ammo.png deleted file mode 100644 index 19c15cfe6..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/turret_flamer_ammo.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/turret_heavy_ammo.png b/src/main/resources/assets/hbm/textures/items/turret_heavy_ammo.png deleted file mode 100644 index 0fed1fdf7..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/turret_heavy_ammo.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/turret_light_ammo.png b/src/main/resources/assets/hbm/textures/items/turret_light_ammo.png deleted file mode 100644 index 13143457c..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/turret_light_ammo.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/turret_rocket_ammo.png b/src/main/resources/assets/hbm/textures/items/turret_rocket_ammo.png deleted file mode 100644 index e75662c45..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/turret_rocket_ammo.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/turret_spitfire_ammo.png b/src/main/resources/assets/hbm/textures/items/turret_spitfire_ammo.png deleted file mode 100644 index 76f824d57..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/turret_spitfire_ammo.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/turret_tau_ammo.png b/src/main/resources/assets/hbm/textures/items/turret_tau_ammo.png deleted file mode 100644 index 7a3d511d1..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/turret_tau_ammo.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/warhead_mirv_alt.png b/src/main/resources/assets/hbm/textures/items/warhead_mirv_alt.png deleted file mode 100644 index 9c01939b8..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/warhead_mirv_alt.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/warhead_mirvlet.png b/src/main/resources/assets/hbm/textures/items/warhead_mirvlet.png deleted file mode 100644 index 7630682da..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/warhead_mirvlet.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/warhead_thermo_endo_alt.png b/src/main/resources/assets/hbm/textures/items/warhead_thermo_endo_alt.png deleted file mode 100644 index e519298dc..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/warhead_thermo_endo_alt.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/warhead_thermo_exo_alt.png b/src/main/resources/assets/hbm/textures/items/warhead_thermo_exo_alt.png deleted file mode 100644 index b452b4c44..000000000 Binary files a/src/main/resources/assets/hbm/textures/items/warhead_thermo_exo_alt.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/items/wire_aluminium.png b/src/main/resources/assets/hbm/textures/items/wire_aluminium.png index e4c210ec1..a3ff6c135 100644 Binary files a/src/main/resources/assets/hbm/textures/items/wire_aluminium.png and b/src/main/resources/assets/hbm/textures/items/wire_aluminium.png differ diff --git a/src/main/resources/assets/hbm/textures/models/At4New.png b/src/main/resources/assets/hbm/textures/models/At4New.png deleted file mode 100644 index 893349770..000000000 Binary files a/src/main/resources/assets/hbm/textures/models/At4New.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/models/LilBoy2.png b/src/main/resources/assets/hbm/textures/models/LilBoy2.png deleted file mode 100644 index 0e0dd92c2..000000000 Binary files a/src/main/resources/assets/hbm/textures/models/LilBoy2.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/models/TestObj.png b/src/main/resources/assets/hbm/textures/models/TestObj.png deleted file mode 100644 index e4b7504dc..000000000 Binary files a/src/main/resources/assets/hbm/textures/models/TestObj.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/models/machines/ore_slopper.png b/src/main/resources/assets/hbm/textures/models/machines/ore_slopper.png new file mode 100644 index 000000000..caf80bcaa Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/machines/ore_slopper.png differ diff --git a/src/main/resources/assets/hbm/textures/models/mining_drill.png b/src/main/resources/assets/hbm/textures/models/mining_drill.png deleted file mode 100755 index c4c2f2c65..000000000 Binary files a/src/main/resources/assets/hbm/textures/models/mining_drill.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/models/press_body_2.png b/src/main/resources/assets/hbm/textures/models/press_body_2.png deleted file mode 100644 index b67125d1f..000000000 Binary files a/src/main/resources/assets/hbm/textures/models/press_body_2.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/models/press_body_alt.png b/src/main/resources/assets/hbm/textures/models/press_body_alt.png deleted file mode 100644 index 62c11e6d3..000000000 Binary files a/src/main/resources/assets/hbm/textures/models/press_body_alt.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/models/press_head_2.png b/src/main/resources/assets/hbm/textures/models/press_head_2.png deleted file mode 100644 index c40599a53..000000000 Binary files a/src/main/resources/assets/hbm/textures/models/press_head_2.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/models/press_head_new.png b/src/main/resources/assets/hbm/textures/models/press_head_new.png deleted file mode 100644 index d54d6c2e1..000000000 Binary files a/src/main/resources/assets/hbm/textures/models/press_head_new.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/models/radar_base.png b/src/main/resources/assets/hbm/textures/models/radar_base.png deleted file mode 100644 index e87d6bb2f..000000000 Binary files a/src/main/resources/assets/hbm/textures/models/radar_base.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/models/radar_head.png b/src/main/resources/assets/hbm/textures/models/radar_head.png deleted file mode 100644 index 5f5b752da..000000000 Binary files a/src/main/resources/assets/hbm/textures/models/radar_head.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/models/tank/tank_HOTBLOOD.png b/src/main/resources/assets/hbm/textures/models/tank/tank_BLOOD_HOT.png similarity index 100% rename from src/main/resources/assets/hbm/textures/models/tank/tank_HOTBLOOD.png rename to src/main/resources/assets/hbm/textures/models/tank/tank_BLOOD_HOT.png diff --git a/src/main/resources/assets/hbm/textures/models/tank/tank_VITRIOL.png b/src/main/resources/assets/hbm/textures/models/tank/tank_VITRIOL.png new file mode 100644 index 000000000..12dd41f20 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/tank/tank_VITRIOL.png differ diff --git a/src/main/resources/assets/hbm/textures/models/textureIGenRotor.png b/src/main/resources/assets/hbm/textures/models/textureIGenRotor.png deleted file mode 100644 index 4cf0c7ddf..000000000 Binary files a/src/main/resources/assets/hbm/textures/models/textureIGenRotor.png and /dev/null differ diff --git a/src/main/resources/assets/hbm/textures/models/weapons/lag.png b/src/main/resources/assets/hbm/textures/models/weapons/lag.png new file mode 100644 index 000000000..dc8665cf5 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/weapons/lag.png differ