ItemRenderer, RenderGlobal, StateMap, RenderItem rejects updated.
This commit is contained in:
parent
9deb54b75f
commit
8000e22830
8 changed files with 114 additions and 158 deletions
|
@ -13,7 +13,7 @@
|
|||
|
||||
if (iblockstate.getBlock().getRenderType() != -1)
|
||||
{
|
||||
+ if (!net.minecraftforge.event.ForgeEventFactory.renderBlockOverlay(mc.thePlayer, p_78447_1_, net.minecraftforge.client.event.RenderBlockOverlayEvent.OverlayType.BLOCK, iblockstate, blockpos))
|
||||
+ if (!net.minecraftforge.event.ForgeEventFactory.renderBlockOverlay(mc.thePlayer, p_78447_1_, net.minecraftforge.client.event.RenderBlockOverlayEvent.OverlayType.BLOCK, iblockstate, new BlockPos(this.mc.thePlayer)))
|
||||
this.func_178108_a(p_78447_1_, this.mc.getBlockRendererDispatcher().getBlockModelShapes().getTexture(iblockstate));
|
||||
}
|
||||
}
|
||||
|
@ -35,10 +35,10 @@
|
|||
{
|
||||
if (!this.itemToRender.getIsItemStackEqual(itemstack))
|
||||
{
|
||||
+ if (!this.itemToRender.getItem().shouldCauseReequipAnimation(this.itemToRender, itemstack, equippedItemSlot != entityplayersp.inventory.currentItem))
|
||||
+ if (!this.itemToRender.getItem().shouldCauseReequipAnimation(this.itemToRender, itemstack, equippedItemSlot != entityplayer.inventory.currentItem))
|
||||
+ {
|
||||
+ this.itemToRender = itemstack;
|
||||
+ this.equippedItemSlot = entityplayersp.inventory.currentItem;
|
||||
+ this.equippedItemSlot = entityplayer.inventory.currentItem;
|
||||
+ return;
|
||||
+ }
|
||||
flag = true;
|
||||
|
|
|
@ -11,7 +11,77 @@
|
|||
--this.renderEntitiesStartupCounter;
|
||||
}
|
||||
else
|
||||
@@ -1162,6 +1164,12 @@
|
||||
@@ -538,9 +540,12 @@
|
||||
this.theWorld.theProfiler.startSection("prepare");
|
||||
TileEntityRendererDispatcher.instance.cacheActiveRenderInfo(this.theWorld, this.mc.getTextureManager(), this.mc.fontRendererObj, this.mc.getRenderViewEntity(), partialTicks);
|
||||
this.renderManager.cacheActiveRenderInfo(this.theWorld, this.mc.fontRendererObj, this.mc.getRenderViewEntity(), this.mc.pointedEntity, this.mc.gameSettings, partialTicks);
|
||||
+ if(pass == 0)
|
||||
+ {
|
||||
this.countEntitiesTotal = 0;
|
||||
this.countEntitiesRendered = 0;
|
||||
this.countEntitiesHidden = 0;
|
||||
+ }
|
||||
Entity entity = this.mc.getRenderViewEntity();
|
||||
double d3 = entity.lastTickPosX + (entity.posX - entity.lastTickPosX) * (double)partialTicks;
|
||||
double d4 = entity.lastTickPosY + (entity.posY - entity.lastTickPosY) * (double)partialTicks;
|
||||
@@ -552,11 +557,15 @@
|
||||
this.mc.entityRenderer.enableLightmap();
|
||||
this.theWorld.theProfiler.endStartSection("global");
|
||||
List<Entity> list = this.theWorld.getLoadedEntityList();
|
||||
+ if (pass == 0)
|
||||
+ {
|
||||
this.countEntitiesTotal = list.size();
|
||||
+ }
|
||||
|
||||
for (int i = 0; i < this.theWorld.weatherEffects.size(); ++i)
|
||||
{
|
||||
Entity entity1 = (Entity)this.theWorld.weatherEffects.get(i);
|
||||
+ if (!entity1.shouldRenderInPass(pass)) continue;
|
||||
++this.countEntitiesRendered;
|
||||
|
||||
if (entity1.isInRangeToRender3d(d0, d1, d2))
|
||||
@@ -578,6 +587,7 @@
|
||||
for (int j = 0; j < list.size(); ++j)
|
||||
{
|
||||
Entity entity3 = (Entity)list.get(j);
|
||||
+ if (!entity3.shouldRenderInPass(pass)) continue;
|
||||
boolean flag = this.mc.getRenderViewEntity() instanceof EntityLivingBase && ((EntityLivingBase)this.mc.getRenderViewEntity()).isPlayerSleeping();
|
||||
boolean flag1 = entity3.isInRangeToRender3d(d0, d1, d2) && (entity3.ignoreFrustumCheck || p_180446_2_.isBoundingBoxInFrustum(entity3.getEntityBoundingBox()) || entity3.riddenByEntity == this.mc.thePlayer) && entity3 instanceof EntityPlayer;
|
||||
|
||||
@@ -627,6 +637,7 @@
|
||||
}
|
||||
|
||||
entity2 = (Entity)iterator.next();
|
||||
+ if (!entity2.shouldRenderInPass(pass)) continue;
|
||||
flag2 = this.renderManager.shouldRender(entity2, p_180446_2_, d0, d1, d2) || entity2.riddenByEntity == this.mc.thePlayer;
|
||||
|
||||
if (!flag2)
|
||||
@@ -663,6 +674,7 @@
|
||||
{
|
||||
for (TileEntity tileentity2 : list1)
|
||||
{
|
||||
+ if (!tileentity2.shouldRenderInPass(pass) || !p_180446_2_.isBoundingBoxInFrustum(tileentity2.getRenderBoundingBox())) continue;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntity(tileentity2, partialTicks, -1);
|
||||
}
|
||||
}
|
||||
@@ -672,6 +684,7 @@
|
||||
{
|
||||
for (TileEntity tileentity : this.field_181024_n)
|
||||
{
|
||||
+ if (!tileentity.shouldRenderInPass(pass) || !p_180446_2_.isBoundingBoxInFrustum(tileentity.getRenderBoundingBox())) continue;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntity(tileentity, partialTicks, -1);
|
||||
}
|
||||
}
|
||||
@@ -701,7 +714,7 @@
|
||||
|
||||
Block block = this.theWorld.getBlockState(blockpos).getBlock();
|
||||
|
||||
- if (tileentity1 != null && (block instanceof BlockChest || block instanceof BlockEnderChest || block instanceof BlockSign || block instanceof BlockSkull))
|
||||
+ if (tileentity1 != null && tileentity1.shouldRenderInPass(pass) && tileentity1.canRenderBreaking() && p_180446_2_.isBoundingBoxInFrustum(tileentity1.getRenderBoundingBox()))
|
||||
{
|
||||
TileEntityRendererDispatcher.instance.renderTileEntity(tileentity1, partialTicks, destroyblockprogress.getPartialBlockDamage());
|
||||
}
|
||||
@@ -1162,6 +1175,12 @@
|
||||
|
||||
public void renderSky(float partialTicks, int pass)
|
||||
{
|
||||
|
@ -24,7 +94,7 @@
|
|||
if (this.mc.theWorld.provider.getDimensionId() == 1)
|
||||
{
|
||||
this.renderSkyEnd();
|
||||
@@ -1379,6 +1387,12 @@
|
||||
@@ -1379,6 +1398,12 @@
|
||||
|
||||
public void renderClouds(float p_180447_1_, int p_180447_2_)
|
||||
{
|
||||
|
@ -37,7 +107,7 @@
|
|||
if (this.mc.theWorld.provider.isSurfaceWorld())
|
||||
{
|
||||
if (this.mc.gameSettings.func_181147_e() == 2)
|
||||
@@ -1794,8 +1808,11 @@
|
||||
@@ -1794,8 +1819,11 @@
|
||||
double d4 = (double)blockpos.getY() - d1;
|
||||
double d5 = (double)blockpos.getZ() - d2;
|
||||
Block block = this.theWorld.getBlockState(blockpos).getBlock();
|
||||
|
@ -50,7 +120,7 @@
|
|||
{
|
||||
if (d3 * d3 + d4 * d4 + d5 * d5 > 1024.0D)
|
||||
{
|
||||
@@ -1950,13 +1967,16 @@
|
||||
@@ -1950,13 +1978,16 @@
|
||||
if (recordName != null)
|
||||
{
|
||||
ItemRecord itemrecord = ItemRecord.getRecord(recordName);
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
--- ../src-base/minecraft/net/minecraft/client/renderer/block/statemap/StateMap.java
|
||||
+++ ../src-work/minecraft/net/minecraft/client/renderer/block/statemap/StateMap.java
|
||||
@@ -39,7 +39,7 @@
|
||||
}
|
||||
else
|
||||
{
|
||||
- s = ((IProperty)this.property).getName((Comparable)map.remove(this.property));
|
||||
+ s = String.format("%s:%s", ((ResourceLocation)Block.blockRegistry.getNameForObject(p_178132_1_.getBlock())).getResourceDomain(), ((IProperty)this.property).getName((Comparable)map.remove(this.property)));
|
||||
}
|
||||
|
||||
if (this.suffix != null)
|
|
@ -24,7 +24,7 @@
|
|||
}
|
||||
+ else
|
||||
+ {
|
||||
+ // TODO: add back getModel; maybe switch to the smart player model / normal smart item model?
|
||||
+ // TODO: maybe switch to the smart player model / normal smart item model?
|
||||
+ modelresourcelocation = item.getModel(stack, entityplayer, entityplayer.getItemInUseCount());
|
||||
+ }
|
||||
|
||||
|
@ -56,7 +56,31 @@
|
|||
this.renderItem(stack, ibakedmodel);
|
||||
GlStateManager.disableAlpha();
|
||||
GlStateManager.disableRescaleNormal();
|
||||
@@ -1048,6 +1048,7 @@
|
||||
@@ -464,10 +464,11 @@
|
||||
GlStateManager.enableDepth();
|
||||
}
|
||||
|
||||
- if (stack.isItemDamaged())
|
||||
+ if (stack.getItem().showDurabilityBar(stack))
|
||||
{
|
||||
- int j = (int)Math.round(13.0D - (double)stack.getItemDamage() * 13.0D / (double)stack.getMaxDamage());
|
||||
- int i = (int)Math.round(255.0D - (double)stack.getItemDamage() * 255.0D / (double)stack.getMaxDamage());
|
||||
+ double health = stack.getItem().getDurabilityForDisplay(stack);
|
||||
+ int j = (int)Math.round(13.0D - health * 13.0D);
|
||||
+ int i = (int)Math.round(255.0D - health * 255.0D);
|
||||
GlStateManager.disableLighting();
|
||||
GlStateManager.disableDepth();
|
||||
GlStateManager.disableTexture2D();
|
||||
@@ -478,7 +479,7 @@
|
||||
this.func_181565_a(worldrenderer, xPosition + 2, yPosition + 13, 13, 2, 0, 0, 0, 255);
|
||||
this.func_181565_a(worldrenderer, xPosition + 2, yPosition + 13, 12, 1, (255 - i) / 4, 64, 0, 255);
|
||||
this.func_181565_a(worldrenderer, xPosition + 2, yPosition + 13, j, 1, 255 - i, i, 0, 255);
|
||||
- GlStateManager.enableBlend();
|
||||
+ //GlStateManager.enableBlend(); // Forge: Disable Blend because it screws with a lot of things down the line.
|
||||
GlStateManager.enableAlpha();
|
||||
GlStateManager.enableTexture2D();
|
||||
GlStateManager.enableLighting();
|
||||
@@ -1048,6 +1049,7 @@
|
||||
this.registerBlock(Blocks.brown_mushroom_block, BlockHugeMushroom.EnumType.ALL_INSIDE.getMetadata(), "brown_mushroom_block");
|
||||
this.registerBlock(Blocks.red_mushroom_block, BlockHugeMushroom.EnumType.ALL_INSIDE.getMetadata(), "red_mushroom_block");
|
||||
this.registerBlock(Blocks.dragon_egg, "dragon_egg");
|
||||
|
|
|
@ -1,21 +0,0 @@
|
|||
++++ REJECTED PATCH 2
|
||||
|
||||
if (this.mc.thePlayer.isEntityInsideOpaqueBlock())
|
||||
{
|
||||
- IBlockState iblockstate = this.mc.theWorld.getBlockState(new BlockPos(this.mc.thePlayer));
|
||||
+ BlockPos blockpos = new BlockPos(this.mc.thePlayer);
|
||||
+ IBlockState iblockstate = this.mc.theWorld.getBlockState(blockpos);
|
||||
EntityPlayerSP entityplayersp = this.mc.thePlayer;
|
||||
|
||||
for (int i = 0; i < 8; ++i)
|
||||
++++ END PATCH
|
||||
++++ REJECTED PATCH 3
|
||||
double d0 = entityplayersp.posX + (double)(((float)((i >> 0) % 2) - 0.5F) * entityplayersp.width * 0.8F);
|
||||
double d1 = entityplayersp.posY + (double)(((float)((i >> 1) % 2) - 0.5F) * 0.1F);
|
||||
double d2 = entityplayersp.posZ + (double)(((float)((i >> 2) % 2) - 0.5F) * entityplayersp.width * 0.8F);
|
||||
- BlockPos blockpos = new BlockPos(d0, d1 + (double)entityplayersp.getEyeHeight(), d2);
|
||||
+ blockpos = new BlockPos(d0, d1 + (double)entityplayersp.getEyeHeight(), d2);
|
||||
IBlockState iblockstate1 = this.mc.theWorld.getBlockState(blockpos);
|
||||
|
||||
if (iblockstate1.getBlock().isVisuallyOpaque())
|
||||
++++ END PATCH
|
|
@ -1,70 +0,0 @@
|
|||
++++ REJECTED PATCH 2
|
||||
this.theWorld.theProfiler.startSection("prepare");
|
||||
TileEntityRendererDispatcher.instance.cacheActiveRenderInfo(this.theWorld, this.mc.getTextureManager(), this.mc.fontRendererObj, this.mc.getRenderViewEntity(), partialTicks);
|
||||
this.renderManager.cacheActiveRenderInfo(this.theWorld, this.mc.fontRendererObj, this.mc.getRenderViewEntity(), this.mc.pointedEntity, this.mc.gameSettings, partialTicks);
|
||||
+ if (pass == 0) // no indentation to shrink patch
|
||||
+ {
|
||||
this.countEntitiesTotal = 0;
|
||||
this.countEntitiesRendered = 0;
|
||||
this.countEntitiesHidden = 0;
|
||||
+ }
|
||||
Entity entity1 = this.mc.getRenderViewEntity();
|
||||
double d3 = entity1.lastTickPosX + (entity1.posX - entity1.lastTickPosX) * (double)partialTicks;
|
||||
double d4 = entity1.lastTickPosY + (entity1.posY - entity1.lastTickPosY) * (double)partialTicks;
|
||||
++++ END PATCH
|
||||
++++ REJECTED PATCH 3
|
||||
this.mc.entityRenderer.enableLightmap();
|
||||
this.theWorld.theProfiler.endStartSection("global");
|
||||
List list = this.theWorld.getLoadedEntityList();
|
||||
+ if (pass == 0) // no indentation to shrink patch
|
||||
+ {
|
||||
this.countEntitiesTotal = list.size();
|
||||
+ }
|
||||
int i;
|
||||
Entity entity2;
|
||||
|
||||
for (i = 0; i < this.theWorld.weatherEffects.size(); ++i)
|
||||
{
|
||||
entity2 = (Entity)this.theWorld.weatherEffects.get(i);
|
||||
+ if (!entity2.shouldRenderInPass(pass)) continue;
|
||||
++this.countEntitiesRendered;
|
||||
|
||||
if (entity2.isInRangeToRender3d(d0, d1, d2))
|
||||
++++ END PATCH
|
||||
++++ REJECTED PATCH 4
|
||||
for (i = 0; i < list.size(); ++i)
|
||||
{
|
||||
entity2 = (Entity)list.get(i);
|
||||
+ if (!entity2.shouldRenderInPass(pass)) continue;
|
||||
boolean flag = this.mc.getRenderViewEntity() instanceof EntityLivingBase && ((EntityLivingBase)this.mc.getRenderViewEntity()).isPlayerSleeping();
|
||||
boolean flag1 = entity2.isInRangeToRender3d(d0, d1, d2) && (entity2.ignoreFrustumCheck || p_180446_2_.isBoundingBoxInFrustum(entity2.getEntityBoundingBox()) || entity2.riddenByEntity == this.mc.thePlayer) && entity2 instanceof EntityPlayer;
|
||||
|
||||
++++ END PATCH
|
||||
++++ REJECTED PATCH 5
|
||||
while (iterator2.hasNext())
|
||||
{
|
||||
Entity entity3 = (Entity)iterator2.next();
|
||||
+ if (!entity3.shouldRenderInPass(pass)) continue;
|
||||
boolean flag2 = this.renderManager.shouldRender(entity3, p_180446_2_, d0, d1, d2) || entity3.riddenByEntity == this.mc.thePlayer;
|
||||
|
||||
if (flag2)
|
||||
++++ END PATCH
|
||||
++++ REJECTED PATCH 6
|
||||
while (iterator1.hasNext())
|
||||
{
|
||||
tileentity = (TileEntity)iterator1.next();
|
||||
+ if (!tileentity.shouldRenderInPass(pass) || !p_180446_2_.isBoundingBoxInFrustum(tileentity.getRenderBoundingBox())) continue;
|
||||
TileEntityRendererDispatcher.instance.renderTileEntity(tileentity, partialTicks, -1);
|
||||
}
|
||||
}
|
||||
++++ END PATCH
|
||||
++++ REJECTED PATCH 7
|
||||
|
||||
Block block = this.theWorld.getBlockState(blockpos).getBlock();
|
||||
|
||||
- if (tileentity != null && (block instanceof BlockChest || block instanceof BlockEnderChest || block instanceof BlockSign || block instanceof BlockSkull))
|
||||
+ if (tileentity != null && tileentity.shouldRenderInPass(pass) && tileentity.canRenderBreaking() && p_180446_2_.isBoundingBoxInFrustum(tileentity.getRenderBoundingBox()))
|
||||
{
|
||||
TileEntityRendererDispatcher.instance.renderTileEntity(tileentity, partialTicks, destroyblockprogress.getPartialBlockDamage());
|
||||
}
|
||||
++++ END PATCH
|
|
@ -1,10 +0,0 @@
|
|||
++++ REJECTED PATCH 1
|
||||
}
|
||||
else
|
||||
{
|
||||
- s = this.property.getName((Comparable)linkedhashmap.remove(this.property));
|
||||
+ s = String.format("%s:%s", ((ResourceLocation)Block.blockRegistry.getNameForObject(p_178132_1_.getBlock())).getResourceDomain(), this.property.getName((Comparable)linkedhashmap.remove(this.property)));
|
||||
}
|
||||
|
||||
if (this.suffix != null)
|
||||
++++ END PATCH
|
|
@ -1,48 +0,0 @@
|
|||
++++ REJECTED PATCH 7
|
||||
GlStateManager.enableDepth();
|
||||
}
|
||||
|
||||
- if (stack.isItemDamaged())
|
||||
+ if (stack.getItem().showDurabilityBar(stack))
|
||||
{
|
||||
- int j1 = (int)Math.round(13.0D - (double)stack.getItemDamage() * 13.0D / (double)stack.getMaxDamage());
|
||||
- int k = (int)Math.round(255.0D - (double)stack.getItemDamage() * 255.0D / (double)stack.getMaxDamage());
|
||||
+ double health = stack.getItem().getDurabilityForDisplay(stack);
|
||||
+ int j1 = (int)Math.round(13.0D - health * 13.0D);
|
||||
+ int k = (int)Math.round(255.0D - health * 255.0D);
|
||||
GlStateManager.disableLighting();
|
||||
GlStateManager.disableDepth();
|
||||
GlStateManager.disableTexture2D();
|
||||
++++ END PATCH
|
||||
++++ REJECTED PATCH 8
|
||||
this.drawRect(worldrenderer, xPosition + 2, yPosition + 13, 13, 2, 0);
|
||||
this.drawRect(worldrenderer, xPosition + 2, yPosition + 13, 12, 1, i1);
|
||||
this.drawRect(worldrenderer, xPosition + 2, yPosition + 13, j1, 1, l);
|
||||
- GlStateManager.enableBlend();
|
||||
+ //GlStateManager.enableBlend(); // Forge: Disable Bled because it screws with a lot of things down the line.
|
||||
GlStateManager.enableAlpha();
|
||||
GlStateManager.enableTexture2D();
|
||||
GlStateManager.enableLighting();
|
||||
++++ END PATCH
|
||||
++++ REJECTED PATCH 9
|
||||
public void onResourceManagerReload(IResourceManager resourceManager)
|
||||
{
|
||||
this.itemModelMesher.rebuildCache();
|
||||
}
|
||||
+ /*==================================== FORGE START ===========================================* /
|
||||
+ private static RenderItem instance;
|
||||
+ /**
|
||||
+ * Returns a single lazy loaded instance of RenderItem, for use in mods who
|
||||
+ * don't care about the interaction of other objects on the current state of the RenderItem they are using.
|
||||
+ * @return A global instance of RenderItem
|
||||
+ * /
|
||||
+ public static RenderItem getInstance()
|
||||
+ {
|
||||
+ if (instance == null) instance = new RenderItem();
|
||||
+ return instance;
|
||||
+ }
|
||||
+ /*==================================== FORGE END =============================================*/
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
|
||||
++++ END PATCH
|
Loading…
Reference in a new issue