2013-05-23 21:07:28 -07:00
|
|
|
package magicbees.storage;
|
2013-01-06 16:50:52 -08:00
|
|
|
|
|
|
|
|
import java.util.ArrayList;
|
2014-09-30 17:15:19 +02:00
|
|
|
import java.util.List;
|
2013-01-06 16:50:52 -08:00
|
|
|
|
|
|
|
|
import net.minecraft.item.ItemStack;
|
|
|
|
|
import forestry.api.storage.IBackpackDefinition;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Backpack definition for Forestry.
|
|
|
|
|
*
|
2015-01-08 21:48:13 -08:00
|
|
|
* @author MysteriousAges
|
2013-01-06 16:50:52 -08:00
|
|
|
*/
|
|
|
|
|
public class BackpackDefinition implements IBackpackDefinition
|
|
|
|
|
{
|
|
|
|
|
private ArrayList<ItemStack> items;
|
|
|
|
|
private String key;
|
|
|
|
|
private String name;
|
|
|
|
|
private int colour;
|
|
|
|
|
|
|
|
|
|
public BackpackDefinition(String backpackKey, String backpackName, int backpackColour)
|
|
|
|
|
{
|
|
|
|
|
items = new ArrayList<ItemStack>();
|
|
|
|
|
this.name = backpackName;
|
|
|
|
|
this.key = backpackKey;
|
|
|
|
|
this.colour = backpackColour;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public String getKey()
|
|
|
|
|
{
|
|
|
|
|
return this.key;
|
|
|
|
|
}
|
|
|
|
|
|
2015-01-08 21:48:13 -08:00
|
|
|
@Override
|
|
|
|
|
public String getName(ItemStack backpack)
|
|
|
|
|
{
|
|
|
|
|
return name;
|
|
|
|
|
}
|
2014-08-23 00:33:46 +02:00
|
|
|
|
2015-01-08 21:48:13 -08:00
|
|
|
@Override
|
2013-01-06 16:50:52 -08:00
|
|
|
public int getPrimaryColour()
|
|
|
|
|
{
|
|
|
|
|
return this.colour;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public int getSecondaryColour()
|
|
|
|
|
{
|
|
|
|
|
return 0xFFFFFF;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void addValidItem(ItemStack validItem)
|
|
|
|
|
{
|
|
|
|
|
if (!this.items.contains(validItem))
|
|
|
|
|
{
|
|
|
|
|
this.items.add(validItem);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2015-01-11 01:51:48 -08:00
|
|
|
@Override
|
|
|
|
|
public boolean isValidItem(ItemStack itemStack) {
|
2013-01-06 16:50:52 -08:00
|
|
|
boolean flag = false;
|
2015-01-08 21:48:13 -08:00
|
|
|
|
2013-01-06 16:50:52 -08:00
|
|
|
ItemStack stack;
|
|
|
|
|
for (int i = 0; i < this.items.size() && !flag; i++)
|
|
|
|
|
{
|
|
|
|
|
stack = this.items.get(i);
|
|
|
|
|
// If comparison stack has meta of -1
|
2014-04-08 12:39:01 -07:00
|
|
|
if (stack.getItem() == itemStack.getItem())
|
2013-01-06 16:50:52 -08:00
|
|
|
{
|
|
|
|
|
flag = stack.getItemDamage() == -1 || stack.getItemDamage() == itemStack.getItemDamage();
|
|
|
|
|
}
|
|
|
|
|
}
|
2015-01-08 21:48:13 -08:00
|
|
|
|
2013-01-06 16:50:52 -08:00
|
|
|
return flag;
|
|
|
|
|
}
|
|
|
|
|
|
2014-09-30 17:15:19 +02:00
|
|
|
@Override
|
2015-01-08 21:48:13 -08:00
|
|
|
public void addValidItems(List<ItemStack> validItems)
|
|
|
|
|
{
|
|
|
|
|
for (ItemStack s : validItems)
|
2014-09-30 17:15:19 +02:00
|
|
|
addValidItem(s);
|
2015-01-08 21:48:13 -08:00
|
|
|
|
2014-09-30 17:15:19 +02:00
|
|
|
}
|
|
|
|
|
|
2013-01-06 16:50:52 -08:00
|
|
|
}
|