New fleija & ivy textures, micro nuclear missile, CWIS & radar fixed

This commit is contained in:
HbmMods 2018-03-06 22:32:07 +01:00
parent 40b40ab638
commit a2e781a175
28 changed files with 1904 additions and 2529 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 288 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 500 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 786 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

View File

@ -753,7 +753,7 @@ public class ModBlocks {
turret_flamer = new TurretFlamer(Material.iron).setBlockName("turret_flamer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_flamer"); turret_flamer = new TurretFlamer(Material.iron).setBlockName("turret_flamer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_flamer");
turret_tau = new TurretTau(Material.iron).setBlockName("turret_tau").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_tau"); turret_tau = new TurretTau(Material.iron).setBlockName("turret_tau").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_tau");
turret_spitfire = new TurretSpitfire(Material.iron).setBlockName("turret_spitfire").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_spitfire"); turret_spitfire = new TurretSpitfire(Material.iron).setBlockName("turret_spitfire").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_spitfire");
turret_cwis = new TurretCWIS(Material.iron).setBlockName("turret_cwis").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_cwis"); turret_cwis = new TurretCIWS(Material.iron).setBlockName("turret_cwis").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_cwis");
book_guide = new Guide(Material.iron).setBlockName("book_guide").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke); book_guide = new Guide(Material.iron).setBlockName("book_guide").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke);

View File

@ -18,6 +18,7 @@ import com.hbm.entity.missile.EntityMissileGeneric;
import com.hbm.entity.missile.EntityMissileIncendiary; import com.hbm.entity.missile.EntityMissileIncendiary;
import com.hbm.entity.missile.EntityMissileIncendiaryStrong; import com.hbm.entity.missile.EntityMissileIncendiaryStrong;
import com.hbm.entity.missile.EntityMissileInferno; import com.hbm.entity.missile.EntityMissileInferno;
import com.hbm.entity.missile.EntityMissileMicro;
import com.hbm.entity.missile.EntityMissileMirv; import com.hbm.entity.missile.EntityMissileMirv;
import com.hbm.entity.missile.EntityMissileNuclear; import com.hbm.entity.missile.EntityMissileNuclear;
import com.hbm.entity.missile.EntityMissileRain; import com.hbm.entity.missile.EntityMissileRain;
@ -419,6 +420,16 @@ public class LaunchPad extends BlockContainer implements IBomb {
p_149695_1_.spawnEntityInWorld(missile); p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000; entity.power -= 75000;
entity.slots[0] = null;
p_149695_1_.playSoundEffect(x, y, z, "hbm:weapon.missileTakeOff", 2.0F, 1.0F);
}
if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_micro && entity.power >= 75000)
{
EntityMissileMicro missile = new EntityMissileMicro(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord);
if (!p_149695_1_.isRemote)
p_149695_1_.spawnEntityInWorld(missile);
entity.power -= 75000;
entity.slots[0] = null; entity.slots[0] = null;
p_149695_1_.playSoundEffect(x, y, z, "hbm:weapon.missileTakeOff", 2.0F, 1.0F); p_149695_1_.playSoundEffect(x, y, z, "hbm:weapon.missileTakeOff", 2.0F, 1.0F);
} }

View File

@ -5,24 +5,25 @@ import java.util.List;
import com.hbm.entity.particle.EntityGasFlameFX; import com.hbm.entity.particle.EntityGasFlameFX;
import com.hbm.entity.projectile.EntityBullet; import com.hbm.entity.projectile.EntityBullet;
import com.hbm.lib.ModDamageSource; import com.hbm.lib.ModDamageSource;
import com.hbm.tileentity.bomb.TileEntityTurretCWIS; import com.hbm.tileentity.bomb.TileEntityTurretCIWS;
import com.hbm.tileentity.bomb.TileEntityTurretSpitfire; import com.hbm.tileentity.bomb.TileEntityTurretSpitfire;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.util.Vec3; import net.minecraft.util.Vec3;
import net.minecraft.world.World; import net.minecraft.world.World;
public class TurretCWIS extends TurretBase { public class TurretCIWS extends TurretBase {
public TurretCWIS(Material mat) { public TurretCIWS(Material mat) {
super(mat); super(mat);
} }
@Override @Override
public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) { public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) {
return new TileEntityTurretCWIS(); return new TileEntityTurretCIWS();
} }
@Override @Override
@ -35,7 +36,7 @@ public class TurretCWIS extends TurretBase {
if(pitch > 30) if(pitch > 30)
pitch = 30; pitch = 30;
TileEntityTurretCWIS te = (TileEntityTurretCWIS)world.getTileEntity(x, y, z); TileEntityTurretCIWS te = (TileEntityTurretCIWS)world.getTileEntity(x, y, z);
if(te.spin < 35) if(te.spin < 35)
te.spin += 5; te.spin += 5;
@ -80,14 +81,16 @@ public class TurretCWIS extends TurretBase {
double pY = posY + vec.yCoord * i; double pY = posY + vec.yCoord * i;
double pZ = posZ + vec.zCoord * i; double pZ = posZ + vec.zCoord * i;
for(int j = 0; j < entities.size(); j++) { if(world.getBlock((int)pX, (int)pY, (int)pZ).getMaterial() != Material.air)
Entity ent = entities.get(j); break;
List<Entity> hit = world.getEntitiesWithinAABBExcludingEntity(null, AxisAlignedBB.getBoundingBox(pX - 0.125, pY - 0.125, pZ - 0.125, pX + 0.125, pY + 0.125, pZ + 0.125));
for(int j = 0; j < hit.size(); j++) {
Entity ent = hit.get(j);
if(rand.nextInt(100) < hitPercent) { if(rand.nextInt(100) < hitPercent) {
if(ent.posX + ent.width * 0.75 > pX && ent.posX - ent.width * 0.75 < pX && ent.attackEntityFrom(ModDamageSource.shrapnel, 10.0F);
ent.posY + ent.height > pY && ent.posY < pY &&
ent.posZ + ent.width * 0.75 > pZ && ent.posZ - ent.width * 0.75 < pZ) {
ent.attackEntityFrom(ModDamageSource.shrapnel, (damage * 0.25F) + (rand.nextFloat() * damage * 0.75F));
}
} }
} }
} }

View File

@ -79,6 +79,7 @@ public abstract class EntityMissileBaseAdvanced extends Entity implements IChunk
ExplosionLarge.explode(worldObj, posX, posY, posZ, 5, true, false, true); ExplosionLarge.explode(worldObj, posX, posY, posZ, 5, true, false, true);
ExplosionLarge.spawnShrapnelShower(worldObj, posX, posY, posZ, motionX, motionY, motionZ, 15, 0.075); ExplosionLarge.spawnShrapnelShower(worldObj, posX, posY, posZ, motionX, motionY, motionZ, 15, 0.075);
ExplosionLarge.spawnMissileDebris(worldObj, posX, posY, posZ, motionX, motionY, motionZ, 0.25, getDebris(), getDebrisRareDrop()); ExplosionLarge.spawnMissileDebris(worldObj, posX, posY, posZ, motionX, motionY, motionZ, 0.25, getDebris(), getDebrisRareDrop());
TileEntityMachineRadar.allMissiles.remove(this);
} }
public EntityMissileBaseAdvanced(World world, float x, float y, float z, int a, int b) { public EntityMissileBaseAdvanced(World world, float x, float y, float z, int a, int b) {

View File

@ -0,0 +1,78 @@
package com.hbm.entity.missile;
import java.util.ArrayList;
import java.util.List;
import com.hbm.entity.logic.EntityNukeExplosionMK3;
import com.hbm.entity.particle.EntitySmokeFX;
import com.hbm.explosion.ExplosionLarge;
import com.hbm.explosion.ExplosionParticle;
import com.hbm.explosion.ExplosionParticleB;
import com.hbm.items.ModItems;
import com.hbm.main.MainRegistry;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
public class EntityMissileMicro extends EntityMissileBaseAdvanced {
public EntityMissileMicro(World p_i1582_1_) {
super(p_i1582_1_);
}
public EntityMissileMicro(World world, float x, float y, float z, int a, int b) {
super(world, x, y, z, a, b);
}
@Override
public void onImpact() {
if (!this.worldObj.isRemote)
{
EntityNukeExplosionMK3 entity0 = new EntityNukeExplosionMK3(this.worldObj);
entity0.posX = this.posX;
entity0.posY = this.posY;
entity0.posZ = this.posZ;
entity0.destructionRange = MainRegistry.fatmanRadius;
entity0.speed = MainRegistry.blastSpeed;
entity0.coefficient = 10.0F;
this.worldObj.spawnEntityInWorld(entity0);
if(MainRegistry.polaroidID == 11)
if(rand.nextInt(100) >= 0)
{
ExplosionParticleB.spawnMush(this.worldObj, (int)this.posX, (int)this.posY - 3, (int)this.posZ);
} else {
ExplosionParticle.spawnMush(this.worldObj, (int)this.posX, (int)this.posY - 3, (int)this.posZ);
}
else
if(rand.nextInt(100) == 0)
{
ExplosionParticleB.spawnMush(this.worldObj, (int)this.posX, (int)this.posY - 3, (int)this.posZ);
} else {
ExplosionParticle.spawnMush(this.worldObj, (int)this.posX, (int)this.posY - 3, (int)this.posZ);
}
}
}
@Override
public List<ItemStack> getDebris() {
List<ItemStack> list = new ArrayList<ItemStack>();
list.add(new ItemStack(ModItems.plate_titanium, 4));
list.add(new ItemStack(ModItems.thruster_small, 1));
return list;
}
@Override
public ItemStack getDebrisRareDrop() {
return new ItemStack(ModItems.warhead_generic_small);
}
@Override
public int getMissileType() {
return 0;
}
}

View File

@ -656,6 +656,7 @@ public class ModItems {
public static Item missile_exo; public static Item missile_exo;
public static Item missile_doomsday; public static Item missile_doomsday;
public static Item missile_taint; public static Item missile_taint;
public static Item missile_micro;
public static Item gun_rpg; public static Item gun_rpg;
public static Item gun_rpg_ammo; public static Item gun_rpg_ammo;
@ -1760,6 +1761,7 @@ public class ModItems {
missile_exo = new Item().setUnlocalizedName("missile_exo").setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":missile_exo"); missile_exo = new Item().setUnlocalizedName("missile_exo").setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":missile_exo");
missile_doomsday = new Item().setUnlocalizedName("missile_doomsday").setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":missile_doomsday"); missile_doomsday = new Item().setUnlocalizedName("missile_doomsday").setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":missile_doomsday");
missile_taint = new Item().setUnlocalizedName("missile_taint").setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":missile_taint"); missile_taint = new Item().setUnlocalizedName("missile_taint").setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":missile_taint");
missile_micro = new Item().setUnlocalizedName("missile_micro").setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":missile_micro");
gun_rpg = new GunRpg().setUnlocalizedName("gun_rpg").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_rpg_new"); gun_rpg = new GunRpg().setUnlocalizedName("gun_rpg").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_rpg_new");
gun_rpg_ammo = new Item().setUnlocalizedName("gun_rpg_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_rpg_ammo_new"); gun_rpg_ammo = new Item().setUnlocalizedName("gun_rpg_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_rpg_ammo_new");
@ -3026,6 +3028,7 @@ public class ModItems {
GameRegistry.registerItem(missile_exo, missile_exo.getUnlocalizedName()); GameRegistry.registerItem(missile_exo, missile_exo.getUnlocalizedName());
GameRegistry.registerItem(missile_doomsday, missile_doomsday.getUnlocalizedName()); GameRegistry.registerItem(missile_doomsday, missile_doomsday.getUnlocalizedName());
GameRegistry.registerItem(missile_taint, missile_taint.getUnlocalizedName()); GameRegistry.registerItem(missile_taint, missile_taint.getUnlocalizedName());
GameRegistry.registerItem(missile_micro, missile_micro.getUnlocalizedName());
//Guns //Guns
GameRegistry.registerItem(gun_revolver_iron, gun_revolver_iron.getUnlocalizedName()); GameRegistry.registerItem(gun_revolver_iron, gun_revolver_iron.getUnlocalizedName());

View File

@ -73,7 +73,7 @@ public class ClientProxy extends ServerProxy
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTurretFlamer.class, new RenderFlamerTurret()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTurretFlamer.class, new RenderFlamerTurret());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTurretTau.class, new RenderTauTurret()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTurretTau.class, new RenderTauTurret());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTurretSpitfire.class, new RenderSpitfireTurret()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTurretSpitfire.class, new RenderSpitfireTurret());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTurretCWIS.class, new RenderCWISTurret()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTurretCIWS.class, new RenderCIWSTurret());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachinePumpjack.class, new RenderPumpjack()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachinePumpjack.class, new RenderPumpjack());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineTurbofan.class, new RenderTurbofan()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineTurbofan.class, new RenderTurbofan());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachinePress.class, new RenderPress()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachinePress.class, new RenderPress());
@ -262,6 +262,7 @@ public class ClientProxy extends ServerProxy
RenderingRegistry.registerEntityRenderingHandler(EntityMeteor.class, new RenderMeteor()); RenderingRegistry.registerEntityRenderingHandler(EntityMeteor.class, new RenderMeteor());
RenderingRegistry.registerEntityRenderingHandler(EntityBoxcar.class, new RenderBoxcar()); RenderingRegistry.registerEntityRenderingHandler(EntityBoxcar.class, new RenderBoxcar());
RenderingRegistry.registerEntityRenderingHandler(EntityMissileTaint.class, new RenderMissileTaint()); RenderingRegistry.registerEntityRenderingHandler(EntityMissileTaint.class, new RenderMissileTaint());
RenderingRegistry.registerEntityRenderingHandler(EntityMissileMicro.class, new RenderMissileTaint());
RenderingRegistry.registerEntityRenderingHandler(EntityAAShell.class, new RenderMirv()); RenderingRegistry.registerEntityRenderingHandler(EntityAAShell.class, new RenderMirv());
RenderingRegistry.registerEntityRenderingHandler(EntityRocketHoming.class, new RenderSRocket()); RenderingRegistry.registerEntityRenderingHandler(EntityRocketHoming.class, new RenderSRocket());

View File

@ -103,6 +103,7 @@ import com.hbm.entity.missile.EntityMissileGeneric;
import com.hbm.entity.missile.EntityMissileIncendiary; import com.hbm.entity.missile.EntityMissileIncendiary;
import com.hbm.entity.missile.EntityMissileIncendiaryStrong; import com.hbm.entity.missile.EntityMissileIncendiaryStrong;
import com.hbm.entity.missile.EntityMissileInferno; import com.hbm.entity.missile.EntityMissileInferno;
import com.hbm.entity.missile.EntityMissileMicro;
import com.hbm.entity.missile.EntityMissileMirv; import com.hbm.entity.missile.EntityMissileMirv;
import com.hbm.entity.missile.EntityMissileNuclear; import com.hbm.entity.missile.EntityMissileNuclear;
import com.hbm.entity.missile.EntityMissileRain; import com.hbm.entity.missile.EntityMissileRain;
@ -173,7 +174,7 @@ import com.hbm.tileentity.bomb.TileEntityNukeTsar;
import com.hbm.tileentity.bomb.TileEntityRedBarrel; import com.hbm.tileentity.bomb.TileEntityRedBarrel;
import com.hbm.tileentity.bomb.TileEntityTestBombAdvanced; import com.hbm.tileentity.bomb.TileEntityTestBombAdvanced;
import com.hbm.tileentity.bomb.TileEntityTestNuke; import com.hbm.tileentity.bomb.TileEntityTestNuke;
import com.hbm.tileentity.bomb.TileEntityTurretCWIS; import com.hbm.tileentity.bomb.TileEntityTurretCIWS;
import com.hbm.tileentity.bomb.TileEntityTurretFlamer; import com.hbm.tileentity.bomb.TileEntityTurretFlamer;
import com.hbm.tileentity.bomb.TileEntityTurretHeavy; import com.hbm.tileentity.bomb.TileEntityTurretHeavy;
import com.hbm.tileentity.bomb.TileEntityTurretLight; import com.hbm.tileentity.bomb.TileEntityTurretLight;
@ -574,7 +575,7 @@ public class MainRegistry
GameRegistry.registerTileEntity(TileEntityTurretSpitfire.class, "tileentity_turret_spitfire"); GameRegistry.registerTileEntity(TileEntityTurretSpitfire.class, "tileentity_turret_spitfire");
GameRegistry.registerTileEntity(TileEntityMachineRadGen.class, "tileentity_radgen"); GameRegistry.registerTileEntity(TileEntityMachineRadGen.class, "tileentity_radgen");
GameRegistry.registerTileEntity(TileEntityMachineTransformer.class, "tileentity_transformer"); GameRegistry.registerTileEntity(TileEntityMachineTransformer.class, "tileentity_transformer");
GameRegistry.registerTileEntity(TileEntityTurretCWIS.class, "tileentity_turret_cwis"); GameRegistry.registerTileEntity(TileEntityTurretCIWS.class, "tileentity_turret_cwis");
GameRegistry.registerTileEntity(TileEntityMachineRadar.class, "tileentity_radar"); GameRegistry.registerTileEntity(TileEntityMachineRadar.class, "tileentity_radar");
GameRegistry.registerTileEntity(TileEntityBroadcaster.class, "tileentity_pink_cloud_broadcaster"); GameRegistry.registerTileEntity(TileEntityBroadcaster.class, "tileentity_pink_cloud_broadcaster");
@ -672,6 +673,7 @@ public class MainRegistry
EntityRegistry.registerModEntity(EntityExplosiveBeam.class, "entity_beam_bomb", 91, this, 1000, 1, true); EntityRegistry.registerModEntity(EntityExplosiveBeam.class, "entity_beam_bomb", 91, this, 1000, 1, true);
EntityRegistry.registerModEntity(EntityAAShell.class, "entity_aa_shell", 92, this, 1000, 1, true); EntityRegistry.registerModEntity(EntityAAShell.class, "entity_aa_shell", 92, this, 1000, 1, true);
EntityRegistry.registerModEntity(EntityRocketHoming.class, "entity_stinger", 93, this, 1000, 1, true); EntityRegistry.registerModEntity(EntityRocketHoming.class, "entity_stinger", 93, this, 1000, 1, true);
EntityRegistry.registerModEntity(EntityMissileMicro.class, "entity_missile_taint", 94, this, 1000, 1, true);
EntityRegistry.registerGlobalEntityID(EntityNuclearCreeper.class, "entity_mob_nuclear_creeper", EntityRegistry.findGlobalUniqueEntityId(), 0x204131, 0x75CE00); EntityRegistry.registerGlobalEntityID(EntityNuclearCreeper.class, "entity_mob_nuclear_creeper", EntityRegistry.findGlobalUniqueEntityId(), 0x204131, 0x75CE00);
EntityRegistry.registerGlobalEntityID(EntityHunterChopper.class, "entity_mob_hunter_chopper", EntityRegistry.findGlobalUniqueEntityId(), 0x000020, 0x2D2D72); EntityRegistry.registerGlobalEntityID(EntityHunterChopper.class, "entity_mob_hunter_chopper", EntityRegistry.findGlobalUniqueEntityId(), 0x000020, 0x2D2D72);

View File

@ -154,4 +154,5 @@ public class ResourceManager {
public static final ResourceLocation missileExo_tex = new ResourceLocation(RefStrings.MODID, "textures/models/missileExo.png"); public static final ResourceLocation missileExo_tex = new ResourceLocation(RefStrings.MODID, "textures/models/missileExo.png");
public static final ResourceLocation missileDoomsday_tex = new ResourceLocation(RefStrings.MODID, "textures/models/missileDoomsday.png"); public static final ResourceLocation missileDoomsday_tex = new ResourceLocation(RefStrings.MODID, "textures/models/missileDoomsday.png");
public static final ResourceLocation missileTaint_tex = new ResourceLocation(RefStrings.MODID, "textures/models/missileTaint.png"); public static final ResourceLocation missileTaint_tex = new ResourceLocation(RefStrings.MODID, "textures/models/missileTaint.png");
public static final ResourceLocation missileMicro_tex = new ResourceLocation(RefStrings.MODID, "textures/models/missileMicro.png");
} }

View File

@ -2,7 +2,7 @@ package com.hbm.packet;
import com.hbm.interfaces.IConsumer; import com.hbm.interfaces.IConsumer;
import com.hbm.interfaces.ISource; import com.hbm.interfaces.ISource;
import com.hbm.tileentity.bomb.TileEntityTurretCWIS; import com.hbm.tileentity.bomb.TileEntityTurretCIWS;
import com.hbm.tileentity.machine.TileEntityAMSBase; import com.hbm.tileentity.machine.TileEntityAMSBase;
import com.hbm.tileentity.machine.TileEntityAMSEmitter; import com.hbm.tileentity.machine.TileEntityAMSEmitter;
import com.hbm.tileentity.machine.TileEntityAMSLimiter; import com.hbm.tileentity.machine.TileEntityAMSLimiter;
@ -90,8 +90,8 @@ public class AuxGaugePacket implements IMessage {
else if(m.id == 3) else if(m.id == 3)
base.field = m.value; base.field = m.value;
} }
if (te instanceof TileEntityTurretCWIS) { if (te instanceof TileEntityTurretCIWS) {
TileEntityTurretCWIS cwis = (TileEntityTurretCWIS)te; TileEntityTurretCIWS cwis = (TileEntityTurretCIWS)te;
cwis.rotation = m.value; cwis.rotation = m.value;
} }

View File

@ -66,6 +66,8 @@ public class TEMissilePacket implements IMessage {
type = 17; type = 17;
if(stack.getItem() == ModItems.missile_taint) if(stack.getItem() == ModItems.missile_taint)
type = 18; type = 18;
if(stack.getItem() == ModItems.missile_micro)
type = 19;
} }
} }

View File

@ -2,6 +2,7 @@ package com.hbm.render.entity;
import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL11;
import com.hbm.entity.missile.EntityMissileTaint;
import com.hbm.lib.RefStrings; import com.hbm.lib.RefStrings;
import com.hbm.main.ResourceManager; import com.hbm.main.ResourceManager;
@ -26,7 +27,7 @@ public class RenderMissileTaint extends Render {
GL11.glScalef(2F, 2F, 2F); GL11.glScalef(2F, 2F, 2F);
GL11.glDisable(GL11.GL_CULL_FACE); GL11.glDisable(GL11.GL_CULL_FACE);
bindTexture(ResourceManager.missileTaint_tex); bindTexture(getEntityTexture(p_76986_1_));
ResourceManager.missileTaint.renderAll(); ResourceManager.missileTaint.renderAll();
GL11.glEnable(GL11.GL_CULL_FACE); GL11.glEnable(GL11.GL_CULL_FACE);
GL11.glPopMatrix(); GL11.glPopMatrix();
@ -34,6 +35,9 @@ public class RenderMissileTaint extends Render {
@Override @Override
protected ResourceLocation getEntityTexture(Entity p_110775_1_) { protected ResourceLocation getEntityTexture(Entity p_110775_1_) {
return ResourceManager.missileTaint_tex; if(p_110775_1_ instanceof EntityMissileTaint)
return ResourceManager.missileTaint_tex;
return ResourceManager.missileMicro_tex;
} }
} }

View File

@ -4,14 +4,14 @@ import org.lwjgl.opengl.GL11;
import com.hbm.main.ResourceManager; import com.hbm.main.ResourceManager;
import com.hbm.tileentity.bomb.TileEntityTurretBase; import com.hbm.tileentity.bomb.TileEntityTurretBase;
import com.hbm.tileentity.bomb.TileEntityTurretCWIS; import com.hbm.tileentity.bomb.TileEntityTurretCIWS;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
public class RenderCWISTurret extends TileEntitySpecialRenderer { public class RenderCIWSTurret extends TileEntitySpecialRenderer {
public RenderCWISTurret() { } public RenderCIWSTurret() { }
@Override @Override
public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float f) public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float f)
@ -85,7 +85,7 @@ public class RenderCWISTurret extends TileEntitySpecialRenderer {
GL11.glRotated(yaw + 180, 0F, -1F, 0F); GL11.glRotated(yaw + 180, 0F, -1F, 0F);
GL11.glRotated(pitch, 1F, 0F, 0F); GL11.glRotated(pitch, 1F, 0F, 0F);
GL11.glRotated(((TileEntityTurretCWIS)tileEntity).rotation, 0F, 0F, 1F); GL11.glRotated(((TileEntityTurretCIWS)tileEntity).rotation, 0F, 0F, 1F);
this.bindTexture(ResourceManager.universal); this.bindTexture(ResourceManager.universal);
ResourceManager.turret_cwis_gun.renderAll(); ResourceManager.turret_cwis_gun.renderAll();

View File

@ -163,6 +163,12 @@ public class RenderLaunchPadTier1 extends TileEntitySpecialRenderer {
bindTexture(ResourceManager.missileTaint_tex); bindTexture(ResourceManager.missileTaint_tex);
ResourceManager.missileTaint.renderAll(); ResourceManager.missileTaint.renderAll();
} }
if(state == 19)
{
GL11.glScalef(2F, 2F, 2F);
bindTexture(ResourceManager.missileMicro_tex);
ResourceManager.missileTaint.renderAll();
}
GL11.glEnable(GL11.GL_CULL_FACE); GL11.glEnable(GL11.GL_CULL_FACE);

View File

@ -40,7 +40,7 @@ public abstract class TileEntityTurretBase extends TileEntity {
radius /= 2; radius /= 2;
if(this instanceof TileEntityTurretSpitfire) if(this instanceof TileEntityTurretSpitfire)
radius *= 3; radius *= 3;
if(this instanceof TileEntityTurretCWIS) if(this instanceof TileEntityTurretCIWS)
radius *= 100; radius *= 100;
Entity target = null; Entity target = null;
for (int i = 0; i < iter.length; i++) for (int i = 0; i < iter.length; i++)
@ -61,7 +61,7 @@ public abstract class TileEntityTurretBase extends TileEntity {
Vec3 turret = Vec3.createVectorHelper(target.posX - (xCoord + 0.5), target.posY + target.getEyeHeight() - (yCoord + 1), target.posZ - (zCoord + 0.5)); Vec3 turret = Vec3.createVectorHelper(target.posX - (xCoord + 0.5), target.posY + target.getEyeHeight() - (yCoord + 1), target.posZ - (zCoord + 0.5));
if(this instanceof TileEntityTurretCWIS || this instanceof TileEntityTurretSpitfire) { if(this instanceof TileEntityTurretCIWS || this instanceof TileEntityTurretSpitfire) {
turret = Vec3.createVectorHelper(target.posX - (xCoord + 0.5), target.posY + target.getEyeHeight() - (yCoord + 1.5), target.posZ - (zCoord + 0.5)); turret = Vec3.createVectorHelper(target.posX - (xCoord + 0.5), target.posY + target.getEyeHeight() - (yCoord + 1.5), target.posZ - (zCoord + 0.5));
} }
@ -93,14 +93,14 @@ public abstract class TileEntityTurretBase extends TileEntity {
if(!(e instanceof EntityLivingBase) && !(e instanceof EntityMissileBaseAdvanced)) if(!(e instanceof EntityLivingBase) && !(e instanceof EntityMissileBaseAdvanced))
return false; return false;
if(this instanceof TileEntityTurretCWIS && !(e instanceof EntityMissileBaseAdvanced)) if(this instanceof TileEntityTurretCIWS && !(e instanceof EntityMissileBaseAdvanced))
return false; return false;
if(e instanceof EntityPlayer && ((EntityPlayer)e).getUniqueID().toString().equals(uuid)) if(e instanceof EntityPlayer && ((EntityPlayer)e).getUniqueID().toString().equals(uuid))
return false; return false;
Vec3 turret; Vec3 turret;
if(this instanceof TileEntityTurretSpitfire || this instanceof TileEntityTurretCWIS) if(this instanceof TileEntityTurretSpitfire || this instanceof TileEntityTurretCIWS)
turret = Vec3.createVectorHelper(xCoord + 0.5, yCoord + 1.5, zCoord + 0.5); turret = Vec3.createVectorHelper(xCoord + 0.5, yCoord + 1.5, zCoord + 0.5);
else else
turret = Vec3.createVectorHelper(xCoord + 0.5, yCoord + 1, zCoord + 0.5); turret = Vec3.createVectorHelper(xCoord + 0.5, yCoord + 1, zCoord + 0.5);

View File

@ -6,7 +6,7 @@ import com.hbm.packet.PacketDispatcher;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
public class TileEntityTurretCWIS extends TileEntityTurretBase { public class TileEntityTurretCIWS extends TileEntityTurretBase {
public int spin; public int spin;
public int rotation; public int rotation;

View File

@ -4,6 +4,7 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
import com.hbm.entity.missile.EntityMissileBaseAdvanced; import com.hbm.entity.missile.EntityMissileBaseAdvanced;
import com.hbm.entity.projectile.EntityRocketHoming;
import com.hbm.interfaces.IConsumer; import com.hbm.interfaces.IConsumer;
import com.hbm.lib.ModDamageSource; import com.hbm.lib.ModDamageSource;
import com.hbm.main.MainRegistry; import com.hbm.main.MainRegistry;
@ -81,19 +82,31 @@ public class TileEntityMachineRadar extends TileEntity implements IConsumer {
nearbyMissiles.add(new int[] { (int)mis.posX, (int)mis.posZ, mis.getMissileType() }); nearbyMissiles.add(new int[] { (int)mis.posX, (int)mis.posZ, mis.getMissileType() });
}*/ }*/
if(e instanceof EntityRocketHoming) {
EntityRocketHoming rocket = (EntityRocketHoming)e;
if(rocket.getIsCritical())
nearbyMissiles.add(new int[] { (int)e.posX, (int)e.posZ, 7 });
else
nearbyMissiles.add(new int[] { (int)e.posX, (int)e.posZ, 6 });
continue;
}
if(!(e instanceof EntityMissileBaseAdvanced) && e.width * e.width * e.height >= 0.5D && e.posY >= yCoord + 30) { if(!(e instanceof EntityMissileBaseAdvanced) && e.width * e.width * e.height >= 0.5D && e.posY >= yCoord + 30) {
nearbyMissiles.add(new int[] { (int)e.posX, (int)e.posZ, 5 }); nearbyMissiles.add(new int[] { (int)e.posX, (int)e.posZ, 5 });
} }
} }
for(Entity e : allMissiles) { for(Entity e : allMissiles) {
if(e instanceof EntityMissileBaseAdvanced) { if(e != null && !e.isDead)
if(e.posX < xCoord + range && e.posX > xCoord - range && if(e instanceof EntityMissileBaseAdvanced) {
e.posZ < zCoord + range && e.posZ > zCoord - range) { if(e.posX < xCoord + range && e.posX > xCoord - range &&
EntityMissileBaseAdvanced mis = (EntityMissileBaseAdvanced)e; e.posZ < zCoord + range && e.posZ > zCoord - range) {
nearbyMissiles.add(new int[] { (int)mis.posX, (int)mis.posZ, mis.getMissileType() }); EntityMissileBaseAdvanced mis = (EntityMissileBaseAdvanced)e;
nearbyMissiles.add(new int[] { (int)mis.posX, (int)mis.posZ, mis.getMissileType() });
}
} }
}
} }
} }