/**
* Copyright (c) Lambda Innovation, 2013-2016
* This file is part of the AcademyCraft mod.
* https://github.com/LambdaInnovation/AcademyCraft
* Licensed under GPLv3, see project root for more information.
*/
package cn.academy.misc.achievements;
import cn.academy.core.Resources;
import cn.academy.misc.achievements.client.RenderItemAchievement;
import cn.lambdalib.annoreg.mc.RegItem;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import java.util.ArrayList;
/**
* @author EAirPeter
*/
public final class ItemAchievement extends Item {
@RegItem.Render
@SideOnly(Side.CLIENT)
public static RenderItemAchievement render;
private static ItemAchievement ITEM = null;
private static final ArrayList<ResourceLocation> list;
static {
list = new ArrayList<ResourceLocation>();
list.add(Resources.getTexture("null"));
}
public static ItemStack getStack(String texname) {
return getStack(Resources.getTexture(texname));
}
public static ItemStack getStack(ResourceLocation tex) {
int idx = list.indexOf(tex);
if (idx == -1) {
idx = list.size();
list.add(tex);
}
return new ItemStack(ITEM, 1, idx);
}
public static ResourceLocation getTexture(int idx) {
return list.get(idx);
}
public ItemAchievement() {
if (ITEM == null)
ITEM = this;
else
throw new IllegalStateException("Only one ItemAchievement is allowed");
}
}