From e9b1280a13665c7e61df4ae9df6e2922851ab92d Mon Sep 17 00:00:00 2001 From: Tntrololol Date: Fri, 22 May 2015 15:02:02 -0500 Subject: [PATCH] Added 5 additional types of machine hulls and their respective textures --- .../techreborn/blocks/BlockMachineFrame.java | 87 ++++++++++++------ src/main/java/techreborn/init/ModBlocks.java | 13 +-- .../itemblocks/ItemBlockMachineFrame.java | 13 +++ .../assets/techreborn/lang/en_US.lang | 8 +- .../blocks/machine/aluminum_machine_block.png | Bin 0 -> 457 bytes .../blocks/machine/brass_machine_block.png | Bin 0 -> 367 bytes .../blocks/machine/bronze_machine_block.png | Bin 0 -> 441 bytes .../blocks/machine/iron_machine_block.png | Bin 0 -> 527 bytes .../blocks/machine/steel_machine_block.png | Bin 0 -> 384 bytes .../blocks/machine/titanium_machine_block.png | Bin 0 -> 499 bytes 10 files changed, 84 insertions(+), 37 deletions(-) create mode 100644 src/main/java/techreborn/itemblocks/ItemBlockMachineFrame.java create mode 100644 src/main/resources/assets/techreborn/textures/blocks/machine/aluminum_machine_block.png create mode 100644 src/main/resources/assets/techreborn/textures/blocks/machine/brass_machine_block.png create mode 100644 src/main/resources/assets/techreborn/textures/blocks/machine/bronze_machine_block.png create mode 100644 src/main/resources/assets/techreborn/textures/blocks/machine/iron_machine_block.png create mode 100644 src/main/resources/assets/techreborn/textures/blocks/machine/steel_machine_block.png create mode 100644 src/main/resources/assets/techreborn/textures/blocks/machine/titanium_machine_block.png diff --git a/src/main/java/techreborn/blocks/BlockMachineFrame.java b/src/main/java/techreborn/blocks/BlockMachineFrame.java index f923a7e2a..a4951ace1 100644 --- a/src/main/java/techreborn/blocks/BlockMachineFrame.java +++ b/src/main/java/techreborn/blocks/BlockMachineFrame.java @@ -1,47 +1,80 @@ package techreborn.blocks; +import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.util.MathHelper; +import net.minecraftforge.common.util.ForgeDirection; +import techreborn.client.TechRebornCreativeTab; +import techreborn.client.TechRebornCreativeTabMisc; -public class BlockMachineFrame extends BlockMachineBase{ +import java.util.List; +import java.util.Random; - @SideOnly(Side.CLIENT) - private IIcon iconFront; +public class BlockMachineFrame extends Block { - @SideOnly(Side.CLIENT) - private IIcon iconTop; + public static final String[] types = new String[] + { "aluminum", "iron", "bronze", "brass", "steel", "titanium" }; - @SideOnly(Side.CLIENT) - private IIcon iconBottom; + private IIcon[] textures; public BlockMachineFrame(Material material) { - super(material); - setBlockName("techreborn.machineframe"); - } - - @Override - @SideOnly(Side.CLIENT) - public void registerBlockIcons(IIconRegister icon) - { - this.blockIcon = icon.registerIcon("techreborn:machine/machine_side"); - this.iconFront = icon.registerIcon("techreborn:machine/machine_side"); - this.iconTop = icon.registerIcon("techreborn:machine/machine_side"); - this.iconBottom = icon.registerIcon("techreborn:machine/machine_side"); + super(material); + setBlockName("techreborn.machineFrame"); + setCreativeTab(TechRebornCreativeTab.instance); + setHardness(1f); } - @SideOnly(Side.CLIENT) - public IIcon getIcon(int side, int metadata) - { + @Override + @SideOnly(Side.CLIENT) + public void getSubBlocks(Item item, CreativeTabs creativeTabs, List list) + { + for (int meta = 0; meta < types.length; meta++) + { + list.add(new ItemStack(item, 1, meta)); + } + } - return metadata == 0 && side == 3 ? this.iconFront - : side == 1 ? this.iconTop : - side == 0 ? this.iconBottom: (side == 0 ? this.iconTop - : (side == metadata ? this.iconFront : this.blockIcon)); + @Override + public int damageDropped(int metaData) + { + return metaData; + } - } + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister iconRegister) + { + this.textures = new IIcon[types.length]; + + for (int i = 0; i < types.length; i++) + { + textures[i] = iconRegister.registerIcon("techreborn:" + "machine/" + + types[i] + "_machine_block"); + } + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIcon(int side, int metaData) + { + metaData = MathHelper.clamp_int(metaData, 0, types.length - 1); + + if (ForgeDirection.getOrientation(side) == ForgeDirection.UP + || ForgeDirection.getOrientation(side) == ForgeDirection.DOWN) + { + return textures[metaData]; + } else + { + return textures[metaData]; + } + } } diff --git a/src/main/java/techreborn/init/ModBlocks.java b/src/main/java/techreborn/init/ModBlocks.java index 7918e4fdc..5f3348d29 100644 --- a/src/main/java/techreborn/init/ModBlocks.java +++ b/src/main/java/techreborn/init/ModBlocks.java @@ -48,11 +48,7 @@ import techreborn.blocks.storage.BlockAesu; import techreborn.blocks.storage.BlockIDSU; import techreborn.blocks.storage.BlockLesu; import techreborn.blocks.storage.BlockLesuStorage; -import techreborn.itemblocks.ItemBlockMachineCasing; -import techreborn.itemblocks.ItemBlockOre; -import techreborn.itemblocks.ItemBlockQuantumChest; -import techreborn.itemblocks.ItemBlockQuantumTank; -import techreborn.itemblocks.ItemBlockStorage; +import techreborn.itemblocks.*; import techreborn.tiles.TileAesu; import techreborn.tiles.TileAlloyFurnace; import techreborn.tiles.TileAlloySmelter; @@ -177,7 +173,6 @@ public class ModBlocks { ore = new BlockOre(Material.rock); GameRegistry.registerBlock(ore, ItemBlockOre.class, "techreborn.ore"); - LogHelper.info("TechReborns Blocks Loaded"); storage = new BlockStorage(Material.rock); GameRegistry.registerBlock(storage, ItemBlockStorage.class, "techreborn.storage"); @@ -276,9 +271,11 @@ public class ModBlocks { industrialSawmill = new BlockIndustrialSawmill(Material.rock); GameRegistry.registerBlock(industrialSawmill, "industrialSawmill"); GameRegistry.registerTileEntity(TileIndustrialSawmill.class, "TileIndustrialSawmillTR"); - + machineframe = new BlockMachineFrame(Material.iron); - GameRegistry.registerBlock(machineframe, "machineframe"); + GameRegistry.registerBlock(machineframe, ItemBlockMachineFrame.class, "techreborn.machineFrame"); + LogHelper.info("TechReborns Blocks Loaded"); + registerOreDict(); } diff --git a/src/main/java/techreborn/itemblocks/ItemBlockMachineFrame.java b/src/main/java/techreborn/itemblocks/ItemBlockMachineFrame.java new file mode 100644 index 000000000..a8a2ab740 --- /dev/null +++ b/src/main/java/techreborn/itemblocks/ItemBlockMachineFrame.java @@ -0,0 +1,13 @@ +package techreborn.itemblocks; + +import net.minecraft.block.Block; +import techreborn.blocks.BlockMachineFrame; +import techreborn.init.ModBlocks; + +public class ItemBlockMachineFrame extends ItemBlockBase { + + public ItemBlockMachineFrame(Block block) { + super(ModBlocks.machineframe, ModBlocks.machineframe, BlockMachineFrame.types); + } + +} diff --git a/src/main/resources/assets/techreborn/lang/en_US.lang b/src/main/resources/assets/techreborn/lang/en_US.lang index 8a37bd226..a2e1feed4 100644 --- a/src/main/resources/assets/techreborn/lang/en_US.lang +++ b/src/main/resources/assets/techreborn/lang/en_US.lang @@ -44,8 +44,12 @@ tile.techreborn.fusioncoil.name=Fusion Coil tile.techreborn.lightningrod.name=Lightning Rod tile.techreborn.assemblinmachine.name=Assembling Machine tile.techreborn.heatgenerator.name=Heat Generator -tile.techreborn.machineframe.name=Machine Block - +tile.techreborn.machineFrame.aluminum.name=Aluminum Machine Hull +tile.techreborn.machineFrame.iron.name=Iron Machine Hull +tile.techreborn.machineFrame.bronze.name=Brone Machine Hull +tile.techreborn.machineFrame.brass.name=Brass Machine Hull +tile.techreborn.machineFrame.steel.name=Steel Machine Hull +tile.techreborn.machineFrame.titanium.name=Titanium Machine Hull #Ores tile.techreborn.ore.Galena.name=Galena Ore diff --git a/src/main/resources/assets/techreborn/textures/blocks/machine/aluminum_machine_block.png b/src/main/resources/assets/techreborn/textures/blocks/machine/aluminum_machine_block.png new file mode 100644 index 0000000000000000000000000000000000000000..614e0b77340357742287bab812575b6ee81e272c GIT binary patch literal 457 zcmV;)0XF`LP)MPHyOBEFO_soe^=yh5OrBqwP=C-VhUDvT4A`oti`&O?N)o@Ow~r!=^KhVz?xVUa6V{5}@PKK6y=M<-Tu*23^ZNM;;cw79<| z!lbzv#(UV?6cLLJj8j-&h1|lZx`oc!-+$*%bpWiW3&W3Y00000NkvXXu0mjfgr&(c literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/techreborn/textures/blocks/machine/brass_machine_block.png b/src/main/resources/assets/techreborn/textures/blocks/machine/brass_machine_block.png new file mode 100644 index 0000000000000000000000000000000000000000..a3928bac4323bf9c22a4fca12d3dd8801391792f GIT binary patch literal 367 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61SBU+%rFB|Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP~tC*miLc-HfOQ6snPZ!4!jq_6{o%K56Akea3#kpl~ zEZh0;|h^gr^B78O5-1f z8{2WH7{H5tkMGa9$Jg28J&u2@0^s5HT&yeyRmj;{$dv3LXOH)L{jx*Q{D}JXi{-~I zrp^@gYQyq<8-s!Rc`KMR0EC;%6PTY3xaDPv^_2sr%Gd&VNwt_I!I&<^`gW@8i`Yg; z;FsCMZ<-ETNfVe(ELDh;)rW(fjUx9x%2N)4nSDZWoFw@5OqFL4#FMtky^wzDd<(h-tGT-Z ju9F1|E)WSJWdR`sfkxsd46~ZB z<2=~zc2yQmx5s1$y?m~I_4=!_oV{vwifcL#Sa z-<+WUTV=`O<7ciH%UmcTd^`WZ>S}?i=8oUrUvmB9CtcSK2>|ZzJmlW?cJ8dIBQ5Dk z+t}P33{;iJhqD}6RWUR6j}CGgGsDc-n@u4-V?BYY652L@NEdyrSXB{`96uYFSzk~T zeYdrOY^I8v4Up3vfTAe)`tE|&)q*a@QHpfj9d5zifoNtKPFYnnb$!PmrAl=%#xaBG z(_=yixI0^ANod=VK{c7sHVsdX4>7YbL{&vpD66uEW==V&{z_n!lM3q$5g~@KW>Dy8 z)=~^x*8}VI&<5J3A;y>u@`}yR-m;v3$wuy;wHPC9)6mp4%TIHDuYQdgST{h-)XlSI zW;C~*la|&yPhtP)05c=BA#dK^Y?@|BjFB!z9z5E`%&7m=gTeXf>wo^8ZvZ~U2WDpN RG{yh`002ovPDHLkV1mRj<;nm6 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/techreborn/textures/blocks/machine/steel_machine_block.png b/src/main/resources/assets/techreborn/textures/blocks/machine/steel_machine_block.png new file mode 100644 index 0000000000000000000000000000000000000000..d77cc8391edfd421b6799682d0bc38e889ca350c GIT binary patch literal 384 zcmV-`0e}99P)l?@VbFf#xENthW(mY#6c_4Dc}FEdcNJG4@(S~+wzpb%@qZzkb;VDA2- zfq1GQH-!^pYzj%vcv`n)u-iQrFveKkRl*dkrtIq7bvnt#B*HYw!k`sYE!J1kv$#l? z%L~TwZ6*{(67G&^nvl{Nx7!G(w?nK?6($3BU+~I3==(z<3af9OyTj?&Y#u&&)BBgf eFr5DUJAVMdpvS=!+)RxC00002}GoDmA;GFb)X4cC~O3M`7 z+g(T12%*I}LDhKuYAqK`1-4$SpwaReC4fkG!Ot21h7^B==A86+lnIiVWm&hO&6|i| zc1uB7!pXOa^Yh5&=2BNA_P6WGuJe!ate3X{@!8Yz&dzD>l;?eOqaa4u+g&Gw7BgdM z_=uz|#_pTe`1Z{js@7+a<{b=*Yf$sh?uOZ8@INy%M1&Apyl