package net.minecraft.client.renderer.texture;
import com.google.common.collect.Lists;
import java.awt.image.BufferedImage;
import java.awt.image.ImageObserver;
import java.io.IOException;
import java.io.InputStream;
import java.util.Iterator;
import java.util.List;
import net.minecraft.client.resources.IResourceManager;
import net.minecraft.util.ResourceLocation;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
public class LayeredTexture extends AbstractTexture
{
private static final Logger logger = LogManager.getLogger();
public final List layeredTextureNames;
private static final String __OBFID = "CL_00001051";
public LayeredTexture(String ... p_i1274_1_)
{
this.layeredTextureNames = Lists.newArrayList(p_i1274_1_);
}
public void loadTexture(IResourceManager p_110551_1_) throws IOException
{
this.deleteGlTexture();
BufferedImage var2 = null;
try
{
Iterator var3 = this.layeredTextureNames.iterator();
while (var3.hasNext())
{
String var4 = (String)var3.next();
if (var4 != null)
{
InputStream var5 = p_110551_1_.getResource(new ResourceLocation(var4)).getInputStream();
BufferedImage var6 = TextureUtil.func_177053_a(var5);
if (var2 == null)
{
var2 = new BufferedImage(var6.getWidth(), var6.getHeight(), 2);
}
var2.getGraphics().drawImage(var6, 0, 0, (ImageObserver)null);
}
}
}
catch (IOException var7)
{
logger.error("Couldn\'t load layered image", var7);
return;
}
TextureUtil.uploadTextureImage(this.getGlTextureId(), var2);
}
}