package openblocks.integration;
import cpw.mods.fml.common.registry.GameRegistry;
import java.util.List;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import openmods.Mods;
public class TurtleUtils {
private static ItemStack tryGetTurtle(String itemName) {
ItemStack result = GameRegistry.findItemStack(Mods.COMPUTERCRAFT_TURTLE, itemName, 1);
if (result != null) return result;
result = GameRegistry.findItemStack(Mods.COMPUTERCRAFT, itemName, 1);
return result;
}
public static ItemStack getExpandedTurtleItemStack() {
return tryGetTurtle("CC-TurtleExpanded");
}
public static ItemStack getAdvancedTurtleItemStack() {
return tryGetTurtle("CC-TurtleAdvanced");
}
public static void createTurtleItemStack(List<ItemStack> result, boolean isAdvanced, Short left, Short right) {
ItemStack turtle = isAdvanced? getAdvancedTurtleItemStack() : getExpandedTurtleItemStack();
if (turtle == null) return;
NBTTagCompound tag = turtle.getTagCompound();
if (tag == null) {
tag = new NBTTagCompound();
turtle.setTagCompound(tag);
}
if (left != null) tag.setShort("leftUpgrade", left);
if (right != null) tag.setShort("rightUpgrade", right);
result.add(turtle);
}
private static final int NUMBER_OF_TURTLE_TOOLS = 7;
private static void addUpgradedTurtles(List<ItemStack> result, short upgradeId, boolean isAdvanced) {
createTurtleItemStack(result, isAdvanced, upgradeId, null);
for (int i = 1; i < NUMBER_OF_TURTLE_TOOLS; i++)
createTurtleItemStack(result, isAdvanced, upgradeId, (short)i);
}
public static void addUpgradedTurtles(List<ItemStack> result, short upgradeId) {
addUpgradedTurtles(result, upgradeId, false);
addUpgradedTurtles(result, upgradeId, true);
}
}