well if it isn't sussy jack

This commit is contained in:
Bob 2022-04-24 21:03:19 +02:00
parent 22aa659299
commit 079045c48f
56 changed files with 21600 additions and 7963 deletions

View File

@ -80,5 +80,5 @@ public interface IFluidConnector {
}
}
public static final boolean particleDebug = true;
public static final boolean particleDebug = false;
}

View File

@ -544,7 +544,7 @@ public class ModBlocks {
public static Block vault_door;
public static Block blast_door;
public static Block transision_seal;
public static Block transition_seal;
public static Block door_metal;
public static Block door_office;
@ -1999,7 +1999,7 @@ public class ModBlocks {
vault_door = new VaultDoor(Material.iron).setBlockName("vault_door").setHardness(10.0F).setResistance(10000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":vault_door");
blast_door = new BlastDoor(Material.iron).setBlockName("blast_door").setHardness(10.0F).setResistance(10000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":blast_door");
transision_seal = new BlockDoorGeneric(Material.iron, DoorDecl.TRANSITION_SEAL).setBlockName("transission_seal").setHardness(10.0F).setResistance(10000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":transission_seal");
transition_seal = new BlockDoorGeneric(Material.iron, DoorDecl.TRANSITION_SEAL).setBlockName("transition_seal").setHardness(10.0F).setResistance(10000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":transition_seal");
door_metal = new BlockModDoor(Material.iron).setBlockName("door_metal").setHardness(5.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":door_metal");
door_office = new BlockModDoor(Material.iron).setBlockName("door_office").setHardness(10.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":door_office");
@ -2881,7 +2881,7 @@ public class ModBlocks {
//Vault Door
GameRegistry.registerBlock(vault_door, vault_door.getUnlocalizedName());
GameRegistry.registerBlock(blast_door, blast_door.getUnlocalizedName());
GameRegistry.registerBlock(transision_seal, transision_seal.getUnlocalizedName());
GameRegistry.registerBlock(transition_seal, transition_seal.getUnlocalizedName());
//Doors
GameRegistry.registerBlock(door_metal, door_metal.getUnlocalizedName());

View File

@ -1,8 +1,10 @@
package com.hbm.blocks.fluid;
import java.util.List;
import java.util.Random;
import com.hbm.lib.RefStrings;
import com.hbm.main.MainRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@ -10,6 +12,8 @@ import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.Entity;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items;
import net.minecraft.util.DamageSource;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
@ -71,6 +75,13 @@ public class GenericFluidBlock extends BlockFluidClassic {
if(entity.ticksExisted % 20 == 0 && !world.isRemote) {
entity.attackEntityFrom(damageSource, damage * 0.1F);
if(entity.isDead && ((EntityItem)entity).getEntityItem().getItem() == Items.slime_ball) {
List<EntityPlayer> players = world.getEntitiesWithinAABB(EntityPlayer.class, entity.boundingBox.expand(10, 10, 10));
for(EntityPlayer player : players)
player.triggerAchievement(MainRegistry.achSulfuric);
}
}
if(entity.ticksExisted % 5 == 0) {
world.spawnParticle("cloud", entity.posX, entity.posY, entity.posZ, 0.0, 0.0, 0.0);

View File

@ -98,10 +98,5 @@ public class BlockNTMFlower extends BlockEnumMulti implements IPlantable, IToolt
}
@Override
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) {
if(stack.getItemDamage() == 3) {
list.add("haha get it? it's funny because drugs");
}
}
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) { }
}

View File

@ -24,6 +24,7 @@ public class GeneralConfig {
public static boolean enableReflectorCompat = false;
public static boolean enableRenderDistCheck = true;
public static boolean enableCustomDashKeybind = false;
public static int hintPos = 0;
public static boolean enable528 = false;
public static boolean enable528ReasimBoilers = true;
@ -71,6 +72,8 @@ public class GeneralConfig {
enableRenderDistCheck = config.get(CATEGORY_GENERAL, "1.25_enableRenderDistCheck", true).getBoolean(true);
enableCustomDashKeybind = config.get(CATEGORY_GENERAL, "1.26_enableCustomDashKeybind", false).getBoolean(false);
hintPos = CommonConfig.createConfigInt(config, CATEGORY_GENERAL, "1.27_hudOverlayPosition", "0: Top left\n1: Top right\n2: Center right\n3: Center Left", 0);
final String CATEGORY_528 = CommonConfig.CATEGORY_528;
config.addCustomCategoryComment(CATEGORY_528, "CAUTION\n"

View File

@ -15,6 +15,7 @@ public class PotionConfig {
public static int phosphorusID = 70;
public static int stabilityID = 71;
public static int potionsicknessID = 72;
public static int deathID = 72;
public static int potionSickness = 0;
@ -32,6 +33,7 @@ public class PotionConfig {
phosphorusID = CommonConfig.createConfigInt(config, CATEGORY_POTION, "8.08_phosphorusPotionID", "What potion ID the phosphorus effect will have", 70);
stabilityID = CommonConfig.createConfigInt(config, CATEGORY_POTION, "8.09_stabilityPotionID", "What potion ID the stability effect will have", 71);
potionsicknessID = CommonConfig.createConfigInt(config, CATEGORY_POTION, "8.10_potionsicknessID", "What potion ID the potion sickness effect will have", 72);
deathID = CommonConfig.createConfigInt(config, CATEGORY_POTION, "8.11_deathID", "What potion ID the death effect will have", 73);
String s = CommonConfig.createConfigString(config, CATEGORY_POTION, "8.S0_potionSickness", "Valid configs include \"NORMAL\" and \"TERRARIA\", otherwise potion sickness is turned off", "OFF");

View File

@ -3,6 +3,7 @@ package com.hbm.crafting;
import com.hbm.blocks.ModBlocks;
import com.hbm.config.GeneralConfig;
import com.hbm.inventory.fluid.Fluids;
import com.hbm.items.ItemEnums;
import com.hbm.items.ModItems;
import com.hbm.main.CraftingManager;
@ -116,7 +117,7 @@ public class ConsumableRecipes {
CraftingManager.addShapelessAuto(new ItemStack(ModItems.radx, 1), new Object[] { COAL.dust(), COAL.dust(), F.dust() });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.fmn, 1), new Object[] { COAL.dust(), PO210.dust(), ST.dust() });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.five_htp, 1), new Object[] { COAL.dust(), EUPH.dust(), ModItems.canteen_fab });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.cigarette, 16), new Object[] { ASBESTOS.ingot(), ANY_TAR.any(), PO210.nugget() });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.cigarette, 16), new Object[] { ASBESTOS.ingot(), ANY_TAR.any(), PO210.nugget(), DictFrame.fromOne(ModItems.plant_item, ItemEnums.EnumPlantType.TOBACCO) });
if(GeneralConfig.enableLBSM && GeneralConfig.enableLBSMSimpleMedicineRecipes) {
CraftingManager.addShapelessAuto(new ItemStack(ModItems.siox, 8), new Object[] { COAL.dust(), ASBESTOS.dust(), GOLD.nugget() });

View File

@ -1,9 +1,11 @@
package com.hbm.crafting;
import com.hbm.blocks.ModBlocks;
import com.hbm.blocks.generic.BlockNTMFlower.EnumFlowerType;
import com.hbm.inventory.OreDictManager.DictFrame;
import com.hbm.items.ModItems;
import com.hbm.items.ItemEnums.EnumCokeType;
import com.hbm.items.ItemEnums.EnumPlantType;
import com.hbm.items.ItemEnums.EnumTarType;
import com.hbm.items.machine.ItemBattery;
import com.hbm.items.special.ItemHot;
@ -107,9 +109,10 @@ public class SmeltingRecipes {
GameRegistry.addSmelting(ModItems.tank_waste, new ItemStack(ModItems.tank_waste), 0.0F);
GameRegistry.addSmelting(ModItems.rag_damp, new ItemStack(ModItems.rag), 0.1F);
GameRegistry.addSmelting(ModItems.rag_piss, new ItemStack(ModItems.rag), 0.1F);
GameRegistry.addSmelting(DictFrame.fromOne(ModBlocks.plant_flower, EnumFlowerType.TOBACCO), DictFrame.fromOne(ModItems.plant_item, EnumPlantType.TOBACCO), 0.1F);
GameRegistry.addSmelting(Items.bone, new ItemStack(Items.slime_ball, 3), 0.0F);
GameRegistry.addSmelting(new ItemStack(Items.dye, 1, 15), new ItemStack(Items.slime_ball, 1), 0.0F);
//GameRegistry.addSmelting(Items.bone, new ItemStack(Items.slime_ball, 3), 0.0F);
//GameRegistry.addSmelting(new ItemStack(Items.dye, 1, 15), new ItemStack(Items.slime_ball, 1), 0.0F);
GameRegistry.addSmelting(new ItemStack(Blocks.gravel, 1), new ItemStack(Blocks.cobblestone, 1), 0.0F);
GameRegistry.addSmelting(new ItemStack(ModBlocks.gravel_obsidian), new ItemStack(Blocks.obsidian), 0.0F);
GameRegistry.addSmelting(new ItemStack(ModBlocks.gravel_diamond), new ItemStack(Items.diamond), 3.0F);

View File

@ -973,6 +973,17 @@ public class AssemblerRecipes {
new ComparableStack(ModItems.tank_steel, 3)
}, 200);
makeRecipe(new ComparableStack(ModBlocks.transition_seal, 1), new AStack[]{
new ComparableStack(ModBlocks.cmb_brick_reinforced, 16),
new OreDictStack(STEEL.plate(), 64),
new OreDictStack(ALLOY.plate(), 40),
new ComparableStack(ModItems.plate_polymer, 36),
new OreDictStack(STEEL.block(), 24),
new ComparableStack(ModItems.motor_desh, 16),
new ComparableStack(ModItems.bolt_dura_steel, 12),
new OreDictStack(KEY_YELLOW, 4)
}, 5000);
if(Loader.isModLoaded("Mekanism")) {
Block mb = (Block) Block.blockRegistry.getObject("Mekanism:MachineBlock");

View File

@ -25,4 +25,9 @@ public class ItemEnums {
TIER2,
TIER3
}
public static enum EnumPlantType {
TOBACCO,
ROPE
}
}

View File

@ -9,7 +9,7 @@ import com.hbm.handler.WeaponAbility;
import com.hbm.handler.guncfg.*;
import com.hbm.interfaces.ICustomWarhead.SaltedFuel.HalfLifeType;
import com.hbm.inventory.fluid.Fluids;
import com.hbm.items.ItemEnums.EnumLegendaryType;
import com.hbm.items.ItemEnums.*;
import com.hbm.items.armor.*;
import com.hbm.items.armor.IArmorDisableModel.EnumPlayerPart;
import com.hbm.items.bomb.*;
@ -502,6 +502,7 @@ public class ModItems {
public static Item biomass;
public static Item biomass_compressed;
public static Item bio_wafer;
public static Item plant_item;
public static Item coil_copper;
public static Item coil_copper_torus;
@ -1941,6 +1942,7 @@ public class ModItems {
public static Item upgrade_nullifier;
public static Item upgrade_screm;
public static Item upgrade_gc_speed;
public static Item upgrade_5g;
public static Item ingot_euphemium;
public static Item nugget_euphemium;
@ -2757,12 +2759,12 @@ public class ModItems {
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");
oil_tar = new ItemEnumMulti(ItemEnums.EnumTarType.class, true, true).setUnlocalizedName("oil_tar").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":oil_tar");
oil_tar = new ItemEnumMulti(EnumTarType.class, true, true).setUnlocalizedName("oil_tar").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":oil_tar");
solid_fuel = new Item().setUnlocalizedName("solid_fuel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":solid_fuel");
solid_fuel_presto = new Item().setUnlocalizedName("solid_fuel_presto").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":solid_fuel_presto");
solid_fuel_presto_triplet = new Item().setUnlocalizedName("solid_fuel_presto_triplet").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":solid_fuel_presto_triplet");
rocket_fuel = new Item().setUnlocalizedName("rocket_fuel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":rocket_fuel");
coke = new ItemEnumMulti(ItemEnums.EnumCokeType.class, true, true).setUnlocalizedName("coke").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":coke");
coke = new ItemEnumMulti(EnumCokeType.class, true, true).setUnlocalizedName("coke").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":coke");
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");
@ -2987,6 +2989,7 @@ public class ModItems {
biomass = new Item().setUnlocalizedName("biomass").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":biomass");
biomass_compressed = new Item().setUnlocalizedName("biomass_compressed").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":biomass_compressed");
bio_wafer = new ItemLemon(4, 2F, false).setUnlocalizedName("bio_wafer").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":bio_wafer");
plant_item = new ItemEnumMulti(EnumPlantType.class, true, true).setUnlocalizedName("plant_item").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plant_item");
coil_copper = new Item().setUnlocalizedName("coil_copper").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":coil_copper");
coil_copper_torus = new Item().setUnlocalizedName("coil_copper_torus").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":coil_copper_torus");
@ -4650,6 +4653,7 @@ public class ModItems {
upgrade_nullifier = new ItemMachineUpgrade().setUnlocalizedName("upgrade_nullifier").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":upgrade_nullifier");
upgrade_screm = new ItemMachineUpgrade().setUnlocalizedName("upgrade_screm").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":upgrade_screm");
upgrade_gc_speed = new ItemMachineUpgrade().setUnlocalizedName("upgrade_gc_speed").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":upgrade_gc_speed");
upgrade_5g = new ItemMachineUpgrade().setUnlocalizedName("upgrade_5g").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":upgrade_5g");
wand = new ItemWand().setUnlocalizedName("wand_k").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setFull3D().setTextureName(RefStrings.MODID + ":wand");
wand_s = new ItemWandS().setUnlocalizedName("wand_s").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setFull3D().setTextureName(RefStrings.MODID + ":wand_s");
@ -6144,6 +6148,9 @@ public class ModItems {
GameRegistry.registerItem(deuterium_filter, deuterium_filter.getUnlocalizedName());
GameRegistry.registerItem(parts_legendary, parts_legendary.getUnlocalizedName());
//Plant Products
GameRegistry.registerItem(plant_item, plant_item.getUnlocalizedName());
//Teleporter Parts
GameRegistry.registerItem(telepad, telepad.getUnlocalizedName());
GameRegistry.registerItem(entanglement_kit, entanglement_kit.getUnlocalizedName());
@ -6573,6 +6580,7 @@ public class ModItems {
GameRegistry.registerItem(upgrade_nullifier, upgrade_nullifier.getUnlocalizedName());
GameRegistry.registerItem(upgrade_screm, upgrade_screm.getUnlocalizedName());
GameRegistry.registerItem(upgrade_gc_speed, upgrade_gc_speed.getUnlocalizedName());
GameRegistry.registerItem(upgrade_5g, upgrade_5g.getUnlocalizedName());
//Machine Templates
GameRegistry.registerItem(siren_track, siren_track.getUnlocalizedName());

View File

@ -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 (4200)";
public static final String VERSION = "1.0.27 BETA (4214)";
//HBM's Beta Naming Convention:
//V T (X)
//V -> next release version

View File

@ -73,6 +73,7 @@ import com.hbm.render.util.RenderInfoSystem;
import com.hbm.render.util.RenderInfoSystem.InfoEntry;
import com.hbm.sound.AudioWrapper;
import com.hbm.sound.AudioWrapperClient;
import com.hbm.sound.AudioWrapperClientStartStop;
import com.hbm.sound.nt.ISoundSourceTE;
import com.hbm.sound.nt.SoundWrapper;
import com.hbm.sound.nt.SoundWrapperClient;
@ -1617,6 +1618,13 @@ public class ClientProxy extends ServerProxy {
return audio;
}
@Override
public AudioWrapper getLoopedSoundStartStop(World world, String sound, String start, String stop, float x, float y, float z, float volume, float pitch) {
AudioWrapperClientStartStop audio = new AudioWrapperClientStartStop(world, sound == null ? null : new ResourceLocation(sound), start, stop, volume);
audio.updatePosition(x, y, z);
return audio;
}
@Override
public SoundWrapper getTileSound(String sound, ISoundSourceTE tile) {
SoundWrapperClient wrapper = new SoundWrapperClient(sound, tile);

View File

@ -4,6 +4,7 @@ import java.util.ArrayList;
import java.util.List;
import com.hbm.blocks.ModBlocks;
import com.hbm.blocks.generic.BlockNTMFlower.EnumFlowerType;
import com.hbm.config.GeneralConfig;
import com.hbm.crafting.*;
import com.hbm.crafting.handlers.*;
@ -14,6 +15,7 @@ import static com.hbm.inventory.OreDictManager.*;
import com.hbm.items.ModItems;
import com.hbm.items.ItemEnums.EnumLegendaryType;
import com.hbm.items.ItemEnums.EnumPlantType;
import com.hbm.items.machine.ItemBattery;
import com.hbm.items.special.ItemCircuitStarComponent.CircuitComponentType;
import com.hbm.items.special.ItemHolotapeImage.EnumHoloImage;
@ -198,7 +200,7 @@ public class CraftingManager {
addRecipeAuto(new ItemStack(ModItems.sphere_steel, 1), new Object[] { "PIP", "I I", "PIP", 'P', STEEL.plate(), 'I', STEEL.ingot() });
addRecipeAuto(new ItemStack(ModItems.pedestal_steel, 1), new Object[] { "P P", "P P", "III", 'P', STEEL.plate(), 'I', STEEL.ingot() });
addRecipeAuto(new ItemStack(ModItems.lemon, 1), new Object[] { " D ", "DSD", " D ", 'D', KEY_YELLOW, 'S', "stone" });
addRecipeAuto(new ItemStack(ModItems.blade_titanium, 2), new Object[] { "TP", "TP", "TT", 'P', TI.plate(), 'T', TI.ingot() });
addRecipeAuto(new ItemStack(ModItems.blade_titanium, 4), new Object[] { "TP", "TP", "TT", 'P', TI.plate(), 'T', TI.ingot() });
addRecipeAuto(new ItemStack(ModItems.turbine_titanium, 1), new Object[] { "BBB", "BSB", "BBB", 'B', ModItems.blade_titanium, 'S', STEEL.ingot() });
addRecipeAuto(new ItemStack(ModItems.rotor_steel, 3), new Object[] { "CCC", "SSS", "CCC", 'C', ModItems.coil_gold, 'S', STEEL.ingot() });
addRecipeAuto(new ItemStack(ModItems.generator_steel, 1), new Object[] { "RRR", "CCC", "SSS", 'C', ModItems.coil_gold_torus, 'S', STEEL.ingot(), 'R', ModItems.rotor_steel });
@ -212,6 +214,8 @@ public class CraftingManager {
addRecipeAuto(new ItemStack(ModItems.turbine_tungsten, 1), new Object[] { "BBB", "BSB", "BBB", 'B', ModItems.blade_tungsten, 'S', DURA.ingot() });
addRecipeAuto(new ItemStack(ModItems.ring_starmetal, 1), new Object[] { " S ", "S S", " S ", 'S', STAR.ingot() });
addRecipeAuto(new ItemStack(ModItems.flywheel_beryllium, 1), new Object[] { "BBB", "BTB", "BBB", 'B', BE.block(), 'T', ModItems.bolt_compound });
addRecipeAuto(DictFrame.fromOne(ModItems.plant_item, EnumPlantType.ROPE, 4), new Object[] { "W", "W", "W", 'W', DictFrame.fromOne(ModBlocks.plant_flower, EnumFlowerType.WEED) });
addRecipeAuto(new ItemStack(ModItems.rag, 16), new Object[] { "WW", "WW", 'W', DictFrame.fromOne(ModBlocks.plant_flower, EnumFlowerType.WEED) });
ItemStack infinity = new ItemStack(Items.enchanted_book);
EnchantmentUtil.addEnchantment(infinity, Enchantment.infinity, 1);
@ -229,7 +233,7 @@ public class CraftingManager {
addShapelessAuto(new ItemStack(ModItems.cbt_device, 1), new Object[] { ModItems.bolt_tungsten, ModItems.wrench });
addShapelessAuto(new ItemStack(ModItems.toothpicks, 3), new Object[] { KEY_STICK, KEY_STICK, KEY_STICK });
GameRegistry.addShapedRecipe(new ItemStack(ModItems.ducttape, 6), new Object[] { "FSF", "SPS", "FSF", 'F', Items.string, 'S', Items.slime_ball, 'P', Items.paper });
addRecipeAuto(new ItemStack(ModItems.ducttape, 6), new Object[] { "FSF", "SPS", "FSF", 'F', Items.string, 'S', KEY_SLIME, 'P', Items.paper });
//addRecipeAuto(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_difurnace_off), 1), new Object[] { "T T", "PHP", "TFT", 'T', W.ingot(), 'P', ModItems.board_copper, 'H', Blocks.hopper, 'F', Blocks.furnace });
addRecipeAuto(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_uf6_tank), 1), new Object[] { "WTW", "WTW", "SRS", 'S', IRON.plate(), 'W', ModItems.coil_tungsten, 'T', ModItems.tank_steel, 'W', ModItems.coil_tungsten,'R', MINGRADE.ingot() });
@ -255,7 +259,7 @@ public class CraftingManager {
addRecipeAuto(new ItemStack(ModBlocks.machine_coal_off, 1), new Object[] { "STS", "SCS", "SFS", 'S', STEEL.ingot(), 'T', ModItems.tank_steel, 'C', MINGRADE.ingot(), 'F', Blocks.furnace });
addRecipeAuto(new ItemStack(ModBlocks.machine_boiler_off, 1), new Object[] { "SPS", "TFT", "SPS", 'S', STEEL.ingot(), 'P', ModItems.board_copper, 'T', ModItems.tank_steel, 'F', Blocks.furnace });
addRecipeAuto(new ItemStack(ModBlocks.machine_boiler_electric_off, 1), new Object[] { "SPS", "TFT", "SPS", 'S', DESH.ingot(), 'P', ModItems.board_copper, 'T', ModItems.tank_steel, 'F', ModBlocks.machine_electric_furnace_off });
addRecipeAuto(new ItemStack(ModBlocks.machine_turbine, 1), new Object[] { "PTP", "BMB", "PTP", 'P', TI.plate(), 'T', ModItems.turbine_titanium, 'B', ModItems.tank_steel, 'M', ModItems.motor });
addRecipeAuto(new ItemStack(ModBlocks.machine_turbine, 1), new Object[] { "PMP", "PTP", "PMP", 'P', STEEL.ingot(), 'T', ModItems.turbine_titanium, 'M', ModItems.coil_copper });
addRecipeAuto(new ItemStack(ModBlocks.machine_converter_he_rf, 1), new Object[] { "SSS", "CRB", "SSS", 'S', STEEL.ingot(), 'C', ModItems.coil_copper, 'R', ModItems.coil_copper_torus, 'B', REDSTONE.block() });
addRecipeAuto(new ItemStack(ModBlocks.machine_converter_rf_he, 1), new Object[] { "SSS", "BRC", "SSS", 'S', BE.ingot(), 'C', ModItems.coil_copper, 'R', ModItems.coil_copper_torus, 'B', REDSTONE.block() });
addRecipeAuto(new ItemStack(ModBlocks.crate_iron, 1), new Object[] { "PPP", "I I", "III", 'P', IRON.plate(), 'I', IRON.ingot() });
@ -658,6 +662,7 @@ public class CraftingManager {
addShapelessAuto(new ItemStack(Items.paper, 1), new Object[] { new ItemStack(ModItems.assembly_template, 1, OreDictionary.WILDCARD_VALUE) });
addShapelessAuto(new ItemStack(Items.paper, 1), new Object[] { new ItemStack(ModItems.chemistry_template, 1, OreDictionary.WILDCARD_VALUE) });
addShapelessAuto(new ItemStack(Items.slime_ball, 16), new Object[] { new ItemStack(Items.dye, 1, 15), new ItemStack(Items.dye, 1, 15), new ItemStack(Items.dye, 1, 15), new ItemStack(Items.dye, 1, 15), Fluids.SULFURIC_ACID.getDict(1000) });
for(int i = 1; i < Fluids.getAll().length; ++i) {
addShapelessAuto(new ItemStack(ModItems.fluid_duct, 1, i), new Object[] { new ItemStack(ModBlocks.fluid_duct, 1), new ItemStack(ModItems.fluid_identifier, 1, i) });
@ -806,6 +811,7 @@ public class CraftingManager {
addRecipeAuto(new ItemStack(ModBlocks.rbmk_loader, 1), new Object[] { "SCS", "CBC", "SCS", 'S', STEEL.plate(), 'C', CU.ingot(), 'B', ModItems.tank_steel });
addRecipeAuto(new ItemStack(ModBlocks.rbmk_steam_inlet, 1), new Object[] { "SCS", "CBC", "SCS", 'S', STEEL.ingot(), 'C', IRON.plate(), 'B', ModItems.tank_steel });
addRecipeAuto(new ItemStack(ModBlocks.rbmk_steam_outlet, 1), new Object[] { "SCS", "CBC", "SCS", 'S', STEEL.ingot(), 'C', CU.plate(), 'B', ModItems.tank_steel });
addRecipeAuto(new ItemStack(ModBlocks.rbmk_heatex, 1), new Object[] { "SCS", "CBC", "SCS", 'S', STEEL.ingot(), 'C', CU.plate(), 'B', ModItems.pipes_steel });
addRecipeAuto(new ItemStack(ModBlocks.deco_rbmk, 8), new Object[] { "R", 'R', ModBlocks.rbmk_blank });
addRecipeAuto(new ItemStack(ModBlocks.deco_rbmk_smooth, 1), new Object[] { "R", 'R', ModBlocks.deco_rbmk });
@ -860,6 +866,7 @@ public class CraftingManager {
addRecipeAuto(new ItemStack(Items.name_tag), new Object[] { "SB ", "BPB", " BP", 'S', Items.string, 'B', KEY_SLIME, 'P', Items.paper });
addRecipeAuto(new ItemStack(Items.name_tag), new Object[] { "SB ", "BPB", " BP", 'S', Items.string, 'B', ANY_TAR.any(), 'P', Items.paper });
addRecipeAuto(new ItemStack(Items.lead, 4), new Object[] { "RSR", 'R', DictFrame.fromOne(ModItems.plant_item, EnumPlantType.ROPE), 'S', KEY_SLIME });
addRecipeAuto(new ItemStack(ModItems.rag, 4), new Object[] { "SW", "WS", 'S', Items.string, 'W', Blocks.wool });
addShapelessAuto(new ItemStack(ModItems.solid_fuel, 10), new Object[] { Fluids.HEATINGOIL.getDict(1000), KEY_TOOL_CHEMISTRYSET });
@ -902,6 +909,8 @@ public class CraftingManager {
addShapelessAuto(DictFrame.fromOne(ModItems.parts_legendary, EnumLegendaryType.TIER2, 3), new Object[] { DictFrame.fromOne(ModItems.parts_legendary, EnumLegendaryType.TIER3) });
addShapelessAuto(DictFrame.fromOne(ModItems.parts_legendary, EnumLegendaryType.TIER3), new Object[] { ModItems.ingot_chainsteel, ModItems.ingot_smore, ModItems.gem_alexandrite, ModItems.gem_alexandrite, ModItems.gem_alexandrite });
addShapelessAuto(new ItemStack(ModItems.upgrade_5g), new Object[] { ModItems.upgrade_template, ModItems.gem_alexandrite });
if(GeneralConfig.enableLBSM && GeneralConfig.enableLBSMSimpleCrafting) {
addShapelessAuto(new ItemStack(ModItems.cordite, 3), new Object[] { ModItems.ballistite, Items.gunpowder, new ItemStack(Blocks.wool, 1, OreDictionary.WILDCARD_VALUE) });
addShapelessAuto(new ItemStack(ModItems.ingot_semtex, 3), new Object[] { Items.slime_ball, Blocks.tnt, KNO.dust() });
@ -951,6 +960,7 @@ public class CraftingManager {
addRecipeAuto(new ItemStack(ModBlocks.rbmk_rod, 1), new Object[] { "C", "R", "C", 'C', ModItems.hull_small_steel, 'R', ModBlocks.rbmk_blank });
addRecipeAuto(new ItemStack(ModBlocks.rbmk_rod_mod, 1), new Object[] { "BGB", "GRG", "BGB", 'G', GRAPHITE.block(), 'R', ModBlocks.rbmk_rod, 'B', ModItems.nugget_bismuth });
addRecipeAuto(new ItemStack(ModBlocks.rbmk_boiler, 1), new Object[] { "CPC", "CRC", "CPC", 'C', ModItems.board_copper, 'P', ModItems.pipes_steel, 'R', ModBlocks.rbmk_blank });
addRecipeAuto(new ItemStack(ModBlocks.rbmk_heater, 1), new Object[] { "CIC", "PRP", "CIC", 'C', ModItems.board_copper, 'P', ModItems.pipes_steel, 'R', ModBlocks.rbmk_blank, 'I', ANY_PLASTIC.ingot() });
addRecipeAuto(new ItemStack(ModBlocks.rbmk_cooler, 1), new Object[] { "IGI", "GCG", "IGI", 'C', ModBlocks.rbmk_blank, 'I', ModItems.plate_polymer, 'G', ModBlocks.steel_grate });
}

View File

@ -174,6 +174,9 @@ public class MainRegistry {
public static Achievement achStratum;
public static Achievement achOmega12;
public static Achievement achSomeWounds;
public static Achievement achSlimeball;
public static Achievement achSulfuric;
public static Achievement achWitchtaunter;
public static Achievement bobHidden;
public static Achievement horizonsStart;
public static Achievement horizonsEnd;
@ -798,6 +801,10 @@ public class MainRegistry {
achStratum = new Achievement("achievement.stratum", "stratum", -4, -2, new ItemStack(ModBlocks.stone_gneiss), null).initIndependentStat().setSpecial().registerStat();
achOmega12 = new Achievement("achievement.omega12", "omega12", 17, -1, ModItems.particle_digamma, null).initIndependentStat().setSpecial().registerStat();
achWitchtaunter = new Achievement("achievement.witchtaunter", "witchtaunter", -8, 7, ModItems.ammo_4gauge_vampire, null).initIndependentStat().setSpecial().registerStat();
achSlimeball = new Achievement("achievement.slimeball", "slimeball", -10, 6, Items.slime_ball, null).initIndependentStat().registerStat();
achSulfuric = new Achievement("achievement.sulfuric", "sulfuric", -10, 8, ModItems.bucket_sulfuric_acid, achSlimeball).initIndependentStat().setSpecial().registerStat();
bobHidden = new Achievement("achievement.hidden", "hidden", 15, -4, ModItems.gun_dampfmaschine, null).initIndependentStat().registerStat();
horizonsStart = new Achievement("achievement.horizonsStart", "horizonsStart", -5, 4, ModItems.sat_gerald, null).initIndependentStat().registerStat();
@ -872,6 +879,9 @@ public class MainRegistry {
horizonsBonus,
achRadPoison,
achRadDeath,
achWitchtaunter,
achSlimeball,
achSulfuric,
bossCreeper,
bossMeltdown,
bossMaskman,

View File

@ -178,7 +178,7 @@ public class ModEventHandler {
}
if(MobConfig.enableDucks && event.player instanceof EntityPlayerMP && !event.player.getEntityData().getCompoundTag(EntityPlayer.PERSISTED_NBT_TAG).getBoolean("hasDucked"))
PacketDispatcher.wrapper.sendTo(new PlayerInformPacket("Press O to Duck!", MainRegistry.proxy.ID_DUCK), (EntityPlayerMP) event.player);
PacketDispatcher.wrapper.sendTo(new PlayerInformPacket("Press O to Duck!", MainRegistry.proxy.ID_DUCK, 30_000), (EntityPlayerMP) event.player);
}
}
@ -1285,6 +1285,8 @@ public class ModEventHandler {
public void onItemPickup(PlayerEvent.ItemPickupEvent event) {
if(event.pickedUp.getEntityItem().getItem() == ModItems.canned_jizz)
event.player.triggerAchievement(MainRegistry.achC20_5);
if(event.pickedUp.getEntityItem().getItem() == Items.slime_ball)
event.player.triggerAchievement(MainRegistry.achSlimeball);
}
@SubscribeEvent
@ -1310,11 +1312,6 @@ public class ModEventHandler {
event.world.setBlock(x, y, z, ModBlocks.gas_coal);
}
}
if(event.block == ModBlocks.pink_log && !((EntityPlayerMP) event.getPlayer()).func_147099_x().hasAchievementUnlocked(MainRegistry.achImpossible)) {
event.getPlayer().triggerAchievement(MainRegistry.achImpossible);
event.setExpToDrop(3000);
}
}
private static final String hash = "41eb77f138ce350932e33b6b26b233df9aad0c0c80c6a49cb9a54ddd8fae3f83";

View File

@ -6,42 +6,66 @@ import com.hbm.blocks.generic.BlockAshes;
import com.hbm.items.armor.IArmorDisableModel;
import com.hbm.items.armor.IArmorDisableModel.EnumPlayerPart;
import com.hbm.lib.RefStrings;
import com.hbm.potion.HbmPotion;
import com.hbm.render.model.ModelMan;
import cpw.mods.fml.common.eventhandler.EventPriority;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import net.minecraft.block.Block;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.ScaledResolution;
import net.minecraft.client.model.ModelRenderer;
import net.minecraft.client.renderer.OpenGlHelper;
import net.minecraft.client.renderer.RenderBlocks;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraft.client.renderer.entity.RenderPlayer;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items;
import net.minecraft.item.EnumAction;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.util.MathHelper;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.event.RenderGameOverlayEvent;
import net.minecraftforge.client.event.RenderPlayerEvent;
import net.minecraftforge.client.event.RenderGameOverlayEvent.ElementType;
public class ModEventHandlerRenderer {
private static ModelMan manlyModel;
private static boolean[] partsHidden = new boolean[7];
@SubscribeEvent(priority = EventPriority.LOWEST, receiveCanceled = true)
public void onRenderPlayerPre(RenderPlayerEvent.Pre event) {
EntityPlayer player = event.entityPlayer;
RenderPlayer renderer = event.renderer;
boolean isManly = player.isPotionActive(HbmPotion.death.id);
for(int j = 0; j < 7; j++) {
partsHidden[j] = false;
if(isManly) {
partsHidden[j] = true;
EnumPlayerPart type = EnumPlayerPart.values()[j];
ModelRenderer box = getBoxFromType(renderer, type);
box.isHidden = true;
} else {
partsHidden[j] = false;
}
}
if(isManly) {
return;
}
for(int i = 1; i < 5; i++) {
ItemStack stack = player.getEquipmentInSlot(i);
if(stack != null && stack.getItem() instanceof IArmorDisableModel) {
IArmorDisableModel disable = (IArmorDisableModel) stack.getItem();
for(int j = 0; j < 7; j++) {
EnumPlayerPart type = EnumPlayerPart.values()[j];
ModelRenderer box = getBoxFromType(renderer, type);
@ -54,11 +78,37 @@ public class ModEventHandlerRenderer {
}
}
@SubscribeEvent
public void onRenderArmorEvent(RenderPlayerEvent.SetArmorModel event) {
EntityPlayer player = event.entityPlayer;
RenderPlayer renderer = event.renderer;
boolean isManly = player.isPotionActive(HbmPotion.death.id);
if(isManly) {
if(manlyModel == null)
manlyModel = new ModelMan();
float interp = event.partialRenderTick;
float yawHead = player.prevRotationYawHead + (player.rotationYawHead - player.prevRotationYawHead) * interp;
float yawOffset = player.prevRenderYawOffset + (player.renderYawOffset - player.prevRenderYawOffset) * interp;
float yaw = yawHead - yawOffset;
float yawWrapped = MathHelper.wrapAngleTo180_float(yawHead - yawOffset);
float pitch = player.rotationPitch;
float f6 = player.prevLimbSwingAmount + (player.limbSwingAmount - player.prevLimbSwingAmount) * interp;
float f7 = player.limbSwing - player.limbSwingAmount * (1.0F - interp);
if(f6 > 1.0F) {
f6 = 1.0F;
}
manlyModel.render(event.entityPlayer, f7, f6, yawWrapped, yaw, pitch, 0.0625F, renderer);
}
}
@SubscribeEvent(priority = EventPriority.HIGHEST, receiveCanceled = true)
public void onRenderPlayerPost(RenderPlayerEvent.Post event) {
RenderPlayer renderer = event.renderer;
for(int j = 0; j < 7; j++) {
EnumPlayerPart type = EnumPlayerPart.values()[j];
if(partsHidden[j]) {
@ -66,32 +116,139 @@ public class ModEventHandlerRenderer {
}
}
}
private static ModelRenderer getBoxFromType(RenderPlayer renderer, EnumPlayerPart part) {
@SubscribeEvent
public void onRenderHeldItem(RenderPlayerEvent.Specials.Pre event) {
EntityPlayer player = event.entityPlayer;
RenderPlayer renderer = event.renderer;
boolean isManly = player.isPotionActive(HbmPotion.death.id);
if(!isManly)
return;
if(manlyModel == null)
manlyModel = new ModelMan();
event.renderItem = false;
float f2 = 1.3333334F;
ItemStack held = player.getHeldItem();
if(held == null)
return;
GL11.glPushMatrix();
manlyModel.rightArm.postRender(0.0625F);
GL11.glTranslatef(-0.0625F, 0.4375F, 0.0625F);
if(player.fishEntity != null) {
held = new ItemStack(Items.stick);
}
EnumAction enumaction = null;
if(player.getItemInUseCount() > 0) {
enumaction = held.getItemUseAction();
}
net.minecraftforge.client.IItemRenderer customRenderer = net.minecraftforge.client.MinecraftForgeClient.getItemRenderer(held, net.minecraftforge.client.IItemRenderer.ItemRenderType.EQUIPPED);
boolean is3D = (customRenderer != null && customRenderer.shouldUseRenderHelper(net.minecraftforge.client.IItemRenderer.ItemRenderType.EQUIPPED, held, net.minecraftforge.client.IItemRenderer.ItemRendererHelper.BLOCK_3D));
if(is3D || held.getItem() instanceof ItemBlock && RenderBlocks.renderItemIn3d(Block.getBlockFromItem(held.getItem()).getRenderType())) {
f2 = 0.5F;
GL11.glTranslatef(0.0F, 0.1875F, -0.3125F);
f2 *= 0.75F;
GL11.glRotatef(20.0F, 1.0F, 0.0F, 0.0F);
GL11.glRotatef(45.0F, 0.0F, 1.0F, 0.0F);
GL11.glScalef(-f2, -f2, f2);
} else if(held.getItem() == Items.bow) {
f2 = 0.625F;
GL11.glTranslatef(0.0F, 0.125F, 0.3125F);
GL11.glRotatef(-20.0F, 0.0F, 1.0F, 0.0F);
GL11.glScalef(f2, -f2, f2);
GL11.glRotatef(-100.0F, 1.0F, 0.0F, 0.0F);
GL11.glRotatef(45.0F, 0.0F, 1.0F, 0.0F);
} else if(held.getItem().isFull3D()) {
f2 = 0.625F;
if(held.getItem().shouldRotateAroundWhenRendering()) {
GL11.glRotatef(180.0F, 0.0F, 0.0F, 1.0F);
GL11.glTranslatef(0.0F, -0.125F, 0.0F);
}
if(player.getItemInUseCount() > 0 && enumaction == EnumAction.block) {
GL11.glTranslatef(0.05F, 0.0F, -0.1F);
GL11.glRotatef(-50.0F, 0.0F, 1.0F, 0.0F);
GL11.glRotatef(-10.0F, 1.0F, 0.0F, 0.0F);
GL11.glRotatef(-60.0F, 0.0F, 0.0F, 1.0F);
}
GL11.glTranslatef(0.0F, 0.1875F, 0.0F);
GL11.glScalef(f2, -f2, f2);
GL11.glRotatef(-100.0F, 1.0F, 0.0F, 0.0F);
GL11.glRotatef(45.0F, 0.0F, 1.0F, 0.0F);
} else {
f2 = 0.375F;
GL11.glTranslatef(0.25F, 0.1875F, -0.1875F);
GL11.glScalef(f2, f2, f2);
GL11.glRotatef(60.0F, 0.0F, 0.0F, 1.0F);
GL11.glRotatef(-90.0F, 1.0F, 0.0F, 0.0F);
GL11.glRotatef(20.0F, 0.0F, 0.0F, 1.0F);
}
float f3;
int k;
float f12;
if(held.getItem().requiresMultipleRenderPasses()) {
for(k = 0; k < held.getItem().getRenderPasses(held.getItemDamage()); ++k) {
int i = held.getItem().getColorFromItemStack(held, k);
f12 = (float) (i >> 16 & 255) / 255.0F;
f3 = (float) (i >> 8 & 255) / 255.0F;
float f4 = (float) (i & 255) / 255.0F;
GL11.glColor4f(f12, f3, f4, 1.0F);
RenderManager.instance.itemRenderer.renderItem(player, held, k);
}
} else {
k = held.getItem().getColorFromItemStack(held, 0);
float f11 = (float) (k >> 16 & 255) / 255.0F;
f12 = (float) (k >> 8 & 255) / 255.0F;
f3 = (float) (k & 255) / 255.0F;
GL11.glColor4f(f11, f12, f3, 1.0F);
RenderManager.instance.itemRenderer.renderItem(player, held, 0);
}
GL11.glPopMatrix();
}
private static ModelRenderer getBoxFromType(RenderPlayer renderer, EnumPlayerPart part) {
switch(part) {
case BODY: return renderer.modelBipedMain.bipedBody;
case HAT: return renderer.modelBipedMain.bipedHeadwear;
case HEAD: return renderer.modelBipedMain.bipedHead;
case LEFT_ARM: return renderer.modelBipedMain.bipedLeftArm;
case LEFT_LEG: return renderer.modelBipedMain.bipedLeftLeg;
case RIGHT_ARM: return renderer.modelBipedMain.bipedRightArm;
case RIGHT_LEG: return renderer.modelBipedMain.bipedRightLeg;
default: return null;
case BODY: return renderer.modelBipedMain.bipedBody;
case HAT: return renderer.modelBipedMain.bipedHeadwear;
case HEAD: return renderer.modelBipedMain.bipedHead;
case LEFT_ARM: return renderer.modelBipedMain.bipedLeftArm;
case LEFT_LEG: return renderer.modelBipedMain.bipedLeftLeg;
case RIGHT_ARM: return renderer.modelBipedMain.bipedRightArm;
case RIGHT_LEG: return renderer.modelBipedMain.bipedRightLeg;
default: return null;
}
}
private ResourceLocation ashes = new ResourceLocation(RefStrings.MODID + ":textures/misc/overlay_ash.png");
public static int currentBrightness = 0;
public static int lastBrightness = 0;
@SubscribeEvent
public void onOverlayRender(RenderGameOverlayEvent.Pre event) {
if(event.type == ElementType.PORTAL) {
Minecraft mc = Minecraft.getMinecraft();
ScaledResolution resolution = new ScaledResolution(mc, mc.displayWidth, mc.displayHeight);
GL11.glPushMatrix();
@ -101,12 +258,12 @@ public class ModEventHandlerRenderer {
OpenGlHelper.glBlendFunc(770, 771, 1, 0);
GL11.glEnable(GL11.GL_ALPHA_TEST);
GL11.glAlphaFunc(GL11.GL_GEQUAL, 0.0F);
int w = resolution.getScaledWidth();
int h = resolution.getScaledHeight();
double off = System.currentTimeMillis() / 10000D % 10000D;
double aw = 1;
Tessellator tessellator = Tessellator.instance;
int cX = currentBrightness % 65536;
@ -114,33 +271,33 @@ public class ModEventHandlerRenderer {
int lX = lastBrightness % 65536;
int lY = lastBrightness / 65536;
float interp = (mc.theWorld.getTotalWorldTime() % 20) * 0.05F;
if(mc.theWorld.getTotalWorldTime() == 1)
lastBrightness = currentBrightness;
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, (float)(lX + (cX - lX) * interp) / 1.0F, (float)(lY + (cY - lY) * interp) / 1.0F);
//mc.entityRenderer.enableLightmap((double)event.partialTicks);
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, (float) (lX + (cX - lX) * interp) / 1.0F, (float) (lY + (cY - lY) * interp) / 1.0F);
// mc.entityRenderer.enableLightmap((double)event.partialTicks);
mc.getTextureManager().bindTexture(ashes);
for(int i = 1; i < 3; i++) {
GL11.glTranslated(w, h, 0);
GL11.glRotatef(-15, 0, 0, 1);
GL11.glTranslated(-w, -h, 0);
GL11.glColor4f(1.0F, 1.0F, 1.0F, BlockAshes.ashes / 256F * 0.98F / i);
tessellator.startDrawingQuads();
tessellator.addVertexWithUV(-w * 1.25, h * 1.25, aw, 0.0D + off * i, 1.0D);
tessellator.addVertexWithUV(w * 1.25, h * 1.25, aw, 1.0D + off * i, 1.0D);
tessellator.addVertexWithUV(w * 1.25, -h * 1.25, aw, 1.0D + off * i, 0.0D);
tessellator.addVertexWithUV(-w * 1.25, -h * 1.25, aw, 0.0D + off * i, 0.0D);
tessellator.addVertexWithUV(-w * 1.25, h * 1.25, aw, 0.0D + off * i, 1.0D);
tessellator.addVertexWithUV(w * 1.25, h * 1.25, aw, 1.0D + off * i, 1.0D);
tessellator.addVertexWithUV(w * 1.25, -h * 1.25, aw, 1.0D + off * i, 0.0D);
tessellator.addVertexWithUV(-w * 1.25, -h * 1.25, aw, 0.0D + off * i, 0.0D);
tessellator.draw();
}
mc.entityRenderer.disableLightmap((double)event.partialTicks);
mc.entityRenderer.disableLightmap((double) event.partialTicks);
GL11.glDepthMask(true);
GL11.glEnable(GL11.GL_DEPTH_TEST);
GL11.glDisable(GL11.GL_BLEND);

View File

@ -664,6 +664,7 @@ public class ResourceManager {
public static final IModelCustom armor_mod_tesla = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/mod_tesla.obj"));
public static final IModelCustom armor_wings = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/murk.obj"));
public static final IModelCustom armor_solstice = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/solstice.obj"));
public static final IModelCustom player_manly_af = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/armor/player_fem.obj"));
////Texture Items
@ -733,6 +734,7 @@ public class ResourceManager {
public static final ResourceLocation ff_wood_red = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/wood_red.png");
public static final ResourceLocation ff_cursed = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/cursed.png");
public static final ResourceLocation ff_nightmare_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/nightmare.png");
public static final ResourceLocation ff_nightmare_orig_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/nightmare_orig.png");
public static final ResourceLocation grenade_mk2 = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/grenade_mk2.png");
public static final ResourceLocation grenade_aschrab_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/grenade_aschrab.png");
@ -791,6 +793,8 @@ public class ResourceManager {
public static final ResourceLocation hat = new ResourceLocation(RefStrings.MODID, "textures/armor/hat.png");
public static final ResourceLocation goggles = new ResourceLocation(RefStrings.MODID, "textures/armor/goggles.png");
public static final ResourceLocation player_manly_tex = new ResourceLocation(RefStrings.MODID, "textures/entity/player_fem.png");
////Obj Entities

View File

@ -8,6 +8,7 @@ import com.hbm.sound.nt.SoundWrapper;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.world.World;
public class ServerProxy {
@ -35,6 +36,7 @@ public class ServerProxy {
public void registerMissileItems() { }
public AudioWrapper getLoopedSound(String sound, float x, float y, float z, float volume, float pitch) { return null; }
public AudioWrapper getLoopedSoundStartStop(World world, String sound, String start, String stop, float x, float y, float z, float volume, float pitch) { return null; }
public void playSound(String sound, Object data) { }

View File

@ -71,6 +71,8 @@ public class AnvilCraftPacket implements IMessage {
p.triggerAchievement(MainRegistry.achAssembly);
if(recipe.output.get(0).stack.getItem() == ModItems.billet_pu_mix)
p.triggerAchievement(MainRegistry.achChicagoPile);
if(recipe.output.get(0).stack.getItem() == ModItems.ammo_4gauge_vampire)
p.triggerAchievement(MainRegistry.achWitchtaunter);
} else {
break;

View File

@ -17,6 +17,7 @@ public class PlayerInformPacket implements IMessage {
private String dmesg = "";
private int id;
private IChatComponent component;
private int millis = 0;
public PlayerInformPacket() { }
@ -30,9 +31,22 @@ public class PlayerInformPacket implements IMessage {
this.component = component;
}
public PlayerInformPacket(String dmesg, int id, int millis) {
this.fancy = false;
this.dmesg = dmesg;
this.millis = millis;
}
public PlayerInformPacket(IChatComponent component, int id, int millis) {
this.fancy = true;
this.component = component;
this.millis = millis;
}
@Override
public void fromBytes(ByteBuf buf) {
id = buf.readInt();
millis = buf.readInt();
fancy = buf.readBoolean();
if(!fancy) {
@ -45,6 +59,7 @@ public class PlayerInformPacket implements IMessage {
@Override
public void toBytes(ByteBuf buf) {
buf.writeInt(id);
buf.writeInt(millis);
buf.writeBoolean(fancy);
if(!fancy) {
ByteBufUtils.writeUTF8String(buf, dmesg);
@ -60,7 +75,10 @@ public class PlayerInformPacket implements IMessage {
public IMessage onMessage(PlayerInformPacket m, MessageContext ctx) {
try {
MainRegistry.proxy.displayTooltip(m.fancy ? m.component.getFormattedText() : m.dmesg, m.id);
if(m.millis == 0)
MainRegistry.proxy.displayTooltip(m.fancy ? m.component.getFormattedText() : m.dmesg, m.id);
else
MainRegistry.proxy.displayTooltip(m.fancy ? m.component.getFormattedText() : m.dmesg, m.millis, m.id);
} catch (Exception x) { }
return null;

View File

@ -40,6 +40,7 @@ public class HbmPotion extends Potion {
public static HbmPotion phosphorus;
public static HbmPotion stability;
public static HbmPotion potionsickness;
public static HbmPotion death;
public HbmPotion(int id, boolean isBad, int color) {
super(id, isBad, color);
@ -57,6 +58,7 @@ public class HbmPotion extends Potion {
phosphorus = registerPotion(PotionConfig.phosphorusID, true, 0xFFFF00, "potion.hbm_phosphorus", 1, 1);
stability = registerPotion(PotionConfig.stabilityID, false, 0xD0D0D0, "potion.hbm_stability", 2, 1);
potionsickness = registerPotion(PotionConfig.potionsicknessID, false, 0xff8080, "potion.hbm_potionsickness", 3, 1);
death = registerPotion(PotionConfig.deathID, false, 1118481, "potion.hbm_death", 4, 1);
}
public static HbmPotion registerPotion(int id, boolean isBad, int color, String name, int x, int y) {

View File

@ -40,7 +40,7 @@ public class ItemRenderWeaponFFNightmare implements IItemRenderer {
case EQUIPPED_FIRST_PERSON:
double s0 = 1.0D;
double s0 = 0.2D;
GL11.glTranslated(0.75, 0.55, 0);
GL11.glScaled(s0, s0, s0);
GL11.glRotated(100, 0, -1, 0);
@ -50,18 +50,18 @@ public class ItemRenderWeaponFFNightmare implements IItemRenderer {
case EQUIPPED:
double scale = 1.0D;
double scale = 0.2D;
GL11.glRotated(195, 0, 1, 0);
GL11.glRotated(-10, 0, 0, 1);
GL11.glRotated(-10, 1, 0, 0);
GL11.glTranslated(-0.5, 0.1, -0.25);
GL11.glTranslated(-0.5, 0.3, -0.25);
GL11.glScaled(scale, scale, scale);
break;
case ENTITY:
double s1 = 0.75D;
double s1 = 0.15D;
GL11.glScaled(s1, s1, s1);
GL11.glRotated(90, 0, 1, 0);
@ -71,7 +71,7 @@ public class ItemRenderWeaponFFNightmare implements IItemRenderer {
GL11.glEnable(GL11.GL_LIGHTING);
double s = 9D;
double s = 1.75D;
GL11.glTranslated(10, 9, 0);
GL11.glRotated(-135, 0, 0, 1);
GL11.glRotated(90, 0, 1, 0);
@ -82,18 +82,15 @@ public class ItemRenderWeaponFFNightmare implements IItemRenderer {
default: break;
}
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ff_gun_dark);
ResourceManager.ff_nightmare.renderPart("Grip");
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ff_gun_normal);
ResourceManager.ff_nightmare.renderPart("Dark");
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ff_gun_bright);
ResourceManager.ff_nightmare.renderPart("Light");
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ff_gun_dark);
GL11.glShadeModel(GL11.GL_SMOOTH);
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ff_nightmare_orig_tex);
ResourceManager.ff_nightmare.renderPart("Gun");
int ammo = ItemGunBase.getMag(item);
for(int i = 0; i < ammo; i++) {
ResourceManager.ff_nightmare.renderPart("Bullet" + (i + 1));
}
GL11.glShadeModel(GL11.GL_FLAT);
GL11.glPopMatrix();
}

View File

@ -91,15 +91,15 @@ public class ItemRenderWeaponObj implements IItemRenderer {
}
if(item.getItem() == ModItems.gun_ks23) {
GL11.glTranslatef(1.0F, 0.85F, -0.25F);
GL11.glRotatef(90F, 0.0F, 1.0F, 0.0F);
GL11.glRotatef(-25F, 1.0F, 0.0F, 0.0F);
GL11.glTranslatef(1.0F, 0.5F, -0.25F);
GL11.glRotatef(25F, 0.0F, 0.0F, 1.0F);
GL11.glRotatef(-10F, 0.0F, 1.0F, 0.0F);
GL11.glScaled(1.25, 1.25, 1.25);
GL11.glScaled(0.75, 0.75, 0.75);
if(player.isSneaking()) {
GL11.glRotatef(4.5F, 0.0F, 1.0F, 0.0F);
GL11.glTranslatef(0.51F, 0.2F, 0.3F);
GL11.glRotatef(-2.5F, 0.0F, 0.0F, 1.0F);
GL11.glTranslatef(0.3F, 0.2F, -0.875F);
}
}
@ -171,9 +171,9 @@ public class ItemRenderWeaponObj implements IItemRenderer {
if(item.getItem() == ModItems.gun_ks23) {
GL11.glRotatef(20F, 1.0F, 0.0F, 1.0F);
GL11.glRotatef(10F, 0.0F, 1.0F, 0.0F);
GL11.glTranslatef(0.4F, 0.2F, 1.2F);
GL11.glScaled(1.25, 1.25, 1.25);
GL11.glRotatef(-80F, 0.0F, 1.0F, 0.0F);
GL11.glTranslatef(0.9F, 0.0F, -0.5F);
GL11.glScaled(0.5, 0.5, 0.5);
}
if(item.getItem() == ModItems.gun_flamer) {
@ -214,9 +214,8 @@ public class ItemRenderWeaponObj implements IItemRenderer {
}
if(item.getItem() == ModItems.gun_ks23) {
GL11.glRotatef(-90F, 0.0F, 1.0F, 0.0F);
GL11.glTranslatef(0.0F, 0.2F, 0.5F);
GL11.glScaled(0.75, 0.75, 0.75);
GL11.glTranslatef(0.3F, 0.2F, 0.0F);
GL11.glScaled(0.5, 0.5, 0.5);
}
if(item.getItem() == ModItems.gun_flamer) {
@ -259,11 +258,9 @@ public class ItemRenderWeaponObj implements IItemRenderer {
}
if(item.getItem() == ModItems.gun_ks23) {
GL11.glScaled(7.5, 7.5, -7.5);
GL11.glTranslatef(0.65F, 0.4F, 0.0F);
GL11.glRotatef(180F, 1.0F, 0.0F, 0.0F);
GL11.glRotatef(-90F, 0.0F, 1.0F, 0.0F);
GL11.glRotatef(-45F, 1.0F, 0.0F, 0.0F);
GL11.glTranslatef(7F, 8F, 0.0F);
GL11.glScaled(4, 4, -4);
GL11.glRotatef(-135F, 0.0F, 0.0F, 1.0F);
}
if(item.getItem() == ModItems.gun_flamer) {

View File

@ -4,93 +4,126 @@ import org.lwjgl.opengl.GL11;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.client.model.ModelRenderer;
import net.minecraftforge.client.model.IModelCustom;
public class ModelRendererObj {
public float rotationPointX;
public float rotationPointY;
public float rotationPointZ;
public float rotateAngleX;
public float rotateAngleY;
public float rotateAngleZ;
public float offsetX;
public float offsetY;
public float offsetZ;
String[] parts;
IModelCustom model;
public ModelRendererObj(IModelCustom model, String... parts) {
this.model = model;
this.parts = parts;
}
public ModelRendererObj setPosition(float x, float y, float z) {
this.offsetX = x;
this.offsetY = y;
this.offsetZ = z;
return this;
}
public ModelRendererObj setRotationPoint(float x, float y, float z) {
this.rotationPointX = x;
this.rotationPointY = y;
this.rotationPointZ = z;
return this;
}
public void copyTo(ModelRendererObj obj) {
public float rotationPointX;
public float rotationPointY;
public float rotationPointZ;
public float rotateAngleX;
public float rotateAngleY;
public float rotateAngleZ;
public float offsetX;
public float offsetY;
public float offsetZ;
obj.offsetX = offsetX;
obj.offsetY = offsetY;
obj.offsetZ = offsetZ;
obj.rotateAngleX = rotateAngleX;
obj.rotateAngleY = rotateAngleY;
obj.rotateAngleZ = rotateAngleZ;
obj.rotationPointX = rotationPointX;
obj.rotationPointY = rotationPointY;
obj.rotationPointZ = rotationPointZ;
}
String[] parts;
IModelCustom model;
@SideOnly(Side.CLIENT)
public void render(float scale) {
if(parts == null)
return;
GL11.glPushMatrix();
public ModelRendererObj(IModelCustom model, String... parts) {
this.model = model;
this.parts = parts;
}
GL11.glTranslatef(this.offsetX * scale, this.offsetY * scale, this.offsetZ * scale);
public ModelRendererObj setPosition(float x, float y, float z) {
this.offsetX = x;
this.offsetY = y;
this.offsetZ = z;
return this;
}
GL11.glTranslatef(this.rotationPointX * scale, this.rotationPointY * scale, this.rotationPointZ * scale);
public ModelRendererObj setRotationPoint(float x, float y, float z) {
this.rotationPointX = x;
this.rotationPointY = y;
this.rotationPointZ = z;
return this;
}
if (this.rotateAngleZ != 0.0F)
{
GL11.glRotatef(this.rotateAngleZ * (180F / (float)Math.PI), 0.0F, 0.0F, 1.0F);
}
public void copyTo(ModelRendererObj obj) {
if (this.rotateAngleY != 0.0F)
{
GL11.glRotatef(this.rotateAngleY * (180F / (float)Math.PI), 0.0F, 1.0F, 0.0F);
}
obj.offsetX = offsetX;
obj.offsetY = offsetY;
obj.offsetZ = offsetZ;
obj.rotateAngleX = rotateAngleX;
obj.rotateAngleY = rotateAngleY;
obj.rotateAngleZ = rotateAngleZ;
obj.rotationPointX = rotationPointX;
obj.rotationPointY = rotationPointY;
obj.rotationPointZ = rotationPointZ;
}
if (this.rotateAngleX != 0.0F)
{
GL11.glRotatef(this.rotateAngleX * (180F / (float)Math.PI), 1.0F, 0.0F, 0.0F);
}
public void copyRotationFrom(ModelRenderer model) {
/*offsetX = model.offsetX;
offsetY = model.offsetY;
offsetZ = model.offsetZ;*/
rotateAngleX = model.rotateAngleX;
rotateAngleY = model.rotateAngleY;
rotateAngleZ = model.rotateAngleZ;
/*rotationPointX = model.rotationPointX;
rotationPointY = model.rotationPointY;
rotationPointZ = model.rotationPointZ;*/
}
GL11.glTranslatef(-this.rotationPointX * scale, -this.rotationPointY * scale, -this.rotationPointZ * scale);
GL11.glScalef(scale, scale, scale);
if(parts.length > 0)
for(String part : parts)
model.renderPart(part);
else
model.renderAll();
GL11.glPopMatrix();
}
@SideOnly(Side.CLIENT)
public void render(float scale) {
if(parts == null)
return;
GL11.glPushMatrix();
GL11.glTranslatef(this.offsetX * scale, this.offsetY * scale, this.offsetZ * scale);
GL11.glTranslatef(this.rotationPointX * scale, this.rotationPointY * scale, this.rotationPointZ * scale);
if(this.rotateAngleZ != 0.0F) {
GL11.glRotatef(this.rotateAngleZ * (180F / (float) Math.PI), 0.0F, 0.0F, 1.0F);
}
if(this.rotateAngleY != 0.0F) {
GL11.glRotatef(this.rotateAngleY * (180F / (float) Math.PI), 0.0F, 1.0F, 0.0F);
}
if(this.rotateAngleX != 0.0F) {
GL11.glRotatef(this.rotateAngleX * (180F / (float) Math.PI), 1.0F, 0.0F, 0.0F);
}
GL11.glTranslatef(-this.rotationPointX * scale, -this.rotationPointY * scale, -this.rotationPointZ * scale);
GL11.glScalef(scale, scale, scale);
if(parts.length > 0)
for(String part : parts)
model.renderPart(part);
else
model.renderAll();
GL11.glPopMatrix();
}
@SideOnly(Side.CLIENT)
public void postRender(float p_78794_1_) {
if(this.rotateAngleX == 0.0F && this.rotateAngleY == 0.0F && this.rotateAngleZ == 0.0F) {
if(this.rotationPointX != 0.0F || this.rotationPointY != 0.0F || this.rotationPointZ != 0.0F) {
GL11.glTranslatef(this.rotationPointX * p_78794_1_, this.rotationPointY * p_78794_1_, this.rotationPointZ * p_78794_1_);
}
} else {
GL11.glTranslatef(this.rotationPointX * p_78794_1_, this.rotationPointY * p_78794_1_, this.rotationPointZ * p_78794_1_);
if(this.rotateAngleZ != 0.0F) {
GL11.glRotatef(this.rotateAngleZ * (180F / (float) Math.PI), 0.0F, 0.0F, 1.0F);
}
if(this.rotateAngleY != 0.0F) {
GL11.glRotatef(this.rotateAngleY * (180F / (float) Math.PI), 0.0F, 1.0F, 0.0F);
}
if(this.rotateAngleX != 0.0F) {
GL11.glRotatef(this.rotateAngleX * (180F / (float) Math.PI), 1.0F, 0.0F, 0.0F);
}
}
}
}

View File

@ -3,29 +3,32 @@ package com.hbm.render.model;
import com.hbm.interfaces.IHoldableWeapon;
import com.hbm.render.loader.ModelRendererObj;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.ModelBiped;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.EnumAction;
import net.minecraft.util.MathHelper;
import net.minecraft.util.ResourceLocation;
public class ModelArmorBase extends ModelBiped {
int type;
ModelRendererObj head;
ModelRendererObj body;
ModelRendererObj leftArm;
ModelRendererObj rightArm;
ModelRendererObj leftLeg;
ModelRendererObj rightLeg;
ModelRendererObj leftFoot;
ModelRendererObj rightFoot;
public ModelRendererObj head;
public ModelRendererObj body;
public ModelRendererObj leftArm;
public ModelRendererObj rightArm;
public ModelRendererObj leftLeg;
public ModelRendererObj rightLeg;
public ModelRendererObj leftFoot;
public ModelRendererObj rightFoot;
public ModelArmorBase(int type) {
this.type = type;
//generate null defaults to prevent major breakage from using incomplete models
// generate null defaults to prevent major breakage from using
// incomplete models
head = new ModelRendererObj(null);
body = new ModelRendererObj(null);
leftArm = new ModelRendererObj(null).setRotationPoint(-5.0F, 2.0F, 0.0F);
@ -35,139 +38,135 @@ public class ModelArmorBase extends ModelBiped {
leftFoot = new ModelRendererObj(null).setRotationPoint(1.9F, 12.0F, 0.0F);
rightFoot = new ModelRendererObj(null).setRotationPoint(-1.9F, 12.0F, 0.0F);
}
public void setRotationAngles(float p_78087_1_, float p_78087_2_, float p_78087_3_, float p_78087_4_, float p_78087_5_, float p_78087_6_, Entity entity) {
head.rotateAngleY = p_78087_4_ / (180F / (float)Math.PI);
head.rotateAngleX = p_78087_5_ / (180F / (float)Math.PI);
rightArm.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662F + (float)Math.PI) * 2.0F * p_78087_2_ * 0.5F;
leftArm.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662F) * 2.0F * p_78087_2_ * 0.5F;
rightArm.rotateAngleZ = 0.0F;
leftArm.rotateAngleZ = 0.0F;
rightFoot.rotateAngleX = rightLeg.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662F) * 1.4F * p_78087_2_;
leftFoot.rotateAngleX = leftLeg.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662F + (float)Math.PI) * 1.4F * p_78087_2_;
rightFoot.rotateAngleY = rightLeg.rotateAngleY = 0.0F;
leftFoot.rotateAngleY = leftLeg.rotateAngleY = 0.0F;
if(entity instanceof EntityPlayer) {
EntityPlayer player = (EntityPlayer)entity;
this.aimedBow = false;
if(player.getHeldItem() != null) {
int hold = 1;
if(player.getItemInUseCount() > 0) {
EnumAction action = player.getHeldItem().getItemUseAction();
if(action == EnumAction.block)
hold = 3;
if(action == EnumAction.bow)
this.aimedBow = true;
}
if(player.getHeldItem().getItem() instanceof IHoldableWeapon)
this.aimedBow = true;
rightArm.rotateAngleX = rightArm.rotateAngleX * 0.5F - ((float)Math.PI / 10F) * hold;
}
this.isSneak = player.isSneaking();
this.isRiding = player.isRiding();
}
public void setRotationAngles(float p_78087_1_, float p_78087_2_, float p_78087_3_, float p_78087_4_, float p_78087_5_, float p_78087_6_, Entity entity) {
if (this.isRiding)
{
rightArm.rotateAngleX += -((float)Math.PI / 5F);
leftArm.rotateAngleX += -((float)Math.PI / 5F);
rightFoot.rotateAngleX = rightLeg.rotateAngleX = -((float)Math.PI * 2F / 5F);
leftFoot.rotateAngleX = leftLeg.rotateAngleX = -((float)Math.PI * 2F / 5F);
rightFoot.rotateAngleY = rightLeg.rotateAngleY = ((float)Math.PI / 10F);
leftFoot.rotateAngleY = leftLeg.rotateAngleY = -((float)Math.PI / 10F);
}
head.rotateAngleY = p_78087_4_ / (180F / (float) Math.PI);
head.rotateAngleX = p_78087_5_ / (180F / (float) Math.PI);
rightArm.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662F + (float) Math.PI) * 2.0F * p_78087_2_ * 0.5F;
leftArm.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662F) * 2.0F * p_78087_2_ * 0.5F;
rightArm.rotateAngleZ = 0.0F;
leftArm.rotateAngleZ = 0.0F;
rightFoot.rotateAngleX = rightLeg.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662F) * 1.4F * p_78087_2_;
leftFoot.rotateAngleX = leftLeg.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662F + (float) Math.PI) * 1.4F * p_78087_2_;
rightFoot.rotateAngleY = rightLeg.rotateAngleY = 0.0F;
leftFoot.rotateAngleY = leftLeg.rotateAngleY = 0.0F;
if (this.heldItemLeft != 0)
{
leftArm.rotateAngleX = leftArm.rotateAngleX * 0.5F - ((float)Math.PI / 10F) * (float)this.heldItemLeft;
}
if(entity instanceof EntityPlayer) {
EntityPlayer player = (EntityPlayer) entity;
if (this.heldItemRight != 0)
{
rightArm.rotateAngleX = rightArm.rotateAngleX * 0.5F - ((float)Math.PI / 10F) * (float)this.heldItemRight;
}
this.aimedBow = false;
rightArm.rotateAngleY = 0.0F;
leftArm.rotateAngleY = 0.0F;
float f6;
float f7;
if(player.getHeldItem() != null) {
if (this.onGround > -9990.0F)
{
f6 = this.onGround;
body.rotateAngleY = MathHelper.sin(MathHelper.sqrt_float(f6) * (float)Math.PI * 2.0F) * 0.2F;
rightArm.rotationPointZ = MathHelper.sin(body.rotateAngleY) * 5.0F;
rightArm.rotationPointX = -MathHelper.cos(body.rotateAngleY) * 5.0F;
leftArm.rotationPointZ = -MathHelper.sin(body.rotateAngleY) * 5.0F;
leftArm.rotationPointX = MathHelper.cos(body.rotateAngleY) * 5.0F;
rightArm.rotateAngleY += body.rotateAngleY;
leftArm.rotateAngleY += body.rotateAngleY;
leftArm.rotateAngleX += body.rotateAngleY;
f6 = 1.0F - this.onGround;
f6 *= f6;
f6 *= f6;
f6 = 1.0F - f6;
f7 = MathHelper.sin(f6 * (float)Math.PI);
float f8 = MathHelper.sin(this.onGround * (float)Math.PI) * -(head.rotateAngleX - 0.7F) * 0.75F;
rightArm.rotateAngleX = (float)((double)rightArm.rotateAngleX - ((double)f7 * 1.2D + (double)f8));
rightArm.rotateAngleY += body.rotateAngleY * 2.0F;
rightArm.rotateAngleZ = MathHelper.sin(this.onGround * (float)Math.PI) * -0.4F;
}
int hold = 1;
if (this.isSneak)
{
body.rotateAngleX = 0.5F;
rightArm.rotateAngleX += 0.4F;
leftArm.rotateAngleX += 0.4F;
rightFoot.offsetZ = rightLeg.offsetZ = 4.0F;
leftFoot.offsetZ = leftLeg.offsetZ = 4.0F;
rightFoot.offsetY = rightLeg.offsetY = -3.0F;
leftFoot.offsetY = leftLeg.offsetY = -3.0F;
head.offsetY = 1.0F;
}
else
{
body.rotateAngleX = 0.0F;
rightFoot.offsetZ = rightLeg.offsetZ = 0.1F;
leftFoot.offsetZ = leftLeg.offsetZ = 0.1F;
rightFoot.offsetY = rightLeg.offsetY = 0.0F;
leftFoot.offsetY = leftLeg.offsetY = 0.0F;
head.offsetY = 0.0F;
}
if(player.getItemInUseCount() > 0) {
rightArm.rotateAngleZ += MathHelper.cos(p_78087_3_ * 0.09F) * 0.05F + 0.05F;
leftArm.rotateAngleZ -= MathHelper.cos(p_78087_3_ * 0.09F) * 0.05F + 0.05F;
rightArm.rotateAngleX += MathHelper.sin(p_78087_3_ * 0.067F) * 0.05F;
leftArm.rotateAngleX -= MathHelper.sin(p_78087_3_ * 0.067F) * 0.05F;
EnumAction action = player.getHeldItem().getItemUseAction();
if (this.aimedBow)
{
f6 = 0.0F;
f7 = 0.0F;
rightArm.rotateAngleZ = 0.0F;
leftArm.rotateAngleZ = 0.0F;
rightArm.rotateAngleY = -(0.1F - f6 * 0.6F) + head.rotateAngleY;
leftArm.rotateAngleY = 0.1F - f6 * 0.6F + head.rotateAngleY + 0.4F;
rightArm.rotateAngleX = -((float)Math.PI / 2F) + head.rotateAngleX;
leftArm.rotateAngleX = -((float)Math.PI / 2F) + head.rotateAngleX;
rightArm.rotateAngleX -= f6 * 1.2F - f7 * 0.4F;
leftArm.rotateAngleX -= f6 * 1.2F - f7 * 0.4F;
rightArm.rotateAngleZ += MathHelper.cos(p_78087_3_ * 0.09F) * 0.05F + 0.05F;
leftArm.rotateAngleZ -= MathHelper.cos(p_78087_3_ * 0.09F) * 0.05F + 0.05F;
rightArm.rotateAngleX += MathHelper.sin(p_78087_3_ * 0.067F) * 0.05F;
leftArm.rotateAngleX -= MathHelper.sin(p_78087_3_ * 0.067F) * 0.05F;
}
}
if(action == EnumAction.block)
hold = 3;
if(action == EnumAction.bow)
this.aimedBow = true;
}
if(player.getHeldItem().getItem() instanceof IHoldableWeapon)
this.aimedBow = true;
rightArm.rotateAngleX = rightArm.rotateAngleX * 0.5F - ((float) Math.PI / 10F) * hold;
}
this.isSneak = player.isSneaking();
this.isRiding = player.isRiding();
}
if(this.isRiding) {
rightArm.rotateAngleX += -((float) Math.PI / 5F);
leftArm.rotateAngleX += -((float) Math.PI / 5F);
rightFoot.rotateAngleX = rightLeg.rotateAngleX = -((float) Math.PI * 2F / 5F);
leftFoot.rotateAngleX = leftLeg.rotateAngleX = -((float) Math.PI * 2F / 5F);
rightFoot.rotateAngleY = rightLeg.rotateAngleY = ((float) Math.PI / 10F);
leftFoot.rotateAngleY = leftLeg.rotateAngleY = -((float) Math.PI / 10F);
}
if(this.heldItemLeft != 0) {
leftArm.rotateAngleX = leftArm.rotateAngleX * 0.5F - ((float) Math.PI / 10F) * (float) this.heldItemLeft;
}
if(this.heldItemRight != 0) {
rightArm.rotateAngleX = rightArm.rotateAngleX * 0.5F - ((float) Math.PI / 10F) * (float) this.heldItemRight;
}
rightArm.rotateAngleY = 0.0F;
leftArm.rotateAngleY = 0.0F;
float f6;
float f7;
if(this.onGround > -9990.0F) {
f6 = this.onGround;
body.rotateAngleY = MathHelper.sin(MathHelper.sqrt_float(f6) * (float) Math.PI * 2.0F) * 0.2F;
rightArm.rotationPointZ = MathHelper.sin(body.rotateAngleY) * 5.0F;
rightArm.rotationPointX = -MathHelper.cos(body.rotateAngleY) * 5.0F;
leftArm.rotationPointZ = -MathHelper.sin(body.rotateAngleY) * 5.0F;
leftArm.rotationPointX = MathHelper.cos(body.rotateAngleY) * 5.0F;
rightArm.rotateAngleY += body.rotateAngleY;
leftArm.rotateAngleY += body.rotateAngleY;
leftArm.rotateAngleX += body.rotateAngleY;
f6 = 1.0F - this.onGround;
f6 *= f6;
f6 *= f6;
f6 = 1.0F - f6;
f7 = MathHelper.sin(f6 * (float) Math.PI);
float f8 = MathHelper.sin(this.onGround * (float) Math.PI) * -(head.rotateAngleX - 0.7F) * 0.75F;
rightArm.rotateAngleX = (float) ((double) rightArm.rotateAngleX - ((double) f7 * 1.2D + (double) f8));
rightArm.rotateAngleY += body.rotateAngleY * 2.0F;
rightArm.rotateAngleZ = MathHelper.sin(this.onGround * (float) Math.PI) * -0.4F;
}
if(this.isSneak) {
body.rotateAngleX = 0.5F;
rightArm.rotateAngleX += 0.4F;
leftArm.rotateAngleX += 0.4F;
rightFoot.offsetZ = rightLeg.offsetZ = 4.0F;
leftFoot.offsetZ = leftLeg.offsetZ = 4.0F;
rightFoot.offsetY = rightLeg.offsetY = -3.0F;
leftFoot.offsetY = leftLeg.offsetY = -3.0F;
head.offsetY = 1.0F;
} else {
body.rotateAngleX = 0.0F;
rightFoot.offsetZ = rightLeg.offsetZ = 0.1F;
leftFoot.offsetZ = leftLeg.offsetZ = 0.1F;
rightFoot.offsetY = rightLeg.offsetY = 0.0F;
leftFoot.offsetY = leftLeg.offsetY = 0.0F;
head.offsetY = 0.0F;
}
rightArm.rotateAngleZ += MathHelper.cos(p_78087_3_ * 0.09F) * 0.05F + 0.05F;
leftArm.rotateAngleZ -= MathHelper.cos(p_78087_3_ * 0.09F) * 0.05F + 0.05F;
rightArm.rotateAngleX += MathHelper.sin(p_78087_3_ * 0.067F) * 0.05F;
leftArm.rotateAngleX -= MathHelper.sin(p_78087_3_ * 0.067F) * 0.05F;
if(this.aimedBow) {
f6 = 0.0F;
f7 = 0.0F;
rightArm.rotateAngleZ = 0.0F;
leftArm.rotateAngleZ = 0.0F;
rightArm.rotateAngleY = -(0.1F - f6 * 0.6F) + head.rotateAngleY;
leftArm.rotateAngleY = 0.1F - f6 * 0.6F + head.rotateAngleY + 0.4F;
rightArm.rotateAngleX = -((float) Math.PI / 2F) + head.rotateAngleX;
leftArm.rotateAngleX = -((float) Math.PI / 2F) + head.rotateAngleX;
rightArm.rotateAngleX -= f6 * 1.2F - f7 * 0.4F;
leftArm.rotateAngleX -= f6 * 1.2F - f7 * 0.4F;
rightArm.rotateAngleZ += MathHelper.cos(p_78087_3_ * 0.09F) * 0.05F + 0.05F;
leftArm.rotateAngleZ -= MathHelper.cos(p_78087_3_ * 0.09F) * 0.05F + 0.05F;
rightArm.rotateAngleX += MathHelper.sin(p_78087_3_ * 0.067F) * 0.05F;
leftArm.rotateAngleX -= MathHelper.sin(p_78087_3_ * 0.067F) * 0.05F;
}
}
protected void bindTexture(ResourceLocation loc) {
Minecraft.getMinecraft().renderEngine.bindTexture(loc);
}
}

View File

@ -6,7 +6,6 @@ import com.hbm.main.ResourceManager;
import com.hbm.render.loader.ModelRendererObj;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.OpenGlHelper;
import net.minecraft.entity.Entity;
public class ModelArmorBismuth extends ModelArmorBase {

View File

@ -5,7 +5,6 @@ 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 ModelArmorDesh extends ModelArmorBase {
@ -32,23 +31,23 @@ public class ModelArmorDesh extends ModelArmorBase {
GL11.glShadeModel(GL11.GL_SMOOTH);
if(type == 0) {
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.steamsuit_helmet);
bindTexture(ResourceManager.steamsuit_helmet);
head.render(par7);
}
if(type == 1) {
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.steamsuit_chest);
bindTexture(ResourceManager.steamsuit_chest);
body.render(par7);
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.steamsuit_arm);
bindTexture(ResourceManager.steamsuit_arm);
leftArm.render(par7);
rightArm.render(par7);
}
if(type == 2) {
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.steamsuit_leg);
bindTexture(ResourceManager.steamsuit_leg);
leftLeg.render(par7);
rightLeg.render(par7);
}
if(type == 3) {
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.steamsuit_leg);
bindTexture(ResourceManager.steamsuit_leg);
leftFoot.render(par7);
rightFoot.render(par7);
}

View File

@ -0,0 +1,62 @@
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.renderer.entity.RenderPlayer;
import net.minecraft.entity.Entity;
public class ModelMan extends ModelArmorBase {
public ModelMan() {
super(0);
head = new ModelRendererObj(ResourceManager.player_manly_af, "Head");
body = new ModelRendererObj(ResourceManager.player_manly_af, "Body");
leftArm = new ModelRendererObj(ResourceManager.player_manly_af, "LeftArm").setRotationPoint(-5.0F, 2.0F, 0.0F);
rightArm = new ModelRendererObj(ResourceManager.player_manly_af, "RightArm").setRotationPoint(5.0F, 2.0F, 0.0F);
leftLeg = new ModelRendererObj(ResourceManager.player_manly_af, "LeftLeg").setRotationPoint(1.9F, 12.0F, 0.0F);
rightLeg = new ModelRendererObj(ResourceManager.player_manly_af, "RightLeg").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.glEnable(GL11.GL_LIGHTING);
bindTexture(ResourceManager.player_manly_tex);
head.render(0.0625F);
body.render(0.0625F);
leftArm.render(0.0625F);
rightArm.render(0.0625F);
leftLeg.render(0.0625F);
rightLeg.render(0.0625F);
GL11.glPopMatrix();
}
public void render(Entity par1Entity, float par2, float par3, float par4, float par5, float par6, float par7, RenderPlayer render) {
this.isSneak = par1Entity.isSneaking();
setRotationAngles(par2, par3, par4, par5, par6, par7, par1Entity);
head.copyRotationFrom(render.modelBipedMain.bipedHead);
body.copyRotationFrom(render.modelBipedMain.bipedBody);
leftArm.copyRotationFrom(render.modelBipedMain.bipedLeftArm);
rightArm.copyRotationFrom(render.modelBipedMain.bipedRightArm);
leftLeg.copyRotationFrom(render.modelBipedMain.bipedLeftLeg);
rightLeg.copyRotationFrom(render.modelBipedMain.bipedRightLeg);
GL11.glPushMatrix();
GL11.glEnable(GL11.GL_LIGHTING);
bindTexture(ResourceManager.player_manly_tex);
head.render(0.0625F);
body.render(0.0625F);
leftArm.render(0.0625F);
rightArm.render(0.0625F);
leftLeg.render(0.0625F);
rightLeg.render(0.0625F);
GL11.glPopMatrix();
}
}

View File

@ -4,11 +4,11 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Random;
import java.util.Set;
import org.lwjgl.opengl.GL11;
import com.hbm.config.GeneralConfig;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.gameevent.TickEvent.ClientTickEvent;
import net.minecraft.client.Minecraft;
@ -72,7 +72,7 @@ public class RenderInfoSystem {
longest = length;
}
int mode = 0;
int mode = GeneralConfig.hintPos;
int pX = mode == 0 ? 15 : mode == 1 ? (resolution.getScaledWidth() - longest - 15) : mode == 2 ? (resolution.getScaledWidth() / 2 + 7) : (resolution.getScaledWidth() / 2 - longest - 6);
int pZ = mode == 0 ? 15 : mode == 1 ? 15 : resolution.getScaledHeight() / 2 + 7;

View File

@ -10,35 +10,45 @@ public class AudioWrapperClient extends AudioWrapper {
AudioDynamic sound;
public AudioWrapperClient(ResourceLocation source) {
sound = new AudioDynamic(source);
if(source != null)
sound = new AudioDynamic(source);
}
public void updatePosition(float x, float y, float z) {
sound.setPosition(x, y, z);
if(sound != null)
sound.setPosition(x, y, z);
}
public void updateVolume(float volume) {
sound.setVolume(volume);
if(sound != null)
sound.setVolume(volume);
}
public void updatePitch(float pitch) {
sound.setPitch(pitch);
if(sound != null)
sound.setPitch(pitch);
}
public float getVolume() {
return sound.getVolume();
if(sound != null)
return sound.getVolume();
return 1;
}
public float getPitch() {
return sound.getPitch();
if(sound != null)
return sound.getPitch();
return 1;
}
public void startSound() {
sound.start();
if(sound != null)
sound.start();
}
public void stopSound() {
sound.stop();
if(sound != null)
sound.stop();
}
}

View File

@ -0,0 +1,53 @@
package com.hbm.sound;
import net.minecraft.util.ResourceLocation;
import net.minecraft.world.World;
public class AudioWrapperClientStartStop extends AudioWrapperClient {
public String start;
public String stop;
public World world;
public float ssVol;
public float x, y, z;
public AudioWrapperClientStartStop(World world, ResourceLocation source, String start, String stop, float vol){
super(source);
if(sound != null){
sound.setVolume(vol);
}
this.ssVol = vol;
this.world = world;
this.start = start;
this.stop = stop;
}
@Override
public void updatePosition(float x, float y, float z){
this.x = x;
this.y = y;
this.z = z;
super.updatePosition(x, y, z);
}
@Override
public void startSound(){
if(start != null){
world.playSound(x, y, z, start, ssVol, 1, false);
}
super.startSound();
}
@Override
public void stopSound(){
if(stop != null){
world.playSound(x, y, z, stop, ssVol, 1, false);
}
super.stopSound();
}
@Override
public float getVolume(){
return ssVol;
}
}

View File

@ -8,6 +8,7 @@ import com.hbm.blocks.BlockDummyable;
import com.hbm.blocks.generic.BlockDoorGeneric;
import com.hbm.interfaces.IAnimatedDoor;
import com.hbm.lib.Library;
import com.hbm.main.MainRegistry;
import com.hbm.packet.PacketDispatcher;
import com.hbm.packet.TEDoorAnimationPacket;
import com.hbm.sound.AudioWrapper;
@ -249,22 +250,22 @@ public class TileEntityDoorGeneric extends TileEntityLockableBase implements IAn
if(this.state != state) {
if(this.state == 0 && state == 3){
if(audio == null){
//audio = MainRegistry.proxy.getLoopedSoundStartStop(world, doorType.getOpenSoundLoop(), doorType.getOpenSoundStart(), doorType.getOpenSoundEnd(), SoundCategory.BLOCKS, pos.getX(), pos.getY(), pos.getZ(), doorType.getSoundVolume(), 1);
//audio.startSound();
audio = MainRegistry.proxy.getLoopedSoundStartStop(worldObj, getDoorType().getOpenSoundLoop(), getDoorType().getOpenSoundStart(), getDoorType().getOpenSoundEnd(), xCoord, yCoord, zCoord, getDoorType().getSoundVolume(), 1);
audio.startSound();
}
if(audio2 == null && getDoorType().getSoundLoop2() != null){
//audio2 = MainRegistry.proxy.getLoopedSoundStartStop(world, doorType.getSoundLoop2(), null, null, SoundCategory.BLOCKS, pos.getX(), pos.getY(), pos.getZ(), doorType.getSoundVolume(), 1);
//audio2.startSound();
audio2 = MainRegistry.proxy.getLoopedSoundStartStop(worldObj, getDoorType().getSoundLoop2(), null, null, xCoord, yCoord, zCoord, getDoorType().getSoundVolume(), 1);
audio2.startSound();
}
}
if(this.state == 1 && state == 2){
if(audio == null){
//audio = MainRegistry.proxy.getLoopedSoundStartStop(world, doorType.getCloseSoundLoop(), doorType.getCloseSoundStart(), doorType.getCloseSoundEnd(), SoundCategory.BLOCKS, pos.getX(), pos.getY(), pos.getZ(), doorType.getSoundVolume(), 1);
//audio.startSound();
audio = MainRegistry.proxy.getLoopedSoundStartStop(worldObj, getDoorType().getCloseSoundLoop(), getDoorType().getCloseSoundStart(), getDoorType().getCloseSoundEnd(), xCoord, yCoord, zCoord, getDoorType().getSoundVolume(), 1);
audio.startSound();
}
if(audio2 == null && getDoorType().getSoundLoop2() != null){
//audio2 = MainRegistry.proxy.getLoopedSoundStartStop(world, doorType.getSoundLoop2(), null, null, SoundCategory.BLOCKS, pos.getX(), pos.getY(), pos.getZ(), doorType.getSoundVolume(), 1);
//audio2.startSound();
audio2 = MainRegistry.proxy.getLoopedSoundStartStop(worldObj, getDoorType().getSoundLoop2(), null, null, xCoord, yCoord, zCoord, getDoorType().getSoundVolume(), 1);
audio2.startSound();
}
}
if((this.state == 3 && state == 1) || (this.state == 2 && state == 0)){

View File

@ -6,12 +6,15 @@ import com.hbm.items.ModItems;
import com.hbm.lib.ModDamageSource;
import com.hbm.packet.AuxParticlePacketNT;
import com.hbm.packet.PacketDispatcher;
import com.hbm.potion.HbmPotion;
import com.hbm.util.EntityDamageUtil;
import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.potion.PotionEffect;
import net.minecraft.util.Vec3;
public class TileEntityTurretMaxwell extends TileEntityTurretBaseNT {
@ -68,7 +71,7 @@ public class TileEntityTurretMaxwell extends TileEntityTurretBaseNT {
@Override
public long getConsumption() {
return 10000 - this.blueLevel * 300;
return _5g ? 10 : 10000 - this.blueLevel * 300;
}
@Override
@ -107,6 +110,7 @@ public class TileEntityTurretMaxwell extends TileEntityTurretBaseNT {
this.blueLevel = 0;
this.blackLevel = 0;
this.pinkLevel = 0;
this._5g = false;
for(int i = 1; i < 10; i++) {
if(slots[i] != null) {
@ -127,6 +131,7 @@ public class TileEntityTurretMaxwell extends TileEntityTurretBaseNT {
if(item == ModItems.upgrade_overdrive_1) blackLevel += 1;
if(item == ModItems.upgrade_overdrive_2) blackLevel += 2;
if(item == ModItems.upgrade_overdrive_3) blackLevel += 3;
if(item == ModItems.upgrade_5g) _5g = true;;
}
}
}
@ -142,6 +147,7 @@ public class TileEntityTurretMaxwell extends TileEntityTurretBaseNT {
int blueLevel;
int blackLevel;
int pinkLevel;
boolean _5g;
int checkDelay;
@ -152,7 +158,12 @@ public class TileEntityTurretMaxwell extends TileEntityTurretBaseNT {
if(this.target != null && this.getPower() >= demand) {
EntityDamageUtil.attackEntityFromIgnoreIFrame(this.target, ModDamageSource.microwave, (this.blackLevel * 10 + this.redLevel + 1F) * 0.25F);
if(_5g && target instanceof EntityPlayer) {
EntityPlayer living = (EntityPlayer) target;
living.addPotionEffect(new PotionEffect(HbmPotion.death.id, 30 * 60 * 20, 0, true));
} else {
EntityDamageUtil.attackEntityFromIgnoreIFrame(this.target, ModDamageSource.microwave, (this.blackLevel * 10 + this.redLevel + 1F) * 0.25F);
}
if(pinkLevel > 0)
this.target.setFire(this.pinkLevel * 3);

View File

@ -224,6 +224,7 @@ public class ArmorUtil {
"rubber",
"hev",
"ajr",
"rpa",
"spacesuit"
};

View File

@ -6,13 +6,9 @@ import com.hbm.blocks.ModBlocks;
import com.hbm.blocks.generic.BlockBobble.BobbleType;
import com.hbm.blocks.generic.BlockBobble.TileEntityBobble;
import com.hbm.lib.HbmChestContents;
import com.hbm.tileentity.machine.TileEntityLockableBase;
import com.hbm.tileentity.machine.storage.TileEntityCrateIron;
import com.hbm.util.LootGenerator;
import com.hbm.world.worldgen.ComponentNTMFeatures.LabTiles;
import net.minecraft.block.Block;
import net.minecraft.block.BlockSandStone;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemDoor;
import net.minecraft.nbt.NBTTagCompound;

View File

@ -10,7 +10,6 @@ import com.hbm.config.GeneralConfig;
import net.minecraft.world.World;
import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.biome.BiomeGenMesa;
import net.minecraft.world.gen.structure.ComponentScatteredFeaturePieces;
import net.minecraft.world.gen.structure.MapGenStructure;
import net.minecraft.world.gen.structure.StructureStart;

View File

@ -5,13 +5,10 @@ import java.util.Random;
import com.hbm.config.GeneralConfig;
import cpw.mods.fml.common.IWorldGenerator;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import net.minecraft.block.Block;
import net.minecraft.world.World;
import net.minecraft.world.chunk.IChunkProvider;
import net.minecraftforge.event.terraingen.ChunkProviderEvent.ReplaceBiomeBlocks;
import net.minecraftforge.event.terraingen.InitMapGenEvent.EventType;
import net.minecraftforge.event.terraingen.PopulateChunkEvent;
import net.minecraftforge.event.terraingen.TerrainGen;
public class NTMWorldGenerator implements IWorldGenerator {
@ -35,10 +32,7 @@ public class NTMWorldGenerator implements IWorldGenerator {
}
}
private void generateNether(World world, Random rand, IChunkProvider chunkGenerator, int chunkX, int chunkZ) {
// TODO Auto-generated method stub
}
private void generateNether(World world, Random rand, IChunkProvider chunkGenerator, int chunkX, int chunkZ) { }
private void generateSurface(World world, Random rand, IChunkProvider chunkGenerator, int chunkX, int chunkZ) {
Block[] ablock = new Block[65536];
@ -55,12 +49,5 @@ public class NTMWorldGenerator implements IWorldGenerator {
}
}
private void generateEnd(World world, Random rand, IChunkProvider chunkGenerator, int chunkX, int chunkZ) {
// TODO Auto-generated method stub
}
private void generateEnd(World world, Random rand, IChunkProvider chunkGenerator, int chunkX, int chunkZ) { }
}

View File

@ -76,6 +76,8 @@ achievement.space.desc=Scheitere in jeder möglichen Weise und verschwende 90 Mi
achievement.space=Die finale Grenz-ach vergiss es
achievement.tasteofblood.desc=ist nicht Teil des Testprotokolls.
achievement.tasteofblood=Der Geschmack von Blut
achievement.witchtaunter.desc=Diese komischen Kraturen können dir garnichts!
achievement.witchtaunter=Hexen verstpotten
armor.blastProtection=Explosionsmodifikator: %s
armor.cap=Schadensobergrenze: %s
@ -188,6 +190,7 @@ chem.SF_RECLAIMED=Verfestigung von wiederaufbereitetem Industrieöl
chem.SF_SMEAR=Industrieölverfestigung
chem.SOLID_FUEL=Festbrennstoffherstellung
chem.STEAM=Wasser kochen
chem.SULFURIC_ACID=Schwefelsäureherstellung
chem.TEL=TEL mischen
chem.TEST=Test
chem.TNT=TNT-Synthese
@ -2154,6 +2157,8 @@ item.pirfenidone.name=Pirfenidon
item.pipes_steel.desc=Auf Recycling-Rezepte wurden wegen$Steuerhinterziehung verzichtet.
item.piston_selenium.name=Motorkolben
item.plan_c.name=Plan C
item.plant_item.rope.name=Seil
item.plant_item.tobacco.name=Tabak
item.plate_advanced_alloy.name=Fortgeschrittene Legierungsplatte
item.plate_aluminium.name=Aluminiumplatte
item.plate_armor_ajr.name=Eisenbeschlagene Panzerplatte
@ -2735,6 +2740,7 @@ item.turret_tau_ammo.name=Tauonengeschütz-Uranmunition
item.twinkie.name=Twinkie
item.ullapool_caber.name=Ullapool'sche Stiel
item.undefined.name=Undefined
item.upgrade_5g.name=5G-Strahlenemitter-Upgrade
item.upgrade_afterburn_1.name=Nachbrennerupgrade Mk.I
item.upgrade_afterburn_2.name=Nachbrennerupgrade Mk.II
item.upgrade_afterburn_3.name=Nachbrennerupgrade Mk.III
@ -2832,6 +2838,7 @@ itemGroup.tabTest=Nuclear Tech Mod Test Tab
itemGroup.tabWeapon=NTM Waffen und Geschütze
potion.hbm_bang=! ! !
potion.hbm_death=Schwere Mutation
potion.hbm_lead=Bleivergiftung
potion.hbm_mutation=Verdorbenes Herz
potion.hbm_potionsickness=Trankkrankheit
@ -3626,6 +3633,7 @@ tile.tile_lab_broken.name=Gebrochene Labotfliesen
tile.tile_lab_cracked.name=Gesprungene Laborfliesen
tile.tnt_ntm.name=Echtes TNT
tile.toxic_block.name=Stereotypischer grüner Schleim
tile.transition_seal.name=Übergangssiegel
tile.turret_cheapo.name=Billigsdorfer Gatling-Geschütz
tile.turret_chekhov.name=Schweres MG-Geschütz "Tschechows Gewehr"
tile.turret_cwis.name=Phalanx Mk-15 CIWS

View File

@ -96,6 +96,8 @@ achievement.selenium.desc=Yeah.
achievement.selenium=XVIII The Moon
achievement.SILEX.desc=It's cooler then it sounds, I promise.
achievement.SILEX=Separation of Isotopes by Laser Exitation
achievement.slimeball.desc=
achievement.slimeball=I should dip my balls in sulfuric acid.
achievement.stratum.desc=Hit the brakes, Mitts.
achievement.stratum=Stratum
achievement.someWounds.desc=Get ready
@ -104,6 +106,8 @@ achievement.soyuz.desc=Become crunchy.
achievement.soyuz=Baked Potato
achievement.space.desc=Fail in every way possible and waste funds worth 90 million dollars.
achievement.space=The Final Front-ah forget it
achievement.sulfuric.desc=
achievement.sulfuric=I should not have dipped my balls in sulfuric acid.
achievement.tantalum.desc=An elusive, yet ever-needed element.
achievement.tantalum="Tantalium"
achievement.tasteofblood.desc=is not part of any testing protocol.
@ -114,6 +118,8 @@ achievement.watzBoom.desc=Drain your septic tank next time.
achievement.watzBoom=Disgusting
achievement.watz.desc=Fólkvangr fields possibly included.
achievement.watz=The Power of Element-126
achievement.witchtaunter.desc=Those wacky creatures got nothing on you!
achievement.witchtaunter=Witch Taunter
achievement.ZIRNOXBoom.desc=cope, seethe, mald
achievement.ZIRNOXBoom=CIRNOX
@ -360,6 +366,7 @@ chem.SF_RECLAIMED=Reclaimed Oil Solidification
chem.SF_SMEAR=Industrial Oil Solidification
chem.SOLID_FUEL=Solid Rocket Fuel Production
chem.STEAM=Water Boiling
chem.SULFURIC_ACID=Sulfuric Acid Production
chem.TEL=TEL Mixing
chem.TEST=Test
chem.TNT=TNT Synthesis
@ -2445,6 +2452,8 @@ item.pipes_steel.desc=Uncrafting was omitted due to tax evasion.
item.pirfenidone.name=Pirfenidone
item.piston_selenium.name=Combustion Engine Piston
item.plan_c.name=Plan C
item.plant_item.rope.name=Rope
item.plant_item.tobacco.name=Tobacco
item.plate_advanced_alloy.name=Advanced Alloy Plate
item.plate_aluminium.name=Aluminium Plate
item.plate_armor_ajr.name=Iron-Shod Armor Plating
@ -3098,6 +3107,7 @@ item.turret_tau_ammo.name=Tau Turret Uranium Ammo
item.twinkie.name=Twinkie
item.ullapool_caber.name=Ullapool Caber
item.undefined.name=Undefined
item.upgrade_5g.name=5G Radiation Emitter Upgrade
item.upgrade_afterburn_1.name=Afterburner Upgrade Mk.I
item.upgrade_afterburn_2.name=Afterburner Upgrade Mk.II
item.upgrade_afterburn_3.name=Afterburner Upgrade Mk.III
@ -3204,6 +3214,7 @@ itemGroup.tabTest=Nuclear Tech Mod Test Tab
itemGroup.tabWeapon=NTM Weapons and Turrets
potion.hbm_bang=! ! !
potion.hbm_death=Heavy Mutation
potion.hbm_lead=Lead Poisoning
potion.hbm_mutation=Tainted Heart
potion.hbm_phosphorus=Phosphorus Burns
@ -4000,6 +4011,7 @@ tile.tile_lab_broken.name=Broken Laboratory Tiles
tile.tile_lab_cracked.name=Cracked Laboratory Tiles
tile.tnt_ntm.name=Actual TNT
tile.toxic_block.name=Stereotypical Green Ooze
tile.transition_seal.name=Transition Seal
tile.turret_cheapo.name=Cheapo Gatling Sentry
tile.turret_chekhov.name=Heavy Machine Gun Turret "Chekhov's Gun"
tile.turret_cwis.name=Phalanx Mk-15 CIWS

View File

@ -0,0 +1,599 @@
# Blender v2.79 (sub 0) OBJ File: 'player_fem.blend'
# www.blender.org
o Body
v -4.000007 0.000002 -2.000002
v -4.000009 0.000002 1.999998
v 3.999993 -0.000002 -1.999998
v 3.999991 -0.000002 2.000002
v -4.000003 12.000001 -2.000002
v -4.000005 12.000001 1.999998
v 3.999995 11.999999 2.000002
v 3.999997 11.999999 -1.999998
v -4.000003 11.000001 -2.000002
v -4.000005 11.000001 1.999998
v 3.999995 10.999999 2.000002
v 3.999997 10.999999 -1.999998
v -5.000002 15.000002 -3.000002
v -5.000004 15.000002 2.999998
v 4.999996 14.999998 3.000002
v 4.999998 14.999998 -2.999998
vt 0.312500 0.687500
vt 0.437500 0.750000
vt 0.312500 0.750000
vt 0.562500 0.687500
vt 0.437500 0.750000
vt 0.437500 0.687500
vt 0.250000 0.687500
vt 0.312500 0.500000
vt 0.500000 0.687500
vt 0.625000 0.500000
vt 0.625000 0.687500
vt 0.437500 0.687500
vt 0.500000 0.500000
vt 0.437500 0.500000
vt 0.250000 0.437500
vt 0.328125 0.500000
vt 0.265625 0.500000
vt 0.109375 0.500000
vt 0.234375 0.500000
vt -0.000000 0.437500
vt 0.078125 0.500000
vt 0.015625 0.500000
vt 0.343750 0.437500
vt 0.484375 0.500000
vt 0.359375 0.500000
vt 0.562500 0.750000
vt 0.250000 0.500000
vt 0.093750 0.437500
vt 0.500000 0.437500
vn -0.0000 -1.0000 -0.0000
vn 0.0000 1.0000 0.0000
vn -1.0000 0.0000 -0.0000
vn -0.0000 0.0000 1.0000
vn 1.0000 -0.0000 0.0000
vn 0.0000 -0.0000 -1.0000
vn 0.9701 -0.2425 0.0000
vn 0.0000 -0.2425 -0.9701
vn -0.9701 -0.2425 -0.0000
vn -0.0000 -0.2425 0.9701
s off
f 1/1/1 4/2/1 2/3/1
f 7/4/2 5/5/2 6/6/2
f 2/7/3 5/8/3 1/1/3
f 4/9/4 6/10/4 2/11/4
f 3/12/5 7/13/5 4/9/5
f 1/1/6 8/14/6 3/12/6
f 16/15/7 11/16/7 12/17/7
f 9/18/8 16/15/8 12/19/8
f 14/20/9 9/21/9 10/22/9
f 15/23/10 10/24/10 11/25/10
f 1/1/1 3/12/1 4/2/1
f 7/4/2 8/26/2 5/5/2
f 2/7/3 6/27/3 5/8/3
f 4/9/4 7/13/4 6/10/4
f 3/12/5 8/14/5 7/13/5
f 1/1/6 5/8/6 8/14/6
f 16/15/7 15/23/7 11/16/7
f 9/18/8 13/28/8 16/15/8
f 14/20/9 13/28/9 9/21/9
f 15/23/10 14/29/10 10/24/10
o LeftLeg
v 4.000001 23.999998 -1.999998
v 3.999997 11.999999 -1.999998
v 0.000001 23.999998 -2.000000
v -0.000003 12.000000 -2.000000
v 3.999999 23.999998 2.000002
v 3.999995 11.999999 2.000002
v -0.000001 24.000000 2.000000
v -0.000005 12.000000 2.000000
vt 0.125000 0.687500
vt 0.062500 0.500000
vt 0.125000 0.500000
vt 0.062500 0.687500
vt -0.000000 0.500000
vt 0.250000 0.687500
vt 0.187500 0.500000
vt 0.250000 0.500000
vt 0.187500 0.687500
vt 0.125000 0.687500
vt 0.187500 0.750000
vt 0.125000 0.750000
vt 0.125000 0.750000
vt 0.062500 0.750000
vt -0.000000 0.687500
vt 0.187500 0.687500
vn 0.0000 -0.0000 -1.0000
vn -1.0000 0.0000 -0.0000
vn -0.0000 0.0000 1.0000
vn 1.0000 -0.0000 0.0000
vn 0.0000 1.0000 -0.0000
vn -0.0000 -1.0000 -0.0000
s off
f 18/30/11 19/31/11 17/32/11
f 20/33/12 23/34/12 19/31/12
f 24/35/13 21/36/13 23/37/13
f 22/38/14 17/32/14 21/36/14
f 23/39/15 17/40/15 19/41/15
f 20/33/16 22/42/16 24/43/16
f 18/30/11 20/33/11 19/31/11
f 20/33/12 24/44/12 23/34/12
f 24/35/13 22/38/13 21/36/13
f 22/38/14 18/30/14 17/32/14
f 23/39/15 21/45/15 17/40/15
f 20/33/16 18/30/16 22/42/16
o RightLeg
v -3.999999 24.000000 -2.000002
v -4.000003 12.000001 -2.000002
v 0.000001 23.999998 -2.000000
v -0.000003 12.000000 -2.000000
v -4.000001 24.000000 1.999998
v -4.000005 12.000001 1.999998
v -0.000001 24.000000 2.000000
v -0.000005 12.000000 2.000000
vt 0.062500 0.500000
vt 0.125000 0.687500
vt 0.125000 0.500000
vt -0.000000 0.500000
vt 0.062500 0.687500
vt 0.187500 0.500000
vt 0.250000 0.687500
vt 0.250000 0.500000
vt 0.187500 0.687500
vt 0.187500 0.750000
vt 0.125000 0.687500
vt 0.125000 0.750000
vt 0.125000 0.750000
vt 0.062500 0.750000
vt -0.000000 0.687500
vt 0.187500 0.687500
vn 0.0000 -0.0000 -1.0000
vn 1.0000 -0.0000 0.0000
vn -0.0000 0.0000 1.0000
vn -1.0000 0.0000 -0.0000
vn 0.0000 1.0000 -0.0000
vn -0.0000 -1.0000 0.0000
s off
f 27/46/17 26/47/17 25/48/17
f 31/49/18 28/50/18 27/46/18
f 29/51/19 32/52/19 31/53/19
f 25/48/20 30/54/20 29/51/20
f 25/55/21 31/56/21 27/57/21
f 30/58/22 28/50/22 32/59/22
f 27/46/17 28/50/17 26/47/17
f 31/49/18 32/60/18 28/50/18
f 29/51/19 30/54/19 32/52/19
f 25/48/20 26/47/20 30/54/20
f 25/55/21 29/61/21 31/56/21
f 30/58/22 26/47/22 28/50/22
o RightArm
v -4.000007 0.000002 -2.000002
v -4.000009 0.000002 1.999998
v -4.000005 12.000001 1.999998
v -4.000003 12.000001 -2.000002
v -7.000009 0.000002 1.999997
v -7.000007 0.000002 -2.000002
v -7.000005 12.000002 1.999997
v -7.000003 12.000002 -2.000002
vt 0.687500 0.687500
vt 0.625000 0.500000
vt 0.625000 0.687500
vt 0.796875 0.500000
vt 0.734375 0.687500
vt 0.796875 0.687500
vt 0.687500 0.500000
vt 0.781250 0.750000
vt 0.734375 0.687500
vt 0.734375 0.750000
vt 0.843750 0.687500
vt 0.843750 0.500000
vt 0.687500 0.750000
vt 0.734375 0.500000
vt 0.781250 0.687500
vt 0.734375 0.750000
vn 1.0000 -0.0000 0.0000
vn -1.0000 0.0000 -0.0000
vn 0.0000 -0.0000 -1.0000
vn 0.0000 1.0000 0.0000
vn -0.0000 0.0000 1.0000
vn 0.0000 -1.0000 0.0000
s off
f 33/62/23 35/63/23 34/64/23
f 39/65/24 38/66/24 37/67/24
f 38/66/25 36/68/25 33/62/25
f 40/69/26 35/70/26 36/71/26
f 39/65/27 34/72/27 35/73/27
f 34/74/28 38/66/28 33/62/28
f 33/62/23 36/68/23 35/63/23
f 39/65/24 40/75/24 38/66/24
f 38/66/25 40/75/25 36/68/25
f 40/69/26 39/76/26 35/70/26
f 39/65/27 37/67/27 34/72/27
f 34/74/28 37/77/28 38/66/28
o LeftArm
v 3.999993 -0.000002 -1.999998
v 3.999991 -0.000002 2.000002
v 3.999995 11.999999 2.000002
v 3.999997 11.999999 -1.999998
v 6.999991 -0.000002 2.000003
v 6.999993 -0.000002 -1.999997
v 6.999995 11.999998 2.000003
v 6.999997 11.999998 -1.999997
vt 0.625000 0.500000
vt 0.687500 0.687500
vt 0.625000 0.687500
vt 0.734375 0.687500
vt 0.796875 0.500000
vt 0.796875 0.687500
vt 0.687500 0.500000
vt 0.734375 0.687500
vt 0.781250 0.750000
vt 0.734375 0.750000
vt 0.843750 0.687500
vt 0.843750 0.500000
vt 0.687500 0.750000
vt 0.734375 0.750000
vt 0.734375 0.500000
vt 0.781250 0.687500
vn -1.0000 0.0000 -0.0000
vn 1.0000 -0.0000 0.0000
vn 0.0000 -0.0000 -1.0000
vn 0.0000 1.0000 -0.0000
vn -0.0000 0.0000 1.0000
vn 0.0000 -1.0000 0.0000
s off
f 43/78/29 41/79/29 42/80/29
f 46/81/30 47/82/30 45/83/30
f 44/84/31 46/81/31 41/79/31
f 43/85/32 48/86/32 44/87/32
f 42/88/33 47/82/33 43/89/33
f 42/90/34 46/81/34 45/91/34
f 43/78/29 44/84/29 41/79/29
f 46/81/30 48/92/30 47/82/30
f 44/84/31 48/92/31 46/81/31
f 43/85/32 47/93/32 48/86/32
f 42/88/33 45/83/33 47/82/33
f 42/90/34 41/79/34 46/81/34
o Head
v -4.000006 0.000002 -4.000001
v -4.000009 0.000002 3.999998
v 3.999994 -0.000002 -3.999998
v 3.999990 -0.000002 4.000001
v -4.000009 -7.999994 -4.000001
v -4.000012 -7.999994 3.999998
v 3.999988 -7.999998 4.000001
v 3.999991 -7.999998 -3.999998
v 3.999988 -7.999998 4.000001
v 3.999991 -7.999998 -3.999998
v 4.999990 -0.999998 4.000002
v 4.999993 -0.999998 -3.999998
v -4.000009 -7.999994 -4.000001
v -4.000012 -7.999994 3.999998
v -5.000007 -0.999994 -4.000002
v -5.000010 -0.999994 3.999998
v -4.000012 -7.999994 3.999998
v 3.999988 -7.999998 4.000001
v -4.000010 -0.999994 4.999999
v 3.999990 -0.999998 5.000001
v 0.999990 0.000000 5.000000
v 0.999988 -7.999996 4.000000
v -1.000010 0.000000 5.000000
v -1.000012 -7.999996 4.000000
v 0.999993 10.000000 5.000000
v -1.000007 10.000000 5.000000
v 0.999991 0.000000 3.000000
v -1.000009 0.000000 3.000000
v 0.999994 10.000000 3.000000
v -1.000006 10.000000 3.000000
v -0.500006 11.500000 3.500000
v -0.500006 10.500000 3.500000
v -0.500006 11.500000 4.500000
v -0.500006 10.500000 4.500000
v 0.499994 11.500000 3.500000
v 0.499994 10.500000 3.500000
v 0.499994 11.500000 4.500000
v 0.499994 10.500000 4.500000
v 0.999994 12.000000 5.000000
v -1.000006 12.000000 5.000000
v 0.999995 12.000000 3.000000
v -1.000005 12.000000 3.000000
v 0.499995 15.000000 4.500000
v -0.500005 15.000000 4.500000
v 0.499995 15.000000 3.500000
v -0.500005 15.000000 3.500000
v -0.000004 16.000000 4.000000
v -0.500006 11.500000 4.000000
v -0.500006 10.500000 4.000000
v 0.499994 11.500000 4.000000
v 0.499994 10.500000 4.000000
v -2.500006 12.000001 3.999999
v -2.500006 10.000001 3.999999
v 2.499994 11.999999 4.000001
v 2.499994 9.999999 4.000001
v -0.000009 -7.999996 -3.500000
v 3.999991 -7.999998 -3.999998
v -4.000009 -7.999994 -4.000001
v -1.000009 -8.999996 -4.500000
v 0.999991 -8.999996 -4.500000
v -5.000007 -2.999994 -5.000002
v 4.999993 -2.999998 -4.999998
v 3.999990 -5.499998 -0.499998
v 3.999990 -6.499998 -0.499998
v 3.999990 -5.499998 0.500002
v 3.999990 -6.499998 0.500002
v 4.999990 -5.499998 -0.499998
v 4.499990 -6.499998 -0.499998
v 4.999990 -5.499998 0.500002
v 4.499990 -6.499998 0.500002
v -5.000010 -5.499994 -0.500002
v -4.500010 -6.499994 -0.500002
v -5.000010 -5.499994 0.499998
v -4.500010 -6.499994 0.499998
v -4.000010 -5.499994 -0.500002
v -4.000010 -6.499994 -0.500002
v -4.000010 -5.499994 0.499998
v -4.000010 -6.499994 0.499998
v -4.312510 -6.812494 -1.500002
v -4.312510 -6.812494 1.499998
v -4.687509 -4.187494 -1.500002
v -4.687510 -4.187494 1.499998
v 4.312490 -6.812498 1.500002
v 4.312490 -6.812498 -1.499998
v 4.687490 -4.187498 1.500002
v 4.687491 -4.187498 -1.499998
vt 0.250000 1.000000
vt 0.375000 0.875000
vt 0.375000 1.000000
vt 0.125000 0.875000
vt 0.250000 1.000000
vt 0.125000 1.000000
vt 0.250000 0.750000
vt 0.125000 0.750000
vt -0.000000 0.875000
vt -0.000000 0.750000
vt 0.500000 0.750000
vt 0.375000 0.875000
vt 0.375000 0.750000
vt 0.250000 0.875000
vt 0.750000 0.765625
vt 0.875000 0.875000
vt 0.750000 0.875000
vt 0.500000 0.765625
vt 0.625000 0.875000
vt 0.500000 0.875000
vt 0.875000 0.765625
vt 1.000000 0.875000
vt 0.875000 0.875000
vt 0.906250 0.640625
vt 0.875000 0.765625
vt 0.875000 0.640625
vt 0.906250 0.484375
vt 0.843750 0.484375
vt 0.875000 0.484375
vt 0.937500 0.640625
vt 0.968750 0.484375
vt 0.937500 0.484375
vt 0.859375 0.765625
vt 0.843750 0.640625
vt 0.921875 0.765625
vt 0.929688 0.476562
vt 0.914062 0.460938
vt 0.929688 0.460938
vt 0.898438 0.476562
vt 0.882812 0.460938
vt 0.898438 0.460938
vt 0.867188 0.476562
vt 0.851562 0.460938
vt 0.867188 0.460938
vt 0.960938 0.476562
vt 0.945312 0.460938
vt 0.960938 0.460938
vt 0.945312 0.476562
vt 0.882812 0.476562
vt 0.914062 0.476562
vt 0.875000 0.453125
vt 0.937500 0.453125
vt 0.968750 0.453125
vt 0.906250 0.453125
vt 0.929688 0.406250
vt 0.898438 0.406250
vt 0.960938 0.406250
vt 0.843750 0.453125
vt 0.867188 0.406250
vt 0.851562 0.406250
vt 0.859375 0.390625
vt 0.812500 0.476562
vt 0.843750 0.500000
vt 0.812500 0.492188
vt 0.914062 0.406250
vt 0.921875 0.390625
vt 0.890625 0.390625
vt 0.882812 0.406250
vt 0.953125 0.390625
vt 0.945312 0.406250
vt 0.812500 0.492188
vt 0.781250 0.468750
vt 0.812500 0.476562
vt 0.687500 0.875000
vt 0.625000 0.875000
vt 0.671875 0.890625
vt 0.750000 0.875000
vt 0.703125 0.890625
vt 0.687500 0.875000
vt 0.750000 0.781250
vt 0.734375 0.859375
vt 0.687500 0.875000
vt 0.640625 0.859375
vt 0.625000 0.781250
vt 0.375000 0.882812
vt 0.390625 0.875000
vt 0.390625 0.890625
vt 0.406250 0.875000
vt 0.421875 0.882812
vt 0.406250 0.890625
vt 0.406250 0.906250
vt 0.390625 0.890625
vt 0.375000 0.882812
vt 0.390625 0.875000
vt 0.421875 0.875000
vt 0.437500 0.882812
vt 0.406250 0.875000
vt 0.421875 0.882812
vt 0.406250 0.890625
vt 0.437500 0.882812
vt 0.421875 0.875000
vt 0.437500 0.875000
vt 0.390625 0.906250
vt 0.437500 0.875000
vt 0.484375 0.914062
vt 0.437500 0.914062
vt 0.437500 0.875000
vt 0.484375 0.914062
vt 0.437500 0.914062
vt 0.250000 0.875000
vt 0.500000 0.875000
vt 0.875000 0.765625
vt 0.625000 0.765625
vt 1.000000 0.765625
vt 0.906250 0.765625
vt 0.968750 0.640625
vt 0.851562 0.476562
vt 0.843750 0.468750
vt 0.781250 0.500000
vt 0.375000 0.875000
vt 0.390625 0.906250
vt 0.375000 0.875000
vt 0.437500 0.875000
vt 0.406250 0.906250
vt 0.484375 0.875000
vt 0.484375 0.875000
vn 0.0000 1.0000 0.0000
vn -0.0000 -1.0000 0.0000
vn 0.0000 -0.0000 -1.0000
vn -1.0000 0.0000 -0.0000
vn -0.0000 0.0000 1.0000
vn 1.0000 -0.0000 0.0000
vn 0.9899 -0.1414 0.0000
vn -0.9899 -0.1414 -0.0000
vn -0.0000 -0.1414 0.9899
vn 0.0000 -0.1240 0.9923
vn 0.7071 0.7071 0.0000
vn 0.0000 0.7071 -0.7071
vn 0.0000 0.7071 0.7071
vn -0.7071 0.7071 0.0000
vn 0.0000 -0.7071 0.7071
vn -0.7071 -0.7071 0.0000
vn 0.0000 -0.7071 -0.7071
vn 0.7071 -0.7071 0.0000
vn -0.9864 0.1644 -0.0000
vn 0.0000 0.1644 0.9864
vn 0.0000 0.1644 -0.9864
vn 0.9864 0.1644 0.0000
vn 0.8944 0.4472 0.0000
vn -0.8944 0.4472 -0.0000
vn 0.0000 0.4472 0.8944
vn 0.0000 0.4472 -0.8944
vn -0.0937 -0.6556 0.7493
vn 0.0937 -0.6556 0.7493
vn 0.2357 -0.2357 -0.9428
vn -0.2357 -0.2357 -0.9428
vn 0.8944 -0.4472 0.0000
vn -0.8944 -0.4472 0.0000
s off
f 52/94/35 49/95/35 50/96/35
f 53/97/36 55/98/36 54/99/36
f 51/100/37 53/97/37 49/101/37
f 49/101/38 54/102/38 50/103/38
f 50/104/39 55/105/39 52/106/39
f 52/106/40 56/107/40 51/100/40
f 60/108/41 57/109/41 58/110/41
f 64/111/42 61/112/42 62/113/42
f 68/114/43 65/115/43 66/116/43
f 71/117/44 70/118/44 69/119/44
f 69/119/39 74/120/39 71/117/39
f 69/119/40 77/121/40 73/122/40
f 74/120/38 76/123/38 71/117/38
f 77/124/37 76/123/37 78/125/37
f 69/119/40 70/126/40 75/127/40
f 71/117/38 76/123/38 72/128/38
f 80/129/38 81/130/38 79/131/38
f 82/132/39 85/133/39 81/134/39
f 86/135/40 83/136/40 85/137/40
f 84/138/37 79/139/37 83/140/37
f 77/121/45 86/135/45 73/122/45
f 80/141/46 77/124/46 78/125/46
f 86/142/47 74/120/47 73/122/47
f 82/143/48 78/125/48 74/120/48
f 87/144/49 81/134/49 85/133/49
f 81/130/50 90/145/50 79/131/50
f 79/139/51 89/146/51 83/140/51
f 83/136/52 87/144/52 85/137/52
f 88/147/53 94/148/53 90/145/53
f 87/144/54 92/149/54 88/147/54
f 90/145/55 93/150/55 89/146/55
f 89/151/56 91/152/56 87/144/56
f 91/152/57 93/153/57 95/154/57
f 96/155/39 101/156/39 97/157/39
f 94/148/58 92/158/58 95/159/58
f 95/160/59 92/149/59 91/161/59
f 95/162/60 93/150/60 94/163/60
f 99/164/39 102/165/39 98/166/39
f 104/167/61 106/168/61 107/169/61
f 105/170/62 104/167/62 108/171/62
f 108/172/63 110/173/63 105/174/63
f 107/175/64 106/176/64 109/177/64
f 122/178/39 125/179/39 121/180/39
f 113/181/39 118/182/39 117/183/39
f 118/184/65 115/185/65 117/183/65
f 116/186/37 111/187/37 115/185/37
f 117/183/35 111/187/35 113/181/35
f 114/188/36 116/189/36 118/182/36
f 123/190/37 120/191/37 119/192/37
f 125/179/35 119/192/35 121/180/35
f 122/193/36 124/194/36 126/195/36
f 119/192/66 122/196/66 121/180/66
f 130/197/42 127/198/42 128/199/42
f 134/200/41 131/201/41 132/202/41
f 52/94/35 51/203/35 49/95/35
f 53/97/36 56/107/36 55/98/36
f 51/100/37 56/107/37 53/97/37
f 49/101/38 53/97/38 54/102/38
f 50/104/39 54/204/39 55/105/39
f 52/106/40 55/105/40 56/107/40
f 60/108/41 59/205/41 57/109/41
f 64/111/42 63/206/42 61/112/42
f 68/114/43 67/207/43 65/115/43
f 71/117/44 72/208/44 70/118/44
f 69/119/39 73/122/39 74/120/39
f 69/119/40 75/127/40 77/121/40
f 74/120/38 78/125/38 76/123/38
f 77/124/37 75/209/37 76/123/37
f 80/129/38 82/143/38 81/130/38
f 82/132/39 86/142/39 85/133/39
f 86/135/40 84/210/40 83/136/40
f 84/138/37 80/141/37 79/139/37
f 77/121/45 84/210/45 86/135/45
f 80/141/46 84/138/46 77/124/46
f 86/142/47 82/132/47 74/120/47
f 82/143/48 80/129/48 78/125/48
f 87/144/49 88/147/49 81/134/49
f 81/130/50 88/147/50 90/145/50
f 79/139/51 90/145/51 89/146/51
f 83/136/52 89/151/52 87/144/52
f 88/147/53 92/158/53 94/148/53
f 87/144/54 91/161/54 92/149/54
f 90/145/55 94/163/55 93/150/55
f 89/151/56 93/153/56 91/152/56
f 96/155/39 100/211/39 101/156/39
f 99/164/39 103/212/39 102/165/39
f 122/178/39 126/213/39 125/179/39
f 113/181/39 114/188/39 118/182/39
f 118/184/65 116/214/65 115/185/65
f 116/186/37 112/215/37 111/187/37
f 117/183/35 115/185/35 111/187/35
f 114/188/36 112/216/36 116/189/36
f 123/190/37 124/194/37 120/191/37
f 125/179/35 123/190/35 119/192/35
f 122/193/36 120/191/36 124/194/36
f 119/192/66 120/217/66 122/196/66
f 130/197/42 129/218/42 127/198/42
f 134/200/41 133/219/41 131/201/41

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -39,6 +39,8 @@
"block.chungusLever": {"category": "block", "sounds": [{"name": "block/chungusLever", "stream": false}]},
"block.bobble": {"category": "block", "sounds": [{"name": "block/bobble", "stream": false}]},
"door.TransitionSealOpen": {"category": "block", "sounds": [{"name": "block/door/transition_seal_open", "stream": true}]},
"item.techBleep": {"category": "player", "sounds": [{"name": "tool/techBleep", "stream": false}]},
"item.techBoop": {"category": "player", "sounds": [{"name": "tool/techBoop", "stream": false}]},
"item.geiger1": {"category": "player", "sounds": [{"name": "tool/geiger1", "stream": false}]},

Binary file not shown.

After

Width:  |  Height:  |  Size: 371 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 437 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 747 B

After

Width:  |  Height:  |  Size: 370 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 445 B

View File

Before

Width:  |  Height:  |  Size: 326 B

After

Width:  |  Height:  |  Size: 326 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 290 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 352 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 289 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 36 KiB

View File

@ -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_X4200",
"version":"1.0.27_X4214",
"mcversion": "1.7.10",
"url": "",
"updateUrl": "",