diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index 9cb0fc988..acb2c44b5 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -68,6 +68,7 @@ public class ModBlocks { public static Block ore_daffergon; public static Block ore_verticium; public static Block ore_rare; + public static Block ore_cinnebar; public static Block ore_nether_coal; public static Block ore_nether_smoldering; @@ -103,6 +104,8 @@ public class ModBlocks { public static Block ore_gneiss_gas; public static Block stone_depth; + public static Block ore_depth_cinnebar; + public static Block ore_depth_zirconium; public static Block cluster_depth_iron; public static Block cluster_depth_titanium; public static Block cluster_depth_tungsten; @@ -176,6 +179,7 @@ public class ModBlocks { public static Block block_asbestos; public static Block block_cobalt; public static Block block_lithium; + public static Block block_zirconium; public static Block block_white_phosphorus; public static Block block_red_phosphorus; public static Block block_fallout; @@ -215,6 +219,7 @@ public class ModBlocks { public static Block gravel_obsidian; public static Block gravel_diamond; public static Block asphalt; + public static Block asphalt_light; public static Block reinforced_brick; public static Block reinforced_glass; @@ -231,6 +236,7 @@ public class ModBlocks { public static Block reinforced_stone; public static Block concrete_smooth; public static Block concrete; + public static Block concrete_asbestos; public static Block concrete_pillar; public static Block brick_concrete; public static Block brick_concrete_mossy; @@ -1070,6 +1076,8 @@ public class ModBlocks { ore_gneiss_gas = new BlockOre(Material.rock).setBlockName("ore_gneiss_gas").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_gas"); stone_depth = new BlockGeneric(Material.rock).setBlockName("stone_depth").setCreativeTab(MainRegistry.blockTab).setBlockUnbreakable().setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":stone_depth"); + ore_depth_cinnebar = new BlockOre(Material.rock).setBlockName("ore_depth_cinnebar").setCreativeTab(MainRegistry.blockTab).setBlockUnbreakable().setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_depth_cinnebar"); + ore_depth_zirconium = new BlockOre(Material.rock).setBlockName("ore_depth_zirconium").setCreativeTab(MainRegistry.blockTab).setBlockUnbreakable().setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_depth_zirconium"); cluster_depth_iron = new BlockOre(Material.rock).setBlockName("cluster_depth_iron").setCreativeTab(MainRegistry.blockTab).setBlockUnbreakable().setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cluster_depth_iron"); cluster_depth_titanium = new BlockOre(Material.rock).setBlockName("cluster_depth_titanium").setCreativeTab(MainRegistry.blockTab).setBlockUnbreakable().setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cluster_depth_titanium"); cluster_depth_tungsten = new BlockOre(Material.rock).setBlockName("cluster_depth_tungsten").setCreativeTab(MainRegistry.blockTab).setBlockUnbreakable().setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cluster_depth_tungsten"); @@ -1081,6 +1089,7 @@ public class ModBlocks { ore_daffergon = new BlockGeneric(Material.rock).setBlockName("ore_daffergon").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_daffergon"); ore_verticium = new BlockGeneric(Material.rock).setBlockName("ore_verticium").setCreativeTab(MainRegistry.blockTab).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_cinnebar = new BlockOre(Material.rock).setBlockName("ore_cinnebar").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_cinnebar"); ore_oil = new BlockOre(Material.rock).setBlockName("ore_oil").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_oil"); ore_oil_empty = new BlockGeneric(Material.rock).setBlockName("ore_oil_empty").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_oil_empty"); @@ -1143,6 +1152,7 @@ public class ModBlocks { block_asbestos = new BlockOutgas(Material.cloth, true, 5, true).addAsbestos().toBlock().setBlockName("block_asbestos").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeCloth).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_asbestos"); block_cobalt = new BlockGeneric(Material.iron).setBlockName("block_cobalt").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_cobalt"); block_lithium = new BlockLithium(Material.iron).addHydroReactivity().toBlock().setBlockName("block_lithium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_lithium"); + block_zirconium = new BlockGeneric(Material.iron).setBlockName("block_zirconium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_zirconium"); block_white_phosphorus = new BlockHazard(Material.rock).addFire(15).toBlock().setBlockName("block_white_phosphorus").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_white_phosphorus"); block_red_phosphorus = new BlockHazardFalling().addFire(15).toBlock().setStepSound(Block.soundTypeSand).setBlockName("block_red_phosphorus").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_red_phosphorus"); block_fallout = new BlockHazardFalling().addRadiation(ItemHazard.fo * ItemHazard.block).toBlock().setStepSound(Block.soundTypeGravel).setBlockName("block_fallout").setCreativeTab(MainRegistry.blockTab).setHardness(0.2F).setBlockTextureName(RefStrings.MODID + ":ash"); @@ -1182,6 +1192,7 @@ public class ModBlocks { gravel_obsidian = new BlockFalling(Material.iron).setBlockName("gravel_obsidian").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGravel).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":gravel_obsidian"); gravel_diamond = new BlockFalling(Material.sand).setBlockName("gravel_diamond").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGravel).setHardness(0.6F).setBlockTextureName(RefStrings.MODID + ":gravel_diamond"); asphalt = new BlockSpeedy(Material.rock, 1.15).setBlockName("asphalt").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":asphalt"); + asphalt_light = new BlockSpeedy(Material.rock, 1.15).setBlockName("asphalt_light").setCreativeTab(MainRegistry.blockTab).setLightLevel(1F).setHardness(15.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":asphalt_light"); reinforced_brick = new BlockGeneric(Material.rock).setBlockName("reinforced_brick").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(8000.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_brick"); reinforced_glass = new BlockNTMGlass(0, RefStrings.MODID + ":reinforced_glass", Material.rock).setBlockName("reinforced_glass").setCreativeTab(MainRegistry.blockTab).setLightOpacity(0).setHardness(15.0F).setResistance(200.0F); @@ -1198,6 +1209,7 @@ public class ModBlocks { reinforced_stone = new BlockGeneric(Material.rock).setBlockName("reinforced_stone").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(3000.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_stone"); concrete_smooth = new BlockGeneric(Material.rock).setBlockName("concrete_smooth").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(4000.0F).setBlockTextureName(RefStrings.MODID + ":concrete"); concrete = new BlockGeneric(Material.rock).setBlockName("concrete").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(4000.0F).setBlockTextureName(RefStrings.MODID + ":concrete_tile"); + concrete_asbestos = new BlockGeneric(Material.rock).setBlockName("concrete_asbestos").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(4000.0F).setBlockTextureName(RefStrings.MODID + ":concrete_asbestos"); concrete_pillar = new BlockRotatablePillar(Material.rock, RefStrings.MODID + ":concrete_pillar_top").setBlockName("concrete_pillar").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(4000.0F).setBlockTextureName(RefStrings.MODID + ":concrete_pillar_side"); brick_concrete = new BlockGeneric(Material.rock).setBlockName("brick_concrete").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":brick_concrete"); brick_concrete_mossy = new BlockGeneric(Material.rock).setBlockName("brick_concrete_mossy").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":brick_concrete_mossy"); @@ -1835,6 +1847,7 @@ public class ModBlocks { 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_cinnebar, ore_cinnebar.getUnlocalizedName()); //Stone clusters GameRegistry.registerBlock(cluster_iron, ItemBlockCluster.class, cluster_iron.getUnlocalizedName()); @@ -1881,6 +1894,8 @@ public class ModBlocks { GameRegistry.registerBlock(ore_gneiss_gas, ore_gneiss_gas.getUnlocalizedName()); //Depth ores + GameRegistry.registerBlock(ore_depth_cinnebar, ItemBlockDepth.class, ore_depth_cinnebar.getUnlocalizedName()); + GameRegistry.registerBlock(ore_depth_zirconium, ItemBlockDepth.class, ore_depth_zirconium.getUnlocalizedName()); GameRegistry.registerBlock(cluster_depth_iron, ItemBlockDepth.class, cluster_depth_iron.getUnlocalizedName()); GameRegistry.registerBlock(cluster_depth_titanium, ItemBlockDepth.class, cluster_depth_titanium.getUnlocalizedName()); GameRegistry.registerBlock(cluster_depth_tungsten, ItemBlockDepth.class, cluster_depth_tungsten.getUnlocalizedName()); @@ -1923,6 +1938,7 @@ public class ModBlocks { GameRegistry.registerBlock(block_steel, block_steel.getUnlocalizedName()); GameRegistry.registerBlock(block_lead, block_lead.getUnlocalizedName()); GameRegistry.registerBlock(block_lithium, ItemBlockHazard.class, block_lithium.getUnlocalizedName()); + GameRegistry.registerBlock(block_zirconium, block_zirconium.getUnlocalizedName()); GameRegistry.registerBlock(block_white_phosphorus, ItemBlockHazard.class, block_white_phosphorus.getUnlocalizedName()); GameRegistry.registerBlock(block_red_phosphorus, ItemBlockHazard.class, block_red_phosphorus.getUnlocalizedName()); GameRegistry.registerBlock(block_yellowcake, ItemBlockHazard.class, block_yellowcake.getUnlocalizedName()); @@ -1996,6 +2012,7 @@ public class ModBlocks { //Reinforced Blocks GameRegistry.registerBlock(asphalt, asphalt.getUnlocalizedName()); + GameRegistry.registerBlock(asphalt_light, asphalt_light.getUnlocalizedName()); GameRegistry.registerBlock(reinforced_brick, reinforced_brick.getUnlocalizedName()); GameRegistry.registerBlock(reinforced_glass, reinforced_glass.getUnlocalizedName()); GameRegistry.registerBlock(reinforced_light, reinforced_light.getUnlocalizedName()); @@ -2007,6 +2024,7 @@ public class ModBlocks { GameRegistry.registerBlock(reinforced_stone, reinforced_stone.getUnlocalizedName()); GameRegistry.registerBlock(concrete_smooth, concrete_smooth.getUnlocalizedName()); GameRegistry.registerBlock(concrete, concrete.getUnlocalizedName()); + GameRegistry.registerBlock(concrete_asbestos, concrete_asbestos.getUnlocalizedName()); GameRegistry.registerBlock(concrete_pillar, concrete_pillar.getUnlocalizedName()); GameRegistry.registerBlock(brick_concrete, brick_concrete.getUnlocalizedName()); GameRegistry.registerBlock(brick_concrete_mossy, brick_concrete_mossy.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/blocks/generic/BlockOre.java b/src/main/java/com/hbm/blocks/generic/BlockOre.java index 39ef8e12c..b0843b2f7 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockOre.java +++ b/src/main/java/com/hbm/blocks/generic/BlockOre.java @@ -155,7 +155,7 @@ public class BlockOre extends Block { if(this == ModBlocks.ore_rare || this == ModBlocks.ore_gneiss_rare) { switch(rand.nextInt(6)) { case 0: - return ModItems.fragment_actinium; + return ModItems.fragment_boron; case 1: return ModItems.fragment_cerium; case 2: @@ -207,29 +207,41 @@ public class BlockOre extends Block { if(this == ModBlocks.cluster_depth_tungsten) { return ModItems.crystal_tungsten; } + if(this == ModBlocks.ore_cinnebar || this == ModBlocks.ore_depth_cinnebar) { + return ModItems.cinnebar; + } + if(this == ModBlocks.ore_depth_zirconium) { + return ModItems.nugget_zirconium; + } return Item.getItemFromBlock(this); } @Override - public int quantityDropped(Random p_149745_1_) { + public int quantityDropped(Random rand) { if(this == ModBlocks.ore_fluorite) { - return 2 + p_149745_1_.nextInt(3); + return 2 + rand.nextInt(3); } if(this == ModBlocks.ore_niter) { - return 2 + p_149745_1_.nextInt(3); + return 2 + rand.nextInt(3); } if(this == ModBlocks.ore_sulfur || this == ModBlocks.ore_nether_sulfur || this == ModBlocks.ore_meteor_sulfur) { - return 2 + p_149745_1_.nextInt(3); + return 2 + rand.nextInt(3); } if(this == ModBlocks.ore_rare || this == ModBlocks.ore_gneiss_rare) { - return 4 + p_149745_1_.nextInt(8); + return 4 + rand.nextInt(8); } if(this == ModBlocks.block_meteor_broken) { - return 1 + p_149745_1_.nextInt(3); + return 1 + rand.nextInt(3); } if(this == ModBlocks.block_meteor_treasure) { - return 1 + p_149745_1_.nextInt(3); + return 1 + rand.nextInt(3); + } + if(this == ModBlocks.ore_depth_cinnebar) { + return 2 + rand.nextInt(3); + } + if(this == ModBlocks.ore_depth_zirconium) { + return 2 + rand.nextInt(2); } return 1; diff --git a/src/main/java/com/hbm/config/WorldConfig.java b/src/main/java/com/hbm/config/WorldConfig.java index 61930b4d2..6cb71e64f 100644 --- a/src/main/java/com/hbm/config/WorldConfig.java +++ b/src/main/java/com/hbm/config/WorldConfig.java @@ -20,6 +20,7 @@ public class WorldConfig { public static int asbestosSpawn = 4; public static int rareSpawn = 6; public static int lithiumSpawn = 6; + public static int cinnebarSpawn = 2; public static int oilcoalSpawn = 128; public static int gassshaleSpawn = 5; public static int gasbubbleSpawn = 64; @@ -89,6 +90,7 @@ public class WorldConfig { oilcoalSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.15_oilCoalSpawnRate", "Spawns an oily coal vein every nTH chunk", 128); gassshaleSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.16_gasShaleSpawnRate", "Amount of oil shale veins per chunk", 5); gasbubbleSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.17_gasBubbleSpawnRate", "Spawns a gas bubble every nTH chunk", 64); + cinnebarSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.18_cinnebarSpawnRate", "Amount of cinnebar ore veins per chunk", 2); ironClusterSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.C00_ironClusterSpawn", "Amount of iron cluster veins per chunk", 4); titaniumClusterSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.C01_titaniumClusterSpawn", "Amount of titanium cluster veins per chunk", 2); diff --git a/src/main/java/com/hbm/crafting/MineralRecipes.java b/src/main/java/com/hbm/crafting/MineralRecipes.java index 62dbf90d3..d127501dc 100644 --- a/src/main/java/com/hbm/crafting/MineralRecipes.java +++ b/src/main/java/com/hbm/crafting/MineralRecipes.java @@ -26,6 +26,11 @@ public class MineralRecipes { RecipesCommon.add9To1(ModItems.ingot_boron, ModBlocks.block_boron); RecipesCommon.add1To9(ModBlocks.block_boron, ModItems.ingot_boron); + RecipesCommon.add9To1(ModItems.powder_boron_tiny, ModItems.powder_boron); + RecipesCommon.add1To9(ModItems.powder_boron, ModItems.powder_boron_tiny); + + RecipesCommon.add9To1(ModItems.ingot_zirconium, ModBlocks.block_zirconium); + RecipesCommon.add1To9(ModBlocks.block_zirconium, ModItems.ingot_zirconium); RecipesCommon.add9To1(ModItems.nugget_zirconium, ModItems.ingot_zirconium); RecipesCommon.add1To9(ModItems.ingot_zirconium, ModItems.nugget_zirconium); @@ -107,6 +112,8 @@ public class MineralRecipes { GameRegistry.addShapelessRecipe(new ItemStack(ModItems.billet_schrabidium_fuel, 3), new Object[] { ModItems.billet_schrabidium, ModItems.billet_neptunium, ModItems.nugget_beryllium, ModItems.nugget_beryllium, ModItems.nugget_beryllium, ModItems.nugget_beryllium, ModItems.nugget_beryllium, ModItems.nugget_beryllium }); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.billet_schrabidium_fuel, 1), new Object[] { ModItems.nugget_schrabidium, ModItems.nugget_schrabidium, "nuggetNeptunium237", "nuggetNeptunium237", ModItems.nugget_beryllium, ModItems.nugget_beryllium })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.billet_schrabidium_fuel, 1), new Object[] { ModItems.nugget_schrabidium, ModItems.nugget_schrabidium, "tinyNp237", "tinyNp237", ModItems.nugget_beryllium, ModItems.nugget_beryllium })); + GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.billet_po210be, 1), new Object[] { "nuggetPolonium", "nuggetPolonium", "nuggetPolonium", ModItems.nugget_beryllium, ModItems.nugget_beryllium, ModItems.nugget_beryllium })); + GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.billet_pu238be, 1), new Object[] { "nuggetPlutonium238", "nuggetPlutonium238", "nuggetPlutonium238", ModItems.nugget_beryllium, ModItems.nugget_beryllium, ModItems.nugget_beryllium })); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ingot_uranium, 2), new Object[] { ModItems.billet_uranium, ModItems.billet_uranium, ModItems.billet_uranium }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ingot_u233, 2), new Object[] { ModItems.billet_u233, ModItems.billet_u233, ModItems.billet_u233 }); diff --git a/src/main/java/com/hbm/crafting/PowderRecipes.java b/src/main/java/com/hbm/crafting/PowderRecipes.java index 27c7f5c1a..b0ee2100d 100644 --- a/src/main/java/com/hbm/crafting/PowderRecipes.java +++ b/src/main/java/com/hbm/crafting/PowderRecipes.java @@ -33,8 +33,8 @@ public class PowderRecipes { GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_semtex_mix, 1), new Object[] { ModItems.solid_fuel, ModItems.ballistite, "dustSaltpeter" })); //Desh - GameRegistry.addShapelessRecipe(new ItemStack(ModItems.powder_desh_mix, 1), new Object[] { ModItems.powder_actinium_tiny, ModItems.powder_actinium_tiny, ModItems.powder_lanthanium_tiny, ModItems.powder_lanthanium_tiny, ModItems.powder_cerium_tiny, ModItems.powder_cobalt_tiny, ModItems.powder_lithium_tiny, ModItems.powder_neodymium_tiny, ModItems.powder_niobium_tiny }); - GameRegistry.addShapelessRecipe(new ItemStack(ModItems.powder_desh_mix, 9), new Object[] { ModItems.powder_actinium, ModItems.powder_actinium, ModItems.powder_lanthanium, ModItems.powder_lanthanium, ModItems.powder_cerium, ModItems.powder_cobalt, ModItems.powder_lithium, ModItems.powder_neodymium, ModItems.powder_niobium }); + GameRegistry.addShapelessRecipe(new ItemStack(ModItems.powder_desh_mix, 1), new Object[] { ModItems.powder_boron_tiny, ModItems.powder_boron_tiny, ModItems.powder_lanthanium_tiny, ModItems.powder_lanthanium_tiny, ModItems.powder_cerium_tiny, ModItems.powder_cobalt_tiny, ModItems.powder_lithium_tiny, ModItems.powder_neodymium_tiny, ModItems.powder_niobium_tiny }); + GameRegistry.addShapelessRecipe(new ItemStack(ModItems.powder_desh_mix, 9), new Object[] { ModItems.powder_boron, ModItems.powder_boron, ModItems.powder_lanthanium, ModItems.powder_lanthanium, ModItems.powder_cerium, ModItems.powder_cobalt, ModItems.powder_lithium, ModItems.powder_neodymium, ModItems.powder_niobium }); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_desh_ready, 1), new Object[] { ModItems.powder_desh_mix, ModItems.nugget_mercury, ModItems.nugget_mercury, "dustCoal" })); //Metal powders diff --git a/src/main/java/com/hbm/crafting/RecipesCommon.java b/src/main/java/com/hbm/crafting/RecipesCommon.java index dce0db141..8f18bd67e 100644 --- a/src/main/java/com/hbm/crafting/RecipesCommon.java +++ b/src/main/java/com/hbm/crafting/RecipesCommon.java @@ -101,6 +101,11 @@ public class RecipesCommon { GameRegistry.addShapelessRecipe(new ItemStack(out), new Object[] { ModItems.rod_quad_empty, billet, billet, billet, billet }); GameRegistry.addShapelessRecipe(new ItemStack(billet, 4), new Object[] { out }); } + + //Fill rods with 6 nuggets + public static void addRBMKRod(Item billet, Item out) { + GameRegistry.addShapelessRecipe(new ItemStack(out), new Object[] { ModItems.rbmk_fuel_empty, billet, billet, billet, billet, billet, billet, billet, billet }); + } //Sword public static void addSword(Item ingot, Item sword) { diff --git a/src/main/java/com/hbm/crafting/RodRecipes.java b/src/main/java/com/hbm/crafting/RodRecipes.java index a47b49fb8..fcf0bea46 100644 --- a/src/main/java/com/hbm/crafting/RodRecipes.java +++ b/src/main/java/com/hbm/crafting/RodRecipes.java @@ -161,7 +161,21 @@ public class RodRecipes { RecipesCommon.addQuadRodBillet(ModItems.billet_plutonium_fuel, ModItems.rod_quad_plutonium_fuel); RecipesCommon.addQuadRodBillet(ModItems.billet_mox_fuel, ModItems.rod_quad_mox_fuel); RecipesCommon.addQuadRodBillet(ModItems.billet_schrabidium_fuel, ModItems.rod_quad_schrabidium_fuel); - + + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.rbmk_fuel_empty, 1), new Object[] { "ZRZ", "Z Z", "ZRZ", 'Z', "ingotZirconium", 'R', ModItems.rod_quad_empty })); + RecipesCommon.addRBMKRod(ModItems.billet_uranium_fuel, ModItems.rbmk_fuel_meu); + RecipesCommon.addRBMKRod(ModItems.billet_thorium_fuel, ModItems.rbmk_fuel_thmeu); + RecipesCommon.addRBMKRod(ModItems.billet_plutonium_fuel, ModItems.rbmk_fuel_lep); + RecipesCommon.addRBMKRod(ModItems.billet_pu_mix, ModItems.rbmk_fuel_mep); + RecipesCommon.addRBMKRod(ModItems.billet_neptunium_fuel, ModItems.rbmk_fuel_men); + RecipesCommon.addRBMKRod(ModItems.billet_po210be, ModItems.rbmk_fuel_po210be); + RecipesCommon.addRBMKRod(ModItems.billet_pu238be, ModItems.rbmk_fuel_pu238be); + RecipesCommon.addRBMKRod(ModItems.billet_australium_lesser, ModItems.rbmk_fuel_leaus); + RecipesCommon.addRBMKRod(ModItems.billet_australium_greater, ModItems.rbmk_fuel_heaus); + RecipesCommon.addRBMKRod(ModItems.egg_balefire_shard, ModItems.rbmk_fuel_balefire); + RecipesCommon.addRBMKRod(ModItems.billet_schrabidium_fuel, ModItems.rbmk_fuel_mes); + GameRegistry.addShapelessRecipe(new ItemStack(ModItems.rbmk_fuel_drx, 1), new Object[] { ModItems.rbmk_fuel_balefire, ModItems.particle_digamma }); + //Water rods GameRegistry.addShapelessRecipe(new ItemStack(ModItems.rod_water, 1), new Object[] { ModItems.rod_empty, Items.water_bucket }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.rod_dual_water, 1), new Object[] { ModItems.rod_dual_empty, Items.water_bucket, Items.water_bucket }); diff --git a/src/main/java/com/hbm/crafting/ToolRecipes.java b/src/main/java/com/hbm/crafting/ToolRecipes.java index 85818d75b..1ec168871 100644 --- a/src/main/java/com/hbm/crafting/ToolRecipes.java +++ b/src/main/java/com/hbm/crafting/ToolRecipes.java @@ -120,6 +120,7 @@ public class ToolRecipes { GameRegistry.addShapelessRecipe(new ItemStack(ModBlocks.geiger), new Object[] { ModItems.geiger_counter }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.digamma_diagnostic), new Object[] { ModItems.geiger_counter, ModItems.billet_polonium, ModItems.ingot_asbestos }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mirror_tool), new Object[] { " A ", " IA", "I ", 'A', "ingotAluminum", 'I', "ingotIron" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.rbmk_tool), new Object[] { " A ", " IA", "I ", 'A', "ingotLead", 'I', "ingotIron" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.defuser, 1), new Object[] { " PS", "P P", " P ", 'P', "ingotPolymer", 'S', "plateSteel" })); //Bobmazon diff --git a/src/main/java/com/hbm/crafting/WeaponRecipes.java b/src/main/java/com/hbm/crafting/WeaponRecipes.java index a62c51e6d..c7251af92 100644 --- a/src/main/java/com/hbm/crafting/WeaponRecipes.java +++ b/src/main/java/com/hbm/crafting/WeaponRecipes.java @@ -73,7 +73,7 @@ public class WeaponRecipes { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver, 1), new Object[] { "SSM", " RW", 'S', "plateSteel", 'W', "plankWood", 'R', ModItems.wire_aluminium, 'M', ModItems.mechanism_revolver_1 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_saturnite, 1), new Object[] { "SSM", " RW", 'S', "plateSaturnite", 'W', "plankWood", 'R', ModItems.wire_tungsten, 'M', ModItems.mechanism_revolver_2 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_iron, 1), new Object[] { "SSM", " RW", 'S', "plateIron", 'W', "plankWood", 'R', ModItems.wire_aluminium, 'M', ModItems.mechanism_revolver_1 })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_gold, 1), new Object[] { "SSM", " RW", 'S', "plateGold", 'W', "ingotGold", 'R', ModItems.wire_gold, 'M', ModItems.mechanism_revolver_1 })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_gold, 1), new Object[] { "SSM", " RW", 'S', "plateGold", 'W', "ingotTungsten", 'R', ModItems.wire_gold, 'M', ModItems.mechanism_revolver_1 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_lead, 1), new Object[] { "SSM", " RW", 'S', "plateLead", 'W', "ingotTungsten", 'R', ModItems.wire_tungsten, 'M', ModItems.mechanism_revolver_2 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_schrabidium, 1), new Object[] { "SSM", " RW", 'S', ModBlocks.block_schrabidium, 'W', "ingotTungsten", 'R', ModItems.wire_schrabidium, 'M', ModItems.mechanism_special })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_pip, 1), new Object[] { " G ", "SSP", " TI", 'G', "paneGlass", 'S', "plateSteel", 'P', ModItems.mechanism_revolver_2, 'T', ModItems.wire_tungsten, 'I', "ingotPolymer" })); @@ -173,7 +173,7 @@ public class WeaponRecipes { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.assembly_lead, 24), new Object[] { " I", "GC", " P", 'I', ModItems.trinitite, 'G', ModItems.cordite, 'C', "paneGlassColorless", 'P', ModItems.primer_357 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.assembly_lead, 24), new Object[] { " I", "GC", " P", 'I', ModItems.nuclear_waste_tiny, 'G', ModItems.cordite, 'C', "paneGlassColorless", 'P', ModItems.primer_357 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.assembly_gold, 24), new Object[] { " I", "GC", " P", 'I', "ingotGold", 'G', ModItems.cordite, 'C', ModItems.casing_357, 'P', ModItems.primer_357 })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.assembly_schrabidium, 6), new Object[] { " I ", "GCN", " P ", 'I', "ingotSchrabidium", 'G', ModItems.cordite, 'C', ModItems.casing_357, 'P', ModItems.primer_357, 'N', Items.nether_star })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.assembly_schrabidium, 6), new Object[] { " I ", "GCN", " P ", 'I', "ingotSchrabidium", 'G', ModItems.cordite, 'C', ModItems.casing_357, 'P', ModItems.primer_357, 'N', ModItems.billet_yharonite })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.assembly_nightmare, 24), new Object[] { " I", "GC", " P", 'I', "ingotTungsten", 'G', ModItems.cordite, 'C', ModItems.casing_357, 'P', ModItems.primer_357 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.assembly_desh, 24), new Object[] { " I", "GC", " P", 'I', "ingotDesh", 'G', ModItems.cordite, 'C', ModItems.casing_357, 'P', ModItems.primer_357 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.assembly_smg, 32), new Object[] { " I", "GC", " P", 'I', "ingotLead", 'G', ModItems.cordite, 'C', ModItems.casing_9, 'P', ModItems.primer_9 })); diff --git a/src/main/java/com/hbm/inventory/AssemblerRecipes.java b/src/main/java/com/hbm/inventory/AssemblerRecipes.java index a3e3efc31..9a164c6ff 100644 --- a/src/main/java/com/hbm/inventory/AssemblerRecipes.java +++ b/src/main/java/com/hbm/inventory/AssemblerRecipes.java @@ -685,9 +685,8 @@ public class AssemblerRecipes { }, 400); makeRecipe(new ComparableStack(ModBlocks.rbmk_blank, 1), new AStack[] { - new ComparableStack(ModBlocks.concrete, 6), - new ComparableStack(ModItems.ingot_asbestos, 6), - new OreDictStack("plateSteel", 12), + new ComparableStack(ModBlocks.concrete_asbestos, 4), + new OreDictStack("plateSteel", 8), new OreDictStack("ingotCopper", 4), new ComparableStack(ModItems.plate_polymer, 4) }, 100); diff --git a/src/main/java/com/hbm/inventory/CrystallizerRecipes.java b/src/main/java/com/hbm/inventory/CrystallizerRecipes.java index 983d81e87..aed433fdf 100644 --- a/src/main/java/com/hbm/inventory/CrystallizerRecipes.java +++ b/src/main/java/com/hbm/inventory/CrystallizerRecipes.java @@ -58,6 +58,8 @@ public class CrystallizerRecipes { recipes.put("blockRedstone", new ItemStack(ModItems.nugget_mercury)); recipes.put(new ComparableStack(Items.rotten_flesh), new ItemStack(Items.leather)); recipes.put(new ComparableStack(ModItems.coal_infernal), new ItemStack(ModItems.solid_fuel)); + recipes.put(new ComparableStack(ModItems.cinnebar), new ItemStack(ModItems.nugget_mercury, 3)); + recipes.put(new ComparableStack(ModItems.coke), new ItemStack(ModItems.ingot_graphite)); recipes.put(new ComparableStack(ModItems.powder_diamond), new ItemStack(Items.diamond)); recipes.put(new ComparableStack(ModItems.powder_emerald), new ItemStack(Items.emerald)); diff --git a/src/main/java/com/hbm/inventory/MachineRecipes.java b/src/main/java/com/hbm/inventory/MachineRecipes.java index 2164c119c..2615710d0 100644 --- a/src/main/java/com/hbm/inventory/MachineRecipes.java +++ b/src/main/java/com/hbm/inventory/MachineRecipes.java @@ -1650,6 +1650,11 @@ public class MachineRecipes { list.add(new ItemStack(Blocks.gravel, 8)); list.add(new ItemStack(Blocks.sand, 8)); break; + case CONCRETE_ASBESTOS: + list.add(new ItemStack(Blocks.gravel, 2)); + list.add(new ItemStack(Blocks.sand, 2)); + list.add(new ItemStack(ModItems.ingot_asbestos, 4)); + break; case COOLANT: list.add(new ItemStack(ModItems.niter, 1)); break; @@ -1826,11 +1831,14 @@ public class MachineRecipes { input[1] = new FluidStack(2400, FluidType.STEAM); break; case ASPHALT: - input[0] = new FluidStack(8000, FluidType.BITUMEN); + input[0] = new FluidStack(1000, FluidType.BITUMEN); break; case CONCRETE: input[0] = new FluidStack(2000, FluidType.WATER); break; + case CONCRETE_ASBESTOS: + input[0] = new FluidStack(2000, FluidType.WATER); + break; case COOLANT: input[0] = new FluidStack(1800, FluidType.WATER); break; @@ -1991,6 +1999,12 @@ public class MachineRecipes { output[2] = new ItemStack(ModBlocks.concrete_smooth, 4); output[3] = new ItemStack(ModBlocks.concrete_smooth, 4); break; + case CONCRETE_ASBESTOS: + output[0] = new ItemStack(ModBlocks.concrete_asbestos, 4); + output[1] = new ItemStack(ModBlocks.concrete_asbestos, 4); + output[2] = new ItemStack(ModBlocks.concrete_asbestos, 4); + output[3] = new ItemStack(ModBlocks.concrete_asbestos, 4); + break; case DESH: output[0] = new ItemStack(ModItems.ingot_desh, 1); break; diff --git a/src/main/java/com/hbm/inventory/OreDictManager.java b/src/main/java/com/hbm/inventory/OreDictManager.java index 86e632e6c..5d29c45ce 100644 --- a/src/main/java/com/hbm/inventory/OreDictManager.java +++ b/src/main/java/com/hbm/inventory/OreDictManager.java @@ -62,6 +62,7 @@ public class OreDictManager { OreDictionary.registerOre("ingotStarmetal", ModItems.ingot_starmetal); OreDictionary.registerOre("ingotAsbestos", ModItems.ingot_asbestos); OreDictionary.registerOre("ingotZirconium", ModItems.ingot_zirconium); + OreDictionary.registerOre("ingotBoron", ModItems.ingot_boron); OreDictionary.registerOre("nuggetLead", ModItems.nugget_lead); OreDictionary.registerOre("nuggetBeryllium", ModItems.nugget_beryllium); @@ -101,6 +102,7 @@ public class OreDictManager { OreDictionary.registerOre("nuggetCerium", ModItems.fragment_cerium); OreDictionary.registerOre("nuggetLanthanium", ModItems.fragment_lanthanium); OreDictionary.registerOre("nuggetActinium", ModItems.fragment_actinium); + OreDictionary.registerOre("nuggetBoron", ModItems.fragment_boron); OreDictionary.registerOre("dustIron", ModItems.powder_iron); OreDictionary.registerOre("dustGold", ModItems.powder_gold); @@ -148,6 +150,7 @@ public class OreDictManager { OreDictionary.registerOre("dustAsbestos", ModItems.powder_asbestos); OreDictionary.registerOre("dustPhosphorus", ModItems.powder_fire); OreDictionary.registerOre("dustZirconium", ModItems.powder_zirconium); + OreDictionary.registerOre("dustBoron", ModItems.powder_boron); OreDictionary.registerOre("dustNeptunium", ModItems.powder_neptunium); OreDictionary.registerOre("dustIodine", ModItems.powder_iodine); @@ -201,6 +204,7 @@ public class OreDictManager { OreDictionary.registerOre("oreDaffergon", ModBlocks.ore_daffergon); OreDictionary.registerOre("oreVerticium", ModBlocks.ore_verticium); OreDictionary.registerOre("oreRareEarth", ModBlocks.ore_rare); + OreDictionary.registerOre("oreZirconium", ModBlocks.ore_depth_zirconium); OreDictionary.registerOre("oreIron", ModBlocks.ore_gneiss_iron); OreDictionary.registerOre("oreGold", ModBlocks.ore_gneiss_gold); @@ -258,6 +262,8 @@ public class OreDictManager { OreDictionary.registerOre("blockDesh", ModBlocks.block_desh); OreDictionary.registerOre("blockAsbestos", ModBlocks.block_asbestos); OreDictionary.registerOre("blockCobalt", ModBlocks.block_cobalt); + OreDictionary.registerOre("blockZirconium", ModBlocks.block_zirconium); + OreDictionary.registerOre("blockBoron", ModBlocks.block_boron); OreDictionary.registerOre("blockThorium", ModBlocks.block_thorium); OreDictionary.registerOre("blockThorium232", ModBlocks.block_thorium); diff --git a/src/main/java/com/hbm/inventory/SILEXRecipes.java b/src/main/java/com/hbm/inventory/SILEXRecipes.java index 3a0ef1afd..8f32d0afb 100644 --- a/src/main/java/com/hbm/inventory/SILEXRecipes.java +++ b/src/main/java/com/hbm/inventory/SILEXRecipes.java @@ -42,6 +42,11 @@ public class SILEXRecipes { .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_plutonium), 2)) ); + recipes.put(new ComparableStack(ModItems.ingot_australium), new SILEXRecipe(900, 100) + .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_australium_lesser), 5)) + .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_australium_greater), 1)) + ); + recipes.put(new ComparableStack(ModItems.crystal_schraranium), new SILEXRecipe(900, 100) .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_schrabidium), 5)) .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_uranium), 2)) diff --git a/src/main/java/com/hbm/inventory/ShredderRecipes.java b/src/main/java/com/hbm/inventory/ShredderRecipes.java index 9df6b02cf..bdbee056e 100644 --- a/src/main/java/com/hbm/inventory/ShredderRecipes.java +++ b/src/main/java/com/hbm/inventory/ShredderRecipes.java @@ -133,6 +133,7 @@ public class ShredderRecipes { ShredderRecipes.setRecipe(ModItems.fragment_cerium, new ItemStack(ModItems.powder_cerium_tiny, 1)); ShredderRecipes.setRecipe(ModItems.fragment_lanthanium, new ItemStack(ModItems.powder_lanthanium_tiny, 1)); ShredderRecipes.setRecipe(ModItems.fragment_actinium, new ItemStack(ModItems.powder_actinium_tiny, 1)); + ShredderRecipes.setRecipe(ModItems.fragment_boron, new ItemStack(ModItems.powder_boron_tiny, 1)); ShredderRecipes.setRecipe(ModItems.fragment_meteorite, new ItemStack(ModItems.powder_meteorite_tiny, 1)); ShredderRecipes.setRecipe(ModBlocks.block_meteor, new ItemStack(ModItems.powder_meteorite, 10)); ShredderRecipes.setRecipe(Items.enchanted_book, new ItemStack(ModItems.powder_magic, 1)); @@ -150,6 +151,7 @@ public class ShredderRecipes { ShredderRecipes.setRecipe(ModItems.ingot_schrabidate, new ItemStack(ModItems.powder_schrabidate, 1)); ShredderRecipes.setRecipe(ModBlocks.block_schrabidate, new ItemStack(ModItems.powder_schrabidate, 9)); ShredderRecipes.setRecipe(ModItems.coal_infernal, new ItemStack(ModItems.powder_coal, 3)); + ShredderRecipes.setRecipe(Items.reeds, new ItemStack(Items.paper, 3)); ShredderRecipes.setRecipe(ModItems.ingot_schraranium, new ItemStack(ModItems.nugget_schrabidium, 2)); ShredderRecipes.setRecipe(ModItems.crystal_coal, new ItemStack(ModItems.powder_coal, 3)); diff --git a/src/main/java/com/hbm/inventory/gui/GUIMachineSelenium.java b/src/main/java/com/hbm/inventory/gui/GUIMachineSelenium.java index 26c787065..c64cd708b 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIMachineSelenium.java +++ b/src/main/java/com/hbm/inventory/gui/GUIMachineSelenium.java @@ -35,6 +35,7 @@ public class GUIMachineSelenium extends GuiInfoContainer { String[] text = new String[] { "Accepted Fuels:", " Industrial Oil (50 HE/t)", " Heating Oil (75 HE/t)", + " Hydrogen (500 HE/t)", " Diesel (225 HE/t)", " Kerosene (300 HE/t)", " Reclaimed Oil (100 HE/t)", diff --git a/src/main/java/com/hbm/inventory/gui/GUIRBMKBoiler.java b/src/main/java/com/hbm/inventory/gui/GUIRBMKBoiler.java index a43d78b6d..07bbe11d4 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIRBMKBoiler.java +++ b/src/main/java/com/hbm/inventory/gui/GUIRBMKBoiler.java @@ -31,7 +31,6 @@ public class GUIRBMKBoiler extends GuiInfoContainer { @Override public void drawScreen(int mouseX, int mouseY, float f) { super.drawScreen(mouseX, mouseY, f); - boiler.feed.renderTankInfo(this, mouseX, mouseY, guiLeft + 126, guiTop + 24, 16, 56); boiler.steam.renderTankInfo(this, mouseX, mouseY, guiLeft + 89, guiTop + 39, 8, 28); @@ -68,7 +67,7 @@ public class GUIRBMKBoiler extends GuiInfoContainer { int i = boiler.feed.getFill() * 58 / boiler.feed.getMaxFill(); drawTexturedModalRect(guiLeft + 126, guiTop + 82 - i, 176, 58 - i, 14, i); - int j = boiler.feed.getFill() * 22 / boiler.steam.getMaxFill(); + int j = boiler.steam.getFill() * 22 / boiler.steam.getMaxFill(); if(j > 0) j++; if(j > 22) j++; diff --git a/src/main/java/com/hbm/inventory/gui/GUIRBMKConsole.java b/src/main/java/com/hbm/inventory/gui/GUIRBMKConsole.java index 0aa1a841e..c3908777d 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIRBMKConsole.java +++ b/src/main/java/com/hbm/inventory/gui/GUIRBMKConsole.java @@ -1,19 +1,40 @@ package com.hbm.inventory.gui; +import java.util.ArrayList; +import java.util.List; +import java.util.Set; + +import org.apache.commons.lang3.math.NumberUtils; +import org.lwjgl.input.Keyboard; import org.lwjgl.opengl.GL11; +import com.hbm.handler.FluidTypeHandler.FluidType; import com.hbm.inventory.container.ContainerRBMKConsole; import com.hbm.lib.RefStrings; +import com.hbm.packet.NBTControlPacket; +import com.hbm.packet.PacketDispatcher; import com.hbm.tileentity.machine.rbmk.TileEntityRBMKConsole; +import com.hbm.tileentity.machine.rbmk.TileEntityRBMKConsole.ColumnType; +import com.hbm.tileentity.machine.rbmk.TileEntityRBMKConsole.RBMKColumn; import net.minecraft.client.Minecraft; +import net.minecraft.client.audio.PositionedSoundRecord; +import net.minecraft.client.gui.GuiTextField; import net.minecraft.entity.player.InventoryPlayer; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.util.MathHelper; import net.minecraft.util.ResourceLocation; public class GUIRBMKConsole extends GuiInfoContainer { private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/reactors/gui_rbmk_console.png"); private TileEntityRBMKConsole console; + + private boolean[] selection = new boolean[15 * 15]; + private boolean az5Lid = true; + private long lastPress = 0; + + private GuiTextField field; public GUIRBMKConsole(InventoryPlayer invPlayer, TileEntityRBMKConsole tedf) { super(new ContainerRBMKConsole(invPlayer, tedf)); @@ -23,11 +44,166 @@ public class GUIRBMKConsole extends GuiInfoContainer { this.ySize = 172; } + public void initGui() { + super.initGui(); + Keyboard.enableRepeatEvents(true); + + for(int i = 0; i < 4; i++) { + this.field = new GuiTextField(this.fontRendererObj, guiLeft + 9, guiTop + 84, 35, 9); + this.field.setTextColor(0x00ff00); + this.field.setDisabledTextColour(0x008000); + this.field.setEnableBackgroundDrawing(false); + this.field.setMaxStringLength(3); + } + } + @Override public void drawScreen(int mouseX, int mouseY, float f) { super.drawScreen(mouseX, mouseY, f); - this.drawCustomInfoStat(mouseX, mouseY, guiLeft + 71, guiTop + 29, 16, 56, mouseX, mouseY, new String[]{ "%" } ); + int bX = 86; + int bY = 11; + int size = 10; + + if(guiLeft + 86 <= mouseX && guiLeft + 86 + 150 > mouseX && guiTop + 11 < mouseY && guiTop + 11 + 10150 >= mouseY) { + int index = ((mouseX - bX - guiLeft) / size + (mouseY - bY - guiTop) / size * 15); + + if(index > 0 && index < console.columns.length) { + RBMKColumn col = console.columns[index]; + + if(col != null && col.data != null) { + + List list = new ArrayList(); + + Set keys = col.data.func_150296_c(); + list.add(col.type.toString()); + + for(String key : keys) { + list.add(key + ": " + col.data.getTag(key)); + } + + if(col != null) { + this.func_146283_a(list, mouseX, mouseY); + } + } + } + } + + this.drawCustomInfoStat(mouseX, mouseY, guiLeft + 61, guiTop + 70, 10, 10, mouseX, mouseY, new String[]{ "Select all control rods" } ); + this.drawCustomInfoStat(mouseX, mouseY, guiLeft + 72, guiTop + 70, 10, 10, mouseX, mouseY, new String[]{ "Deselect all" } ); + this.drawCustomInfoStat(mouseX, mouseY, guiLeft + 6, guiTop + 8, 76, 60, mouseX, mouseY, new String[]{ "ignore all this for now" } ); + this.drawCustomInfoStat(mouseX, mouseY, guiLeft + 6, guiTop + 96, 76, 38, mouseX, mouseY, new String[]{ "and this too" } ); + + this.drawCustomInfoStat(mouseX, mouseY, guiLeft + 6, guiTop + 70, 10, 10, mouseX, mouseY, new String[]{ "Select red group" } ); + this.drawCustomInfoStat(mouseX, mouseY, guiLeft + 17, guiTop + 70, 10, 10, mouseX, mouseY, new String[]{ "Select yellow group" } ); + this.drawCustomInfoStat(mouseX, mouseY, guiLeft + 28, guiTop + 70, 10, 10, mouseX, mouseY, new String[]{ "Select green group" } ); + this.drawCustomInfoStat(mouseX, mouseY, guiLeft + 39, guiTop + 70, 10, 10, mouseX, mouseY, new String[]{ "Select blue group" } ); + this.drawCustomInfoStat(mouseX, mouseY, guiLeft + 50, guiTop + 70, 10, 10, mouseX, mouseY, new String[]{ "Select purple group" } ); + } + + @Override + protected void mouseClicked(int mouseX, int mouseY, int i) { + super.mouseClicked(mouseX, mouseY, i); + this.field.mouseClicked(mouseX, mouseY, i); + + int bX = 86; + int bY = 11; + int size = 10; + + if(guiLeft + 86 <= mouseX && guiLeft + 86 + 150 > mouseX && guiTop + 11 < mouseY && guiTop + 11 + 150 >= mouseY) { + + int index = ((mouseX - bX - guiLeft) / size + (mouseY - bY - guiTop) / size * 15); + + if(index > 0 && index < selection.length && console.columns[index] != null) { + this.selection[index] = !this.selection[index]; + + mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 0.75F + (this.selection[index] ? 0.25F : 0.0F))); + return; + } + } + + if(guiLeft + 72 <= mouseX && guiLeft + 72 + 10 > mouseX && guiTop + 70 < mouseY && guiTop + 70 + 10 >= mouseY) { + this.selection = new boolean[15 * 15]; + mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 0.5F)); + return; + } + + if(guiLeft + 61 <= mouseX && guiLeft + 61 + 10 > mouseX && guiTop + 70 < mouseY && guiTop + 70 + 10 >= mouseY) { + this.selection = new boolean[15 * 15]; + + for(int j = 0; j < console.columns.length; j++) { + + if(console.columns[j] != null && console.columns[j].type == ColumnType.CONTROL) { + this.selection[j] = true; + } + } + mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.5F)); + return; + } + + for(int k = 0; k < 5; k++) { + + if(guiLeft + 6 + k * 11 <= mouseX && guiLeft + 6 + k * 11 + 10 > mouseX && guiTop + 70 < mouseY && guiTop + 70 + 10 >= mouseY) { + this.selection = new boolean[15 * 15]; + + for(int j = 0; j < console.columns.length; j++) { + + if(console.columns[j] != null && console.columns[j].type == ColumnType.CONTROL && console.columns[j].data.getShort("color") == k) { + this.selection[j] = true; + } + } + + mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 0.8F + k * 0.1F)); + return; + } + } + + if(guiLeft + 30 <= mouseX && guiLeft + 30 + 28 > mouseX && guiTop + 138 < mouseY && guiTop + 138 + 28 >= mouseY) { + + if(az5Lid) { + az5Lid = false; + mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("hbm:block.rbmk_az5_cover"), 0.5F)); + } else if(lastPress + 3000 < System.currentTimeMillis()) { + mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("hbm:block.shutdown"), 1)); + lastPress = System.currentTimeMillis(); + + NBTTagCompound control = new NBTTagCompound(); + control.setDouble("level", 0); + + for(int j = 0; j < console.columns.length; j++) { + if(console.columns[j] != null && console.columns[j].type == ColumnType.CONTROL) + control.setInteger("sel_" + j, j); + } + + PacketDispatcher.wrapper.sendToServer(new NBTControlPacket(control, console.xCoord, console.yCoord, console.zCoord)); + mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1F)); + } + return; + } + + if(guiLeft + 48 <= mouseX && guiLeft + 48 + 12 > mouseX && guiTop + 82 < mouseY && guiTop + 82 + 12 >= mouseY) { + + double level; + + if(NumberUtils.isNumber(field.getText())) { + int j = (int)MathHelper.clamp_double(Double.parseDouble(field.getText()), 0, 100); + field.setText(j + ""); + level = j * 0.01D; + } else { + return; + } + + NBTTagCompound control = new NBTTagCompound(); + control.setDouble("level", level); + + for(int j = 0; j < selection.length; j++) { + if(selection[j]) + control.setInteger("sel_" + j, j); + } + + PacketDispatcher.wrapper.sendToServer(new NBTControlPacket(control, console.xCoord, console.yCoord, console.zCoord)); + mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1F)); + } } @Override @@ -35,9 +211,94 @@ public class GUIRBMKConsole extends GuiInfoContainer { } @Override - protected void drawGuiContainerBackgroundLayer(float p_146976_1_, int p_146976_2_, int p_146976_3_) { + protected void drawGuiContainerBackgroundLayer(float interp, int mX, int mY) { GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); Minecraft.getMinecraft().getTextureManager().bindTexture(texture); drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize); + + if(az5Lid) { + drawTexturedModalRect(guiLeft + 30, guiTop + 138, 90, 172, 28, 28); + } + + int bX = 86; + int bY = 11; + int size = 10; + + for(int i = 0; i < console.columns.length; i++) { + + RBMKColumn col = console.columns[i]; + + if(col == null) + continue; + + int x = bX + size * (i % 15); + int y = bY + size * (i / 15); + + int tX = col.type.offset; + int tY = 172; + + drawTexturedModalRect(guiLeft + x, guiTop + y, tX, tY, size, size); + + int h = (int)Math.ceil((col.data.getDouble("heat") - 20) * 10 / col.data.getDouble("maxHeat")); + drawTexturedModalRect(guiLeft + x, guiTop + y + size - h, 0, 192 - h, 10, h); + + switch(col.type) { + case ABSORBER: break; + case BLANK: break; + case MODERATOR: break; + case REFLECTOR: break; + + case CONTROL: + int color = col.data.getShort("color"); + if(color > -1) + drawTexturedModalRect(guiLeft + x, guiTop + y, color * size, 202, 10, 10); + + case CONTROL_AUTO: + int fr = 8 - (int)Math.ceil((col.data.getDouble("level") * 8)); + drawTexturedModalRect(guiLeft + x + 4, guiTop + y + 1, 24, 183, 2, fr); + break; + + case FUEL: + if(col.data.hasKey("c_heat")) { + int fh = (int)Math.ceil((col.data.getDouble("c_heat") - 20) * 8 / col.data.getDouble("c_maxHeat")); + drawTexturedModalRect(guiLeft + x + 1, guiTop + y + size - fh - 1, 11, 191 - fh, 2, fh); + + int fe = (int)Math.ceil((col.data.getDouble("enrichment")) * 8); + drawTexturedModalRect(guiLeft + x + 4, guiTop + y + size - fe - 1, 14, 191 - fe, 2, fe); + } + break; + + case BOILER: + int fw = (int)Math.ceil((col.data.getInteger("water")) * 8 / col.data.getDouble("maxWater")); + drawTexturedModalRect(guiLeft + x + 1, guiTop + y + size - fw - 1, 41, 191 - fw, 3, fw); + int fs = (int)Math.ceil((col.data.getInteger("steam")) * 8 / col.data.getDouble("maxSteam")); + drawTexturedModalRect(guiLeft + x + 6, guiTop + y + size - fs - 1, 46, 191 - fs, 3, fs); + + if(col.data.getShort("type") == FluidType.STEAM.ordinal()) + drawTexturedModalRect(guiLeft + x + 4, guiTop + y + 1, 44, 183, 2, 2); + if(col.data.getShort("type") == FluidType.HOTSTEAM.ordinal()) + drawTexturedModalRect(guiLeft + x + 4, guiTop + y + 3, 44, 185, 2, 2); + if(col.data.getShort("type") == FluidType.SUPERHOTSTEAM.ordinal()) + drawTexturedModalRect(guiLeft + x + 4, guiTop + y + 5, 44, 187, 2, 2); + if(col.data.getShort("type") == FluidType.ULTRAHOTSTEAM.ordinal()) + drawTexturedModalRect(guiLeft + x + 4, guiTop + y + 7, 44, 189, 2, 2); + + break; + } + + if(this.selection[i]) + drawTexturedModalRect(guiLeft + x, guiTop + y, 0, 192, 10, 10); + } + + this.field.drawTextBox(); + } + + @Override + protected void keyTyped(char c, int i) { + + if(this.field.textboxKeyTyped(c, i)) + return; + + super.keyTyped(c, i); } } diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 4b90d67b4..bca4ad219 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -77,6 +77,7 @@ public class ModItems { public static Item powder_lignite; public static Item briquette_lignite; public static Item coal_infernal; + public static Item cinnebar; public static Item niter; public static Item ingot_copper; @@ -172,6 +173,8 @@ public class ModItems { public static Item billet_neptunium_fuel; public static Item billet_mox_fuel; public static Item billet_schrabidium_fuel; + public static Item billet_po210be; + public static Item billet_pu238be; public static Item billet_yharonite; public static Item nugget_th232; @@ -353,10 +356,12 @@ public class ModItems { public static Item powder_cerium_tiny; public static Item powder_lanthanium_tiny; public static Item powder_actinium_tiny; + public static Item powder_boron_tiny; public static Item powder_meteorite_tiny; public static Item powder_lanthanium; public static Item powder_actinium; + public static Item powder_boron; public static Item powder_desh; public static Item powder_semtex_mix; public static Item powder_desh_mix; @@ -374,6 +379,7 @@ public class ModItems { public static Item fragment_cerium; public static Item fragment_lanthanium; public static Item fragment_actinium; + public static Item fragment_boron; public static Item fragment_meteorite; public static Item biomass; @@ -2390,6 +2396,8 @@ public class ModItems { billet_neptunium_fuel = new ItemHazard().addRadiation(ItemHazard.npf * ItemHazard.billet).toItem().setUnlocalizedName("billet_neptunium_fuel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_neptunium_fuel"); billet_mox_fuel = new ItemHazard(ItemHazard.mox * ItemHazard.billet).setUnlocalizedName("billet_mox_fuel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_mox_fuel"); billet_schrabidium_fuel = new ItemHazard(ItemHazard.saf * ItemHazard.billet, false, true).setUnlocalizedName("billet_schrabidium_fuel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_schrabidium_fuel"); + billet_po210be = new ItemHazard().setUnlocalizedName("billet_po210be").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_po210be"); + billet_pu238be = new ItemHazard().setUnlocalizedName("billet_pu238be").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_pu238be"); billet_yharonite = new Item().setUnlocalizedName("billet_yharonite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_yharonite"); ingot_dura_steel = new ItemCustomLore().setUnlocalizedName("ingot_dura_steel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_dura_steel"); @@ -2433,6 +2441,7 @@ public class ModItems { briquette_lignite = new Item().setUnlocalizedName("briquette_lignite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":briquette_lignite"); powder_lignite = new Item().setUnlocalizedName("powder_lignite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_lignite"); coal_infernal = new Item().setUnlocalizedName("coal_infernal").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":coal_infernal"); + cinnebar = new Item().setUnlocalizedName("cinnebar").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":cinnebar"); ingot_australium = new ItemCustomLore().setUnlocalizedName("ingot_australium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_australium"); ingot_weidanium = new ItemCustomLore().setUnlocalizedName("ingot_weidanium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_weidanium"); @@ -2567,6 +2576,7 @@ public class ModItems { powder_meteorite = new Item().setUnlocalizedName("powder_meteorite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_meteorite"); powder_lanthanium = new ItemCustomLore().setUnlocalizedName("powder_lanthanium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_lanthanium"); powder_actinium = new ItemCustomLore().setUnlocalizedName("powder_actinium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_actinium"); + powder_boron = new ItemCustomLore().setUnlocalizedName("powder_boron").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_boron"); powder_semtex_mix = new Item().setUnlocalizedName("powder_semtex_mix").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_semtex_mix"); powder_desh_mix = new Item().setUnlocalizedName("powder_desh_mix").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_desh_mix"); powder_desh_ready = new Item().setUnlocalizedName("powder_desh_ready").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_desh_ready"); @@ -2581,6 +2591,7 @@ public class ModItems { powder_cerium_tiny = new Item().setUnlocalizedName("powder_cerium_tiny").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_cerium_tiny"); powder_lanthanium_tiny = new Item().setUnlocalizedName("powder_lanthanium_tiny").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_lanthanium_tiny"); powder_actinium_tiny = new Item().setUnlocalizedName("powder_actinium_tiny").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_actinium_tiny"); + powder_boron_tiny = new Item().setUnlocalizedName("powder_boron_tiny").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_boron_tiny"); powder_meteorite_tiny = new Item().setUnlocalizedName("powder_meteorite_tiny").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_meteorite_tiny"); powder_yellowcake = new ItemHazard(ItemHazard.u * ItemHazard.powder).setUnlocalizedName("powder_yellowcake").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_yellowcake"); powder_magic = new Item().setUnlocalizedName("powder_magic").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_magic"); @@ -2593,6 +2604,7 @@ public class ModItems { fragment_cerium = new Item().setUnlocalizedName("fragment_cerium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":fragment_cerium"); fragment_lanthanium = new Item().setUnlocalizedName("fragment_lanthanium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":fragment_lanthanium"); fragment_actinium = new Item().setUnlocalizedName("fragment_actinium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":fragment_actinium"); + fragment_boron = new Item().setUnlocalizedName("fragment_boron").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":fragment_boron"); fragment_meteorite = new Item().setUnlocalizedName("fragment_meteorite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":fragment_meteorite"); biomass = new Item().setUnlocalizedName("biomass").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":biomass"); @@ -3146,53 +3158,92 @@ public class ModItems { rod_dual_tritium = new ItemHazard(1F).setUnlocalizedName("rod_dual_tritium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_tritium"); rod_quad_tritium = new ItemHazard(2F).setUnlocalizedName("rod_quad_tritium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_tritium"); - rbmk_lid = new Item().setUnlocalizedName("rbmk_lid").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":rbmk_lid"); + rbmk_lid = new Item().setUnlocalizedName("rbmk_lid").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":rbmk_lid"); rbmk_fuel_empty = new Item().setUnlocalizedName("rbmk_fuel_empty").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":rbmk_fuel_empty"); rbmk_fuel_meu = new ItemRBMKRod("Medium Enriched Uranium-235") .setYield(100000000D) - .setStats(100).setUnlocalizedName("rbmk_fuel_meu").setTextureName(RefStrings.MODID + ":rbmk_fuel_meu"); + .setStats(100) + .setMeltingPoint(2000) + .addRadiation(ItemHazard.uf * ItemHazard.rod_rbmk).toItem() + .setUnlocalizedName("rbmk_fuel_meu").setTextureName(RefStrings.MODID + ":rbmk_fuel_meu"); rbmk_fuel_thmeu = new ItemRBMKRod("Thorium with MEU Driver Fuel") .setYield(100000000D) - .setStats(100).setUnlocalizedName("rbmk_fuel_thmeu").setTextureName(RefStrings.MODID + ":rbmk_fuel_thmeu"); + .setStats(100) + .setMeltingPoint(2000) + .addRadiation(ItemHazard.thf * ItemHazard.rod_rbmk).toItem() + .setUnlocalizedName("rbmk_fuel_thmeu").setTextureName(RefStrings.MODID + ":rbmk_fuel_thmeu"); rbmk_fuel_lep = new ItemRBMKRod("Low Enriched Plutonium-239") .setYield(100000000D) - .setStats(100).setUnlocalizedName("rbmk_fuel_lep").setTextureName(RefStrings.MODID + ":rbmk_fuel_lep"); + .setStats(100) + .setMeltingPoint(2000) + .addRadiation(ItemHazard.puf * ItemHazard.rod_rbmk).toItem() + .setUnlocalizedName("rbmk_fuel_lep").setTextureName(RefStrings.MODID + ":rbmk_fuel_lep"); rbmk_fuel_mep = new ItemRBMKRod("Medium Enriched Plutonium-239") .setYield(100000000D) - .setStats(100, 20).setUnlocalizedName("rbmk_fuel_mep").setTextureName(RefStrings.MODID + ":rbmk_fuel_mep"); + .setStats(100, 20) + .setMeltingPoint(2000) + .addRadiation(ItemHazard.purg * ItemHazard.rod_rbmk).toItem() + .setUnlocalizedName("rbmk_fuel_mep").setTextureName(RefStrings.MODID + ":rbmk_fuel_mep"); rbmk_fuel_men = new ItemRBMKRod("Medium Enriched Neptunium-237") .setYield(100000000D) - .setStats(100, 20).setUnlocalizedName("rbmk_fuel_men").setTextureName(RefStrings.MODID + ":rbmk_fuel_men"); + .setStats(100, 20) + .setMeltingPoint(2000) + .addRadiation(ItemHazard.npf * ItemHazard.rod_rbmk).toItem() + .setUnlocalizedName("rbmk_fuel_men").setTextureName(RefStrings.MODID + ":rbmk_fuel_men"); rbmk_fuel_mox = new ItemRBMKRod("Mixed LEU & LEP Oxide") .setYield(100000000D) - .setStats(100).setUnlocalizedName("rbmk_fuel_mox").setTextureName(RefStrings.MODID + ":rbmk_fuel_mox"); + .setStats(100) + .setMeltingPoint(2000) + .addRadiation(ItemHazard.mox * ItemHazard.rod_rbmk).toItem() + .setUnlocalizedName("rbmk_fuel_mox").setTextureName(RefStrings.MODID + ":rbmk_fuel_mox"); rbmk_fuel_les = new ItemRBMKRod("Low Enriched Schrabidium-236") .setYield(100000000D) - .setStats(100).setUnlocalizedName("rbmk_fuel_les").setTextureName(RefStrings.MODID + ":rbmk_fuel_les"); + .setStats(100) + .setMeltingPoint(2000) + .addRadiation(ItemHazard.saf * ItemHazard.rod_rbmk).toItem() + .setUnlocalizedName("rbmk_fuel_les").setTextureName(RefStrings.MODID + ":rbmk_fuel_les"); rbmk_fuel_mes = new ItemRBMKRod("Medium Enriched Schrabidium-236") .setYield(100000000D) - .setStats(100).setUnlocalizedName("rbmk_fuel_mes").setTextureName(RefStrings.MODID + ":rbmk_fuel_mes"); + .setStats(100) + .setMeltingPoint(2000) + .addRadiation(ItemHazard.saf * ItemHazard.rod_rbmk).toItem() + .setUnlocalizedName("rbmk_fuel_mes").setTextureName(RefStrings.MODID + ":rbmk_fuel_mes"); rbmk_fuel_hes = new ItemRBMKRod("Highly Enriched Schrabidium-236") .setYield(100000000D) - .setStats(100).setUnlocalizedName("rbmk_fuel_hes").setTextureName(RefStrings.MODID + ":rbmk_fuel_hes"); + .setStats(100) + .setMeltingPoint(2000) + .addRadiation(ItemHazard.saf * ItemHazard.rod_rbmk).toItem() + .setUnlocalizedName("rbmk_fuel_hes").setTextureName(RefStrings.MODID + ":rbmk_fuel_hes"); rbmk_fuel_leaus = new ItemRBMKRod("Low Enriched Australium (Tasmanite)") .setYield(100000000D) + .setMeltingPoint(2000) .setStats(100).setUnlocalizedName("rbmk_fuel_leaus").setTextureName(RefStrings.MODID + ":rbmk_fuel_leaus"); rbmk_fuel_heaus = new ItemRBMKRod("Highly Enriched Australium (Ayerite)") .setYield(100000000D) + .setMeltingPoint(2000) .setStats(100).setUnlocalizedName("rbmk_fuel_heaus").setTextureName(RefStrings.MODID + ":rbmk_fuel_heaus"); rbmk_fuel_po210be = new ItemRBMKRod("Polonium-210 & Beryllium Neutron Source") .setYield(100000000D) - .setStats(70, 50).setUnlocalizedName("rbmk_fuel_po210be").setTextureName(RefStrings.MODID + ":rbmk_fuel_po210be"); + .setStats(70, 50) + .setMeltingPoint(2000) + .addRadiation(ItemHazard.pobe * ItemHazard.rod_rbmk).toItem() + .setUnlocalizedName("rbmk_fuel_po210be").setTextureName(RefStrings.MODID + ":rbmk_fuel_po210be"); rbmk_fuel_pu238be = new ItemRBMKRod("Plutonium-238 & Beryllium Neutron Source") .setYield(100000000D) - .setStats(60, 35).setUnlocalizedName("rbmk_fuel_pu238be").setTextureName(RefStrings.MODID + ":rbmk_fuel_pu238be"); + .setStats(60, 35) + .setMeltingPoint(2000) + .addRadiation(ItemHazard.pube * ItemHazard.rod_rbmk).toItem() + .setUnlocalizedName("rbmk_fuel_pu238be").setTextureName(RefStrings.MODID + ":rbmk_fuel_pu238be"); rbmk_fuel_balefire = new ItemRBMKRod("Draconic Flames") .setYield(100000000D) - .setStats(60, 35).setUnlocalizedName("rbmk_fuel_balefire").setTextureName(RefStrings.MODID + ":rbmk_fuel_balefire"); + .setStats(60, 35) + .setMeltingPoint(2000) + .addRadiation(800000F).toItem() + .setUnlocalizedName("rbmk_fuel_balefire").setTextureName(RefStrings.MODID + ":rbmk_fuel_balefire"); rbmk_fuel_drx = new ItemRBMKRod(EnumChatFormatting.OBFUSCATED + "can't you hear, can't you hear the thunder?") .setYield(100000000D) .setStats(60, 35) + .setMeltingPoint(100000) .addDigamma(0.1F).toItem().setUnlocalizedName("rbmk_fuel_drx").setTextureName(RefStrings.MODID + ":rbmk_fuel_drx"); trinitite = new ItemHazard().addRadiation(ItemHazard.trn * ItemHazard.ingot).toItem().setUnlocalizedName("trinitite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":trinitite_new"); @@ -4947,9 +4998,12 @@ public class ModItems { GameRegistry.registerItem(billet_neptunium_fuel, billet_neptunium_fuel.getUnlocalizedName()); GameRegistry.registerItem(billet_mox_fuel, billet_mox_fuel.getUnlocalizedName()); GameRegistry.registerItem(billet_schrabidium_fuel, billet_schrabidium_fuel.getUnlocalizedName()); + GameRegistry.registerItem(billet_po210be, billet_po210be.getUnlocalizedName()); + GameRegistry.registerItem(billet_pu238be, billet_pu238be.getUnlocalizedName()); GameRegistry.registerItem(billet_yharonite, billet_yharonite.getUnlocalizedName()); - //Dusts % Other + //Dusts & Other + GameRegistry.registerItem(cinnebar, cinnebar.getUnlocalizedName()); GameRegistry.registerItem(nugget_mercury, nugget_mercury.getUnlocalizedName()); GameRegistry.registerItem(bottle_mercury, bottle_mercury.getUnlocalizedName()); GameRegistry.registerItem(coke, coke.getUnlocalizedName()); @@ -5014,6 +5068,7 @@ public class ModItems { GameRegistry.registerItem(powder_cerium, powder_cerium.getUnlocalizedName()); GameRegistry.registerItem(powder_lanthanium, powder_lanthanium.getUnlocalizedName()); GameRegistry.registerItem(powder_actinium, powder_actinium.getUnlocalizedName()); + GameRegistry.registerItem(powder_boron, powder_boron.getUnlocalizedName()); GameRegistry.registerItem(powder_asbestos, powder_asbestos.getUnlocalizedName()); GameRegistry.registerItem(powder_magic, powder_magic.getUnlocalizedName()); GameRegistry.registerItem(powder_cloud, powder_cloud.getUnlocalizedName()); @@ -5038,6 +5093,7 @@ public class ModItems { GameRegistry.registerItem(powder_cerium_tiny, powder_cerium_tiny.getUnlocalizedName()); GameRegistry.registerItem(powder_lanthanium_tiny, powder_lanthanium_tiny.getUnlocalizedName()); GameRegistry.registerItem(powder_actinium_tiny, powder_actinium_tiny.getUnlocalizedName()); + GameRegistry.registerItem(powder_boron_tiny, powder_boron_tiny.getUnlocalizedName()); GameRegistry.registerItem(powder_meteorite_tiny, powder_meteorite_tiny.getUnlocalizedName()); //Powders @@ -5083,6 +5139,7 @@ public class ModItems { GameRegistry.registerItem(fragment_cerium, fragment_cerium.getUnlocalizedName()); GameRegistry.registerItem(fragment_lanthanium, fragment_lanthanium.getUnlocalizedName()); GameRegistry.registerItem(fragment_actinium, fragment_actinium.getUnlocalizedName()); + GameRegistry.registerItem(fragment_boron, fragment_boron.getUnlocalizedName()); GameRegistry.registerItem(fragment_meteorite, fragment_meteorite.getUnlocalizedName()); //Things that look like rotten flesh but aren't diff --git a/src/main/java/com/hbm/items/machine/ItemChemistryTemplate.java b/src/main/java/com/hbm/items/machine/ItemChemistryTemplate.java index 25dc75301..7be9511ee 100644 --- a/src/main/java/com/hbm/items/machine/ItemChemistryTemplate.java +++ b/src/main/java/com/hbm/items/machine/ItemChemistryTemplate.java @@ -83,6 +83,7 @@ public class ItemChemistryTemplate extends Item { CORDITE, KEVLAR, CONCRETE, + CONCRETE_ASBESTOS, SOLID_FUEL, ELECTROLYSIS, XENON, @@ -252,6 +253,8 @@ public class ItemChemistryTemplate extends Item { return 40; case CONCRETE: return 100; + case CONCRETE_ASBESTOS: + return 100; case SOLID_FUEL: return 200; case ELECTROLYSIS: diff --git a/src/main/java/com/hbm/items/machine/ItemRBMKRod.java b/src/main/java/com/hbm/items/machine/ItemRBMKRod.java index e0fcc6dbc..62b09ff04 100644 --- a/src/main/java/com/hbm/items/machine/ItemRBMKRod.java +++ b/src/main/java/com/hbm/items/machine/ItemRBMKRod.java @@ -34,13 +34,13 @@ public class ItemRBMKRod extends ItemHazard { * |'-----'| * | | * '-----' - * I I I I - * I I I I - * I I I I - * I I I I - * I I I I - * I I I I - * I I I I + * I I I I + * I I I I + * I I I I + * I I I I + * I I I I + * I I I I + * I I I I * |'-----'| * | | * '-----' @@ -73,6 +73,11 @@ public class ItemRBMKRod extends ItemHazard { return this; } + public ItemRBMKRod setMeltingPoint(double meltingPoint) { + this.meltingPoint = meltingPoint; + return this; + } + public ItemRBMKRod setNeutronTypes(NType nType, NType rType) { this.nType = nType; this.rType = rType; @@ -88,7 +93,7 @@ public class ItemRBMKRod extends ItemHazard { * @param inFlux * @return outFlux */ - public double burn(ItemStack stack, double inFlux) { + public double burn(World world, ItemStack stack, double inFlux) { inFlux += selfRate; @@ -104,7 +109,7 @@ public class ItemRBMKRod extends ItemHazard { setPoison(stack, xenon); - double outFlux = reactivityFunc(inFlux * getEnrichment(stack)); + double outFlux = reactivityFunc(inFlux * getEnrichment(stack)) * RBMKDials.getReactivityMod(world); double y = getYield(stack); y -= inFlux; @@ -187,7 +192,7 @@ public class ItemRBMKRod extends ItemHazard { * @return the amount of reactivity yielded, unmodified by xenon */ public double reactivityFunc(double flux) { - return funcEnd * flux / 100D; //goodness gracious i guessed the right formula on the first try! + return Math.log10(flux + 1) * funcEnd / 100D; } /** @@ -239,7 +244,7 @@ public class ItemRBMKRod extends ItemHazard { list.add(EnumChatFormatting.DARK_PURPLE + I18nUtil.resolveKey("trait.rbmx.xenon", ((int)(getPoison(stack) * 1000D) / 1000D) + "%")); list.add(EnumChatFormatting.BLUE + I18nUtil.resolveKey("trait.rbmx.splitsWith", I18nUtil.resolveKey(nType.unlocalized + ".x"))); list.add(EnumChatFormatting.BLUE + I18nUtil.resolveKey("trait.rbmx.splitsInto", I18nUtil.resolveKey(rType.unlocalized + ".x"))); - list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("trait.rbmx.fluxFunc", EnumChatFormatting.WHITE + "" + funcEnd + " * x" + (selfRate > 0 ? (EnumChatFormatting.RED + " + " + selfRate) : ""))); + list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("trait.rbmx.fluxFunc", EnumChatFormatting.WHITE + "log10(x + 1" + (selfRate > 0 ? (EnumChatFormatting.RED + " + " + selfRate) : "") + EnumChatFormatting.WHITE + ") * " + funcEnd)); list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("trait.rbmx.xenonGen", EnumChatFormatting.WHITE + "x * " + xGen)); list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("trait.rbmx.xenonBurn", EnumChatFormatting.WHITE + "x² * " + xBurn)); list.add(EnumChatFormatting.GOLD + I18nUtil.resolveKey("trait.rbmx.heat", heat + "°C")); @@ -258,7 +263,7 @@ public class ItemRBMKRod extends ItemHazard { list.add(EnumChatFormatting.DARK_PURPLE + I18nUtil.resolveKey("trait.rbmk.xenon", ((int)(getPoison(stack) * 1000D) / 1000D) + "%")); list.add(EnumChatFormatting.BLUE + I18nUtil.resolveKey("trait.rbmk.splitsWith", I18nUtil.resolveKey(nType.unlocalized))); list.add(EnumChatFormatting.BLUE + I18nUtil.resolveKey("trait.rbmk.splitsInto", I18nUtil.resolveKey(rType.unlocalized))); - list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("trait.rbmk.fluxFunc", EnumChatFormatting.WHITE + "" + funcEnd + " * x" + (selfRate > 0 ? (EnumChatFormatting.RED + " + " + selfRate) : ""))); + list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("trait.rbmk.fluxFunc", EnumChatFormatting.WHITE + "log10(x + 1" + (selfRate > 0 ? (EnumChatFormatting.RED + " + " + selfRate) : "") + EnumChatFormatting.WHITE + ") * " + funcEnd)); list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("trait.rbmk.xenonGen", EnumChatFormatting.WHITE + "x * " + xGen)); list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("trait.rbmk.xenonBurn", EnumChatFormatting.WHITE + "x² * " + xBurn)); list.add(EnumChatFormatting.GOLD + I18nUtil.resolveKey("trait.rbmk.heat", heat + "°C")); diff --git a/src/main/java/com/hbm/items/special/ItemHazard.java b/src/main/java/com/hbm/items/special/ItemHazard.java index 1c4c195bd..e3da94049 100644 --- a/src/main/java/com/hbm/items/special/ItemHazard.java +++ b/src/main/java/com/hbm/items/special/ItemHazard.java @@ -54,6 +54,8 @@ public class ItemHazard extends ItemCustomLore implements IItemHazard { public static final float sa326 = 15.0F; public static final float sa327 = 17.5F; public static final float saf = 5.85F; + public static final float pobe = 37.5F; + public static final float pube = 5.0F; public static final float sr = sa326 * 0.1F; public static final float trx = 25.0F; @@ -72,6 +74,7 @@ public class ItemHazard extends ItemCustomLore implements IItemHazard { public static final float rod = 0.5F; public static final float rod_dual = rod * 2; public static final float rod_quad = rod * 4; + public static final float rod_rbmk = rod * 8; ItemHazardModule module; diff --git a/src/main/java/com/hbm/items/tool/ItemRBMKTool.java b/src/main/java/com/hbm/items/tool/ItemRBMKTool.java index f914a68bf..82c4e7fd7 100644 --- a/src/main/java/com/hbm/items/tool/ItemRBMKTool.java +++ b/src/main/java/com/hbm/items/tool/ItemRBMKTool.java @@ -16,6 +16,7 @@ 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.ChatComponentText; import net.minecraft.util.ChatComponentTranslation; import net.minecraft.util.ChatStyle; import net.minecraft.util.EnumChatFormatting; @@ -38,7 +39,7 @@ public class ItemRBMKTool extends Item { stack.stackTagCompound = new NBTTagCompound(); stack.stackTagCompound.setInteger("posX", pos[0]); - stack.stackTagCompound.setInteger("posY", pos[1] + 1); + stack.stackTagCompound.setInteger("posY", pos[1]); stack.stackTagCompound.setInteger("posZ", pos[2]); player.addChatComponentMessage(new ChatComponentTranslation(this.getUnlocalizedName() + ".linked").setChatStyle(new ChatStyle().setColor(EnumChatFormatting.YELLOW))); @@ -58,6 +59,7 @@ public class ItemRBMKTool extends Item { int ty = stack.stackTagCompound.getInteger("posY"); int tz = stack.stackTagCompound.getInteger("posZ"); console.setTarget(tx, ty, tz); + player.addChatComponentMessage(new ChatComponentTranslation(this.getUnlocalizedName() + ".set").setChatStyle(new ChatStyle().setColor(EnumChatFormatting.YELLOW))); } return true; diff --git a/src/main/java/com/hbm/lib/HbmWorldGen.java b/src/main/java/com/hbm/lib/HbmWorldGen.java index 802791d60..8e019cf3f 100644 --- a/src/main/java/com/hbm/lib/HbmWorldGen.java +++ b/src/main/java/com/hbm/lib/HbmWorldGen.java @@ -147,6 +147,7 @@ public class HbmWorldGen implements IWorldGenerator { DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.rareSpawn, 5, 5, 20, ModBlocks.ore_rare); DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.ligniteSpawn, 24, 35, 25, ModBlocks.ore_lignite); DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.asbestosSpawn, 4, 16, 16, ModBlocks.ore_asbestos); + DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.cinnebarSpawn, 2, 8, 8, ModBlocks.ore_asbestos); DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.ironClusterSpawn, 6, 5, 50, ModBlocks.cluster_iron); DungeonToolbox.generateOre(world, rand, i, j, WorldConfig.titaniumClusterSpawn, 6, 5, 30, ModBlocks.cluster_titanium); @@ -158,9 +159,11 @@ public class HbmWorldGen implements IWorldGenerator { if(WorldConfig.gasbubbleSpawn > 0 && rand.nextInt(WorldConfig.gasbubbleSpawn) == 0) DungeonToolbox.generateOre(world, rand, i, j, 1, 32, 30, 10, ModBlocks.gas_flammable); - DepthDeposit.generateCondition(world, i, 0, 3, j, 5, 0.6D, ModBlocks.cluster_depth_iron, rand, 16); - DepthDeposit.generateCondition(world, i, 0, 3, j, 5, 0.6D, ModBlocks.cluster_depth_titanium, rand, 16); - DepthDeposit.generateCondition(world, i, 0, 3, j, 5, 0.6D, ModBlocks.cluster_depth_tungsten, rand, 16); + DepthDeposit.generateCondition(world, i, 0, 3, j, 5, 0.6D, ModBlocks.cluster_depth_iron, rand, 24); + DepthDeposit.generateCondition(world, i, 0, 3, j, 5, 0.6D, ModBlocks.cluster_depth_titanium, rand, 32); + DepthDeposit.generateCondition(world, i, 0, 3, j, 5, 0.6D, ModBlocks.cluster_depth_tungsten, rand, 32); + DepthDeposit.generateCondition(world, i, 0, 3, j, 5, 0.8D, ModBlocks.ore_depth_cinnebar, rand, 16); + DepthDeposit.generateCondition(world, i, 0, 3, j, 5, 0.8D, ModBlocks.ore_depth_zirconium, rand, 16); for (int k = 0; k < 6; k++) { int randPosX = i + rand.nextInt(16); diff --git a/src/main/java/com/hbm/lib/RefStrings.java b/src/main/java/com/hbm/lib/RefStrings.java index 83bb7e3e8..8dbbf7902 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 (3826)"; + public static final String VERSION = "1.0.27 BETA (3864)"; //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 a08fbce9e..7fe932dec 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -270,12 +270,12 @@ public class ClientProxy extends ServerProxy { MinecraftForgeClient.registerItemRenderer(ModItems.gun_panzerschreck, new ItemRenderRpg()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_stinger, new ItemRenderStinger()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_skystinger, new ItemRenderStinger()); - MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver, new ItemRenderRevolver()); - MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_saturnite, new ItemRenderRevolver()); - MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_iron, new ItemRenderRevolverIron()); - MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_gold, new ItemRenderRevolverGold()); - MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_lead, new ItemRenderRevolverLead()); - MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_schrabidium, new ItemRenderRevolverSchrabidium()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver, new ItemRenderWeaponFFColt(ResourceManager.ff_gun_bright, ResourceManager.ff_iron, ResourceManager.ff_wood)); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_saturnite, new ItemRenderWeaponFFColt(ResourceManager.ff_saturnite, ResourceManager.ff_iron, ResourceManager.ff_wood)); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_iron, new ItemRenderWeaponFFColt(ResourceManager.ff_iron, ResourceManager.ff_iron, ResourceManager.ff_wood)); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_gold, new ItemRenderWeaponFFColt(ResourceManager.ff_gold, ResourceManager.ff_gold, ResourceManager.ff_gun_dark)); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_lead, new ItemRenderWeaponFFColt(ResourceManager.ff_lead, ResourceManager.ff_iron, ResourceManager.ff_gun_dark)); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_schrabidium, new ItemRenderWeaponFFColt(ResourceManager.ff_schrabidium, ResourceManager.ff_schrabidium, ResourceManager.ff_gun_dark)); MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_cursed, new ItemRenderRevolverCursed()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_nightmare, new ItemRenderRevolverNightmare(ModItems.gun_revolver_nightmare)); MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_nightmare2, new ItemRenderRevolverNightmare(ModItems.gun_revolver_nightmare2)); diff --git a/src/main/java/com/hbm/main/CraftingManager.java b/src/main/java/com/hbm/main/CraftingManager.java index 56c0359bb..0b4791d8f 100644 --- a/src/main/java/com/hbm/main/CraftingManager.java +++ b/src/main/java/com/hbm/main/CraftingManager.java @@ -181,8 +181,8 @@ public class CraftingManager { //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.levitation_unit, 1), new Object[] { "CSC", "TAT", "PSP", 'C', ModItems.coil_copper, 'S', ModItems.nugget_schrabidium, 'T', ModItems.coil_tungsten, 'P', "plateTitanium", 'A', "ingotSteel" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.cap_aluminium, 1), new Object[] { "PIP", 'P', "plateAluminum", 'I', "ingotAluminum" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hull_small_steel, 1), new Object[] { "PPP", " ", "PPP", 'P', "plateSteel", 'I', "ingotSteel" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hull_small_aluminium, 1), new Object[] { "PPP", " ", "PPP", 'P', "plateAluminum", 'I', "ingotAluminum" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hull_small_steel, 3), new Object[] { "PPP", " ", "PPP", 'P', "plateSteel", 'I', "ingotSteel" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hull_small_aluminium, 3), new Object[] { "PPP", " ", "PPP", 'P', "plateAluminum", 'I', "ingotAluminum" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hull_big_steel, 1), new Object[] { "III", " ", "III", 'P', "plateSteel", 'I', "ingotSteel" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hull_big_aluminium, 1), new Object[] { "III", " ", "III", 'P', "plateAluminum", 'I', "ingotAluminum" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hull_big_titanium, 1), new Object[] { "III", " ", "III", 'P', "plateTitanium", 'I', "ingotTitanium" })); @@ -725,6 +725,26 @@ public class CraftingManager { GameRegistry.addRecipe(new ItemStack(ModItems.ingot_dineutronium, 8), new Object[] { "UUU", "UPU", "UUU", 'U', ModItems.ingot_schrabidate, 'P', new ItemStack(ModItems.particle_sparkticle).setStackDisplayName("Sparkticle (Temporary Recipe)") }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.fireworks, 1), new Object[] { "PPP", "PPP", "WIW", 'P', Items.paper, 'W', "plankWood", 'I', "ingotIron" })); + + GameRegistry.addRecipe(new ItemStack(ModBlocks.rbmk_moderator, 1), new Object[] { " G ", "GRG", " G ", 'G', ModBlocks.block_graphite, 'R', ModBlocks.rbmk_blank }); + GameRegistry.addRecipe(new ItemStack(ModBlocks.rbmk_absorber, 1), new Object[] { " G ", "GRG", " G ", 'G', ModBlocks.block_boron, 'R', ModBlocks.rbmk_blank }); + GameRegistry.addRecipe(new ItemStack(ModBlocks.rbmk_reflector, 1), new Object[] { "GGG", "GRG", "GGG", 'G', ModItems.neutron_reflector, 'R', ModBlocks.rbmk_blank }); + GameRegistry.addRecipe(new ItemStack(ModBlocks.rbmk_control, 1), new Object[] { "GBG", "GRG", "GBG", 'G', ModItems.ingot_boron, 'B', ModItems.motor, 'R', ModBlocks.rbmk_absorber }); + GameRegistry.addRecipe(new ItemStack(ModBlocks.rbmk_control_auto, 1), new Object[] { "C", "R", "C", 'C', ModItems.circuit_targeting_tier1, 'R', ModBlocks.rbmk_control }); + GameRegistry.addRecipe(new ItemStack(ModBlocks.rbmk_boiler, 1), new Object[] { "CPC", "CRC", "CPC", 'C', ModItems.board_copper, 'P', ModItems.pipes_steel, 'R', ModBlocks.rbmk_blank }); + GameRegistry.addRecipe(new ItemStack(ModBlocks.rbmk_rod, 1), new Object[] { "C", "R", "C", 'C', ModItems.hull_small_steel, 'R', ModBlocks.rbmk_blank }); + GameRegistry.addRecipe(new ItemStack(ModBlocks.rbmk_console, 1), new Object[] { "PPP", "PCP", "PPP", 'C', ModItems.circuit_targeting_tier3, 'P', Items.potato }); + + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.ladder_sturdy, 8), new Object[] { "LLL", "L#L", "LLL", 'L', Blocks.ladder, '#', "plankWood" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.ladder_iron, 8), new Object[] { "LLL", "L#L", "LLL", 'L', Blocks.ladder, '#', "ingotIron" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.ladder_gold, 8), new Object[] { "LLL", "L#L", "LLL", 'L', Blocks.ladder, '#', "ingotGold" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.ladder_aluminium, 8), new Object[] { "LLL", "L#L", "LLL", 'L', Blocks.ladder, '#', "ingotAluminum" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.ladder_copper, 8), new Object[] { "LLL", "L#L", "LLL", 'L', Blocks.ladder, '#', "ingotCopper" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.ladder_titanium, 8), new Object[] { "LLL", "L#L", "LLL", 'L', Blocks.ladder, '#', "ingotTitanium" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.ladder_lead, 8), new Object[] { "LLL", "L#L", "LLL", 'L', Blocks.ladder, '#', "ingotLead" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.ladder_cobalt, 8), new Object[] { "LLL", "L#L", "LLL", 'L', Blocks.ladder, '#', "ingotCobalt" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.ladder_steel, 8), new Object[] { "LLL", "L#L", "LLL", 'L', Blocks.ladder, '#', "ingotSteel" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.ladder_tungsten, 8), new Object[] { "LLL", "L#L", "LLL", 'L', Blocks.ladder, '#', "ingotTungsten" })); if(GeneralConfig.enableBabyMode) { GameRegistry.addShapelessRecipe(new ItemStack(ModItems.cordite, 3), new Object[] { ModItems.ballistite, Items.gunpowder, new ItemStack(Blocks.wool, 1, OreDictionary.WILDCARD_VALUE) }); @@ -865,6 +885,7 @@ public class CraftingManager { GameRegistry.addSmelting(ModItems.powder_polymer, new ItemStack(ModItems.ingot_polymer), 1.0F); GameRegistry.addSmelting(ModItems.powder_lanthanium, new ItemStack(ModItems.ingot_lanthanium), 1.0F); GameRegistry.addSmelting(ModItems.powder_actinium, new ItemStack(ModItems.ingot_actinium), 1.0F); + GameRegistry.addSmelting(ModItems.powder_boron, new ItemStack(ModItems.ingot_boron), 1.0F); GameRegistry.addSmelting(ModItems.powder_desh, new ItemStack(ModItems.ingot_desh), 1.0F); GameRegistry.addSmelting(ModItems.powder_dineutronium, new ItemStack(ModItems.ingot_dineutronium), 5.0F); GameRegistry.addSmelting(ModItems.powder_asbestos, new ItemStack(ModItems.ingot_asbestos), 1.0F); diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index 4bb80af47..cea5bee26 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -523,6 +523,7 @@ public class ResourceManager { public static final IModelCustom vortex = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/vortex.obj")); public static final IModelCustom thompson = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/thompson.obj")); public static final IModelCustom bolter = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/bolter.obj")); + public static final IModelCustom ff_python = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/python.obj")); public static final IModelCustom grenade_frag = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/grenade_frag.obj")); public static final IModelCustom grenade_aschrab = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/grenade_aschrab.obj")); @@ -577,6 +578,17 @@ public class ResourceManager { public static final ResourceLocation bolter_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/bolter.png"); public static final ResourceLocation bolter_digamma_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/bolter_digamma.png"); + public static final ResourceLocation ff_gold = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/gold.png"); + public static final ResourceLocation ff_gun_bright = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/gun_bright.png"); + public static final ResourceLocation ff_gun_dark = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/gun_dark.png"); + public static final ResourceLocation ff_gun_normal = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/gun_normal.png"); + public static final ResourceLocation ff_iron = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/iron.png"); + public static final ResourceLocation ff_lead = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/lead.png"); + public static final ResourceLocation ff_saturnite = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/saturnite.png"); + public static final ResourceLocation ff_schrabidium = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/schrabidium.png"); + public static final ResourceLocation ff_wood = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/wood.png"); + public static final ResourceLocation ff_wood_red = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/wood_red.png"); + public static final ResourceLocation grenade_mk2 = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/grenade_mk2.png"); public static final ResourceLocation grenade_aschrab_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/grenade_aschrab.png"); diff --git a/src/main/java/com/hbm/render/item/weapon/ItemRenderWeaponFFColt.java b/src/main/java/com/hbm/render/item/weapon/ItemRenderWeaponFFColt.java new file mode 100644 index 000000000..a51de09ef --- /dev/null +++ b/src/main/java/com/hbm/render/item/weapon/ItemRenderWeaponFFColt.java @@ -0,0 +1,105 @@ +package com.hbm.render.item.weapon; + +import org.lwjgl.opengl.GL11; + +import com.hbm.main.ResourceManager; + +import net.minecraft.client.Minecraft; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.client.IItemRenderer; + +public class ItemRenderWeaponFFColt implements IItemRenderer { + + ResourceLocation main; + ResourceLocation hammer; + ResourceLocation grip; + + public ItemRenderWeaponFFColt(ResourceLocation main, ResourceLocation hammer, ResourceLocation grip) { + this.main = main; + this.hammer = hammer; + this.grip = grip; + } + + @Override + public boolean handleRenderType(ItemStack item, ItemRenderType type) { + switch(type) { + case EQUIPPED: + case EQUIPPED_FIRST_PERSON: + case ENTITY: + case INVENTORY: + return true; + default: return false; + } + } + + @Override + public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) { + + return type == ItemRenderType.ENTITY && (helper == ItemRendererHelper.ENTITY_ROTATION || helper == ItemRendererHelper.ENTITY_BOBBING); + } + + @Override + public void renderItem(ItemRenderType type, ItemStack item, Object... data) { + + GL11.glPushMatrix(); + + GL11.glEnable(GL11.GL_CULL_FACE); + + switch(type) { + + case EQUIPPED_FIRST_PERSON: + + double s0 = 1.5D; + GL11.glTranslated(0.75, 0.5, 0); + GL11.glScaled(s0, s0, s0); + GL11.glRotated(100, 0, -1, 0); + GL11.glRotated(25, 1, 0, 0); + + break; + + case EQUIPPED: + + double scale = 1.5D; + GL11.glRotated(195, 0, 1, 0); + GL11.glRotated(-10, 0, 0, 1); + GL11.glRotated(-10, 1, 0, 0); + GL11.glTranslated(-0.5, 0.1, -0.25); + GL11.glScaled(scale, scale, scale); + + break; + + case ENTITY: + + double s1 = 1D; + GL11.glScaled(s1, s1, s1); + GL11.glRotated(90, 0, 1, 0); + + break; + + case INVENTORY: + + GL11.glEnable(GL11.GL_LIGHTING); + + double s = 17D; + GL11.glTranslated(8, 8, 0); + GL11.glRotated(-135, 0, 0, 1); + GL11.glRotated(90, 0, 1, 0); + GL11.glScaled(s, s, -s); + + break; + + default: break; + } + + Minecraft.getMinecraft().renderEngine.bindTexture(main); + ResourceManager.ff_python.renderPart("Body"); + ResourceManager.ff_python.renderPart("Cylinder"); + Minecraft.getMinecraft().renderEngine.bindTexture(grip); + ResourceManager.ff_python.renderPart("Grip"); + Minecraft.getMinecraft().renderEngine.bindTexture(hammer); + ResourceManager.ff_python.renderPart("Hammer"); + + GL11.glPopMatrix(); + } +} diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCrystallizer.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCrystallizer.java index 5b97cc3fd..d1a70c097 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCrystallizer.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCrystallizer.java @@ -109,8 +109,8 @@ public class TileEntityMachineCrystallizer extends TileEntityMachineBase impleme if(slots[2] == null) slots[2] = result; - else if(slots[2].stackSize < slots[2].getMaxStackSize()) - slots[2].stackSize++; + else if(slots[2].stackSize + result.stackSize <= slots[2].getMaxStackSize()) + slots[2].stackSize += result.stackSize; float freeChance = this.getFreeChance(); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSeleniumEngine.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSeleniumEngine.java index 091be74cb..8c45b55f5 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSeleniumEngine.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSeleniumEngine.java @@ -269,6 +269,8 @@ public class TileEntityMachineSeleniumEngine extends TileEntity implements ISide return 50; if(type.name().equals(FluidType.HEATINGOIL.name())) return 75; + if(type.name().equals(FluidType.HYDROGEN.name())) + return 500; if(type.name().equals(FluidType.DIESEL.name())) return 225; if(type.name().equals(FluidType.KEROSENE.name())) diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/RBMKDials.java b/src/main/java/com/hbm/tileentity/machine/rbmk/RBMKDials.java index 47c53700d..5d1d8b08f 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/RBMKDials.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/RBMKDials.java @@ -13,17 +13,21 @@ public class RBMKDials { public static final String KEY_COLUMN_HEIGHT = "dialColumnHeight"; public static final String KEY_PERMANENT_SCRAP = "dialEnablePermaScrap"; public static final String KEY_BOILER_HEAT_CONSUMPTION = "dialBoilerHeatConsumption"; + public static final String KEY_CONTROL_SPEED_MOD = "dialControlSpeed"; + public static final String KEY_REACTIVITY_MOD = "dialReactivityMod"; public static void createDials(World world) { GameRules rules = world.getGameRules(); - rules.setOrCreateGameRule(KEY_PASSIVE_COOLING, "5.0"); + rules.setOrCreateGameRule(KEY_PASSIVE_COOLING, "1.0"); rules.setOrCreateGameRule(KEY_COLUMN_HEAT_FLOW, "0.2"); - rules.setOrCreateGameRule(KEY_FUEL_DIFFUSION_MOD, "1.0"); + rules.setOrCreateGameRule(KEY_FUEL_DIFFUSION_MOD, "0.02"); rules.setOrCreateGameRule(KEY_HEAT_PROVISION, "0.2"); rules.setOrCreateGameRule(KEY_COLUMN_HEIGHT, "4"); rules.setOrCreateGameRule(KEY_PERMANENT_SCRAP, "false"); rules.setOrCreateGameRule(KEY_BOILER_HEAT_CONSUMPTION, "0.1"); + rules.setOrCreateGameRule(KEY_CONTROL_SPEED_MOD, "1.0"); + rules.setOrCreateGameRule(KEY_REACTIVITY_MOD, "1.0"); } /** @@ -32,7 +36,7 @@ public class RBMKDials { * @return */ public static double getPassiveCooling(World world) { - return shittyWorkaroundParseDouble(world.getGameRules().getGameRuleStringValue(KEY_PASSIVE_COOLING), 5.0D); + return Math.max(shittyWorkaroundParseDouble(world.getGameRules().getGameRuleStringValue(KEY_PASSIVE_COOLING), 5.0D), 0.0D); } /** @@ -89,6 +93,24 @@ public class RBMKDials { return Math.max(shittyWorkaroundParseDouble(world.getGameRules().getGameRuleStringValue(KEY_BOILER_HEAT_CONSUMPTION), 0.1D), 0D); } + /** + * A multiplier for how quickly the control rods move. + * @param world + * @return + */ + public static double getControlSpeed(World world) { + return Math.max(shittyWorkaroundParseDouble(world.getGameRules().getGameRuleStringValue(KEY_CONTROL_SPEED_MOD), 1.0D), 0.0D); + } + + /** + * A multiplier for how much flux the rods give out. + * @param world + * @return + */ + public static double getReactivityMod(World world) { + return Math.max(shittyWorkaroundParseDouble(world.getGameRules().getGameRuleStringValue(KEY_REACTIVITY_MOD), 1.0D), 0.0D); + } + //why make the double representation accessible in a game rule when you can just force me to add a second pointless parsing operation? public static double shittyWorkaroundParseDouble(String s, double def) { diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKBoiler.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKBoiler.java index 990cb0d7d..17d36d13e 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKBoiler.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKBoiler.java @@ -57,6 +57,8 @@ public class TileEntityRBMKBoiler extends TileEntityRBMKSlottedBase implements I if(steam.getFill() > steam.getMaxFill()) { steam.setFill(steam.getMaxFill()); } + + this.heat -= waterUsed * RBMKDials.getBoilerHeatConsumption(worldObj); } fillFluidInit(steam.getTankType()); @@ -89,7 +91,7 @@ public class TileEntityRBMKBoiler extends TileEntityRBMKSlottedBase implements I @Override public void fillFluidInit(FluidType type) { - + fillFluid(this.xCoord, this.yCoord + RBMKDials.getColumnHeight(worldObj) + 1, this.zCoord, getTact(), type); } @@ -100,7 +102,7 @@ public class TileEntityRBMKBoiler extends TileEntityRBMKSlottedBase implements I @Override @Deprecated //why are we still doing this? - public boolean getTact() { return false; } + public boolean getTact() { return worldObj.getTotalWorldTime() % 2 == 0; } @Override public void setFluidFill(int i, FluidType type) { @@ -248,4 +250,15 @@ public class TileEntityRBMKBoiler extends TileEntityRBMKSlottedBase implements I public ColumnType getConsoleType() { return ColumnType.BOILER; } + + @Override + public NBTTagCompound getNBTForConsole() { + NBTTagCompound data = new NBTTagCompound(); + data.setInteger("water", this.feed.getFill()); + data.setInteger("maxWater", this.feed.getMaxFill()); + data.setInteger("steam", this.steam.getFill()); + data.setInteger("maxSteam", this.steam.getMaxFill()); + data.setShort("type", (short)this.steam.getTankType().ordinal()); + return data; + } } diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKConsole.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKConsole.java index 38f9066eb..7f3ea60fa 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKConsole.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKConsole.java @@ -1,20 +1,27 @@ package com.hbm.tileentity.machine.rbmk; +import java.util.Set; + +import com.hbm.interfaces.IControlReceiver; import com.hbm.tileentity.TileEntityMachineBase; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.entity.player.EntityPlayer; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.AxisAlignedBB; +import net.minecraft.util.MathHelper; +import net.minecraft.util.Vec3; -public class TileEntityRBMKConsole extends TileEntityMachineBase { +public class TileEntityRBMKConsole extends TileEntityMachineBase implements IControlReceiver { private int targetX; private int targetY; private int targetZ; - public RBMKColumn[][] columns = new RBMKColumn[15][15]; + //made this one-dimensional because it's a lot easier to serialize + public RBMKColumn[] columns = new RBMKColumn[15 * 15]; public TileEntityRBMKConsole() { super(0); @@ -32,6 +39,7 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase { if(this.worldObj.getTotalWorldTime() % 10 == 0) { rescan(); + prepareNetworkPack(); } } } @@ -42,15 +50,76 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase { for(int j = -7; j <= 7; j++) { TileEntity te = worldObj.getTileEntity(targetX + i, targetY, targetZ + j); + int index = (i + 7) + (j + 7) * 15; if(te instanceof TileEntityRBMKBase) { TileEntityRBMKBase rbmk = (TileEntityRBMKBase)te; - columns[i + 7][j + 7] = new RBMKColumn(rbmk.getConsoleType(), rbmk.getNBTForConsole()); + columns[index] = new RBMKColumn(rbmk.getConsoleType(), rbmk.getNBTForConsole()); + columns[index].data.setDouble("heat", rbmk.heat); + columns[index].data.setDouble("maxHeat", rbmk.maxHeat()); } else { - columns[i + 7][j + 7] = null; + columns[index] = null; + } + } + } + } + + private void prepareNetworkPack() { + + NBTTagCompound data = new NBTTagCompound(); + + for(int i = 0; i < columns.length; i++) { + + if(this.columns[i] != null) { + data.setTag("column_" + i, this.columns[i].data); + data.setShort("type_" + i, (short)this.columns[i].type.ordinal()); + } + } + + this.networkPack(data, 50); + } + + @Override + public void networkUnpack(NBTTagCompound data) { + + this.columns = new RBMKColumn[15 * 15]; + + for(int i = 0; i < columns.length; i++) { + + if(data.hasKey("type_" + i)) { + this.columns[i] = new RBMKColumn(ColumnType.values()[data.getShort("type_" + i)], (NBTTagCompound)data.getTag("column_" + i)); + } + } + } + + @Override + public boolean hasPermission(EntityPlayer player) { + return Vec3.createVectorHelper(xCoord - player.posX, yCoord - player.posY, zCoord - player.posZ).lengthVector() < 20; + } + + @Override + public void receiveControl(NBTTagCompound data) { + + if(data.hasKey("level")) { + + Set keys = data.func_150296_c(); + + for(String key : keys) { + + if(key.startsWith("sel_")) { + + int x = data.getInteger(key) % 15 - 7; + int z = data.getInteger(key) / 15 - 7; + + TileEntity te = worldObj.getTileEntity(targetX + x, targetY, targetZ + z); + + if(te instanceof TileEntityRBMKControlManual) { + ((TileEntityRBMKControlManual)te).targetLevel = MathHelper.clamp_double(data.getDouble("level"), 0, 1); + te.markDirty(); + } } } } @@ -74,6 +143,24 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase { this.markDirty(); } + @Override + public void readFromNBT(NBTTagCompound nbt) { + super.readFromNBT(nbt); + + this.targetX = nbt.getInteger("tX"); + this.targetY = nbt.getInteger("tY"); + this.targetZ = nbt.getInteger("tZ"); + } + + @Override + public void writeToNBT(NBTTagCompound nbt) { + super.writeToNBT(nbt); + + nbt.setInteger("tX", this.targetX); + nbt.setInteger("tY", this.targetY); + nbt.setInteger("tZ", this.targetZ); + } + public static class RBMKColumn { public ColumnType type; @@ -85,18 +172,29 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase { public RBMKColumn(ColumnType type, NBTTagCompound data) { this.type = type; - this.data = data; + + if(data != null) { + this.data = data; + } else { + this.data = new NBTTagCompound(); + } } } public static enum ColumnType { - BLANK, - FUEL, - CONTROL, - CONTROL_AUTO, - BOILER, - MODERATOR, - ABSORBER, - REFLECTOR + BLANK(0), + FUEL(10), + CONTROL(20), + CONTROL_AUTO(30), + BOILER(40), + MODERATOR(50), + ABSORBER(60), + REFLECTOR(70); + + public int offset; + + private ColumnType(int offset) { + this.offset = offset; + } } } diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKControl.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKControl.java index 673f31274..9626114fe 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKControl.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKControl.java @@ -33,7 +33,7 @@ public abstract class TileEntityRBMKControl extends TileEntityRBMKSlottedBase { if(level < targetLevel) { - level += speed; + level += speed * RBMKDials.getControlSpeed(worldObj); if(level > targetLevel) level = targetLevel; @@ -41,7 +41,7 @@ public abstract class TileEntityRBMKControl extends TileEntityRBMKSlottedBase { if(level > targetLevel) { - level -= speed; + level -= speed * RBMKDials.getControlSpeed(worldObj); if(level < targetLevel) level = targetLevel; @@ -116,4 +116,11 @@ public abstract class TileEntityRBMKControl extends TileEntityRBMKSlottedBase { //control rods will not spawn lid projectiles since the lid is already part of the rod projectiles //super.onMelt(reduce); } + + @Override + public NBTTagCompound getNBTForConsole() { + NBTTagCompound data = new NBTTagCompound(); + data.setDouble("level", this.level); + return data; + } } diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKControlManual.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKControlManual.java index 1593ee916..ca3428182 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKControlManual.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKControlManual.java @@ -73,4 +73,16 @@ public class TileEntityRBMKControlManual extends TileEntityRBMKControl implement public ColumnType getConsoleType() { return ColumnType.CONTROL; } + + @Override + public NBTTagCompound getNBTForConsole() { + NBTTagCompound data = super.getNBTForConsole(); + + if(this.color != null) + data.setShort("color", (short)this.color.ordinal()); + else + data.setShort("color", (short)-1); + + return data; + } } diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKRod.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKRod.java index 99a8cefbb..fcf0e9cd1 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKRod.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKRod.java @@ -49,7 +49,7 @@ public class TileEntityRBMKRod extends TileEntityRBMKSlottedBase implements IRBM double fluxIn = fluxFromType(rod.nType); //System.out.println(fluxIn + " - " + this.fluxFast + " - " + this.fluxSlow); - double fluxOut = rod.burn(slots[0], fluxIn); + double fluxOut = rod.burn(worldObj, slots[0], fluxIn); NType rType = rod.rType; rod.updateHeat(worldObj, slots[0]); @@ -229,4 +229,20 @@ public class TileEntityRBMKRod extends TileEntityRBMKSlottedBase implements IRBM public ColumnType getConsoleType() { return ColumnType.FUEL; } + + @Override + public NBTTagCompound getNBTForConsole() { + NBTTagCompound data = new NBTTagCompound(); + + if(slots[0] != null && slots[0].getItem() instanceof ItemRBMKRod) { + + ItemRBMKRod rod = ((ItemRBMKRod)slots[0].getItem()); + data.setDouble("enrichment", rod.getEnrichment(slots[0])); + data.setDouble("xenon", rod.getPoison(slots[0])); + data.setDouble("c_heat", rod.getHullHeat(slots[0])); + data.setDouble("c_maxHeat", rod.meltingPoint); + } + + return data; + } } diff --git a/src/main/java/com/hbm/util/ArmorUtil.java b/src/main/java/com/hbm/util/ArmorUtil.java index b2adcde25..0c8525593 100644 --- a/src/main/java/com/hbm/util/ArmorUtil.java +++ b/src/main/java/com/hbm/util/ArmorUtil.java @@ -171,52 +171,43 @@ public class ArmorUtil { public static boolean checkForGasMask(EntityPlayer player) { - if(checkArmorPiece(player, ModItems.hazmat_helmet, 3)) - { + if(checkArmorPiece(player, ModItems.hazmat_helmet, 3)) { return true; } - if(checkArmorPiece(player, ModItems.hazmat_helmet_red, 3)) - { + if(checkArmorPiece(player, ModItems.hazmat_helmet_red, 3)) { return true; } - if(checkArmorPiece(player, ModItems.hazmat_helmet_grey, 3)) - { + if(checkArmorPiece(player, ModItems.hazmat_helmet_grey, 3)) { return true; } - if(checkArmorPiece(player, ModItems.hazmat_paa_helmet, 3)) - { + if(checkArmorPiece(player, ModItems.hazmat_paa_helmet, 3)) { return true; } - if(checkArmorPiece(player, ModItems.liquidator_helmet, 3)) - { + if(checkArmorPiece(player, ModItems.liquidator_helmet, 3)) { return true; } - if(checkArmorPiece(player, ModItems.gas_mask, 3)) - { + if(checkArmorPiece(player, ModItems.gas_mask, 3)) { return true; } - if(checkArmorPiece(player, ModItems.gas_mask_m65, 3)) - { + if(checkArmorPiece(player, ModItems.gas_mask_m65, 3)) { return true; } - if(checkArmorPiece(player, ModItems.t45_helmet, 3)) - { + if(checkArmorPiece(player, ModItems.t45_helmet, 3)) { return true; } - if(checkArmorPiece(player, ModItems.ajr_helmet, 3)) - { + if(checkArmorPiece(player, ModItems.ajr_helmet, 3)) { return true; } - if(checkArmorPiece(player, ModItems.hev_helmet, 3)) - { + if(checkArmorPiece(player, ModItems.ajro_helmet, 3)) { return true; } - if(checkArmorPiece(player, ModItems.schrabidium_helmet, 3)) - { + if(checkArmorPiece(player, ModItems.hev_helmet, 3)) { return true; } - if(checkArmorPiece(player, ModItems.euphemium_helmet, 3)) - { + if(checkArmorPiece(player, ModItems.schrabidium_helmet, 3)) { + return true; + } + if(checkArmorPiece(player, ModItems.euphemium_helmet, 3)) { return true; } @@ -260,40 +251,34 @@ public class ArmorUtil { public static boolean checkForGoggles(EntityPlayer player) { - if(checkArmorPiece(player, ModItems.goggles, 3)) - { + if(checkArmorPiece(player, ModItems.goggles, 3)) { return true; } - if(checkArmorPiece(player, ModItems.hazmat_helmet_red, 3)) - { + if(checkArmorPiece(player, ModItems.hazmat_helmet_red, 3)) { return true; } - if(checkArmorPiece(player, ModItems.hazmat_helmet_grey, 3)) - { + if(checkArmorPiece(player, ModItems.hazmat_helmet_grey, 3)) { return true; } - if(checkArmorPiece(player, ModItems.liquidator_helmet, 3)) - { + if(checkArmorPiece(player, ModItems.liquidator_helmet, 3)) { return true; } - if(checkArmorPiece(player, ModItems.gas_mask, 3)) - { + if(checkArmorPiece(player, ModItems.gas_mask, 3)) { return true; } - if(checkArmorPiece(player, ModItems.t45_helmet, 3)) - { + if(checkArmorPiece(player, ModItems.t45_helmet, 3)) { return true; } - if(checkArmorPiece(player, ModItems.ajr_helmet, 3)) - { + if(checkArmorPiece(player, ModItems.ajr_helmet, 3)) { return true; } - if(checkArmorPiece(player, ModItems.bj_helmet, 3)) - { + if(checkArmorPiece(player, ModItems.ajro_helmet, 3)) { return true; } - if(checkArmorPiece(player, ModItems.hev_helmet, 3)) - { + if(checkArmorPiece(player, ModItems.bj_helmet, 3)) { + return true; + } + if(checkArmorPiece(player, ModItems.hev_helmet, 3)) { return true; } diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index d054c9a2b..d8e51b890 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -107,6 +107,7 @@ chem.CC_OIL=Kohleverflüssigung chem.CIRCUIT_4=Überstaktete Schaltkreisherstellung chem.CIRCUIT_5=Leistungsstarke Schaltkreisherstellung chem.CONCRETE=Betonherstellung +chem.CONCRETE_ASBESTOS=Asbestbetonherstellung chem.COOLANT=Kühlflüssigkeit mischen chem.CORDITE=Korditherstellung chem.CRYOGEL=Kryogel mischen @@ -680,9 +681,11 @@ item.billet_co60.name=Kobalt-60-Billet item.billet_mox_fuel.name=MOX-Kernbrennstoffbillet item.billet_neptunium.name=Neptuniumbillet item.billet_neptunium_fuel.name=Neptuniumkernbrennstoffbillet +item.billet_po210be.name=Po210Be-Billet item.billet_polonium.name=Polonium-210-Billet item.billet_pu_mix.name=Reaktorfähiges Plutoniumbillet item.billet_pu238.name=Pu238-Billet +item.billet_pu238be.name=Pu238Be-Billet item.billet_pu239.name=Pu239-Billet item.billet_pu240.name=Pu240-Billet item.billet_plutonium.name=Plutoniumbillet @@ -863,6 +866,7 @@ item.chopper_head.name=Jagdschrauber Cockpit item.chopper_tail.name=Jagdschrauber Heck item.chopper_torso.name=Jagdschrauber Rumpf item.chopper_wing.name=Jagdschrauber Seitentragfläche +item.cinnebar.name=Zinnober item.circuit_aluminium.name=Einfacher Schaltkreis item.circuit_copper.name=Erweiterter Schaltkreis item.circuit_gold.name=Übertakteter Schaltkreis @@ -1097,6 +1101,7 @@ item.folly_bullet_nuclear.name=12,8cm Atomares Geschoss item.folly_shell.name=Silberne Kanonenhülse item.fooditem.name=lebensmittel item.fragment_actinium.name=Actiniumfragment +item.fragment_boron.name=Borfragment item.fragment_cerium.name=Cerium Ffragment item.fragment_cobalt.name=Cobaltfragment item.fragment_lanthanium.name=Lanthanfragment @@ -1834,6 +1839,8 @@ item.powder_au198.name=Gold-198-Staub item.powder_australium.name=Australiumstaub item.powder_balefire.name=Thermonukleare Asche item.powder_beryllium.name=Berylliumstaub +item.powder_boron.name=Borstaub +item.powder_boron_tiny.name=Kleiner Haufen Borstaub item.powder_bromine.name=Bromstaub item.powder_caesium.name=Caesiumstaub item.powder_cerium.name=Cerstaub @@ -1934,6 +1941,10 @@ item.rbmk_fuel_po210be.name=Po210Be-RBMK-Neutronenquelle item.rbmk_fuel_pu238be.name=Pu238Be-RBMK-Neutronenquelle item.rbmk_fuel_thmeu.name=ThMEU-RBMK-Kernbrennstoff item.rbmk_lid.name=RBMK-Abdeckplatte +item.rbmk_tool.name=RBMK-Konsolen-Verlinkungsgerät +item.rbmk_tool.desc=Schleichen und Rechtsclick auf RBMK um Position zu speichern,$Schleichen und Rechtsclick auf Konsole um zu verlinken! +item.rbmk_tool.linked=Position gespeichert! +item.rbmk_tool.set=RBMK verlinkt! item.reactor_core.name=Brutreaktorkern item.reactor_sensor.name=Reaktor-Fernsensor item.record.glass.desc=? ? ? @@ -2368,6 +2379,7 @@ tile.ams_emitter.name=AMS-Emitter [WIP] tile.ams_limiter.name=AMS-Stabilisator [WIP] tile.ancient_scrap.name=Antikes Altmetall tile.asphalt.name=Asphalt +tile.asphalt_light.name=Leuchtender Asphalt tile.barbed_wire.name=Stacheldraht tile.barbed_wire_acid.name=Ätzender Stacheldraht tile.barbed_wire_fire.name=Flammender Stacheldraht @@ -2461,6 +2473,7 @@ tile.block_waste_painted.name=Bemalter Atommüllblock tile.block_weidanium.name=Weidaniumblock tile.block_white_phosphorus.name=Weißer Phosphorblock tile.block_yellowcake.name=Yellowcakeblock +tile.block_zirconium.name=Zirkoniumblock tile.boat.name=Boot tile.bomb_multi.name=Mehrzweckbombe tile.bomber.name=Abgestürtzer Bomber @@ -2503,6 +2516,7 @@ tile.cmb_brick.name=CMB-Stahlfliese tile.cmb_brick_reinforced.name=Verstärkte CMB-Ziegel tile.compact_launcher.name=Kompakt-Startrampe tile.concrete.name=Betonfliese +tile.concrete_asbestos.name=Asbestbeton tile.concrete_pillar.name=Stahlbetonsäule tile.concrete_smooth.name=Beton tile.crashed_bomb.name=Blindgänger @@ -2763,10 +2777,13 @@ tile.ore_aluminium.name=Aluminiumerz tile.ore_asbestos.name=Asbesterz tile.ore_australium.name=Australisches Erz tile.ore_beryllium.name=Berylliumerz +tile.ore_cinnebar.name=Zinnobererz tile.ore_coal_oil.name=Öliges Kohleerz tile.ore_coal_oil_burning.name=Brennendes Öliges Kohleerz tile.ore_copper.name=Kupfererz tile.ore_daffergon.name=Dellit +tile.ore_depth_cinnebar.name=Tiefen-Zinnobererz +tile.ore_depth_zirconium.name=Tiefen-Zirkonerz tile.ore_fluorite.name=Fluoriterz tile.ore_gneiss_asbestos.name=Schiefer-Asbesterz tile.ore_gneiss_copper.name=Schiefer-Kupfererz diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index f19ad4748..f2e6016ef 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -107,6 +107,7 @@ chem.CC_OIL=Coal Liquefaction chem.CIRCUIT_4=Overclocked Circuit Production chem.CIRCUIT_5=High Performance Circuit Production chem.CONCRETE=Concrete Production +chem.CONCRETE_ASBESTOS=Asbestos Concrete Production chem.COOLANT=Coolant Mixing chem.CORDITE=Cordite Production chem.CRYOGEL=Cryogel Mixing @@ -680,9 +681,11 @@ item.billet_co60.name=Cobalt-60 Billet item.billet_mox_fuel.name=MOX Fuel Billet item.billet_neptunium.name=Neptunium Billet item.billet_neptunium_fuel.name=Neptunium Fuel Billet +item.billet_po210be.name=Po210Be Billet item.billet_polonium.name=Polonium-210 Billet item.billet_pu_mix.name=Reactor Grade Plutonium Billet item.billet_pu238.name=Pu238 Billet +item.billet_pu238be.name=Pu238Be Billet item.billet_pu239.name=Pu239 Billet item.billet_pu240.name=Pu240 Billet item.billet_plutonium.name=Plutonium Billet @@ -863,6 +866,7 @@ item.chopper_head.name=Hunter Chopper Cockpit item.chopper_tail.name=Hunter Chopper Tail item.chopper_torso.name=Hunter Chopper Body item.chopper_wing.name=Hunter Chopper Wing +item.cinnebar.name=Cinnebar item.circuit_aluminium.name=Basic Circuit item.circuit_copper.name=Enhanced Circuit item.circuit_gold.name=Overclocked Circuit @@ -1097,6 +1101,7 @@ item.folly_bullet_nuclear.name=12.8cm Nuclear Shell item.folly_shell.name=Silver Bullet Casing item.fooditem.name=food item item.fragment_actinium.name=Actinium Fragment +item.fragment_boron.name=Boron Fragment item.fragment_cerium.name=Cerium Fragment item.fragment_cobalt.name=Cobalt Fragment item.fragment_lanthanium.name=Lanthanium Fragment @@ -1834,6 +1839,8 @@ item.powder_au198.name=Gold-198 Powder item.powder_australium.name=Australium Powder item.powder_balefire.name=Thermonuclear Ashes item.powder_beryllium.name=Beryllium Powder +item.powder_boron.name=Boron Powder +item.powder_boron_tiny.name=Tiny Pile of Boron Powder item.powder_bromine.name=Bromine Powder item.powder_caesium.name=Caesium Powder item.powder_cerium.name=Cerium Powder @@ -1934,6 +1941,10 @@ item.rbmk_fuel_po210be.name=Po210Be RBMK Neutron Source item.rbmk_fuel_pu238be.name=Pu238Be RBMK Neutron Source item.rbmk_fuel_thmeu.name=ThMEU RBMK Fuel Rod item.rbmk_lid.name=RBMK Cover Panel +item.rbmk_tool.name=RBMK Console Linking Device +item.rbmk_tool.desc=Sneak and right-click RBMK to save the position,$sneak and right-click console to link! +item.rbmk_tool.linked=Position set! +item.rbmk_tool.set=RBMK linked! item.reactor_core.name=Breeding Reactor Core item.reactor_sensor.name=Reactor Remote Sensor item.record.glass.desc=? ? ? @@ -2368,6 +2379,7 @@ tile.ams_emitter.name=AMS Emitter [WIP] tile.ams_limiter.name=AMS Stabilizer [WIP] tile.ancient_scrap.name=Ancient Scrap Metal tile.asphalt.name=Asphalt +tile.asphalt_light.name=Glowing Asphalt tile.barbed_wire.name=Barbed Wire tile.barbed_wire_acid.name=Caustic Barbed Wire tile.barbed_wire_fire.name=Flaming Barbed Wire @@ -2461,6 +2473,7 @@ tile.block_waste_painted.name=Painted Block of Nuclear Waste tile.block_weidanium.name=Block of Weidanium tile.block_white_phosphorus.name=Block of White Phosphorus tile.block_yellowcake.name=Block of Yellowcake +tile.block_zirconium.name=Block of Zirconium tile.boat.name=Boat tile.bomb_multi.name=Multi Purpose Bomb tile.bomber.name=Crashed Bomber @@ -2503,6 +2516,7 @@ tile.cmb_brick.name=CMB Steel Tile tile.cmb_brick_reinforced.name=Reinforced CMB Bricks tile.compact_launcher.name=Compact Launch Pad tile.concrete.name=Concrete Tile +tile.concrete_asbestos.name=Asbestos Concrete tile.concrete_pillar.name=Rebar Reinforced Concrete Pillar tile.concrete_smooth.name=Concrete tile.crashed_bomb.name=Dud @@ -2763,10 +2777,13 @@ tile.ore_aluminium.name=Aluminium Ore tile.ore_asbestos.name=Asbestos Ore tile.ore_australium.name=Australian Ore tile.ore_beryllium.name=Beryllium Ore +tile.ore_cinnebar.name=Cinnebar Ore tile.ore_coal_oil.name=Oily Coal Ore tile.ore_coal_oil_burning.name=Burning Oily Coal Ore tile.ore_copper.name=Copper Ore tile.ore_daffergon.name=Dellite +tile.ore_depth_cinnebar.name=Depth Cinnebar Ore +tile.ore_depth_zirconium.name=Depth Zirconium Ore tile.ore_fluorite.name=Fluorite Ore tile.ore_gneiss_asbestos.name=Schist Asbestos Ore tile.ore_gneiss_copper.name=Schist Copper Ore diff --git a/src/main/resources/assets/hbm/models/weapons/python.obj b/src/main/resources/assets/hbm/models/weapons/python.obj new file mode 100644 index 000000000..ce42559c3 --- /dev/null +++ b/src/main/resources/assets/hbm/models/weapons/python.obj @@ -0,0 +1,3672 @@ +# Blender v2.79 (sub 0) OBJ File: 'python.blend' +# www.blender.org +o Cylinder +v 0.040155 0.134253 0.138325 +v -0.032489 0.061608 0.138325 +v 0.040155 0.134253 0.000825 +v -0.032489 0.061608 0.000825 +v 0.030419 0.143989 0.000825 +v -0.042225 0.071345 0.000825 +v 0.030419 0.143989 0.138325 +v -0.042225 0.071345 0.138325 +v 0.014778 0.156219 0.138325 +v 0.014778 0.053094 0.138325 +v 0.014778 0.156219 0.000825 +v 0.014778 0.053094 0.000825 +v -0.015300 0.156219 0.000825 +v -0.015300 0.053094 0.000825 +v -0.015300 0.156219 0.138325 +v -0.015300 0.053094 0.138325 +v 0.040951 0.136693 0.138325 +v 0.052051 0.109897 0.138325 +v 0.040951 0.136693 0.000825 +v 0.052051 0.109897 0.000825 +v -0.055316 0.096818 0.000825 +v -0.044217 0.070021 0.000825 +v -0.055316 0.096818 0.138325 +v -0.044217 0.070021 0.138325 +v 0.052632 0.096296 0.138325 +v 0.041944 0.070492 0.138325 +v 0.052632 0.096296 0.000825 +v 0.041944 0.070493 0.000825 +v -0.044628 0.136582 0.000825 +v -0.055316 0.110779 0.000825 +v -0.044628 0.136582 0.138325 +v -0.055316 0.110779 0.138325 +v 0.052103 0.110777 0.138325 +v 0.052103 0.096812 0.138325 +v 0.052103 0.110777 0.103950 +v 0.052103 0.096812 0.103950 +v -0.055319 0.110777 0.103950 +v -0.055319 0.096812 0.103950 +v -0.055319 0.110777 0.138325 +v -0.055319 0.096812 0.138325 +v 0.041306 0.136583 0.138325 +v 0.041306 0.069981 0.138325 +v 0.041306 0.136583 0.000825 +v 0.041306 0.069981 0.000825 +v -0.044631 0.136583 0.000825 +v -0.044631 0.069981 0.000825 +v -0.044631 0.136583 0.138325 +v -0.044631 0.069981 0.138325 +v -0.036145 0.147590 0.000825 +v -0.027101 0.125756 0.000825 +v -0.036145 0.147590 0.138325 +v -0.027101 0.125756 0.138325 +v -0.015304 0.156223 0.000825 +v -0.015304 0.156223 0.138325 +v -0.006260 0.134388 0.138325 +v -0.006260 0.134388 0.000825 +v 0.033630 0.148410 0.138325 +v 0.024586 0.126576 0.138325 +v 0.033630 0.148410 0.000825 +v 0.024586 0.126576 0.000825 +v 0.014774 0.156221 0.000825 +v 0.014774 0.156221 0.138325 +v 0.005730 0.134386 0.138325 +v 0.005730 0.134386 0.000825 +v 0.023594 0.082327 0.138325 +v 0.032639 0.060493 0.138325 +v 0.023594 0.082327 0.000825 +v 0.032639 0.060493 0.000825 +v 0.014774 0.053094 0.138325 +v 0.014774 0.053094 0.000825 +v 0.005730 0.074928 0.138325 +v 0.005730 0.074928 0.000825 +v -0.025114 0.082739 0.000825 +v -0.034158 0.060905 0.000825 +v -0.025114 0.082739 0.138325 +v -0.034158 0.060905 0.138325 +v -0.015301 0.053095 0.138325 +v -0.015301 0.053095 0.000825 +v -0.006257 0.074929 0.138325 +v -0.006257 0.074929 0.000825 +v 0.041811 0.073900 0.138325 +v 0.027931 0.060020 0.138325 +v 0.041811 0.073900 0.000825 +v 0.027931 0.060020 0.000825 +v -0.030834 0.146544 0.000825 +v -0.044713 0.132664 0.000825 +v -0.030834 0.146544 0.138325 +v -0.044713 0.132664 0.138325 +vt 0.232414 0.762673 +vt 0.232414 0.557205 +vt 0.507414 0.762673 +vt 0.507414 0.557205 +vt 0.492586 0.762673 +vt 0.492586 0.557205 +vt 0.767586 0.762673 +vt 0.767586 0.557205 +vt 0.419200 0.507414 +vt 0.419200 0.232414 +vt 0.446738 0.507414 +vt 0.446738 0.232414 +vt 0.419200 0.767586 +vt 0.419200 0.492586 +vt 0.446738 0.767586 +vt 0.446738 0.492586 +vt 0.419200 0.762673 +vt 0.419200 0.557205 +vt 0.446738 0.762673 +vt 0.446738 0.557205 +vt 0.553262 0.762673 +vt 0.553262 0.557205 +vt 0.580800 0.762673 +vt 0.580800 0.557205 +vt 0.232414 0.726953 +vt 0.232414 0.520703 +vt 0.507414 0.726953 +vt 0.507414 0.520703 +vt 0.492586 0.726953 +vt 0.492586 0.520703 +vt 0.767586 0.726953 +vt 0.767586 0.520703 +vt 0.473047 0.507414 +vt 0.473047 0.232414 +vt 0.533204 0.507414 +vt 0.533204 0.232414 +vt 0.473047 0.767586 +vt 0.473047 0.492586 +vt 0.533204 0.767586 +vt 0.533204 0.492586 +vt 0.473047 0.726953 +vt 0.473047 0.520703 +vt 0.533204 0.726953 +vt 0.533204 0.520703 +vt 0.466796 0.726953 +vt 0.466796 0.520703 +vt 0.526953 0.726953 +vt 0.526953 0.520703 +vt 0.232414 0.612558 +vt 0.232414 0.554549 +vt 0.507414 0.612558 +vt 0.507414 0.554549 +vt 0.492586 0.612558 +vt 0.492586 0.554549 +vt 0.767586 0.612558 +vt 0.767586 0.554549 +vt 0.415213 0.507414 +vt 0.415213 0.232414 +vt 0.623611 0.507414 +vt 0.623611 0.232414 +vt 0.415213 0.767586 +vt 0.415213 0.492586 +vt 0.623611 0.767586 +vt 0.623611 0.492586 +vt 0.415213 0.612558 +vt 0.415213 0.554549 +vt 0.623611 0.612558 +vt 0.623611 0.554549 +vt 0.376389 0.612558 +vt 0.376389 0.554549 +vt 0.584787 0.612558 +vt 0.584787 0.554549 +vt 0.232414 0.691931 +vt 0.232414 0.636072 +vt 0.507414 0.691931 +vt 0.507414 0.636072 +vt 0.492586 0.691931 +vt 0.492586 0.636072 +vt 0.767586 0.691931 +vt 0.767586 0.636072 +vt 0.393015 0.507414 +vt 0.393015 0.232414 +vt 0.603561 0.507414 +vt 0.603561 0.232414 +vt 0.393015 0.767586 +vt 0.393015 0.492586 +vt 0.603561 0.767586 +vt 0.603561 0.492586 +vt 0.393015 0.691931 +vt 0.393015 0.636072 +vt 0.603561 0.691931 +vt 0.603561 0.636072 +vt 0.396439 0.691931 +vt 0.396439 0.636072 +vt 0.606985 0.691931 +vt 0.606985 0.636072 +vt 0.232414 0.636072 +vt 0.232414 0.608142 +vt 0.301164 0.636072 +vt 0.301164 0.608142 +vt 0.698836 0.636072 +vt 0.698836 0.608142 +vt 0.767586 0.636072 +vt 0.767586 0.608142 +vt 0.393014 0.301164 +vt 0.393014 0.232414 +vt 0.607857 0.301164 +vt 0.607857 0.232414 +vt 0.393014 0.767586 +vt 0.393014 0.698836 +vt 0.607857 0.767586 +vt 0.607857 0.698836 +vt 0.393014 0.636072 +vt 0.393014 0.608142 +vt 0.607857 0.636072 +vt 0.607857 0.608142 +vt 0.392143 0.636072 +vt 0.392143 0.608142 +vt 0.606986 0.636072 +vt 0.606986 0.608142 +vt 0.232414 0.687679 +vt 0.232414 0.554476 +vt 0.507414 0.687679 +vt 0.507414 0.554476 +vt 0.492586 0.687679 +vt 0.492586 0.554476 +vt 0.767586 0.687679 +vt 0.767586 0.554476 +vt 0.414390 0.507414 +vt 0.414390 0.232414 +vt 0.586265 0.507414 +vt 0.586265 0.232414 +vt 0.414390 0.767586 +vt 0.414390 0.492586 +vt 0.586265 0.767586 +vt 0.586265 0.492586 +vt 0.414390 0.687679 +vt 0.414390 0.554476 +vt 0.586265 0.687679 +vt 0.586265 0.554476 +vt 0.413735 0.687679 +vt 0.413735 0.554476 +vt 0.585610 0.687679 +vt 0.585610 0.554476 +vt 0.492586 0.713286 +vt 0.492586 0.666019 +vt 0.767586 0.713286 +vt 0.767586 0.666019 +vt 0.449452 0.507414 +vt 0.449452 0.232414 +vt 0.494569 0.507414 +vt 0.494569 0.232414 +vt 0.449452 0.713286 +vt 0.449452 0.666019 +vt 0.494569 0.713286 +vt 0.494569 0.666019 +vt 0.505431 0.713286 +vt 0.505431 0.666019 +vt 0.550548 0.713286 +vt 0.550548 0.666019 +vt 0.232414 0.730552 +vt 0.232414 0.683285 +vt 0.507414 0.730552 +vt 0.507414 0.683285 +vt 0.515115 0.507414 +vt 0.515115 0.232414 +vt 0.555935 0.507414 +vt 0.555935 0.232414 +vt 0.515115 0.730552 +vt 0.515115 0.683285 +vt 0.555935 0.730552 +vt 0.555935 0.683285 +vt 0.444065 0.730552 +vt 0.444065 0.683285 +vt 0.484885 0.730552 +vt 0.484885 0.683285 +vt 0.232414 0.567969 +vt 0.232414 0.520703 +vt 0.507414 0.567969 +vt 0.507414 0.520703 +vt 0.533203 0.767586 +vt 0.533203 0.492586 +vt 0.571875 0.767586 +vt 0.571875 0.492586 +vt 0.533203 0.567969 +vt 0.533203 0.520703 +vt 0.571875 0.567969 +vt 0.571875 0.520703 +vt 0.428125 0.567969 +vt 0.428125 0.520703 +vt 0.466797 0.567969 +vt 0.466797 0.520703 +vt 0.492586 0.583590 +vt 0.492586 0.536324 +vt 0.767586 0.583590 +vt 0.767586 0.536324 +vt 0.435334 0.767586 +vt 0.435334 0.492586 +vt 0.476154 0.767586 +vt 0.476154 0.492586 +vt 0.435334 0.583590 +vt 0.435334 0.536324 +vt 0.476154 0.583590 +vt 0.476154 0.536324 +vt 0.523846 0.583590 +vt 0.523846 0.536324 +vt 0.564666 0.583590 +vt 0.564666 0.536324 +vt 0.232414 0.719101 +vt 0.232414 0.679843 +vt 0.507414 0.719101 +vt 0.507414 0.679843 +vt 0.492586 0.719101 +vt 0.492586 0.679843 +vt 0.767586 0.719101 +vt 0.767586 0.679843 +vt 0.414227 0.507414 +vt 0.414227 0.232414 +vt 0.619696 0.507414 +vt 0.619696 0.232414 +vt 0.414227 0.767586 +vt 0.414227 0.492586 +vt 0.619696 0.767586 +vt 0.619696 0.492586 +vt 0.414227 0.719101 +vt 0.414227 0.679843 +vt 0.619696 0.719101 +vt 0.619696 0.679843 +vt 0.380304 0.719101 +vt 0.380304 0.679843 +vt 0.585773 0.719101 +vt 0.585773 0.679843 +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.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 -0.0000 +vn 0.9239 0.3827 0.0000 +vn -0.9239 -0.3827 0.0000 +vn -0.3827 0.9239 0.0000 +vn 0.3827 -0.9239 0.0000 +vn 0.9239 -0.3827 -0.0000 +vn -0.9239 0.3827 0.0000 +vn 0.3827 0.9239 0.0000 +vn -0.3827 -0.9239 0.0000 +s off +f 1/1/1 2/2/1 3/3/1 +f 2/2/1 4/4/1 3/3/1 +f 5/5/2 6/6/2 7/7/2 +f 6/6/2 8/8/2 7/7/2 +f 5/9/3 7/10/3 3/11/3 +f 7/10/3 1/12/3 3/11/3 +f 8/13/4 6/14/4 2/15/4 +f 6/14/4 4/16/4 2/15/4 +f 7/17/5 8/18/5 1/19/5 +f 8/18/5 2/20/5 1/19/5 +f 3/21/6 4/22/6 5/23/6 +f 4/22/6 6/24/6 5/23/6 +f 9/25/7 10/26/7 11/27/7 +f 10/26/7 12/28/7 11/27/7 +f 13/29/8 14/30/8 15/31/8 +f 14/30/8 16/32/8 15/31/8 +f 13/33/9 15/34/9 11/35/9 +f 15/34/9 9/36/9 11/35/9 +f 16/37/10 14/38/10 10/39/10 +f 14/38/10 12/40/10 10/39/10 +f 15/41/5 16/42/5 9/43/5 +f 16/42/5 10/44/5 9/43/5 +f 11/45/6 12/46/6 13/47/6 +f 12/46/6 14/48/6 13/47/6 +f 17/49/11 18/50/11 19/51/11 +f 18/50/11 20/52/11 19/51/11 +f 21/53/12 22/54/12 23/55/12 +f 22/54/12 24/56/12 23/55/12 +f 21/57/13 23/58/13 19/59/13 +f 23/58/13 17/60/13 19/59/13 +f 24/61/14 22/62/14 18/63/14 +f 22/62/14 20/64/14 18/63/14 +f 23/65/5 24/66/5 17/67/5 +f 24/66/5 18/68/5 17/67/5 +f 19/69/6 20/70/6 21/71/6 +f 20/70/6 22/72/6 21/71/6 +f 25/73/15 26/74/15 27/75/15 +f 26/74/15 28/76/15 27/75/15 +f 29/77/16 30/78/16 31/79/16 +f 30/78/16 32/80/16 31/79/16 +f 29/81/17 31/82/17 27/83/17 +f 31/82/17 25/84/17 27/83/17 +f 32/85/18 30/86/18 26/87/18 +f 30/86/18 28/88/18 26/87/18 +f 31/89/5 32/90/5 25/91/5 +f 32/90/5 26/92/5 25/91/5 +f 27/93/6 28/94/6 29/95/6 +f 28/94/6 30/96/6 29/95/6 +f 33/97/7 34/98/7 35/99/7 +f 34/98/7 36/100/7 35/99/7 +f 37/101/8 38/102/8 39/103/8 +f 38/102/8 40/104/8 39/103/8 +f 37/105/9 39/106/9 35/107/9 +f 39/106/9 33/108/9 35/107/9 +f 40/109/10 38/110/10 34/111/10 +f 38/110/10 36/112/10 34/111/10 +f 39/113/5 40/114/5 33/115/5 +f 40/114/5 34/116/5 33/115/5 +f 35/117/6 36/118/6 37/119/6 +f 36/118/6 38/120/6 37/119/6 +f 41/121/7 42/122/7 43/123/7 +f 42/122/7 44/124/7 43/123/7 +f 45/125/8 46/126/8 47/127/8 +f 46/126/8 48/128/8 47/127/8 +f 45/129/9 47/130/9 43/131/9 +f 47/130/9 41/132/9 43/131/9 +f 48/133/10 46/134/10 42/135/10 +f 46/134/10 44/136/10 42/135/10 +f 47/137/5 48/138/5 41/139/5 +f 48/138/5 42/140/5 41/139/5 +f 43/141/6 44/142/6 45/143/6 +f 44/142/6 46/144/6 45/143/6 +f 49/145/12 50/146/12 51/147/12 +f 50/146/12 52/148/12 51/147/12 +f 49/149/13 51/150/13 53/151/13 +f 51/150/13 54/152/13 53/151/13 +f 51/153/5 52/154/5 54/155/5 +f 52/154/5 55/156/5 54/155/5 +f 53/157/6 56/158/6 49/159/6 +f 56/158/6 50/160/6 49/159/6 +f 57/161/15 58/162/15 59/163/15 +f 58/162/15 60/164/15 59/163/15 +f 61/165/17 62/166/17 59/167/17 +f 62/166/17 57/168/17 59/167/17 +f 62/169/5 63/170/5 57/171/5 +f 63/170/5 58/172/5 57/171/5 +f 59/173/6 60/174/6 61/175/6 +f 60/174/6 64/176/6 61/175/6 +f 65/177/11 66/178/11 67/179/11 +f 66/178/11 68/180/11 67/179/11 +f 69/181/14 70/182/14 66/183/14 +f 70/182/14 68/184/14 66/183/14 +f 71/185/5 69/186/5 65/187/5 +f 69/186/5 66/188/5 65/187/5 +f 67/189/6 68/190/6 72/191/6 +f 68/190/6 70/192/6 72/191/6 +f 73/193/16 74/194/16 75/195/16 +f 74/194/16 76/196/16 75/195/16 +f 76/197/18 74/198/18 77/199/18 +f 74/198/18 78/200/18 77/199/18 +f 75/201/5 76/202/5 79/203/5 +f 76/202/5 77/204/5 79/203/5 +f 80/205/6 78/206/6 73/207/6 +f 78/206/6 74/208/6 73/207/6 +f 81/209/1 82/210/1 83/211/1 +f 82/210/1 84/212/1 83/211/1 +f 85/213/2 86/214/2 87/215/2 +f 86/214/2 88/216/2 87/215/2 +f 85/217/3 87/218/3 83/219/3 +f 87/218/3 81/220/3 83/219/3 +f 88/221/4 86/222/4 82/223/4 +f 86/222/4 84/224/4 82/223/4 +f 87/225/5 88/226/5 81/227/5 +f 88/226/5 82/228/5 81/227/5 +f 83/229/6 84/230/6 85/231/6 +f 84/230/6 86/232/6 85/231/6 +o Grip +v 0.029437 0.100706 0.311919 +v 0.029437 -0.004763 0.311919 +v 0.029437 0.100706 0.268950 +v 0.029437 -0.004763 0.268950 +v -0.029156 0.100706 0.268950 +v -0.029156 -0.004763 0.268950 +v -0.029156 0.100706 0.311919 +v -0.029156 -0.004763 0.311919 +v 0.029388 0.017106 0.332156 +v 0.029388 -0.174300 0.332156 +v 0.029388 0.017106 0.285281 +v 0.029388 -0.174300 0.285281 +v -0.029181 0.017106 0.285281 +v -0.029181 -0.174300 0.285281 +v -0.029181 0.017106 0.332156 +v -0.029181 -0.174300 0.332156 +v 0.029419 0.085760 0.232858 +v 0.029419 -0.005391 0.324008 +v 0.029419 0.069187 0.216285 +v 0.029419 -0.021963 0.307436 +v -0.029175 0.069187 0.216285 +v -0.029175 -0.021963 0.307436 +v -0.029175 0.085760 0.232858 +v -0.029175 -0.005391 0.324008 +v 0.029462 0.040785 0.284858 +v 0.029462 -0.024175 0.257950 +v 0.029462 0.069187 0.216289 +v 0.029462 0.004227 0.189381 +v -0.029131 0.069187 0.216289 +v -0.029131 0.004227 0.189381 +v -0.029131 0.040785 0.284858 +v -0.029131 -0.024175 0.257950 +v 0.029425 0.004225 0.310469 +v 0.029425 -0.019213 0.310469 +v 0.029425 0.004225 0.189375 +v 0.029425 -0.019213 0.189375 +v -0.029169 0.004225 0.189375 +v -0.029169 -0.019213 0.189375 +v -0.029169 0.004225 0.310469 +v -0.029169 -0.019213 0.310469 +v 0.029456 -0.063915 0.319925 +v 0.029456 -0.080488 0.303353 +v 0.029456 0.021711 0.234299 +v 0.029456 0.005138 0.217726 +v -0.029137 0.021711 0.234299 +v -0.029137 0.005138 0.217726 +v -0.029137 -0.063915 0.319925 +v -0.029137 -0.080488 0.303353 +v 0.029406 0.100711 0.268945 +v 0.029406 -0.040037 0.327245 +v 0.029406 0.085762 0.232856 +v 0.029406 -0.054985 0.291156 +v -0.029188 0.085762 0.232856 +v -0.029188 -0.054985 0.291156 +v -0.029188 0.100711 0.268945 +v -0.029188 -0.040037 0.327245 +v 0.029375 -0.129257 0.319077 +v 0.029375 -0.205044 0.287685 +v 0.029375 -0.120288 0.297424 +v 0.029375 -0.196075 0.266032 +v -0.029188 -0.120288 0.297424 +v -0.029188 -0.196075 0.266032 +v -0.029188 -0.129257 0.319077 +v -0.029188 -0.205044 0.287685 +v 0.029450 0.100710 0.300193 +v 0.029450 -0.040037 0.358492 +v 0.029450 0.085762 0.264104 +v 0.029450 -0.054986 0.322403 +v -0.029144 0.085762 0.264104 +v -0.029144 -0.054986 0.322403 +v -0.029144 0.100710 0.300193 +v -0.029144 -0.040037 0.358492 +v 0.029469 0.075586 0.302363 +v 0.029469 0.006533 0.371416 +v 0.029469 0.047965 0.274741 +v 0.029469 -0.021088 0.343795 +v -0.029125 0.047965 0.274741 +v -0.029125 -0.021088 0.343795 +v -0.029125 0.075586 0.302363 +v -0.029125 0.006533 0.371416 +v 0.029425 0.006539 0.371413 +v 0.029425 -0.126990 0.426723 +v 0.029425 -0.032327 0.277581 +v 0.029425 -0.165857 0.332891 +v -0.029169 -0.032327 0.277581 +v -0.029169 -0.165857 0.332891 +v -0.029169 0.006539 0.371413 +v -0.029169 -0.126990 0.426723 +v 0.029419 -0.126919 0.427336 +v 0.029419 -0.205044 0.427336 +v 0.029419 -0.126919 0.287688 +v 0.029419 -0.205044 0.287688 +v -0.029163 -0.126919 0.287688 +v -0.029163 -0.205044 0.287688 +v -0.029163 -0.126919 0.427336 +v -0.029163 -0.205044 0.427336 +v 0.021613 0.096482 0.310400 +v 0.021613 -0.037047 0.365710 +v 0.021613 0.078544 0.267093 +v 0.021613 -0.054986 0.322403 +v -0.021356 0.078544 0.267093 +v -0.021356 -0.054986 0.322403 +v -0.021356 0.096482 0.310400 +v -0.021356 -0.037047 0.365710 +v 0.021613 0.081113 0.307885 +v 0.021613 0.010678 0.378319 +v 0.021613 0.047967 0.274739 +v 0.021613 -0.022467 0.345174 +v -0.021356 0.047967 0.274739 +v -0.021356 -0.022467 0.345174 +v -0.021356 0.081113 0.307885 +v -0.021356 0.010678 0.378319 +v 0.021613 -0.123013 0.435149 +v 0.021613 -0.205044 0.435149 +v 0.021613 -0.123013 0.287688 +v 0.021613 -0.205044 0.287688 +v -0.021356 -0.123013 0.287688 +v -0.021356 -0.205044 0.287688 +v -0.021356 -0.123013 0.435149 +v -0.021356 -0.205044 0.435149 +v 0.021613 0.011330 0.377885 +v 0.021613 -0.125808 0.434689 +v 0.021613 -0.030526 0.276835 +v 0.021613 -0.167664 0.333640 +v -0.021356 -0.030526 0.276835 +v -0.021356 -0.167664 0.333640 +v -0.021356 0.011330 0.377885 +v -0.021356 -0.125808 0.434689 +vt 0.000000 1.000000 +vt 0.000000 0.789062 +vt 0.085938 1.000000 +vt 0.085938 0.789062 +vt 0.000000 1.000000 +vt 0.000000 0.789062 +vt 0.085938 1.000000 +vt 0.085938 0.789062 +vt 0.890625 1.000000 +vt 0.890625 0.914062 +vt 1.007812 1.000000 +vt 1.007812 0.914062 +vt 0.562500 0.531250 +vt 0.562500 0.320312 +vt 0.679688 0.531250 +vt 0.679688 0.320312 +vt 0.562500 0.531250 +vt 0.562500 0.320312 +vt 0.679688 0.531250 +vt 0.679688 0.320312 +vt 0.000000 1.000000 +vt 0.000000 0.687500 +vt 0.093750 1.000000 +vt 0.093750 0.687500 +vt 0.000000 1.000000 +vt 0.000000 0.687500 +vt 0.093750 1.000000 +vt 0.093750 0.687500 +vt 0.437500 1.000000 +vt 0.437500 0.617188 +vt 0.554688 1.000000 +vt 0.554688 0.617188 +vt 0.000000 1.000000 +vt 0.000000 0.742188 +vt 0.046875 1.000000 +vt 0.046875 0.742188 +vt 0.000000 1.000000 +vt 0.000000 0.742188 +vt 0.046875 1.000000 +vt 0.046875 0.742188 +vt 0.531250 0.468750 +vt 0.531250 0.421875 +vt 0.648438 0.468750 +vt 0.648438 0.421875 +vt 0.562500 0.593750 +vt 0.562500 0.335938 +vt 0.679688 0.593750 +vt 0.679688 0.335938 +vt 0.562500 0.593750 +vt 0.562500 0.335938 +vt 0.679688 0.593750 +vt 0.679688 0.335938 +vt 0.000000 1.000000 +vt 0.000000 0.859375 +vt 0.130307 1.000000 +vt 0.130307 0.859375 +vt 0.000000 1.000000 +vt 0.000000 0.859375 +vt 0.130307 1.000000 +vt 0.130307 0.859375 +vt 0.500000 0.468750 +vt 0.500000 0.338443 +vt 0.617188 0.468750 +vt 0.617188 0.338443 +vt 0.531250 0.468750 +vt 0.531250 0.338443 +vt 0.648438 0.468750 +vt 0.648438 0.338443 +vt 0.500000 0.468750 +vt 0.500000 0.328125 +vt 0.617188 0.468750 +vt 0.617188 0.328125 +vt 0.500000 0.468750 +vt 0.500000 0.328125 +vt 0.617188 0.468750 +vt 0.617188 0.328125 +vt 0.000000 1.000000 +vt 0.000000 0.953125 +vt 0.130307 1.000000 +vt 0.130307 0.953125 +vt 0.015625 1.000000 +vt 0.015625 0.953125 +vt 0.145932 1.000000 +vt 0.145932 0.953125 +vt 0.500000 0.468750 +vt 0.500000 0.338443 +vt 0.617188 0.468750 +vt 0.617188 0.338443 +vt 0.343750 0.703125 +vt 0.343750 0.572818 +vt 0.460938 0.703125 +vt 0.460938 0.572818 +vt 0.500000 0.406250 +vt 0.500000 0.359375 +vt 0.617188 0.406250 +vt 0.617188 0.359375 +vt 0.000000 1.000000 +vt 0.000000 0.953125 +vt 0.218750 1.000000 +vt 0.218750 0.953125 +vt 0.000000 1.000000 +vt 0.000000 0.953125 +vt 0.265625 1.000000 +vt 0.265625 0.953125 +vt 0.890625 0.359375 +vt 0.890625 0.285771 +vt 1.007812 0.359375 +vt 1.007812 0.285771 +vt 0.000000 1.000000 +vt 0.000000 0.695312 +vt 0.078125 1.000000 +vt 0.078125 0.695312 +vt 0.000000 1.000000 +vt 0.000000 0.695312 +vt 0.078125 1.000000 +vt 0.078125 0.695312 +vt 0.890625 1.000000 +vt 0.890625 0.921875 +vt 1.007812 1.000000 +vt 1.007812 0.921875 +vt 0.562500 0.593750 +vt 0.562500 0.289062 +vt 0.679688 0.593750 +vt 0.679688 0.289062 +vt 0.531250 0.593750 +vt 0.531250 0.289062 +vt 0.648438 0.593750 +vt 0.648438 0.289062 +vt 0.000000 1.000000 +vt 0.000000 0.835938 +vt 0.046875 1.000000 +vt 0.046875 0.835938 +vt 0.000000 1.000000 +vt 0.000000 0.835938 +vt 0.046875 1.000000 +vt 0.046875 0.835938 +vt 0.484375 0.046875 +vt 0.484375 0.000000 +vt 0.601562 0.046875 +vt 0.601562 0.000000 +vt 0.687500 0.156250 +vt 0.687500 -0.007812 +vt 0.804688 0.156250 +vt 0.804688 -0.007812 +vt 0.000000 1.000000 +vt 0.000000 0.695312 +vt 0.078125 1.000000 +vt 0.078125 0.695312 +vt 0.000000 1.000000 +vt 0.000000 0.695312 +vt 0.078125 1.000000 +vt 0.078125 0.695312 +vt 0.562500 0.468750 +vt 0.562500 0.390625 +vt 0.679688 0.468750 +vt 0.679688 0.390625 +vt 0.562500 0.437500 +vt 0.562500 0.359375 +vt 0.679688 0.437500 +vt 0.679688 0.359375 +vt 0.562500 0.593750 +vt 0.562500 0.289062 +vt 0.679688 0.593750 +vt 0.679688 0.289062 +vt 0.562500 0.593750 +vt 0.562500 0.289062 +vt 0.679688 0.593750 +vt 0.679688 0.289062 +vt 0.000000 1.000000 +vt 0.000000 0.804688 +vt 0.078125 1.000000 +vt 0.078125 0.804688 +vt 0.000000 1.000000 +vt 0.000000 0.804688 +vt 0.078125 1.000000 +vt 0.078125 0.804688 +vt 0.562500 0.437500 +vt 0.562500 0.359375 +vt 0.679688 0.437500 +vt 0.679688 0.359375 +vt 0.562500 0.500000 +vt 0.562500 0.304688 +vt 0.679688 0.500000 +vt 0.679688 0.304688 +vt 0.562500 0.500000 +vt 0.562500 0.304688 +vt 0.679688 0.500000 +vt 0.679688 0.304688 +vt 0.000000 1.000000 +vt 0.000000 0.710938 +vt 0.203125 1.000000 +vt 0.203125 0.710938 +vt 0.000000 1.000000 +vt 0.000000 0.710938 +vt 0.203125 1.000000 +vt 0.203125 0.710938 +vt 0.562500 0.531250 +vt 0.562500 0.328125 +vt 0.679688 0.531250 +vt 0.679688 0.328125 +vt 0.562500 0.593750 +vt 0.562500 0.304688 +vt 0.679688 0.593750 +vt 0.679688 0.304688 +vt 0.000000 0.734375 +vt 0.000000 0.578125 +vt 0.281250 0.734375 +vt 0.281250 0.578125 +vt 0.000000 0.734375 +vt 0.000000 0.578125 +vt 0.281250 0.734375 +vt 0.281250 0.578125 +vt 0.328125 0.281250 +vt 0.328125 0.001952 +vt 0.445312 0.281250 +vt 0.445312 0.001952 +vt 0.500000 0.500000 +vt 0.500000 0.343750 +vt 0.617188 0.500000 +vt 0.617188 0.343750 +vt 0.500000 0.500000 +vt 0.500000 0.343750 +vt 0.617188 0.500000 +vt 0.617188 0.343750 +vt 0.770499 0.593601 +vt 0.770499 0.304538 +vt 0.864249 0.593601 +vt 0.864249 0.304538 +vt 0.135752 0.593601 +vt 0.135752 0.304538 +vt 0.229502 0.593601 +vt 0.229502 0.304538 +vt 0.921875 1.000000 +vt 0.921875 0.710937 +vt 1.007812 1.000000 +vt 1.007812 0.710937 +vt 0.724961 0.568802 +vt 0.724961 0.369583 +vt 0.818711 0.568802 +vt 0.818711 0.369583 +vt 0.181289 0.568802 +vt 0.181289 0.369583 +vt 0.275039 0.568802 +vt 0.275039 0.369583 +vt 0.921875 1.000000 +vt 0.921875 0.800781 +vt 1.007812 1.000000 +vt 1.007812 0.800781 +vt 0.437500 0.500000 +vt 0.437500 0.335938 +vt 0.732422 0.500000 +vt 0.732422 0.335938 +vt 0.437500 0.500000 +vt 0.437500 0.335938 +vt 0.732422 0.500000 +vt 0.732422 0.335938 +vt 0.562500 0.562500 +vt 0.562500 0.267577 +vt 0.648438 0.562500 +vt 0.648438 0.267577 +vt 0.921875 1.000000 +vt 0.921875 0.705078 +vt 1.007812 1.000000 +vt 1.007812 0.705078 +vt 0.921875 1.000000 +vt 0.921875 0.835938 +vt 1.007812 1.000000 +vt 1.007812 0.835938 +vt 0.531250 0.500000 +vt 0.531250 0.335938 +vt 0.617188 0.500000 +vt 0.617188 0.335938 +vt 0.500000 0.593750 +vt 0.500000 0.296875 +vt 0.718750 0.593750 +vt 0.718750 0.296875 +vt 0.500000 0.593750 +vt 0.500000 0.296875 +vt 0.718750 0.593750 +vt 0.718750 0.296875 +vt 0.921875 1.000000 +vt 0.921875 0.703125 +vt 1.007812 1.000000 +vt 1.007812 0.703125 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 0.7071 -0.7071 +vn 0.0000 0.7071 0.7071 +vn 0.0000 -0.7071 -0.7071 +vn 0.0000 0.9239 0.3827 +vn 0.0000 -0.9239 -0.3827 +vn 0.0000 -0.3827 0.9239 +vn 0.0000 0.3827 -0.9239 +vn 0.0000 -1.0000 -0.0000 +vn 0.0000 0.9239 -0.3827 +vn 0.0000 0.3827 0.9239 +vn 0.0000 -0.3827 -0.9239 +vn 0.0000 -0.9239 0.3827 +vn 0.0000 -0.7071 0.7071 +s off +f 89/233/19 90/234/19 91/235/19 +f 90/234/19 92/236/19 91/235/19 +f 93/237/20 94/238/20 95/239/20 +f 94/238/20 96/240/20 95/239/20 +f 93/241/21 95/242/21 91/243/21 +f 95/242/21 89/244/21 91/243/21 +f 95/245/22 96/246/22 89/247/22 +f 96/246/22 90/248/22 89/247/22 +f 91/249/23 92/250/23 93/251/23 +f 92/250/23 94/252/23 93/251/23 +f 97/253/19 98/254/19 99/255/19 +f 98/254/19 100/256/19 99/255/19 +f 101/257/20 102/258/20 103/259/20 +f 102/258/20 104/260/20 103/259/20 +f 99/261/23 100/262/23 101/263/23 +f 100/262/23 102/264/23 101/263/23 +f 105/265/19 106/266/19 107/267/19 +f 106/266/19 108/268/19 107/267/19 +f 109/269/20 110/270/20 111/271/20 +f 110/270/20 112/272/20 111/271/20 +f 109/273/24 111/274/24 107/275/24 +f 111/274/24 105/276/24 107/275/24 +f 111/277/25 112/278/25 105/279/25 +f 112/278/25 106/280/25 105/279/25 +f 107/281/26 108/282/26 109/283/26 +f 108/282/26 110/284/26 109/283/26 +f 113/285/19 114/286/19 115/287/19 +f 114/286/19 116/288/19 115/287/19 +f 117/289/20 118/290/20 119/291/20 +f 118/290/20 120/292/20 119/291/20 +f 117/293/27 119/294/27 115/295/27 +f 119/294/27 113/296/27 115/295/27 +f 120/297/28 118/298/28 114/299/28 +f 118/298/28 116/300/28 114/299/28 +f 119/301/29 120/302/29 113/303/29 +f 120/302/29 114/304/29 113/303/29 +f 115/305/30 116/306/30 117/307/30 +f 116/306/30 118/308/30 117/307/30 +f 121/309/19 122/310/19 123/311/19 +f 122/310/19 124/312/19 123/311/19 +f 125/313/20 126/314/20 127/315/20 +f 126/314/20 128/316/20 127/315/20 +f 125/317/21 127/318/21 123/319/21 +f 127/318/21 121/320/21 123/319/21 +f 128/321/31 126/322/31 122/323/31 +f 126/322/31 124/324/31 122/323/31 +f 123/325/23 124/326/23 125/327/23 +f 124/326/23 126/328/23 125/327/23 +f 129/329/19 130/330/19 131/331/19 +f 130/330/19 132/332/19 131/331/19 +f 133/333/20 134/334/20 135/335/20 +f 134/334/20 136/336/20 135/335/20 +f 136/337/26 134/338/26 130/339/26 +f 134/338/26 132/340/26 130/339/26 +f 137/341/19 138/342/19 139/343/19 +f 138/342/19 140/344/19 139/343/19 +f 141/345/20 142/346/20 143/347/20 +f 142/346/20 144/348/20 143/347/20 +f 141/349/32 143/350/32 139/351/32 +f 143/350/32 137/352/32 139/351/32 +f 143/353/33 144/354/33 137/355/33 +f 144/354/33 138/356/33 137/355/33 +f 139/357/34 140/358/34 141/359/34 +f 140/358/34 142/360/34 141/359/34 +f 145/361/19 146/362/19 147/363/19 +f 146/362/19 148/364/19 147/363/19 +f 149/365/20 150/366/20 151/367/20 +f 150/366/20 152/368/20 151/367/20 +f 152/369/28 150/370/28 146/371/28 +f 150/370/28 148/372/28 146/371/28 +f 147/373/30 148/374/30 149/375/30 +f 148/374/30 150/376/30 149/375/30 +f 153/377/19 154/378/19 155/379/19 +f 154/378/19 156/380/19 155/379/19 +f 157/381/20 158/382/20 159/383/20 +f 158/382/20 160/384/20 159/383/20 +f 157/385/32 159/386/32 155/387/32 +f 159/386/32 153/388/32 155/387/32 +f 160/389/35 158/390/35 154/391/35 +f 158/390/35 156/392/35 154/391/35 +f 159/393/33 160/394/33 153/395/33 +f 160/394/33 154/396/33 153/395/33 +f 155/397/34 156/398/34 157/399/34 +f 156/398/34 158/400/34 157/399/34 +f 161/401/19 162/402/19 163/403/19 +f 162/402/19 164/404/19 163/403/19 +f 165/405/20 166/406/20 167/407/20 +f 166/406/20 168/408/20 167/407/20 +f 168/409/36 166/410/36 162/411/36 +f 166/410/36 164/412/36 162/411/36 +f 167/413/25 168/414/25 161/415/25 +f 168/414/25 162/416/25 161/415/25 +f 163/417/26 164/418/26 165/419/26 +f 164/418/26 166/420/26 165/419/26 +f 169/421/19 170/422/19 171/423/19 +f 170/422/19 172/424/19 171/423/19 +f 173/425/20 174/426/20 175/427/20 +f 174/426/20 176/428/20 175/427/20 +f 173/429/32 175/430/32 171/431/32 +f 175/430/32 169/432/32 171/431/32 +f 175/433/33 176/434/33 169/435/33 +f 176/434/33 170/436/33 169/435/33 +f 177/437/19 178/438/19 179/439/19 +f 178/438/19 180/440/19 179/439/19 +f 181/441/20 182/442/20 183/443/20 +f 182/442/20 184/444/20 183/443/20 +f 184/445/31 182/446/31 178/447/31 +f 182/446/31 180/448/31 178/447/31 +f 183/449/22 184/450/22 177/451/22 +f 184/450/22 178/452/22 177/451/22 +f 179/453/23 180/454/23 181/455/23 +f 180/454/23 182/456/23 181/455/23 +f 185/457/19 186/458/19 187/459/19 +f 186/458/19 188/460/19 187/459/19 +f 189/461/20 190/462/20 191/463/20 +f 190/462/20 192/464/20 191/463/20 +f 191/465/33 192/466/33 185/467/33 +f 192/466/33 186/468/33 185/467/33 +f 193/469/19 194/470/19 195/471/19 +f 194/470/19 196/472/19 195/471/19 +f 197/473/20 198/474/20 199/475/20 +f 198/474/20 200/476/20 199/475/20 +f 199/477/25 200/478/25 193/479/25 +f 200/478/25 194/480/25 193/479/25 +f 201/481/19 202/482/19 203/483/19 +f 202/482/19 204/484/19 203/483/19 +f 205/485/20 206/486/20 207/487/20 +f 206/486/20 208/488/20 207/487/20 +f 205/489/21 207/490/21 203/491/21 +f 207/490/21 201/492/21 203/491/21 +f 208/493/31 206/494/31 202/495/31 +f 206/494/31 204/496/31 202/495/31 +f 207/497/22 208/498/22 201/499/22 +f 208/498/22 202/500/22 201/499/22 +f 203/501/23 204/502/23 205/503/23 +f 204/502/23 206/504/23 205/503/23 +f 209/505/19 210/506/19 211/507/19 +f 210/506/19 212/508/19 211/507/19 +f 213/509/20 214/510/20 215/511/20 +f 214/510/20 216/512/20 215/511/20 +f 215/513/33 216/514/33 209/515/33 +f 216/514/33 210/516/33 209/515/33 +o Hammer +v 0.009894 0.159364 0.192004 +v 0.009894 0.127600 0.223769 +v 0.009894 0.115170 0.147810 +v 0.009894 0.083406 0.179575 +v -0.009638 0.115170 0.147810 +v -0.009638 0.083406 0.179575 +v -0.009638 0.159364 0.192004 +v -0.009638 0.127600 0.223769 +v 0.009894 0.151487 0.265041 +v 0.009894 0.135862 0.265041 +v 0.009894 0.151487 0.220119 +v 0.009894 0.135862 0.220119 +v -0.009638 0.151487 0.220119 +v -0.009638 0.135862 0.220119 +v -0.009638 0.151487 0.265041 +v -0.009638 0.135862 0.265041 +v 0.009894 0.149695 0.230343 +v 0.009894 0.138646 0.241391 +v 0.009894 0.112406 0.193054 +v 0.009894 0.101357 0.204103 +v -0.009638 0.112406 0.193054 +v -0.009638 0.101357 0.204103 +v -0.009638 0.149695 0.230343 +v -0.009638 0.138646 0.241391 +v 0.009894 0.151488 0.220120 +v 0.009894 0.140439 0.231168 +v 0.009894 0.119723 0.188355 +v 0.009894 0.108675 0.199404 +v -0.009638 0.119723 0.188355 +v -0.009638 0.108675 0.199404 +v -0.009638 0.151488 0.220120 +v -0.009638 0.140439 0.231168 +v 0.009894 0.100022 0.248635 +v 0.009894 0.065737 0.234434 +v 0.009894 0.111980 0.219764 +v 0.009894 0.077696 0.205562 +v -0.009638 0.111980 0.219764 +v -0.009638 0.077696 0.205562 +v -0.009638 0.100022 0.248635 +v -0.009638 0.065737 0.234434 +vt 0.024914 0.671166 +vt 0.024914 0.581323 +vt 0.149915 0.671166 +vt 0.149915 0.581323 +vt 0.850086 0.671166 +vt 0.850086 0.581323 +vt 0.975086 0.671166 +vt 0.975086 0.581323 +vt 0.484375 0.149914 +vt 0.484375 0.024914 +vt 0.523438 0.149914 +vt 0.523438 0.024914 +vt 0.484375 0.671166 +vt 0.484375 0.581323 +vt 0.523438 0.671166 +vt 0.523438 0.581323 +vt 0.000000 0.717492 +vt 0.000000 0.686242 +vt 0.068825 0.717492 +vt 0.068825 0.686242 +vt 0.931175 0.717492 +vt 0.931175 0.686242 +vt 1.000000 0.717492 +vt 1.000000 0.686242 +vt 0.484375 0.068825 +vt 0.484375 0.000000 +vt 0.523438 0.068825 +vt 0.523438 0.000000 +vt 0.484375 1.000000 +vt 0.484375 0.931175 +vt 0.523438 1.000000 +vt 0.523438 0.931175 +vt 0.484375 0.717492 +vt 0.484375 0.686242 +vt 0.523438 0.717492 +vt 0.523438 0.686242 +vt 0.000000 0.648480 +vt 0.000000 0.617230 +vt 0.100860 0.648480 +vt 0.100860 0.617230 +vt 0.899140 0.648480 +vt 0.899140 0.617230 +vt 1.000000 0.648480 +vt 1.000000 0.617230 +vt 0.484375 0.100860 +vt 0.484375 0.000000 +vt 0.523438 0.100860 +vt 0.523438 0.000000 +vt 0.484375 1.000000 +vt 0.484375 0.899140 +vt 0.523438 1.000000 +vt 0.523438 0.899140 +vt 0.020413 0.663117 +vt 0.020413 0.631867 +vt 0.110257 0.663117 +vt 0.110257 0.631867 +vt 0.889743 0.663117 +vt 0.889743 0.631867 +vt 0.979587 0.663117 +vt 0.979587 0.631867 +vt 0.484375 0.110257 +vt 0.484375 0.020413 +vt 0.523438 0.110257 +vt 0.523438 0.020413 +vt 0.484375 0.979587 +vt 0.484375 0.889743 +vt 0.523438 0.979587 +vt 0.523438 0.889743 +vt 0.035439 0.644131 +vt 0.035439 0.569912 +vt 0.097939 0.644131 +vt 0.097939 0.569912 +vt 0.902061 0.644131 +vt 0.902061 0.569912 +vt 0.964561 0.644131 +vt 0.964561 0.569912 +vt 0.484375 0.097939 +vt 0.484375 0.035439 +vt 0.523438 0.097939 +vt 0.523438 0.035439 +vt 0.484375 0.644131 +vt 0.484375 0.569912 +vt 0.523438 0.644131 +vt 0.523438 0.569912 +vt 0.476562 0.644131 +vt 0.476562 0.569912 +vt 0.515625 0.644131 +vt 0.515625 0.569912 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 0.7071 -0.7071 +vn 0.0000 0.7071 0.7071 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 0.0000 1.0000 +vn 0.0000 -0.7071 0.7071 +vn 0.0000 0.9239 0.3827 +vn 0.0000 -0.3827 0.9239 +vn 0.0000 0.3827 -0.9239 +s off +f 217/517/37 218/518/37 219/519/37 +f 218/518/37 220/520/37 219/519/37 +f 221/521/38 222/522/38 223/523/38 +f 222/522/38 224/524/38 223/523/38 +f 221/525/39 223/526/39 219/527/39 +f 223/526/39 217/528/39 219/527/39 +f 223/529/40 224/530/40 217/531/40 +f 224/530/40 218/532/40 217/531/40 +f 225/533/37 226/534/37 227/535/37 +f 226/534/37 228/536/37 227/535/37 +f 229/537/38 230/538/38 231/539/38 +f 230/538/38 232/540/38 231/539/38 +f 229/541/41 231/542/41 227/543/41 +f 231/542/41 225/544/41 227/543/41 +f 232/545/42 230/546/42 226/547/42 +f 230/546/42 228/548/42 226/547/42 +f 231/549/43 232/550/43 225/551/43 +f 232/550/43 226/552/43 225/551/43 +f 233/553/37 234/554/37 235/555/37 +f 234/554/37 236/556/37 235/555/37 +f 237/557/38 238/558/38 239/559/38 +f 238/558/38 240/560/38 239/559/38 +f 237/561/39 239/562/39 235/563/39 +f 239/562/39 233/564/39 235/563/39 +f 240/565/44 238/566/44 234/567/44 +f 238/566/44 236/568/44 234/567/44 +f 241/569/37 242/570/37 243/571/37 +f 242/570/37 244/572/37 243/571/37 +f 245/573/38 246/574/38 247/575/38 +f 246/574/38 248/576/38 247/575/38 +f 245/577/39 247/578/39 243/579/39 +f 247/578/39 241/580/39 243/579/39 +f 248/581/44 246/582/44 242/583/44 +f 246/582/44 244/584/44 242/583/44 +f 249/585/37 250/586/37 251/587/37 +f 250/586/37 252/588/37 251/587/37 +f 253/589/38 254/590/38 255/591/38 +f 254/590/38 256/592/38 255/591/38 +f 253/593/45 255/594/45 251/595/45 +f 255/594/45 249/596/45 251/595/45 +f 255/597/46 256/598/46 249/599/46 +f 256/598/46 250/600/46 249/599/46 +f 251/601/47 252/602/47 253/603/47 +f 252/602/47 254/604/47 253/603/47 +o Body +v 0.011850 0.155047 -0.051250 +v 0.011850 0.141375 -0.051250 +v 0.011850 0.155047 -0.440000 +v 0.011850 0.141375 -0.440000 +v -0.011587 0.155047 -0.440000 +v -0.011587 0.141375 -0.440000 +v -0.011587 0.155047 -0.051250 +v -0.011587 0.141375 -0.051250 +v 0.011850 0.112134 -0.051250 +v 0.011850 0.098462 -0.051250 +v 0.011850 0.112134 -0.440000 +v 0.011850 0.098462 -0.440000 +v -0.011587 0.112134 -0.440000 +v -0.011587 0.098462 -0.440000 +v -0.011587 0.112134 -0.051250 +v -0.011587 0.098462 -0.051250 +v 0.028418 0.115037 -0.051250 +v 0.011845 0.098464 -0.051250 +v 0.028418 0.115037 -0.440000 +v 0.011845 0.098464 -0.440000 +v 0.018750 0.124704 -0.440000 +v 0.002178 0.108131 -0.440000 +v 0.018750 0.124704 -0.051250 +v 0.002178 0.108131 -0.051250 +v -0.001922 0.145380 -0.051250 +v -0.018495 0.128808 -0.051250 +v -0.001922 0.145380 -0.440000 +v -0.018495 0.128808 -0.440000 +v -0.011589 0.155048 -0.440000 +v -0.028162 0.138475 -0.440000 +v -0.011589 0.155048 -0.051250 +v -0.028162 0.138475 -0.051250 +v -0.014491 0.138475 -0.051250 +v -0.014491 0.115038 -0.051250 +v -0.014491 0.138475 -0.440000 +v -0.014491 0.115038 -0.440000 +v -0.028162 0.138475 -0.440000 +v -0.028162 0.115038 -0.440000 +v -0.028162 0.138475 -0.051250 +v -0.028162 0.115038 -0.051250 +v 0.028422 0.138475 -0.051250 +v 0.028422 0.115038 -0.051250 +v 0.028422 0.138475 -0.440000 +v 0.028422 0.115038 -0.440000 +v 0.014750 0.138475 -0.440000 +v 0.014750 0.115038 -0.440000 +v 0.014750 0.138475 -0.051250 +v 0.014750 0.115038 -0.051250 +v -0.018494 0.124705 -0.051250 +v -0.001921 0.108132 -0.051250 +v -0.018494 0.124705 -0.440000 +v -0.001921 0.108132 -0.440000 +v -0.028162 0.115038 -0.440000 +v -0.011589 0.098465 -0.440000 +v -0.028162 0.115038 -0.051250 +v -0.011589 0.098465 -0.051250 +v 0.011845 0.155046 -0.051250 +v 0.028418 0.138473 -0.051250 +v 0.011845 0.155046 -0.440000 +v 0.028418 0.138473 -0.440000 +v 0.002178 0.145379 -0.440000 +v 0.018751 0.128806 -0.440000 +v 0.002178 0.145379 -0.051250 +v 0.018751 0.128806 -0.051250 +v 0.011850 0.158956 -0.051250 +v 0.011850 0.155050 -0.051250 +v 0.011850 0.158956 -0.440000 +v 0.011850 0.155050 -0.440000 +v -0.011587 0.158956 -0.440000 +v -0.011587 0.155050 -0.440000 +v -0.011587 0.158956 -0.051250 +v -0.011587 0.155050 -0.051250 +v 0.007944 0.164816 -0.051250 +v 0.007944 0.158956 -0.051250 +v 0.007944 0.164816 -0.440000 +v 0.007944 0.158956 -0.440000 +v -0.007681 0.164816 -0.440000 +v -0.007681 0.158956 -0.440000 +v -0.007681 0.164816 -0.051250 +v -0.007681 0.158956 -0.051250 +v 0.007944 0.176531 -0.051250 +v 0.007944 0.172625 -0.051250 +v 0.007944 0.176531 -0.440000 +v 0.007944 0.172625 -0.440000 +v -0.007681 0.176531 -0.440000 +v -0.007681 0.172625 -0.440000 +v -0.007681 0.176531 -0.051250 +v -0.007681 0.172625 -0.051250 +v 0.007944 0.172625 -0.414688 +v 0.007944 0.164813 -0.414688 +v 0.007944 0.172625 -0.440000 +v 0.007944 0.164813 -0.440000 +v -0.007681 0.172625 -0.440000 +v -0.007681 0.164813 -0.440000 +v -0.007681 0.172625 -0.414688 +v -0.007681 0.164813 -0.414688 +v 0.007944 0.172625 -0.290312 +v 0.007944 0.164813 -0.290312 +v 0.007944 0.172625 -0.351562 +v 0.007944 0.164813 -0.351562 +v -0.007681 0.172625 -0.351562 +v -0.007681 0.164813 -0.351562 +v -0.007681 0.172625 -0.290312 +v -0.007681 0.164813 -0.290312 +v 0.007944 0.172625 -0.149375 +v 0.007944 0.164813 -0.149375 +v 0.007944 0.172625 -0.210625 +v 0.007944 0.164813 -0.210625 +v -0.007681 0.172625 -0.210625 +v -0.007681 0.164813 -0.210625 +v -0.007681 0.172625 -0.149375 +v -0.007681 0.164813 -0.149375 +v 0.007944 0.172625 -0.051250 +v 0.007944 0.164813 -0.051250 +v 0.007944 0.172625 -0.077500 +v 0.007944 0.164813 -0.077500 +v -0.007681 0.172625 -0.077500 +v -0.007681 0.164813 -0.077500 +v -0.007681 0.172625 -0.051250 +v -0.007681 0.164813 -0.051250 +v -0.000466 0.179524 -0.051250 +v 0.001029 0.175915 -0.051250 +v -0.000466 0.179524 -0.440000 +v 0.001029 0.175915 -0.440000 +v -0.007684 0.176534 -0.440000 +v -0.007684 0.176534 -0.051250 +v -0.006189 0.172925 -0.440000 +v 0.000722 0.179520 -0.440000 +v -0.000773 0.175911 -0.440000 +v 0.000722 0.179520 -0.051250 +v -0.000773 0.175911 -0.051250 +v 0.007940 0.176530 -0.440000 +v 0.007940 0.176530 -0.051250 +v 0.006445 0.172921 -0.440000 +v 0.002081 0.192156 -0.420312 +v 0.002081 0.172625 -0.420312 +v 0.002081 0.192156 -0.440000 +v 0.002081 0.172625 -0.440000 +v -0.001825 0.192156 -0.440000 +v -0.001825 0.172625 -0.440000 +v -0.001825 0.192156 -0.420312 +v -0.001825 0.172625 -0.420312 +v 0.002081 0.176249 -0.381915 +v 0.002081 0.172640 -0.383409 +v 0.002081 0.192154 -0.420313 +v 0.002081 0.188546 -0.421808 +v -0.001825 0.192154 -0.420313 +v -0.001825 0.188546 -0.421808 +v -0.001825 0.176249 -0.381915 +v -0.001825 0.172640 -0.383409 +v 0.002081 0.181761 -0.405333 +v 0.002081 0.172738 -0.409070 +v 0.002081 0.188547 -0.421717 +v 0.002081 0.179525 -0.425455 +v -0.001825 0.188547 -0.421717 +v -0.001825 0.179525 -0.425455 +v -0.001825 0.181761 -0.405333 +v -0.001825 0.172738 -0.409070 +v 0.002081 0.176832 -0.393425 +v 0.002081 0.173223 -0.394920 +v 0.002081 0.181765 -0.405335 +v 0.002081 0.178156 -0.406830 +v -0.001825 0.181765 -0.405335 +v -0.001825 0.178156 -0.406830 +v -0.001825 0.176832 -0.393425 +v -0.001825 0.173223 -0.394920 +v 0.005987 0.098466 -0.051250 +v 0.005987 0.076981 -0.051250 +v 0.005987 0.098466 -0.440000 +v 0.005987 0.076981 -0.440000 +v -0.005731 0.098466 -0.440000 +v -0.005731 0.076981 -0.440000 +v -0.005731 0.098466 -0.051250 +v -0.005731 0.076981 -0.051250 +v 0.005987 0.091659 -0.051250 +v 0.005987 0.070175 -0.051250 +v 0.005987 0.091659 -0.440000 +v 0.005987 0.070175 -0.440000 +v -0.005731 0.091659 -0.440000 +v -0.005731 0.070175 -0.440000 +v -0.005731 0.091659 -0.051250 +v -0.005731 0.070175 -0.051250 +v 0.009460 0.085364 -0.051250 +v -0.005731 0.070173 -0.051250 +v 0.009460 0.085364 -0.440000 +v -0.005731 0.070173 -0.440000 +v 0.001174 0.093651 -0.440000 +v -0.014018 0.078459 -0.440000 +v 0.001174 0.093651 -0.051250 +v -0.014018 0.078459 -0.051250 +v -0.014019 0.090181 -0.440000 +v -0.014019 0.078463 -0.440000 +v -0.014019 0.090181 -0.051250 +v -0.014019 0.078462 -0.051250 +v 0.007466 0.090181 -0.440000 +v 0.007466 0.090181 -0.051250 +v 0.007466 0.078462 -0.051250 +v 0.007466 0.078463 -0.440000 +v -0.005728 0.098464 -0.440000 +v -0.014014 0.090178 -0.440000 +v -0.005728 0.098464 -0.051250 +v -0.014014 0.090178 -0.051250 +v 0.003940 0.088797 -0.440000 +v -0.004347 0.080511 -0.440000 +v 0.014272 0.090181 -0.051250 +v 0.014272 0.078462 -0.051250 +v 0.014272 0.090181 -0.440000 +v 0.014272 0.078463 -0.440000 +v 0.000600 0.090181 -0.440000 +v 0.000600 0.090181 -0.051250 +v 0.000600 0.078462 -0.051250 +v 0.000600 0.078463 -0.440000 +v 0.014273 0.078460 -0.051250 +v 0.005986 0.070174 -0.051250 +v 0.014273 0.078460 -0.440000 +v 0.005986 0.070174 -0.440000 +v -0.000919 0.093652 -0.440000 +v -0.009205 0.085366 -0.440000 +v -0.000919 0.093652 -0.051250 +v -0.009205 0.085366 -0.051250 +v 0.005988 0.098469 -0.440000 +v 0.005988 0.098469 -0.051250 +v 0.014275 0.090182 -0.440000 +v 0.014275 0.090182 -0.051250 +v 0.004607 0.080515 -0.440000 +v -0.003679 0.088801 -0.440000 +v 0.006399 0.101503 -0.001453 +v 0.006399 0.075506 -0.001453 +v 0.006399 0.101503 -0.053481 +v 0.006399 0.075506 -0.053481 +v -0.007781 0.101503 -0.053481 +v -0.007781 0.075506 -0.053481 +v -0.007781 0.101503 -0.001453 +v -0.007781 0.075506 -0.001453 +v -0.003987 0.095681 -0.053481 +v -0.022370 0.077298 -0.053481 +v -0.003987 0.095681 -0.001453 +v -0.022370 0.077298 -0.001453 +v -0.012343 0.067272 -0.001453 +v -0.012343 0.067272 -0.053481 +v 0.006040 0.085654 -0.001453 +v 0.006040 0.085654 -0.053481 +v -0.022369 0.091479 -0.053481 +v -0.022369 0.077300 -0.053481 +v -0.022369 0.091479 -0.001453 +v -0.022369 0.077300 -0.001453 +v 0.008997 0.091479 -0.053481 +v 0.008997 0.091479 -0.001453 +v 0.008997 0.077300 -0.001453 +v 0.008997 0.077300 -0.053481 +v -0.010062 0.103781 -0.053481 +v -0.022368 0.091476 -0.053481 +v -0.010062 0.103781 -0.001453 +v -0.022368 0.091476 -0.001453 +v 0.003915 0.089804 -0.053481 +v 0.003915 0.089804 -0.001453 +v -0.008391 0.077499 -0.001453 +v -0.008391 0.077499 -0.053481 +v 0.020984 0.091479 -0.001453 +v 0.020984 0.077300 -0.001453 +v 0.020984 0.091479 -0.053481 +v 0.020984 0.077300 -0.053481 +v 0.000144 0.091479 -0.053481 +v 0.000144 0.091479 -0.001453 +v 0.000144 0.077300 -0.001453 +v 0.000144 0.077300 -0.053481 +v 0.020983 0.077297 -0.001453 +v 0.010957 0.067270 -0.001453 +v 0.020983 0.077297 -0.053481 +v 0.010957 0.067270 -0.053481 +v 0.002602 0.095678 -0.053481 +v 0.002602 0.095678 -0.001453 +v -0.007425 0.085652 -0.001453 +v -0.007425 0.085652 -0.053481 +v 0.008680 0.103782 -0.053481 +v -0.005297 0.089806 -0.053481 +v 0.008680 0.103782 -0.001453 +v -0.005297 0.089806 -0.001453 +v 0.020985 0.091477 -0.053481 +v 0.020985 0.091477 -0.001453 +v 0.007009 0.077500 -0.001453 +v 0.007009 0.077500 -0.053481 +v 0.013800 0.180441 -0.029767 +v 0.013800 0.076925 -0.029767 +v 0.013800 0.180441 -0.053087 +v 0.013800 0.076925 -0.053087 +v -0.013544 0.180441 -0.053087 +v -0.013544 0.076925 -0.053087 +v -0.013544 0.180441 -0.029767 +v -0.013544 0.076925 -0.029767 +v -0.021651 0.123892 -0.001725 +v -0.002758 0.104999 -0.001725 +v -0.021651 0.123892 -0.053025 +v -0.002758 0.104999 -0.053025 +v -0.032671 0.112872 -0.053025 +v -0.013778 0.093979 -0.053025 +v -0.032671 0.112872 -0.001725 +v -0.013778 0.093979 -0.001725 +v 0.031836 0.139594 -0.001725 +v 0.031836 0.112875 -0.001725 +v 0.031836 0.139594 -0.053025 +v 0.031836 0.112875 -0.053025 +v 0.016250 0.139594 -0.053025 +v 0.016250 0.112875 -0.053025 +v 0.016250 0.139594 -0.001725 +v 0.016250 0.112875 -0.001725 +v -0.017083 0.139594 -0.001725 +v -0.017083 0.112875 -0.001725 +v -0.017083 0.139594 -0.053025 +v -0.017083 0.112875 -0.053025 +v -0.032669 0.139594 -0.053025 +v -0.032669 0.112875 -0.053025 +v -0.032669 0.139594 -0.001725 +v -0.032669 0.112875 -0.001725 +v -0.013777 0.158490 -0.053025 +v -0.032670 0.139597 -0.053025 +v -0.013777 0.158490 -0.001725 +v -0.032670 0.139597 -0.001725 +v -0.002756 0.147469 -0.001725 +v -0.021649 0.128576 -0.001725 +v -0.002756 0.147469 -0.053025 +v -0.021649 0.128576 -0.053025 +v 0.031834 0.112870 -0.001725 +v 0.012941 0.093977 -0.001725 +v 0.031834 0.112870 -0.053025 +v 0.012941 0.093977 -0.053025 +v 0.020813 0.123892 -0.053025 +v 0.001920 0.104999 -0.053025 +v 0.020813 0.123892 -0.001725 +v 0.001920 0.104999 -0.001725 +v 0.012939 0.158483 -0.001725 +v 0.031832 0.139590 -0.001725 +v 0.012939 0.158483 -0.053025 +v 0.031832 0.139590 -0.053025 +v 0.001918 0.147463 -0.001725 +v 0.020811 0.128570 -0.001725 +v 0.001918 0.147463 -0.053025 +v 0.020811 0.128570 -0.053025 +v 0.021613 0.180441 0.141136 +v 0.021613 0.162862 0.141136 +v 0.021613 0.180441 -0.029762 +v 0.021613 0.162862 -0.029762 +v -0.021356 0.180441 -0.029762 +v -0.021356 0.162862 -0.029762 +v -0.021356 0.180441 0.141136 +v -0.021356 0.162862 0.141136 +v 0.021613 0.176532 0.172381 +v 0.021613 0.019306 0.172381 +v 0.021613 0.176533 0.141131 +v 0.021613 0.019306 0.141131 +v -0.021356 0.176533 0.141131 +v -0.021356 0.019306 0.141131 +v -0.021356 0.176532 0.172381 +v -0.021356 0.019306 0.172381 +v 0.021613 0.186297 0.141131 +v 0.021613 0.180438 0.141131 +v 0.021613 0.186297 0.074725 +v 0.021613 0.180438 0.074725 +v -0.021356 0.186297 0.074725 +v -0.021356 0.180438 0.074725 +v -0.021356 0.186297 0.141131 +v -0.021356 0.180438 0.141131 +v 0.016925 0.091958 -0.001031 +v 0.016925 0.044888 -0.001031 +v 0.016925 0.091958 -0.053656 +v 0.016925 0.044888 -0.053656 +v -0.017450 0.091958 -0.053656 +v -0.017450 0.044888 -0.053656 +v -0.017450 0.091958 -0.001031 +v -0.017450 0.044888 -0.001031 +v 0.016925 0.063161 -0.009549 +v 0.016925 0.037718 0.000990 +v 0.016925 0.044891 -0.053657 +v 0.016925 0.019448 -0.043118 +v -0.017450 0.044891 -0.053657 +v -0.017450 0.019448 -0.043118 +v -0.017450 0.063161 -0.009549 +v -0.017450 0.037718 0.000990 +v 0.021613 0.164816 -0.001447 +v 0.021613 0.115988 -0.001447 +v 0.021613 0.164816 -0.053087 +v 0.021613 0.115988 -0.053087 +v -0.021356 0.164816 -0.053087 +v -0.021356 0.115988 -0.053087 +v -0.021356 0.164816 -0.001447 +v -0.021356 0.115988 -0.001447 +v 0.016925 0.049913 0.168686 +v 0.016925 0.019444 0.168686 +v 0.016925 0.049913 -0.043119 +v 0.016925 0.019444 -0.043119 +v -0.017450 0.049913 -0.043119 +v -0.017450 0.019444 -0.043119 +v -0.017450 0.049913 0.168686 +v -0.017450 0.019444 0.168686 +v 0.021613 0.176533 0.172384 +v 0.021613 0.120595 0.195555 +v 0.021613 0.170553 0.157949 +v 0.021613 0.114615 0.181119 +v -0.021356 0.170553 0.157949 +v -0.021356 0.114615 0.181119 +v -0.021356 0.176533 0.172384 +v -0.021356 0.120595 0.195555 +v 0.021613 0.142792 0.175432 +v 0.021613 0.111027 0.207196 +v 0.021613 0.115170 0.147810 +v 0.021613 0.083406 0.179575 +v -0.021356 0.115170 0.147810 +v -0.021356 0.083406 0.179575 +v -0.021356 0.142792 0.175432 +v -0.021356 0.111027 0.207196 +v 0.021613 0.098256 0.270053 +v 0.021613 0.082631 0.270053 +v 0.021613 0.098256 0.193881 +v 0.021613 0.082631 0.193881 +v -0.021356 0.098256 0.193881 +v -0.021356 0.082631 0.193881 +v -0.021356 0.098256 0.270053 +v -0.021356 0.082631 0.270053 +v 0.021613 0.089286 0.262409 +v 0.021613 -0.004545 0.223543 +v 0.021613 0.121426 0.184818 +v 0.021613 0.027594 0.145952 +v -0.021356 0.121426 0.184818 +v -0.021356 0.027594 0.145952 +v -0.021356 0.089286 0.262409 +v -0.021356 -0.004545 0.223543 +v 0.037237 0.121845 0.156756 +v 0.037237 0.081806 0.156756 +v 0.037237 0.121845 0.141131 +v 0.037237 0.081806 0.141131 +v -0.036981 0.121845 0.141131 +v -0.036981 0.081806 0.141131 +v -0.036981 0.121845 0.156756 +v -0.036981 0.081806 0.156756 +v 0.027470 0.133566 0.156756 +v 0.027470 0.073019 0.156756 +v 0.027470 0.133566 0.141131 +v 0.027470 0.073019 0.141131 +v -0.028194 0.133566 0.141131 +v -0.028194 0.073019 0.141131 +v -0.028194 0.133566 0.156756 +v -0.028194 0.073019 0.156756 +v 0.029425 0.112081 0.195819 +v 0.029425 0.092550 0.195819 +v 0.029425 0.112081 0.141131 +v 0.029425 0.092550 0.141131 +v -0.029169 0.112081 0.141131 +v -0.029169 0.092550 0.141131 +v -0.029169 0.112081 0.195819 +v -0.029169 0.092550 0.195819 +v 0.021613 0.082629 0.270055 +v 0.021613 0.010814 0.198240 +v 0.021613 0.092297 0.260388 +v 0.021613 0.020481 0.188572 +v -0.021356 0.092297 0.260388 +v -0.021356 0.020481 0.188572 +v -0.021356 0.082629 0.270055 +v -0.021356 0.010814 0.198240 +v -0.013544 0.192157 0.172381 +v -0.013544 0.175556 0.172381 +v -0.013544 0.192158 0.141131 +v -0.013544 0.175556 0.141131 +v -0.021356 0.192158 0.141131 +v -0.021356 0.175556 0.141131 +v -0.021356 0.192157 0.172381 +v -0.021356 0.175556 0.172381 +v 0.021616 0.193133 0.172381 +v 0.021616 0.176531 0.172381 +v 0.021616 0.193133 0.141131 +v 0.021616 0.176531 0.141131 +v 0.015756 0.193133 0.141131 +v 0.015756 0.176531 0.141131 +v 0.015756 0.193133 0.172381 +v 0.015756 0.176531 0.172381 +v 0.014975 0.026895 0.058292 +v 0.014975 -0.001256 0.046631 +v 0.014975 0.063103 -0.029124 +v 0.014975 0.034953 -0.040784 +v -0.015494 0.063103 -0.029124 +v -0.015494 0.034953 -0.040784 +v -0.015494 0.026895 0.058292 +v -0.015494 -0.001256 0.046631 +v 0.014975 0.043000 0.047803 +v 0.014975 0.021456 0.069347 +v 0.014975 0.020290 0.025093 +v 0.014975 -0.001254 0.046637 +v -0.007681 0.020290 0.025093 +v -0.007681 -0.001254 0.046637 +v -0.007681 0.043000 0.047803 +v -0.007681 0.021456 0.069347 +v 0.014975 0.015642 0.038890 +v 0.014975 -0.006813 0.048191 +v 0.014975 0.009662 0.024455 +v 0.014975 -0.012793 0.033756 +v -0.015494 0.009662 0.024455 +v -0.015494 -0.012793 0.033756 +v -0.015494 0.015642 0.038890 +v -0.015494 -0.006813 0.048191 +v 0.014975 0.000998 0.048194 +v 0.014975 -0.046744 0.048194 +v 0.014975 0.000998 0.032569 +v 0.014975 -0.046744 0.032569 +v -0.015494 0.000998 0.032569 +v -0.015494 -0.046744 0.032569 +v -0.015494 0.000998 0.048194 +v -0.015494 -0.046744 0.048194 +v 0.014975 -0.063929 0.071851 +v 0.014975 -0.074978 0.060802 +v 0.014975 -0.035695 0.043617 +v 0.014975 -0.046743 0.032568 +v -0.015494 -0.035695 0.043617 +v -0.015494 -0.046743 0.032568 +v -0.015494 -0.063929 0.071851 +v -0.015494 -0.074978 0.060802 +v 0.014975 -0.059350 0.171049 +v 0.014975 -0.074975 0.171049 +v 0.014975 -0.059350 0.060806 +v 0.014975 -0.074975 0.060806 +v -0.015494 -0.059350 0.060806 +v -0.015494 -0.074975 0.060806 +v -0.015494 -0.059350 0.171049 +v -0.015494 -0.074975 0.171049 +v 0.014975 -0.035694 0.188234 +v 0.014975 -0.046742 0.199282 +v 0.014975 -0.063928 0.159999 +v 0.014975 -0.074977 0.171047 +v -0.015494 -0.063928 0.159999 +v -0.015494 -0.074977 0.171047 +v -0.015494 -0.035694 0.188234 +v -0.015494 -0.046742 0.199282 +v 0.014975 0.024436 0.199281 +v 0.014975 -0.046744 0.199281 +v 0.014975 0.024436 0.183656 +v 0.014975 -0.046744 0.183656 +v -0.015494 0.024436 0.183656 +v -0.015494 -0.046744 0.183656 +v -0.015494 0.024436 0.199281 +v -0.015494 -0.046744 0.199281 +v 0.014975 0.032919 0.129575 +v 0.014975 -0.003971 0.144855 +v 0.014975 0.023950 0.107921 +v 0.014975 -0.012940 0.123201 +v -0.015494 0.023950 0.107921 +v -0.015494 -0.012940 0.123201 +v -0.015494 0.032919 0.129575 +v -0.015494 -0.003971 0.144855 +v 0.014975 -0.016612 0.133191 +v 0.014975 -0.028273 0.144852 +v 0.014975 -0.044233 0.105569 +v 0.014975 -0.055895 0.117231 +v -0.015494 -0.044233 0.105569 +v -0.015494 -0.055895 0.117231 +v -0.015494 -0.016612 0.133191 +v -0.015494 -0.028273 0.144852 +v 0.014975 -0.003971 0.144853 +v 0.014975 -0.028275 0.144853 +v 0.014975 -0.003971 0.123369 +v 0.014975 -0.028275 0.123369 +v -0.015494 -0.003971 0.123369 +v -0.015494 -0.028275 0.123369 +v -0.015494 -0.003971 0.144853 +v -0.015494 -0.028275 0.144853 +vt 0.611563 0.724609 +vt 0.611563 0.697266 +vt 1.000000 0.724609 +vt 1.000000 0.697266 +vt 0.000000 0.724609 +vt 0.000000 0.697266 +vt 0.388437 0.724609 +vt 0.388437 0.697266 +vt 0.480469 0.388437 +vt 0.480469 0.000000 +vt 0.527344 0.388437 +vt 0.527344 0.000000 +vt 0.472656 0.724609 +vt 0.472656 0.697266 +vt 0.519531 0.724609 +vt 0.519531 0.697266 +vt 0.611563 0.638787 +vt 0.611563 0.611443 +vt 1.000000 0.638787 +vt 1.000000 0.611443 +vt 0.000000 0.638787 +vt 0.000000 0.611443 +vt 0.388437 0.638787 +vt 0.388437 0.611443 +vt 0.480469 1.000000 +vt 0.480469 0.611563 +vt 0.527344 1.000000 +vt 0.527344 0.611563 +vt 0.480469 0.388437 +vt 0.480469 0.000000 +vt 0.527344 0.388437 +vt 0.527344 0.000000 +vt 0.472656 0.638787 +vt 0.472656 0.611443 +vt 0.519531 0.638787 +vt 0.519531 0.611443 +vt 0.611563 0.677653 +vt 0.611563 0.630778 +vt 1.000000 0.677653 +vt 1.000000 0.630778 +vt 0.000000 0.677653 +vt 0.000000 0.630778 +vt 0.388437 0.677653 +vt 0.388437 0.630778 +vt 0.508009 0.677653 +vt 0.508009 0.630778 +vt 0.535353 0.677653 +vt 0.535353 0.630778 +vt 0.464648 0.677653 +vt 0.464648 0.630778 +vt 0.491991 0.677653 +vt 0.491991 0.630778 +vt 0.611563 0.738339 +vt 0.611563 0.691464 +vt 1.000000 0.738339 +vt 1.000000 0.691464 +vt 0.000000 0.738339 +vt 0.000000 0.691464 +vt 0.388437 0.738339 +vt 0.388437 0.691464 +vt 0.447323 0.738339 +vt 0.447323 0.691464 +vt 0.474667 0.738339 +vt 0.474667 0.691464 +vt 0.525333 0.738339 +vt 0.525333 0.691464 +vt 0.552677 0.738339 +vt 0.552677 0.691464 +vt 0.611563 0.691463 +vt 0.611563 0.644588 +vt 1.000000 0.691463 +vt 1.000000 0.644588 +vt 0.000000 0.691463 +vt 0.000000 0.644588 +vt 0.388437 0.691463 +vt 0.388437 0.644588 +vt 0.447322 1.000000 +vt 0.447322 0.611563 +vt 0.474666 1.000000 +vt 0.474666 0.611563 +vt 0.447322 0.388437 +vt 0.447322 0.000000 +vt 0.474666 0.388437 +vt 0.474666 0.000000 +vt 0.447322 0.691463 +vt 0.447322 0.644588 +vt 0.474666 0.691463 +vt 0.474666 0.644588 +vt 0.525334 0.691463 +vt 0.525334 0.644588 +vt 0.552678 0.691463 +vt 0.552678 0.644588 +vt 0.611563 0.691463 +vt 0.611563 0.644588 +vt 1.000000 0.691463 +vt 1.000000 0.644588 +vt 0.000000 0.691463 +vt 0.000000 0.644588 +vt 0.388437 0.691463 +vt 0.388437 0.644588 +vt 0.533146 1.000000 +vt 0.533146 0.611563 +vt 0.560490 1.000000 +vt 0.560490 0.611563 +vt 0.533146 0.388437 +vt 0.533146 0.000000 +vt 0.560490 0.388437 +vt 0.560490 0.000000 +vt 0.439510 0.691463 +vt 0.439510 0.644588 +vt 0.466854 0.691463 +vt 0.466854 0.644588 +vt 0.611563 0.658318 +vt 0.611563 0.611443 +vt 1.000000 0.658318 +vt 1.000000 0.611443 +vt 0.000000 0.658318 +vt 0.000000 0.611443 +vt 0.388437 0.658318 +vt 0.388437 0.611443 +vt 0.480469 0.658318 +vt 0.480469 0.611443 +vt 0.507812 0.658318 +vt 0.507812 0.611443 +vt 0.492188 0.658318 +vt 0.492188 0.611443 +vt 0.519531 0.658318 +vt 0.519531 0.611443 +vt 0.611563 0.719004 +vt 0.611563 0.672129 +vt 1.000000 0.719004 +vt 1.000000 0.672129 +vt 0.000000 0.719004 +vt 0.000000 0.672129 +vt 0.388437 0.719004 +vt 0.388437 0.672129 +vt 0.541154 0.719004 +vt 0.541154 0.672129 +vt 0.568498 0.719004 +vt 0.568498 0.672129 +vt 0.431502 0.719004 +vt 0.431502 0.672129 +vt 0.458846 0.719004 +vt 0.458846 0.672129 +vt 0.611563 0.732422 +vt 0.611563 0.724609 +vt 1.000000 0.732422 +vt 1.000000 0.724609 +vt 0.000000 0.732422 +vt 0.000000 0.724609 +vt 0.388437 0.732422 +vt 0.388437 0.724609 +vt 0.480469 1.000000 +vt 0.480469 0.611563 +vt 0.527344 1.000000 +vt 0.527344 0.611563 +vt 0.472656 0.732422 +vt 0.472656 0.724609 +vt 0.519531 0.732422 +vt 0.519531 0.724609 +vt 0.611563 0.744141 +vt 0.611563 0.732422 +vt 1.000000 0.744141 +vt 1.000000 0.732422 +vt 0.000000 0.744141 +vt 0.000000 0.732422 +vt 0.388437 0.744141 +vt 0.388437 0.732422 +vt 0.488281 1.000000 +vt 0.488281 0.611563 +vt 0.519531 1.000000 +vt 0.519531 0.611563 +vt 0.480469 0.744141 +vt 0.480469 0.732422 +vt 0.511719 0.744141 +vt 0.511719 0.732422 +vt 0.611563 0.767578 +vt 0.611563 0.759766 +vt 1.000000 0.767578 +vt 1.000000 0.759766 +vt 0.000000 0.767578 +vt 0.000000 0.759766 +vt 0.388437 0.767578 +vt 0.388437 0.759766 +vt 0.488281 1.000000 +vt 0.488281 0.611563 +vt 0.519531 1.000000 +vt 0.519531 0.611563 +vt 0.488281 0.388437 +vt 0.488281 0.000000 +vt 0.519531 0.388437 +vt 0.519531 0.000000 +vt 0.480469 0.767578 +vt 0.480469 0.759766 +vt 0.511719 0.767578 +vt 0.511719 0.759766 +vt 0.338438 0.759766 +vt 0.338438 0.744141 +vt 0.389062 0.759766 +vt 0.389062 0.744141 +vt 0.610937 0.759766 +vt 0.610937 0.744141 +vt 0.661563 0.759766 +vt 0.661563 0.744141 +vt 0.488281 0.759766 +vt 0.488281 0.744141 +vt 0.519531 0.759766 +vt 0.519531 0.744141 +vt 0.480469 0.759766 +vt 0.480469 0.744141 +vt 0.511719 0.759766 +vt 0.511719 0.744141 +vt 0.089688 0.759766 +vt 0.089688 0.744141 +vt 0.212187 0.759766 +vt 0.212187 0.744141 +vt 0.787812 0.759766 +vt 0.787812 0.744141 +vt 0.910312 0.759766 +vt 0.910312 0.744141 +vt 0.488281 0.759766 +vt 0.488281 0.744141 +vt 0.519531 0.759766 +vt 0.519531 0.744141 +vt 0.480469 0.759766 +vt 0.480469 0.744141 +vt 0.511719 0.759766 +vt 0.511719 0.744141 +vt 0.807813 0.759766 +vt 0.807813 0.744141 +vt 0.930313 0.759766 +vt 0.930313 0.744141 +vt 0.069688 0.759766 +vt 0.069688 0.744141 +vt 0.192188 0.759766 +vt 0.192188 0.744141 +vt 0.488281 0.759766 +vt 0.488281 0.744141 +vt 0.519531 0.759766 +vt 0.519531 0.744141 +vt 0.480469 0.759766 +vt 0.480469 0.744141 +vt 0.511719 0.759766 +vt 0.511719 0.744141 +vt 0.611562 0.759766 +vt 0.611562 0.744141 +vt 0.664062 0.759766 +vt 0.664062 0.744141 +vt 0.335938 0.759766 +vt 0.335938 0.744141 +vt 0.388438 0.759766 +vt 0.388438 0.744141 +vt 0.480469 0.759766 +vt 0.480469 0.744141 +vt 0.511719 0.759766 +vt 0.511719 0.744141 +vt 0.611563 0.768173 +vt 0.611563 0.760360 +vt 1.000000 0.768173 +vt 1.000000 0.760360 +vt 0.491271 1.000000 +vt 0.491271 0.611563 +vt 0.506896 1.000000 +vt 0.506896 0.611563 +vt 0.493104 0.768173 +vt 0.493104 0.760360 +vt 0.508729 0.768173 +vt 0.508729 0.760360 +vt 0.000000 0.774152 +vt 0.000000 0.766339 +vt 0.388437 0.774152 +vt 0.388437 0.766339 +vt 0.502106 1.000000 +vt 0.502106 0.611563 +vt 0.517731 1.000000 +vt 0.517731 0.611563 +vt 0.482269 0.774152 +vt 0.482269 0.766339 +vt 0.497894 0.774152 +vt 0.497894 0.766339 +vt 0.349688 0.798828 +vt 0.349688 0.759766 +vt 0.389062 0.798828 +vt 0.389062 0.759766 +vt 0.610937 0.798828 +vt 0.610937 0.759766 +vt 0.650312 0.798828 +vt 0.650312 0.759766 +vt 0.500000 0.389062 +vt 0.500000 0.349687 +vt 0.507812 0.389062 +vt 0.507812 0.349687 +vt 0.492188 0.798828 +vt 0.492188 0.759766 +vt 0.500000 0.798828 +vt 0.500000 0.759766 +vt 0.269553 0.799423 +vt 0.269553 0.791610 +vt 0.352678 0.799423 +vt 0.352678 0.791610 +vt 0.647322 0.799423 +vt 0.647322 0.791610 +vt 0.730447 0.799423 +vt 0.730447 0.791610 +vt 0.500000 0.352677 +vt 0.500000 0.269552 +vt 0.507812 0.352677 +vt 0.507812 0.269552 +vt 0.324503 0.793097 +vt 0.324503 0.773566 +vt 0.359972 0.793097 +vt 0.359972 0.773566 +vt 0.640028 0.793097 +vt 0.640028 0.773566 +vt 0.675497 0.793097 +vt 0.675497 0.773566 +vt 0.296937 0.778632 +vt 0.296937 0.770819 +vt 0.322718 0.778632 +vt 0.322718 0.770819 +vt 0.677282 0.778632 +vt 0.677282 0.770819 +vt 0.703063 0.778632 +vt 0.703063 0.770819 +vt 0.611563 0.611443 +vt 0.611563 0.568474 +vt 1.000000 0.611443 +vt 1.000000 0.568474 +vt 0.000000 0.611443 +vt 0.000000 0.568474 +vt 0.388437 0.611443 +vt 0.388437 0.568474 +vt 0.484375 0.611443 +vt 0.484375 0.568474 +vt 0.507812 0.611443 +vt 0.507812 0.568474 +vt 0.611563 0.597828 +vt 0.611563 0.554859 +vt 1.000000 0.597828 +vt 1.000000 0.554859 +vt 0.000000 0.597828 +vt 0.000000 0.554859 +vt 0.388437 0.597828 +vt 0.388437 0.554859 +vt 0.492188 0.388437 +vt 0.492188 0.000000 +vt 0.515625 0.388437 +vt 0.515625 0.000000 +vt 0.484375 0.597828 +vt 0.484375 0.554859 +vt 0.507812 0.597828 +vt 0.507812 0.554859 +vt 0.611563 0.614402 +vt 0.611563 0.571433 +vt 1.000000 0.614402 +vt 1.000000 0.571433 +vt 0.000000 0.614402 +vt 0.000000 0.571433 +vt 0.388437 0.614402 +vt 0.388437 0.571433 +vt 0.475615 1.000000 +vt 0.475615 0.611563 +vt 0.499052 1.000000 +vt 0.499052 0.611563 +vt 0.475615 0.388437 +vt 0.475615 0.000000 +vt 0.499052 0.388437 +vt 0.499052 0.000000 +vt 0.475615 0.614402 +vt 0.475615 0.571433 +vt 0.499052 0.614402 +vt 0.499052 0.571433 +vt 0.500948 0.614402 +vt 0.500948 0.571433 +vt 0.524385 0.614402 +vt 0.524385 0.571433 +vt 0.000000 0.594871 +vt 0.000000 0.571433 +vt 0.388437 0.594871 +vt 0.388437 0.571433 +vt 0.475615 1.000000 +vt 0.475615 0.611563 +vt 0.518584 1.000000 +vt 0.518584 0.611563 +vt 0.475615 0.388437 +vt 0.475615 0.000000 +vt 0.518584 0.388437 +vt 0.518584 0.000000 +vt 0.481416 0.594871 +vt 0.481416 0.571433 +vt 0.524385 0.594871 +vt 0.524385 0.571433 +vt 0.000000 0.618308 +vt 0.000000 0.594871 +vt 0.388437 0.618308 +vt 0.388437 0.594871 +vt 0.497042 0.618308 +vt 0.497042 0.594871 +vt 0.524386 0.618308 +vt 0.524386 0.594871 +vt 0.611563 0.594871 +vt 0.611563 0.571433 +vt 1.000000 0.594871 +vt 1.000000 0.571433 +vt 0.504854 1.000000 +vt 0.504854 0.611563 +vt 0.532197 1.000000 +vt 0.532197 0.611563 +vt 0.504854 0.388437 +vt 0.504854 0.000000 +vt 0.532197 0.388437 +vt 0.532197 0.000000 +vt 0.467802 0.594871 +vt 0.467802 0.571433 +vt 0.495146 0.594871 +vt 0.495146 0.571433 +vt 0.611563 0.608682 +vt 0.611563 0.585244 +vt 1.000000 0.608682 +vt 1.000000 0.585244 +vt 0.000000 0.608682 +vt 0.000000 0.585244 +vt 0.388437 0.608682 +vt 0.388437 0.585244 +vt 0.485241 1.000000 +vt 0.485241 0.611563 +vt 0.528210 1.000000 +vt 0.528210 0.611563 +vt 0.485241 0.388437 +vt 0.485241 0.000000 +vt 0.528210 0.388437 +vt 0.528210 0.000000 +vt 0.485241 0.608682 +vt 0.485241 0.585244 +vt 0.528210 0.608682 +vt 0.528210 0.585244 +vt 0.471790 0.608682 +vt 0.471790 0.585244 +vt 0.514759 0.608682 +vt 0.514759 0.585244 +vt 0.496290 1.000000 +vt 0.496290 0.611563 +vt 0.519728 1.000000 +vt 0.519728 0.611563 +vt 0.480272 0.619452 +vt 0.480272 0.592108 +vt 0.503710 0.619452 +vt 0.503710 0.592108 +vt 0.511971 0.617522 +vt 0.511971 0.565529 +vt 0.616027 0.617522 +vt 0.616027 0.565529 +vt 0.383972 0.617522 +vt 0.383972 0.565529 +vt 0.488029 0.617522 +vt 0.488029 0.565529 +vt 0.488086 0.616027 +vt 0.488086 0.511971 +vt 0.516446 0.616027 +vt 0.516446 0.511971 +vt 0.488086 0.617522 +vt 0.488086 0.565529 +vt 0.516446 0.617522 +vt 0.516446 0.565529 +vt 0.383972 0.621104 +vt 0.383972 0.569110 +vt 0.488029 0.621104 +vt 0.488029 0.569110 +vt 0.458916 0.488029 +vt 0.458916 0.383972 +vt 0.487276 0.488029 +vt 0.487276 0.383972 +vt 0.458916 0.621104 +vt 0.458916 0.569110 +vt 0.487276 0.621104 +vt 0.487276 0.569110 +vt 0.512724 0.621104 +vt 0.512724 0.569110 +vt 0.541084 0.621104 +vt 0.541084 0.569110 +vt 0.383972 0.597469 +vt 0.383972 0.569111 +vt 0.488029 0.597469 +vt 0.488029 0.569111 +vt 0.458917 0.616027 +vt 0.458917 0.511971 +vt 0.521650 0.616027 +vt 0.521650 0.511971 +vt 0.458917 0.488029 +vt 0.458917 0.383972 +vt 0.521650 0.488029 +vt 0.521650 0.383972 +vt 0.458917 0.597469 +vt 0.458917 0.569111 +vt 0.521650 0.597469 +vt 0.521650 0.569111 +vt 0.478350 0.597469 +vt 0.478350 0.569111 +vt 0.541083 0.597469 +vt 0.541083 0.569111 +vt 0.383972 0.632275 +vt 0.383972 0.597470 +vt 0.488029 0.632275 +vt 0.488029 0.597470 +vt 0.458917 0.616027 +vt 0.458917 0.511971 +vt 0.498449 0.616027 +vt 0.498449 0.511971 +vt 0.458917 0.632275 +vt 0.458917 0.597470 +vt 0.498449 0.632275 +vt 0.498449 0.597470 +vt 0.501551 0.632275 +vt 0.501551 0.597470 +vt 0.541083 0.632275 +vt 0.541083 0.597470 +vt 0.511971 0.597468 +vt 0.511971 0.569109 +vt 0.616027 0.597468 +vt 0.616027 0.569109 +vt 0.503934 0.616027 +vt 0.503934 0.511971 +vt 0.545614 0.616027 +vt 0.545614 0.511971 +vt 0.503934 0.488029 +vt 0.503934 0.383972 +vt 0.545614 0.488029 +vt 0.545614 0.383972 +vt 0.503934 0.597468 +vt 0.503934 0.569109 +vt 0.545614 0.597468 +vt 0.545614 0.569109 +vt 0.454386 0.597468 +vt 0.454386 0.569109 +vt 0.496066 0.597468 +vt 0.496066 0.569109 +vt 0.511971 0.614180 +vt 0.511971 0.585820 +vt 0.616027 0.614180 +vt 0.616027 0.585820 +vt 0.488796 0.616027 +vt 0.488796 0.511971 +vt 0.540788 0.616027 +vt 0.540788 0.511971 +vt 0.488796 0.614180 +vt 0.488796 0.585820 +vt 0.540788 0.614180 +vt 0.540788 0.585820 +vt 0.459212 0.614180 +vt 0.459212 0.585820 +vt 0.511204 0.614180 +vt 0.511204 0.585820 +vt 0.383972 0.633658 +vt 0.383972 0.594127 +vt 0.488029 0.633658 +vt 0.488029 0.594127 +vt 0.493050 0.616027 +vt 0.493050 0.511971 +vt 0.527855 0.616027 +vt 0.527855 0.511971 +vt 0.493050 0.633658 +vt 0.493050 0.594127 +vt 0.527855 0.633658 +vt 0.527855 0.594127 +vt 0.472145 0.633658 +vt 0.472145 0.594127 +vt 0.506950 0.633658 +vt 0.506950 0.594127 +vt 0.568593 0.775391 +vt 0.568593 0.568359 +vt 0.615234 0.775391 +vt 0.615234 0.568359 +vt 0.384766 0.775391 +vt 0.384766 0.568359 +vt 0.431407 0.775391 +vt 0.431407 0.568359 +vt 0.476562 0.615234 +vt 0.476562 0.568593 +vt 0.531250 0.615234 +vt 0.531250 0.568593 +vt 0.476562 0.775391 +vt 0.476562 0.568359 +vt 0.531250 0.775391 +vt 0.531250 0.568359 +vt 0.468750 0.775391 +vt 0.468750 0.568359 +vt 0.523438 0.775391 +vt 0.523438 0.568359 +vt 0.512513 0.655912 +vt 0.512513 0.602475 +vt 0.615113 0.655912 +vt 0.615113 0.602475 +vt 0.384887 0.655912 +vt 0.384887 0.602475 +vt 0.487487 0.655912 +vt 0.487487 0.602475 +vt 0.476094 0.487487 +vt 0.476094 0.384887 +vt 0.507265 0.487487 +vt 0.507265 0.384887 +vt 0.476094 0.655912 +vt 0.476094 0.602475 +vt 0.507265 0.655912 +vt 0.507265 0.602475 +vt 0.492735 0.655912 +vt 0.492735 0.602475 +vt 0.523906 0.655912 +vt 0.523906 0.602475 +vt 0.512513 0.693698 +vt 0.512513 0.640261 +vt 0.615113 0.693698 +vt 0.615113 0.640261 +vt 0.384887 0.693698 +vt 0.384887 0.640261 +vt 0.487487 0.693698 +vt 0.487487 0.640261 +vt 0.536146 0.615113 +vt 0.536146 0.512513 +vt 0.567317 0.615113 +vt 0.567317 0.512513 +vt 0.536146 0.487487 +vt 0.536146 0.384887 +vt 0.567317 0.487487 +vt 0.567317 0.384887 +vt 0.536146 0.693698 +vt 0.536146 0.640261 +vt 0.567317 0.693698 +vt 0.567317 0.640261 +vt 0.432683 0.693698 +vt 0.432683 0.640261 +vt 0.463854 0.693698 +vt 0.463854 0.640261 +vt 0.512513 0.693698 +vt 0.512513 0.640261 +vt 0.615113 0.693698 +vt 0.615113 0.640261 +vt 0.384887 0.693698 +vt 0.384887 0.640261 +vt 0.487487 0.693698 +vt 0.487487 0.640261 +vt 0.438307 0.615113 +vt 0.438307 0.512513 +vt 0.469479 0.615113 +vt 0.469479 0.512513 +vt 0.438307 0.487487 +vt 0.438307 0.384887 +vt 0.469479 0.487487 +vt 0.469479 0.384887 +vt 0.438307 0.693698 +vt 0.438307 0.640261 +vt 0.469479 0.693698 +vt 0.469479 0.640261 +vt 0.530521 0.693698 +vt 0.530521 0.640261 +vt 0.561692 0.693698 +vt 0.561692 0.640261 +vt 0.384887 0.747137 +vt 0.384887 0.693699 +vt 0.487487 0.747137 +vt 0.487487 0.693699 +vt 0.438308 0.747137 +vt 0.438308 0.693699 +vt 0.469479 0.747137 +vt 0.469479 0.693699 +vt 0.530521 0.747137 +vt 0.530521 0.693699 +vt 0.561692 0.747137 +vt 0.561692 0.693699 +vt 0.512513 0.677954 +vt 0.512513 0.624516 +vt 0.615113 0.677954 +vt 0.615113 0.624516 +vt 0.384887 0.677954 +vt 0.384887 0.624516 +vt 0.487487 0.677954 +vt 0.487487 0.624516 +vt 0.507489 0.487487 +vt 0.507489 0.384887 +vt 0.538662 0.487487 +vt 0.538662 0.384887 +vt 0.507489 0.677954 +vt 0.507489 0.624516 +vt 0.538662 0.677954 +vt 0.538662 0.624516 +vt 0.461338 0.677954 +vt 0.461338 0.624516 +vt 0.492511 0.677954 +vt 0.492511 0.624516 +vt 0.512513 0.725094 +vt 0.512513 0.671657 +vt 0.615113 0.725094 +vt 0.615113 0.671657 +vt 0.545276 0.725094 +vt 0.545276 0.671657 +vt 0.576447 0.725094 +vt 0.576447 0.671657 +vt 0.423553 0.725094 +vt 0.423553 0.671657 +vt 0.454724 0.725094 +vt 0.454724 0.671657 +vt 0.226796 0.775391 +vt 0.226796 0.740234 +vt 0.568593 0.775391 +vt 0.568593 0.740234 +vt 0.431407 0.775391 +vt 0.431407 0.740234 +vt 0.773204 0.775391 +vt 0.773204 0.740234 +vt 0.460938 0.568593 +vt 0.460938 0.226796 +vt 0.546875 0.568593 +vt 0.546875 0.226796 +vt 0.460938 0.773204 +vt 0.460938 0.431407 +vt 0.546875 0.773204 +vt 0.546875 0.431407 +vt 0.460938 0.775391 +vt 0.460938 0.740234 +vt 0.546875 0.775391 +vt 0.546875 0.740234 +vt 0.453125 0.775391 +vt 0.453125 0.740234 +vt 0.539062 0.775391 +vt 0.539062 0.740234 +vt 0.164296 0.767578 +vt 0.164296 0.453126 +vt 0.226796 0.767578 +vt 0.226796 0.453126 +vt 0.773204 0.767578 +vt 0.773204 0.453126 +vt 0.835704 0.767578 +vt 0.835704 0.453126 +vt 0.460938 0.226796 +vt 0.460938 0.164296 +vt 0.546875 0.226796 +vt 0.546875 0.164296 +vt 0.460938 0.835704 +vt 0.460938 0.773204 +vt 0.546875 0.835704 +vt 0.546875 0.773204 +vt 0.460938 0.767578 +vt 0.460938 0.453126 +vt 0.546875 0.767578 +vt 0.546875 0.453126 +vt 0.453125 0.767578 +vt 0.453125 0.453126 +vt 0.539062 0.767578 +vt 0.539062 0.453126 +vt 0.226796 0.787109 +vt 0.226796 0.775391 +vt 0.359609 0.787109 +vt 0.359609 0.775391 +vt 0.640391 0.787109 +vt 0.640391 0.775391 +vt 0.773204 0.787109 +vt 0.773204 0.775391 +vt 0.460938 0.359609 +vt 0.460938 0.226796 +vt 0.546875 0.359609 +vt 0.546875 0.226796 +vt 0.460938 0.787109 +vt 0.460938 0.775391 +vt 0.546875 0.787109 +vt 0.546875 0.775391 +vt 0.453125 0.787109 +vt 0.453125 0.775391 +vt 0.539062 0.787109 +vt 0.539062 0.775391 +vt 0.511125 0.598432 +vt 0.511125 0.504291 +vt 0.616375 0.598432 +vt 0.616375 0.504291 +vt 0.383625 0.598432 +vt 0.383625 0.504291 +vt 0.488875 0.598432 +vt 0.488875 0.504291 +vt 0.468751 0.616375 +vt 0.468751 0.511125 +vt 0.537501 0.616375 +vt 0.537501 0.511125 +vt 0.468751 0.488875 +vt 0.468751 0.383625 +vt 0.537501 0.488875 +vt 0.537501 0.383625 +vt 0.468751 0.598432 +vt 0.468751 0.504291 +vt 0.537501 0.598432 +vt 0.537501 0.504291 +vt 0.462499 0.598432 +vt 0.462499 0.504291 +vt 0.531249 0.598432 +vt 0.531249 0.504291 +vt 0.499813 0.508483 +vt 0.499813 0.453404 +vt 0.595297 0.508483 +vt 0.595297 0.453404 +vt 0.404703 0.508483 +vt 0.404703 0.453404 +vt 0.500187 0.508483 +vt 0.500187 0.453404 +vt 0.468751 0.508483 +vt 0.468751 0.453404 +vt 0.537501 0.508483 +vt 0.537501 0.453404 +vt 0.462499 0.508483 +vt 0.462499 0.453404 +vt 0.531249 0.508483 +vt 0.531249 0.453404 +vt 0.511953 0.744141 +vt 0.511953 0.646484 +vt 0.615234 0.744141 +vt 0.615234 0.646484 +vt 0.384766 0.744141 +vt 0.384766 0.646484 +vt 0.488047 0.744141 +vt 0.488047 0.646484 +vt 0.460938 0.615234 +vt 0.460938 0.511953 +vt 0.546875 0.615234 +vt 0.546875 0.511953 +vt 0.460938 0.488048 +vt 0.460938 0.384766 +vt 0.546875 0.488048 +vt 0.546875 0.384766 +vt 0.460938 0.744141 +vt 0.460938 0.646484 +vt 0.546875 0.744141 +vt 0.546875 0.646484 +vt 0.453125 0.744141 +vt 0.453125 0.646484 +vt 0.539062 0.744141 +vt 0.539062 0.646484 +vt 0.171687 0.514343 +vt 0.171687 0.453404 +vt 0.595297 0.514343 +vt 0.595297 0.453404 +vt 0.404703 0.514343 +vt 0.404703 0.453404 +vt 0.828313 0.514343 +vt 0.828313 0.453404 +vt 0.468751 0.595297 +vt 0.468751 0.171687 +vt 0.537501 0.595297 +vt 0.537501 0.171687 +vt 0.468751 0.828313 +vt 0.468751 0.404703 +vt 0.537501 0.828313 +vt 0.537501 0.404703 +vt 0.462499 0.514343 +vt 0.462499 0.453404 +vt 0.531249 0.514343 +vt 0.531249 0.453404 +vt 0.115577 0.764836 +vt 0.115577 0.643743 +vt 0.146827 0.764836 +vt 0.146827 0.643743 +vt 0.853173 0.764836 +vt 0.853173 0.643743 +vt 0.884423 0.764836 +vt 0.884423 0.643743 +vt 0.460938 0.884423 +vt 0.460938 0.853173 +vt 0.546875 0.884423 +vt 0.546875 0.853173 +vt 0.460938 0.764836 +vt 0.460938 0.643743 +vt 0.546875 0.764836 +vt 0.546875 0.643743 +vt 0.453125 0.764836 +vt 0.453125 0.643743 +vt 0.539062 0.764836 +vt 0.539062 0.643743 +vt 0.071790 0.671166 +vt 0.071790 0.581323 +vt 0.149915 0.671166 +vt 0.149915 0.581323 +vt 0.850086 0.671166 +vt 0.850086 0.581323 +vt 0.928211 0.671166 +vt 0.928211 0.581323 +vt 0.460938 0.149914 +vt 0.460938 0.071789 +vt 0.546875 0.149914 +vt 0.546875 0.071789 +vt 0.460938 0.928210 +vt 0.460938 0.850085 +vt 0.546875 0.928210 +vt 0.546875 0.850085 +vt 0.460938 0.671166 +vt 0.460938 0.581323 +vt 0.546875 0.671166 +vt 0.546875 0.581323 +vt 0.453125 0.671166 +vt 0.453125 0.581323 +vt 0.539062 0.671166 +vt 0.539062 0.581323 +vt 0.000000 0.611028 +vt 0.000000 0.579778 +vt 0.121299 0.611028 +vt 0.121299 0.579778 +vt 0.878701 0.611028 +vt 0.878701 0.579778 +vt 1.000000 0.611028 +vt 1.000000 0.579778 +vt 0.460938 0.121299 +vt 0.460938 0.000000 +vt 0.546875 0.121299 +vt 0.546875 0.000000 +vt 0.460938 1.000000 +vt 0.460938 0.878701 +vt 0.546875 1.000000 +vt 0.546875 0.878701 +vt 0.453125 0.611028 +vt 0.453125 0.579778 +vt 0.539062 0.611028 +vt 0.539062 0.579778 +vt 0.049189 0.672830 +vt 0.049189 0.469705 +vt 0.217158 0.672830 +vt 0.217158 0.469705 +vt 0.782843 0.672830 +vt 0.782843 0.469705 +vt 0.950811 0.672830 +vt 0.950811 0.469705 +vt 0.460938 0.217157 +vt 0.460938 0.049189 +vt 0.546875 0.217157 +vt 0.546875 0.049189 +vt 0.460938 0.950811 +vt 0.460938 0.782842 +vt 0.546875 0.950811 +vt 0.546875 0.782842 +vt 0.460938 0.672830 +vt 0.460938 0.469705 +vt 0.546875 0.672830 +vt 0.546875 0.469705 +vt 0.453125 0.672830 +vt 0.453125 0.469705 +vt 0.539062 0.672830 +vt 0.539062 0.469705 +vt 0.195546 0.658203 +vt 0.195546 0.578126 +vt 0.226796 0.658203 +vt 0.226796 0.578126 +vt 0.773204 0.658203 +vt 0.773204 0.578126 +vt 0.804454 0.658203 +vt 0.804454 0.578126 +vt 0.429688 0.226796 +vt 0.429688 0.195546 +vt 0.578125 0.226796 +vt 0.578125 0.195546 +vt 0.429688 0.804454 +vt 0.429688 0.773204 +vt 0.578125 0.804454 +vt 0.578125 0.773204 +vt 0.429688 0.658203 +vt 0.429688 0.578126 +vt 0.578125 0.658203 +vt 0.578125 0.578126 +vt 0.421875 0.658203 +vt 0.421875 0.578126 +vt 0.570312 0.658203 +vt 0.570312 0.578126 +vt 0.195546 0.681641 +vt 0.195546 0.560547 +vt 0.226796 0.681641 +vt 0.226796 0.560547 +vt 0.773204 0.681641 +vt 0.773204 0.560547 +vt 0.804454 0.681641 +vt 0.804454 0.560547 +vt 0.447266 0.226796 +vt 0.447266 0.195546 +vt 0.558594 0.226796 +vt 0.558594 0.195546 +vt 0.447266 0.804454 +vt 0.447266 0.773204 +vt 0.558594 0.804454 +vt 0.558594 0.773204 +vt 0.447266 0.681641 +vt 0.447266 0.560547 +vt 0.558594 0.681641 +vt 0.558594 0.560547 +vt 0.441406 0.681641 +vt 0.441406 0.560547 +vt 0.552734 0.681641 +vt 0.552734 0.560547 +vt 0.117421 0.638672 +vt 0.117421 0.599609 +vt 0.226796 0.638672 +vt 0.226796 0.599609 +vt 0.773204 0.638672 +vt 0.773204 0.599609 +vt 0.882579 0.638672 +vt 0.882579 0.599609 +vt 0.445312 0.226796 +vt 0.445312 0.117421 +vt 0.562500 0.226796 +vt 0.562500 0.117421 +vt 0.445312 0.882579 +vt 0.445312 0.773204 +vt 0.562500 0.882579 +vt 0.562500 0.773204 +vt 0.445312 0.638672 +vt 0.445312 0.599609 +vt 0.562500 0.638672 +vt 0.562500 0.599609 +vt 0.104578 0.658606 +vt 0.104578 0.455481 +vt 0.131921 0.658606 +vt 0.131921 0.455481 +vt 0.868079 0.658606 +vt 0.868079 0.455481 +vt 0.895423 0.658606 +vt 0.895423 0.455481 +vt 0.460938 0.895422 +vt 0.460938 0.868079 +vt 0.546875 0.895422 +vt 0.546875 0.868079 +vt 0.460938 0.658606 +vt 0.460938 0.455481 +vt 0.546875 0.658606 +vt 0.546875 0.455481 +vt 0.453125 0.658606 +vt 0.453125 0.455481 +vt 0.539062 0.658606 +vt 0.539062 0.455481 +vt 0.164296 0.798828 +vt 0.164296 0.765626 +vt 0.226796 0.798828 +vt 0.226796 0.765626 +vt 0.773204 0.798828 +vt 0.773204 0.765626 +vt 0.835704 0.798828 +vt 0.835704 0.765626 +vt 0.460938 0.226796 +vt 0.460938 0.164296 +vt 0.476562 0.226796 +vt 0.476562 0.164296 +vt 0.460938 0.798828 +vt 0.460938 0.765626 +vt 0.476562 0.798828 +vt 0.476562 0.765626 +vt 0.523438 0.798828 +vt 0.523438 0.765626 +vt 0.539062 0.798828 +vt 0.539062 0.765626 +vt 0.164296 0.800782 +vt 0.164296 0.767578 +vt 0.226796 0.800782 +vt 0.226796 0.767578 +vt 0.773204 0.800782 +vt 0.773204 0.767578 +vt 0.835704 0.800782 +vt 0.835704 0.767578 +vt 0.535156 0.226796 +vt 0.535156 0.164296 +vt 0.546875 0.226796 +vt 0.546875 0.164296 +vt 0.535156 0.800782 +vt 0.535156 0.767578 +vt 0.546875 0.800782 +vt 0.546875 0.767578 +vt 0.453125 0.800782 +vt 0.453125 0.767578 +vt 0.464844 0.800782 +vt 0.464844 0.767578 +vt 0.401391 0.545360 +vt 0.401391 0.484422 +vt 0.590626 0.545360 +vt 0.590626 0.484422 +vt 0.409374 0.545360 +vt 0.409374 0.484422 +vt 0.598609 0.545360 +vt 0.598609 0.484422 +vt 0.472658 0.590626 +vt 0.472658 0.401391 +vt 0.533595 0.590626 +vt 0.533595 0.401391 +vt 0.472658 0.598609 +vt 0.472658 0.409374 +vt 0.533595 0.598609 +vt 0.533595 0.409374 +vt 0.472658 0.545360 +vt 0.472658 0.484422 +vt 0.533595 0.545360 +vt 0.533595 0.484422 +vt 0.351562 0.472943 +vt 0.351562 0.412006 +vt 0.415796 0.472943 +vt 0.415796 0.412006 +vt 0.584204 0.472943 +vt 0.584204 0.412006 +vt 0.648438 0.472943 +vt 0.648438 0.412006 +vt 0.488283 0.648438 +vt 0.488283 0.584204 +vt 0.533595 0.648438 +vt 0.533595 0.584204 +vt 0.410294 0.437538 +vt 0.410294 0.388928 +vt 0.441544 0.437538 +vt 0.441544 0.388928 +vt 0.558456 0.437538 +vt 0.558456 0.388928 +vt 0.589706 0.437538 +vt 0.589706 0.388928 +vt 0.466405 0.437538 +vt 0.466405 0.388928 +vt 0.527342 0.437538 +vt 0.527342 0.388928 +vt 0.412674 0.416512 +vt 0.412674 0.321028 +vt 0.443924 0.416512 +vt 0.443924 0.321028 +vt 0.556076 0.416512 +vt 0.556076 0.321028 +vt 0.587326 0.416512 +vt 0.587326 0.321028 +vt 0.472658 0.416512 +vt 0.472658 0.321028 +vt 0.533595 0.416512 +vt 0.533595 0.321028 +vt 0.466405 0.416512 +vt 0.466405 0.321028 +vt 0.527342 0.416512 +vt 0.527342 0.321028 +vt 0.364065 0.352277 +vt 0.364065 0.321027 +vt 0.443924 0.352277 +vt 0.443924 0.321027 +vt 0.556077 0.352277 +vt 0.556077 0.321027 +vt 0.635935 0.352277 +vt 0.635935 0.321027 +vt 0.472658 0.443924 +vt 0.472658 0.364065 +vt 0.533595 0.443924 +vt 0.533595 0.364065 +vt 0.472658 0.635935 +vt 0.472658 0.556077 +vt 0.533595 0.635935 +vt 0.533595 0.556077 +vt 0.166970 0.295808 +vt 0.166970 0.264558 +vt 0.387455 0.295808 +vt 0.387455 0.264558 +vt 0.612545 0.295808 +vt 0.612545 0.264558 +vt 0.833030 0.295808 +vt 0.833030 0.264558 +vt 0.472658 0.387455 +vt 0.472658 0.166970 +vt 0.533595 0.387455 +vt 0.533595 0.166970 +vt 0.472658 0.833030 +vt 0.472658 0.612545 +vt 0.533595 0.833030 +vt 0.533595 0.612545 +vt 0.087110 0.295808 +vt 0.087110 0.264558 +vt 0.166971 0.295808 +vt 0.166971 0.264558 +vt 0.833029 0.295808 +vt 0.833029 0.264558 +vt 0.912889 0.295808 +vt 0.912889 0.264558 +vt 0.472658 0.166971 +vt 0.472658 0.087111 +vt 0.533595 0.166971 +vt 0.533595 0.087111 +vt 0.472658 0.912890 +vt 0.472658 0.833030 +vt 0.533595 0.912890 +vt 0.533595 0.833030 +vt 0.110501 0.463387 +vt 0.110501 0.321028 +vt 0.141751 0.463387 +vt 0.141751 0.321028 +vt 0.858249 0.463387 +vt 0.858249 0.321028 +vt 0.889499 0.463387 +vt 0.889499 0.321028 +vt 0.472658 0.463387 +vt 0.472658 0.321028 +vt 0.533595 0.463387 +vt 0.533595 0.321028 +vt 0.466405 0.463387 +vt 0.466405 0.321028 +vt 0.527342 0.463387 +vt 0.527342 0.321028 +vt 0.215787 0.468493 +vt 0.215787 0.388634 +vt 0.262662 0.468493 +vt 0.262662 0.388634 +vt 0.737338 0.468493 +vt 0.737338 0.388634 +vt 0.784213 0.468493 +vt 0.784213 0.388634 +vt 0.472658 0.468493 +vt 0.472658 0.388634 +vt 0.533595 0.468493 +vt 0.533595 0.388634 +vt 0.466405 0.468493 +vt 0.466405 0.388634 +vt 0.527342 0.468493 +vt 0.527342 0.388634 +vt 0.196472 0.335704 +vt 0.196472 0.302721 +vt 0.274597 0.335704 +vt 0.274597 0.302721 +vt 0.725403 0.335704 +vt 0.725403 0.302721 +vt 0.803528 0.335704 +vt 0.803528 0.302721 +vt 0.472658 0.274597 +vt 0.472658 0.196472 +vt 0.533595 0.274597 +vt 0.533595 0.196472 +vt 0.472658 0.803528 +vt 0.472658 0.725403 +vt 0.533595 0.803528 +vt 0.533595 0.725403 +vt 0.466405 0.335704 +vt 0.466405 0.302721 +vt 0.527342 0.335704 +vt 0.527342 0.302721 +vt 0.219355 0.406572 +vt 0.219355 0.357963 +vt 0.262324 0.406572 +vt 0.262324 0.357963 +vt 0.737676 0.406572 +vt 0.737676 0.357963 +vt 0.780645 0.406572 +vt 0.780645 0.357963 +vt 0.472658 0.406572 +vt 0.472658 0.357963 +vt 0.533595 0.406572 +vt 0.533595 0.357963 +vt 0.466405 0.406572 +vt 0.466405 0.357963 +vt 0.527342 0.406572 +vt 0.527342 0.357963 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 1.0000 0.0000 +vn 0.7071 -0.7071 -0.0000 +vn -0.7071 0.7071 0.0000 +vn 0.0000 0.0000 1.0000 +vn 0.7071 0.7071 0.0000 +vn -0.7071 -0.7071 -0.0000 +vn 0.9239 0.3827 0.0000 +vn -0.3827 0.9239 0.0000 +vn -0.9239 0.3827 0.0000 +vn 0.3827 0.9239 0.0000 +vn 0.0000 0.9239 0.3827 +vn 0.0000 0.3827 0.9239 +vn 0.0000 -0.3827 -0.9239 +vn 0.0000 -0.9239 0.3827 +vn 0.0000 0.7071 -0.7071 +vn 0.0000 -0.7071 0.7071 +vn 0.0000 0.7071 0.7071 +vn 0.0000 -0.7071 -0.7071 +vn 0.0000 -0.9239 -0.3827 +vn 0.0000 -0.3827 0.9239 +vn 0.0000 0.3827 -0.9239 +s off +f 257/605/48 258/606/48 259/607/48 +f 258/606/48 260/608/48 259/607/48 +f 261/609/49 262/610/49 263/611/49 +f 262/610/49 264/612/49 263/611/49 +f 264/613/50 262/614/50 258/615/50 +f 262/614/50 260/616/50 258/615/50 +f 259/617/51 260/618/51 261/619/51 +f 260/618/51 262/620/51 261/619/51 +f 265/621/48 266/622/48 267/623/48 +f 266/622/48 268/624/48 267/623/48 +f 269/625/49 270/626/49 271/627/49 +f 270/626/49 272/628/49 271/627/49 +f 269/629/52 271/630/52 267/631/52 +f 271/630/52 265/632/52 267/631/52 +f 272/633/50 270/634/50 266/635/50 +f 270/634/50 268/636/50 266/635/50 +f 267/637/51 268/638/51 269/639/51 +f 268/638/51 270/640/51 269/639/51 +f 273/641/53 274/642/53 275/643/53 +f 274/642/53 276/644/53 275/643/53 +f 277/645/54 278/646/54 279/647/54 +f 278/646/54 280/648/54 279/647/54 +f 279/649/55 280/650/55 273/651/55 +f 280/650/55 274/652/55 273/651/55 +f 275/653/51 276/654/51 277/655/51 +f 276/654/51 278/656/51 277/655/51 +f 281/657/53 282/658/53 283/659/53 +f 282/658/53 284/660/53 283/659/53 +f 285/661/54 286/662/54 287/663/54 +f 286/662/54 288/664/54 287/663/54 +f 287/665/55 288/666/55 281/667/55 +f 288/666/55 282/668/55 281/667/55 +f 283/669/51 284/670/51 285/671/51 +f 284/670/51 286/672/51 285/671/51 +f 289/673/48 290/674/48 291/675/48 +f 290/674/48 292/676/48 291/675/48 +f 293/677/49 294/678/49 295/679/49 +f 294/678/49 296/680/49 295/679/49 +f 293/681/52 295/682/52 291/683/52 +f 295/682/52 289/684/52 291/683/52 +f 296/685/50 294/686/50 290/687/50 +f 294/686/50 292/688/50 290/687/50 +f 295/689/55 296/690/55 289/691/55 +f 296/690/55 290/692/55 289/691/55 +f 291/693/51 292/694/51 293/695/51 +f 292/694/51 294/696/51 293/695/51 +f 297/697/48 298/698/48 299/699/48 +f 298/698/48 300/700/48 299/699/48 +f 301/701/49 302/702/49 303/703/49 +f 302/702/49 304/704/49 303/703/49 +f 301/705/52 303/706/52 299/707/52 +f 303/706/52 297/708/52 299/707/52 +f 304/709/50 302/710/50 298/711/50 +f 302/710/50 300/712/50 298/711/50 +f 299/713/51 300/714/51 301/715/51 +f 300/714/51 302/716/51 301/715/51 +f 305/717/56 306/718/56 307/719/56 +f 306/718/56 308/720/56 307/719/56 +f 309/721/57 310/722/57 311/723/57 +f 310/722/57 312/724/57 311/723/57 +f 311/725/55 312/726/55 305/727/55 +f 312/726/55 306/728/55 305/727/55 +f 307/729/51 308/730/51 309/731/51 +f 308/730/51 310/732/51 309/731/51 +f 313/733/56 314/734/56 315/735/56 +f 314/734/56 316/736/56 315/735/56 +f 317/737/57 318/738/57 319/739/57 +f 318/738/57 320/740/57 319/739/57 +f 319/741/55 320/742/55 313/743/55 +f 320/742/55 314/744/55 313/743/55 +f 315/745/51 316/746/51 317/747/51 +f 316/746/51 318/748/51 317/747/51 +f 321/749/48 322/750/48 323/751/48 +f 322/750/48 324/752/48 323/751/48 +f 325/753/49 326/754/49 327/755/49 +f 326/754/49 328/756/49 327/755/49 +f 325/757/52 327/758/52 323/759/52 +f 327/758/52 321/760/52 323/759/52 +f 323/761/51 324/762/51 325/763/51 +f 324/762/51 326/764/51 325/763/51 +f 329/765/48 330/766/48 331/767/48 +f 330/766/48 332/768/48 331/767/48 +f 333/769/49 334/770/49 335/771/49 +f 334/770/49 336/772/49 335/771/49 +f 333/773/52 335/774/52 331/775/52 +f 335/774/52 329/776/52 331/775/52 +f 331/777/51 332/778/51 333/779/51 +f 332/778/51 334/780/51 333/779/51 +f 337/781/48 338/782/48 339/783/48 +f 338/782/48 340/784/48 339/783/48 +f 341/785/49 342/786/49 343/787/49 +f 342/786/49 344/788/49 343/787/49 +f 341/789/52 343/790/52 339/791/52 +f 343/790/52 337/792/52 339/791/52 +f 344/793/50 342/794/50 338/795/50 +f 342/794/50 340/796/50 338/795/50 +f 339/797/51 340/798/51 341/799/51 +f 340/798/51 342/800/51 341/799/51 +f 345/801/48 346/802/48 347/803/48 +f 346/802/48 348/804/48 347/803/48 +f 349/805/49 350/806/49 351/807/49 +f 350/806/49 352/808/49 351/807/49 +f 351/809/55 352/810/55 345/811/55 +f 352/810/55 346/812/55 345/811/55 +f 347/813/51 348/814/51 349/815/51 +f 348/814/51 350/816/51 349/815/51 +f 353/817/48 354/818/48 355/819/48 +f 354/818/48 356/820/48 355/819/48 +f 357/821/49 358/822/49 359/823/49 +f 358/822/49 360/824/49 359/823/49 +f 359/825/55 360/826/55 353/827/55 +f 360/826/55 354/828/55 353/827/55 +f 355/829/51 356/830/51 357/831/51 +f 356/830/51 358/832/51 357/831/51 +f 361/833/48 362/834/48 363/835/48 +f 362/834/48 364/836/48 363/835/48 +f 365/837/49 366/838/49 367/839/49 +f 366/838/49 368/840/49 367/839/49 +f 367/841/55 368/842/55 361/843/55 +f 368/842/55 362/844/55 361/843/55 +f 363/845/51 364/846/51 365/847/51 +f 364/846/51 366/848/51 365/847/51 +f 369/849/48 370/850/48 371/851/48 +f 370/850/48 372/852/48 371/851/48 +f 373/853/49 374/854/49 375/855/49 +f 374/854/49 376/856/49 375/855/49 +f 371/857/51 372/858/51 373/859/51 +f 372/858/51 374/860/51 373/859/51 +f 377/861/58 378/862/58 379/863/58 +f 378/862/58 380/864/58 379/863/58 +f 381/865/59 382/866/59 379/867/59 +f 382/866/59 377/868/59 379/867/59 +f 379/869/51 380/870/51 381/871/51 +f 380/870/51 383/872/51 381/871/51 +f 384/873/60 385/874/60 386/875/60 +f 385/874/60 387/876/60 386/875/60 +f 384/877/61 386/878/61 388/879/61 +f 386/878/61 389/880/61 388/879/61 +f 388/881/51 390/882/51 384/883/51 +f 390/882/51 385/884/51 384/883/51 +f 391/885/48 392/886/48 393/887/48 +f 392/886/48 394/888/48 393/887/48 +f 395/889/49 396/890/49 397/891/49 +f 396/890/49 398/892/49 397/891/49 +f 395/893/52 397/894/52 393/895/52 +f 397/894/52 391/896/52 393/895/52 +f 393/897/51 394/898/51 395/899/51 +f 394/898/51 396/900/51 395/899/51 +f 399/901/48 400/902/48 401/903/48 +f 400/902/48 402/904/48 401/903/48 +f 403/905/49 404/906/49 405/907/49 +f 404/906/49 406/908/49 405/907/49 +f 403/909/62 405/910/62 401/911/62 +f 405/910/62 399/912/62 401/911/62 +f 407/913/48 408/914/48 409/915/48 +f 408/914/48 410/916/48 409/915/48 +f 411/917/49 412/918/49 413/919/49 +f 412/918/49 414/920/49 413/919/49 +f 415/921/48 416/922/48 417/923/48 +f 416/922/48 418/924/48 417/923/48 +f 419/925/49 420/926/49 421/927/49 +f 420/926/49 422/928/49 421/927/49 +f 423/929/48 424/930/48 425/931/48 +f 424/930/48 426/932/48 425/931/48 +f 427/933/49 428/934/49 429/935/49 +f 428/934/49 430/936/49 429/935/49 +f 425/937/51 426/938/51 427/939/51 +f 426/938/51 428/940/51 427/939/51 +f 431/941/48 432/942/48 433/943/48 +f 432/942/48 434/944/48 433/943/48 +f 435/945/49 436/946/49 437/947/49 +f 436/946/49 438/948/49 437/947/49 +f 438/949/50 436/950/50 432/951/50 +f 436/950/50 434/952/50 432/951/50 +f 433/953/51 434/954/51 435/955/51 +f 434/954/51 436/956/51 435/955/51 +f 439/957/53 440/958/53 441/959/53 +f 440/958/53 442/960/53 441/959/53 +f 443/961/54 444/962/54 445/963/54 +f 444/962/54 446/964/54 445/963/54 +f 443/965/56 445/966/56 441/967/56 +f 445/966/56 439/968/56 441/967/56 +f 446/969/57 444/970/57 440/971/57 +f 444/970/57 442/972/57 440/971/57 +f 445/973/55 446/974/55 439/975/55 +f 446/974/55 440/976/55 439/975/55 +f 441/977/51 442/978/51 443/979/51 +f 442/978/51 444/980/51 443/979/51 +f 447/981/49 448/982/49 449/983/49 +f 448/982/49 450/984/49 449/983/49 +f 447/985/52 449/986/52 451/987/52 +f 449/986/52 452/988/52 451/987/52 +f 450/989/50 448/990/50 453/991/50 +f 448/990/50 454/992/50 453/991/50 +f 451/993/51 454/994/51 447/995/51 +f 454/994/51 448/996/51 447/995/51 +f 455/997/54 456/998/54 457/999/54 +f 456/998/54 458/1000/54 457/999/54 +f 459/1001/51 460/1002/51 455/1003/51 +f 460/1002/51 456/1004/51 455/1003/51 +f 461/1005/48 462/1006/48 463/1007/48 +f 462/1006/48 464/1008/48 463/1007/48 +f 465/1009/52 466/1010/52 463/1011/52 +f 466/1010/52 461/1012/52 463/1011/52 +f 467/1013/50 468/1014/50 462/1015/50 +f 468/1014/50 464/1016/50 462/1015/50 +f 463/1017/51 464/1018/51 465/1019/51 +f 464/1018/51 468/1020/51 465/1019/51 +f 469/1021/53 470/1022/53 471/1023/53 +f 470/1022/53 472/1024/53 471/1023/53 +f 473/1025/54 474/1026/54 475/1027/54 +f 474/1026/54 476/1028/54 475/1027/54 +f 473/1029/56 475/1030/56 471/1031/56 +f 475/1030/56 469/1032/56 471/1031/56 +f 476/1033/57 474/1034/57 470/1035/57 +f 474/1034/57 472/1036/57 470/1035/57 +f 475/1037/55 476/1038/55 469/1039/55 +f 476/1038/55 470/1040/55 469/1039/55 +f 471/1041/51 472/1042/51 473/1043/51 +f 472/1042/51 474/1044/51 473/1043/51 +f 477/1045/56 478/1046/56 479/1047/56 +f 478/1046/56 480/1048/56 479/1047/56 +f 479/1049/51 481/1050/51 477/1051/51 +f 481/1050/51 482/1052/51 477/1051/51 +f 483/1053/48 484/1054/48 485/1055/48 +f 484/1054/48 486/1056/48 485/1055/48 +f 487/1057/49 488/1058/49 489/1059/49 +f 488/1058/49 490/1060/49 489/1059/49 +f 487/1061/52 489/1062/52 485/1063/52 +f 489/1062/52 483/1064/52 485/1063/52 +f 489/1065/55 490/1066/55 483/1067/55 +f 490/1066/55 484/1068/55 483/1067/55 +f 491/1069/54 492/1070/54 493/1071/54 +f 492/1070/54 494/1072/54 493/1071/54 +f 494/1073/57 492/1074/57 495/1075/57 +f 492/1074/57 496/1076/57 495/1075/57 +f 493/1077/55 494/1078/55 497/1079/55 +f 494/1078/55 495/1080/55 497/1079/55 +f 498/1081/51 496/1082/51 491/1083/51 +f 496/1082/51 492/1084/51 491/1083/51 +f 499/1085/49 500/1086/49 501/1087/49 +f 500/1086/49 502/1088/49 501/1087/49 +f 499/1089/52 501/1090/52 503/1091/52 +f 501/1090/52 504/1092/52 503/1091/52 +f 502/1093/50 500/1094/50 505/1095/50 +f 500/1094/50 506/1096/50 505/1095/50 +f 501/1097/55 502/1098/55 504/1099/55 +f 502/1098/55 505/1100/55 504/1099/55 +f 503/1101/51 506/1102/51 499/1103/51 +f 506/1102/51 500/1104/51 499/1103/51 +f 507/1105/54 508/1106/54 509/1107/54 +f 508/1106/54 510/1108/54 509/1107/54 +f 507/1109/56 509/1110/56 511/1111/56 +f 509/1110/56 512/1112/56 511/1111/56 +f 509/1113/55 510/1114/55 512/1115/55 +f 510/1114/55 513/1116/55 512/1115/55 +f 511/1117/51 514/1118/51 507/1119/51 +f 514/1118/51 508/1120/51 507/1119/51 +f 515/1121/48 516/1122/48 517/1123/48 +f 516/1122/48 518/1124/48 517/1123/48 +f 519/1125/52 520/1126/52 517/1127/52 +f 520/1126/52 515/1128/52 517/1127/52 +f 521/1129/50 522/1130/50 516/1131/50 +f 522/1130/50 518/1132/50 516/1131/50 +f 520/1133/55 521/1134/55 515/1135/55 +f 521/1134/55 516/1136/55 515/1135/55 +f 517/1137/51 518/1138/51 519/1139/51 +f 518/1138/51 522/1140/51 519/1139/51 +f 523/1141/53 524/1142/53 525/1143/53 +f 524/1142/53 526/1144/53 525/1143/53 +f 527/1145/56 528/1146/56 525/1147/56 +f 528/1146/56 523/1148/56 525/1147/56 +f 528/1149/55 529/1150/55 523/1151/55 +f 529/1150/55 524/1152/55 523/1151/55 +f 525/1153/51 526/1154/51 527/1155/51 +f 526/1154/51 530/1156/51 527/1155/51 +f 531/1157/54 532/1158/54 533/1159/54 +f 532/1158/54 534/1160/54 533/1159/54 +f 531/1161/56 533/1162/56 535/1163/56 +f 533/1162/56 536/1164/56 535/1163/56 +f 533/1165/55 534/1166/55 536/1167/55 +f 534/1166/55 537/1168/55 536/1167/55 +f 535/1169/51 538/1170/51 531/1171/51 +f 538/1170/51 532/1172/51 531/1171/51 +f 539/1173/48 540/1174/48 541/1175/48 +f 540/1174/48 542/1176/48 541/1175/48 +f 543/1177/49 544/1178/49 545/1179/49 +f 544/1178/49 546/1180/49 545/1179/49 +f 543/1181/52 545/1182/52 541/1183/52 +f 545/1182/52 539/1184/52 541/1183/52 +f 545/1185/55 546/1186/55 539/1187/55 +f 546/1186/55 540/1188/55 539/1187/55 +f 541/1189/51 542/1190/51 543/1191/51 +f 542/1190/51 544/1192/51 543/1191/51 +f 547/1193/56 548/1194/56 549/1195/56 +f 548/1194/56 550/1196/56 549/1195/56 +f 551/1197/57 552/1198/57 553/1199/57 +f 552/1198/57 554/1200/57 553/1199/57 +f 554/1201/53 552/1202/53 548/1203/53 +f 552/1202/53 550/1204/53 548/1203/53 +f 553/1205/55 554/1206/55 547/1207/55 +f 554/1206/55 548/1208/55 547/1207/55 +f 549/1209/51 550/1210/51 551/1211/51 +f 550/1210/51 552/1212/51 551/1211/51 +f 555/1213/48 556/1214/48 557/1215/48 +f 556/1214/48 558/1216/48 557/1215/48 +f 559/1217/49 560/1218/49 561/1219/49 +f 560/1218/49 562/1220/49 561/1219/49 +f 559/1221/52 561/1222/52 557/1223/52 +f 561/1222/52 555/1224/52 557/1223/52 +f 562/1225/50 560/1226/50 556/1227/50 +f 560/1226/50 558/1228/50 556/1227/50 +f 561/1229/55 562/1230/55 555/1231/55 +f 562/1230/55 556/1232/55 555/1231/55 +f 557/1233/51 558/1234/51 559/1235/51 +f 558/1234/51 560/1236/51 559/1235/51 +f 563/1237/48 564/1238/48 565/1239/48 +f 564/1238/48 566/1240/48 565/1239/48 +f 567/1241/49 568/1242/49 569/1243/49 +f 568/1242/49 570/1244/49 569/1243/49 +f 567/1245/52 569/1246/52 565/1247/52 +f 569/1246/52 563/1248/52 565/1247/52 +f 570/1249/50 568/1250/50 564/1251/50 +f 568/1250/50 566/1252/50 564/1251/50 +f 569/1253/55 570/1254/55 563/1255/55 +f 570/1254/55 564/1256/55 563/1255/55 +f 565/1257/51 566/1258/51 567/1259/51 +f 566/1258/51 568/1260/51 567/1259/51 +f 571/1261/54 572/1262/54 573/1263/54 +f 572/1262/54 574/1264/54 573/1263/54 +f 573/1265/55 574/1266/55 575/1267/55 +f 574/1266/55 576/1268/55 575/1267/55 +f 577/1269/51 578/1270/51 571/1271/51 +f 578/1270/51 572/1272/51 571/1271/51 +f 579/1273/53 580/1274/53 581/1275/53 +f 580/1274/53 582/1276/53 581/1275/53 +f 583/1277/54 584/1278/54 585/1279/54 +f 584/1278/54 586/1280/54 585/1279/54 +f 586/1281/57 584/1282/57 580/1283/57 +f 584/1282/57 582/1284/57 580/1283/57 +f 585/1285/55 586/1286/55 579/1287/55 +f 586/1286/55 580/1288/55 579/1287/55 +f 581/1289/51 582/1290/51 583/1291/51 +f 582/1290/51 584/1292/51 583/1291/51 +f 587/1293/56 588/1294/56 589/1295/56 +f 588/1294/56 590/1296/56 589/1295/56 +f 591/1297/55 592/1298/55 587/1299/55 +f 592/1298/55 588/1300/55 587/1299/55 +f 589/1301/51 590/1302/51 593/1303/51 +f 590/1302/51 594/1304/51 593/1303/51 +f 595/1305/48 596/1306/48 597/1307/48 +f 596/1306/48 598/1308/48 597/1307/48 +f 599/1309/49 600/1310/49 601/1311/49 +f 600/1310/49 602/1312/49 601/1311/49 +f 599/1313/52 601/1314/52 597/1315/52 +f 601/1314/52 595/1316/52 597/1315/52 +f 602/1317/50 600/1318/50 596/1319/50 +f 600/1318/50 598/1320/50 596/1319/50 +f 601/1321/55 602/1322/55 595/1323/55 +f 602/1322/55 596/1324/55 595/1323/55 +f 597/1325/51 598/1326/51 599/1327/51 +f 598/1326/51 600/1328/51 599/1327/51 +f 603/1329/48 604/1330/48 605/1331/48 +f 604/1330/48 606/1332/48 605/1331/48 +f 607/1333/49 608/1334/49 609/1335/49 +f 608/1334/49 610/1336/49 609/1335/49 +f 607/1337/52 609/1338/52 605/1339/52 +f 609/1338/52 603/1340/52 605/1339/52 +f 610/1341/50 608/1342/50 604/1343/50 +f 608/1342/50 606/1344/50 604/1343/50 +f 609/1345/55 610/1346/55 603/1347/55 +f 610/1346/55 604/1348/55 603/1347/55 +f 605/1349/51 606/1350/51 607/1351/51 +f 606/1350/51 608/1352/51 607/1351/51 +f 611/1353/48 612/1354/48 613/1355/48 +f 612/1354/48 614/1356/48 613/1355/48 +f 615/1357/49 616/1358/49 617/1359/49 +f 616/1358/49 618/1360/49 617/1359/49 +f 615/1361/52 617/1362/52 613/1363/52 +f 617/1362/52 611/1364/52 613/1363/52 +f 617/1365/55 618/1366/55 611/1367/55 +f 618/1366/55 612/1368/55 611/1367/55 +f 613/1369/51 614/1370/51 615/1371/51 +f 614/1370/51 616/1372/51 615/1371/51 +f 619/1373/48 620/1374/48 621/1375/48 +f 620/1374/48 622/1376/48 621/1375/48 +f 623/1377/49 624/1378/49 625/1379/49 +f 624/1378/49 626/1380/49 625/1379/49 +f 623/1381/52 625/1382/52 621/1383/52 +f 625/1382/52 619/1384/52 621/1383/52 +f 626/1385/50 624/1386/50 620/1387/50 +f 624/1386/50 622/1388/50 620/1387/50 +f 625/1389/55 626/1390/55 619/1391/55 +f 626/1390/55 620/1392/55 619/1391/55 +f 621/1393/51 622/1394/51 623/1395/51 +f 622/1394/51 624/1396/51 623/1395/51 +f 627/1397/48 628/1398/48 629/1399/48 +f 628/1398/48 630/1400/48 629/1399/48 +f 631/1401/49 632/1402/49 633/1403/49 +f 632/1402/49 634/1404/49 633/1403/49 +f 633/1405/63 634/1406/63 627/1407/63 +f 634/1406/63 628/1408/63 627/1407/63 +f 629/1409/64 630/1410/64 631/1411/64 +f 630/1410/64 632/1412/64 631/1411/64 +f 635/1413/48 636/1414/48 637/1415/48 +f 636/1414/48 638/1416/48 637/1415/48 +f 639/1417/49 640/1418/49 641/1419/49 +f 640/1418/49 642/1420/49 641/1419/49 +f 639/1421/52 641/1422/52 637/1423/52 +f 641/1422/52 635/1424/52 637/1423/52 +f 642/1425/50 640/1426/50 636/1427/50 +f 640/1426/50 638/1428/50 636/1427/50 +f 641/1429/55 642/1430/55 635/1431/55 +f 642/1430/55 636/1432/55 635/1431/55 +f 637/1433/51 638/1434/51 639/1435/51 +f 638/1434/51 640/1436/51 639/1435/51 +f 643/1437/48 644/1438/48 645/1439/48 +f 644/1438/48 646/1440/48 645/1439/48 +f 647/1441/49 648/1442/49 649/1443/49 +f 648/1442/49 650/1444/49 649/1443/49 +f 647/1445/52 649/1446/52 645/1447/52 +f 649/1446/52 643/1448/52 645/1447/52 +f 650/1449/50 648/1450/50 644/1451/50 +f 648/1450/50 646/1452/50 644/1451/50 +f 645/1453/51 646/1454/51 647/1455/51 +f 646/1454/51 648/1456/51 647/1455/51 +f 651/1457/48 652/1458/48 653/1459/48 +f 652/1458/48 654/1460/48 653/1459/48 +f 655/1461/49 656/1462/49 657/1463/49 +f 656/1462/49 658/1464/49 657/1463/49 +f 658/1465/65 656/1466/65 652/1467/65 +f 656/1466/65 654/1468/65 652/1467/65 +f 657/1469/63 658/1470/63 651/1471/63 +f 658/1470/63 652/1472/63 651/1471/63 +f 653/1473/64 654/1474/64 655/1475/64 +f 654/1474/64 656/1476/64 655/1475/64 +f 659/1477/48 660/1478/48 661/1479/48 +f 660/1478/48 662/1480/48 661/1479/48 +f 663/1481/49 664/1482/49 665/1483/49 +f 664/1482/49 666/1484/49 665/1483/49 +f 663/1485/66 665/1486/66 661/1487/66 +f 665/1486/66 659/1488/66 661/1487/66 +f 666/1489/67 664/1490/67 660/1491/67 +f 664/1490/67 662/1492/67 660/1491/67 +f 665/1493/68 666/1494/68 659/1495/68 +f 666/1494/68 660/1496/68 659/1495/68 +f 661/1497/69 662/1498/69 663/1499/69 +f 662/1498/69 664/1500/69 663/1499/69 +f 667/1501/48 668/1502/48 669/1503/48 +f 668/1502/48 670/1504/48 669/1503/48 +f 671/1505/49 672/1506/49 673/1507/49 +f 672/1506/49 674/1508/49 673/1507/49 +f 671/1509/52 673/1510/52 669/1511/52 +f 673/1510/52 667/1512/52 669/1511/52 +f 674/1513/50 672/1514/50 668/1515/50 +f 672/1514/50 670/1516/50 668/1515/50 +f 669/1517/51 670/1518/51 671/1519/51 +f 670/1518/51 672/1520/51 671/1519/51 +f 675/1521/48 676/1522/48 677/1523/48 +f 676/1522/48 678/1524/48 677/1523/48 +f 679/1525/49 680/1526/49 681/1527/49 +f 680/1526/49 682/1528/49 681/1527/49 +f 679/1529/62 681/1530/62 677/1531/62 +f 681/1530/62 675/1532/62 677/1531/62 +f 682/1533/70 680/1534/70 676/1535/70 +f 680/1534/70 678/1536/70 676/1535/70 +f 681/1537/71 682/1538/71 675/1539/71 +f 682/1538/71 676/1540/71 675/1539/71 +f 677/1541/72 678/1542/72 679/1543/72 +f 678/1542/72 680/1544/72 679/1543/72 +f 683/1545/48 684/1546/48 685/1547/48 +f 684/1546/48 686/1548/48 685/1547/48 +f 687/1549/49 688/1550/49 689/1551/49 +f 688/1550/49 690/1552/49 689/1551/49 +f 687/1553/52 689/1554/52 685/1555/52 +f 689/1554/52 683/1556/52 685/1555/52 +f 690/1557/50 688/1558/50 684/1559/50 +f 688/1558/50 686/1560/50 684/1559/50 +f 689/1561/55 690/1562/55 683/1563/55 +f 690/1562/55 684/1564/55 683/1563/55 +f 685/1565/51 686/1566/51 687/1567/51 +f 686/1566/51 688/1568/51 687/1567/51 +f 691/1569/48 692/1570/48 693/1571/48 +f 692/1570/48 694/1572/48 693/1571/48 +f 695/1573/49 696/1574/49 697/1575/49 +f 696/1574/49 698/1576/49 697/1575/49 +f 695/1577/52 697/1578/52 693/1579/52 +f 697/1578/52 691/1580/52 693/1579/52 +f 698/1581/50 696/1582/50 692/1583/50 +f 696/1582/50 694/1584/50 692/1583/50 +f 697/1585/55 698/1586/55 691/1587/55 +f 698/1586/55 692/1588/55 691/1587/55 +f 693/1589/51 694/1590/51 695/1591/51 +f 694/1590/51 696/1592/51 695/1591/51 +f 699/1593/48 700/1594/48 701/1595/48 +f 700/1594/48 702/1596/48 701/1595/48 +f 703/1597/49 704/1598/49 705/1599/49 +f 704/1598/49 706/1600/49 705/1599/49 +f 703/1601/52 705/1602/52 701/1603/52 +f 705/1602/52 699/1604/52 701/1603/52 +f 706/1605/50 704/1606/50 700/1607/50 +f 704/1606/50 702/1608/50 700/1607/50 +f 705/1609/55 706/1610/55 699/1611/55 +f 706/1610/55 700/1612/55 699/1611/55 +f 707/1613/48 708/1614/48 709/1615/48 +f 708/1614/48 710/1616/48 709/1615/48 +f 711/1617/49 712/1618/49 713/1619/49 +f 712/1618/49 714/1620/49 713/1619/49 +f 714/1621/69 712/1622/69 708/1623/69 +f 712/1622/69 710/1624/69 708/1623/69 +f 713/1625/67 714/1626/67 707/1627/67 +f 714/1626/67 708/1628/67 707/1627/67 +f 709/1629/66 710/1630/66 711/1631/66 +f 710/1630/66 712/1632/66 711/1631/66 +f 715/1633/48 716/1634/48 717/1635/48 +f 716/1634/48 718/1636/48 717/1635/48 +f 719/1637/49 720/1638/49 721/1639/49 +f 720/1638/49 722/1640/49 721/1639/49 +f 719/1641/52 721/1642/52 717/1643/52 +f 721/1642/52 715/1644/52 717/1643/52 +f 721/1645/55 722/1646/55 715/1647/55 +f 722/1646/55 716/1648/55 715/1647/55 +f 717/1649/51 718/1650/51 719/1651/51 +f 718/1650/51 720/1652/51 719/1651/51 +f 723/1653/48 724/1654/48 725/1655/48 +f 724/1654/48 726/1656/48 725/1655/48 +f 727/1657/49 728/1658/49 729/1659/49 +f 728/1658/49 730/1660/49 729/1659/49 +f 727/1661/52 729/1662/52 725/1663/52 +f 729/1662/52 723/1664/52 725/1663/52 +f 729/1665/55 730/1666/55 723/1667/55 +f 730/1666/55 724/1668/55 723/1667/55 +f 725/1669/51 726/1670/51 727/1671/51 +f 726/1670/51 728/1672/51 727/1671/51 +f 731/1673/48 732/1674/48 733/1675/48 +f 732/1674/48 734/1676/48 733/1675/48 +f 735/1677/49 736/1678/49 737/1679/49 +f 736/1678/49 738/1680/49 737/1679/49 +f 735/1681/62 737/1682/62 733/1683/62 +f 737/1682/62 731/1684/62 733/1683/62 +f 738/1685/70 736/1686/70 732/1687/70 +f 736/1686/70 734/1688/70 732/1687/70 +f 737/1689/71 738/1690/71 731/1691/71 +f 738/1690/71 732/1692/71 731/1691/71 +f 739/1693/48 740/1694/48 741/1695/48 +f 740/1694/48 742/1696/48 741/1695/48 +f 743/1697/49 744/1698/49 745/1699/49 +f 744/1698/49 746/1700/49 745/1699/49 +f 746/1701/67 744/1702/67 740/1703/67 +f 744/1702/67 742/1704/67 740/1703/67 +f 747/1705/48 748/1706/48 749/1707/48 +f 748/1706/48 750/1708/48 749/1707/48 +f 751/1709/49 752/1710/49 753/1711/49 +f 752/1710/49 754/1712/49 753/1711/49 +f 749/1713/64 750/1714/64 751/1715/64 +f 750/1714/64 752/1716/64 751/1715/64 +f 755/1717/48 756/1718/48 757/1719/48 +f 756/1718/48 758/1720/48 757/1719/48 +f 759/1721/49 760/1722/49 761/1723/49 +f 760/1722/49 762/1724/49 761/1723/49 +f 761/1725/55 762/1726/55 755/1727/55 +f 762/1726/55 756/1728/55 755/1727/55 +f 757/1729/51 758/1730/51 759/1731/51 +f 758/1730/51 760/1732/51 759/1731/51 +f 763/1733/48 764/1734/48 765/1735/48 +f 764/1734/48 766/1736/48 765/1735/48 +f 767/1737/49 768/1738/49 769/1739/49 +f 768/1738/49 770/1740/49 769/1739/49 +f 767/1741/68 769/1742/68 765/1743/68 +f 769/1742/68 763/1744/68 765/1743/68 +f 770/1745/69 768/1746/69 764/1747/69 +f 768/1746/69 766/1748/69 764/1747/69 +f 771/1749/48 772/1750/48 773/1751/48 +f 772/1750/48 774/1752/48 773/1751/48 +f 775/1753/49 776/1754/49 777/1755/49 +f 776/1754/49 778/1756/49 777/1755/49 +f 775/1757/52 777/1758/52 773/1759/52 +f 777/1758/52 771/1760/52 773/1759/52 +f 778/1761/50 776/1762/50 772/1763/50 +f 776/1762/50 774/1764/50 772/1763/50 +f 779/1765/48 780/1766/48 781/1767/48 +f 780/1766/48 782/1768/48 781/1767/48 +f 783/1769/49 784/1770/49 785/1771/49 +f 784/1770/49 786/1772/49 785/1771/49 +f 783/1773/66 785/1774/66 781/1775/66 +f 785/1774/66 779/1776/66 781/1775/66 +f 786/1777/67 784/1778/67 780/1779/67 +f 784/1778/67 782/1780/67 780/1779/67 +f 787/1781/48 788/1782/48 789/1783/48 +f 788/1782/48 790/1784/48 789/1783/48 +f 791/1785/49 792/1786/49 793/1787/49 +f 792/1786/49 794/1788/49 793/1787/49 +f 793/1789/55 794/1790/55 787/1791/55 +f 794/1790/55 788/1792/55 787/1791/55 +f 789/1793/51 790/1794/51 791/1795/51 +f 790/1794/51 792/1796/51 791/1795/51 +f 795/1797/48 796/1798/48 797/1799/48 +f 796/1798/48 798/1800/48 797/1799/48 +f 799/1801/49 800/1802/49 801/1803/49 +f 800/1802/49 802/1804/49 801/1803/49 +f 801/1805/63 802/1806/63 795/1807/63 +f 802/1806/63 796/1808/63 795/1807/63 +f 797/1809/64 798/1810/64 799/1811/64 +f 798/1810/64 800/1812/64 799/1811/64 +f 803/1813/48 804/1814/48 805/1815/48 +f 804/1814/48 806/1816/48 805/1815/48 +f 807/1817/49 808/1818/49 809/1819/49 +f 808/1818/49 810/1820/49 809/1819/49 +f 807/1821/66 809/1822/66 805/1823/66 +f 809/1822/66 803/1824/66 805/1823/66 +f 810/1825/67 808/1826/67 804/1827/67 +f 808/1826/67 806/1828/67 804/1827/67 +f 805/1829/69 806/1830/69 807/1831/69 +f 806/1830/69 808/1832/69 807/1831/69 +f 811/1833/48 812/1834/48 813/1835/48 +f 812/1834/48 814/1836/48 813/1835/48 +f 815/1837/49 816/1838/49 817/1839/49 +f 816/1838/49 818/1840/49 817/1839/49 +f 817/1841/55 818/1842/55 811/1843/55 +f 818/1842/55 812/1844/55 811/1843/55 +f 813/1845/51 814/1846/51 815/1847/51 +f 814/1846/51 816/1848/51 815/1847/51 diff --git a/src/main/resources/assets/hbm/sounds.json b/src/main/resources/assets/hbm/sounds.json index 62406873e..4a09ba737 100644 --- a/src/main/resources/assets/hbm/sounds.json +++ b/src/main/resources/assets/hbm/sounds.json @@ -35,6 +35,7 @@ "block.soyuzReady": {"category": "block", "sounds": [{"name": "block/soyuzReady", "stream": true}]}, "block.screm": {"category": "block", "sounds": ["screm/scream1", "screm/scream01", "screm/scream2", "screm/scream02", "screm/scream3", "screm/scream03", "screm/scream4", "screm/scream04", "screm/scream5", "screm/scream05", "screm/scream6", "screm/scream06", "screm/scream7", "screm/scream07", "screm/scream08", "screm/scream09", "screm/scream10", "screm/scream11", "screm/scream12", "screm/scream13", "screm/scream14", "screm/scream15", "screm/scream16", "screm/scream17", "screm/scream18", "screm/scream19", "screm/scream20", "screm/scream21", "screm/scream22", "screm/scream23", "screm/scream24", "screm/scream25"]}, "block.rbmk_explosion": {"category": "block", "sounds": [{"name": "block/rbmk_explosion", "stream": false}]}, + "block.rbmk_az5_cover": {"category": "block", "sounds": [{"name": "block/rbmk_az5_cover", "stream": false}]}, "item.techBleep": {"category": "player", "sounds": [{"name": "tool/techBleep", "stream": false}]}, "item.techBoop": {"category": "player", "sounds": [{"name": "tool/techBoop", "stream": false}]}, diff --git a/src/main/resources/assets/hbm/sounds/block/rbmk_az5_cover.ogg b/src/main/resources/assets/hbm/sounds/block/rbmk_az5_cover.ogg new file mode 100644 index 000000000..24f3e3f91 Binary files /dev/null and b/src/main/resources/assets/hbm/sounds/block/rbmk_az5_cover.ogg differ diff --git a/src/main/resources/assets/hbm/textures/blocks/asphalt_light.png b/src/main/resources/assets/hbm/textures/blocks/asphalt_light.png new file mode 100644 index 000000000..a8b2787eb Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/asphalt_light.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/block_zirconium.png b/src/main/resources/assets/hbm/textures/blocks/block_zirconium.png new file mode 100644 index 000000000..abde7df03 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/block_zirconium.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/concrete_asbestos.png b/src/main/resources/assets/hbm/textures/blocks/concrete_asbestos.png new file mode 100644 index 000000000..1b94cc246 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/concrete_asbestos.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/ore_cinnebar.png b/src/main/resources/assets/hbm/textures/blocks/ore_cinnebar.png new file mode 100644 index 000000000..6686b9e97 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/ore_cinnebar.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/ore_depth_cinnebar.png b/src/main/resources/assets/hbm/textures/blocks/ore_depth_cinnebar.png new file mode 100644 index 000000000..254ff363b Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/ore_depth_cinnebar.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/ore_depth_zirconium.png b/src/main/resources/assets/hbm/textures/blocks/ore_depth_zirconium.png new file mode 100644 index 000000000..4d67ec211 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/ore_depth_zirconium.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/ore_nether_fire.png b/src/main/resources/assets/hbm/textures/blocks/ore_nether_fire.png index 9100e07bb..aa45c35c3 100644 Binary files a/src/main/resources/assets/hbm/textures/blocks/ore_nether_fire.png and b/src/main/resources/assets/hbm/textures/blocks/ore_nether_fire.png differ diff --git a/src/main/resources/assets/hbm/textures/blocks/stone_depth_nether.png b/src/main/resources/assets/hbm/textures/blocks/stone_depth_nether.png new file mode 100644 index 000000000..2d97b5b30 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/blocks/stone_depth_nether.png differ diff --git a/src/main/resources/assets/hbm/textures/gui/reactors/gui_rbmk_console.png b/src/main/resources/assets/hbm/textures/gui/reactors/gui_rbmk_console.png index 47a35ee78..62ea211c5 100644 Binary files a/src/main/resources/assets/hbm/textures/gui/reactors/gui_rbmk_console.png and b/src/main/resources/assets/hbm/textures/gui/reactors/gui_rbmk_console.png differ diff --git a/src/main/resources/assets/hbm/textures/items/chem_icon_CONCRETE_ASBESTOS.png b/src/main/resources/assets/hbm/textures/items/chem_icon_CONCRETE_ASBESTOS.png new file mode 100644 index 000000000..ca71ab0a6 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/chem_icon_CONCRETE_ASBESTOS.png differ diff --git a/src/main/resources/assets/hbm/textures/items/cinnebar.png b/src/main/resources/assets/hbm/textures/items/cinnebar.png new file mode 100644 index 000000000..17ae378c8 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/cinnebar.png differ diff --git a/src/main/resources/assets/hbm/textures/models/weapons/ff/gold.png b/src/main/resources/assets/hbm/textures/models/weapons/ff/gold.png new file mode 100644 index 000000000..5460af019 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/weapons/ff/gold.png differ diff --git a/src/main/resources/assets/hbm/textures/models/weapons/ff/gun_bright.png b/src/main/resources/assets/hbm/textures/models/weapons/ff/gun_bright.png new file mode 100644 index 000000000..1c4c397fc Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/weapons/ff/gun_bright.png differ diff --git a/src/main/resources/assets/hbm/textures/models/weapons/ff/gun_dark.png b/src/main/resources/assets/hbm/textures/models/weapons/ff/gun_dark.png new file mode 100644 index 000000000..e1a1f5acb Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/weapons/ff/gun_dark.png differ diff --git a/src/main/resources/assets/hbm/textures/models/weapons/ff/gun_normal.png b/src/main/resources/assets/hbm/textures/models/weapons/ff/gun_normal.png new file mode 100644 index 000000000..17a30179f Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/weapons/ff/gun_normal.png differ diff --git a/src/main/resources/assets/hbm/textures/models/weapons/ff/iron.png b/src/main/resources/assets/hbm/textures/models/weapons/ff/iron.png new file mode 100644 index 000000000..efd4c1729 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/weapons/ff/iron.png differ diff --git a/src/main/resources/assets/hbm/textures/models/weapons/ff/lead.png b/src/main/resources/assets/hbm/textures/models/weapons/ff/lead.png new file mode 100644 index 000000000..6cf1f9a10 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/weapons/ff/lead.png differ diff --git a/src/main/resources/assets/hbm/textures/models/weapons/ff/saturnite.png b/src/main/resources/assets/hbm/textures/models/weapons/ff/saturnite.png new file mode 100644 index 000000000..29a3c4001 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/weapons/ff/saturnite.png differ diff --git a/src/main/resources/assets/hbm/textures/models/weapons/ff/schrabidium.png b/src/main/resources/assets/hbm/textures/models/weapons/ff/schrabidium.png new file mode 100644 index 000000000..ee85ad395 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/weapons/ff/schrabidium.png differ diff --git a/src/main/resources/assets/hbm/textures/models/weapons/ff/wood.png b/src/main/resources/assets/hbm/textures/models/weapons/ff/wood.png new file mode 100644 index 000000000..c4e9a161d Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/weapons/ff/wood.png differ diff --git a/src/main/resources/assets/hbm/textures/models/weapons/ff/wood_red.png b/src/main/resources/assets/hbm/textures/models/weapons/ff/wood_red.png new file mode 100644 index 000000000..ed2a99309 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/weapons/ff/wood_red.png differ diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index c9ae63ac9..0c0ecb796 100755 --- a/src/main/resources/mcmod.info +++ b/src/main/resources/mcmod.info @@ -3,7 +3,7 @@ "modid": "hbm", "name": "Hbm's Nuclear Tech", "description": "A mod that adds weapons, nuclear themed stuff and machines", - "version":"1.0.27-3826", + "version":"1.0.27-3864", "mcversion": "1.7.10", "url": "", "updateUrl": "",