TileEntityBannerRenderer.java 文件源码

java
阅读 24 收藏 0 点赞 0 评论 0

项目:DecompiledMinecraft 作者:
private ResourceLocation func_178463_a(TileEntityBanner bannerObj)
{
    String s = bannerObj.func_175116_e();

    if (s.isEmpty())
    {
        return null;
    }
    else
    {
        TileEntityBannerRenderer.TimedBannerTexture tileentitybannerrenderer$timedbannertexture = (TileEntityBannerRenderer.TimedBannerTexture)DESIGNS.get(s);

        if (tileentitybannerrenderer$timedbannertexture == null)
        {
            if (DESIGNS.size() >= 256)
            {
                long i = System.currentTimeMillis();
                Iterator<String> iterator = DESIGNS.keySet().iterator();

                while (iterator.hasNext())
                {
                    String s1 = (String)iterator.next();
                    TileEntityBannerRenderer.TimedBannerTexture tileentitybannerrenderer$timedbannertexture1 = (TileEntityBannerRenderer.TimedBannerTexture)DESIGNS.get(s1);

                    if (i - tileentitybannerrenderer$timedbannertexture1.systemTime > 60000L)
                    {
                        Minecraft.getMinecraft().getTextureManager().deleteTexture(tileentitybannerrenderer$timedbannertexture1.bannerTexture);
                        iterator.remove();
                    }
                }

                if (DESIGNS.size() >= 256)
                {
                    return null;
                }
            }

            List<TileEntityBanner.EnumBannerPattern> list1 = bannerObj.getPatternList();
            List<EnumDyeColor> list = bannerObj.getColorList();
            List<String> list2 = Lists.<String>newArrayList();

            for (TileEntityBanner.EnumBannerPattern tileentitybanner$enumbannerpattern : list1)
            {
                list2.add("textures/entity/banner/" + tileentitybanner$enumbannerpattern.getPatternName() + ".png");
            }

            tileentitybannerrenderer$timedbannertexture = new TileEntityBannerRenderer.TimedBannerTexture();
            tileentitybannerrenderer$timedbannertexture.bannerTexture = new ResourceLocation(s);
            Minecraft.getMinecraft().getTextureManager().loadTexture(tileentitybannerrenderer$timedbannertexture.bannerTexture, new LayeredColorMaskTexture(BANNERTEXTURES, list2, list));
            DESIGNS.put(s, tileentitybannerrenderer$timedbannertexture);
        }

        tileentitybannerrenderer$timedbannertexture.systemTime = System.currentTimeMillis();
        return tileentitybannerrenderer$timedbannertexture.bannerTexture;
    }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号