diff options
| author | Draknyte1 <Draknyte1@hotmail.com> | 2016-07-27 00:26:22 +1000 |
|---|---|---|
| committer | Draknyte1 <Draknyte1@hotmail.com> | 2016-07-27 00:26:22 +1000 |
| commit | 926af00c0b3da2ba168f578eafb3ed8c7c2d9dba (patch) | |
| tree | dc1a749573a9a9cc624671e9c63b785aae4fac40 /src/Java/miscutil/core/item/base | |
| parent | 28c115270dc90e6b7358cc45b77242ce9cdc0372 (diff) | |
| download | GT5-Unofficial-926af00c0b3da2ba168f578eafb3ed8c7c2d9dba.tar.gz GT5-Unofficial-926af00c0b3da2ba168f578eafb3ed8c7c2d9dba.tar.bz2 GT5-Unofficial-926af00c0b3da2ba168f578eafb3ed8c7c2d9dba.zip | |
+ Added a Plate Bender Recipe for Staballoy.
+ Added a Blast Furnace Recipe for Staballoy.
+ Added a Vacuum Freezer Recipe for Staballoy.
+ Added Some Raisin Bread for ImQ009.
+ Added a placeholder item for invalid recipes, so that broken recipes show up and hidden/unavailable stuff doesn't.
+ Added a handler for generating ingots & Hot ingots.
% Changed Staballoy to generate from this new ingotHandler.
% Changed getItemStackOfAmountFromOreDict to handle meta, thanks to Greg for pointing that out.
% Changed Matter Fabricator to actually have an output (It was returning 0 previously, thought worked)
- Removed pollution value from the Matter Fabricator.
Diffstat (limited to 'src/Java/miscutil/core/item/base')
| -rw-r--r-- | src/Java/miscutil/core/item/base/ingots/BaseItemIngot.java | 78 | ||||
| -rw-r--r-- | src/Java/miscutil/core/item/base/ingots/BaseItemIngotHot.java | 42 |
2 files changed, 120 insertions, 0 deletions
diff --git a/src/Java/miscutil/core/item/base/ingots/BaseItemIngot.java b/src/Java/miscutil/core/item/base/ingots/BaseItemIngot.java new file mode 100644 index 0000000000..95da94db62 --- /dev/null +++ b/src/Java/miscutil/core/item/base/ingots/BaseItemIngot.java @@ -0,0 +1,78 @@ +package miscutil.core.item.base.ingots; + +import gregtech.api.enums.GT_Values; +import gregtech.api.util.GT_Utility; + +import java.util.List; + +import miscutil.core.creative.AddToCreativeTab; +import miscutil.core.lib.CORE; +import miscutil.core.util.Utils; +import miscutil.core.util.item.UtilsItems; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumChatFormatting; +import cpw.mods.fml.common.registry.GameRegistry; + +public class BaseItemIngot extends Item{ + + protected int colour; + protected String materialName; + protected String unlocalName; + + public BaseItemIngot(String unlocalizedName, String materialName, int colour) { + setUnlocalizedName(unlocalizedName); + this.setCreativeTab(AddToCreativeTab.tabMisc); + this.setUnlocalizedName(unlocalizedName); + this.unlocalName = unlocalizedName; + this.setMaxStackSize(64); + if (unlocalizedName.contains("RaisinBread")){ + this.setTextureName(CORE.MODID + ":" + "itemBread"); + } + else { + this.setTextureName(CORE.MODID + ":" + "itemIngot"); + } + this.setMaxStackSize(64); + this.colour = colour; + this.materialName = materialName; + GameRegistry.registerItem(this, unlocalizedName); + addBendingRecipe(); + } + + @Override + public void addInformation(ItemStack stack, EntityPlayer aPlayer, List list, boolean bool) { + if (materialName != null && materialName != "" && !materialName.equals("") && !unlocalName.contains("HotIngot") && !unlocalName.toLowerCase().contains("raisinbread")){ + list.add(EnumChatFormatting.GRAY+"A solid ingot of " + materialName + "."); + } + else if (materialName != null && materialName != "" && !materialName.equals("") && unlocalName.toLowerCase().contains("ingothot") && !unlocalName.toLowerCase().contains("raisinbread")){ + list.add(EnumChatFormatting.GRAY+"Warning: Very hot! Avoid direct handling.."); + } + else if (materialName != null && materialName != "" && !materialName.equals("") && !unlocalName.toLowerCase().contains("ingothot") && unlocalName.toLowerCase().contains("raisinbread")){ + list.add(EnumChatFormatting.GRAY+"We all know that " + materialName + " is delicious!"); + } + super.addInformation(stack, aPlayer, list, bool); + } + + public final String getMaterialName() { + return materialName; + } + + @Override + public int getColorFromItemStack(ItemStack stack, int HEX_OxFFFFFF) { + if (colour == 0){ + return Utils.generateSingularRandomHexValue(); + } + return colour; + + } + + private void addBendingRecipe(){ + if (!unlocalName.toLowerCase().contains("ingothot") && !unlocalName.toLowerCase().contains("raisinbread")){ + GT_Values.RA.addBenderRecipe(GT_Utility.copyAmount(1L, new Object[]{this}), + UtilsItems.getItemStackOfAmountFromOreDict("plate"+materialName, 1), + 1200, 24); + } + } + +} diff --git a/src/Java/miscutil/core/item/base/ingots/BaseItemIngotHot.java b/src/Java/miscutil/core/item/base/ingots/BaseItemIngotHot.java new file mode 100644 index 0000000000..89ceebe922 --- /dev/null +++ b/src/Java/miscutil/core/item/base/ingots/BaseItemIngotHot.java @@ -0,0 +1,42 @@ +package miscutil.core.item.base.ingots; + +import gregtech.api.enums.GT_Values; +import gregtech.api.util.GT_Utility; + +import java.util.List; + +import miscutil.core.lib.CORE; +import miscutil.core.util.Utils; +import miscutil.core.util.UtilsText; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumChatFormatting; + +public class BaseItemIngotHot extends BaseItemIngot{ + + private ItemStack outputIngot; + + public BaseItemIngotHot(String unlocalizedName, String materialName, ItemStack coldIngot) { + super(unlocalizedName, materialName, Utils.rgbtoHexValue(225, 225, 225)); + this.setTextureName(CORE.MODID + ":" + "itemIngotHot"); + this.outputIngot = coldIngot; + generateRecipe(); + } + + @Override + public void addInformation(ItemStack stack, EntityPlayer aPlayer, List list, boolean bool) { + if (materialName != null && materialName != "" && !materialName.equals("")){ + list.add(EnumChatFormatting.GRAY+"A "+UtilsText.red.colour()+"burning hot"+UtilsText.lightGray.colour()+" ingot of " + materialName + "."); + } + super.addInformation(stack, aPlayer, list, bool); + } + + @Override + public int getColorFromItemStack(ItemStack stack, int HEX_OxFFFFFF) { + return Utils.rgbtoHexValue(225, 225, 225); + } + + private void generateRecipe(){ + GT_Values.RA.addVacuumFreezerRecipe(GT_Utility.copyAmount(1L, new Object[]{this}), GT_Utility.copyAmount(1L, new Object[]{outputIngot}), 500); + } +} |
