From 6d90b5b47fc5add51657615a1cb72daeefd07e5d Mon Sep 17 00:00:00 2001 From: Bob Date: Thu, 1 Apr 2021 21:40:00 +0200 Subject: [PATCH] general code cleanup --- src/main/java/com/hbm/blocks/ModBlocks.java | 4 +- .../blocks/generic/BlockHazardFalling.java | 6 +- .../hbm/blocks/generic/BlockNetherCoal.java | 60 + src/main/java/com/hbm/config/WorldConfig.java | 4 +- .../java/com/hbm/crafting/ArmorRecipes.java | 8 +- .../com/hbm/crafting/ConsumableRecipes.java | 1 + .../java/com/hbm/crafting/ToolRecipes.java | 3 +- .../java/com/hbm/extprop/HbmPlayerProps.java | 3 + .../java/com/hbm/handler/FuelHandler.java | 2 + .../java/com/hbm/handler/HbmKeybinds.java | 3 +- .../hbm/handler/nei/SILEXRecipeHandler.java | 2 +- .../com/hbm/inventory/AssemblerRecipes.java | 2 +- .../com/hbm/inventory/CyclotronRecipes.java | 3 +- .../java/com/hbm/inventory/SILEXRecipes.java | 12 +- src/main/java/com/hbm/items/ModItems.java | 105 +- .../java/com/hbm/items/armor/ArmorDNT.java | 204 ++ .../java/com/hbm/items/armor/ArmorFSB.java | 434 ++-- .../java/com/hbm/items/armor/ArmorModel.java | 14 +- .../com/hbm/items/block/ItemBlockHazard.java | 12 + .../com/hbm/items/special/ItemHazard.java | 8 + .../com/hbm/items/special/ItemSyringe.java | 5 + src/main/java/com/hbm/lib/RefStrings.java | 2 +- src/main/java/com/hbm/main/ClientProxy.java | 47 + .../java/com/hbm/main/CraftingManager.java | 2 + .../java/com/hbm/main/ModEventHandler.java | 30 +- .../com/hbm/main/ModEventHandlerClient.java | 21 + .../java/com/hbm/main/ResourceManager.java | 6 + .../com/hbm/modules/ItemHazardModule.java | 24 + .../com/hbm/render/model/ModelArmorDNT.java | 59 + .../hbm/tileentity/TileEntityMachineBase.java | 2 +- .../machine/TileEntityMachineShredder.java | 2 +- src/main/resources/assets/hbm/lang/de_DE.lang | 11 + src/main/resources/assets/hbm/lang/en_US.lang | 11 + .../resources/assets/hbm/models/armor/dnt.obj | 2238 +++++++++++++++++ .../hbm/textures/armor/base/dnt_arm.png | Bin 0 -> 396 bytes .../hbm/textures/armor/base/dnt_arm_1.png | Bin 0 -> 580 bytes .../hbm/textures/armor/base/dnt_chest.png | Bin 0 -> 800 bytes .../hbm/textures/armor/base/dnt_chest_1.png | Bin 0 -> 1011 bytes .../hbm/textures/armor/base/dnt_helmet.png | Bin 0 -> 504 bytes .../hbm/textures/armor/base/dnt_helmet_1.png | Bin 0 -> 873 bytes .../hbm/textures/armor/base/dnt_leg.png | Bin 0 -> 394 bytes .../hbm/textures/armor/base/dnt_leg_1.png | Bin 0 -> 468 bytes .../assets/hbm/textures/armor/dnt_arm.png | Bin 0 -> 1154 bytes .../assets/hbm/textures/armor/dnt_chest.png | Bin 0 -> 1057 bytes .../assets/hbm/textures/armor/dnt_helmet.png | Bin 0 -> 1532 bytes .../assets/hbm/textures/armor/dnt_leg.png | Bin 0 -> 651 bytes .../hbm/textures/blocks/ore_nether_coal.png | Bin 966 -> 1701 bytes .../blocks/ore_nether_coal.png.mcmeta | 5 + .../textures/items/attachment_mask_mono.png | Bin 0 -> 301 bytes .../assets/hbm/textures/items/coal.png | Bin 0 -> 267 bytes .../hbm/textures/items/coal_infernal.png | Bin 0 -> 466 bytes .../assets/hbm/textures/items/dns_boots.png | Bin 0 -> 175 bytes .../assets/hbm/textures/items/dns_helmet.png | Bin 0 -> 284 bytes .../assets/hbm/textures/items/dns_legs.png | Bin 0 -> 245 bytes .../assets/hbm/textures/items/dns_plate.png | Bin 0 -> 331 bytes .../textures/items/gas_mask_filter_mono.png | Bin 0 -> 285 bytes .../hbm/textures/items/gas_mask_mono.png | Bin 0 -> 278 bytes .../hbm/textures/items/plate_armor_dnt.png | Bin 0 -> 192 bytes .../hbm/textures/models/ModelM65Mono.png | Bin 0 -> 585 bytes src/main/resources/mcmod.info | 2 +- 60 files changed, 3062 insertions(+), 295 deletions(-) create mode 100644 src/main/java/com/hbm/blocks/generic/BlockNetherCoal.java create mode 100644 src/main/java/com/hbm/items/armor/ArmorDNT.java create mode 100644 src/main/java/com/hbm/render/model/ModelArmorDNT.java create mode 100644 src/main/resources/assets/hbm/models/armor/dnt.obj create mode 100644 src/main/resources/assets/hbm/textures/armor/base/dnt_arm.png create mode 100644 src/main/resources/assets/hbm/textures/armor/base/dnt_arm_1.png create mode 100644 src/main/resources/assets/hbm/textures/armor/base/dnt_chest.png create mode 100644 src/main/resources/assets/hbm/textures/armor/base/dnt_chest_1.png create mode 100644 src/main/resources/assets/hbm/textures/armor/base/dnt_helmet.png create mode 100644 src/main/resources/assets/hbm/textures/armor/base/dnt_helmet_1.png create mode 100644 src/main/resources/assets/hbm/textures/armor/base/dnt_leg.png create mode 100644 src/main/resources/assets/hbm/textures/armor/base/dnt_leg_1.png create mode 100644 src/main/resources/assets/hbm/textures/armor/dnt_arm.png create mode 100644 src/main/resources/assets/hbm/textures/armor/dnt_chest.png create mode 100644 src/main/resources/assets/hbm/textures/armor/dnt_helmet.png create mode 100644 src/main/resources/assets/hbm/textures/armor/dnt_leg.png create mode 100644 src/main/resources/assets/hbm/textures/blocks/ore_nether_coal.png.mcmeta create mode 100644 src/main/resources/assets/hbm/textures/items/attachment_mask_mono.png create mode 100755 src/main/resources/assets/hbm/textures/items/coal.png create mode 100644 src/main/resources/assets/hbm/textures/items/coal_infernal.png create mode 100644 src/main/resources/assets/hbm/textures/items/dns_boots.png create mode 100644 src/main/resources/assets/hbm/textures/items/dns_helmet.png create mode 100644 src/main/resources/assets/hbm/textures/items/dns_legs.png create mode 100644 src/main/resources/assets/hbm/textures/items/dns_plate.png create mode 100644 src/main/resources/assets/hbm/textures/items/gas_mask_filter_mono.png create mode 100644 src/main/resources/assets/hbm/textures/items/gas_mask_mono.png create mode 100644 src/main/resources/assets/hbm/textures/items/plate_armor_dnt.png create mode 100644 src/main/resources/assets/hbm/textures/models/ModelM65Mono.png diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index 26bc69555..1585fd734 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -975,7 +975,7 @@ public class ModBlocks { ore_coal_oil = new BlockCoalOil(Material.rock).setBlockName("ore_coal_oil").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":ore_coal_oil"); ore_coal_oil_burning = new BlockCoalBurning(Material.rock).setBlockName("ore_coal_oil_burning").setCreativeTab(MainRegistry.blockTab).setLightLevel(10F/15F).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":ore_coal_oil_burning"); - ore_nether_coal = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_nether_coal").setCreativeTab(MainRegistry.blockTab).setLightLevel(10F/15F).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_coal"); + ore_nether_coal = new BlockNetherCoal(Material.rock, true, 5, true).setBlockName("ore_nether_coal").setCreativeTab(MainRegistry.blockTab).setLightLevel(10F/15F).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_coal"); ore_nether_smoldering = new BlockSmolder(Material.rock).setBlockName("ore_nether_smoldering").setCreativeTab(MainRegistry.blockTab).setLightLevel(1F).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_smoldering"); ore_nether_uranium = new BlockOutgas(Material.rock, true, 5, false).setBlockName("ore_nether_uranium").setCreativeTab(MainRegistry.blockTab).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_uranium"); ore_nether_uranium_scorched = new BlockOutgas(Material.rock, true, 5, false).setBlockName("ore_nether_uranium_scorched").setCreativeTab(MainRegistry.blockTab).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_uranium_scorched"); @@ -1070,7 +1070,7 @@ public class ModBlocks { block_desh = new BlockGeneric(Material.iron).setBlockName("block_desh").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_desh"); block_dura_steel = new BlockGeneric(Material.iron).setBlockName("block_dura_steel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_dura_steel"); block_starmetal = new BlockGeneric(Material.iron).setBlockName("block_starmetal").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_starmetal"); - block_yellowcake = new BlockHazardFalling().addRadiation(ItemHazard.yc + ItemHazard.block).toBlock().setBlockName("block_yellowcake").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeSand).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_yellowcake"); + block_yellowcake = new BlockHazardFalling().addRadiation(ItemHazard.yc * ItemHazard.block).toBlock().setBlockName("block_yellowcake").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeSand).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_yellowcake"); block_insulator = new BlockRotatablePillar(Material.cloth, RefStrings.MODID + ":block_insulator_top").setBlockName("block_insulator").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeCloth).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_insulator_side"); block_fiberglass = new BlockRotatablePillar(Material.cloth, RefStrings.MODID + ":block_fiberglass_top").setBlockName("block_fiberglass").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeCloth).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_fiberglass_side"); 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"); diff --git a/src/main/java/com/hbm/blocks/generic/BlockHazardFalling.java b/src/main/java/com/hbm/blocks/generic/BlockHazardFalling.java index dc0f0f1f2..4956439e9 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockHazardFalling.java +++ b/src/main/java/com/hbm/blocks/generic/BlockHazardFalling.java @@ -34,8 +34,8 @@ public class BlockHazardFalling extends BlockFalling implements IItemHazard { @Override public IItemHazard addRadiation(float radiation) { this.getModule().addRadiation(radiation); - this.radIn = radiation; - this.radMax = radiation * 10; + this.radIn = radiation * 0.1F; + this.radMax = radiation; return this; } @@ -46,6 +46,8 @@ public class BlockHazardFalling extends BlockFalling implements IItemHazard { RadiationSavedData.incrementRad(world, x, z, radIn, radMax); world.scheduleBlockUpdate(x, y, z, this, this.tickRate(world)); } + + super.updateTick(world, x, y, z, rand); } @Override diff --git a/src/main/java/com/hbm/blocks/generic/BlockNetherCoal.java b/src/main/java/com/hbm/blocks/generic/BlockNetherCoal.java new file mode 100644 index 000000000..0e33d9f9a --- /dev/null +++ b/src/main/java/com/hbm/blocks/generic/BlockNetherCoal.java @@ -0,0 +1,60 @@ +package com.hbm.blocks.generic; + +import java.util.Random; + +import com.hbm.items.ModItems; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.block.material.Material; +import net.minecraft.entity.Entity; +import net.minecraft.item.Item; +import net.minecraft.world.World; +import net.minecraftforge.common.util.ForgeDirection; + +public class BlockNetherCoal extends BlockOutgas { + + public BlockNetherCoal(Material mat, boolean randomTick, int rate, boolean onBreak) { + super(mat, randomTick, rate, onBreak); + } + + @Override + public Item getItemDropped(int i, Random rand, int j) { + return ModItems.coal_infernal; + } + + @Override + public void onEntityWalking(World world, int x, int y, int z, Entity entity) { + entity.setFire(3); + } + + @Override + @SideOnly(Side.CLIENT) + public void randomDisplayTick(World world, int x, int y, int z, Random rand) { + super.randomDisplayTick(world, x, y, z, rand); + + for(ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) { + + if(dir == ForgeDirection.DOWN) + continue; + + if(world.getBlock(x + dir.offsetX, y + dir.offsetY, z + dir.offsetZ).getMaterial() == Material.air) { + + double ix = x + 0.5F + dir.offsetX + rand.nextDouble() - 0.5D; + double iy = y + 0.5F + dir.offsetY + rand.nextDouble() - 0.5D; + double iz = z + 0.5F + dir.offsetZ + rand.nextDouble() - 0.5D; + + if(dir.offsetX != 0) + ix = x + 0.5F + dir.offsetX * 0.5 + rand.nextDouble() * 0.125 * dir.offsetX; + if(dir.offsetY != 0) + iy = y + 0.5F + dir.offsetY * 0.5 + rand.nextDouble() * 0.125 * dir.offsetY; + if(dir.offsetZ != 0) + iz = z + 0.5F + dir.offsetZ * 0.5 + rand.nextDouble() * 0.125 * dir.offsetZ; + + world.spawnParticle("flame", ix, iy, iz, 0.0, 0.0, 0.0); + world.spawnParticle("smoke", ix, iy, iz, 0.0, 0.0, 0.0); + world.spawnParticle("smoke", ix, iy, iz, 0.0, 0.1, 0.0); + } + } + } +} diff --git a/src/main/java/com/hbm/config/WorldConfig.java b/src/main/java/com/hbm/config/WorldConfig.java index 356c353bd..87fea51ca 100644 --- a/src/main/java/com/hbm/config/WorldConfig.java +++ b/src/main/java/com/hbm/config/WorldConfig.java @@ -28,7 +28,7 @@ public class WorldConfig { public static int netherTungstenSpawn = 10; public static int netherSulfurSpawn = 26; public static int netherPhosphorusSpawn = 24; - public static int netherCoalSpawn = 24; + public static int netherCoalSpawn = 8; public static int netherPlutoniumSpawn = 8; public static int endTikiteSpawn = 8; @@ -90,7 +90,7 @@ public class WorldConfig { netherTungstenSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.N01_tungstenSpawnrate", "Amount of nether tungsten per chunk", 10); netherSulfurSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.N02_sulfurSpawnrate", "Amount of nether sulfur per chunk", 26); netherPhosphorusSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.N03_phosphorusSpawnrate", "Amount of nether phosphorus per chunk", 24); - netherCoalSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.N04_coalSpawnrate", "Amount of nether coal per chunk", 24); + netherCoalSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.N04_coalSpawnrate", "Amount of nether coal per chunk", 8); netherPlutoniumSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.N05_plutoniumSpawnrate", "Amount of nether plutonium per chunk, if enabled", 8); endTikiteSpawn = CommonConfig.createConfigInt(config, CATEGORY_OREGEN, "2.E00_tikiteSpawnrate", "Amount of end trixite per chunk", 8); diff --git a/src/main/java/com/hbm/crafting/ArmorRecipes.java b/src/main/java/com/hbm/crafting/ArmorRecipes.java index 6e28626a5..277ffa86c 100644 --- a/src/main/java/com/hbm/crafting/ArmorRecipes.java +++ b/src/main/java/com/hbm/crafting/ArmorRecipes.java @@ -4,6 +4,7 @@ import com.hbm.blocks.ModBlocks; import com.hbm.config.GeneralConfig; import com.hbm.handler.FluidTypeHandler.FluidType; import com.hbm.items.ModItems; +import com.hbm.items.machine.ItemBattery; import cpw.mods.fml.common.registry.GameRegistry; import net.minecraft.init.Blocks; @@ -82,6 +83,10 @@ public class ArmorRecipes { GameRegistry.addRecipe(new ItemStack(ModItems.fau_plate, 1), new Object[] { "MCM", "PBP", "PSP", 'M', ModItems.motor_desh, 'C', ModItems.demon_core_closed, 'P', ModItems.plate_armor_fau, 'B', ModItems.starmetal_plate, 'S', ModBlocks.ancient_scrap }); GameRegistry.addRecipe(new ItemStack(ModItems.fau_legs, 1), new Object[] { "MPM", "PBP", "PDP", 'M', ModItems.motor_desh, 'P', ModItems.plate_armor_fau, 'B', ModItems.starmetal_legs, 'D', ModItems.billet_polonium }); GameRegistry.addRecipe(new ItemStack(ModItems.fau_boots, 1), new Object[] { "PDP", "PBP", 'P', ModItems.plate_armor_fau, 'D', ModItems.billet_polonium, 'B', ModItems.starmetal_boots }); + GameRegistry.addRecipe(new ItemStack(ModItems.dns_helmet, 1), new Object[] { "PCP", "PBP", "PSP", 'P', ModItems.plate_armor_dnt, 'S', ModItems.ingot_chainsteel, 'B', ModItems.bj_helmet, 'C', ModItems.circuit_targeting_tier6 }); + GameRegistry.addRecipe(new ItemStack(ModItems.dns_plate, 1), new Object[] { "PCP", "PBP", "PSP", 'P', ModItems.plate_armor_dnt, 'S', ModItems.ingot_chainsteel, 'B', ModItems.bj_plate_jetpack, 'C', ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_25) }); + GameRegistry.addRecipe(new ItemStack(ModItems.dns_legs, 1), new Object[] { "PCP", "PBP", "PSP", 'P', ModItems.plate_armor_dnt, 'S', ModItems.ingot_chainsteel, 'B', ModItems.bj_legs, 'C', ModItems.heart_fab }); + GameRegistry.addRecipe(new ItemStack(ModItems.dns_boots, 1), new Object[] { "PCP", "PBP", "PSP", 'P', ModItems.plate_armor_dnt, 'S', ModItems.ingot_chainsteel, 'B', ModItems.bj_boots, 'C', ModItems.demon_core_closed }); //Euphemium armor GameRegistry.addRecipe(new ItemStack(ModItems.euphemium_helmet, 1), new Object[] { "EEE", "E E", 'E', ModItems.plate_euphemium }); @@ -121,7 +126,7 @@ public class ArmorRecipes { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.paa_boots, 1), new Object[] { "E E", "N N", 'E', ModItems.plate_paa, 'N', "plateDenseLead" })); //Liquidator Suit - GameRegistry.addRecipe(new ItemStack(ModItems.liquidator_helmet, 1), new Object[] { "III", "CBC", "IFI", 'I', ModItems.plate_polymer, 'C', ModItems.cladding_lead, 'B', ModItems.hazmat_helmet_grey, 'F', ModItems.gas_mask_filter }); + GameRegistry.addRecipe(new ItemStack(ModItems.liquidator_helmet, 1), new Object[] { "III", "CBC", "IFI", 'I', ModItems.plate_polymer, 'C', ModItems.cladding_lead, 'B', ModItems.hazmat_helmet_grey, 'F', ModItems.gas_mask_filter_mono }); GameRegistry.addRecipe(new ItemStack(ModItems.liquidator_plate, 1), new Object[] { "ICI", "TBT", "ICI", 'I', ModItems.plate_polymer, 'C', ModItems.cladding_lead, 'B', ModItems.hazmat_plate_grey, 'T', ModItems.gas_empty }); GameRegistry.addRecipe(new ItemStack(ModItems.liquidator_legs, 1), new Object[] { "III", "CBC", "I I", 'I', ModItems.plate_polymer, 'C', ModItems.cladding_lead, 'B', ModItems.hazmat_legs_grey }); GameRegistry.addRecipe(new ItemStack(ModItems.liquidator_boots, 1), new Object[] { "ICI", "IBI", 'I', ModItems.plate_polymer, 'C', ModItems.cladding_lead, 'B', ModItems.hazmat_boots_grey }); @@ -130,6 +135,7 @@ public class ArmorRecipes { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.goggles, 1), new Object[] { "P P", "GPG", 'G', "paneGlass", 'P', "plateSteel" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gas_mask, 1), new Object[] { "PPP", "GPG", " F ", 'G', "paneGlass", 'P', "plateSteel", 'F', ModItems.gas_mask_filter })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gas_mask_m65, 1), new Object[] { "PPP", "GPG", " F ", 'G', "paneGlass", 'P', ModItems.plate_polymer, 'F', ModItems.gas_mask_filter })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gas_mask_mono, 1), new Object[] { " P ", "PPP", " F ", 'P', ModItems.plate_polymer, 'F', ModItems.gas_mask_filter_mono })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mask_of_infamy, 1), new Object[] { "III", "III", " I ", 'I', "plateIron" })); //Capes diff --git a/src/main/java/com/hbm/crafting/ConsumableRecipes.java b/src/main/java/com/hbm/crafting/ConsumableRecipes.java index ebf966ce6..0cc5e437f 100644 --- a/src/main/java/com/hbm/crafting/ConsumableRecipes.java +++ b/src/main/java/com/hbm/crafting/ConsumableRecipes.java @@ -151,6 +151,7 @@ public class ConsumableRecipes { //Helmet Mods GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.attachment_mask, 1), new Object[] { "DID", "IGI", " F ", 'D', ModItems.ducttape, 'I', ModItems.plate_polymer, 'G', "paneGlass", 'F', ModItems.gas_mask_filter })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.attachment_mask_mono, 1), new Object[] { "DID", "IGI", " F ", 'D', ModItems.ducttape, 'I', ModItems.plate_polymer, 'G', "paneGlass", 'F', ModItems.gas_mask_filter_mono })); //Boot Mods GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.pads_rubber, 1), new Object[] { "P P", "IDI", "P P", 'P', ModItems.plate_polymer, 'I', "plateIron", 'D', ModItems.ducttape })); diff --git a/src/main/java/com/hbm/crafting/ToolRecipes.java b/src/main/java/com/hbm/crafting/ToolRecipes.java index ddf2098a2..85818d75b 100644 --- a/src/main/java/com/hbm/crafting/ToolRecipes.java +++ b/src/main/java/com/hbm/crafting/ToolRecipes.java @@ -116,8 +116,9 @@ public class ToolRecipes { GameRegistry.addRecipe(new ItemStack(ModItems.turret_chip, 1), new Object[] { "WWW", "CPC", "WWW", 'W', ModItems.wire_gold, 'P', ModItems.ingot_polymer, 'C', ModItems.circuit_gold, }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.turret_biometry, 1), new Object[] { "CC ", "GGS", "SSS", 'C', ModItems.circuit_copper, 'S', "plateSteel", 'G', "plateGold", 'I', "plateLead" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.survey_scanner, 1), new Object[] { "SWS", " G ", "PCP", 'W', ModItems.wire_gold, 'P', ModItems.ingot_polymer, 'C', ModItems.circuit_gold, 'S', "plateSteel", 'G', "ingotGold" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.geiger_counter, 1), new Object[] { "GPP", "WCS", "WBB", 'W', ModItems.wire_gold, 'P', ModItems.ingot_polymer, 'C', ModItems.circuit_copper, 'G', "ingotGold", 'S', "plateSteel", 'B', ModItems.ingot_beryllium })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.geiger_counter, 1), new Object[] { "GPP", "WCS", "WBB", 'W', ModItems.wire_gold, 'P', ModItems.plate_polymer, 'C', ModItems.circuit_aluminium, 'G', "ingotGold", 'S', "plateSteel", 'B', ModItems.ingot_beryllium })); 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.defuser, 1), new Object[] { " PS", "P P", " P ", 'P', "ingotPolymer", 'S', "plateSteel" })); diff --git a/src/main/java/com/hbm/extprop/HbmPlayerProps.java b/src/main/java/com/hbm/extprop/HbmPlayerProps.java index ae5dcc5c3..55d31dcd8 100644 --- a/src/main/java/com/hbm/extprop/HbmPlayerProps.java +++ b/src/main/java/com/hbm/extprop/HbmPlayerProps.java @@ -13,6 +13,9 @@ public class HbmPlayerProps implements IExtendedEntityProperties { public static final String key = "NTM_EXT_PLAYER"; public EntityPlayer player; + public boolean enableHUD = true; + public boolean enableBackpack = true; + private boolean[] keysPressed = new boolean[EnumKeybind.values().length]; public HbmPlayerProps(EntityPlayer player) { diff --git a/src/main/java/com/hbm/handler/FuelHandler.java b/src/main/java/com/hbm/handler/FuelHandler.java index 0af6e46b5..d79de4a14 100644 --- a/src/main/java/com/hbm/handler/FuelHandler.java +++ b/src/main/java/com/hbm/handler/FuelHandler.java @@ -36,6 +36,8 @@ public class FuelHandler implements IFuelHandler { return 3200; if(fuel.getItem() == ModItems.book_guide) return 800; + if(fuel.getItem() == ModItems.coal_infernal) + return 4800; return 0; } diff --git a/src/main/java/com/hbm/handler/HbmKeybinds.java b/src/main/java/com/hbm/handler/HbmKeybinds.java index b72859fc0..717421c4b 100644 --- a/src/main/java/com/hbm/handler/HbmKeybinds.java +++ b/src/main/java/com/hbm/handler/HbmKeybinds.java @@ -3,6 +3,7 @@ package com.hbm.handler; public class HbmKeybinds { public static enum EnumKeybind { - JETPACK + JETPACK, + TOGGLE_HEAD } } diff --git a/src/main/java/com/hbm/handler/nei/SILEXRecipeHandler.java b/src/main/java/com/hbm/handler/nei/SILEXRecipeHandler.java index d937f0acc..1a97e98d5 100644 --- a/src/main/java/com/hbm/handler/nei/SILEXRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/SILEXRecipeHandler.java @@ -148,7 +148,7 @@ public class SILEXRecipeHandler extends TemplateRecipeHandler { guiGui = new LinkedList>(); transferRects.add(new RecipeTransferRect(new Rectangle(60, 34 - 11, 24, 18), "silex")); - transferRectsGui.add(new RecipeTransferRect(new Rectangle(72 - 5, 28 - 11, 30, 30), "silex")); + transferRectsGui.add(new RecipeTransferRect(new Rectangle(39, 60, 60, 50), "silex")); guiGui.add(GUISILEX.class); RecipeTransferRectHandler.registerRectsToGuis(getRecipeTransferRectGuis(), transferRects); RecipeTransferRectHandler.registerRectsToGuis(guiGui, transferRectsGui); diff --git a/src/main/java/com/hbm/inventory/AssemblerRecipes.java b/src/main/java/com/hbm/inventory/AssemblerRecipes.java index 09be8b69b..e5d173a4c 100644 --- a/src/main/java/com/hbm/inventory/AssemblerRecipes.java +++ b/src/main/java/com/hbm/inventory/AssemblerRecipes.java @@ -290,7 +290,7 @@ public class AssemblerRecipes { makeRecipe(new ComparableStack(ModBlocks.factory_advanced_furnace, 1), new AStack[] {new ComparableStack(ModItems.ingot_advanced_alloy, 4), new ComparableStack(ModItems.plate_advanced_alloy, 4), new OreDictStack("plateSteel", 8), new ComparableStack(ModItems.coil_advanced_alloy, 2), },100); makeRecipe(new ComparableStack(ModBlocks.factory_advanced_core, 1), new AStack[] {new ComparableStack(ModItems.ingot_advanced_alloy, 6), new ComparableStack(ModItems.plate_advanced_alloy, 6), new OreDictStack("plateSteel", 8), new ComparableStack(ModItems.coil_advanced_alloy, 2), new ComparableStack(ModItems.motor, 16), new ComparableStack(Blocks.piston, 6), },100); makeRecipe(new ComparableStack(ModBlocks.factory_advanced_conductor, 1), new AStack[] {new ComparableStack(ModItems.ingot_advanced_alloy, 8), new ComparableStack(ModItems.plate_advanced_alloy, 6), new ComparableStack(ModItems.wire_advanced_alloy, 4), new ComparableStack(ModItems.fuse, 6), },50); - makeRecipe(new ComparableStack(ModBlocks.reactor_element, 1), new AStack[] {new OreDictStack("ingotSteel", 2), new OreDictStack("plateDenseLead", 4), new OreDictStack("plateLead", 2), new ComparableStack(ModItems.rod_empty, 8), },150); + makeRecipe(new ComparableStack(ModBlocks.reactor_element, 1), new AStack[] {new OreDictStack("ingotSteel", 2), new OreDictStack("plateDenseLead", 4), new OreDictStack("plateLead", 2), new ComparableStack(ModItems.ingot_zirconium, 2), },150); makeRecipe(new ComparableStack(ModBlocks.reactor_control, 1), new AStack[] {new OreDictStack("ingotSteel", 4), new OreDictStack("ingotLead", 6), new ComparableStack(ModItems.bolt_tungsten, 6), new ComparableStack(ModItems.motor, 1), },100); makeRecipe(new ComparableStack(ModBlocks.reactor_hatch, 1), new AStack[] {new ComparableStack(ModBlocks.brick_concrete, 1), new OreDictStack("plateSteel", 6), },150); makeRecipe(new ComparableStack(ModBlocks.reactor_conductor, 1), new AStack[] {new OreDictStack("ingotSteel", 4), new OreDictStack("plateCopper", 12), new ComparableStack(ModItems.wire_tungsten, 4), },130); diff --git a/src/main/java/com/hbm/inventory/CyclotronRecipes.java b/src/main/java/com/hbm/inventory/CyclotronRecipes.java index 021ba005a..2096dcdef 100644 --- a/src/main/java/com/hbm/inventory/CyclotronRecipes.java +++ b/src/main/java/com/hbm/inventory/CyclotronRecipes.java @@ -14,6 +14,7 @@ import net.minecraftforge.oredict.OreDictionary; public class CyclotronRecipes { + //i could have used classes for this, oh bother private static HashMap lithium = new HashMap(); private static HashMap beryllium = new HashMap(); private static HashMap carbon = new HashMap(); @@ -88,7 +89,7 @@ public class CyclotronRecipes { makeRecipe(plutonium, plAmat, "dustPhosphorus", new ItemStack(ModItems.powder_tennessine), plA); makeRecipe(plutonium, plAmat, "dustPlutonium", new ItemStack(ModItems.powder_tennessine), plA); makeRecipe(plutonium, plAmat, new ComparableStack(ModItems.powder_tennessine), new ItemStack(ModItems.powder_reiium), plA); - makeRecipe(plutonium, plAmat, new ComparableStack(ModItems.pellet_charged), new ItemStack(ModItems.nugget_schrabidium), 200); + makeRecipe(plutonium, plAmat, new ComparableStack(ModItems.pellet_charged), new ItemStack(ModItems.nugget_schrabidium), 1000); makeRecipe(plutonium, plAmat, new ComparableStack(ModItems.powder_unobtainium), new ItemStack(ModItems.powder_daffergon), plA); makeRecipe(plutonium, plAmat, new ComparableStack(ModItems.cell_antimatter), new ItemStack(ModItems.cell_anti_schrabidium), 0); /// PLUTONIUM END /// diff --git a/src/main/java/com/hbm/inventory/SILEXRecipes.java b/src/main/java/com/hbm/inventory/SILEXRecipes.java index 82c2320cc..3a0ef1afd 100644 --- a/src/main/java/com/hbm/inventory/SILEXRecipes.java +++ b/src/main/java/com/hbm/inventory/SILEXRecipes.java @@ -6,7 +6,6 @@ import java.util.List; import java.util.Map; import java.util.Map.Entry; -import com.hbm.inventory.HadronRecipes.HadronRecipe; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.items.ModItems; import com.hbm.util.WeightedRandomObject; @@ -21,11 +20,6 @@ public class SILEXRecipes { public static void register() { - recipes.put("ingotSteel", new SILEXRecipe(100, 100) - .addOut(new WeightedRandomObject(new ItemStack(Items.iron_ingot), 1)) - .addOut(new WeightedRandomObject(new ItemStack(Items.coal), 1)) - ); - recipes.put("ingotUranium", new SILEXRecipe(900, 100) .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_u235), 1)) .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_u238), 8)) @@ -53,6 +47,12 @@ public class SILEXRecipes { .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_uranium), 2)) .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_plutonium), 2)) ); + + recipes.put(new ComparableStack(Items.dye, 1, 4), new SILEXRecipe(100, 100) + .addOut(new WeightedRandomObject(new ItemStack(ModItems.sulfur), 4)) + .addOut(new WeightedRandomObject(new ItemStack(ModItems.powder_aluminium), 3)) + .addOut(new WeightedRandomObject(new ItemStack(ModItems.powder_cobalt), 3)) + ); } public static SILEXRecipe getOutput(ItemStack stack) { diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 1ea79f5f3..ba4486b70 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -73,6 +73,7 @@ public class ModItems { public static Item lignite; public static Item powder_lignite; public static Item briquette_lignite; + public static Item coal_infernal; public static Item niter; public static Item ingot_copper; @@ -232,6 +233,7 @@ public class ModItems { public static Item plate_armor_hev; public static Item plate_armor_lunar; public static Item plate_armor_fau; + public static Item plate_armor_dnt; public static Item solid_fuel; public static Item rocket_fuel; @@ -1739,6 +1741,10 @@ public class ModItems { public static Item fau_plate; public static Item fau_legs; public static Item fau_boots; + public static Item dns_helmet; + public static Item dns_plate; + public static Item dns_legs; + public static Item dns_boots; public static Item zirconium_legs; public static Item australium_iii; @@ -2354,6 +2360,7 @@ public class ModItems { plate_armor_hev = new Item().setUnlocalizedName("plate_armor_hev").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_armor_hev"); plate_armor_lunar = new Item().setUnlocalizedName("plate_armor_lunar").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_armor_lunar"); plate_armor_fau = new Item().setUnlocalizedName("plate_armor_fau").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_armor_fau"); + plate_armor_dnt = new Item().setUnlocalizedName("plate_armor_dnt").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_armor_dnt"); solid_fuel = new Item().setUnlocalizedName("solid_fuel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":solid_fuel"); rocket_fuel = new Item().setUnlocalizedName("rocket_fuel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":rocket_fuel"); @@ -2361,6 +2368,7 @@ public class ModItems { lignite = new Item().setUnlocalizedName("lignite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":lignite"); 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"); 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"); @@ -2746,43 +2754,43 @@ public class ModItems { crystal_xen = new ItemDrop().setUnlocalizedName("crystal_xen").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":crystal_xen"); inf_water = new Item().setUnlocalizedName("inf_water").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":inf_water"); - stamp_stone_flat = new ItemStamp(5).setUnlocalizedName("stamp_stone_flat").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_stone_flat"); - stamp_stone_plate = new ItemStamp(5).setUnlocalizedName("stamp_stone_plate").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_stone_plate"); - stamp_stone_wire = new ItemStamp(5).setUnlocalizedName("stamp_stone_wire").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_stone_wire"); - stamp_stone_circuit = new ItemStamp(5).setUnlocalizedName("stamp_stone_circuit").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_stone_circuit"); - stamp_iron_flat = new ItemStamp(25).setUnlocalizedName("stamp_iron_flat").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_iron_flat"); - stamp_iron_plate = new ItemStamp(25).setUnlocalizedName("stamp_iron_plate").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_iron_plate"); - stamp_iron_wire = new ItemStamp(25).setUnlocalizedName("stamp_iron_wire").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_iron_wire"); - stamp_iron_circuit = new ItemStamp(25).setUnlocalizedName("stamp_iron_circuit").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_iron_circuit"); - stamp_steel_flat = new ItemStamp(50).setUnlocalizedName("stamp_steel_flat").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_steel_flat"); - stamp_steel_plate = new ItemStamp(50).setUnlocalizedName("stamp_steel_plate").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_steel_plate"); - stamp_steel_wire = new ItemStamp(50).setUnlocalizedName("stamp_steel_wire").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_steel_wire"); - stamp_steel_circuit = new ItemStamp(50).setUnlocalizedName("stamp_steel_circuit").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_steel_circuit"); - stamp_titanium_flat = new ItemStamp(65).setUnlocalizedName("stamp_titanium_flat").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_titanium_flat"); - stamp_titanium_plate = new ItemStamp(65).setUnlocalizedName("stamp_titanium_plate").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_titanium_plate"); - stamp_titanium_wire = new ItemStamp(65).setUnlocalizedName("stamp_titanium_wire").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_titanium_wire"); - stamp_titanium_circuit = new ItemStamp(65).setUnlocalizedName("stamp_titanium_circuit").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_titanium_circuit"); - stamp_obsidian_flat = new ItemStamp(100).setUnlocalizedName("stamp_obsidian_flat").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_obsidian_flat"); - stamp_obsidian_plate = new ItemStamp(100).setUnlocalizedName("stamp_obsidian_plate").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_obsidian_plate"); - stamp_obsidian_wire = new ItemStamp(100).setUnlocalizedName("stamp_obsidian_wire").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_obsidian_wire"); - stamp_obsidian_circuit = new ItemStamp(100).setUnlocalizedName("stamp_obsidian_circuit").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_obsidian_circuit"); - stamp_schrabidium_flat = new ItemStamp(1024).setUnlocalizedName("stamp_schrabidium_flat").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_schrabidium_flat"); - stamp_schrabidium_plate = new ItemStamp(1024).setUnlocalizedName("stamp_schrabidium_plate").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_schrabidium_plate"); - stamp_schrabidium_wire = new ItemStamp(1024).setUnlocalizedName("stamp_schrabidium_wire").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_schrabidium_wire"); - stamp_schrabidium_circuit = new ItemStamp(1024).setUnlocalizedName("stamp_schrabidium_circuit").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_schrabidium_circuit"); - stamp_357 = new ItemBlades(512).setUnlocalizedName("stamp_357").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_357"); - stamp_44 = new ItemBlades(512).setUnlocalizedName("stamp_44").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_44"); - stamp_9 = new ItemBlades(512).setUnlocalizedName("stamp_9").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_9"); - stamp_50 = new ItemBlades(512).setUnlocalizedName("stamp_50").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_50"); + stamp_stone_flat = new ItemStamp(10).setUnlocalizedName("stamp_stone_flat").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_stone_flat"); + stamp_stone_plate = new ItemStamp(10).setUnlocalizedName("stamp_stone_plate").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_stone_plate"); + stamp_stone_wire = new ItemStamp(10).setUnlocalizedName("stamp_stone_wire").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_stone_wire"); + stamp_stone_circuit = new ItemStamp(10).setUnlocalizedName("stamp_stone_circuit").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_stone_circuit"); + stamp_iron_flat = new ItemStamp(50).setUnlocalizedName("stamp_iron_flat").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_iron_flat"); + stamp_iron_plate = new ItemStamp(50).setUnlocalizedName("stamp_iron_plate").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_iron_plate"); + stamp_iron_wire = new ItemStamp(50).setUnlocalizedName("stamp_iron_wire").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_iron_wire"); + stamp_iron_circuit = new ItemStamp(50).setUnlocalizedName("stamp_iron_circuit").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_iron_circuit"); + stamp_steel_flat = new ItemStamp(100).setUnlocalizedName("stamp_steel_flat").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_steel_flat"); + stamp_steel_plate = new ItemStamp(100).setUnlocalizedName("stamp_steel_plate").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_steel_plate"); + stamp_steel_wire = new ItemStamp(100).setUnlocalizedName("stamp_steel_wire").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_steel_wire"); + stamp_steel_circuit = new ItemStamp(100).setUnlocalizedName("stamp_steel_circuit").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_steel_circuit"); + stamp_titanium_flat = new ItemStamp(150).setUnlocalizedName("stamp_titanium_flat").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_titanium_flat"); + stamp_titanium_plate = new ItemStamp(150).setUnlocalizedName("stamp_titanium_plate").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_titanium_plate"); + stamp_titanium_wire = new ItemStamp(150).setUnlocalizedName("stamp_titanium_wire").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_titanium_wire"); + stamp_titanium_circuit = new ItemStamp(150).setUnlocalizedName("stamp_titanium_circuit").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_titanium_circuit"); + stamp_obsidian_flat = new ItemStamp(170).setUnlocalizedName("stamp_obsidian_flat").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_obsidian_flat"); + stamp_obsidian_plate = new ItemStamp(170).setUnlocalizedName("stamp_obsidian_plate").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_obsidian_plate"); + stamp_obsidian_wire = new ItemStamp(170).setUnlocalizedName("stamp_obsidian_wire").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_obsidian_wire"); + stamp_obsidian_circuit = new ItemStamp(170).setUnlocalizedName("stamp_obsidian_circuit").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_obsidian_circuit"); + stamp_schrabidium_flat = new ItemStamp(3000).setUnlocalizedName("stamp_schrabidium_flat").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_schrabidium_flat"); + stamp_schrabidium_plate = new ItemStamp(3000).setUnlocalizedName("stamp_schrabidium_plate").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_schrabidium_plate"); + stamp_schrabidium_wire = new ItemStamp(3000).setUnlocalizedName("stamp_schrabidium_wire").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_schrabidium_wire"); + stamp_schrabidium_circuit = new ItemStamp(3000).setUnlocalizedName("stamp_schrabidium_circuit").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_schrabidium_circuit"); + stamp_357 = new ItemBlades(1000).setUnlocalizedName("stamp_357").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_357"); + stamp_44 = new ItemBlades(1000).setUnlocalizedName("stamp_44").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_44"); + stamp_9 = new ItemBlades(1000).setUnlocalizedName("stamp_9").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_9"); + stamp_50 = new ItemBlades(1000).setUnlocalizedName("stamp_50").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":stamp_50"); - blades_aluminium = new ItemBlades(10).setUnlocalizedName("blades_aluminium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_aluminium"); - blades_gold = new ItemBlades(25).setUnlocalizedName("blades_gold").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_gold"); - blades_iron = new ItemBlades(35).setUnlocalizedName("blades_iron").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_iron"); - blades_steel = new ItemBlades(50).setUnlocalizedName("blades_steel").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_steel"); - blades_titanium = new ItemBlades(65).setUnlocalizedName("blades_titanium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_titanium"); - blades_advanced_alloy = new ItemBlades(85).setUnlocalizedName("blades_advanced_alloy").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_advanced_alloy"); - blades_combine_steel = new ItemBlades(150).setUnlocalizedName("blades_combine_steel").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_combine_steel"); - blades_schrabidium = new ItemBlades(250).setUnlocalizedName("blades_schrabidium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_schrabidium"); + blades_aluminium = new ItemBlades(20).setUnlocalizedName("blades_aluminium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_aluminium"); + blades_gold = new ItemBlades(30).setUnlocalizedName("blades_gold").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_gold"); + blades_iron = new ItemBlades(100).setUnlocalizedName("blades_iron").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_iron"); + blades_steel = new ItemBlades(200).setUnlocalizedName("blades_steel").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_steel"); + blades_titanium = new ItemBlades(350).setUnlocalizedName("blades_titanium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_titanium"); + blades_advanced_alloy = new ItemBlades(700).setUnlocalizedName("blades_advanced_alloy").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_advanced_alloy"); + blades_combine_steel = new ItemBlades(1500).setUnlocalizedName("blades_combine_steel").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_combine_steel"); + blades_schrabidium = new ItemBlades(2000).setUnlocalizedName("blades_schrabidium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_schrabidium"); blades_desh = new ItemBlades(0).setUnlocalizedName("blades_desh").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":blades_desh"); part_lithium = new Item().setUnlocalizedName("part_lithium").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":part_lithium"); @@ -4133,6 +4141,23 @@ public class ModItems { fau_plate = new ArmorDigamma(aMatFau, 7, 1, RefStrings.MODID + ":textures/armor/starmetal_1.png", 10000000, 10000, 2500, 0).cloneStats((ArmorFSB) fau_helmet).setUnlocalizedName("fau_plate").setTextureName(RefStrings.MODID + ":fau_plate"); fau_legs = new ArmorDigamma(aMatFau, 7, 2, RefStrings.MODID + ":textures/armor/starmetal_2.png", 10000000, 10000, 2500, 0).cloneStats((ArmorFSB) fau_helmet).setUnlocalizedName("fau_legs").setTextureName(RefStrings.MODID + ":fau_legs"); fau_boots = new ArmorDigamma(aMatFau, 7, 3, RefStrings.MODID + ":textures/armor/starmetal_1.png", 10000000, 10000, 2500, 0).cloneStats((ArmorFSB) fau_helmet).setUnlocalizedName("fau_boots").setTextureName(RefStrings.MODID + ":fau_boots"); + + ArmorMaterial aMatDNS = EnumHelper.addArmorMaterial("HBM_DNT_NANO", 150, new int[] { 3, 8, 6, 3 }, 100); + aMatDNS.customCraftingMaterial = ModItems.plate_armor_dnt; + dns_helmet = new ArmorDNT(aMatDNS, 7, 0, RefStrings.MODID + ":textures/armor/starmetal_1.png", 1000000000, 1000000, 100000, 115) + .addEffect(new PotionEffect(Potion.damageBoost.id, 20, 9)) + .addEffect(new PotionEffect(Potion.digSpeed.id, 20, 7)) + .setHasGeigerSound(true) + .enableVATS(true) + .enableThermalSight(true) + .setHasHardLanding(true) + .setStep("hbm:step.metal") + .setJump("hbm:step.iron_jump") + .setFall("hbm:step.iron_land") + .setFireproof(true).setUnlocalizedName("dns_helmet").setTextureName(RefStrings.MODID + ":dns_helmet"); + dns_plate = new ArmorDNT(aMatDNS, 7, 1, RefStrings.MODID + ":textures/armor/starmetal_1.png", 1000000000, 1000000, 100000, 115).cloneStats((ArmorFSB) dns_helmet).setUnlocalizedName("dns_plate").setTextureName(RefStrings.MODID + ":dns_plate"); + dns_legs = new ArmorDNT(aMatDNS, 7, 2, RefStrings.MODID + ":textures/armor/starmetal_2.png", 1000000000, 1000000, 100000, 115).cloneStats((ArmorFSB) dns_helmet).setUnlocalizedName("dns_legs").setTextureName(RefStrings.MODID + ":dns_legs"); + dns_boots = new ArmorDNT(aMatDNS, 7, 3, RefStrings.MODID + ":textures/armor/starmetal_1.png", 1000000000, 1000000, 100000, 115).cloneStats((ArmorFSB) dns_helmet).setUnlocalizedName("dns_boots").setTextureName(RefStrings.MODID + ":dns_boots"); jackt = new ModArmor(MainRegistry.aMatSteel, 7, 1).setUnlocalizedName("jackt").setTextureName(RefStrings.MODID + ":jackt"); jackt2 = new ModArmor(MainRegistry.aMatSteel, 7, 1).setUnlocalizedName("jackt2").setTextureName(RefStrings.MODID + ":jackt2"); @@ -4433,7 +4458,7 @@ public class ModItems { hazmat_paa_legs = new ArmorHazmat(MainRegistry.aMatPaa, 9, 2).setUnlocalizedName("hazmat_paa_legs").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":hazmat_paa_legs"); hazmat_paa_boots = new ArmorHazmat(MainRegistry.aMatPaa, 9, 3).setUnlocalizedName("hazmat_paa_boots").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":hazmat_paa_boots"); - ArmorMaterial aMatLiquidator = EnumHelper.addArmorMaterial("HBM_LIQUIDATOR", 10, new int[] { 3, 8, 6, 3 }, 10); + ArmorMaterial aMatLiquidator = EnumHelper.addArmorMaterial("HBM_LIQUIDATOR", 750, new int[] { 3, 8, 6, 3 }, 10); aMatLiquidator.customCraftingMaterial = ModItems.plate_lead; liquidator_helmet = new ArmorLiquidator(aMatLiquidator, 9, 0, RefStrings.MODID + ":textures/armor/liquidator_helmet.png") .setThreshold(1.0F) @@ -4784,6 +4809,7 @@ public class ModItems { GameRegistry.registerItem(bottle_mercury, bottle_mercury.getUnlocalizedName()); GameRegistry.registerItem(coke, coke.getUnlocalizedName()); GameRegistry.registerItem(lignite, lignite.getUnlocalizedName()); + GameRegistry.registerItem(coal_infernal, coal_infernal.getUnlocalizedName()); GameRegistry.registerItem(briquette_lignite, briquette_lignite.getUnlocalizedName()); GameRegistry.registerItem(sulfur, sulfur.getUnlocalizedName()); GameRegistry.registerItem(niter, niter.getUnlocalizedName()); @@ -4974,6 +5000,7 @@ public class ModItems { GameRegistry.registerItem(plate_armor_hev, plate_armor_hev.getUnlocalizedName()); GameRegistry.registerItem(plate_armor_lunar, plate_armor_lunar.getUnlocalizedName()); GameRegistry.registerItem(plate_armor_fau, plate_armor_fau.getUnlocalizedName()); + GameRegistry.registerItem(plate_armor_dnt, plate_armor_dnt.getUnlocalizedName()); //Boards GameRegistry.registerItem(board_copper, board_copper.getUnlocalizedName()); @@ -6625,6 +6652,10 @@ public class ModItems { GameRegistry.registerItem(fau_plate, fau_plate.getUnlocalizedName()); GameRegistry.registerItem(fau_legs, fau_legs.getUnlocalizedName()); GameRegistry.registerItem(fau_boots, fau_boots.getUnlocalizedName()); + GameRegistry.registerItem(dns_helmet, dns_helmet.getUnlocalizedName()); + GameRegistry.registerItem(dns_plate, dns_plate.getUnlocalizedName()); + GameRegistry.registerItem(dns_legs, dns_legs.getUnlocalizedName()); + GameRegistry.registerItem(dns_boots, dns_boots.getUnlocalizedName()); //Nobody will ever read this anyway, so it shouldn't matter. GameRegistry.registerItem(chainsaw, chainsaw.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/armor/ArmorDNT.java b/src/main/java/com/hbm/items/armor/ArmorDNT.java new file mode 100644 index 000000000..330226486 --- /dev/null +++ b/src/main/java/com/hbm/items/armor/ArmorDNT.java @@ -0,0 +1,204 @@ +package com.hbm.items.armor; + +import java.util.List; +import java.util.UUID; + +import com.google.common.collect.Multimap; +import com.hbm.extprop.HbmPlayerProps; +import com.hbm.handler.HbmKeybinds.EnumKeybind; +import com.hbm.items.ModItems; +import com.hbm.lib.Library; +import com.hbm.main.MainRegistry; +import com.hbm.packet.AuxParticlePacketNT; +import com.hbm.packet.KeybindPacket; +import com.hbm.packet.PacketDispatcher; +import com.hbm.render.model.ModelArmorDNT; +import com.hbm.util.I18nUtil; + +import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.client.model.ModelBiped; +import net.minecraft.client.resources.I18n; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.entity.ai.attributes.AttributeModifier; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.potion.Potion; +import net.minecraft.potion.PotionEffect; +import net.minecraft.util.EnumChatFormatting; +import net.minecraft.world.World; +import net.minecraftforge.event.entity.living.LivingAttackEvent; +import net.minecraftforge.event.entity.living.LivingHurtEvent; + +public class ArmorDNT extends ArmorFSBPowered { + + public ArmorDNT(ArmorMaterial material, int layer, int slot, String texture, long maxPower, long chargeRate, long consumption, long drain) { + super(material, layer, slot, texture, maxPower, chargeRate, consumption, drain); + } + + @SideOnly(Side.CLIENT) + ModelArmorDNT[] models; + + @Override + @SideOnly(Side.CLIENT) + public ModelBiped getArmorModel(EntityLivingBase entityLiving, ItemStack itemStack, int armorSlot) { + + if(models == null) { + models = new ModelArmorDNT[4]; + + for(int i = 0; i < 4; i++) + models[i] = new ModelArmorDNT(i); + } + + return models[armorSlot]; + } + + private static final UUID speed = UUID.fromString("6ab858ba-d712-485c-bae9-e5e765fc555a"); + + @Override + public void onArmorTick(World world, EntityPlayer player, ItemStack stack) { + + super.onArmorTick(world, player, stack); + + if(this != ModItems.dns_plate) + return; + + HbmPlayerProps props = HbmPlayerProps.getData(player); + + /// SPEED /// + Multimap multimap = super.getItemAttributeModifiers(); + multimap.put(SharedMonsterAttributes.movementSpeed.getAttributeUnlocalizedName(), new AttributeModifier(speed, "DNT SPEED", 0.25, 0)); + player.getAttributeMap().removeAttributeModifiers(multimap); + + if(player.isSprinting()) { + player.getAttributeMap().applyAttributeModifiers(multimap); + } + + if(world.isRemote) { + + if(player == MainRegistry.proxy.me()) { + + boolean last = props.getKeyPressed(EnumKeybind.JETPACK); + boolean current = MainRegistry.proxy.getIsKeyPressed(EnumKeybind.JETPACK); + + if(last != current) { + PacketDispatcher.wrapper.sendToServer(new KeybindPacket(EnumKeybind.JETPACK, current)); + props.setKeyPressed(EnumKeybind.JETPACK, current); + } + } + + } else { + + /// JET /// + if(this.hasFSBArmor(player) && props.getKeyPressed(EnumKeybind.JETPACK) || (!player.onGround && !player.isSneaking())) { + + NBTTagCompound data = new NBTTagCompound(); + data.setString("type", "jetpack_dns"); + data.setInteger("player", player.getEntityId()); + PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(data, player.posX, player.posY, player.posZ), new TargetPoint(world.provider.dimensionId, player.posX, player.posY, player.posZ, 100)); + } + } + + if(this.hasFSBArmor(player)) { + + if(props.getKeyPressed(EnumKeybind.JETPACK)) { + + if(player.motionY < 0.6D) + player.motionY += 0.2D; + + player.fallDistance = 0; + + world.playSoundEffect(player.posX, player.posY, player.posZ, "hbm:weapon.immolatorShoot", 0.125F, 1.5F); + + } else if(!player.isSneaking() && !player.onGround) { + player.fallDistance = 0; + + if(player.motionY < -1) + player.motionY += 0.4D; + else if(player.motionY < -0.1) + player.motionY += 0.2D; + else if(player.motionY < 0) + player.motionY = 0; + + player.motionX *= 1.05D; + player.motionZ *= 1.05D; + + world.playSoundEffect(player.posX, player.posY, player.posZ, "hbm:weapon.immolatorShoot", 0.125F, 1.5F); + } + + if(player.isSneaking() && !player.onGround) { + player.motionY -= 0.1D; + } + } + } + + @Override + public void handleAttack(LivingAttackEvent event) { + + EntityLivingBase e = event.entityLiving; + + if(e instanceof EntityPlayer) { + EntityPlayer player = (EntityPlayer) e; + + if(ArmorFSB.hasFSBArmor(player)) { + + if(event.source.isExplosion()) { + return; + } + + e.worldObj.playSoundAtEntity(e, "random.break", 5F, 1.0F + e.getRNG().nextFloat() * 0.5F); + event.setCanceled(true); + } + } + } + + @Override + public void handleHurt(LivingHurtEvent event) { + + EntityLivingBase e = event.entityLiving; + + if(e instanceof EntityPlayer) { + EntityPlayer player = (EntityPlayer) e; + + if(ArmorFSB.hasFSBArmor(player)) { + + if(event.source.isExplosion()) { + event.ammount *= 0.001F; + return; + } + + event.ammount = 0; + } + } + } + + @Override + @SideOnly(Side.CLIENT) + public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) { + + list.add("Charge: " + Library.getShortNumber(getCharge(stack)) + " / " + Library.getShortNumber(maxPower)); + + list.add(EnumChatFormatting.GOLD + I18nUtil.resolveKey("armor.fullSetBonus")); + + if(!effects.isEmpty()) { + + for(PotionEffect effect : effects) { + list.add(EnumChatFormatting.AQUA + " " + I18n.format(Potion.potionTypes[effect.getPotionID()].getName())); + } + } + + list.add(EnumChatFormatting.YELLOW + " " + I18nUtil.resolveKey("armor.explosionImmune")); + list.add(EnumChatFormatting.YELLOW + " " + I18nUtil.resolveKey("armor.cap", 5)); + list.add(EnumChatFormatting.YELLOW + " " + I18nUtil.resolveKey("armor.modifier", 0.001F)); + list.add(EnumChatFormatting.RED + " " + I18nUtil.resolveKey("armor.vats")); + list.add(EnumChatFormatting.RED + " " + I18nUtil.resolveKey("armor.thermal")); + list.add(EnumChatFormatting.RED + " " + I18nUtil.resolveKey("armor.hardLanding")); + list.add(EnumChatFormatting.DARK_RED + " " + I18nUtil.resolveKey("armor.ignoreLimit")); + list.add(EnumChatFormatting.AQUA + " " + I18nUtil.resolveKey("armor.rocketBoots")); + list.add(EnumChatFormatting.AQUA + " " + I18nUtil.resolveKey("armor.fastFall")); + list.add(EnumChatFormatting.AQUA + " " + I18nUtil.resolveKey("armor.sprintBoost")); + } +} diff --git a/src/main/java/com/hbm/items/armor/ArmorFSB.java b/src/main/java/com/hbm/items/armor/ArmorFSB.java index 166ecc014..af0453149 100644 --- a/src/main/java/com/hbm/items/armor/ArmorFSB.java +++ b/src/main/java/com/hbm/items/armor/ArmorFSB.java @@ -67,99 +67,99 @@ public class ArmorFSB extends ItemArmor { super(material, layer, slot); this.texture = texture; } - + public ArmorFSB addEffect(PotionEffect effect) { effects.add(effect); return this; } - + public ArmorFSB addResistance(String damage, float mod) { resistance.put(damage, mod); return this; } - + public ArmorFSB setCap(float cap) { this.damageCap = cap; return this; } - + public ArmorFSB setMod(float mod) { this.damageMod = mod; return this; } - + public ArmorFSB setThreshold(float threshold) { this.damageThreshold = threshold; return this; } - + public ArmorFSB setBlastProtection(float blastProtection) { this.blastProtection = blastProtection; return this; } - + public ArmorFSB setFireproof(boolean fire) { this.fireproof = fire; return this; } - + public ArmorFSB setNoHelmet(boolean noHelmet) { this.noHelmet = noHelmet; return this; } - + public ArmorFSB enableVATS(boolean vats) { this.vats = vats; return this; } - + public ArmorFSB enableThermalSight(boolean thermal) { this.thermal = thermal; return this; } - + public ArmorFSB setHasGeigerSound(boolean geiger) { this.geigerSound = geiger; return this; } - + public ArmorFSB setHasCustomGeiger(boolean geiger) { this.customGeiger = geiger; return this; } - + public ArmorFSB setHasHardLanding(boolean hardLanding) { this.hardLanding = hardLanding; return this; } - + public ArmorFSB setGravity(double gravity) { this.gravity = gravity; return this; } - + public ArmorFSB setStep(String step) { this.step = step; return this; } - + public ArmorFSB setJump(String jump) { this.jump = jump; return this; } - + public ArmorFSB setFall(String fall) { this.fall = fall; return this; } - + public ArmorFSB setOverlay(String path) { this.overlay = new ResourceLocation(path); return this; } - + public ArmorFSB cloneStats(ArmorFSB original) { - + //lists aren't being modified after instantiation, so there's no need to dereference this.effects = original.effects; this.resistance = original.resistance; @@ -181,204 +181,203 @@ public class ArmorFSB extends ItemArmor { //overlay doesn't need to be copied because it's helmet exclusive return this; } - + @Override public String getArmorTexture(ItemStack stack, Entity entity, int slot, String layer) { return texture; } - - @SideOnly(Side.CLIENT) - public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) { - - list.add(EnumChatFormatting.GOLD + I18nUtil.resolveKey("armor.fullSetBonus")); - - if(!effects.isEmpty()) { - - for(PotionEffect effect : effects) { - list.add(EnumChatFormatting.AQUA + " " + I18n.format(Potion.potionTypes[effect.getPotionID()].getName())); - } - } - - if(!resistance.isEmpty()) { - for(Entry struct : resistance.entrySet()) { - - if(struct.getValue() != 0) - list.add(EnumChatFormatting.YELLOW + " " + I18nUtil.resolveKey("armor.damageModifier", struct.getValue(), I18n.format(struct.getKey()))); - else - list.add(EnumChatFormatting.RED + " " + I18nUtil.resolveKey("armor.nullDamage", I18n.format(struct.getKey()))); - } - } - - if(blastProtection != -1) { + @SideOnly(Side.CLIENT) + public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) { + + list.add(EnumChatFormatting.GOLD + I18nUtil.resolveKey("armor.fullSetBonus")); + + if(!effects.isEmpty()) { + + for(PotionEffect effect : effects) { + list.add(EnumChatFormatting.AQUA + " " + I18n.format(Potion.potionTypes[effect.getPotionID()].getName())); + } + } + + if(!resistance.isEmpty()) { + + for(Entry struct : resistance.entrySet()) { + + if(struct.getValue() != 0) + list.add(EnumChatFormatting.YELLOW + " " + I18nUtil.resolveKey("armor.damageModifier", struct.getValue(), I18n.format(struct.getKey()))); + else + list.add(EnumChatFormatting.RED + " " + I18nUtil.resolveKey("armor.nullDamage", I18n.format(struct.getKey()))); + } + } + + if(blastProtection != -1) { + + list.add(EnumChatFormatting.YELLOW + " " + I18nUtil.resolveKey("armor.blastProtection", blastProtection)); + } + + if(damageCap != -1) { + list.add(EnumChatFormatting.YELLOW + " " + I18nUtil.resolveKey("armor.cap", damageCap)); + } + + if(damageMod != -1) { + list.add(EnumChatFormatting.YELLOW + " " + I18nUtil.resolveKey("armor.modifier", damageMod)); + } + + if(damageThreshold > 0) { + list.add(EnumChatFormatting.YELLOW + " " + I18nUtil.resolveKey("armor.threshold", damageThreshold)); + } + + if(fireproof) { + list.add(EnumChatFormatting.RED + " " + I18nUtil.resolveKey("armor.fireproof")); + } + + if(geigerSound) { + list.add(EnumChatFormatting.GOLD + " " + I18nUtil.resolveKey("armor.geigerSound")); + } + + if(customGeiger) { + list.add(EnumChatFormatting.GOLD + " " + I18nUtil.resolveKey("armor.geigerHUD")); + } + + if(vats) { + list.add(EnumChatFormatting.RED + " " + I18nUtil.resolveKey("armor.vats")); + } + + if(thermal) { + list.add(EnumChatFormatting.RED + " " + I18nUtil.resolveKey("armor.thermal")); + } + + if(hardLanding) { + list.add(EnumChatFormatting.RED + " " + I18nUtil.resolveKey("armor.hardLanding")); + } + + if(gravity != 0) { + list.add(EnumChatFormatting.BLUE + " " + I18nUtil.resolveKey("armor.gravity", gravity)); + } + } + + public static boolean hasFSBArmor(EntityPlayer player) { - list.add(EnumChatFormatting.YELLOW + " " + I18nUtil.resolveKey("armor.blastProtection", blastProtection)); - } - - if(damageCap != -1) { - list.add(EnumChatFormatting.YELLOW + " " + I18nUtil.resolveKey("armor.cap", damageCap)); - } - - if(damageMod != -1) { - list.add(EnumChatFormatting.YELLOW + " " + I18nUtil.resolveKey("armor.modifier", damageMod)); - } - - if(damageThreshold > 0) { - list.add(EnumChatFormatting.YELLOW + " " + I18nUtil.resolveKey("armor.threshold", damageThreshold)); - } - - if(fireproof) { - list.add(EnumChatFormatting.RED + " " + I18nUtil.resolveKey("armor.fireproof")); - } - - if(geigerSound) { - list.add(EnumChatFormatting.GOLD + " " + I18nUtil.resolveKey("armor.geigerSound")); - } - - if(customGeiger) { - list.add(EnumChatFormatting.GOLD + " " + I18nUtil.resolveKey("armor.geigerHUD")); - } - - if(vats) { - list.add(EnumChatFormatting.RED + " " + I18nUtil.resolveKey("armor.vats")); - } - - if(thermal) { - list.add(EnumChatFormatting.RED + " " + I18nUtil.resolveKey("armor.thermal")); - } - - if(hardLanding) { - list.add(EnumChatFormatting.RED + " " + I18nUtil.resolveKey("armor.hardLanding")); - } - - if(gravity != 0) { - list.add(EnumChatFormatting.BLUE + " " + I18nUtil.resolveKey("armor.gravity", gravity)); - } - } - - public static boolean hasFSBArmor(EntityPlayer player) { - ItemStack plate = player.inventory.armorInventory[2]; - + if(plate != null && plate.getItem() instanceof ArmorFSB) { - - ArmorFSB chestplate = (ArmorFSB)plate.getItem(); + + ArmorFSB chestplate = (ArmorFSB) plate.getItem(); boolean noHelmet = chestplate.noHelmet; - + for(int i = 0; i < (noHelmet ? 3 : 4); i++) { - + ItemStack armor = player.inventory.armorInventory[i]; - + if(armor == null || !(armor.getItem() instanceof ArmorFSB)) return false; - - if(((ArmorFSB)armor.getItem()).getArmorMaterial() != chestplate.getArmorMaterial()) + + if(((ArmorFSB) armor.getItem()).getArmorMaterial() != chestplate.getArmorMaterial()) return false; - - if(!((ArmorFSB)armor.getItem()).isArmorEnabled(armor)) + + if(!((ArmorFSB) armor.getItem()).isArmorEnabled(armor)) return false; } - + return true; } - + return false; - } - - public static boolean hasFSBArmorIgnoreCharge(EntityPlayer player) { - + } + + public static boolean hasFSBArmorIgnoreCharge(EntityPlayer player) { + ItemStack plate = player.inventory.armorInventory[2]; - + if(plate != null && plate.getItem() instanceof ArmorFSB) { - - ArmorFSB chestplate = (ArmorFSB)plate.getItem(); + + ArmorFSB chestplate = (ArmorFSB) plate.getItem(); boolean noHelmet = chestplate.noHelmet; - + for(int i = 0; i < (noHelmet ? 3 : 4); i++) { - + ItemStack armor = player.inventory.armorInventory[i]; - + if(armor == null || !(armor.getItem() instanceof ArmorFSB)) return false; - - if(((ArmorFSB)armor.getItem()).getArmorMaterial() != chestplate.getArmorMaterial()) + + if(((ArmorFSB) armor.getItem()).getArmorMaterial() != chestplate.getArmorMaterial()) return false; } - + return true; } - - return false; - } - public static void handleAttack(LivingAttackEvent event) { - + return false; + } + + public void handleAttack(LivingAttackEvent event) { + EntityLivingBase e = event.entityLiving; - + if(e instanceof EntityPlayer) { - EntityPlayer player = (EntityPlayer)e; - + EntityPlayer player = (EntityPlayer) e; + if(ArmorFSB.hasFSBArmor(player)) { - + ItemStack plate = player.inventory.armorInventory[2]; - - ArmorFSB chestplate = (ArmorFSB)plate.getItem(); - + + ArmorFSB chestplate = (ArmorFSB) plate.getItem(); + if(chestplate.damageThreshold >= event.ammount && !event.source.isUnblockable()) { event.setCanceled(true); } - + if(chestplate.fireproof && event.source.isFireDamage()) { player.extinguish(); event.setCanceled(true); } - - if(chestplate.resistance.get(event.source.getDamageType()) != null && - chestplate.resistance.get(event.source.getDamageType()) <= 0) { + + if(chestplate.resistance.get(event.source.getDamageType()) != null && chestplate.resistance.get(event.source.getDamageType()) <= 0) { event.setCanceled(true); } } } - } + } + + public void handleHurt(LivingHurtEvent event) { - public static void handleHurt(LivingHurtEvent event) { - EntityLivingBase e = event.entityLiving; - + if(e instanceof EntityPlayer) { - EntityPlayer player = (EntityPlayer)e; - + EntityPlayer player = (EntityPlayer) e; + if(ArmorFSB.hasFSBArmor(player)) { - - ArmorFSB chestplate = (ArmorFSB)player.inventory.armorInventory[2].getItem(); - + + ArmorFSB chestplate = (ArmorFSB) player.inventory.armorInventory[2].getItem(); + if(event.ammount < 100) { - + if(!event.source.isUnblockable()) event.ammount -= chestplate.damageThreshold; - + if(chestplate.damageMod != -1) { event.ammount *= chestplate.damageMod; } - + if(chestplate.resistance.get(event.source.getDamageType()) != null) { event.ammount *= chestplate.resistance.get(event.source.getDamageType()); } - + if(chestplate.blastProtection != -1 && event.source.isExplosion()) { event.ammount *= chestplate.blastProtection; } - + if(chestplate.damageCap != -1) { event.ammount = Math.min(event.ammount, chestplate.damageCap); } } } } - } + } + + public void handleTick(TickEvent.PlayerTickEvent event) { - public static void handleTick(TickEvent.PlayerTickEvent event) { - EntityPlayer player = event.player; if(ArmorFSB.hasFSBArmor(player)) { @@ -393,36 +392,37 @@ public class ArmorFSB extends ItemArmor { player.addPotionEffect(new PotionEffect(i.getPotionID(), i.getDuration(), i.getAmplifier(), i.getIsAmbient())); } } - + if(!player.capabilities.isFlying && !player.isInWater()) player.motionY -= chestplate.gravity; - + if(chestplate.step != null && player.worldObj.isRemote && player.onGround) { try { Field nextStepDistance = ReflectionHelper.findField(Entity.class, "nextStepDistance", "field_70150_b"); Field distanceWalkedOnStepModified = ReflectionHelper.findField(Entity.class, "distanceWalkedOnStepModified", "field_82151_R"); - + if(player.getEntityData().getFloat("hfr_nextStepDistance") == 0) { player.getEntityData().setFloat("hfr_nextStepDistance", nextStepDistance.getFloat(player)); } - - int px = MathHelper.floor_double(player.posX); - int py = MathHelper.floor_double(player.posY - 0.2D - (double)player.yOffset); - int pz = MathHelper.floor_double(player.posZ); - Block block = player.worldObj.getBlock(px, py, pz); - + + int px = MathHelper.floor_double(player.posX); + int py = MathHelper.floor_double(player.posY - 0.2D - (double) player.yOffset); + int pz = MathHelper.floor_double(player.posZ); + Block block = player.worldObj.getBlock(px, py, pz); + if(block.getMaterial() != Material.air && player.getEntityData().getFloat("hfr_nextStepDistance") <= distanceWalkedOnStepModified.getFloat(player)) player.playSound(chestplate.step, 1.0F, 1.0F); - + player.getEntityData().setFloat("hfr_nextStepDistance", nextStepDistance.getFloat(player)); - - } catch (Exception x) { } + + } catch(Exception x) { + } } } - } - - public static void handleJump(EntityPlayer player) { + } + + public void handleJump(EntityPlayer player) { if(ArmorFSB.hasFSBArmor(player)) { @@ -432,34 +432,35 @@ public class ArmorFSB extends ItemArmor { player.playSound(chestplate.jump, 1.0F, 1.0F); } } - - public static void handleFall(EntityPlayer player) { + + public void handleFall(EntityPlayer player) { if(ArmorFSB.hasFSBArmor(player)) { ArmorFSB chestplate = (ArmorFSB) player.inventory.armorInventory[2].getItem(); - + if(chestplate.hardLanding && player.fallDistance > 10) { - //player.playSound(Block.soundTypeAnvil.func_150496_b(), 2.0F, 0.5F); - + // player.playSound(Block.soundTypeAnvil.func_150496_b(), 2.0F, + // 0.5F); + List entities = player.worldObj.getEntitiesWithinAABBExcludingEntity(player, player.boundingBox.expand(3, 0, 3)); - + for(Entity e : entities) { - + Vec3 vec = Vec3.createVectorHelper(player.posX - e.posX, 0, player.posZ - e.posZ); - + if(vec.lengthVector() < 3) { - + double intensity = 3 - vec.lengthVector(); e.motionX += vec.xCoord * intensity * -2; e.motionY += 0.1D * intensity; e.motionZ += vec.zCoord * intensity * -2; - + e.attackEntityFrom(DamageSource.causePlayerDamage(player).setDamageBypassesArmor(), (float) (intensity * 10)); } } - //return; + // return; } if(chestplate.fall != null) @@ -469,17 +470,17 @@ public class ArmorFSB extends ItemArmor { @Override public void onArmorTick(World world, EntityPlayer entity, ItemStack stack) { - + if(this.armorType != 1) return; - + if(!this.hasFSBArmor(entity) || !this.geigerSound) return; - + if(world.getTotalWorldTime() % 5 == 0) { - - int x = check(world, (int)entity.posX, (int)entity.posY, (int)entity.posZ); - + + int x = check(world, (int) entity.posX, (int) entity.posY, (int) entity.posZ); + if(x > 0) { List list = new ArrayList(); @@ -499,57 +500,58 @@ public class ArmorFSB extends ItemArmor { list.add(5); if(x > 25) list.add(6); - + int r = list.get(world.rand.nextInt(list.size())); - + if(r > 0) world.playSoundAtEntity(entity, "hbm:item.geiger" + r, 1.0F, 1.0F); } else if(world.rand.nextInt(50) == 0) { - world.playSoundAtEntity(entity, "hbm:item.geiger"+ (1 + world.rand.nextInt(1)), 1.0F, 1.0F); + world.playSoundAtEntity(entity, "hbm:item.geiger" + (1 + world.rand.nextInt(1)), 1.0F, 1.0F); } } } public static int check(World world, int x, int y, int z) { - + RadiationSavedData data = RadiationSavedData.getData(world); - + Chunk chunk = world.getChunkFromBlockCoords(x, z); - int rads = (int)Math.ceil(data.getRadNumFromCoord(chunk.xPosition, chunk.zPosition)); - + int rads = (int) Math.ceil(data.getRadNumFromCoord(chunk.xPosition, chunk.zPosition)); + return rads; } - //For crazier stuff not possible without hooking the event - @SideOnly(Side.CLIENT) - public void handleOverlay(RenderGameOverlayEvent.Pre event, EntityPlayer player) { } - + // For crazier stuff not possible without hooking the event + @SideOnly(Side.CLIENT) + public void handleOverlay(RenderGameOverlayEvent.Pre event, EntityPlayer player) { + } + public boolean isArmorEnabled(ItemStack stack) { return true; } - - @SideOnly(Side.CLIENT) - public void renderHelmetOverlay(ItemStack stack, EntityPlayer player, ScaledResolution resolution, float partialTicks, boolean hasScreen, int mouseX, int mouseY){ - - if(overlay == null) - return; - GL11.glDisable(GL11.GL_DEPTH_TEST); - GL11.glDepthMask(false); - OpenGlHelper.glBlendFunc(770, 771, 1, 0); - GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); - GL11.glDisable(GL11.GL_ALPHA_TEST); - Minecraft.getMinecraft().getTextureManager().bindTexture(overlay); - Tessellator tessellator = Tessellator.instance; - tessellator.startDrawingQuads(); - tessellator.addVertexWithUV(0.0D, (double)resolution.getScaledHeight(), -90.0D, 0.0D, 1.0D); - tessellator.addVertexWithUV((double)resolution.getScaledWidth(), (double)resolution.getScaledHeight(), -90.0D, 1.0D, 1.0D); - tessellator.addVertexWithUV((double)resolution.getScaledWidth(), 0.0D, -90.0D, 1.0D, 0.0D); - tessellator.addVertexWithUV(0.0D, 0.0D, -90.0D, 0.0D, 0.0D); - tessellator.draw(); - GL11.glDepthMask(true); - GL11.glEnable(GL11.GL_DEPTH_TEST); - GL11.glEnable(GL11.GL_ALPHA_TEST); - GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); - } + @SideOnly(Side.CLIENT) + public void renderHelmetOverlay(ItemStack stack, EntityPlayer player, ScaledResolution resolution, float partialTicks, boolean hasScreen, int mouseX, int mouseY) { + + if(overlay == null) + return; + + GL11.glDisable(GL11.GL_DEPTH_TEST); + GL11.glDepthMask(false); + OpenGlHelper.glBlendFunc(770, 771, 1, 0); + GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); + GL11.glDisable(GL11.GL_ALPHA_TEST); + Minecraft.getMinecraft().getTextureManager().bindTexture(overlay); + Tessellator tessellator = Tessellator.instance; + tessellator.startDrawingQuads(); + tessellator.addVertexWithUV(0.0D, (double) resolution.getScaledHeight(), -90.0D, 0.0D, 1.0D); + tessellator.addVertexWithUV((double) resolution.getScaledWidth(), (double) resolution.getScaledHeight(), -90.0D, 1.0D, 1.0D); + tessellator.addVertexWithUV((double) resolution.getScaledWidth(), 0.0D, -90.0D, 1.0D, 0.0D); + tessellator.addVertexWithUV(0.0D, 0.0D, -90.0D, 0.0D, 0.0D); + tessellator.draw(); + GL11.glDepthMask(true); + GL11.glEnable(GL11.GL_DEPTH_TEST); + GL11.glEnable(GL11.GL_ALPHA_TEST); + GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); + } } diff --git a/src/main/java/com/hbm/items/armor/ArmorModel.java b/src/main/java/com/hbm/items/armor/ArmorModel.java index 084720b86..0531aa3d6 100644 --- a/src/main/java/com/hbm/items/armor/ArmorModel.java +++ b/src/main/java/com/hbm/items/armor/ArmorModel.java @@ -123,15 +123,7 @@ public class ArmorModel extends ItemArmor { return this.modelGas; } } - if (this == ModItems.gas_mask_mono) { - if (armorSlot == 0) { - if (this.modelGas == null) { - this.modelGas = new ModelGasMask(); - } - return this.modelGas; - } - } - if (this == ModItems.gas_mask_m65 || this == ModItems.hazmat_helmet_red || this == ModItems.hazmat_helmet_grey) { + if (this == ModItems.gas_mask_m65 || this == ModItems.hazmat_helmet_red || this == ModItems.hazmat_helmet_grey || this == ModItems.gas_mask_mono) { if (armorSlot == 0) { if (this.modelM65 == null) { this.modelM65 = new ModelM65(); @@ -208,7 +200,7 @@ public class ArmorModel extends ItemArmor { @SideOnly(Side.CLIENT) public void renderHelmetOverlay(ItemStack stack, EntityPlayer player, ScaledResolution resolution, float partialTicks, boolean hasScreen, int mouseX, int mouseY){ - if(this != ModItems.goggles && this != ModItems.gas_mask && this != ModItems.gas_mask_m65 && this != ModItems.gas_mask_mono && this != ModItems.hazmat_helmet_red && this != ModItems.hazmat_helmet_grey) + if(this != ModItems.goggles && this != ModItems.gas_mask && this != ModItems.gas_mask_m65 && this != ModItems.hazmat_helmet_red && this != ModItems.hazmat_helmet_grey) return; GL11.glDisable(GL11.GL_DEPTH_TEST); @@ -217,7 +209,7 @@ public class ArmorModel extends ItemArmor { GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); GL11.glDisable(GL11.GL_ALPHA_TEST); - if(this == ModItems.goggles || this == ModItems.gas_mask_m65 || this == ModItems.gas_mask_mono || this == ModItems.hazmat_helmet_red || this == ModItems.hazmat_helmet_grey) { + if(this == ModItems.goggles || this == ModItems.gas_mask_m65 || this == ModItems.hazmat_helmet_red || this == ModItems.hazmat_helmet_grey) { switch((int)((double)stack.getItemDamage() / (double)stack.getMaxDamage() * 6D)) { case 0: Minecraft.getMinecraft().getTextureManager().bindTexture(goggleBlur0); break; diff --git a/src/main/java/com/hbm/items/block/ItemBlockHazard.java b/src/main/java/com/hbm/items/block/ItemBlockHazard.java index 6f0c832c1..3bd491295 100644 --- a/src/main/java/com/hbm/items/block/ItemBlockHazard.java +++ b/src/main/java/com/hbm/items/block/ItemBlockHazard.java @@ -8,6 +8,7 @@ import com.hbm.modules.ItemHazardModule; import net.minecraft.block.Block; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemStack; @@ -40,4 +41,15 @@ public class ItemBlockHazard extends ItemBlock { if(this.module != null) this.module.addInformation(stack, player, list, bool); } + + @Override + public boolean onEntityItemUpdate(EntityItem item) { + + super.onEntityItemUpdate(item); + + if(this.module != null) + return this.module.onEntityItemUpdate(item); + + return false; + } } diff --git a/src/main/java/com/hbm/items/special/ItemHazard.java b/src/main/java/com/hbm/items/special/ItemHazard.java index 82e52eebf..e8e0ae87c 100644 --- a/src/main/java/com/hbm/items/special/ItemHazard.java +++ b/src/main/java/com/hbm/items/special/ItemHazard.java @@ -7,6 +7,7 @@ import com.hbm.modules.ItemHazardModule; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.world.World; @@ -88,6 +89,13 @@ public class ItemHazard extends ItemCustomLore implements IItemHazard { this.module.addInformation(stack, player, list, bool); } + @Override + public boolean onEntityItemUpdate(EntityItem item) { + + super.onEntityItemUpdate(item); + return this.module.onEntityItemUpdate(item); + } + /* * DEPRECATED CTORS */ diff --git a/src/main/java/com/hbm/items/special/ItemSyringe.java b/src/main/java/com/hbm/items/special/ItemSyringe.java index 237c8ad3e..a3782af95 100644 --- a/src/main/java/com/hbm/items/special/ItemSyringe.java +++ b/src/main/java/com/hbm/items/special/ItemSyringe.java @@ -5,6 +5,7 @@ import java.util.Random; import com.hbm.config.VersatileConfig; import com.hbm.handler.ArmorModHandler; +import com.hbm.handler.FluidTypeHandler.FluidType; import com.hbm.interfaces.IPartiallyFillable; import com.hbm.items.ModItems; import com.hbm.items.weapon.ItemGunBase; @@ -291,6 +292,10 @@ public class ItemSyringe extends Item { return stack; IPartiallyFillable fillable = (IPartiallyFillable) jetpack.getItem(); + + if(fillable.getType(jetpack) != FluidType.KEROSENE) + return stack; + int fill = Math.min(fillable.getFill(jetpack) + 1000, fillable.getMaxFill(jetpack)); fillable.setFill(jetpack, fill); diff --git a/src/main/java/com/hbm/lib/RefStrings.java b/src/main/java/com/hbm/lib/RefStrings.java index 1a60beb7a..83bb7e3e8 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 (3822)"; + public static final String VERSION = "1.0.27 BETA (3826)"; //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 b8b9245b2..6981c622d 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -1020,6 +1020,53 @@ public class ClientProxy extends ServerProxy { } } + if("jetpack_dns".equals(type)) { + + Entity ent = world.getEntityByID(data.getInteger("player")); + + if(ent instanceof EntityPlayer) { + + EntityPlayer p = (EntityPlayer)ent; + + Vec3 offset = Vec3.createVectorHelper(0.125, 0, 0); + float angle = (float) -Math.toRadians(p.rotationYawHead - (p.rotationYawHead - p.renderYawOffset)); + + offset.rotateAroundY(angle); + + double ix = p.posX; + double iy = p.posY - p.getYOffset() - 0.5D; + double iz = p.posZ; + double ox = offset.xCoord; + double oz = offset.zCoord; + + Vec3 pos = Vec3.createVectorHelper(ix, iy, iz); + Vec3 thrust = Vec3.createVectorHelper(0, -1, 0); + Vec3 target = pos.addVector(thrust.xCoord * 10, thrust.yCoord * 10, thrust.zCoord * 10); + MovingObjectPosition mop = player.worldObj.func_147447_a(pos, target, false, false, true); + + if(mop != null && mop.typeOfHit == MovingObjectType.BLOCK && mop.sideHit == 1) { + + Block b = world.getBlock(mop.blockX, mop.blockY, mop.blockZ); + int meta = world.getBlockMetadata(mop.blockX, mop.blockY, mop.blockZ); + + Vec3 delta = Vec3.createVectorHelper(ix - mop.hitVec.xCoord, iy - mop.hitVec.yCoord, iz - mop.hitVec.zCoord); + Vec3 vel = Vec3.createVectorHelper(0.75 - delta.lengthVector() * 0.075, 0, 0); + + for(int i = 0; i < (10 - delta.lengthVector()); i++) { + vel.rotateAroundY(world.rand.nextFloat() * (float)Math.PI * 2F); + Minecraft.getMinecraft().effectRenderer.addEffect(new EntityBlockDustFX(world, mop.hitVec.xCoord, mop.hitVec.yCoord + 0.1, mop.hitVec.zCoord, vel.xCoord, 0.1, vel.zCoord, b, meta)); + } + } + + EntityReddustFX dust1 = new EntityReddustFX(world, ix + ox, iy, iz + oz, 0.01F, 1.0F, 1.0F); + EntityReddustFX dust2 = new EntityReddustFX(world, ix - ox, iy, iz - oz, 0.01F, 1.0F, 1.0F); + dust1.setVelocity(p.motionX, p.motionY, p.motionZ); + dust2.setVelocity(p.motionX, p.motionY, p.motionZ); + Minecraft.getMinecraft().effectRenderer.addEffect(dust1); + Minecraft.getMinecraft().effectRenderer.addEffect(dust2); + } + } + if("muke".equals(type)) { ParticleMukeWave wave = new ParticleMukeWave(man, world, x, y, z); diff --git a/src/main/java/com/hbm/main/CraftingManager.java b/src/main/java/com/hbm/main/CraftingManager.java index 0147a44cc..229196397 100644 --- a/src/main/java/com/hbm/main/CraftingManager.java +++ b/src/main/java/com/hbm/main/CraftingManager.java @@ -463,6 +463,7 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.tank_waste, 1), new Object[] { "PTP", "PTP", "PTP", 'T', ModItems.tank_steel, 'P', "plateSteel" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gas_mask_filter, 1), new Object[] { "F", "I", "F", 'F', ModItems.filter_coal, 'I', "plateIron" })); + GameRegistry.addRecipe(new ItemStack(ModItems.gas_mask_filter_mono, 1), new Object[] { "ZZZ", "ZCZ", "ZZZ", 'Z', ModItems.nugget_zirconium, 'C', ModItems.catalyst_clay }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.jetpack_tank, 1), new Object[] { " S ", "BKB", " S ", 'S', "plateSteel", 'B', ModItems.bolt_tungsten, 'K', ModItems.canister_kerosene })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_kit_1, 4), new Object[] { "I ", "LB", "P ", 'I', ModItems.plate_polymer, 'L', ModItems.canister_canola, 'B', ModItems.bolt_tungsten, 'P', "plateIron" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_kit_2, 1), new Object[] { "III", "GLG", "PPP", 'I', ModItems.plate_polymer, 'L', ModItems.ducttape, 'G', ModItems.gun_kit_1, 'P', "plateIron" })); @@ -684,6 +685,7 @@ public class CraftingManager { GameRegistry.addRecipe(new ItemStack(ModItems.plate_armor_hev, 1), new Object[] { "NPN", "PIP", "NPN", 'N', ModItems.wire_tungsten, 'P', ModItems.plate_advanced_alloy, 'I', ModItems.plate_armor_titanium }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.plate_armor_lunar, 1), new Object[] { "NPN", "PIP", "NPN", 'N', ModItems.wire_magnetized_tungsten, 'P', "plateDenseLead", 'I', ModItems.ingot_starmetal })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.plate_armor_fau, 1), new Object[] { "MDM", "DYD", "MDM", 'M', ModItems.ingot_meteorite_forged, 'D', "ingotDesh", 'Y', ModItems.billet_yharonite })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.plate_armor_dnt, 1), new Object[] { "FDF", "DSD", "FDF", 'F', ModItems.plate_armor_fau, 'D', ModItems.plate_dineutronium, 'S', ModItems.particle_sparkticle })); GameRegistry.addRecipe(new ItemStack(ModItems.mech_key, 1), new Object[] { "MCM", "MKM", "MMM", 'M', ModItems.ingot_meteorite_forged, 'C', ModItems.coin_maskman, 'K', ModItems.key }); diff --git a/src/main/java/com/hbm/main/ModEventHandler.java b/src/main/java/com/hbm/main/ModEventHandler.java index 9398c3f19..8bf71e1c2 100644 --- a/src/main/java/com/hbm/main/ModEventHandler.java +++ b/src/main/java/com/hbm/main/ModEventHandler.java @@ -573,15 +573,18 @@ public class ModEventHandler event.setCanceled(true); } - ArmorFSB.handleAttack(event); + if(e instanceof EntityPlayer && ((EntityPlayer)e).inventory.armorInventory[2] != null && ((EntityPlayer)e).inventory.armorInventory[2].getItem() instanceof ArmorFSB) + ((ArmorFSB)((EntityPlayer)e).inventory.armorInventory[2].getItem()).handleAttack(event); } @SubscribeEvent public void onEntityDamaged(LivingHurtEvent event) { + EntityLivingBase e = event.entityLiving; + for(int i = 1; i < 5; i++) { - ItemStack armor = event.entityLiving.getEquipmentInSlot(i); + ItemStack armor = e.getEquipmentInSlot(i); if(armor != null && ArmorModHandler.hasMods(armor)) { @@ -594,27 +597,35 @@ public class ModEventHandler } } - ArmorFSB.handleHurt(event); + if(e instanceof EntityPlayer && ((EntityPlayer)e).inventory.armorInventory[2] != null && ((EntityPlayer)e).inventory.armorInventory[2].getItem() instanceof ArmorFSB) + ((ArmorFSB)((EntityPlayer)e).inventory.armorInventory[2].getItem()).handleHurt(event); } @SubscribeEvent public void onPlayerFall(PlayerFlyableFallEvent event) { - ArmorFSB.handleFall(event.entityPlayer); + EntityPlayer e = event.entityPlayer; + + if(e.inventory.armorInventory[2] != null && e.inventory.armorInventory[2].getItem() instanceof ArmorFSB) + ((ArmorFSB)e.inventory.armorInventory[2].getItem()).handleFall(e); } @SubscribeEvent public void onEntityJump(LivingJumpEvent event) { - if(event.entityLiving instanceof EntityPlayer) - ArmorFSB.handleJump((EntityPlayer) event.entityLiving); + EntityLivingBase e = event.entityLiving; + + if(e instanceof EntityPlayer && ((EntityPlayer)e).inventory.armorInventory[2] != null && ((EntityPlayer)e).inventory.armorInventory[2].getItem() instanceof ArmorFSB) + ((ArmorFSB)((EntityPlayer)e).inventory.armorInventory[2].getItem()).handleJump((EntityPlayer)e); } @SubscribeEvent public void onEntityFall(LivingFallEvent event) { - if(event.entityLiving instanceof EntityPlayer) - ArmorFSB.handleFall((EntityPlayer) event.entityLiving); + EntityLivingBase e = event.entityLiving; + + if(e instanceof EntityPlayer && ((EntityPlayer)e).inventory.armorInventory[2] != null && ((EntityPlayer)e).inventory.armorInventory[2].getItem() instanceof ArmorFSB) + ((ArmorFSB)((EntityPlayer)e).inventory.armorInventory[2].getItem()).handleFall((EntityPlayer)e); } @SubscribeEvent @@ -622,7 +633,8 @@ public class ModEventHandler EntityPlayer player = event.player; - ArmorFSB.handleTick(event); + if(player.inventory.armorInventory[2] != null && player.inventory.armorInventory[2].getItem() instanceof ArmorFSB) + ((ArmorFSB)player.inventory.armorInventory[2].getItem()).handleTick(event); if(player.ticksExisted == 100 || player.ticksExisted == 200) CraftingManager.crumple(); diff --git a/src/main/java/com/hbm/main/ModEventHandlerClient.java b/src/main/java/com/hbm/main/ModEventHandlerClient.java index f60c827d6..70359c4d9 100644 --- a/src/main/java/com/hbm/main/ModEventHandlerClient.java +++ b/src/main/java/com/hbm/main/ModEventHandlerClient.java @@ -8,9 +8,11 @@ import org.lwjgl.opengl.GL11; import com.hbm.entity.mob.EntityHunterChopper; import com.hbm.entity.projectile.EntityChopperMine; import com.hbm.extprop.HbmLivingProps; +import com.hbm.extprop.HbmPlayerProps; import com.hbm.handler.ArmorModHandler; import com.hbm.handler.HTTPHandler; import com.hbm.handler.HazmatRegistry; +import com.hbm.handler.HbmKeybinds.EnumKeybind; import com.hbm.interfaces.IHoldableWeapon; import com.hbm.interfaces.IItemHUD; import com.hbm.interfaces.Spaghetti; @@ -26,6 +28,7 @@ import com.hbm.lib.Library; import com.hbm.lib.RefStrings; import com.hbm.packet.AuxButtonPacket; import com.hbm.packet.GunButtonPacket; +import com.hbm.packet.KeybindPacket; import com.hbm.packet.PacketDispatcher; import com.hbm.render.anim.HbmAnimations; import com.hbm.render.anim.HbmAnimations.Animation; @@ -261,6 +264,24 @@ public class ModEventHandlerClient { } } + //just finish this somewhen i guess + /*@SubscribeEvent + public void keybindEvent(RenderPlayerEvent.Pre event) { + + HbmPlayerProps props = HbmPlayerProps.getData(Minecraft.getMinecraft().thePlayer); + + for(EnumKeybind key : EnumKeybind.values()) { + + boolean last = props.getKeyPressed(key); + boolean current = MainRegistry.proxy.getIsKeyPressed(key); + + if(last != current) { + PacketDispatcher.wrapper.sendToServer(new KeybindPacket(key, current)); + props.setKeyPressed(key, current); + } + } + }*/ + @SubscribeEvent public void onRenderArmorEvent(RenderPlayerEvent.SetArmorModel event) { diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index b9674305c..16bf23a01 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -530,6 +530,7 @@ public class ResourceManager { public static final IModelCustom armor_ajr = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/AJR.obj")); public static final IModelCustom armor_hat = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/hat.obj")); public static final IModelCustom armor_fau = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/fau.obj")); + public static final IModelCustom armor_dnt = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/dnt.obj")); public static final IModelCustom armor_mod_tesla = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/mod_tesla.obj")); ////Texture Items @@ -604,6 +605,11 @@ public class ResourceManager { public static final ResourceLocation fau_cassette = new ResourceLocation(RefStrings.MODID, "textures/armor/fau_cassette.png"); public static final ResourceLocation fau_arm = new ResourceLocation(RefStrings.MODID, "textures/armor/fau_arm.png"); + public static final ResourceLocation dnt_helmet = new ResourceLocation(RefStrings.MODID, "textures/armor/dnt_helmet.png"); + public static final ResourceLocation dnt_leg = new ResourceLocation(RefStrings.MODID, "textures/armor/dnt_leg.png"); + public static final ResourceLocation dnt_chest = new ResourceLocation(RefStrings.MODID, "textures/armor/dnt_chest.png"); + public static final ResourceLocation dnt_arm = new ResourceLocation(RefStrings.MODID, "textures/armor/dnt_arm.png"); + public static final ResourceLocation mod_tesla = new ResourceLocation(RefStrings.MODID, "textures/armor/mod_tesla.png"); public static final ResourceLocation hat = new ResourceLocation(RefStrings.MODID, "textures/armor/hat.png"); diff --git a/src/main/java/com/hbm/modules/ItemHazardModule.java b/src/main/java/com/hbm/modules/ItemHazardModule.java index 74ea4eb82..850312815 100644 --- a/src/main/java/com/hbm/modules/ItemHazardModule.java +++ b/src/main/java/com/hbm/modules/ItemHazardModule.java @@ -7,7 +7,9 @@ import com.hbm.util.ArmorUtil; import com.hbm.util.ContaminationUtil; import com.hbm.util.I18nUtil; +import net.minecraft.block.material.Material; import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.potion.Potion; @@ -147,4 +149,26 @@ public class ItemHazardModule { list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("trait.furnace", (breeder[0] * breeder[1] * 5))); } } + + public boolean onEntityItemUpdate(EntityItem item) { + + if(!item.worldObj.isRemote) { + + if(this.hydro && item.worldObj.getBlock((int)Math.floor(item.posX), (int)Math.floor(item.posY), (int)Math.floor(item.posZ)).getMaterial() == Material.water) { + + item.setDead(); + item.worldObj.newExplosion(item, item.posX, item.posY, item.posZ, 2F, true, true); + return true; + } + + if(this.explosive > 0 && item.isBurning()) { + + item.setDead(); + item.worldObj.newExplosion(item, item.posX, item.posY, item.posZ, this.explosive, true, true); + return true; + } + } + + return false; + } } diff --git a/src/main/java/com/hbm/render/model/ModelArmorDNT.java b/src/main/java/com/hbm/render/model/ModelArmorDNT.java new file mode 100644 index 000000000..9f26beec7 --- /dev/null +++ b/src/main/java/com/hbm/render/model/ModelArmorDNT.java @@ -0,0 +1,59 @@ +package com.hbm.render.model; + +import org.lwjgl.opengl.GL11; + +import com.hbm.main.ResourceManager; +import com.hbm.render.loader.ModelRendererObj; + +import net.minecraft.client.Minecraft; +import net.minecraft.entity.Entity; + +public class ModelArmorDNT extends ModelArmorBase { + + public ModelArmorDNT(int type) { + super(type); + + head = new ModelRendererObj(ResourceManager.armor_dnt, "Head"); + body = new ModelRendererObj(ResourceManager.armor_dnt, "Body"); + leftArm = new ModelRendererObj(ResourceManager.armor_dnt, "LeftArm").setRotationPoint(-5.0F, 2.0F, 0.0F); + rightArm = new ModelRendererObj(ResourceManager.armor_dnt, "RightArm").setRotationPoint(5.0F, 2.0F, 0.0F); + leftLeg = new ModelRendererObj(ResourceManager.armor_dnt, "LeftLeg").setRotationPoint(1.9F, 12.0F, 0.0F); + rightLeg = new ModelRendererObj(ResourceManager.armor_dnt, "RightLeg").setRotationPoint(-1.9F, 12.0F, 0.0F); + leftFoot = new ModelRendererObj(ResourceManager.armor_dnt, "LeftBoot").setRotationPoint(1.9F, 12.0F, 0.0F); + rightFoot = new ModelRendererObj(ResourceManager.armor_dnt, "RightBoot").setRotationPoint(-1.9F, 12.0F, 0.0F); + } + + @Override + public void render(Entity par1Entity, float par2, float par3, float par4, float par5, float par6, float par7) { + + setRotationAngles(par2, par3, par4, par5, par6, par7, par1Entity); + + GL11.glPushMatrix(); + GL11.glShadeModel(GL11.GL_SMOOTH); + + if(type == 0) { + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dnt_helmet); + head.render(par7); + } + if(type == 1) { + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dnt_chest); + body.render(par7); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dnt_arm); + leftArm.render(par7); + rightArm.render(par7); + } + if(type == 2) { + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dnt_leg); + leftLeg.render(par7); + rightLeg.render(par7); + } + if(type == 3) { + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dnt_leg); + leftFoot.render(par7); + rightFoot.render(par7); + } + + GL11.glShadeModel(GL11.GL_FLAT); + GL11.glPopMatrix(); + } +} diff --git a/src/main/java/com/hbm/tileentity/TileEntityMachineBase.java b/src/main/java/com/hbm/tileentity/TileEntityMachineBase.java index 1d7748b6b..4726f4d50 100644 --- a/src/main/java/com/hbm/tileentity/TileEntityMachineBase.java +++ b/src/main/java/com/hbm/tileentity/TileEntityMachineBase.java @@ -133,7 +133,7 @@ public abstract class TileEntityMachineBase extends TileEntity implements ISided @Override public int[] getAccessibleSlotsFromSide(int p_94128_1_) { - return new int[] { 0 }; + return new int[] { }; } public int getGaugeScaled(int i, FluidTank tank) { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineShredder.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineShredder.java index 13b9dae27..e9a0b2c53 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineShredder.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineShredder.java @@ -190,7 +190,7 @@ public class TileEntityMachineShredder extends TileEntity implements ISidedInven if(i >= 9 && i <= 26) return true; if(i >= 27 && i <= 29) - if(itemStack.getItemDamage() == itemStack.getMaxDamage()) + if(itemStack.getItemDamage() == itemStack.getMaxDamage() && itemStack.getMaxDamage() > 0) return true; return false; diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index 12c956cae..2b2a8458a 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -75,6 +75,8 @@ armor.blastProtection=Explosionsmodifikator: %s armor.cap=Schadensobergrenze: %s armor.damageModifier=Modifikator: %s (%s) armor.electricJetpack=Ionentriebwerke +armor.explosionImmune=Kann nur Schaden durch Explosionen nehmen +armor.fastFall=Schneller Fall armor.fireproof=Feuerfest armor.fullSetBonus=Set-Bonus: armor.geigerHUD=Geigerzähler-HUD @@ -82,8 +84,11 @@ armor.geigerSound=Akustischer Geigerzähler armor.glider=Schleichen um zu gleiten armor.gravity=Schwerkraftsmodifikator: %s armor.hardLanding=Harte Landung +armor.ignoreLimit=Resistenz ist nicht limitiert armor.modifier=Genereller Schadensmodifikator: %s armor.nullDamage=Nichtet Schaden von %s +armor.rocketBoots=Rocket boots +armor.sprintBoost=Verstärkter Sprint armor.thermal=Wärmebildkamera armor.threshold=Schadensschwelle: %s armor.vats=Feinde-HUD @@ -910,6 +915,7 @@ item.cmb_pickaxe.name=CMB-Stahlspitzhacke item.cmb_plate.name=CMB-Stahlbrustpanzer item.cmb_shovel.name=CMB-Stahlschaufel item.cmb_sword.name=CMB-Stahlschwert +item.coal_infernal.name=Höllische Kohle item.cobalt_axe.name=Kobaltaxt item.cobalt_boots.name=Kobaltstiefel item.cobalt_decorated_axe.name=Ausgezeichnete Kobaltaxt @@ -1000,6 +1006,10 @@ item.detonator_laser.name=Laserzünder item.detonator_multi.name=Mehrfach-Fernzünder item.diamond_gavel.name=Diamantener Richterhammer item.digamma_diagnostic.name=Digamma-Diagnosegerät +item.dns_boots.name=DNT-Nanoanzug Stiefel +item.dns_legs.name=DNT-Nanoanzug Beinschützer +item.dns_helmet.name=DNT-Nanoanzug Helm +item.dns_plate.name=DNT-Nanoanzug Brustpanzer item.dnt_boots.name=dienautronium stiefel item.dnt_legs.name=dineuterium beine item.dnt_helmet.name=dinotroniumu helme @@ -1765,6 +1775,7 @@ item.plan_c.name=Plan C item.plate_advanced_alloy.name=Fortgeschrittene Legierungsplatte item.plate_aluminium.name=Aluminiumplatte item.plate_armor_ajr.name=Eisenbeschlagene Panzerplatte +item.plate_armor_dnt.name=DNT-Panzerplatte item.plate_armor_fau.name=Fau-Panzerplatte item.plate_armor_hev.name=Reaktive Panzerplatte item.plate_armor_lunar.name=Lunare Panzerplatte diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index 8ba87a792..ab84055f6 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -75,6 +75,8 @@ armor.blastProtection=Damage modifier of %s against explosions armor.cap=Hard damage cap of %s armor.damageModifier=Damage modifier of %s against %s armor.electricJetpack=Ion Jetpack +armor.explosionImmune=Cannot take any damage except from explosions +armor.fastFall=Fast Fall armor.fireproof=Fireproof armor.fullSetBonus=Full Set Bonus: armor.geigerHUD=Built-In Geiger Counter HUD @@ -82,8 +84,11 @@ armor.geigerSound=Auditory Geiger Counter armor.glider=Sneak to glide armor.gravity=Gravity modifier of %s armor.hardLanding=Hard Landing +armor.ignoreLimit=Resistance is not affected by resistance limit armor.modifier=General damage modifier of %s armor.nullDamage=Nullifies all damage from %s +armor.rocketBoots=Rocket Boots +armor.sprintBoost=Boosted Sprint armor.thermal=Thermal Sight armor.threshold=Damage threshold of %s armor.vats=Enemy HUD @@ -910,6 +915,7 @@ item.cmb_pickaxe.name=CMB Steel Pickaxe item.cmb_plate.name=CMB Steel Chestplate item.cmb_shovel.name=CMB Steel Shovel item.cmb_sword.name=CMB Steel Sword +item.coal_infernal.name=Infernal Coal item.cobalt_axe.name=Cobalt Axe item.cobalt_boots.name=Cobalt Boots item.cobalt_decorated_axe.name=Decorated Cobalt Axe @@ -1000,6 +1006,10 @@ item.detonator_laser.name=Laser Detonator item.detonator_multi.name=Multi Detonator item.diamond_gavel.name=Diamond Gavel item.digamma_diagnostic.name=Digamma Diagnostic +item.dns_boots.name=DNT Nano Suit Boots +item.dns_legs.name=DNT Nano Suit Leggins +item.dns_helmet.name=DNT Nano Suit Chestplate +item.dns_plate.name=DNT Nano Suit Helmet item.dnt_boots.name=dienautronium boots item.dnt_legs.name=dineuterium legs item.dnt_helmet.name=dinotroniumu helmet @@ -1765,6 +1775,7 @@ item.plan_c.name=Plan C item.plate_advanced_alloy.name=Advanced Alloy Plate item.plate_aluminium.name=Aluminium Plate item.plate_armor_ajr.name=Iron-Shod Armor Plating +item.plate_armor_dnt.name=DNT Armor Plating item.plate_armor_fau.name=Fau Armor Plating item.plate_armor_hev.name=Reactive Armor Plating item.plate_armor_lunar.name=Lunar Plating diff --git a/src/main/resources/assets/hbm/models/armor/dnt.obj b/src/main/resources/assets/hbm/models/armor/dnt.obj new file mode 100644 index 000000000..0526ad160 --- /dev/null +++ b/src/main/resources/assets/hbm/models/armor/dnt.obj @@ -0,0 +1,2238 @@ +# Blender v2.79 (sub 0) OBJ File: 'dnt_scaled.blend' +# www.blender.org +o RightBoot +v -4.166000 18.000000 2.165998 +v -4.166000 18.000000 -2.166002 +v 0.166000 18.000000 -2.166002 +v 0.166000 18.000000 2.165998 +v 0.707500 18.000000 -1.624502 +v 0.707500 17.999998 2.707499 +v -4.707500 18.000000 -1.624502 +v -4.707500 17.999998 2.707499 +v -3.624500 18.000000 -2.707502 +v -0.375500 18.000000 -2.707501 +v 0.707500 20.166000 -1.624501 +v -4.707500 20.166000 -1.624501 +v -3.624500 20.166000 -2.707501 +v -0.375500 20.166000 -2.707501 +v 0.707500 22.332001 -2.707500 +v -4.707500 22.332001 -2.707500 +v -3.624500 22.332001 -3.790500 +v -0.375500 22.332001 -3.790500 +v 0.707500 24.497999 -2.707499 +v 0.707500 24.497999 2.707501 +v -4.707500 24.497999 -2.707499 +v -4.707500 24.497999 2.707501 +v -3.624500 24.498001 -3.790500 +v -0.375500 24.498001 -3.790499 +vt 0.450000 0.434783 +vt 0.475000 0.521739 +vt 0.500000 0.434783 +vt 0.300000 0.521739 +vt 0.450000 0.521739 +vt 0.250000 0.347826 +vt 0.250000 0.260870 +vt -0.000000 0.260870 +vt 1.000000 0.521739 +vt 0.750000 0.260870 +vt 0.750000 0.521739 +vt 0.250000 0.434783 +vt 0.250000 0.521739 +vt 0.275000 0.521739 +vt 0.500000 0.347826 +vt 0.550000 0.434783 +vt 0.450000 0.347826 +vt 0.300000 0.434783 +vt 0.300000 0.347826 +vt 0.500000 0.260870 +vt 0.450000 0.260870 +vt 0.500000 0.217391 +vt 0.500000 0.000000 +vt 0.250000 -0.000000 +vt 0.975000 0.543478 +vt 0.025000 0.543478 +vt 0.200000 0.521739 +vt 0.000000 0.521739 +vt 0.550000 0.521739 +vt 0.725000 0.543478 +vt 0.275000 0.543478 +vt 0.500000 0.521739 +vt 0.200000 0.434783 +vt 1.000000 0.260870 +vt 0.300000 0.260870 +vt 0.250000 0.217391 +vt 0.775000 0.543478 +vt 0.225000 0.543478 +vt 0.525000 0.543478 +vt 0.475000 0.543478 +vn -0.7071 0.0000 -0.7071 +vn 0.0000 0.0000 -1.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 -0.0000 1.0000 +vn 0.7071 0.0000 -0.7071 +vn -1.0000 -0.0000 0.0000 +vn -0.6667 -0.3333 -0.6667 +vn 0.0000 -0.4472 -0.8944 +vn 0.6667 -0.3333 -0.6667 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 -0.0000 +s off +f 13/1/1 2/2/1 12/3/1 +f 13/1/2 10/4/2 9/5/2 +f 15/6/3 19/7/3 20/8/3 +f 6/9/4 22/10/4 8/11/4 +f 11/12/5 5/13/5 3/14/5 +f 22/10/6 16/15/6 12/16/6 +f 16/15/7 13/1/7 12/3/7 +f 17/17/8 14/18/8 13/1/8 +f 14/18/9 15/6/9 11/12/9 +f 18/19/5 19/7/5 15/6/5 +f 21/20/1 17/17/1 16/15/1 +f 23/21/2 18/19/2 17/17/2 +f 21/22/10 22/23/10 20/24/10 +f 8/11/11 4/25/11 6/9/11 +f 4/26/11 5/27/11 6/28/11 +f 7/29/11 1/30/11 8/11/11 +f 3/31/11 9/5/11 10/4/11 +f 9/5/1 2/2/1 13/1/1 +f 2/2/1 7/32/1 12/3/1 +f 13/1/2 14/18/2 10/4/2 +f 20/8/3 6/28/3 11/33/3 +f 6/28/3 5/27/3 11/33/3 +f 11/33/3 15/6/3 20/8/3 +f 6/9/4 20/34/4 22/10/4 +f 10/4/5 14/18/5 3/14/5 +f 14/18/5 11/12/5 3/14/5 +f 7/29/6 8/11/6 12/16/6 +f 8/11/6 22/10/6 12/16/6 +f 22/10/6 21/20/6 16/15/6 +f 16/15/7 17/17/7 13/1/7 +f 17/17/8 18/19/8 14/18/8 +f 14/18/9 18/19/9 15/6/9 +f 18/19/5 24/35/5 19/7/5 +f 21/20/1 23/21/1 17/17/1 +f 23/21/2 24/35/2 18/19/2 +f 20/24/10 19/36/10 21/22/10 +f 19/36/10 24/35/10 21/22/10 +f 24/35/10 23/21/10 21/22/10 +f 8/11/11 1/37/11 4/25/11 +f 4/26/11 3/38/11 5/27/11 +f 7/29/11 2/39/11 1/30/11 +f 3/31/11 2/40/11 9/5/11 +o LeftBoot +v 4.166000 18.000000 2.165998 +v 4.166000 18.000000 -2.166002 +v -0.166000 18.000000 -2.166002 +v -0.166000 18.000000 2.165998 +v -0.707500 18.000000 -1.624502 +v -0.707500 17.999998 2.707499 +v 4.707500 18.000000 -1.624502 +v 4.707500 17.999998 2.707499 +v 3.624500 18.000000 -2.707502 +v 0.375500 18.000000 -2.707501 +v -0.707500 20.166000 -1.624501 +v 4.707500 20.166000 -1.624501 +v 3.624500 20.166000 -2.707501 +v 0.375500 20.166000 -2.707501 +v -0.707500 22.332001 -2.707500 +v 4.707500 22.332001 -2.707500 +v 3.624500 22.332001 -3.790500 +v 0.375500 22.332001 -3.790500 +v -0.707500 24.497999 -2.707499 +v -0.707500 24.497999 2.707501 +v 4.707500 24.497999 -2.707499 +v 4.707500 24.497999 2.707501 +v 3.624500 24.498001 -3.790500 +v 0.375500 24.498001 -3.790499 +vt 0.500000 0.217391 +vt 0.450000 0.260870 +vt 0.300000 0.260870 +vt 0.500000 0.434783 +vt 0.475000 0.521739 +vt 0.450000 0.434783 +vt 0.300000 0.521739 +vt 0.450000 0.521739 +vt -0.000000 0.260870 +vt 0.250000 0.347826 +vt 0.200000 0.434783 +vt 0.750000 0.260870 +vt 1.000000 0.521739 +vt 0.750000 0.521739 +vt 0.275000 0.521739 +vt 0.250000 0.521739 +vt 0.250000 0.434783 +vt 0.500000 0.347826 +vt 0.500000 0.260870 +vt 0.300000 0.434783 +vt 0.450000 0.347826 +vt 0.250000 0.260870 +vt 0.300000 0.347826 +vt 0.775000 0.543478 +vt 0.200000 0.521739 +vt 0.025000 0.543478 +vt 0.000000 0.521739 +vt 0.725000 0.543478 +vt 0.550000 0.521739 +vt 0.275000 0.543478 +vt 0.250000 0.217391 +vt 0.250000 -0.000000 +vt 0.500000 -0.000000 +vt 0.500000 0.521739 +vt 1.000000 0.260870 +vt 0.550000 0.434783 +vt 0.975000 0.543478 +vt 0.225000 0.543478 +vt 0.525000 0.543478 +vt 0.475000 0.543478 +vn 0.0000 1.0000 0.0000 +vn 0.7071 0.0000 -0.7071 +vn -0.0000 0.0000 -1.0000 +vn -1.0000 -0.0000 0.0000 +vn 0.0000 -0.0000 1.0000 +vn -0.7071 0.0000 -0.7071 +vn 1.0000 0.0000 0.0000 +vn 0.6667 -0.3333 -0.6667 +vn -0.0000 -0.4472 -0.8944 +vn -0.6667 -0.3333 -0.6667 +vn 0.0000 -1.0000 -0.0000 +s off +f 45/41/12 47/42/12 48/43/12 +f 36/44/13 26/45/13 37/46/13 +f 34/47/14 37/46/14 33/48/14 +f 44/49/15 39/50/15 35/51/15 +f 46/52/16 30/53/16 32/54/16 +f 27/55/17 29/56/17 35/57/17 +f 40/58/18 45/59/18 46/52/18 +f 37/46/19 40/58/19 36/44/19 +f 38/60/20 41/61/20 37/46/20 +f 39/50/21 38/60/21 35/57/21 +f 43/62/17 42/63/17 39/50/17 +f 41/61/13 45/59/13 40/58/13 +f 42/63/14 47/42/14 41/61/14 +f 30/53/22 25/64/22 32/54/22 +f 29/65/22 28/66/22 30/67/22 +f 25/68/22 31/69/22 32/54/22 +f 33/48/22 27/70/22 34/47/22 +f 48/43/12 43/71/12 45/41/12 +f 43/71/12 44/72/12 45/41/12 +f 44/72/12 46/73/12 45/41/12 +f 31/74/13 26/45/13 36/44/13 +f 26/45/13 33/48/13 37/46/13 +f 34/47/14 38/60/14 37/46/14 +f 29/65/15 30/67/15 35/51/15 +f 30/67/15 44/49/15 35/51/15 +f 44/49/15 43/62/15 39/50/15 +f 46/52/16 44/75/16 30/53/16 +f 35/57/17 38/60/17 27/55/17 +f 38/60/17 34/47/17 27/55/17 +f 46/52/18 32/54/18 36/76/18 +f 32/54/18 31/69/18 36/76/18 +f 36/76/18 40/58/18 46/52/18 +f 37/46/19 41/61/19 40/58/19 +f 38/60/20 42/63/20 41/61/20 +f 39/50/21 42/63/21 38/60/21 +f 43/62/17 48/43/17 42/63/17 +f 41/61/13 47/42/13 45/59/13 +f 42/63/14 48/43/14 47/42/14 +f 30/53/22 28/77/22 25/64/22 +f 29/65/22 27/78/22 28/66/22 +f 25/68/22 26/79/22 31/69/22 +f 33/48/22 26/80/22 27/70/22 +o RightArm +v -3.834000 3.292501 2.165993 +v -3.834000 3.292501 -2.166007 +v -3.834000 12.497999 2.165996 +v -3.834000 12.498001 -2.166004 +v -8.166000 3.292501 2.165993 +v -8.166000 3.292501 -2.166007 +v -8.166000 12.497999 2.165996 +v -8.166000 12.498001 -2.166004 +v -3.292500 -1.580999 2.165991 +v -3.292500 -1.580999 -2.166008 +v -8.166000 -1.580999 2.165991 +v -8.166000 -1.580999 -2.166008 +v -3.292500 -0.497997 -3.249008 +v -8.166000 -0.497997 -3.249008 +v -3.292500 -0.498001 3.248991 +v -8.166000 -0.498001 3.248991 +v -9.249001 -0.497999 2.165992 +v -9.249001 -0.497999 -2.166008 +v -3.292500 3.292503 -3.249007 +v -8.166000 3.292503 -3.249007 +v -3.292500 3.292500 3.248993 +v -8.166000 3.292500 3.248993 +v -9.249001 3.292501 2.165993 +v -9.249001 3.292501 -2.166007 +v -4.375500 11.414999 2.707496 +v -4.375500 11.415001 -2.707504 +v -7.624500 11.414999 2.707496 +v -7.624500 11.415001 -2.707504 +v -3.292500 11.415001 -1.624504 +v -8.707500 11.415001 -1.624504 +v -3.292500 11.414999 1.624495 +v -8.707500 11.414999 1.624496 +v -3.834000 11.414999 2.165996 +v -8.166000 11.414999 2.165996 +v -8.166000 11.415001 -2.166004 +v -3.834000 11.415001 -2.166004 +v -4.375500 8.166000 2.707494 +v -4.375500 8.166000 -2.707505 +v -7.624500 8.166000 2.707494 +v -7.624500 8.166000 -2.707505 +v -3.292500 8.166000 -1.624505 +v -8.707500 8.166000 -1.624505 +v -3.292500 8.166000 1.624494 +v -8.707500 8.166000 1.624494 +v -3.834000 7.083000 2.165994 +v -3.834000 7.083000 -2.166006 +v -8.166000 7.083000 2.165994 +v -8.166000 7.083000 -2.166006 +v -9.249001 0.585001 -2.166008 +v -9.249001 2.751001 -2.166007 +v -9.790501 0.585001 -1.624508 +v -9.790501 2.751001 -1.624507 +v -9.790501 0.585001 1.624492 +v -9.790501 2.751001 1.624493 +v -9.790501 -0.498001 3.790491 +v -9.790501 1.667999 3.790492 +v -7.624500 8.166000 2.707494 +v -4.375500 8.166000 2.707494 +v -7.624500 7.624498 3.248994 +v -4.375500 7.624498 3.248994 +v -7.624500 3.292500 3.248993 +v -4.375500 3.292500 3.248993 +v -9.249001 0.585001 -2.166008 +v -9.249001 2.751001 -2.166007 +v -9.790501 0.585001 -1.624508 +v -9.790501 2.751001 -1.624507 +v -9.790501 0.585001 1.624492 +v -9.790501 2.751001 1.624493 +v -9.790501 -0.498001 3.790491 +v -9.790501 1.667999 3.790492 +v -7.624500 8.166000 2.707494 +v -4.375500 8.166000 2.707494 +v -7.624500 7.624498 3.248994 +v -4.375500 7.624498 3.248994 +v -7.624500 3.292500 3.248993 +v -4.375500 3.292500 3.248993 +vt 0.452381 0.173913 +vt 0.261905 0.000000 +vt 0.261905 0.173913 +vt 0.000000 0.630435 +vt 0.000000 0.782609 +vt 0.047619 0.826087 +vt 0.500000 1.000000 +vt 0.285714 0.826087 +vt 0.285714 1.000000 +vt 0.500000 0.782609 +vt 0.500000 0.826087 +vt 1.000000 0.782609 +vt 0.785714 0.826087 +vt 1.000000 0.826087 +vt 0.738095 0.782609 +vt 0.547619 0.826087 +vt 0.738095 0.826087 +vt 0.738095 0.630435 +vt 0.547619 0.782609 +vt 1.000000 0.630435 +vt 0.785714 0.782609 +vt 0.500000 0.630435 +vt 0.285714 0.782609 +vt 0.523810 0.826087 +vt 0.547619 0.630435 +vt 0.761905 0.826087 +vt 0.785714 0.630435 +vt 0.309524 0.586957 +vt 0.500000 0.586957 +vt 0.738095 0.586957 +vt 0.547619 0.586957 +vt 0.523810 0.586957 +vt 0.976190 0.586957 +vt 0.785714 0.586957 +vt 0.761905 0.586957 +vt 0.047619 0.608696 +vt 0.285714 0.630435 +vt 0.238095 0.608696 +vt 0.642857 0.217391 +vt 0.642857 0.173913 +vt 0.833333 0.173913 +vt 0.071429 0.217391 +vt 0.071429 0.173913 +vt 0.238095 0.239130 +vt 0.095238 0.239130 +vt 0.809524 0.239130 +vt 0.666667 0.239130 +vt 0.619048 0.239130 +vt 0.452381 0.217391 +vt 0.476190 0.239130 +vt 0.428571 0.239130 +vt 0.261905 0.217391 +vt 0.285714 0.239130 +vt 0.095238 0.369565 +vt 0.666667 0.369565 +vt 0.642857 0.239130 +vt 0.619048 0.369565 +vt 0.071429 0.239130 +vt 0.047619 0.369565 +vt 0.476190 0.369565 +vt 0.285714 0.369565 +vt 0.452381 0.239130 +vt 0.428571 0.369565 +vt 0.261905 0.413043 +vt 0.452381 0.413043 +vt 0.833333 0.413043 +vt 0.809524 0.369565 +vt 0.238095 0.369565 +vt 0.238095 0.456522 +vt 0.976190 0.434783 +vt 0.547619 0.434783 +vt 0.309524 0.434783 +vt 0.452381 0.173913 +vt 0.476190 0.086957 +vt 0.452381 0.086957 +vt 0.476190 0.173913 +vt 0.619048 0.086957 +vt 0.619048 0.173913 +vt 0.714286 0.086957 +vt 0.833333 0.217391 +vt 0.976190 0.239130 +vt 0.976190 0.217391 +vt 0.833333 0.239130 +vt 0.976190 0.413043 +vt 0.261905 0.239130 +vt 0.476190 0.086957 +vt 0.452381 0.173913 +vt 0.452381 0.086957 +vt 0.619048 0.086957 +vt 0.476190 0.173913 +vt 0.714286 0.086957 +vt 0.619048 0.173913 +vt 0.976190 0.239130 +vt 0.833333 0.217391 +vt 0.976190 0.217391 +vt 0.976190 0.413043 +vt 0.833333 0.239130 +vt 0.452381 -0.000000 +vt 0.238095 0.826087 +vt 0.833333 0.217391 +vt 0.642857 0.413043 +vt 0.071429 0.413043 +vt 0.047619 0.239130 +vt 0.047619 0.456522 +vt 0.785714 0.434783 +vt 0.738095 0.434783 +vt 0.500000 0.434783 +vt 0.714286 0.173913 +vt 0.833333 0.413043 +vt 0.714286 0.173913 +vt 0.833333 0.413043 +vn 0.0000 1.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 -0.7071 -0.7071 +vn 0.0000 -0.7071 0.7071 +vn -0.7071 -0.7071 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 -0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn -0.5773 -0.5774 -0.5774 +vn -0.7071 0.0000 -0.7071 +vn -0.5774 -0.5774 0.5773 +vn -0.7071 -0.0000 0.7071 +vn 0.7071 -0.0000 0.7071 +vn 0.0000 -0.4472 -0.8944 +vn -0.8944 -0.4472 0.0000 +vn 0.0000 -0.4472 0.8944 +vn 0.8944 -0.4472 0.0000 +vn 0.0000 0.7071 0.7071 +vn 0.7071 0.0000 -0.7071 +s off +f 56/81/23 51/82/23 52/83/23 +f 69/84/24 63/85/24 57/86/24 +f 59/87/25 58/88/25 57/89/25 +f 62/90/26 58/88/26 60/91/26 +f 63/92/27 59/93/27 57/94/27 +f 65/95/28 60/96/28 59/97/28 +f 71/98/29 66/99/29 65/95/29 +f 69/100/30 64/101/30 63/92/30 +f 68/102/31 61/103/31 62/90/31 +f 60/104/32 66/99/32 62/90/32 +f 72/105/33 62/90/33 66/99/33 +f 59/106/34 64/101/34 65/95/34 +f 65/95/35 70/107/35 71/98/35 +f 50/108/23 68/102/23 54/109/23 +f 72/105/23 53/110/23 54/111/23 +f 72/105/23 54/112/23 68/102/23 +f 70/107/23 49/113/23 53/114/23 +f 71/98/23 70/107/23 53/115/23 +f 49/116/23 67/117/23 50/118/23 +f 56/81/29 82/119/29 55/120/29 +f 82/119/30 51/121/30 55/120/30 +f 81/122/24 52/83/24 51/123/24 +f 77/124/23 81/122/23 79/125/23 +f 73/126/23 82/119/23 75/127/23 +f 80/128/23 83/129/23 78/130/23 +f 76/131/23 84/132/23 74/133/23 +f 84/132/31 56/81/31 52/83/31 +f 91/134/24 77/124/24 79/125/24 +f 87/135/35 82/136/35 92/137/35 +f 87/135/30 73/126/30 75/127/30 +f 91/134/36 81/138/36 85/139/36 +f 90/140/29 80/128/29 78/130/29 +f 86/141/31 76/131/31 74/133/31 +f 90/140/33 83/142/33 88/143/33 +f 94/144/37 88/143/37 86/141/37 +f 96/145/38 92/137/38 90/140/38 +f 87/135/39 93/146/39 85/147/39 +f 91/134/40 94/144/40 89/148/40 +f 94/149/24 49/116/24 50/118/24 +f 93/150/30 53/114/30 49/113/30 +f 53/110/29 96/151/29 54/111/29 +f 54/109/31 94/152/31 50/108/31 +f 97/153/33 100/154/33 98/155/33 +f 99/156/29 102/157/29 100/154/29 +f 101/158/29 104/159/29 102/157/29 +f 105/160/41 108/161/41 106/162/41 +f 107/163/30 110/164/30 108/161/30 +f 86/141/42 84/165/42 89/148/42 +f 114/166/36 111/167/36 112/168/36 +f 116/169/24 113/170/24 114/166/24 +f 118/171/24 115/172/24 116/169/24 +f 122/173/26 119/174/26 120/175/26 +f 124/176/31 121/177/31 122/173/31 +f 56/81/23 55/178/23 51/82/23 +f 57/86/24 58/179/24 69/84/24 +f 58/179/24 61/103/24 67/117/24 +f 69/84/24 58/179/24 67/117/24 +f 59/87/25 60/91/25 58/88/25 +f 62/90/26 61/103/26 58/88/26 +f 63/92/27 64/101/27 59/93/27 +f 65/95/28 66/99/28 60/96/28 +f 71/98/29 72/105/29 66/99/29 +f 69/100/30 70/107/30 64/101/30 +f 68/102/31 67/117/31 61/103/31 +f 72/105/33 68/102/33 62/90/33 +f 65/95/35 64/101/35 70/107/35 +f 50/108/23 67/117/23 68/102/23 +f 72/105/23 71/98/23 53/110/23 +f 70/107/23 69/100/23 49/113/23 +f 49/116/23 69/84/23 67/117/23 +f 56/81/29 83/129/29 82/119/29 +f 82/119/30 81/180/30 51/121/30 +f 81/122/24 84/132/24 52/83/24 +f 77/124/23 84/132/23 81/122/23 +f 73/126/23 81/180/23 82/119/23 +f 80/128/23 82/119/23 83/129/23 +f 76/131/23 83/129/23 84/132/23 +f 84/132/31 83/129/31 56/81/31 +f 91/134/24 89/148/24 77/124/24 +f 95/181/35 87/135/35 92/137/35 +f 87/135/35 75/127/35 82/136/35 +f 82/136/35 80/128/35 92/137/35 +f 87/135/30 85/147/30 73/126/30 +f 93/182/36 91/134/36 85/139/36 +f 91/134/36 79/125/36 81/138/36 +f 81/138/36 73/183/36 85/139/36 +f 90/140/29 92/137/29 80/128/29 +f 86/141/31 88/143/31 76/131/31 +f 96/145/33 90/140/33 88/143/33 +f 90/140/33 78/130/33 83/142/33 +f 83/142/33 76/131/33 88/143/33 +f 94/144/37 96/145/37 88/143/37 +f 96/145/38 95/181/38 92/137/38 +f 87/135/39 95/181/39 93/146/39 +f 91/134/40 93/182/40 94/144/40 +f 94/149/24 93/184/24 49/116/24 +f 93/150/30 95/185/30 53/114/30 +f 53/110/29 95/186/29 96/151/29 +f 54/109/31 96/187/31 94/152/31 +f 97/153/33 99/156/33 100/154/33 +f 99/156/29 101/158/29 102/157/29 +f 101/158/29 103/188/29 104/159/29 +f 105/160/41 107/163/41 108/161/41 +f 107/163/30 109/189/30 110/164/30 +f 94/144/42 86/141/42 89/148/42 +f 86/141/42 74/133/42 84/165/42 +f 84/165/42 77/124/42 89/148/42 +f 114/166/36 113/170/36 111/167/36 +f 116/169/24 115/172/24 113/170/24 +f 118/171/24 117/190/24 115/172/24 +f 122/173/26 121/177/26 119/174/26 +f 124/176/31 123/191/31 121/177/31 +o RightLeg +v -4.166000 18.000000 2.165998 +v -4.166000 18.000000 -2.166002 +v 0.166000 18.000000 -2.166002 +v 0.166000 18.000000 2.165998 +v 0.166000 11.501999 2.165996 +v 0.166000 11.502001 -2.166004 +v -4.166000 11.502001 -2.166004 +v -4.166000 11.501999 2.165996 +v -3.624500 17.458498 3.248997 +v -0.375500 17.458498 3.248998 +v -3.624500 12.584999 3.248996 +v -0.375500 12.584999 3.248997 +v -3.624500 12.043499 2.707496 +v -0.375500 12.043499 2.707497 +v -4.707500 15.833999 2.707498 +v -4.707500 15.834001 -1.624502 +v 0.707500 15.833999 2.707498 +v 0.707500 15.834001 -1.624502 +v 0.707500 12.043501 -1.624503 +v 0.707500 12.043499 2.707497 +v -4.707500 12.043501 -1.624503 +v -4.707500 12.043499 2.707497 +v -3.624500 12.043501 -2.707504 +v -0.375500 12.043501 -2.707503 +v -3.624500 15.834001 -2.707503 +v -0.375500 15.834001 -2.707502 +v -4.166000 15.834001 -2.166003 +v 0.166000 15.834001 -2.166002 +v -4.166000 15.833999 2.165997 +v 0.166000 15.833999 2.165998 +v -3.624500 17.999998 2.707498 +v -0.375500 17.999998 2.707499 +v -3.624500 17.458498 3.248997 +v -0.375500 17.458498 3.248998 +v -3.624500 12.584999 3.248996 +v -0.375500 12.584999 3.248997 +v -3.624500 12.043499 2.707496 +v -0.375500 12.043499 2.707497 +v -3.624500 17.999998 2.707498 +v -0.375500 17.999998 2.707499 +vt 0.275000 0.826087 +vt 0.450000 0.804348 +vt 0.300000 0.804348 +vt 0.700000 0.804348 +vt 0.925000 0.826087 +vt 0.950000 0.804348 +vt 0.500000 0.652174 +vt 0.500000 0.804348 +vt 0.250000 0.804348 +vt 0.050000 0.652174 +vt 0.050000 0.804348 +vt 0.675000 0.826087 +vt 0.075000 0.826087 +vt 0.700000 0.652174 +vt 0.500000 0.043478 +vt 0.650000 0.239130 +vt 0.650000 0.043478 +vt 0.500000 0.239130 +vt 0.650000 0.260870 +vt 0.475000 0.652174 +vt 0.300000 0.652174 +vt 0.950000 0.652174 +vt 0.725000 0.630435 +vt 0.675000 0.630435 +vt 0.475000 0.630435 +vt 0.075000 0.630435 +vt 0.250000 0.652174 +vt 0.275000 0.630435 +vt 0.925000 0.543478 +vt 0.725000 0.543478 +vt 0.475000 0.543478 +vt 0.675000 0.543478 +vt 0.275000 0.543478 +vt 0.075000 0.543478 +vt 0.275000 1.000000 +vt 0.475000 0.826087 +vt 0.650000 0.021739 +vt 0.275000 0.652174 +vt 0.650000 0.239130 +vt 0.500000 0.043478 +vt 0.650000 0.043478 +vt 0.650000 0.260870 +vt 0.500000 0.239130 +vt 0.650000 0.021739 +vt 0.725000 0.826087 +vt 0.500000 0.260870 +vt 0.450000 0.652174 +vt 0.925000 0.630435 +vt 0.475000 1.000000 +vt 0.500000 0.021739 +vt 0.500000 0.260870 +vt 0.500000 0.021739 +vn 0.0000 -0.7071 -0.7071 +vn 0.0000 -0.7071 0.7071 +vn -1.0000 0.0000 0.0000 +vn 1.0000 0.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.0000 -0.7071 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 -0.0000 +vn -0.0000 0.7071 0.7071 +vn 0.7071 0.0000 -0.7071 +vn 0.0000 0.7071 -0.7071 +s off +f 130/192/43 147/193/43 148/194/43 +f 146/195/44 129/196/44 144/197/44 +f 146/195/45 140/198/45 145/199/45 +f 143/200/46 141/201/46 144/202/46 +f 145/199/47 132/203/47 146/195/47 +f 143/200/48 129/204/48 130/192/48 +f 144/197/49 139/205/49 146/195/49 +f 133/206/49 136/207/49 134/208/49 +f 135/209/44 138/210/44 136/207/44 +f 145/199/50 151/211/50 147/193/50 +f 147/193/51 150/212/51 148/194/51 +f 141/213/52 153/214/52 139/205/52 +f 140/198/52 153/215/52 151/216/52 +f 154/217/52 142/218/52 152/219/52 +f 150/212/52 151/216/52 152/219/52 +f 153/214/49 128/220/49 125/221/49 +f 126/222/45 153/215/45 125/223/45 +f 154/217/46 127/224/46 128/225/46 +f 152/219/51 126/222/51 127/224/51 +f 129/226/53 131/227/53 130/192/53 +f 156/228/54 133/206/54 134/208/54 +f 148/194/55 150/212/55 152/229/55 +f 160/230/51 157/231/51 158/232/51 +f 162/233/56 159/234/56 160/230/56 +f 157/231/43 164/235/43 158/232/43 +f 130/192/43 131/227/43 147/193/43 +f 146/195/44 132/236/44 129/196/44 +f 146/195/45 139/205/45 140/198/45 +f 143/200/46 142/218/46 141/201/46 +f 145/199/47 131/227/47 132/203/47 +f 143/200/48 144/202/48 129/204/48 +f 144/197/49 141/213/49 139/205/49 +f 133/206/49 135/209/49 136/207/49 +f 135/209/44 137/237/44 138/210/44 +f 131/227/50 145/199/50 147/193/50 +f 145/199/50 140/198/50 151/211/50 +f 151/211/50 149/238/50 147/193/50 +f 147/193/51 149/238/51 150/212/51 +f 141/213/52 154/239/52 153/214/52 +f 140/198/52 139/205/52 153/215/52 +f 154/217/52 141/201/52 142/218/52 +f 150/212/52 149/238/52 151/216/52 +f 153/214/49 154/239/49 128/220/49 +f 126/222/45 151/216/45 153/215/45 +f 154/217/46 152/219/46 127/224/46 +f 152/219/51 151/216/51 126/222/51 +f 129/226/53 132/240/53 131/227/53 +f 156/228/54 155/241/54 133/206/54 +f 142/218/55 143/200/55 152/229/55 +f 143/200/55 130/192/55 148/194/55 +f 152/229/55 143/200/55 148/194/55 +f 160/230/51 159/234/51 157/231/51 +f 162/233/56 161/242/56 159/234/56 +f 157/231/43 163/243/43 164/235/43 +o LeftArm +v 3.834000 3.292501 2.165993 +v 3.834000 3.292501 -2.166007 +v 3.834000 12.497999 2.165996 +v 3.834000 12.498001 -2.166004 +v 8.166000 3.292501 2.165993 +v 8.166000 3.292501 -2.166007 +v 8.166000 12.497999 2.165996 +v 8.166000 12.498001 -2.166004 +v 3.292500 -1.580999 2.165991 +v 3.292500 -1.580999 -2.166008 +v 8.166000 -1.580999 2.165991 +v 8.166000 -1.580999 -2.166008 +v 3.292500 -0.497997 -3.249008 +v 8.166000 -0.497997 -3.249008 +v 3.292500 -0.498001 3.248991 +v 8.166000 -0.498001 3.248991 +v 9.249001 -0.497999 2.165992 +v 9.249001 -0.497999 -2.166008 +v 3.292500 3.292503 -3.249007 +v 8.166000 3.292503 -3.249007 +v 3.292500 3.292500 3.248993 +v 8.166000 3.292500 3.248993 +v 9.249001 3.292501 2.165993 +v 9.249001 3.292501 -2.166007 +v 4.375500 11.414999 2.707496 +v 4.375500 11.415001 -2.707504 +v 7.624500 11.414999 2.707496 +v 7.624500 11.415001 -2.707504 +v 3.292500 11.415001 -1.624504 +v 8.707500 11.415001 -1.624504 +v 3.292500 11.414999 1.624495 +v 8.707500 11.414999 1.624496 +v 3.834000 11.414999 2.165996 +v 8.166000 11.414999 2.165996 +v 8.166000 11.415001 -2.166004 +v 3.834000 11.415001 -2.166004 +v 4.375500 8.166000 2.707494 +v 4.375500 8.166000 -2.707505 +v 7.624500 8.166000 2.707494 +v 7.624500 8.166000 -2.707505 +v 3.292500 8.166000 -1.624505 +v 8.707500 8.166000 -1.624505 +v 3.292500 8.166000 1.624494 +v 8.707500 8.166000 1.624494 +v 3.834000 7.083000 2.165994 +v 3.834000 7.083000 -2.166006 +v 8.166000 7.083000 2.165994 +v 8.166000 7.083000 -2.166006 +v 9.249001 0.585001 -2.166008 +v 9.249001 2.751001 -2.166007 +v 9.790501 0.585001 -1.624508 +v 9.790501 2.751001 -1.624507 +v 9.790501 0.585001 1.624492 +v 9.790501 2.751001 1.624493 +v 9.790501 -0.498001 3.790491 +v 9.790501 1.667999 3.790492 +v 7.624500 8.166000 2.707494 +v 4.375500 8.166000 2.707494 +v 7.624500 7.624498 3.248994 +v 4.375500 7.624498 3.248994 +v 7.624500 3.292500 3.248993 +v 4.375500 3.292500 3.248993 +v 9.249001 0.585001 -2.166008 +v 9.249001 2.751001 -2.166007 +v 9.790501 0.585001 -1.624508 +v 9.790501 2.751001 -1.624507 +v 9.790501 0.585001 1.624492 +v 9.790501 2.751001 1.624493 +v 9.790501 -0.498001 3.790491 +v 9.790501 1.667999 3.790492 +v 7.624500 8.166000 2.707494 +v 4.375500 8.166000 2.707494 +v 7.624500 7.624498 3.248994 +v 4.375500 7.624498 3.248994 +v 7.624500 3.292500 3.248993 +v 4.375500 3.292500 3.248993 +vt 0.261905 0.000000 +vt 0.452381 0.173913 +vt 0.261905 0.173913 +vt 0.000000 0.630435 +vt 0.285714 0.630435 +vt 0.238095 0.826087 +vt 0.285714 0.826087 +vt 0.500000 1.000000 +vt 0.285714 1.000000 +vt 0.500000 0.782609 +vt 0.500000 0.826087 +vt 0.785714 0.826087 +vt 1.000000 0.782609 +vt 1.000000 0.826087 +vt 0.547619 0.826087 +vt 0.738095 0.782609 +vt 0.738095 0.826087 +vt 0.547619 0.782609 +vt 0.738095 0.630435 +vt 0.785714 0.782609 +vt 1.000000 0.630435 +vt 0.285714 0.782609 +vt 0.500000 0.630435 +vt 0.523810 0.826087 +vt 0.547619 0.630435 +vt 0.761905 0.826087 +vt 0.785714 0.630435 +vt 0.309524 0.586957 +vt 0.738095 0.586957 +vt 0.547619 0.586957 +vt 0.523810 0.586957 +vt 0.976190 0.586957 +vt 0.785714 0.586957 +vt 0.761905 0.586957 +vt 0.047619 0.608696 +vt 0.238095 0.608696 +vt 0.642857 0.217391 +vt 0.642857 0.173913 +vt 0.833333 0.173913 +vt 0.071429 0.217391 +vt 0.071429 0.173913 +vt 0.238095 0.239130 +vt 0.261905 0.217391 +vt 0.809524 0.239130 +vt 0.666667 0.239130 +vt 0.452381 0.217391 +vt 0.619048 0.239130 +vt 0.476190 0.239130 +vt 0.428571 0.239130 +vt 0.285714 0.239130 +vt 0.095238 0.369565 +vt 0.095238 0.239130 +vt 0.619048 0.369565 +vt 0.642857 0.239130 +vt 0.666667 0.369565 +vt 0.047619 0.369565 +vt 0.047619 0.239130 +vt 0.071429 0.239130 +vt 0.476190 0.369565 +vt 0.285714 0.369565 +vt 0.428571 0.369565 +vt 0.452381 0.239130 +vt 0.261905 0.413043 +vt 0.452381 0.413043 +vt 0.833333 0.413043 +vt 0.809524 0.369565 +vt 0.238095 0.369565 +vt 0.238095 0.456522 +vt 0.976190 0.434783 +vt 0.547619 0.434783 +vt 0.309524 0.434783 +vt 0.500000 0.586957 +vt 0.476190 0.086957 +vt 0.452381 0.173913 +vt 0.452381 0.086957 +vt 0.619048 0.086957 +vt 0.476190 0.173913 +vt 0.714286 0.086957 +vt 0.619048 0.173913 +vt 0.976190 0.239130 +vt 0.833333 0.217391 +vt 0.976190 0.217391 +vt 0.976190 0.413043 +vt 0.833333 0.239130 +vt 0.261905 0.239130 +vt 0.452381 0.173913 +vt 0.476190 0.086957 +vt 0.452381 0.086957 +vt 0.476190 0.173913 +vt 0.619048 0.086957 +vt 0.619048 0.173913 +vt 0.714286 0.086957 +vt 0.833333 0.217391 +vt 0.976190 0.239130 +vt 0.976190 0.217391 +vt 0.833333 0.239130 +vt 0.976190 0.413043 +vt 0.452381 -0.000000 +vt 0.047619 0.826087 +vt 0.000000 0.782609 +vt 0.833333 0.217391 +vt 0.642857 0.413043 +vt 0.071429 0.413043 +vt 0.047619 0.456522 +vt 0.785714 0.434783 +vt 0.738095 0.434783 +vt 0.500000 0.434783 +vt 0.714286 0.173913 +vt 0.833333 0.413043 +vt 0.714286 0.173913 +vt 0.833333 0.413043 +vn 0.0000 1.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 -0.7071 -0.7071 +vn 0.0000 -0.7071 0.7071 +vn 0.7071 -0.7071 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 -0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.5773 -0.5774 -0.5774 +vn 0.7071 0.0000 -0.7071 +vn 0.5774 -0.5774 0.5773 +vn 0.7071 -0.0000 0.7071 +vn -0.7071 -0.0000 0.7071 +vn 0.0000 -0.4472 -0.8944 +vn 0.8944 -0.4472 0.0000 +vn 0.0000 -0.4472 0.8944 +vn -0.8944 -0.4472 0.0000 +vn 0.0000 0.7071 0.7071 +vn -0.7071 0.0000 -0.7071 +s off +f 167/244/57 172/245/57 168/246/57 +f 185/247/58 183/248/58 174/249/58 +f 174/250/59 175/251/59 173/252/59 +f 174/250/60 178/253/60 176/254/60 +f 175/255/61 179/256/61 173/257/61 +f 176/258/62 181/259/62 175/260/62 +f 182/261/63 187/262/63 181/259/63 +f 180/263/64 185/264/64 179/256/64 +f 177/265/65 184/266/65 178/253/65 +f 176/267/66 178/253/66 182/261/66 +f 178/253/67 188/268/67 182/261/67 +f 175/269/68 181/259/68 180/263/68 +f 186/270/69 181/259/69 187/262/69 +f 166/271/57 184/266/57 183/248/57 +f 169/272/57 188/268/57 170/273/57 +f 188/268/57 184/266/57 170/274/57 +f 165/275/57 186/270/57 169/276/57 +f 187/262/57 169/277/57 186/270/57 +f 183/248/57 165/278/57 166/279/57 +f 198/280/63 172/245/63 171/281/63 +f 167/282/64 198/280/64 171/281/64 +f 168/246/58 197/283/58 167/284/58 +f 193/285/57 197/283/57 200/286/57 +f 198/280/57 189/287/57 191/288/57 +f 199/289/57 196/290/57 194/291/57 +f 200/286/57 192/292/57 190/293/57 +f 172/245/65 200/286/65 168/246/65 +f 193/285/58 207/294/58 195/295/58 +f 208/296/69 196/290/69 198/297/69 +f 189/287/64 203/298/64 191/288/64 +f 201/299/70 189/300/70 197/301/70 +f 196/290/63 206/302/63 194/291/63 +f 192/292/65 202/303/65 190/293/65 +f 204/304/67 192/292/67 199/305/67 +f 204/304/71 210/306/71 202/303/71 +f 208/296/72 212/307/72 206/302/72 +f 209/308/73 203/298/73 201/309/73 +f 210/306/74 207/294/74 205/310/74 +f 165/278/58 210/311/58 166/279/58 +f 169/276/64 209/312/64 165/275/64 +f 212/313/63 169/272/63 170/273/63 +f 210/314/65 170/315/65 166/271/65 +f 216/316/67 213/317/67 214/318/67 +f 218/319/63 215/320/63 216/316/63 +f 220/321/63 217/322/63 218/319/63 +f 224/323/75 221/324/75 222/325/75 +f 226/326/64 223/327/64 224/323/64 +f 205/310/76 193/285/76 200/328/76 +f 227/329/70 230/330/70 228/331/70 +f 229/332/58 232/333/58 230/330/58 +f 231/334/58 234/335/58 232/333/58 +f 235/336/60 238/337/60 236/338/60 +f 237/339/65 240/340/65 238/337/65 +f 167/244/57 171/341/57 172/245/57 +f 177/265/58 174/249/58 183/248/58 +f 174/249/58 173/342/58 185/247/58 +f 173/342/58 179/343/58 185/247/58 +f 174/250/59 176/254/59 175/251/59 +f 174/250/60 177/265/60 178/253/60 +f 175/255/61 180/263/61 179/256/61 +f 176/258/62 182/261/62 181/259/62 +f 182/261/63 188/268/63 187/262/63 +f 180/263/64 186/270/64 185/264/64 +f 177/265/65 183/248/65 184/266/65 +f 178/253/67 184/266/67 188/268/67 +f 186/270/69 180/263/69 181/259/69 +f 166/271/57 170/315/57 184/266/57 +f 169/272/57 187/262/57 188/268/57 +f 165/275/57 185/264/57 186/270/57 +f 183/248/57 185/247/57 165/278/57 +f 198/280/63 199/289/63 172/245/63 +f 167/282/64 197/344/64 198/280/64 +f 168/246/58 200/286/58 197/283/58 +f 193/285/57 195/295/57 197/283/57 +f 198/280/57 197/344/57 189/287/57 +f 199/289/57 198/280/57 196/290/57 +f 200/286/57 199/289/57 192/292/57 +f 172/245/65 199/289/65 200/286/65 +f 193/285/58 205/310/58 207/294/58 +f 191/288/69 203/298/69 198/297/69 +f 203/298/69 211/345/69 208/296/69 +f 198/297/69 203/298/69 208/296/69 +f 189/287/64 201/309/64 203/298/64 +f 195/295/70 207/294/70 197/301/70 +f 207/294/70 209/346/70 201/299/70 +f 197/301/70 207/294/70 201/299/70 +f 196/290/63 208/296/63 206/302/63 +f 192/292/65 204/304/65 202/303/65 +f 194/291/67 206/302/67 199/305/67 +f 206/302/67 212/307/67 204/304/67 +f 199/305/67 206/302/67 204/304/67 +f 204/304/71 212/307/71 210/306/71 +f 208/296/72 211/345/72 212/307/72 +f 209/308/73 211/345/73 203/298/73 +f 210/306/74 209/346/74 207/294/74 +f 165/278/58 209/347/58 210/311/58 +f 169/276/64 211/348/64 209/312/64 +f 212/313/63 211/349/63 169/272/63 +f 210/314/65 212/350/65 170/315/65 +f 216/316/67 215/320/67 213/317/67 +f 218/319/63 217/322/63 215/320/63 +f 220/321/63 219/351/63 217/322/63 +f 224/323/75 223/327/75 221/324/75 +f 226/326/64 225/352/64 223/327/64 +f 190/293/76 202/303/76 200/328/76 +f 202/303/76 210/306/76 205/310/76 +f 200/328/76 202/303/76 205/310/76 +f 227/329/70 229/332/70 230/330/70 +f 229/332/58 231/334/58 232/333/58 +f 231/334/58 233/353/58 234/335/58 +f 235/336/60 237/339/60 238/337/60 +f 237/339/65 239/354/65 240/340/65 +o Body +v 4.332000 -0.497999 2.165992 +v 4.332000 -0.497999 -2.166008 +v -4.332000 -0.497999 -2.166008 +v -4.332000 -0.497999 2.165992 +v 4.332000 10.332000 2.165995 +v 4.332000 10.332002 -2.166005 +v -4.332000 10.332002 -2.166005 +v -4.332000 10.332000 2.165995 +v 3.790500 12.497999 2.707496 +v 3.790500 12.498001 -2.707504 +v -3.790500 12.497999 2.707496 +v -3.790500 12.498001 -2.707504 +v 4.873500 12.497999 1.624496 +v 4.873500 12.498001 -1.624504 +v -4.873500 12.497999 1.624496 +v -4.873500 12.498001 -1.624504 +v 3.790500 10.332000 2.707495 +v 3.790500 10.332002 -2.707505 +v -3.790500 10.332000 2.707495 +v -3.790500 10.332002 -2.707505 +v 4.873500 10.332000 1.624495 +v 4.873500 10.332002 -1.624505 +v -4.873500 10.332000 1.624495 +v -4.873500 10.332002 -1.624505 +v -3.790500 3.292501 -2.707507 +v -3.790500 6.541500 2.707494 +v 3.790500 3.292501 -2.707507 +v 3.790500 6.541500 2.707494 +v 3.790500 0.585001 2.707492 +v 3.790500 0.585001 -2.707508 +v -3.790500 0.585001 2.707492 +v -3.790500 0.585001 -2.707508 +v 4.873500 0.585001 1.624492 +v 4.873500 0.585001 -1.624508 +v -4.873500 0.585001 1.624492 +v -4.873500 0.585001 -1.624508 +v 4.873500 6.541500 1.624494 +v 4.873500 3.292501 -1.624507 +v -4.873500 6.541500 1.624494 +v -4.873500 3.292501 -1.624507 +v -1.624500 4.375500 -2.707507 +v 1.624500 4.375500 -2.707507 +v -1.624500 8.707500 -2.707505 +v 1.624500 8.707500 -2.707505 +v -0.541500 9.790502 -2.707505 +v 0.541500 9.790502 -2.707505 +v -4.332000 6.541500 2.165994 +v -4.332000 3.292501 -2.166007 +v 4.332000 3.292501 -2.166007 +v 4.332000 6.541500 2.165994 +v -2.166000 4.375500 -2.166007 +v 2.166000 4.375500 -2.166007 +v -2.166000 8.707500 -2.166005 +v 2.166000 8.707500 -2.166005 +v -0.541500 10.332002 -2.166005 +v 0.541500 10.332002 -2.166005 +v 3.249000 9.790500 2.165995 +v -3.249000 9.790500 2.165995 +v 3.249000 9.790499 5.414995 +v -3.249000 9.790499 5.414995 +v 3.249000 1.126499 5.414992 +v -3.249000 1.126499 5.414992 +v 3.249000 1.126501 2.165992 +v -3.249000 1.126501 2.165992 +v 3.249000 9.249001 2.165995 +v -3.249000 9.249001 2.165995 +v 3.249000 9.248999 5.414995 +v -3.249000 9.248999 5.414995 +v 3.790500 9.249001 2.165995 +v -3.790500 9.249001 2.165995 +v 3.790500 9.248999 5.956494 +v -3.790500 9.248999 5.956494 +v 3.790500 8.166000 2.165994 +v -3.790500 8.166000 2.165994 +v 3.790500 8.165998 5.956494 +v -3.790500 8.165998 5.956494 +v 3.249000 8.166000 2.165994 +v -3.249000 8.166000 2.165994 +v 3.249000 8.165998 5.414994 +v -3.249000 8.165998 5.414994 +v 3.249000 2.751001 2.165993 +v -3.249000 2.751001 2.165993 +v 3.249000 2.750999 5.414992 +v -3.249000 2.750999 5.414992 +v 3.790500 2.751001 2.165993 +v -3.790500 2.751001 2.165993 +v 3.790500 2.750999 5.956492 +v -3.790500 2.750999 5.956492 +v 3.790500 1.668001 2.165992 +v -3.790500 1.668001 2.165992 +v 3.790500 1.667999 5.956492 +v -3.790500 1.667999 5.956492 +v 3.249000 1.668001 2.165992 +v -3.249000 1.668001 2.165992 +v 3.249000 1.667999 5.414992 +v -3.249000 1.667999 5.414992 +v 2.166000 7.624498 5.523293 +v -2.166000 7.624498 5.523296 +v 2.166000 3.292500 5.523291 +v -2.166000 3.292500 5.523295 +vt 0.185185 1.000000 +vt 0.382716 0.846154 +vt 0.382716 1.000000 +vt 0.024691 0.307692 +vt 0.111111 0.326923 +vt 0.012346 0.326923 +vt 0.320988 0.307692 +vt 0.407407 0.326923 +vt 0.308642 0.326923 +vt 0.481481 0.576923 +vt 0.666667 0.596154 +vt 0.493827 0.596154 +vt 0.592593 0.307692 +vt 0.604938 0.326923 +vt 0.271605 0.480769 +vt 0.246914 0.461538 +vt 0.271605 0.461538 +vt 0.296296 0.230769 +vt 0.123457 0.307692 +vt 0.123457 0.230769 +vt 0.308642 0.307692 +vt 0.296296 0.307692 +vt 0.012346 0.307692 +vt -0.000000 0.307692 +vt 0.000000 0.230769 +vt 0.395062 0.230769 +vt 0.320988 0.230769 +vt 0.419753 0.230769 +vt 0.592593 0.230769 +vt 0.419753 0.307692 +vt 0.407407 0.307692 +vt 0.111111 0.307692 +vt 0.098765 0.230769 +vt 0.024691 0.230769 +vt 0.098765 0.192308 +vt 0.098765 0.076923 +vt 0.197531 0.807692 +vt 0.185185 0.846154 +vt 0.395062 0.807692 +vt 0.481481 0.846154 +vt 0.666667 0.807692 +vt 0.679012 0.846154 +vt 0.098765 0.807692 +vt 0.086420 0.846154 +vt 0.172840 0.807692 +vt 0.185185 0.711538 +vt 0.370370 0.807692 +vt 0.382716 0.711538 +vt 0.469136 0.807692 +vt 0.481481 0.596154 +vt 0.493827 0.807692 +vt 0.395062 0.711538 +vt 0.469136 0.596154 +vt 0.172840 0.711538 +vt 0.246914 0.673077 +vt 0.320988 0.673077 +vt 0.382716 0.326923 +vt 0.185185 0.461538 +vt 0.185185 0.326923 +vt 0.320988 0.519231 +vt 0.333333 0.673077 +vt 0.234568 0.519231 +vt 0.246914 0.519231 +vt 0.296296 0.461538 +vt 0.296296 0.480769 +vt 0.320988 0.480769 +vt 0.160494 0.692308 +vt 0.222222 0.673077 +vt 0.222222 0.692308 +vt 0.345679 0.673077 +vt 0.407407 0.692308 +vt 0.345679 0.692308 +vt 0.197531 0.326923 +vt 0.530864 0.384615 +vt 0.481481 0.576923 +vt 0.481481 0.326923 +vt 0.037037 0.384615 +vt 0.000000 0.326923 +vt 0.086420 0.326923 +vt 0.382716 0.576923 +vt 0.172840 0.596154 +vt 0.098765 0.596154 +vt 0.185185 0.576923 +vt 0.382716 0.461538 +vt 0.901235 0.384615 +vt 0.753086 0.500000 +vt 0.753086 0.384615 +vt 0.901235 0.500000 +vt 0.753086 0.807692 +vt 0.901235 0.807692 +vt 0.753086 0.923077 +vt 0.975309 0.807692 +vt 0.975309 0.500000 +vt 0.679012 0.500000 +vt 0.925926 0.307692 +vt 1.000000 0.326923 +vt 0.913580 0.326923 +vt 0.728395 0.307692 +vt 0.654321 0.326923 +vt 0.654321 0.307692 +vt 0.901235 0.307692 +vt 0.740741 0.326923 +vt 0.753086 0.307692 +vt 0.913580 0.365385 +vt 0.654321 0.365385 +vt 0.740741 0.365385 +vt 0.753086 0.384615 +vt 0.925926 0.384615 +vt 1.000000 0.365385 +vt 1.000000 0.384615 +vt 0.728395 0.384615 +vt 0.654321 0.384615 +vt 0.925926 0.923077 +vt 1.000000 0.942308 +vt 0.913580 0.942308 +vt 0.728395 0.923077 +vt 0.654321 0.942308 +vt 0.654321 0.923077 +vt 0.901235 0.923077 +vt 0.740741 0.942308 +vt 0.753086 0.923077 +vt 0.913580 0.980769 +vt 0.654321 0.980769 +vt 0.740741 0.980769 +vt 0.753086 1.000000 +vt 0.925926 1.000000 +vt 1.000000 0.980769 +vt 1.000000 1.000000 +vt 0.728395 1.000000 +vt 0.654321 1.000000 +vt 0.851852 -0.000000 +vt 0.654321 0.307692 +vt 0.654321 0.000000 +vt 0.074074 0.807692 +vt 0.086420 0.596154 +vt 0.395062 0.596154 +vt 0.086420 0.576923 +vt 0.098765 0.307692 +vt 0.395062 0.307692 +vt 0.679012 0.576923 +vt 0.246914 0.480769 +vt 0.123457 0.038462 +vt 0.296296 0.038462 +vt 0.320988 0.076923 +vt 0.320988 0.192308 +vt 0.197531 0.711538 +vt 0.370370 0.711538 +vt 0.333333 0.519231 +vt 0.234568 0.673077 +vt 0.320988 0.461538 +vt 0.160494 0.673077 +vt 0.407407 0.673077 +vt 0.222222 0.326923 +vt 0.530864 0.538462 +vt 0.567901 0.326923 +vt 0.086420 0.576923 +vt 0.037037 0.538462 +vt 0.901235 0.923077 +vt 0.679012 0.807692 +vt 1.000000 0.307692 +vt 0.901235 0.384615 +vt 1.000000 0.923077 +vt 0.901235 1.000000 +vt 0.851852 0.307692 +vt 0.074074 0.596154 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn -0.5774 0.5774 -0.5774 +vn 0.0000 0.0000 -1.0000 +vn 0.7071 0.0000 -0.7071 +vn -0.7071 -0.0000 0.7071 +vn 1.0000 -0.0000 0.0000 +vn 0.0000 -0.0000 1.0000 +vn 0.7071 -0.0000 0.7071 +vn -0.7071 0.0000 -0.7071 +vn -1.0000 -0.0000 0.0000 +vn 0.0000 -0.4472 -0.8944 +vn 0.8944 -0.4472 0.0000 +vn 0.0000 -0.4472 0.8944 +vn -0.8944 -0.4472 0.0000 +vn 0.0000 0.7071 -0.7071 +vn 0.5774 0.5774 -0.5774 +vn -0.4082 0.8165 -0.4082 +vn 0.4082 0.8165 -0.4082 +vn -0.5145 0.6860 -0.5145 +vn -0.5773 0.5774 -0.5774 +vn 0.5773 0.5774 -0.5774 +vn 0.5145 0.6860 -0.5145 +vn -0.5774 0.5774 -0.5773 +vn 0.5774 0.5774 -0.5773 +s off +f 244/355/77 242/356/77 241/357/77 +f 263/358/77 247/359/77 248/360/77 +f 262/361/77 245/362/77 246/363/77 +f 290/364/78 266/365/78 268/366/78 +f 245/362/77 259/367/77 248/368/77 +f 285/369/79 293/370/79 295/371/79 +f 250/372/80 260/373/80 252/374/80 +f 246/375/81 258/376/81 250/372/81 +f 248/377/82 259/378/82 251/379/82 +f 253/380/83 262/361/83 254/381/83 +f 259/367/84 249/382/84 251/383/84 +f 249/382/85 257/384/85 245/385/85 +f 252/374/86 260/373/86 247/386/86 +f 256/387/87 263/358/87 255/388/87 +f 252/374/78 256/389/78 255/390/78 +f 272/391/88 242/356/88 243/392/88 +f 274/393/89 241/394/89 242/356/89 +f 241/394/90 271/395/90 244/396/90 +f 275/397/91 243/392/91 244/398/91 +f 276/399/86 288/400/86 272/391/86 +f 270/401/81 289/402/81 274/393/81 +f 273/403/85 290/404/85 269/405/85 +f 273/403/83 278/406/83 277/407/83 +f 269/405/84 266/365/84 271/395/84 +f 275/397/87 280/408/87 276/399/87 +f 281/409/80 282/410/80 270/401/80 +f 248/411/84 290/412/84 245/413/84 +f 284/414/81 292/415/81 282/410/81 +f 281/409/86 293/416/86 283/417/86 +f 285/369/92 296/418/92 286/419/92 +f 296/418/93 284/420/93 286/419/93 +f 265/421/94 291/422/94 281/423/94 +f 292/424/95 267/425/95 282/426/95 +f 295/427/77 260/373/77 258/376/77 +f 293/428/80 288/429/80 247/430/80 +f 294/431/80 296/432/80 246/433/80 +f 277/407/96 289/434/96 290/364/96 +f 280/435/97 279/436/97 288/437/97 +f 290/412/83 246/433/83 245/413/83 +f 247/430/87 287/438/87 248/411/87 +f 298/439/78 299/440/78 297/441/78 +f 300/442/84 301/443/84 299/440/84 +f 302/444/77 303/445/77 301/443/77 +f 304/446/87 300/442/87 298/447/87 +f 301/443/83 297/448/83 299/440/83 +f 308/449/78 310/450/78 312/451/78 +f 307/452/78 309/453/78 305/454/78 +f 308/455/78 311/456/78 307/457/78 +f 310/450/87 316/458/87 312/451/87 +f 311/456/83 313/459/83 309/453/83 +f 312/451/84 315/460/84 311/456/84 +f 316/458/77 319/461/77 315/460/77 +f 320/462/77 314/463/77 318/464/77 +f 313/459/77 319/465/77 317/466/77 +f 324/467/78 326/468/78 328/469/78 +f 323/470/78 325/471/78 321/472/78 +f 324/473/78 327/474/78 323/475/78 +f 326/468/87 332/476/87 328/469/87 +f 327/474/83 329/477/83 325/471/83 +f 328/469/84 331/478/84 327/474/84 +f 332/476/77 335/479/77 331/478/77 +f 336/480/77 330/481/77 334/482/77 +f 329/477/77 335/483/77 333/484/77 +f 338/485/84 339/486/84 337/487/84 +f 271/488/82 287/489/82 275/397/82 +f 289/434/98 277/407/98 278/490/98 +f 288/437/99 279/436/99 287/491/99 +f 244/355/77 243/392/77 242/356/77 +f 263/358/77 264/492/77 247/359/77 +f 262/361/77 261/493/77 245/362/77 +f 290/364/78 287/494/78 266/365/78 +f 245/362/77 257/384/77 259/367/77 +f 285/369/100 283/495/100 293/370/100 +f 250/372/80 258/376/80 260/373/80 +f 250/372/81 254/381/81 246/375/81 +f 254/381/81 262/361/81 246/375/81 +f 251/379/82 255/388/82 248/377/82 +f 255/388/82 263/358/82 248/377/82 +f 253/380/83 261/493/83 262/361/83 +f 259/367/84 257/384/84 249/382/84 +f 261/493/85 253/380/85 245/385/85 +f 253/380/85 249/382/85 245/385/85 +f 264/492/86 256/387/86 247/386/86 +f 256/387/86 252/374/86 247/386/86 +f 256/387/87 264/492/87 263/358/87 +f 255/390/78 251/496/78 252/374/78 +f 251/496/78 249/497/78 252/374/78 +f 249/497/78 253/498/78 254/499/78 +f 254/499/78 250/372/78 249/497/78 +f 250/372/78 252/374/78 249/497/78 +f 272/391/88 270/401/88 242/356/88 +f 274/393/89 273/403/89 241/394/89 +f 241/394/90 269/405/90 271/395/90 +f 275/397/91 276/399/91 243/392/91 +f 243/392/86 276/399/86 272/391/86 +f 276/399/86 280/408/86 288/400/86 +f 288/400/86 265/500/86 272/391/86 +f 242/356/81 270/401/81 274/393/81 +f 270/401/81 267/501/81 289/402/81 +f 289/402/81 278/406/81 274/393/81 +f 241/394/85 273/403/85 269/405/85 +f 273/403/85 277/407/85 290/404/85 +f 290/404/85 268/366/85 269/405/85 +f 273/403/83 274/393/83 278/406/83 +f 269/405/84 268/366/84 266/365/84 +f 275/397/87 279/436/87 280/408/87 +f 272/391/80 265/500/80 281/409/80 +f 281/409/80 283/417/80 282/410/80 +f 283/417/80 285/369/80 284/414/80 +f 282/410/80 283/417/80 284/414/80 +f 285/369/80 286/419/80 284/414/80 +f 282/410/80 267/501/80 270/401/80 +f 270/401/80 272/391/80 281/409/80 +f 248/411/84 287/438/84 290/412/84 +f 284/414/81 294/502/81 292/415/81 +f 281/409/86 291/503/86 293/416/86 +f 285/369/92 295/371/92 296/418/92 +f 296/418/101 294/504/101 284/420/101 +f 265/421/94 288/505/94 291/422/94 +f 292/424/95 289/506/95 267/425/95 +f 258/376/77 246/363/77 296/507/77 +f 295/427/77 247/359/77 260/373/77 +f 258/376/77 296/507/77 295/427/77 +f 293/428/80 291/508/80 288/429/80 +f 247/430/80 295/509/80 293/428/80 +f 246/433/80 289/510/80 294/431/80 +f 289/510/80 292/511/80 294/431/80 +f 290/412/83 289/510/83 246/433/83 +f 247/430/87 288/429/87 287/438/87 +f 298/439/78 300/442/78 299/440/78 +f 300/442/84 302/444/84 301/443/84 +f 302/444/77 304/512/77 303/445/77 +f 304/446/87 302/444/87 300/442/87 +f 301/443/83 303/513/83 297/448/83 +f 308/449/78 306/514/78 310/450/78 +f 307/452/78 311/456/78 309/453/78 +f 308/455/78 312/451/78 311/456/78 +f 310/450/87 314/463/87 316/458/87 +f 311/456/83 315/460/83 313/459/83 +f 312/451/84 316/458/84 315/460/84 +f 316/458/77 320/515/77 319/461/77 +f 320/462/77 316/458/77 314/463/77 +f 313/459/77 315/460/77 319/465/77 +f 324/467/78 322/516/78 326/468/78 +f 323/470/78 327/474/78 325/471/78 +f 324/473/78 328/469/78 327/474/78 +f 326/468/87 330/481/87 332/476/87 +f 327/474/83 331/478/83 329/477/83 +f 328/469/84 332/476/84 331/478/84 +f 332/476/77 336/517/77 335/479/77 +f 336/480/77 332/476/77 330/481/77 +f 329/477/77 331/478/77 335/483/77 +f 338/485/84 340/518/84 339/486/84 +f 244/398/82 271/488/82 275/397/82 +f 271/488/82 266/519/82 287/489/82 +f 287/489/82 279/436/82 275/397/82 +o Head +v -0.541499 -3.458500 -4.873508 +v 0.541500 -3.458500 -4.873509 +v 4.332000 -3.999998 -4.873510 +v -4.331999 -3.999998 -4.873509 +v -1.082999 -3.999998 -4.873509 +v -4.331999 -4.541498 -4.873509 +v 1.083000 -3.999998 -4.873510 +v 4.332000 -4.541498 -4.873510 +v 4.332000 0.332001 -5.415009 +v -4.331999 0.332001 -5.415007 +v -4.331999 -4.541498 -5.415009 +v 4.332000 -4.541498 -5.415010 +v 1.083000 -3.999998 -5.415010 +v -1.083000 -3.999998 -5.415009 +v -4.331999 -3.999998 -5.415009 +v 4.332000 -3.999998 -5.415010 +v 0.541500 -3.458500 -5.415009 +v -0.541500 -3.458500 -5.415008 +v -4.331999 -8.332001 -5.415010 +v 4.332000 -8.332001 -5.415011 +v 0.541500 -0.750999 -5.415009 +v -0.541500 -0.750999 -5.415008 +v 5.415000 0.332001 -4.332007 +v 5.415000 -8.332001 -4.332010 +v -5.415000 -8.332001 -4.332010 +v -5.415000 0.332001 -4.332007 +v 4.332000 -9.415001 -4.332011 +v -4.331999 -9.415001 -4.332010 +v 5.415000 0.331997 4.331992 +v 5.415000 -8.332001 4.331989 +v -5.415000 -8.332001 4.331989 +v -5.415000 0.331997 4.331992 +v 4.332000 -9.415001 4.331988 +v -4.331999 -9.415001 4.331989 +v 4.332000 1.414997 4.331991 +v 4.332000 1.415001 -4.332008 +v -4.331999 1.415001 -4.332007 +v -4.331999 1.414997 4.331993 +v 4.332000 0.331997 5.414991 +v -4.331999 0.331997 5.414993 +v 4.332000 -8.332001 5.414989 +v -4.331999 -8.332001 5.414990 +v 0.541500 -0.750999 -4.873509 +v -0.541499 -0.750999 -4.873508 +v 6.498000 -0.209499 -3.249007 +v 6.498000 -2.375500 -3.249008 +v 5.415000 -2.375500 -4.332008 +v 5.415000 -0.209499 -4.332007 +v 6.498000 -0.209501 -0.000008 +v 6.498000 -2.375502 -0.000008 +v 6.498000 -2.375502 2.165992 +v 6.498000 -4.541500 2.165991 +v 6.498000 -2.375504 4.331991 +v 6.498000 -4.541502 6.497991 +v 6.498000 -3.458500 -3.249009 +v 6.498000 -5.624498 -3.249009 +v 5.415000 -5.624498 -4.332009 +v 5.415000 -3.458500 -4.332008 +v 6.498000 -3.458502 -0.000009 +v 6.498000 -5.624500 -0.000009 +v 6.498000 -5.624500 2.165990 +v 6.498000 -7.790501 2.165990 +v 6.498000 -5.624502 4.331990 +v 6.498000 -7.790504 6.497990 +v -5.415000 -0.209499 -4.332007 +v -5.415000 -2.375500 -4.332008 +v -6.498000 -2.375500 -3.249008 +v -6.498000 -0.209499 -3.249007 +v -5.415000 -3.458500 -4.332008 +v -5.415000 -5.624498 -4.332009 +v -6.498000 -5.624498 -3.249009 +v -6.498000 -3.458500 -3.249009 +v -6.498000 -2.375502 -0.000008 +v -6.498000 -0.209501 -0.000008 +v -6.498000 -5.624500 -0.000009 +v -6.498000 -3.458502 -0.000009 +v -6.498000 -4.541500 2.165991 +v -6.498000 -2.375502 2.165992 +v -6.498000 -7.790501 2.165990 +v -6.498000 -5.624500 2.165990 +v -6.498000 -4.541502 6.497991 +v -6.498000 -2.375504 4.331991 +v -6.498000 -7.790504 6.497990 +v -6.498000 -5.624502 4.331990 +v -3.249000 -8.332001 -3.249010 +v 3.249000 -8.332001 -3.249010 +v 4.332000 -8.332001 -4.332010 +v -4.332000 -8.332001 -4.332010 +v -3.249000 -9.415001 -3.249010 +v 3.249000 -9.415001 -3.249010 +v 5.415000 -13.205502 -5.415011 +v -5.415000 -13.205502 -5.415011 +v 4.061250 -11.039501 -4.061261 +v -4.061250 -11.039501 -4.061261 +v 0.541500 0.331997 5.414991 +v -0.541500 0.331997 5.414991 +v 0.541500 -8.332001 5.414989 +v -0.541500 -8.332001 5.414989 +v 0.541500 -9.415001 4.331988 +v -0.541500 -9.415001 4.331988 +v 0.541500 -9.415001 -4.332011 +v -0.541500 -9.415001 -4.332011 +v 0.541500 -0.209503 5.956491 +v -0.541500 -0.209503 5.956491 +v 0.541500 -8.332005 5.956488 +v -0.541500 -8.332005 5.956488 +v 0.541500 -9.956501 4.331988 +v -0.541500 -9.956501 4.331988 +v 0.541500 -9.956501 -3.790511 +v -0.541500 -9.956501 -3.790511 +v 6.498000 -0.209499 -3.249007 +v 6.498000 -2.375500 -3.249008 +v 5.415000 -2.375500 -4.332008 +v 5.415000 -0.209499 -4.332007 +v 6.498000 -0.209501 -0.000008 +v 6.498000 -2.375502 -0.000008 +v 6.498000 -2.375502 2.165992 +v 6.498000 -4.541500 2.165991 +v 6.498000 -2.375504 4.331991 +v 6.498000 -4.541502 6.497991 +v 6.498000 -3.458500 -3.249009 +v 6.498000 -5.624498 -3.249009 +v 5.415000 -5.624498 -4.332009 +v 5.415000 -3.458500 -4.332008 +v 6.498000 -3.458502 -0.000009 +v 6.498000 -5.624500 -0.000009 +v 6.498000 -5.624500 2.165990 +v 6.498000 -7.790501 2.165990 +v 6.498000 -5.624502 4.331990 +v 6.498000 -7.790504 6.497990 +v -5.415000 -0.209499 -4.332007 +v -5.415000 -2.375500 -4.332008 +v -6.498000 -2.375500 -3.249008 +v -6.498000 -0.209499 -3.249007 +v -5.415000 -3.458500 -4.332008 +v -5.415000 -5.624498 -4.332009 +v -6.498000 -5.624498 -3.249009 +v -6.498000 -3.458500 -3.249009 +v -6.498000 -2.375502 -0.000008 +v -6.498000 -0.209501 -0.000008 +v -6.498000 -5.624500 -0.000009 +v -6.498000 -3.458502 -0.000009 +v -6.498000 -4.541500 2.165991 +v -6.498000 -2.375502 2.165992 +v -6.498000 -7.790501 2.165990 +v -6.498000 -5.624500 2.165990 +v -6.498000 -4.541502 6.497991 +v -6.498000 -2.375504 4.331991 +v -6.498000 -7.790504 6.497990 +v -6.498000 -5.624502 4.331990 +v -3.249000 -8.332001 -3.249010 +v 3.249000 -8.332001 -3.249010 +v 4.332000 -8.332001 -4.332010 +v -4.332000 -8.332001 -4.332010 +v -3.249000 -9.415001 -3.249010 +v 3.249000 -9.415001 -3.249010 +v 5.415000 -13.205502 -5.415011 +v -5.415000 -13.205502 -5.415011 +v 4.061250 -11.039501 -4.061261 +v -4.061250 -11.039501 -4.061261 +vt 0.723684 0.307692 +vt 0.736842 0.346154 +vt 0.710526 0.346154 +vt 0.710526 0.653846 +vt 0.736842 0.653846 +vt 0.723684 0.692308 +vt 0.947368 0.692308 +vt 0.947368 0.653846 +vt 0.500000 0.692308 +vt 0.710526 0.692308 +vt 0.500000 0.653846 +vt 0.486842 0.692308 +vt 0.473684 0.653846 +vt 0.473684 0.346154 +vt 0.355263 0.384615 +vt 0.263158 0.346154 +vt 0.381579 0.384615 +vt 0.473684 0.500000 +vt 0.381579 0.480769 +vt 0.263158 0.500000 +vt 0.355263 0.480769 +vt 0.263158 0.653846 +vt 0.263158 0.519231 +vt 0.342105 0.500000 +vt 0.473684 0.519231 +vt 0.236842 0.653846 +vt 0.473684 0.692308 +vt 0.263158 0.692308 +vt 0.473684 1.000000 +vt 0.263158 1.000000 +vt 0.026316 0.346154 +vt 0.236842 0.346154 +vt 0.500000 0.346154 +vt 0.473684 0.307692 +vt 0.263158 -0.000000 +vt 0.473684 0.000000 +vt 0.947368 0.346154 +vt 0.263158 0.307692 +vt 0.250000 0.307692 +vt 0.026316 0.307692 +vt 0.026316 0.653846 +vt -0.000000 0.346154 +vt 0.013158 0.307692 +vt 0.736842 0.307692 +vt 0.947368 0.307692 +vt 0.710526 0.307692 +vt 0.500000 0.307692 +vt 0.486842 0.307692 +vt 0.013158 0.692308 +vt 0.000000 0.653846 +vt 0.236842 0.692308 +vt 0.250000 0.692308 +vt 0.473684 0.826923 +vt 0.486842 0.846154 +vt 0.473684 0.846154 +vt 0.565789 0.846154 +vt 0.605263 0.826923 +vt 0.618421 0.846154 +vt 0.565789 0.711538 +vt 0.578947 0.807692 +vt 0.565789 0.807692 +vt 0.618421 0.865385 +vt 0.697368 0.846154 +vt 0.697368 0.865385 +vt 0.710526 0.846154 +vt 0.697368 0.826923 +vt 0.710526 0.826923 +vt 0.605263 0.692308 +vt 0.578947 0.711538 +vt 0.578947 0.692308 +vt 0.565789 0.865385 +vt 0.618421 0.807692 +vt 0.605263 0.711538 +vt 0.618421 0.711538 +vt 0.697368 0.807692 +vt 0.605263 0.807692 +vt 0.578947 0.807692 +vt 0.486842 0.826923 +vt 0.486842 0.807692 +vt 0.500000 0.153846 +vt 0.473684 0.230769 +vt 0.473684 0.153846 +vt 0.578947 0.153846 +vt 0.500000 0.230769 +vt 0.631579 0.153846 +vt 0.578947 0.230769 +vt 0.684211 0.153846 +vt 0.631579 0.230769 +vt 0.500000 0.230769 +vt 0.473684 0.307692 +vt 0.473684 0.230769 +vt 0.578947 0.230769 +vt 0.500000 0.307692 +vt 0.631579 0.230769 +vt 0.578947 0.307692 +vt 0.684211 0.230769 +vt 0.631579 0.307692 +vt 0.263158 0.153846 +vt 0.236842 0.230769 +vt 0.236842 0.153846 +vt 0.263158 0.230769 +vt 0.236842 0.307692 +vt 0.236842 0.230769 +vt 0.157895 0.230769 +vt 0.157895 0.153846 +vt 0.157895 0.307692 +vt 0.105263 0.230769 +vt 0.157895 0.230769 +vt 0.105263 0.153846 +vt 0.105263 0.307692 +vt 0.052632 0.230769 +vt 0.105263 0.230769 +vt 0.052632 0.153846 +vt 0.250000 0.769231 +vt 0.236842 0.692308 +vt 0.263158 0.730769 +vt 0.250000 0.769231 +vt 0.236842 0.692308 +vt 0.263158 0.730769 +vt 0.960526 0.461538 +vt 0.986842 0.538462 +vt 0.960526 0.538462 +vt 0.986842 0.173077 +vt 0.960526 0.173077 +vt 0.947368 0.480769 +vt 0.947368 0.519231 +vt 1.000000 0.461538 +vt 1.000000 0.153846 +vt 0.986842 0.153846 +vt 0.960526 0.153846 +vt 0.947368 0.461538 +vt 0.960526 0.826923 +vt 1.000000 0.538462 +vt 0.986842 0.826923 +vt 1.000000 0.519231 +vt 0.986842 0.461538 +vt 1.000000 0.480769 +vt 0.947368 0.538462 +vt 0.947368 0.846154 +vt 0.960526 0.846154 +vt 0.986842 0.846154 +vt 0.578947 0.826923 +vt 0.605263 0.807692 +vt 0.473684 0.230769 +vt 0.500000 0.153846 +vt 0.473684 0.153846 +vt 0.500000 0.230769 +vt 0.578947 0.153846 +vt 0.578947 0.230769 +vt 0.631579 0.153846 +vt 0.631579 0.230769 +vt 0.684211 0.153846 +vt 0.473684 0.307692 +vt 0.500000 0.230769 +vt 0.473684 0.230769 +vt 0.500000 0.307692 +vt 0.578947 0.230769 +vt 0.578947 0.307692 +vt 0.631579 0.230769 +vt 0.631579 0.307692 +vt 0.684211 0.230769 +vt 0.236842 0.230769 +vt 0.263158 0.153846 +vt 0.236842 0.153846 +vt 0.236842 0.307692 +vt 0.263158 0.230769 +vt 0.236842 0.230769 +vt 0.157895 0.230769 +vt 0.157895 0.153846 +vt 0.105263 0.230769 +vt 0.157895 0.307692 +vt 0.105263 0.153846 +vt 0.157895 0.230769 +vt 0.052632 0.230769 +vt 0.105263 0.307692 +vt 0.052632 0.153846 +vt 0.105263 0.230769 +vt 0.263158 0.730769 +vt 0.236842 0.692308 +vt 0.250000 0.769231 +vt 0.263158 0.730769 +vt 0.236842 0.692308 +vt 0.250000 0.769231 +vt 0.736842 0.692308 +vt 0.394737 0.500000 +vt 0.236842 0.307692 +vt 0.026316 0.692308 +vt 0.486842 0.865385 +vt 0.736842 0.230769 +vt 0.736842 0.307692 +vt 0.263158 0.230769 +vt 0.263158 0.307692 +vt -0.000000 0.307692 +vt 0.000000 0.230769 +vt 0.223684 0.826923 +vt 0.263158 0.692308 +vt 0.223684 0.826923 +vt 0.263158 0.692308 +vt 0.947368 0.153846 +vt 1.000000 0.846154 +vt 0.736842 0.230769 +vt 0.736842 0.307692 +vt 0.263158 0.230769 +vt 0.263158 0.307692 +vt -0.000000 0.307692 +vt 0.000000 0.230769 +vt 0.263158 0.692308 +vt 0.223684 0.826923 +vt 0.263158 0.692308 +vt 0.223684 0.826923 +vn 0.5773 0.5774 0.5774 +vn 0.7071 -0.0000 0.7071 +vn 0.5773 -0.5774 0.5774 +vn 0.0000 -0.7071 0.7071 +vn 0.7071 -0.7071 0.0000 +vn 0.5774 -0.5774 -0.5774 +vn -0.0000 -0.0000 -1.0000 +vn 0.7071 0.0000 -0.7071 +vn -0.7071 0.0000 -0.7071 +vn 0.0000 -0.7071 -0.7071 +vn 0.0000 -1.0000 0.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 -0.0000 1.0000 +vn -0.0000 0.7071 -0.7071 +vn -0.5773 0.5774 -0.5774 +vn -0.7071 0.7071 0.0000 +vn -0.7071 -0.0000 0.7071 +vn -0.5774 0.5773 0.5774 +vn 0.0000 0.7071 0.7071 +vn 0.7071 0.7071 0.0000 +vn 0.5774 0.5774 -0.5774 +vn -0.5773 -0.5774 0.5774 +vn -0.7071 -0.7071 0.0000 +vn -0.5774 -0.5774 -0.5774 +vn 0.1644 0.9864 -0.0000 +vn -0.1644 0.9864 0.0000 +vn -0.1414 -0.9899 -0.0000 +vn 0.1414 -0.9899 0.0000 +s off +f 375/520/102 379/521/102 369/522/102 +f 379/521/103 370/523/103 369/522/103 +f 381/524/104 373/525/104 370/523/104 +f 374/526/105 381/524/105 382/527/105 +f 367/528/106 370/523/106 373/529/106 +f 364/530/107 367/531/107 360/532/107 +f 349/533/108 362/534/108 350/535/108 +f 361/536/108 356/537/108 357/538/108 +f 355/539/108 362/534/108 358/540/108 +f 359/541/108 351/542/108 354/543/108 +f 352/544/109 356/537/109 364/530/109 +f 355/539/110 351/542/110 365/545/110 +f 359/541/111 367/546/111 368/547/111 +f 368/547/112 373/548/112 374/549/112 +f 365/545/113 372/550/113 366/551/113 +f 363/552/114 370/523/114 364/530/114 +f 376/553/115 378/554/115 375/555/115 +f 380/556/116 381/524/116 379/521/116 +f 377/557/117 349/533/117 350/535/117 +f 366/551/118 377/558/118 350/535/118 +f 378/559/119 366/551/119 372/550/119 +f 371/560/120 380/561/120 372/550/120 +f 378/562/121 372/550/121 380/561/121 +f 380/556/122 375/563/122 378/564/122 +f 375/565/123 363/552/123 376/566/123 +f 363/552/124 349/533/124 376/567/124 +f 371/560/125 374/568/125 382/569/125 +f 368/570/126 371/560/126 365/545/126 +f 365/545/127 359/541/127 368/571/127 +f 355/572/114 346/573/114 351/574/114 +f 345/575/108 342/576/108 347/577/108 +f 362/578/114 341/579/114 358/580/114 +f 353/581/128 348/582/128 352/583/128 +f 352/584/113 343/585/113 356/586/113 +f 361/587/112 384/588/112 362/589/112 +f 354/590/129 346/573/129 345/575/129 +f 357/591/113 383/592/113 361/593/113 +f 356/594/130 342/576/130 357/595/130 +f 354/590/115 347/577/115 353/581/115 +f 358/596/131 344/597/131 355/598/131 +f 385/599/109 387/600/109 388/601/109 +f 389/602/114 386/603/114 385/599/114 +f 391/604/114 390/605/114 389/602/114 +f 393/606/114 392/607/114 391/604/114 +f 395/608/109 397/609/109 398/610/109 +f 399/611/114 396/612/114 395/608/114 +f 401/613/114 400/614/114 399/611/114 +f 403/615/114 402/616/114 401/613/114 +f 405/617/110 407/618/110 408/619/110 +f 409/620/110 411/621/110 412/622/110 +f 411/621/113 416/623/113 412/622/113 +f 407/618/113 414/624/113 408/619/113 +f 415/625/113 420/626/113 416/623/113 +f 413/627/113 418/628/113 414/624/113 +f 419/629/113 424/630/113 420/626/113 +f 417/631/113 422/632/113 418/628/113 +f 434/633/109 428/634/109 429/635/109 +f 433/636/103 427/637/103 430/638/103 +f 445/639/105 448/640/105 447/641/105 +f 444/642/116 445/639/116 443/643/116 +f 437/644/114 447/641/114 439/645/114 +f 438/646/113 444/642/113 436/647/113 +f 436/648/122 443/643/122 435/649/122 +f 437/650/114 443/643/114 445/639/114 +f 448/640/112 449/651/112 447/641/112 +f 440/652/113 450/653/113 448/640/113 +f 440/654/113 446/655/113 438/656/113 +f 439/657/114 449/651/114 441/658/114 +f 441/659/111 450/653/111 442/660/111 +f 345/575/108 344/597/108 341/661/108 +f 343/585/108 347/577/108 342/576/108 +f 342/662/108 384/588/108 383/592/108 +f 453/663/120 451/664/120 454/665/120 +f 452/666/113 455/667/113 451/664/113 +f 456/668/113 457/669/113 455/667/113 +f 458/670/113 459/671/113 457/669/113 +f 463/672/120 461/673/120 464/674/120 +f 462/675/113 465/676/113 461/673/113 +f 466/677/113 467/678/113 465/676/113 +f 468/679/113 469/680/113 467/678/113 +f 473/681/103 471/682/103 474/683/103 +f 477/684/103 475/685/103 478/686/103 +f 482/687/114 477/684/114 478/686/114 +f 480/688/114 473/681/114 474/683/114 +f 486/689/114 481/690/114 482/687/114 +f 484/691/114 479/692/114 480/688/114 +f 490/693/114 485/694/114 486/689/114 +f 488/695/114 483/696/114 484/691/114 +f 495/697/120 494/698/120 500/699/120 +f 496/700/110 493/701/110 499/702/110 +f 379/521/103 381/524/103 370/523/103 +f 374/526/105 373/703/105 381/524/105 +f 367/528/106 364/530/106 370/523/106 +f 349/533/108 361/536/108 362/534/108 +f 361/536/108 349/533/108 356/537/108 +f 355/539/108 350/535/108 362/534/108 +f 354/543/108 353/704/108 360/532/108 +f 353/704/108 352/544/108 360/532/108 +f 360/532/108 359/541/108 354/543/108 +f 356/537/109 349/533/109 363/552/109 +f 363/552/109 364/530/109 356/537/109 +f 364/530/109 360/532/109 352/544/109 +f 366/551/110 350/535/110 355/539/110 +f 351/542/110 359/541/110 365/545/110 +f 366/551/110 355/539/110 365/545/110 +f 359/541/111 360/532/111 367/546/111 +f 368/547/112 367/546/112 373/548/112 +f 365/545/113 371/560/113 372/550/113 +f 363/552/114 369/522/114 370/523/114 +f 376/553/115 377/557/115 378/554/115 +f 380/556/116 382/527/116 381/524/116 +f 377/557/117 376/553/117 349/533/117 +f 378/559/119 377/705/119 366/551/119 +f 371/560/120 382/569/120 380/561/120 +f 380/556/122 379/521/122 375/563/122 +f 375/565/123 369/522/123 363/552/123 +f 368/570/126 374/706/126 371/560/126 +f 355/572/114 344/597/114 346/573/114 +f 345/575/108 341/661/108 342/576/108 +f 362/578/114 384/588/114 341/579/114 +f 353/581/128 347/577/128 348/582/128 +f 352/584/113 348/582/113 343/585/113 +f 361/587/112 383/592/112 384/588/112 +f 354/590/129 351/707/129 346/573/129 +f 357/591/113 342/662/113 383/592/113 +f 356/594/130 343/585/130 342/576/130 +f 354/590/115 345/575/115 347/577/115 +f 358/596/131 341/661/131 344/597/131 +f 385/599/109 386/603/109 387/600/109 +f 389/602/114 390/605/114 386/603/114 +f 391/604/114 392/607/114 390/605/114 +f 393/606/114 394/708/114 392/607/114 +f 395/608/109 396/612/109 397/609/109 +f 399/611/114 400/614/114 396/612/114 +f 401/613/114 402/616/114 400/614/114 +f 403/615/114 404/709/114 402/616/114 +f 405/617/110 406/710/110 407/618/110 +f 409/620/110 410/711/110 411/621/110 +f 411/621/113 415/625/113 416/623/113 +f 407/618/113 413/627/113 414/624/113 +f 415/625/113 419/629/113 420/626/113 +f 413/627/113 417/631/113 418/628/113 +f 419/629/113 423/712/113 424/630/113 +f 417/631/113 421/713/113 422/632/113 +f 432/714/109 428/634/109 434/633/109 +f 428/634/109 425/715/109 429/635/109 +f 431/716/103 427/637/103 433/636/103 +f 427/637/103 426/717/103 430/638/103 +f 445/639/105 446/655/105 448/640/105 +f 444/642/116 446/655/116 445/639/116 +f 437/644/114 445/639/114 447/641/114 +f 438/646/113 446/655/113 444/642/113 +f 436/648/122 444/642/122 443/643/122 +f 437/650/114 435/718/114 443/643/114 +f 448/640/112 450/653/112 449/651/112 +f 440/652/113 442/719/113 450/653/113 +f 440/654/113 448/640/113 446/655/113 +f 439/657/114 447/641/114 449/651/114 +f 441/659/111 449/651/111 450/653/111 +f 345/575/108 346/573/108 344/597/108 +f 343/585/108 348/582/108 347/577/108 +f 342/662/108 341/579/108 384/588/108 +f 453/663/120 452/666/120 451/664/120 +f 452/666/113 456/668/113 455/667/113 +f 456/668/113 458/670/113 457/669/113 +f 458/670/113 460/720/113 459/671/113 +f 463/672/120 462/675/120 461/673/120 +f 462/675/113 466/677/113 465/676/113 +f 466/677/113 468/679/113 467/678/113 +f 468/679/113 470/721/113 469/680/113 +f 473/681/103 472/722/103 471/682/103 +f 477/684/103 476/723/103 475/685/103 +f 482/687/114 481/690/114 477/684/114 +f 480/688/114 479/692/114 473/681/114 +f 486/689/114 485/694/114 481/690/114 +f 484/691/114 483/696/114 479/692/114 +f 490/693/114 489/724/114 485/694/114 +f 488/695/114 487/725/114 483/696/114 +f 491/726/120 494/698/120 495/697/120 +f 494/698/120 498/727/120 500/699/120 +f 492/728/110 493/701/110 496/700/110 +f 493/701/110 497/729/110 499/702/110 +o LeftLeg +v 4.166000 18.000000 2.165998 +v 4.166000 18.000000 -2.166002 +v -0.166000 18.000000 -2.166002 +v -0.166000 18.000000 2.165998 +v -0.166000 11.501999 2.165996 +v -0.166000 11.502001 -2.166004 +v 4.166000 11.502001 -2.166004 +v 4.166000 11.501999 2.165996 +v 3.624500 17.458498 3.248997 +v 0.375500 17.458498 3.248998 +v 3.624500 12.584999 3.248996 +v 0.375500 12.584999 3.248997 +v 3.624500 12.043499 2.707496 +v 0.375500 12.043499 2.707497 +v 4.707500 15.833999 2.707498 +v 4.707500 15.834001 -1.624502 +v -0.707500 15.833999 2.707498 +v -0.707500 15.834001 -1.624502 +v -0.707500 12.043501 -1.624503 +v -0.707500 12.043499 2.707497 +v 4.707500 12.043501 -1.624503 +v 4.707500 12.043499 2.707497 +v 3.624500 12.043501 -2.707504 +v 0.375500 12.043501 -2.707503 +v 3.624500 15.834001 -2.707503 +v 0.375500 15.834001 -2.707502 +v 4.166000 15.834001 -2.166003 +v -0.166000 15.834001 -2.166002 +v 4.166000 15.833999 2.165997 +v -0.166000 15.833999 2.165998 +v 3.624500 17.999998 2.707498 +v 0.375500 17.999998 2.707499 +v 3.624500 17.458498 3.248997 +v 0.375500 17.458498 3.248998 +v 3.624500 12.584999 3.248996 +v 0.375500 12.584999 3.248997 +v 3.624500 12.043499 2.707496 +v 0.375500 12.043499 2.707497 +v 3.624500 17.999998 2.707498 +v 0.375500 17.999998 2.707499 +vt 0.450000 0.804348 +vt 0.275000 0.826087 +vt 0.300000 0.804348 +vt 0.925000 0.826087 +vt 0.700000 0.804348 +vt 0.950000 0.804348 +vt 0.500000 0.652174 +vt 0.500000 0.804348 +vt 0.050000 0.652174 +vt 0.250000 0.804348 +vt 0.050000 0.804348 +vt 0.675000 0.826087 +vt 0.475000 0.826087 +vt 0.075000 0.826087 +vt 0.700000 0.652174 +vt 0.650000 0.239130 +vt 0.500000 0.043478 +vt 0.650000 0.043478 +vt 0.650000 0.260870 +vt 0.500000 0.239130 +vt 0.450000 0.652174 +vt 0.475000 0.652174 +vt 0.300000 0.652174 +vt 0.925000 0.630435 +vt 0.950000 0.652174 +vt 0.675000 0.630435 +vt 0.475000 0.630435 +vt 0.250000 0.652174 +vt 0.075000 0.630435 +vt 0.275000 0.630435 +vt 0.925000 0.543478 +vt 0.725000 0.630435 +vt 0.725000 0.543478 +vt 0.475000 0.543478 +vt 0.675000 0.543478 +vt 0.275000 0.543478 +vt 0.075000 0.543478 +vt 0.475000 1.000000 +vt 0.275000 1.000000 +vt 0.650000 0.021739 +vt 0.275000 0.652174 +vt 0.500000 0.043478 +vt 0.650000 0.239130 +vt 0.650000 0.043478 +vt 0.500000 0.239130 +vt 0.650000 0.260870 +vt 0.650000 0.021739 +vt 0.725000 0.826087 +vt 0.500000 0.260870 +vt 0.500000 0.021739 +vt 0.500000 0.260870 +vt 0.500000 0.021739 +vn -0.0000 -0.7071 -0.7071 +vn 0.0000 -0.7071 0.7071 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.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.0000 -0.7071 +vn -0.0000 0.0000 -1.0000 +vn 0.0000 1.0000 -0.0000 +vn -0.0000 -1.0000 -0.0000 +vn 0.0000 0.7071 0.7071 +vn -0.7071 0.0000 -0.7071 +vn -0.0000 0.7071 -0.7071 +s off +f 523/730/132 506/731/132 524/732/132 +f 505/733/133 522/734/133 520/735/133 +f 516/736/134 522/734/134 521/737/134 +f 517/738/135 519/739/135 520/740/135 +f 521/737/136 508/741/136 507/742/136 +f 519/739/137 505/743/137 520/740/137 +f 515/744/138 520/735/138 522/734/138 +f 512/745/138 509/746/138 510/747/138 +f 514/748/133 511/749/133 512/745/133 +f 523/730/139 525/750/139 527/751/139 +f 526/752/140 523/730/140 524/732/140 +f 515/744/141 530/753/141 517/754/141 +f 529/755/141 516/736/141 527/756/141 +f 518/757/141 530/758/141 528/759/141 +f 526/752/141 527/756/141 525/750/141 +f 504/760/138 529/761/138 501/762/138 +f 529/755/134 502/763/134 501/764/134 +f 503/765/135 530/758/135 504/766/135 +f 502/763/140 528/759/140 503/765/140 +f 506/731/142 508/767/142 505/768/142 +f 509/746/143 532/769/143 510/747/143 +f 519/739/144 528/770/144 524/732/144 +f 533/771/140 536/772/140 534/773/140 +f 535/774/145 538/775/145 536/772/145 +f 540/776/132 533/771/132 534/773/132 +f 523/730/132 507/742/132 506/731/132 +f 505/733/133 508/777/133 522/734/133 +f 516/736/134 515/744/134 522/734/134 +f 517/738/135 518/757/135 519/739/135 +f 521/737/136 522/734/136 508/741/136 +f 519/739/137 506/731/137 505/743/137 +f 515/744/138 517/754/138 520/735/138 +f 512/745/138 511/749/138 509/746/138 +f 514/748/133 513/778/133 511/749/133 +f 516/736/139 521/737/139 527/751/139 +f 521/737/139 507/742/139 523/730/139 +f 527/751/139 521/737/139 523/730/139 +f 526/752/140 525/750/140 523/730/140 +f 515/744/141 529/761/141 530/753/141 +f 529/755/141 515/744/141 516/736/141 +f 518/757/141 517/738/141 530/758/141 +f 526/752/141 528/759/141 527/756/141 +f 504/760/138 530/753/138 529/761/138 +f 529/755/134 527/756/134 502/763/134 +f 503/765/135 528/759/135 530/758/135 +f 502/763/140 527/756/140 528/759/140 +f 506/731/142 507/742/142 508/767/142 +f 509/746/143 531/779/143 532/769/143 +f 506/731/144 519/739/144 524/732/144 +f 519/739/144 518/757/144 528/770/144 +f 528/770/144 526/752/144 524/732/144 +f 533/771/140 535/774/140 536/772/140 +f 535/774/145 537/780/145 538/775/145 +f 540/776/132 539/781/132 533/771/132 diff --git a/src/main/resources/assets/hbm/textures/armor/base/dnt_arm.png b/src/main/resources/assets/hbm/textures/armor/base/dnt_arm.png new file mode 100644 index 0000000000000000000000000000000000000000..bfaffafe9e5f7cfa65a6ba03b46847479f40da69 GIT binary patch literal 396 zcmV;70dxL|P)fFOYSJbj%g9w|a04q!j zBLje>V}RXoXz3W>&1fL^f$F6z4RJ=Lnd1vIk~UWdG&Dxds5WL)n`Vqs&O&&OFVINZ zTpa*x$JMwrpVFZ7g%761wzLCfyoK3TL`~Ps7&W8Xm{Dz}ubwLWH29ZHS>&JJxy*ko z3;p|Wu5=v$@V(p|P7TeYPnGHTvMlt&`SiIGsry_1F9Ny!dWC8xqh?eaGpfy9HG1Rp zy727N!FIxRsegA_Zl?q2ZhES1MCwnpUdG#e^%6Um9vau+@Vc^9>mJ&Bgra*llTkCO qP4RX)MUOx|f@a8xW-@90000b;z6n&`>8&zaQ>d=9y8(S}sL-Ynny+PG8^bj1OcgV`n z4XHB{qh$rDI~|aNNgV%gV-q6r77+i%dH%MazfA^D%ooc8#o2CFnQyxkCLs?MMbR6R zQU;50AxJ0y2q8MZDWxtF!>G?w8vmAKw%mA=?rUBRfV!F&prX1d~}EdTN^XSY3OFkJnCYt$*AjCKph)m#3}S8TJS=s*4eP46&6(733eC``xX$(gRgj;FqY7BSeyb8I?n+iisH<10 z!4^t^>PTJJ?6&s1Z?AVpIfa^wBhPbI8~dH#JH3T!k$RpfrBDoV>o&@GU8W zGHNacAw=Ve-0RB_1mEV_@Kb#yv$&uw)ZA6BRfT&C)eA={)rh=CEjyZjMg9TBJa<7t S2aJXQ00006o!8WxdpO;8!zC(OWb9F6vz62WPmiHnj0VnTt62{ zkT#hjg%(Jo4Q_!HOkp#zWswxgM@6#u0fGUEd?bH8@jX$rKmyeUI;DQyK%~^SQ9arF zr9Q;jRG;kEUdNf7HZGxDV#L~f6=$+=&TV?4!`pH^&Pj99ROdt=6~g*mdvq#~GXq6L z28xIbSObf8e1g?*| zfiP)FA8PBan=*+1O^}E=2RmmW2a7nyAm=LNAQ8tL+#H3p1{Sf0(12Dr3j*CTiHo}0 zwm90Hj;DXGf1#)?wAx2^Er?zbiAX=U5?@q>--i{Xlv%vPb`yw5-#xadRgI4;if%u2 z1v{3D$C-#U5nVOhcPNgi+)8UfBGS1$^1O}iIai;iLQt}825A#h>>*5< zb|(Pk9f; z?SIwe-k+!d?cJX^2LTO3gdBZ;;+zCDOs&rX0KP*{s#Br7g}Cs{v9}uwBj9JtzJPb9 z^S0|geDzc9e?xusXs0?w_onzL(V2n8iTI$82PcaX(TMkhc|mWGIU>?;7y$ar)MrI zuo$=l%;H4M5uq0)Vy+ZtQ6d8T0s;d9%L^R<04aGQ06<1nXC;S#zyMF=NR-D;w#Vis e2Uk{cX2>6ztp>!3$z&z~0000%bYru{Oz z?8LOEh#glb-Pizw!Jt&TJkMjhCOJDh+bdhI*Y|x61_Si_eNik)yJ!&shzDd2tW6{l zv1u$83-9wh&r8h&s$DBZYhNEjF7CR;!ga-m?;8Yz^Yx+VI=27Y5hliPE1AVjm2Iw*XuRw7Skoi zzUG<)iD+gt^wnxKo+?`qTTCsUSS)mcEfn= z6w|jUc-K!Im+Lj)B2{1RL=%rIT|#;Vbh(e~UkH_v4$U)$WwryHFd9#lOB~mZ z>#MuuoEG6kj?jD}ML8$_XEdIw<;|>6wj^uM3gYVBmvvf%6Mcl{6Md9+qWC$-0iBqN zC?|@Za~#NtDS2{Y0v<%9cF86=QFvCBTqo}U-2G)Lod73&VAO{<-cCgOmSEB}CuW(V z&Z(OEf1en8PCLY!SjX)tfcy6xhaN}__8GMHpBuMLKmd4~y^4xC!^a?(ckN#q*e{r< z=Nw%7RPiZ7h0t8!Td=8~Ufw65YiC^SZ-aqpPnZINz}t)E!Uc|9h5%_pXHJ3P}I8@n|Ad8RwO+TR-> zI_t~o3o4o=NoV3zmc`Ty6o%EFbTlkwx8vnvUT7cyB_e(AHY$dc7GyozyWe{K>t8p& z-dv{ktTFg`qTg3X9;OXk;vd$@?2>=vR*5?2K literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/armor/base/dnt_helmet_1.png b/src/main/resources/assets/hbm/textures/armor/base/dnt_helmet_1.png new file mode 100644 index 0000000000000000000000000000000000000000..60111df353f59b18012fe4afbe3c048d714dc126 GIT binary patch literal 873 zcmV-v1D5=WP)anlfMKu%*x%hT>Og7_i;T$Xh1@-?R;$6bZ3rQF46F8BR6czT z&Td|1Gi}!KdaE5E2tuPCJykmN(qJ>p^n9Fgh?N|cw`8?9K(#l(`ir+x$$A-J>0v89 z7nP9@)AQkT2$mSW95(s|)AKR-dn|ixcqR60S=NyNn_&Z(o{!2X>|gm+hqz($Rw*Xm zpo>WO0AM8N8M&pI1Zg*$rE{kr8Wz>V9$xrdNQWBFD{mD5@a%i|VBgih&80IrttB9AaGyjlejb~+5T03SKwfm=Cn5*K-9*;Nsy7TG)fSC+7vr;;P=nY5G$*8z0 zjpxhsb@OzR=p05w8%9JMMnoG%L>oqAAr;q;x5AnB))Fq&bq^z=4I`ptNIH%)o-j5V zjm)+}2o)hHL-}SDAw;TaLWo$~W!Q|OWJub!OJo zPxcG|I0kSddGaX#@2B=woSy7WeF!N^baS$m(#UjKRBSLdBjMW{+pJ%$i&jc4%PMU6 zB!~MQC7VwI6U@7mnkU{(p`1 zOrMB0jEFXjh&GIfHjId}?~;0tD*;t|T+6^8G604bG@t~=00000NkvXXu0mjfpUsjN literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/armor/base/dnt_leg.png b/src/main/resources/assets/hbm/textures/armor/base/dnt_leg.png new file mode 100644 index 0000000000000000000000000000000000000000..4e35c9c4051807d80f030ed041b12f82dee17246 GIT binary patch literal 394 zcmV;50d@X~P)b>!3`IYSTqIMw=Mud|HD~A*WL+UcW*#F~Xn^d^(i}w{ z5+!M1o3yDxLHQN~CP95m)VCnQ1R{{f;t8NB^)$THE?65EXvGCuae-E@zLf=!t3{{G zE1r54D4B5g@SGZd%#)ytw&s`E1zK@|R+<<1JU$2j`CIV9jWGDxGTVKg1)-M*?f2{ViK!OZz%A9`cypci$I`l~cYC;<3br~ZMq^JcL59&~|LT%Z*f oXhm(*TDq^g^{NY;`%4?*7eQ)On6s8J!~g&Q07*qoM6N<$f_fvX2><{9 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/armor/base/dnt_leg_1.png b/src/main/resources/assets/hbm/textures/armor/base/dnt_leg_1.png new file mode 100644 index 0000000000000000000000000000000000000000..813b33471e45e8f82f5baf0154e5b6e334e47577 GIT binary patch literal 468 zcmV;_0W1EAP)v^85kdg3q z+RByC2$ted44xTtf8i#0R<`D_)-A2ZT@9+KuM>m00u1o8tt98at#YoX+2VQ|f&l*u zFhD*bNLQ2R){$&Udbi)=+Y{Vuv8TRix}|bLD>J3o44C~eE{G^*ATJR|<>VF34j+7P z@4-f}6rCk|dF<5C^FZ~W$0+I4Jl#D2>?buu+#MDq{k?T9L&MrhyeBnnSg@|E4Go7z zehaZ$Pzmd)<|PNzjtYpa8S%3;^xC;wUH$lLRgJT9tk0c@k6>&E2~QIF4!f= zz34$L?*Y7k2iGk2mW^5yv!-Y2#m|JRXIh4Z7~?Wc6T}#Se|v2a%$KY*kCSbKKu7mD9UkJOu`OCRL`0000< KMNUMnLSTXcyU$1f literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/armor/dnt_arm.png b/src/main/resources/assets/hbm/textures/armor/dnt_arm.png new file mode 100644 index 0000000000000000000000000000000000000000..b4dd3a89dfd289d957d1c47727ced6582ff0b73a GIT binary patch literal 1154 zcmeAS@N?(olHy`uVBq!ia0vp^T0pGF!3HGbg1UWy6k~CayA#8@b22Z19F}xPUq=Rp zjs4tz5?O(K&H|6fVg?4j!ywFfJby(BP*9@8HKHUqKdq!Zu_%?HATcwqL@zJ3M8QPQ zP|q~QJpyPA^Jh;N$B+p3tC88k!iFMu>mRs#YZ^E$Y~6MtNMot4u0HG2PzM)*%DxVb zMM@8{3o2gUFFMBmZ&mg=)9A}fbza^meRyWhPV1fRMVHjfPae|{pZ6 z&6b;}Z{WV~8SARd$Yr}etm^PqS^Dmfvd^}Xb%8rxTe|Lw4~qU}dbH|ZV0B)9(oNY_ zg3Fd(i4FO=T;s}CKilv2fq73FejV@6Eci5s?bC9RvwIZd3;tC}d^NLM;_-=f_8Vz? zA-3}~YLnfs%(^9XIPqJRMC-(BSF{t~OyK2vcK)V8kNYljPT7e;fP! z>i@5|{@1;W>up31C3z%dc&yxgfT#cKn}9v#^OK{iW=9=ea_Gq+mBT5MgUTB}1xrUQ zjSB3`nl-=clgatiQ@1U2Ple61`I>xA;%wUH+7;baCR@*beCnO~cXp6eKsdXS{;9J| zB*G_OxwJ9KJGgvm*wvevrKJj=V#E!%?P4#_;pE+tH}Q3n#>bvZ-^+4=yk-B4R#jTB zUB~Bg??YE-gXC<hemij@TVSo(R<+X7Ro7PVo%!T-+4#@JX%`$; zzY_n;{>8Ye$gz2a-Rz%5rK`du=03KXQTyR0Sa$lK_AlCHWpLSRA6VyqkXq}UvHsF( zh;{SAXU%q4ysR>CjlomHS(VkArCWDd2~_U1lXQ!%=)L}ackuo04znjqdZq`MYyAH! z&wL|gO47sthwZ^ruNl@HWWC3kczT&o?g>vxXRuHJQvsWns~$gBiFIhE?BUxc%3+PA zUi@!G1rcgCeAr&HZkkFym&l8`snKQB^OE2RNlLOp;6_V1v+#m+&=TP z=*Krbmmk^;@f&Z8q#K!~^?nF4u{DA_nF`d5&bvMYqPM z@K6D3Y4{qkASkz3i=SUsRyOC1)I@ED+qLGL{2wdk^hPQdxgOZ9VlLV1c5{a5p=iM~ zwTb_acnY4aU3j@N^KsUPXe)8e+&|WN_aznm|L#~(J$ca*8-%%!Ifm0RK5as;7p=+pG*f!H%M6p=M?H(3ff5bAT}-{@U!SEqSLaPny7~Rj+CvO{ zDOOYDU-E2d`eRyoMx1v?fx-IRgacKR_Vj#Gp38VlMeo3s-Kux`9!xtD6T6Pppm5Qr zX?)w2mYv)X!S<0a{?r}zEZI{W>x4cQuU0F(sF3<@G2hpB_4nHhcpjTG>a;wOHoSNN QSVS;*y85}Sb4q9e0BErh0ssI2 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/armor/dnt_chest.png b/src/main/resources/assets/hbm/textures/armor/dnt_chest.png new file mode 100644 index 0000000000000000000000000000000000000000..6038482e33d1232deba5697fce7cd38e0663bf07 GIT binary patch literal 1057 zcmV++1m63JP)@yca!Z;NISyeg;^by$=i{B7oy}&?Uvlyfg3a)!;#I zFk(LKr_n*pr@ao}dAU;e?V!`?WNH`3vG34Y`u%>YY(Af_$Lw@EXt&#>z9{XyMFc>e zkT|g_k&B3B$N8e`hdWd&BEN~mah$r9 zh-IqhHf-(l=pRTgSJ`>gX67_qb<_fzeFq;RVCu8EAY zKo(IH5K!mr`12q4fTzD#LcVOCDP1SG-)3i$MU)+=LKNob!z;YO6(Gb3TiYy=xD1d2 z3q?R*c;DOTNU{?{3Mh`DOYN6A$w9iY6d|BEmK?0g?oO?UqAPUn@D(@Y3#C=xhoQPp zpcaua)_b%M0GJ++fm$ty6SaSYoW{R992Sy^N(PoFVu&J!$>h3hGFg=ug>L*J=io@v ziFZxo-mh(Z zM{Gj5<`Z@G=}r_exKbsgQ9zaZY~vHrWu#s6jBc522PgCfBc>8Z6>&{17_sT`I8ip$)*dIs<j3TBxr*ew_KGFA_ zwuwElh})9`>-QX+o`?_f8MN@vjjJXg06dQ#d-XZSTPK&-I%;w0fR9-|8E+`i>FGt=e5oJVY z2Hz968Ojp&b!6oa+ctsnSkfdX`b5_<9G>%z#xhnBRj)u@DZ^nqBqS$RT?Ah$8(6Yr bW3uuW0|R)X;45r>00000NkvXXu0mjf7>@x( literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/armor/dnt_helmet.png b/src/main/resources/assets/hbm/textures/armor/dnt_helmet.png new file mode 100644 index 0000000000000000000000000000000000000000..e10aebc4943dba36d93d48c59c76cfd3cc25a68b GIT binary patch literal 1532 zcmV>rw^W7v!fCOoTNtAkj@6N`DGF{*$V ziwM?gwPD)>aPFF>W89c=MB!1ISmF1&an3!lI5$qmv>6wSKoNn67?=<+RFiy9?}LL`tw1aZ89rEXKoJA=vzTnE5P8OvW))th5;BiN)c0SZ8fL z)75TmEddBhlbhF%O-hoszzAXKkH(t_a}v=QCY;NoGtiYdpa* z04QaJDwgYek#1s1E==KC?K!CS99;kA7fvGR%K$IL^1O(<@q%HIvgGBSjmpUc)_8&w zrQYJ;t`O@iwDeRH==Tpjfe;8K>n!d9mFvoU$FTuqdssMw{vQD!0Ibfd?7wOTHK(P)J2pTCcc zC*v?+qK+)TSjA{G0sv(4`QtZl{PmAw)fG5#e12GZ69DkVkw@UCOTQ*?OvW*PFZqmH zWJx9|o7YltUYPz`qkNXiV_OK_+vQ!3NgtevbE+QJ>WyMJCHaWYofZcGta^wn5ySHG zaxQX5M@JxHlGIcr3L~<&%ajaC8ei zOm52*_(jDdw1PPDfk{c6ynNEI1&(eP9+rWln=C5`!7f8ShD^?#7U%b?2LOQE0z%Bm ziBpzODt2}ZqY}R;;XLAGdsteQq!L*vMCd%>WM;{yHhG>ZV;;KBLDE2mp2gtmr5I%$^_Vtr$IiK>A=&^S)emk8Ai?1m$p#YrUSl zv6shoAAM!~$&w|2-+23u5z$V4&r0iYl_G|^62)`OdcB@IZpGQw!;P6dhLaCLwjOTK zJ0EP67H#jJzA8pcf0*|Q#0vMgicXm__TzVVX4fB9d*zlCX>)V4G+_1l>>gJNd739y z(Bm2|Ns3zdJBb)(%FM?w5uZ|eTxFw*5KHTEU8orL^mM2M`?wxgA(m)=3ir4!TnyXq z9mx!t*yHMVBI;ss%x4Vi_xrMtHU2BSeB(pjY_-sAv=ZAkZ~Ub;^nTphhhy8Y?LPLl zzn$yTqgIpp3xrH8N{%lgt+K&ox literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/armor/dnt_leg.png b/src/main/resources/assets/hbm/textures/armor/dnt_leg.png new file mode 100644 index 0000000000000000000000000000000000000000..ef4d6eb01599be6fe6d854364609ea537d4e2029 GIT binary patch literal 651 zcmV;60(AX}P)l&H6vuy*BvKE)&+|M885=%ywsIhx2)4yeIoM^+{SR+~T~%uxHoDcM zaqkVSsmGIpbpj0Kv1+^d+0}0PHSJ~kRS3dc0fzd5(7sLfx^--O+58Uvh!37%<%oUs zt;x5oUE?G(ZBZF8$(gLn@-|;r`9wqxUSnYH0(6;yATV7MuPEhyw*9TkH$9k zo7dj8NKELQQA$-_rY$sT2}&t9o7y5GrL^Xc_O-RLpac&ETM3#`^g*cT!4X7oQ^mfr z5o%&?@^k9N`-E4|bQuD2mxx;$%7>?f|}go(|2Cw0D$Lw1?dDKW@Oy#m!Ky1`|D?3;wu2o=Z`D^ z(n)Y~;7PD33SQ-am-vcb-@X8Fd3(pj{h&PZkKqX(k5IcHiXxu#73cFuE^qIE@`(HS ziYSVB`m<+(LI_AFEP#vqvPk;*itBWO5Q3);o(}uvAR~mBK{|OOGX*1H&oTog$-V#~ l%xm4jx&65I?9hKG{snFH9F+u-{4W3i002ovPDHLkV1iN`ICKC2 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/blocks/ore_nether_coal.png b/src/main/resources/assets/hbm/textures/blocks/ore_nether_coal.png index e00e124034633608a85dfe8d772163b2119d2b21..6767d305db808e423b16bb9c6e36ad75508bdd76 100644 GIT binary patch delta 1698 zcmV;T23`5a2c->=7k@Aa1^@s67+?BV00004b3#c}2nYxWda&Z+C)AWIwb(hm!Mc^JWl(VCWTT#pY9mn~QPxrl6(0fyj1YVhLVpsnKd@L%#JcYL*Yn5s z``kVEz0d1;%bJUegQDFIz^#c1l2&Q?@FN?&!^8N4K>*V2cGm6OiDPmPhnXFUknZLyvfATwbudokJroY)2BILHdFdoKL-+fdAYrvfsqju z6JBrWn8!nTYJWGsZWLJ-9Zkl-0FTDEBRbri3>at|9_FdUM5^{^SXJ7CJ!}~jt9m(i zQ-`3}XlU!}BhQzJW&aSJ=Bwz}DG?oRih7pPnE5%X%`pf%Io8@{60`;i)~w+#m7jAt zp%3})=hk8m4Mmb9I?W<_?bP8t;|T#kHS z(JSmoO2X}SlWU%b%Anz=m-TpkKB7DxD)RG@Bne59NUIOy%YBj5pYP@EKmbd3H$r4E zh}Y*sk|Z9Bi$l<Bqk_dOmKtJQqa+RB#EQ67Kh89o~vM9@j>jcw+&R3$1y6oM`z z0|1TRkAE~i4ygF-fDTu$6Y%g`n;J9FT31K&o(Qb9BD-4Wb2R-1=c{GNp3lk(KDodG zF#Y{SJxc*NVeCS$Rq}dgGA|@|B0Ajs?7W(AqmfFJiIBwsWCwF{g6;kN99?^zijzT( z&7aRVSJiTn&TEk^(_4Crqv8%HSX&XD_n7u#kWULIeS~ z&&STJEWY>9Ll5r3{zMx`*Iu9YK>p5|GhDoOjkbd;_;X7OsSiI)y4}u7O${o8hJWi( zQ8WnxTeVtRa-96AT1JU=DUF#T;?0|PJjg!m!?IsZr}-)=B|ijU^&5knFt(vzp#(0W zGH6K9hRp2&fPbKe@{gjXM?Cvu4cQ-0-OhbI&})^X9A{P!;!14y_dsPBW@2FAo*uY* z&+=NTlk&V6I?W>TyFGvlg<+gBd4H&UYJxy8$T{Gpx;k=#4FLT39}x&TBj^7eIpsl_ zX%GNcuXBb6mi;jRl>Es}!2%0q&-rEDw;hxolC2vkW|Dii| zZV&WYB{{){Sv?RP?(gQop&wjjJYny>J=nToXxamnK{LaH`jR;GS|#CM{C}R794BAy zi=;T|^0Wu?6HQG3d|Ke9YPm?KStL9B6mLB-%;I2>oe*Z2H%AO0Gy$?S4O#(kJKQrA2TQ~G^xyg1{ zAEXsuoV^dS5Bq3;Jq>GZGk^MZQ^0<+58x}Twc^};5a_W1AUfO}Yg;*^4^obE|2{At zo7yy2AGGCqzncdtgN?loD|=%>ubsTR4_v)Y{=Ojq+(56L*$3wiEdz|~YV~l+|oFBY)qr55E5G&FO(A zYxO<*KyySJ-NF@lUItBg0y1s;;mwZWZN+TgiPw%bN`g sscvsau29_ZVDoY_rW<$s5A4Bz0ge%Sq7=X)FaQ7m07*qoM6N<$g7?@qmH+?% delta 957 zcmV;u148_z4aNtM7k>~41^@s6AM^iV00004b3#c}2nYxWdN^vuh;G2pF6BD56j5F|@rUp&)9&VqH`TUO* zJGSWBXU3F>bGKi_H>dFV)&k93Cq{W00}~>3kk%)ie#hGQ6i^)G9VK z*-cEpZx9Z{OrH&3bsDo3c<~V%hGI3=k5h=54ACfrdrNt0cMgLk zNw8%f$!8{@P0!krL~mG6r4m7Vb#ak)Wu5{@l7FIi5=>3Oa162s3pv!JLov>wKPmBD z!6c=9?eNKO{1YgP2%xU^8z?*4g5|9QkqFGj;9Ei9z+OF8cN}%UM0KEuja&{? zQ%r=+H0_f4OO}~hyN>o)mmiD~0+Tj!Diu1L0-{KTf1Uh^ERAgfH5c^UmyWaNeg%~v zV1F50!m`6gN23k3-5tZ|juZ5HITH$TD3_zRu8!PGn+O8*%$OK(NW6072)e-y9PcjC zI%(kX{T{3(QPd`Pobr#BxfBi)O{KV-%_6DQoHFZpHfErqR?nC#O1sx5Jg{>1at*AzJU&)-ZyZmatpDCP^DA&25x)~R|bP| zl`3xB7?xlH>YO6k1*7qjRLKVw`uzWAq#5{YJV~V1dXxBJ7!rL#Xsx%ZsuFYG_k<9b z=XvKjNoHdV#+W3;dry{SyY5bj>Kkp_?y4W*`N-^?yWf{(!Fw+Th#ffRcz=7npO=p- zA%vd?+)$n`l;_JMiTs43D1d^l>xeNv3=zlp6#&yT0g&f80Cim_V-yz&pe)NxDFr}` zk)~-x?cpCNr5MMNbzQjy{TkNV%~~t2_5Z;q<04ZVnJ^)L00000NkvXXu0mjf7Pot1 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/coal.png b/src/main/resources/assets/hbm/textures/items/coal.png new file mode 100755 index 0000000000000000000000000000000000000000..5563b6fc7da7f14f8d232f159d78b29f414f5bfe GIT binary patch literal 267 zcmV+m0rdWfP)0uR~yLnug|irfu7}T7|#_^Rg^Q0BYBD&mjg@N-;Q&BMrmA zbF_tTS(aUgnEnB*>&ifyrd;DVW;h6f`v92xzCX5X1Q=ncm%A_lXXSZ*fDqP~0Wc&< zLS>EwS-4jqE@B~UCoZ_4OGpAKGR)-Lv&E8O$4s!W@ieD---q}7z<*gHq9USxI?=yr zt7Yamj;T~CR35Gn5%t~&`v8?c&Ha9#D2f=3MgTbH5D`6v(lj|>D`+$t1VO;3_kDOo z4mlR#WVj2-0T;u&e);B*Zyz6U^C9H$*(JSRk6NvUbB@=)cOm&~BBIVYoO7JN9B^>_ z9q&E$dY##9MzvZcO;hIcIrn!`*uiGAAxRQAP*$rIi^YQFa>=hRPf631^?D6ZNU@Wk z*=*vyC(E)NoTe$)UytA-Ab$S2kfM;_=iA35Nm4LpS;qCdBjP9L-24a$f;|`Y(}`MZ zHHsp2&Z%CF)mp38S~bRKtJTsl4AoC3Dk8flJsF}RqSji~v$3|@Z8gTIF-F5M)NZ${ zold9RyscBnU)UIYYE;E-7bYJ+&djMYS(f)JY0w=tr9?w-XT>t<807*qo IM6N<$f;P_5r~m)} literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/dns_boots.png b/src/main/resources/assets/hbm/textures/items/dns_boots.png new file mode 100644 index 0000000000000000000000000000000000000000..53fc8dd8e9e28f1ce9c3e0b7fefcefd0d3289108 GIT binary patch literal 175 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf=)|i=K<0)65-(;Yba9>xe8Vc1!nf(<3x@f31lSo2`1ESn{El@2 PZDjCt^>bP0l+XkKb7MDa literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/dns_helmet.png b/src/main/resources/assets/hbm/textures/items/dns_helmet.png new file mode 100644 index 0000000000000000000000000000000000000000..3ee0db2dd5b0b22be2802e3a892a7dce5f6f6e59 GIT binary patch literal 284 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf|97x&4NTheYnq`K(0dG?u6{1-oD!MHWlpy z_qMt`DA`w=#(ewNnl!$`88iRtDG3PfH!fB#=;3mCl5YI@;GboyLhGL{a5p-tjq<7H_EIx_HLH sMQ&P$1)GnP&i)M{XMUVGy6-FNgf%|RA6~FZ0Nu^t>FVdQ&MBb@02+2-hyVZp literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/dns_plate.png b/src/main/resources/assets/hbm/textures/items/dns_plate.png new file mode 100644 index 0000000000000000000000000000000000000000..88209433a57b0a5dc065e6389c99534c50412f89 GIT binary patch literal 331 zcmV-R0kr;!P)`BGCjG&r^xoHq z%#6*;B8hn>ko86-GsAliX0{;}Y1WkMie-{&gNST^h-y(0LioWwYP(h4sns0hc@CiZo~J(?Ts^Lh>xyU-W9YUu dq1*Srume?9alhGg_#yxR002ovPDHLkV1jOPhoS%g literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/gas_mask_filter_mono.png b/src/main/resources/assets/hbm/textures/items/gas_mask_filter_mono.png new file mode 100644 index 0000000000000000000000000000000000000000..83a5a560c8b91d1299e034734790c28e457c1e98 GIT binary patch literal 285 zcmV+&0pk9NP)7U5{k^^bm5y5Fgdr2G00000NkvXXu0mjfwdi&6 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/gas_mask_mono.png b/src/main/resources/assets/hbm/textures/items/gas_mask_mono.png new file mode 100644 index 0000000000000000000000000000000000000000..b5cdf1bb66f541361e7b9feab94386560aa57a11 GIT binary patch literal 278 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf%D+RgQ= zUhV(&^TYb{t2DTlZ!LR2V}5Obm!;;@XbA_ems5h+%j-=x>nvWSmA*DLHhkB*!xGKc zZmD`UZ53;%oOhmg&DJlq^$rZjBn}za)HD>z%%5@lephOwRYRf#N7I8H%QLwgVz2w# zFK1}5Ie&LsuFvHbfhLQ-&P5%|GX4Ji)k>Hy(3Beap;rFND&Zj(YyV3r{8^5MDHa^s5 kWd8Q{cKf75ZF~$2KMtx%t5?)70y=@g)78&qol`;+00$dLD*ylh literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/models/ModelM65Mono.png b/src/main/resources/assets/hbm/textures/models/ModelM65Mono.png new file mode 100644 index 0000000000000000000000000000000000000000..9e44aee645f87c60d884fc4ba5dadf2c13646acb GIT binary patch literal 585 zcmV-P0=E5$P)fl3n#6B1~)+Q!DpXR)!NqWMTn zEG(>i2OFOPTg)zyz2Y(+AGfIY`Q@79*Dx#tGy9(z0O;uW-*Mi3z;d}Xj4>2N0RSMI zj@#|_VT>Q|Ccqf`(zT8b;_WGTg~eiFZ0q~|-f;jR3`3)}1^{TSF`v(Ixm@m!oO5Wc zvDs`K09dcrhJ1o;Uq_LI|U^ zhLqB1ts#UkNs|1Lxe&roFFZmiWwmYR0MH{Nj$?jDazRdZIxP z7^M`ds={nGGXPLk6D209Z$iR#-ItZH1}A$uoxb#b_zJCmM6`3@xs31dZC^twL7wOLwfY47bqP8;{uMs~ X4|_E?n2*7(00000NkvXXu0mjfwU!C6 literal 0 HcmV?d00001 diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index de7b79be7..c9ae63ac9 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-3822", + "version":"1.0.27-3826", "mcversion": "1.7.10", "url": "", "updateUrl": "",