🅱️ower armor
@ -348,6 +348,10 @@ info.template_out_p=Output:
|
||||
info.template_seconds=Sekunden
|
||||
info.template_time=Produktionszeit:
|
||||
|
||||
item.ajr_boots.name=T45-AJR-Powerrüstungsstiefel
|
||||
item.ajr_helmet.name=T45-AJR-Powerrüstungshelm
|
||||
item.ajr_legs.name=T45-AJR-Powerrüstungsbeinschutz
|
||||
item.ajr_plate.name=T45-AJR-Powerrüstungsbrustpanzer
|
||||
item.alloy_axe.name=Legierungsaxt
|
||||
item.alloy_boots.name=Legierungsstiefel
|
||||
item.alloy_helmet.name=Legierungshelm
|
||||
@ -432,6 +436,8 @@ item.ammo_5mm_du.name=5mm Patrone (DU)
|
||||
item.ammo_5mm_explosive.name=5mm Patrone (Explosiv)
|
||||
item.ammo_5mm_star.name=5mm Patrone (Sternenmetall)
|
||||
item.ammo_75bolt.name=30er .75 Bolzenmagazin
|
||||
item.ammo_75bolt_incendiary.name=30er .75 Bolzenmagazin (Brand)
|
||||
item.ammo_75bolt_he.name=30er .75 Bolzenmagazin (Explosiv)
|
||||
item.ammo_9mm.name=9mm Patrone
|
||||
item.ammo_9mm_ap.name=9mm Patrone (Panzerbrechend)
|
||||
item.ammo_9mm_chlorophyte.name=9mm Patrone (Grünalgen)
|
||||
|
||||
@ -348,6 +348,10 @@ info.template_out_p=Outputs:
|
||||
info.template_seconds=seconds
|
||||
info.template_time=Production Time:
|
||||
|
||||
item.ajr_boots.name=T45-AJR Power Armor Boots
|
||||
item.ajr_helmet.name=T45-AJR Power Armor Helmet
|
||||
item.ajr_legs.name=T45-AJR Power Armor Leggings
|
||||
item.ajr_plate.name=T45-AJR Power Armor Chestplate
|
||||
item.alloy_axe.name=Advanced Alloy Axe
|
||||
item.alloy_boots.name=Advanced Alloy Boots
|
||||
item.alloy_helmet.name=Advanced Alloy Helmet
|
||||
@ -432,6 +436,8 @@ item.ammo_5mm_du.name=5mm Round (DU)
|
||||
item.ammo_5mm_explosive.name=5mm Round (Explosive)
|
||||
item.ammo_5mm_star.name=5mm Round (Starmetal)
|
||||
item.ammo_75bolt.name=.75 Bolt Magazine (30rnd)
|
||||
item.ammo_75bolt_incendiary.name=.75 Incendiary Bolt Magazine (30rnd)
|
||||
item.ammo_75bolt_he.name=.75 Bolt High-Explosive Magazine (30rnd)
|
||||
item.ammo_9mm.name=9mm Round
|
||||
item.ammo_9mm_ap.name=9mm Round (Armor Piercing)
|
||||
item.ammo_9mm_chlorophyte.name=9mm Round (Chlorophyte)
|
||||
|
||||
3938
src/main/java/assets/hbm/models/armor/AJR.obj
Normal file
|
Before Width: | Height: | Size: 654 B After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 838 B After Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 1.3 KiB |
BIN
src/main/java/assets/hbm/textures/armor/ajr_helmet.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
|
Before Width: | Height: | Size: 374 B After Width: | Height: | Size: 1.1 KiB |
BIN
src/main/java/assets/hbm/textures/items/ajr_boots.png
Normal file
|
After Width: | Height: | Size: 162 B |
BIN
src/main/java/assets/hbm/textures/items/ajr_helmet.png
Normal file
|
After Width: | Height: | Size: 265 B |
BIN
src/main/java/assets/hbm/textures/items/ajr_legs.png
Normal file
|
After Width: | Height: | Size: 232 B |
BIN
src/main/java/assets/hbm/textures/items/ajr_plate.png
Normal file
|
After Width: | Height: | Size: 270 B |
BIN
src/main/java/assets/hbm/textures/items/plate_armor_ajr.png
Normal file
|
After Width: | Height: | Size: 313 B |
@ -13,6 +13,7 @@ import com.hbm.items.ModItems;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.EnumCreatureAttribute;
|
||||
import net.minecraft.entity.IEntityLivingData;
|
||||
import net.minecraft.entity.IRangedAttackMob;
|
||||
import net.minecraft.entity.SharedMonsterAttributes;
|
||||
@ -31,6 +32,8 @@ import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.potion.Potion;
|
||||
import net.minecraft.potion.PotionEffect;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
import net.minecraft.util.DamageSource;
|
||||
import net.minecraft.util.EntityDamageSourceIndirect;
|
||||
@ -179,6 +182,19 @@ public class EntityFBI extends EntityMob implements IRangedAttackMob {
|
||||
this.addRandomArmor();
|
||||
return super.onSpawnWithEgg(data);
|
||||
}
|
||||
|
||||
public boolean isPotionApplicable(PotionEffect potion)
|
||||
{
|
||||
if(Potion.potionTypes[potion.getPotionID()].isBadEffect()) {
|
||||
|
||||
if(this.getEquipmentInSlot(4) == null)
|
||||
this.setCurrentItemOrArmor(4, new ItemStack(ModItems.gas_mask_m65));
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public void onLivingUpdate() {
|
||||
super.onLivingUpdate();
|
||||
|
||||
@ -60,6 +60,9 @@ public class EntityAI_MLPF extends EntityAIBase {
|
||||
//line length is capped so the pathfinder can manage it
|
||||
int range = distance;
|
||||
|
||||
if(vec.lengthVector() < 16)
|
||||
mover.setAttackTarget(target);
|
||||
|
||||
vec = vec.normalize();
|
||||
vec.xCoord *= range;
|
||||
vec.yCoord *= range;
|
||||
@ -74,7 +77,6 @@ public class EntityAI_MLPF extends EntityAIBase {
|
||||
|
||||
//this is where the magic happens
|
||||
this.mover.getNavigator().tryMoveToXYZ(x, y, z, this.speed);
|
||||
mover.setAttackTarget(target);
|
||||
|
||||
//System.out.println("Start successful? " + success);
|
||||
}
|
||||
|
||||
@ -27,9 +27,10 @@ public class BossSpawnHandler {
|
||||
if(world.rand.nextInt(MobConfig.maskmanChance) == 0 && !world.playerEntities.isEmpty() && world.provider.isSurfaceWorld()) { //33% chance only if there is a player online
|
||||
|
||||
EntityPlayer player = (EntityPlayer) world.playerEntities.get(world.rand.nextInt(world.playerEntities.size())); //choose a random player
|
||||
player.addChatComponentMessage(new ChatComponentText("The mask man is about to claim another victim.").setChatStyle(new ChatStyle().setColor(EnumChatFormatting.RED)));
|
||||
|
||||
if(ContaminationUtil.getRads(player) >= MobConfig.maskmanMinRad && (world.getHeightValue((int)player.posX, (int)player.posZ) > player.posY + 3 || !MobConfig.maskmanUnderground)) { //if the player has more than 50 RAD and is underground
|
||||
|
||||
player.addChatComponentMessage(new ChatComponentText("The mask man is about to claim another victim.").setChatStyle(new ChatStyle().setColor(EnumChatFormatting.RED)));
|
||||
|
||||
double spawnX = player.posX + world.rand.nextGaussian() * 20;
|
||||
double spawnZ = player.posZ + world.rand.nextGaussian() * 20;
|
||||
|
||||
@ -148,8 +148,10 @@ public class BulletConfigSyncingUtil {
|
||||
public static int R556_FLECHETTE_DU = i++;
|
||||
public static int R556_FLECHETTE_SLEEK = i++;
|
||||
public static int R556_K = i++;
|
||||
|
||||
|
||||
public static int B75_NORMAL = i++;
|
||||
public static int B75_INCENDIARY = i++;
|
||||
public static int B75_HE = i++;
|
||||
|
||||
public static int G20_NORMAL_FIRE = i++;
|
||||
public static int G20_SHRAPNEL_FIRE = i++;
|
||||
@ -337,6 +339,8 @@ public class BulletConfigSyncingUtil {
|
||||
configSet.put(R556_K, Gun556mmFactory.get556KConfig());
|
||||
|
||||
configSet.put(B75_NORMAL, Gun75BoltFactory.get75BoltConfig());
|
||||
configSet.put(B75_INCENDIARY, Gun75BoltFactory.get75BoltIncConfig());
|
||||
configSet.put(B75_HE, Gun75BoltFactory.get75BoltHEConfig());
|
||||
|
||||
configSet.put(G20_NORMAL_FIRE, Gun20GaugeFactory.get20GaugeConfig().setToFire(3));
|
||||
configSet.put(G20_SHRAPNEL_FIRE, Gun20GaugeFactory.get20GaugeShrapnelConfig().setToFire(3));
|
||||
|
||||
@ -239,7 +239,12 @@ public abstract class WeaponAbility {
|
||||
EntityLivingBase living = (EntityLivingBase) victim;
|
||||
|
||||
if(living instanceof EntitySkeleton) {
|
||||
living.entityDropItem(new ItemStack(Items.skull, 1, ((EntitySkeleton)living).getSkeletonType()), 0.0F);
|
||||
|
||||
if(((EntitySkeleton)living).getSkeletonType() == 0)
|
||||
living.entityDropItem(new ItemStack(Items.skull, 1, 0), 0.0F);
|
||||
else
|
||||
living.entityDropItem(new ItemStack(ModItems.cell_antimatter), 0.0F);
|
||||
|
||||
} else if(living instanceof EntityZombie) {
|
||||
living.entityDropItem(new ItemStack(Items.skull, 1, 2), 0.0F);
|
||||
} else if(living instanceof EntityCreeper) {
|
||||
|
||||
@ -2,16 +2,25 @@ package com.hbm.handler.guncfg;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import com.hbm.entity.projectile.EntityBulletBase;
|
||||
import com.hbm.handler.BulletConfigSyncingUtil;
|
||||
import com.hbm.handler.BulletConfiguration;
|
||||
import com.hbm.handler.GunConfiguration;
|
||||
import com.hbm.interfaces.IBulletImpactBehavior;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.packet.AuxParticlePacketNT;
|
||||
import com.hbm.packet.PacketDispatcher;
|
||||
import com.hbm.potion.HbmPotion;
|
||||
import com.hbm.render.anim.BusAnimation;
|
||||
import com.hbm.render.anim.BusAnimationKeyframe;
|
||||
import com.hbm.render.anim.BusAnimationSequence;
|
||||
import com.hbm.render.anim.HbmAnimations.AnimType;
|
||||
import com.hbm.render.util.RenderScreenOverlay.Crosshair;
|
||||
|
||||
import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.potion.PotionEffect;
|
||||
|
||||
public class Gun75BoltFactory {
|
||||
|
||||
public static GunConfiguration getBolterConfig() {
|
||||
@ -64,6 +73,8 @@ public class Gun75BoltFactory {
|
||||
|
||||
config.config = new ArrayList();
|
||||
config.config.add(BulletConfigSyncingUtil.B75_NORMAL);
|
||||
config.config.add(BulletConfigSyncingUtil.B75_INCENDIARY);
|
||||
config.config.add(BulletConfigSyncingUtil.B75_HE);
|
||||
|
||||
return config;
|
||||
}
|
||||
@ -76,12 +87,65 @@ public class Gun75BoltFactory {
|
||||
bullet.ammo = ModItems.ammo_75bolt;
|
||||
bullet.ammoCount = 30;
|
||||
bullet.spread *= inaccuracy;
|
||||
bullet.dmgMin = 16;
|
||||
bullet.dmgMax = 24;
|
||||
bullet.dmgMin = 24;
|
||||
bullet.dmgMax = 32;
|
||||
bullet.doesRicochet = false;
|
||||
bullet.explosive = 0.25F;
|
||||
|
||||
return bullet;
|
||||
}
|
||||
|
||||
public static BulletConfiguration get75BoltIncConfig() {
|
||||
|
||||
BulletConfiguration bullet = BulletConfigFactory.standardBulletConfig();
|
||||
|
||||
bullet.ammo = ModItems.ammo_75bolt_incendiary;
|
||||
bullet.ammoCount = 30;
|
||||
bullet.spread *= inaccuracy;
|
||||
bullet.dmgMin = 26;
|
||||
bullet.dmgMax = 36;
|
||||
bullet.doesRicochet = false;
|
||||
bullet.explosive = 0.25F;
|
||||
|
||||
bullet.incendiary = 5;
|
||||
bullet.doesPenetrate = false;
|
||||
|
||||
PotionEffect eff = new PotionEffect(HbmPotion.phosphorus.id, 20 * 20, 0, true);
|
||||
eff.getCurativeItems().clear();
|
||||
bullet.effects = new ArrayList();
|
||||
bullet.effects.add(new PotionEffect(eff));
|
||||
|
||||
bullet.bImpact = new IBulletImpactBehavior() {
|
||||
|
||||
@Override
|
||||
public void behaveBlockHit(EntityBulletBase bullet, int x, int y, int z) {
|
||||
|
||||
NBTTagCompound data = new NBTTagCompound();
|
||||
data.setString("type", "vanillaburst");
|
||||
data.setString("mode", "flame");
|
||||
data.setInteger("count", 15);
|
||||
data.setDouble("motion", 0.05D);
|
||||
|
||||
PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(data, bullet.posX, bullet.posY, bullet.posZ), new TargetPoint(bullet.dimension, bullet.posX, bullet.posY, bullet.posZ, 50));
|
||||
}
|
||||
};
|
||||
|
||||
return bullet;
|
||||
}
|
||||
|
||||
public static BulletConfiguration get75BoltHEConfig() {
|
||||
|
||||
BulletConfiguration bullet = BulletConfigFactory.standardBulletConfig();
|
||||
|
||||
bullet.ammo = ModItems.ammo_75bolt_he;
|
||||
bullet.ammoCount = 30;
|
||||
bullet.spread *= inaccuracy;
|
||||
bullet.dmgMin = 32;
|
||||
bullet.dmgMax = 48;
|
||||
bullet.doesRicochet = false;
|
||||
bullet.explosive = 2.5F;
|
||||
bullet.blockDamage = false;
|
||||
|
||||
return bullet;
|
||||
}
|
||||
}
|
||||
|
||||
@ -543,6 +543,26 @@ public class AssemblerRecipes {
|
||||
new ComparableStack(ModItems.ingot_u238, 1)
|
||||
}, 60);
|
||||
|
||||
makeRecipe(new ComparableStack(ModItems.ammo_75bolt_incendiary, 2), new AStack[] {
|
||||
new OreDictStack("plateSteel", 2),
|
||||
new OreDictStack("plateCopper", 1),
|
||||
new ComparableStack(ModItems.primer_50, 5),
|
||||
new ComparableStack(ModItems.casing_50, 5),
|
||||
new ComparableStack(ModItems.ingot_semtex, 3),
|
||||
new ComparableStack(ModItems.cordite, 3),
|
||||
new ComparableStack(ModItems.ingot_phosphorus, 3)
|
||||
}, 60);
|
||||
|
||||
makeRecipe(new ComparableStack(ModItems.ammo_75bolt_he, 2), new AStack[] {
|
||||
new OreDictStack("plateSteel", 2),
|
||||
new OreDictStack("plateCopper", 1),
|
||||
new ComparableStack(ModItems.primer_50, 5),
|
||||
new ComparableStack(ModItems.casing_50, 5),
|
||||
new ComparableStack(ModItems.ingot_semtex, 5),
|
||||
new ComparableStack(ModItems.cordite, 5),
|
||||
new ComparableStack(Items.redstone, 3)
|
||||
}, 60);
|
||||
|
||||
makeRecipe(new ComparableStack(ModBlocks.block_cap_nuka, 1), new AStack[] { new ComparableStack(ModItems.cap_nuka, 128) }, 10);
|
||||
makeRecipe(new ComparableStack(ModBlocks.block_cap_quantum, 1), new AStack[] { new ComparableStack(ModItems.cap_quantum, 128) }, 10);
|
||||
makeRecipe(new ComparableStack(ModBlocks.block_cap_sparkle, 1), new AStack[] { new ComparableStack(ModItems.cap_sparkle, 128) }, 10);
|
||||
|
||||
@ -199,6 +199,7 @@ public class ModItems {
|
||||
public static Item blade_meteorite;
|
||||
|
||||
public static Item plate_armor_titanium;
|
||||
public static Item plate_armor_ajr;
|
||||
public static Item plate_armor_hev;
|
||||
public static Item plate_armor_lunar;
|
||||
|
||||
@ -1205,6 +1206,8 @@ public class ModItems {
|
||||
public static Item ammo_50bmg_chlorophyte;
|
||||
public static Item ammo_50bmg_sleek;
|
||||
public static Item ammo_75bolt;
|
||||
public static Item ammo_75bolt_incendiary;
|
||||
public static Item ammo_75bolt_he;
|
||||
public static Item ammo_folly;
|
||||
public static Item ammo_folly_nuclear;
|
||||
public static Item ammo_folly_du;
|
||||
@ -1617,6 +1620,10 @@ public class ModItems {
|
||||
public static Item starmetal_plate;
|
||||
public static Item starmetal_legs;
|
||||
public static Item starmetal_boots;
|
||||
public static Item ajr_helmet;
|
||||
public static Item ajr_plate;
|
||||
public static Item ajr_legs;
|
||||
public static Item ajr_boots;
|
||||
public static Item bj_helmet;
|
||||
public static Item bj_plate;
|
||||
public static Item bj_legs;
|
||||
@ -2130,6 +2137,7 @@ public class ModItems {
|
||||
blade_meteorite = new ItemHot(10).setUnlocalizedName("blade_meteorite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":blade_meteorite");
|
||||
|
||||
plate_armor_titanium = new Item().setUnlocalizedName("plate_armor_titanium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_armor_titanium");
|
||||
plate_armor_ajr = new Item().setUnlocalizedName("plate_armor_ajr").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_armor_ajr");
|
||||
plate_armor_hev = new Item().setUnlocalizedName("plate_armor_hev").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_armor_hev");
|
||||
plate_armor_lunar = new Item().setUnlocalizedName("plate_armor_lunar").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_armor_lunar");
|
||||
|
||||
@ -3100,6 +3108,8 @@ public class ModItems {
|
||||
ammo_50bmg_chlorophyte = new ItemAmmo().setUnlocalizedName("ammo_50bmg_chlorophyte").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_50bmg_chlorophyte");
|
||||
ammo_50bmg_sleek = new ItemAmmo().setUnlocalizedName("ammo_50bmg_sleek").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_50bmg_sleek");
|
||||
ammo_75bolt = new ItemAmmo().setUnlocalizedName("ammo_75bolt").setCreativeTab(MainRegistry.weaponTab).setMaxStackSize(8).setTextureName(RefStrings.MODID + ":ammo_75bolt");
|
||||
ammo_75bolt_incendiary = new ItemAmmo().setUnlocalizedName("ammo_75bolt_incendiary").setCreativeTab(MainRegistry.weaponTab).setMaxStackSize(8).setTextureName(RefStrings.MODID + ":ammo_75bolt_incendiary");
|
||||
ammo_75bolt_he = new ItemAmmo().setUnlocalizedName("ammo_75bolt_he").setCreativeTab(MainRegistry.weaponTab).setMaxStackSize(8).setTextureName(RefStrings.MODID + ":ammo_75bolt_he");
|
||||
ammo_357_desh = new ItemAmmo().setUnlocalizedName("ammo_357_desh").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_357_desh");
|
||||
ammo_44 = new ItemAmmo().setUnlocalizedName("ammo_44").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_44");
|
||||
ammo_44_ap = new ItemAmmo().setUnlocalizedName("ammo_44_ap").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_44_ap");
|
||||
@ -3691,6 +3701,26 @@ public class ModItems {
|
||||
starmetal_legs = new ArmorFSB(MainRegistry.aMatStarmetal, 7, 2, RefStrings.MODID + ":textures/armor/starmetal_2.png").cloneStats((ArmorFSB) starmetal_helmet).setUnlocalizedName("starmetal_legs").setTextureName(RefStrings.MODID + ":starmetal_legs");
|
||||
starmetal_boots = new ArmorFSB(MainRegistry.aMatStarmetal, 7, 3, RefStrings.MODID + ":textures/armor/starmetal_1.png").cloneStats((ArmorFSB) starmetal_helmet).setUnlocalizedName("starmetal_boots").setTextureName(RefStrings.MODID + ":starmetal_boots");
|
||||
|
||||
ArmorMaterial aMatAJR = EnumHelper.addArmorMaterial("HBM_T45AJR", 150, new int[] { 3, 8, 6, 3 }, 100);
|
||||
aMatAJR.customCraftingMaterial = ModItems.plate_armor_ajr;
|
||||
ajr_helmet = new ArmorAJR(aMatAJR, 7, 0, RefStrings.MODID + ":textures/armor/starmetal_1.png", 10000000, 10000, 1000).setMod(0.25F).setCap(4.0F)
|
||||
.setFireproof(true)
|
||||
.enableVATS(true)
|
||||
.enableThermalSight(true)
|
||||
.addEffect(new PotionEffect(Potion.moveSpeed.id, 20, 1))
|
||||
.addEffect(new PotionEffect(Potion.jump.id, 20, 0))
|
||||
.addEffect(new PotionEffect(Potion.field_76443_y.id, 20, 0))
|
||||
.addEffect(new PotionEffect(HbmPotion.radx.id, 20, 0))
|
||||
.setBlastProtection(0.5F)
|
||||
//.setGravity(0.02D)
|
||||
.setStep("hbm:step.metal")
|
||||
.setJump("hbm:step.iron_jump")
|
||||
.setFall("hbm:step.iron_land")
|
||||
.addResistance("fall", 0).setUnlocalizedName("ajr_helmet").setTextureName(RefStrings.MODID + ":ajr_helmet");
|
||||
ajr_plate = new ArmorAJR(aMatAJR, 7, 1, RefStrings.MODID + ":textures/armor/starmetal_1.png", 10000000, 10000, 1000).cloneStats((ArmorFSB) ajr_helmet).setUnlocalizedName("ajr_plate").setTextureName(RefStrings.MODID + ":ajr_plate");
|
||||
ajr_legs = new ArmorAJR(aMatAJR, 7, 2, RefStrings.MODID + ":textures/armor/starmetal_2.png", 10000000, 10000, 1000).cloneStats((ArmorFSB) ajr_helmet).setUnlocalizedName("ajr_legs").setTextureName(RefStrings.MODID + ":ajr_legs");
|
||||
ajr_boots = new ArmorAJR(aMatAJR, 7, 3, RefStrings.MODID + ":textures/armor/starmetal_1.png", 10000000, 10000, 1000).cloneStats((ArmorFSB) ajr_helmet).setUnlocalizedName("ajr_boots").setTextureName(RefStrings.MODID + ":ajr_boots");
|
||||
|
||||
ArmorMaterial aMatBJ = EnumHelper.addArmorMaterial("HBM_BLACKJACK", 150, new int[] { 3, 8, 6, 3 }, 100);
|
||||
aMatBJ.customCraftingMaterial = ModItems.plate_armor_lunar;
|
||||
bj_helmet = new ArmorBJ(aMatBJ, 7, 0, RefStrings.MODID + ":textures/armor/starmetal_1.png", 10000000, 10000, 1000).setMod(0.25F).setCap(4.0F)
|
||||
@ -4443,6 +4473,7 @@ public class ModItems {
|
||||
|
||||
//Armor Plates
|
||||
GameRegistry.registerItem(plate_armor_titanium, plate_armor_titanium.getUnlocalizedName());
|
||||
GameRegistry.registerItem(plate_armor_ajr, plate_armor_ajr.getUnlocalizedName());
|
||||
GameRegistry.registerItem(plate_armor_hev, plate_armor_hev.getUnlocalizedName());
|
||||
GameRegistry.registerItem(plate_armor_lunar, plate_armor_lunar.getUnlocalizedName());
|
||||
|
||||
@ -5529,6 +5560,8 @@ public class ModItems {
|
||||
GameRegistry.registerItem(ammo_50bmg_chlorophyte, ammo_50bmg_chlorophyte.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ammo_50bmg_sleek, ammo_50bmg_sleek.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ammo_75bolt, ammo_75bolt.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ammo_75bolt_incendiary, ammo_75bolt_incendiary.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ammo_75bolt_he, ammo_75bolt_he.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ammo_fuel, ammo_fuel.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ammo_fuel_napalm, ammo_fuel_napalm.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ammo_fuel_phosphorus, ammo_fuel_phosphorus.getUnlocalizedName());
|
||||
@ -5949,6 +5982,10 @@ public class ModItems {
|
||||
GameRegistry.registerItem(t45_plate, t45_plate.getUnlocalizedName());
|
||||
GameRegistry.registerItem(t45_legs, t45_legs.getUnlocalizedName());
|
||||
GameRegistry.registerItem(t45_boots, t45_boots.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ajr_helmet, ajr_helmet.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ajr_plate, ajr_plate.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ajr_legs, ajr_legs.getUnlocalizedName());
|
||||
GameRegistry.registerItem(ajr_boots, ajr_boots.getUnlocalizedName());
|
||||
GameRegistry.registerItem(bj_helmet, bj_helmet.getUnlocalizedName());
|
||||
GameRegistry.registerItem(bj_plate, bj_plate.getUnlocalizedName());
|
||||
GameRegistry.registerItem(bj_legs, bj_legs.getUnlocalizedName());
|
||||
|
||||
33
src/main/java/com/hbm/items/armor/ArmorAJR.java
Normal file
@ -0,0 +1,33 @@
|
||||
package com.hbm.items.armor;
|
||||
|
||||
import com.hbm.render.model.ModelArmorAJR;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.client.model.ModelBiped;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
public class ArmorAJR extends ArmorFSBPowered {
|
||||
|
||||
public ArmorAJR(ArmorMaterial material, int layer, int slot, String texture, long maxPower, long chargeRate, long consumption) {
|
||||
super(material, layer, slot, texture, maxPower, chargeRate, consumption);
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
ModelArmorAJR[] models;
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public ModelBiped getArmorModel(EntityLivingBase entityLiving, ItemStack itemStack, int armorSlot) {
|
||||
|
||||
if(models == null) {
|
||||
models = new ModelArmorAJR[4];
|
||||
|
||||
for(int i = 0; i < 4; i++)
|
||||
models[i] = new ModelArmorAJR(i);
|
||||
}
|
||||
|
||||
return models[armorSlot];
|
||||
}
|
||||
}
|
||||
@ -1,5 +1,8 @@
|
||||
package com.hbm.main;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.config.GeneralConfig;
|
||||
import com.hbm.handler.FluidTypeHandler.FluidType;
|
||||
@ -9,14 +12,19 @@ import com.hbm.items.special.ItemHot;
|
||||
import com.hbm.items.weapon.GunB92Cell;
|
||||
import com.hbm.util.EnchantmentUtil;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.enchantment.Enchantment;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.init.Items;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemBlock;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.item.crafting.IRecipe;
|
||||
import net.minecraftforge.oredict.OreDictionary;
|
||||
import net.minecraftforge.oredict.ShapedOreRecipe;
|
||||
import net.minecraftforge.oredict.ShapelessOreRecipe;
|
||||
import cpw.mods.fml.common.Loader;
|
||||
import cpw.mods.fml.common.ModContainer;
|
||||
import cpw.mods.fml.common.registry.GameRegistry;
|
||||
|
||||
public class CraftingManager {
|
||||
@ -1765,6 +1773,34 @@ public class CraftingManager {
|
||||
}
|
||||
}
|
||||
|
||||
public static void crumple() {
|
||||
|
||||
if(Loader.isModLoaded("Mekanism")) {
|
||||
|
||||
List<IRecipe> toDestroy = new ArrayList();
|
||||
|
||||
Block mb = (Block) Block.blockRegistry.getObject("Mekanism:MachineBlock");
|
||||
ItemStack digiminer = new ItemStack(mb, 1, 4);
|
||||
|
||||
for(Object o : net.minecraft.item.crafting.CraftingManager.getInstance().getRecipeList()) {
|
||||
|
||||
if(o instanceof IRecipe) {
|
||||
IRecipe rec = (IRecipe)o;
|
||||
ItemStack stack = rec.getRecipeOutput();
|
||||
|
||||
if(stack != null && stack.getItem() == digiminer.getItem() && stack.getItemDamage() == digiminer.getItemDamage()) {
|
||||
toDestroy.add(rec);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(toDestroy.size() > 0) {
|
||||
net.minecraft.item.crafting.CraftingManager.getInstance().getRecipeList().removeAll(toDestroy);
|
||||
GameRegistry.addRecipe(digiminer, new Object[] { "###", "###", '#', ModItems.ingot_schrabidium });
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void AddSmeltingRec()
|
||||
{
|
||||
GameRegistry.addSmelting(Item.getItemFromBlock(ModBlocks.ore_thorium), new ItemStack(ModItems.ingot_th232), 3.0F);
|
||||
|
||||
@ -48,6 +48,7 @@ import cpw.mods.fml.common.gameevent.TickEvent;
|
||||
import cpw.mods.fml.common.gameevent.TickEvent.Phase;
|
||||
import cpw.mods.fml.common.gameevent.TickEvent.WorldTickEvent;
|
||||
import cpw.mods.fml.relauncher.ReflectionHelper;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.enchantment.Enchantment;
|
||||
import net.minecraft.enchantment.EnchantmentHelper;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
@ -64,6 +65,7 @@ import net.minecraft.init.Blocks;
|
||||
import net.minecraft.init.Items;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.item.crafting.IRecipe;
|
||||
import net.minecraft.potion.Potion;
|
||||
import net.minecraft.potion.PotionEffect;
|
||||
import net.minecraft.tileentity.TileEntitySign;
|
||||
|
||||
@ -499,6 +499,7 @@ public class ResourceManager {
|
||||
|
||||
public static final IModelCustom armor_bj = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/BJ.obj"));
|
||||
public static final IModelCustom armor_hev = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/hev.obj"));
|
||||
public static final IModelCustom armor_ajr = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/AJR.obj"));
|
||||
public static final IModelCustom armor_hat = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/hat.obj"));
|
||||
|
||||
////Texture Items
|
||||
@ -552,6 +553,11 @@ public class ResourceManager {
|
||||
public static final ResourceLocation hev_chest = new ResourceLocation(RefStrings.MODID, "textures/armor/hev_chest.png");
|
||||
public static final ResourceLocation hev_arm = new ResourceLocation(RefStrings.MODID, "textures/armor/hev_arm.png");
|
||||
|
||||
public static final ResourceLocation ajr_helmet = new ResourceLocation(RefStrings.MODID, "textures/armor/ajr_helmet.png");
|
||||
public static final ResourceLocation ajr_leg = new ResourceLocation(RefStrings.MODID, "textures/armor/ajr_leg.png");
|
||||
public static final ResourceLocation ajr_chest = new ResourceLocation(RefStrings.MODID, "textures/armor/ajr_chest.png");
|
||||
public static final ResourceLocation ajr_arm = new ResourceLocation(RefStrings.MODID, "textures/armor/ajr_arm.png");
|
||||
|
||||
public static final ResourceLocation hat = new ResourceLocation(RefStrings.MODID, "textures/armor/hat.png");
|
||||
|
||||
|
||||
|
||||
59
src/main/java/com/hbm/render/model/ModelArmorAJR.java
Normal file
@ -0,0 +1,59 @@
|
||||
package com.hbm.render.model;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.hbm.main.ResourceManager;
|
||||
import com.hbm.render.loader.ModelRendererObj;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.entity.Entity;
|
||||
|
||||
public class ModelArmorAJR extends ModelArmorBase {
|
||||
|
||||
public ModelArmorAJR(int type) {
|
||||
super(type);
|
||||
|
||||
head = new ModelRendererObj(ResourceManager.armor_ajr, "Head");
|
||||
body = new ModelRendererObj(ResourceManager.armor_ajr, "Body");
|
||||
leftArm = new ModelRendererObj(ResourceManager.armor_ajr, "LeftArm").setRotationPoint(-5.0F, 2.0F, 0.0F);
|
||||
rightArm = new ModelRendererObj(ResourceManager.armor_ajr, "RightArm").setRotationPoint(5.0F, 2.0F, 0.0F);
|
||||
leftLeg = new ModelRendererObj(ResourceManager.armor_ajr, "LeftLeg").setRotationPoint(1.9F, 12.0F, 0.0F);
|
||||
rightLeg = new ModelRendererObj(ResourceManager.armor_ajr, "RightLeg").setRotationPoint(-1.9F, 12.0F, 0.0F);
|
||||
leftFoot = new ModelRendererObj(ResourceManager.armor_ajr, "LeftFoot").setRotationPoint(1.9F, 12.0F, 0.0F);
|
||||
rightFoot = new ModelRendererObj(ResourceManager.armor_ajr, "RightFoot").setRotationPoint(-1.9F, 12.0F, 0.0F);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(Entity par1Entity, float par2, float par3, float par4, float par5, float par6, float par7) {
|
||||
|
||||
setRotationAngles(par2, par3, par4, par5, par6, par7, par1Entity);
|
||||
|
||||
GL11.glPushMatrix();
|
||||
GL11.glShadeModel(GL11.GL_SMOOTH);
|
||||
|
||||
if(type == 0) {
|
||||
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ajr_helmet);
|
||||
head.render(par7);
|
||||
}
|
||||
if(type == 1) {
|
||||
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ajr_chest);
|
||||
body.render(par7);
|
||||
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ajr_arm);
|
||||
leftArm.render(par7);
|
||||
rightArm.render(par7);
|
||||
}
|
||||
if(type == 2) {
|
||||
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ajr_leg);
|
||||
leftLeg.render(par7);
|
||||
rightLeg.render(par7);
|
||||
}
|
||||
if(type == 3) {
|
||||
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ajr_leg);
|
||||
leftFoot.render(par7);
|
||||
rightFoot.render(par7);
|
||||
}
|
||||
|
||||
GL11.glShadeModel(GL11.GL_FLAT);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
}
|
||||