wobbly autosaw engine, tintable icons that don't suck ass

This commit is contained in:
Bob 2023-03-13 22:27:50 +01:00
parent 4a4927271e
commit 8ad9004179
16 changed files with 689 additions and 914 deletions

View File

@ -1,12 +1,9 @@
package com.hbm.blocks.turret;
import com.hbm.main.MainRegistry;
import com.hbm.tileentity.TileEntityProxyCombo;
import com.hbm.tileentity.turret.TileEntityTurretBrandon;
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import net.minecraft.block.material.Material;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;

View File

@ -1,16 +1,13 @@
package com.hbm.blocks.turret;
import com.hbm.blocks.BlockDummyable;
import com.hbm.tileentity.TileEntityProxyCombo;
import com.hbm.tileentity.turret.TileEntityTurretChekhov;
import net.minecraft.block.material.Material;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
public class TurretChekhov extends BlockDummyable {
public class TurretChekhov extends TurretBaseNT {
public TurretChekhov(Material mat) {
super(mat);
@ -24,25 +21,4 @@ public class TurretChekhov extends BlockDummyable {
return new TileEntityProxyCombo().inventory().power();
}
@Override
public int[] getDimensions() {
return new int[] { 0, 0, 1, 0, 1, 0 };
}
@Override
public int getOffset() {
return 0;
}
@Override
public void setBlockBoundsBasedOnState(IBlockAccess p_149719_1_, int p_149719_2_, int p_149719_3_, int p_149719_4_) {
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
}
@Override
public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) {
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ);
}
}

View File

@ -1,16 +1,13 @@
package com.hbm.blocks.turret;
import com.hbm.blocks.BlockDummyable;
import com.hbm.tileentity.TileEntityProxyCombo;
import com.hbm.tileentity.turret.TileEntityTurretFriendly;
import net.minecraft.block.material.Material;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
public class TurretFriendly extends BlockDummyable {
public class TurretFriendly extends TurretBaseNT {
public TurretFriendly(Material mat) {
super(mat);
@ -23,25 +20,4 @@ public class TurretFriendly extends BlockDummyable {
return new TileEntityTurretFriendly();
return new TileEntityProxyCombo().inventory().power();
}
@Override
public int[] getDimensions() {
return new int[] { 0, 0, 1, 0, 1, 0 };
}
@Override
public int getOffset() {
return 0;
}
@Override
public void setBlockBoundsBasedOnState(IBlockAccess p_149719_1_, int p_149719_2_, int p_149719_3_, int p_149719_4_) {
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
}
@Override
public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) {
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ);
}
}

View File

@ -1,19 +1,13 @@
package com.hbm.blocks.turret;
import com.hbm.blocks.BlockDummyable;
import com.hbm.main.MainRegistry;
import com.hbm.tileentity.TileEntityProxyCombo;
import com.hbm.tileentity.turret.TileEntityTurretHoward;
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import net.minecraft.block.material.Material;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
public class TurretHoward extends BlockDummyable {
public class TurretHoward extends TurretBaseNT {
public TurretHoward(Material mat) {
super(mat);
@ -26,25 +20,4 @@ public class TurretHoward extends BlockDummyable {
return new TileEntityTurretHoward();
return new TileEntityProxyCombo().inventory().power();
}
@Override
public int[] getDimensions() {
return new int[] { 0, 0, 1, 0, 1, 0 };
}
@Override
public int getOffset() {
return 0;
}
@Override
public void setBlockBoundsBasedOnState(IBlockAccess p_149719_1_, int p_149719_2_, int p_149719_3_, int p_149719_4_) {
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
}
@Override
public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) {
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ);
}
}

View File

@ -1,16 +1,13 @@
package com.hbm.blocks.turret;
import com.hbm.blocks.BlockDummyable;
import com.hbm.tileentity.turret.TileEntityTurretHowardDamaged;
import net.minecraft.block.material.Material;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
public class TurretHowardDamaged extends BlockDummyable {
public class TurretHowardDamaged extends TurretBaseNT {
public TurretHowardDamaged(Material mat) {
super(mat);
@ -23,27 +20,6 @@ public class TurretHowardDamaged extends BlockDummyable {
return new TileEntityTurretHowardDamaged();
return null;
}
@Override
public int[] getDimensions() {
return new int[] { 0, 0, 1, 0, 1, 0 };
}
@Override
public int getOffset() {
return 0;
}
@Override
public void setBlockBoundsBasedOnState(IBlockAccess p_149719_1_, int p_149719_2_, int p_149719_3_, int p_149719_4_) {
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
}
@Override
public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) {
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ);
}
@Override
public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float fX, float fY, float fZ) {

View File

@ -1,16 +1,13 @@
package com.hbm.blocks.turret;
import com.hbm.blocks.BlockDummyable;
import com.hbm.tileentity.TileEntityProxyCombo;
import com.hbm.tileentity.turret.TileEntityTurretJeremy;
import net.minecraft.block.material.Material;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
public class TurretJeremy extends BlockDummyable {
public class TurretJeremy extends TurretBaseNT {
public TurretJeremy(Material mat) {
super(mat);
@ -23,25 +20,4 @@ public class TurretJeremy extends BlockDummyable {
return new TileEntityTurretJeremy();
return new TileEntityProxyCombo().inventory().power();
}
@Override
public int[] getDimensions() {
return new int[] { 0, 0, 1, 0, 1, 0 };
}
@Override
public int getOffset() {
return 0;
}
@Override
public void setBlockBoundsBasedOnState(IBlockAccess p_149719_1_, int p_149719_2_, int p_149719_3_, int p_149719_4_) {
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
}
@Override
public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) {
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ);
}
}

View File

@ -1,12 +1,9 @@
package com.hbm.blocks.turret;
import com.hbm.main.MainRegistry;
import com.hbm.tileentity.TileEntityProxyCombo;
import com.hbm.tileentity.turret.TileEntityTurretMaxwell;
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import net.minecraft.block.material.Material;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;

View File

@ -1,16 +1,13 @@
package com.hbm.blocks.turret;
import com.hbm.blocks.BlockDummyable;
import com.hbm.tileentity.TileEntityProxyCombo;
import com.hbm.tileentity.turret.TileEntityTurretRichard;
import net.minecraft.block.material.Material;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
public class TurretRichard extends BlockDummyable {
public class TurretRichard extends TurretBaseNT {
public TurretRichard(Material mat) {
super(mat);
@ -23,25 +20,4 @@ public class TurretRichard extends BlockDummyable {
return new TileEntityTurretRichard();
return new TileEntityProxyCombo().inventory().power();
}
@Override
public int[] getDimensions() {
return new int[] { 0, 0, 1, 0, 1, 0 };
}
@Override
public int getOffset() {
return 0;
}
@Override
public void setBlockBoundsBasedOnState(IBlockAccess p_149719_1_, int p_149719_2_, int p_149719_3_, int p_149719_4_) {
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
}
@Override
public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) {
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ);
}
}

View File

@ -1,16 +1,13 @@
package com.hbm.blocks.turret;
import com.hbm.blocks.BlockDummyable;
import com.hbm.tileentity.TileEntityProxyCombo;
import com.hbm.tileentity.turret.TileEntityTurretTauon;
import net.minecraft.block.material.Material;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
public class TurretTauon extends BlockDummyable {
public class TurretTauon extends TurretBaseNT {
public TurretTauon(Material mat) {
super(mat);
@ -23,25 +20,4 @@ public class TurretTauon extends BlockDummyable {
return new TileEntityTurretTauon();
return new TileEntityProxyCombo(true, true, false);
}
@Override
public int[] getDimensions() {
return new int[] { 0, 0, 1, 0, 1, 0 };
}
@Override
public int getOffset() {
return 0;
}
@Override
public void setBlockBoundsBasedOnState(IBlockAccess p_149719_1_, int p_149719_2_, int p_149719_3_, int p_149719_4_) {
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
}
@Override
public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) {
this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.5F, 1.0F);
return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ);
}
}

View File

@ -4285,163 +4285,11 @@ public class ModItems {
ammo_stinger_rocket = new ItemAmmo(AmmoStinger.class).setUnlocalizedName("ammo_stinger_rocket");
ammo_luna_sniper = new ItemAmmo(AmmoLunaticSniper.class).setUnlocalizedName("ammo_luna_sniper");
ammo_misc = new ItemAmmo(AmmoMisc.class).setUnlocalizedName("ammo_misc");
/*ammo_12gauge = new ItemAmmo().setUnlocalizedName("ammo_12gauge");
ammo_12gauge_incendiary = new ItemAmmo().setUnlocalizedName("ammo_12gauge_incendiary");
ammo_12gauge_shrapnel = new ItemAmmo().setUnlocalizedName("ammo_12gauge_shrapnel");
ammo_12gauge_du = new ItemAmmo().setUnlocalizedName("ammo_12gauge_du");
ammo_12gauge_sleek = new ItemAmmo().setUnlocalizedName("ammo_12gauge_sleek");
ammo_12gauge_marauder = new ItemAmmo().setUnlocalizedName("ammo_12gauge_marauder");
ammo_20gauge = new ItemAmmo().setUnlocalizedName("ammo_20gauge");
ammo_20gauge_slug = new ItemAmmo().setUnlocalizedName("ammo_20gauge_slug");
ammo_20gauge_flechette = new ItemAmmo().setUnlocalizedName("ammo_20gauge_flechette");
ammo_20gauge_incendiary = new ItemAmmo().setUnlocalizedName("ammo_20gauge_incendiary");
ammo_20gauge_shrapnel = new ItemAmmo().setUnlocalizedName("ammo_20gauge_shrapnel");
ammo_20gauge_explosive = new ItemAmmo().setUnlocalizedName("ammo_20gauge_explosive");
ammo_20gauge_caustic = new ItemAmmo().setUnlocalizedName("ammo_20gauge_caustic");
ammo_20gauge_shock = new ItemAmmo().setUnlocalizedName("ammo_20gauge_shock");
ammo_20gauge_wither = new ItemAmmo().setUnlocalizedName("ammo_20gauge_wither");
ammo_20gauge_sleek = new ItemAmmo().setUnlocalizedName("ammo_20gauge_sleek");
ammo_4gauge = new ItemAmmo().setUnlocalizedName("ammo_4gauge");
ammo_4gauge_slug = new ItemAmmo().setUnlocalizedName("ammo_4gauge_slug");
ammo_4gauge_flechette = new ItemAmmo().setUnlocalizedName("ammo_4gauge_flechette");
ammo_4gauge_flechette_phosphorus = new ItemAmmo().setUnlocalizedName("ammo_4gauge_flechette_phosphorus");
ammo_4gauge_explosive = new ItemAmmo().setUnlocalizedName("ammo_4gauge_explosive");
ammo_4gauge_semtex = new ItemAmmo().setUnlocalizedName("ammo_4gauge_semtex");
ammo_4gauge_balefire = new ItemAmmo().setUnlocalizedName("ammo_4gauge_balefire");
ammo_4gauge_kampf = new ItemAmmo().setUnlocalizedName("ammo_4gauge_kampf");
ammo_4gauge_canister = new ItemAmmo().setUnlocalizedName("ammo_4gauge_canister");
ammo_4gauge_claw = new ItemAmmo().setUnlocalizedName("ammo_4gauge_claw");
ammo_4gauge_vampire = new ItemAmmo().setUnlocalizedName("ammo_4gauge_vampire");
ammo_4gauge_void = new ItemAmmo().setUnlocalizedName("ammo_4gauge_void");
ammo_4gauge_titan = new ItemAmmo().setUnlocalizedName("ammo_4gauge_titan");
ammo_4gauge_sleek = new ItemAmmo().setUnlocalizedName("ammo_4gauge_sleek");
ammo_5mm = new ItemAmmo().setUnlocalizedName("ammo_5mm");
ammo_5mm_explosive = new ItemAmmo().setUnlocalizedName("ammo_5mm_explosive");
ammo_5mm_du = new ItemAmmo().setUnlocalizedName("ammo_5mm_du");
ammo_5mm_star = new ItemAmmo().setUnlocalizedName("ammo_5mm_star");
ammo_5mm_chlorophyte = new ItemAmmo().setUnlocalizedName("ammo_5mm_chlorophyte");
ammo_9mm = new ItemAmmo().setUnlocalizedName("ammo_9mm");
ammo_9mm_ap = new ItemAmmo().setUnlocalizedName("ammo_9mm_ap");
ammo_9mm_du = new ItemAmmo().setUnlocalizedName("ammo_9mm_du");
ammo_9mm_chlorophyte = new ItemAmmo().setUnlocalizedName("ammo_9mm_chlorophyte");
ammo_9mm_rocket = new ItemAmmo().setUnlocalizedName("ammo_9mm_rocket");
ammo_556 = new ItemAmmo().setUnlocalizedName("ammo_556");
ammo_556_phosphorus = new ItemAmmo().setUnlocalizedName("ammo_556_phosphorus");
ammo_556_ap = new ItemAmmo().setUnlocalizedName("ammo_556_ap");
ammo_556_du = new ItemAmmo().setUnlocalizedName("ammo_556_du");
ammo_556_star = new ItemAmmo().setUnlocalizedName("ammo_556_star");
ammo_556_chlorophyte = new ItemAmmo().setUnlocalizedName("ammo_556_chlorophyte");
ammo_556_sleek = new ItemAmmo().setUnlocalizedName("ammo_556_sleek");
ammo_556_tracer = new ItemAmmo().setUnlocalizedName("ammo_556_tracer");
ammo_556_flechette = new ItemAmmo().setUnlocalizedName("ammo_556_flechette");
ammo_556_flechette_incendiary = new ItemAmmo().setUnlocalizedName("ammo_556_flechette_incendiary");
ammo_556_flechette_phosphorus = new ItemAmmo().setUnlocalizedName("ammo_556_flechette_phosphorus");
ammo_556_flechette_du = new ItemAmmo().setUnlocalizedName("ammo_556_flechette_du");
ammo_556_flechette_chlorophyte = new ItemAmmo().setUnlocalizedName("ammo_556_flechette_chlorophyte");
ammo_556_flechette_sleek = new ItemAmmo().setUnlocalizedName("ammo_556_flechette_sleek");
ammo_556_k = new ItemAmmo().setUnlocalizedName("ammo_556_k");
ammo_50ae = new ItemAmmo().setUnlocalizedName("ammo_50ae");
ammo_50ae_ap = new ItemAmmo().setUnlocalizedName("ammo_50ae_ap");
ammo_50ae_du = new ItemAmmo().setUnlocalizedName("ammo_50ae_du");
ammo_50ae_star = new ItemAmmo().setUnlocalizedName("ammo_50ae_star");
ammo_50ae_chlorophyte = new ItemAmmo().setUnlocalizedName("ammo_50ae_chlorophyte");
ammo_50bmg = new ItemAmmo().setUnlocalizedName("ammo_50bmg");
ammo_50bmg_incendiary = new ItemAmmo().setUnlocalizedName("ammo_50bmg_incendiary");
ammo_50bmg_phosphorus = new ItemAmmo().setUnlocalizedName("ammo_50bmg_phosphorus");
ammo_50bmg_explosive = new ItemAmmo().setUnlocalizedName("ammo_50bmg_explosive");
ammo_50bmg_ap = new ItemAmmo().setUnlocalizedName("ammo_50bmg_ap");
ammo_50bmg_du = new ItemAmmo().setUnlocalizedName("ammo_50bmg_du");
ammo_50bmg_star = new ItemAmmo().setUnlocalizedName("ammo_50bmg_star");
ammo_50bmg_chlorophyte = new ItemAmmo().setUnlocalizedName("ammo_50bmg_chlorophyte");
ammo_50bmg_flechette = new ItemAmmo().setUnlocalizedName("ammo_50bmg_flechette");
ammo_50bmg_flechette_am = new ItemAmmo().setUnlocalizedName("ammo_50bmg_flechette_am");
ammo_50bmg_flechette_po = new ItemAmmo().setUnlocalizedName("ammo_50bmg_flechette_po");
ammo_50bmg_sleek = new ItemAmmo().setUnlocalizedName("ammo_50bmg_sleek");
ammo_75bolt = new ItemAmmo().setUnlocalizedName("ammo_75bolt");
ammo_75bolt_incendiary = new ItemAmmo().setUnlocalizedName("ammo_75bolt_incendiary");
ammo_75bolt_he = new ItemAmmo().setUnlocalizedName("ammo_75bolt_he");
ammo_357_desh = new ItemAmmo().setUnlocalizedName("ammo_357_desh");
ammo_44 = new ItemAmmo().setUnlocalizedName("ammo_44");
ammo_44_ap = new ItemAmmo().setUnlocalizedName("ammo_44_ap");
ammo_44_du = new ItemAmmo().setUnlocalizedName("ammo_44_du");
ammo_44_phosphorus = new ItemAmmo().setUnlocalizedName("ammo_44_phosphorus");
ammo_44_star = new ItemAmmo().setUnlocalizedName("ammo_44_star");
ammo_44_chlorophyte = new ItemAmmo().setUnlocalizedName("ammo_44_chlorophyte");
ammo_44_pip = new ItemAmmo().setUnlocalizedName("ammo_44_pip");
ammo_44_bj = new ItemAmmo().setUnlocalizedName("ammo_44_bj");
ammo_44_silver = new ItemAmmo().setUnlocalizedName("ammo_44_silver");
ammo_44_rocket = new ItemAmmo().setUnlocalizedName("ammo_44_rocket");
ammo_22lr = new ItemAmmo().setUnlocalizedName("ammo_22lr");
ammo_22lr_ap = new ItemAmmo().setUnlocalizedName("ammo_22lr_ap");
ammo_22lr_chlorophyte = new ItemAmmo().setUnlocalizedName("ammo_22lr_chlorophyte");
ammo_folly = new ItemAmmo().setUnlocalizedName("ammo_folly");
ammo_folly_nuclear = new ItemAmmo().setUnlocalizedName("ammo_folly_nuclear");
ammo_folly_du = new ItemAmmo().setUnlocalizedName("ammo_folly_du");
ammo_rocket = new ItemAmmo().setUnlocalizedName("ammo_rocket");
ammo_rocket_he = new ItemAmmo().setUnlocalizedName("ammo_rocket_he");
ammo_rocket_incendiary = new ItemAmmo().setUnlocalizedName("ammo_rocket_incendiary");
ammo_rocket_phosphorus = new ItemAmmo().setUnlocalizedName("ammo_rocket_phosphorus");
ammo_rocket_shrapnel = new ItemAmmo().setUnlocalizedName("ammo_rocket_shrapnel");
ammo_rocket_emp = new ItemAmmo().setUnlocalizedName("ammo_rocket_emp");
ammo_rocket_glare = new ItemAmmo().setUnlocalizedName("ammo_rocket_glare");
ammo_rocket_toxic = new ItemAmmo().setUnlocalizedName("ammo_rocket_toxic");
ammo_rocket_canister = new ItemAmmo().setUnlocalizedName("ammo_rocket_canister");
ammo_rocket_sleek = new ItemAmmo().setUnlocalizedName("ammo_rocket_sleek");
ammo_rocket_nuclear = new ItemAmmo().setUnlocalizedName("ammo_rocket_nuclear");
ammo_rocket_rpc = new ItemAmmo().setUnlocalizedName("ammo_rocket_rpc");
ammo_rocket_digamma = new ItemAmmo().setUnlocalizedName("ammo_rocket_digamma");
ammo_grenade = new ItemAmmo().setUnlocalizedName("ammo_grenade");
ammo_grenade_he = new ItemAmmo().setUnlocalizedName("ammo_grenade_he");
ammo_grenade_incendiary = new ItemAmmo().setUnlocalizedName("ammo_grenade_incendiary");
ammo_grenade_phosphorus = new ItemAmmo().setUnlocalizedName("ammo_grenade_phosphorus");
ammo_grenade_toxic = new ItemAmmo().setUnlocalizedName("ammo_grenade_toxic");
ammo_grenade_concussion = new ItemAmmo().setUnlocalizedName("ammo_grenade_concussion");
ammo_grenade_finned = new ItemAmmo().setUnlocalizedName("ammo_grenade_finned");
ammo_grenade_sleek = new ItemAmmo().setUnlocalizedName("ammo_grenade_sleek");
ammo_grenade_nuclear = new ItemAmmo().setUnlocalizedName("ammo_grenade_nuclear");
ammo_grenade_tracer = new ItemAmmo().setUnlocalizedName("ammo_grenade_tracer");
ammo_grenade_kampf = new ItemAmmo().setUnlocalizedName("ammo_grenade_kampf");
ammo_shell = new ItemAmmo().setUnlocalizedName("ammo_shell");
ammo_shell_explosive = new ItemAmmo().setUnlocalizedName("ammo_shell_explosive");
ammo_shell_apfsds_t = new ItemAmmo().setUnlocalizedName("ammo_shell_apfsds_t");
ammo_shell_apfsds_du = new ItemAmmo().setUnlocalizedName("ammo_shell_apfsds_du");
ammo_shell_w9 = new ItemAmmo().setUnlocalizedName("ammo_shell_w9");*/
ammo_folly = new ItemCustomLore().setUnlocalizedName("ammo_folly");
ammo_folly_nuclear = new ItemCustomLore().setUnlocalizedName("ammo_folly_nuclear");
ammo_folly_du = new ItemCustomLore().setUnlocalizedName("ammo_folly_du");
//ammo_dgk = new ItemCustomLore().setUnlocalizedName("ammo_dgk");
ammo_arty = new ItemAmmoArty().setUnlocalizedName("ammo_arty");
ammo_himars = new ItemAmmoHIMARS().setUnlocalizedName("ammo_himars");
/*ammo_nuke = new ItemAmmo().setUnlocalizedName("ammo_nuke");
ammo_nuke_low = new ItemAmmo().setUnlocalizedName("ammo_nuke_low");
ammo_nuke_high = new ItemAmmo().setUnlocalizedName("ammo_nuke_high");
ammo_nuke_tots = new ItemAmmo().setUnlocalizedName("ammo_nuke_tots");
ammo_nuke_safe = new ItemAmmo().setUnlocalizedName("ammo_nuke_safe");
ammo_nuke_pumpkin = new ItemAmmo().setUnlocalizedName("ammo_nuke_pumpkin");
ammo_nuke_barrel = new ItemAmmo().setUnlocalizedName("ammo_nuke_barrel");
ammo_mirv = new ItemAmmo().setUnlocalizedName("ammo_mirv");
ammo_mirv_low = new ItemAmmo().setUnlocalizedName("ammo_mirv_low");
ammo_mirv_high = new ItemAmmo().setUnlocalizedName("ammo_mirv_high");
ammo_mirv_safe = new ItemAmmo().setUnlocalizedName("ammo_mirv_safe");
ammo_mirv_special = new ItemAmmo().setUnlocalizedName("ammo_mirv_special").setCreativeTab(null);
ammo_fuel = new ItemAmmo().setUnlocalizedName("ammo_fuel");
ammo_fuel_napalm = new ItemAmmo().setUnlocalizedName("ammo_fuel_napalm");
ammo_fuel_phosphorus = new ItemAmmo().setUnlocalizedName("ammo_fuel_phosphorus");
ammo_fuel_vaporizer = new ItemAmmo().setUnlocalizedName("ammo_fuel_vaporizer");
ammo_fuel_gas = new ItemAmmo().setUnlocalizedName("ammo_fuel_gas");
ammo_fireext = new ItemAmmo().setUnlocalizedName("ammo_fireext");
ammo_fireext_foam = new ItemAmmo().setUnlocalizedName("ammo_fireext_foam");
ammo_fireext_sand = new ItemAmmo().setUnlocalizedName("ammo_fireext_sand");
ammo_cell = new ItemAmmo().setUnlocalizedName("ammo_cell");
ammo_dart = new ItemAmmo().setUnlocalizedName("ammo_dart");
ammo_dart_nuclear = new ItemAmmo().setUnlocalizedName("ammo_dart_nuclear");
ammo_dart_nerf = new ItemAmmo().setUnlocalizedName("ammo_dart_nerf");
ammo_stinger_rocket = new ItemAmmo().setUnlocalizedName("ammo_stinger_rocket");
ammo_stinger_rocket_he = new ItemAmmo().setUnlocalizedName("ammo_stinger_rocket_he");
ammo_stinger_rocket_incendiary = new ItemAmmo().setUnlocalizedName("ammo_stinger_rocket_incendiary");
ammo_stinger_rocket_nuclear = new ItemAmmo().setUnlocalizedName("ammo_stinger_rocket_nuclear");
ammo_stinger_rocket_bones = new ItemAmmo().setUnlocalizedName("ammo_stinger_rocket_bones");*/
gun_rpg = new ItemGunBase(GunRocketFactory.getGustavConfig()).setUnlocalizedName("gun_rpg").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_rpg");
gun_karl = new ItemGunBase(GunRocketFactory.getKarlConfig()).setUnlocalizedName("gun_karl").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_karl");

View File

@ -7,12 +7,16 @@ import java.util.Map.Entry;
import com.hbm.inventory.material.MaterialShapes;
import com.hbm.inventory.material.Mats;
import com.hbm.inventory.material.NTMMaterial;
import com.hbm.items.tool.ItemColtanCompass.TextureColtass;
import com.hbm.lib.RefStrings;
import com.hbm.render.icon.RGBMutatorMultiplicative;
import com.hbm.render.icon.TextureAtlasSpriteMutatable;
import com.hbm.util.I18nUtil;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.client.renderer.texture.TextureMap;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
@ -41,6 +45,15 @@ public class ItemAutogen extends Item {
public void registerIcons(IIconRegister reg) {
super.registerIcons(reg);
/*if(reg instanceof TextureMap) {
TextureMap map = (TextureMap) reg;
TextureAtlasSpriteMutatable jumpstart_my_shart = new TextureAtlasSpriteMutatable(this.getIconString(), new RGBMutatorMultiplicative(0xff0000));
map.setTextureEntry(this.getIconString(), jumpstart_my_shart);
this.itemIcon = jumpstart_my_shart;
} else {
this.itemIcon = reg.registerIcon(this.getIconString());
}*/
for(Entry<NTMMaterial, String> tex : textureOverrides.entrySet()) {
iconOverrides.put(tex.getKey(), reg.registerIcon(RefStrings.MODID + ":" + tex.getValue()));
}
@ -84,7 +97,7 @@ public class ItemAutogen extends Item {
NTMMaterial mat = Mats.matById.get(stack.getItemDamage());
if(mat != null) {
return mat.solidColor;
//return mat.solidColor;
}
return 0xffffff;

View File

@ -4,5 +4,5 @@ import java.awt.image.BufferedImage;
public interface RGBMutator {
public void mutate(BufferedImage image);
public void mutate(BufferedImage image, int frame, int frameCount);
}

View File

@ -0,0 +1,72 @@
package com.hbm.render.icon;
import java.awt.image.BufferedImage;
public class RGBMutatorMultiplicative implements RGBMutator {
int color;
public RGBMutatorMultiplicative(int color) {
this.color = color;
}
@Override
public void mutate(BufferedImage image, int frame, int frameCount) {
for(int x = 0; x < image.getWidth(); x++) {
for(int y = 0; y < image.getHeight(); y++) {
int pix = image.getRGB(x, y);
int boundLighter = 0xffffff;
int lighter = 0xFFEE3F;
int boundDarker = 0x505050;
int darker = 0xC0471F;
int rgb = shiftColor(boundLighter, boundDarker, lighter, darker, pix);
image.setRGB(x, y, rgb);
}
}
}
private static int shiftColor(int boundLighter, int boundDarker, int lighter, int darker, int pix) {
int a = (pix & 0xff000000) >> 24;
int r = (pix & 0xff0000) >> 16;
int g = (pix & 0xff00) >> 8;
int b = (pix & 0xff);
int nR = (int) shiftComponent(compR(lighter), compR(darker), compR(boundLighter), compR(boundDarker), r);
int nG = (int) shiftComponent(compG(lighter), compG(darker), compG(boundLighter), compG(boundDarker), g);
int nB = (int) shiftComponent(compB(lighter), compB(darker), compB(boundLighter), compB(boundDarker), b);
r = nR & 0xff;
g = nG & 0xff;
b = nB & 0xff;
return (a << 24) | (r << 16) | (g << 8) | b;
}
private static double shiftComponent(int lighter, int darker, int boundLighter, int boundDarker, int component) {
double scaledComponent = getPosFromComp(boundLighter, boundDarker, component);
double newComp = getCompFromFunc(lighter, darker, scaledComponent);
return newComp;
}
private static double getCompFromFunc(int lower, int upper, double interp) {
double d0 = (double) lower;
double d1 = (double) upper;
return d0 + interp * (d1 - d0);
}
private static double getPosFromComp(int lower, int upper, double val) {
double d0 = (double) lower;
double d1 = (double) upper;
return (val - d0) / (d1 - d0);
}
private static int compR(int col) { return (col & 0xff0000) >> 16; }
private static int compG(int col) { return (col & 0xff00) >> 8; }
private static int compB(int col) { return (col & 0xff); }
}

View File

@ -20,7 +20,13 @@ public class TextureAtlasSpriteMutatable extends TextureAtlasSprite {
@Override
public void loadSprite(BufferedImage[] frames, AnimationMetadataSection animMeta, boolean anisotropicFiltering) {
if(mutator != null) for(BufferedImage frame : frames) mutator.mutate(frame);
if(mutator != null) {
for(int i = 0; i < frames.length; i++) {
BufferedImage frame = frames[i];
mutator.mutate(frame, i, frames.length);
}
}
super.loadSprite(frames, animMeta, anisotropicFiltering);
}
}

View File

@ -27,18 +27,23 @@ public class RenderAutosaw extends TileEntitySpecialRenderer implements IItemRen
double turn = saw.prevRotationYaw + (saw.rotationYaw - saw.prevRotationYaw) * interp;
double angle = 80 - (saw.prevRotationPitch + (saw.rotationPitch - saw.prevRotationPitch) * interp);
float spin = saw.lastSpin + (saw.spin - saw.lastSpin) * interp;
renderCommon(turn, angle, spin);
double engine = saw.isOn ? Math.sin(saw.getWorldObj().getTotalWorldTime() * 2 % (Math.PI * 2) + interp) : 0;
renderCommon(turn, angle, spin, engine);
GL11.glPopMatrix();
}
private void renderCommon(double turn, double angle, double spin) {
private void renderCommon(double turn, double angle, double spin, double engine) {
bindTexture(ResourceManager.autosaw_tex);
ResourceManager.autosaw.renderPart("Base");
GL11.glRotated(turn, 0, -1, 0);
ResourceManager.autosaw.renderPart("Main");
GL11.glPushMatrix();
GL11.glTranslated(0, engine * 0.01, 0);
ResourceManager.autosaw.renderPart("Engine");
GL11.glPopMatrix();
GL11.glTranslated(0, 1.75, 0);
GL11.glRotated(angle, 1, 0, 0);
@ -78,7 +83,7 @@ public class RenderAutosaw extends TileEntitySpecialRenderer implements IItemRen
public void renderCommonWithStack(ItemStack item) {
GL11.glScaled(0.5, 0.5, 0.5);
GL11.glRotatef(-90, 0F, 1F, 0F);
RenderAutosaw.this.renderCommon(0D, 80D, System.currentTimeMillis() % 3600 * 0.1D);
RenderAutosaw.this.renderCommon(0D, 80D, System.currentTimeMillis() % 3600 * 0.1D, 0);
}};
}
}

File diff suppressed because it is too large Load Diff