aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gtPlusPlus/api/objects/minecraft/ItemStackData.java
blob: 476926826bfd080ce8f2712a55bcd8450542bf23 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package gtPlusPlus.api.objects.minecraft;

import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;

import gtPlusPlus.core.util.minecraft.ItemUtils;

public class ItemStackData {

	protected final Item mItem;
	protected final int mDamage;
	protected final int mStackSize;
	protected final NBTTagCompound mNBT;
	protected final String mUniqueDataTag;
	
	public ItemStackData (ItemStack aStack) {
		mItem = aStack.getItem();
		mDamage = aStack.getItemDamage();
		mStackSize = aStack.stackSize;
		mNBT = (aStack.getTagCompound() != null ? aStack.getTagCompound() : new NBTTagCompound());
		mUniqueDataTag = ""+Item.getIdFromItem(mItem)+""+mDamage+""+mStackSize+""+mNBT.getId();
	}
	
	public String getUniqueDataIdentifier() {
		return this.mUniqueDataTag;
	}
	
	public ItemStack getStack() {
		ItemStack aTemp =  ItemUtils.simpleMetaStack(mItem, mDamage, mStackSize);
		aTemp.setTagCompound(mNBT);
		return aTemp;
	}
	
}