From c3f8cb8926f9afec7a64374f383f7af316f573ea Mon Sep 17 00:00:00 2001 From: draknyte1 Date: Sun, 12 Mar 2017 17:35:30 +1000 Subject: + Added a Generic class for misc. items. + Added the ability to generate Heavy Plates to BaseItemComponent.java. + Added some extra desaturated textures. --- .../core/item/base/BaseItemComponent.java | 3 +- .../core/item/base/misc/BaseItemMisc.java | 138 +++++++++++++++++++++ 2 files changed, 140 insertions(+), 1 deletion(-) create mode 100644 src/Java/gtPlusPlus/core/item/base/misc/BaseItemMisc.java (limited to 'src/Java/gtPlusPlus/core/item/base') diff --git a/src/Java/gtPlusPlus/core/item/base/BaseItemComponent.java b/src/Java/gtPlusPlus/core/item/base/BaseItemComponent.java index 8c6dc9a0c9..4729b2182a 100644 --- a/src/Java/gtPlusPlus/core/item/base/BaseItemComponent.java +++ b/src/Java/gtPlusPlus/core/item/base/BaseItemComponent.java @@ -187,7 +187,8 @@ public class BaseItemComponent extends Item{ RING("Ring", " Ring", "ring"), PLASMACELL("CellPlasma", " Plasma Cell", "cellPlasma"), CELL("Cell", " Cell", "cell"), - NUGGET("Nugget", " Nugget", "nugget"); + NUGGET("Nugget", " Nugget", "nugget"), + PLATEHEAVY("HeavyPlate", " Heavy Plate", "plateHeavy"); private String COMPONENT_NAME; private String DISPLAY_NAME; diff --git a/src/Java/gtPlusPlus/core/item/base/misc/BaseItemMisc.java b/src/Java/gtPlusPlus/core/item/base/misc/BaseItemMisc.java new file mode 100644 index 0000000000..effa81362b --- /dev/null +++ b/src/Java/gtPlusPlus/core/item/base/misc/BaseItemMisc.java @@ -0,0 +1,138 @@ +package gtPlusPlus.core.item.base.misc; + +import java.util.List; + +import cpw.mods.fml.common.registry.GameRegistry; +import gregtech.api.util.GT_OreDictUnificator; +import gtPlusPlus.core.creative.AddToCreativeTab; +import gtPlusPlus.core.lib.CORE; +import gtPlusPlus.core.material.Material; +import gtPlusPlus.core.util.Utils; +import gtPlusPlus.core.util.entity.EntityUtils; +import gtPlusPlus.core.util.item.ItemUtils; +import gtPlusPlus.core.util.math.MathUtils; +import net.minecraft.entity.Entity; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumChatFormatting; +import net.minecraft.world.World; + +public class BaseItemMisc extends Item{ + + public final String displayName; + public final String unlocalName; + public final MiscTypes miscType; + public final Object componentColour; + public final String[] description; + + public BaseItemMisc( + final String displayName, + final short[] RGB, + final int maxStackSize, + final MiscTypes miscType, + String[] description) { + + //Set-up the Misc Generic Item + this.displayName = displayName; + String unlocalName = Utils.sanitizeString(displayName); + this.unlocalName = "item"+miscType.TYPE+unlocalName; + this.miscType = miscType; + this.setCreativeTab(AddToCreativeTab.tabMisc); + this.setUnlocalizedName(this.unlocalName); + this.setMaxStackSize(maxStackSize); + this.setTextureName(this.getCorrectTextures()); + if (RGB != null){ + this.componentColour = Utils.rgbtoHexValue(RGB[0], RGB[1], RGB[2]); + } + else { + this.componentColour = null; + } + this.description = description; + GameRegistry.registerItem(this, this.unlocalName); + GT_OreDictUnificator.registerOre(miscType.getOreDictPrefix()+unlocalName, ItemUtils.getSimpleStack(this)); + } + + @Override + public String getItemStackDisplayName(final ItemStack p_77653_1_) { + return this.displayName+miscType.DISPLAY_NAME_SUFFIX; + } + + private String getCorrectTextures(){ + return CORE.MODID + ":" + "item"+this.miscType.TYPE; + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + @Override + public final void addInformation(final ItemStack stack, final EntityPlayer aPlayer, final List list, final boolean bool) { + if (this.description != null){ //Incase I don't add one + if (this.description.length > 0){ //Incase I somehow add a blank one + for (int x=0;x