2018-09-08 20:34:59 +00:00
|
|
|
--- a/net/minecraft/client/renderer/ItemRenderer.java
|
|
|
|
+++ b/net/minecraft/client/renderer/ItemRenderer.java
|
2019-02-14 23:08:53 +00:00
|
|
|
@@ -50,13 +50,14 @@
|
2018-09-08 20:34:59 +00:00
|
|
|
|
|
|
|
public ItemRenderer(TextureManager p_i46552_1_, ModelManager p_i46552_2_, ItemColors p_i46552_3_) {
|
2018-09-22 03:28:47 +00:00
|
|
|
this.field_175057_n = p_i46552_1_;
|
|
|
|
- this.field_175059_m = new ItemModelMesher(p_i46552_2_);
|
|
|
|
+ this.field_175059_m = new net.minecraftforge.client.ItemModelMesherForge(p_i46552_2_);
|
2018-09-08 20:34:59 +00:00
|
|
|
|
2019-02-14 23:08:53 +00:00
|
|
|
for(Item item : IRegistry.field_212630_s) {
|
2018-09-08 20:34:59 +00:00
|
|
|
if (!field_195411_c.contains(item)) {
|
2019-02-14 23:08:53 +00:00
|
|
|
this.field_175059_m.func_199311_a(item, new ModelResourceLocation(IRegistry.field_212630_s.func_177774_c(item), "inventory"));
|
2018-12-21 22:45:35 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
+ net.minecraftforge.client.model.ModelLoader.onRegisterItems(this.field_175059_m);
|
|
|
|
|
|
|
|
this.field_184395_f = p_i46552_3_;
|
|
|
|
}
|
2019-04-12 14:45:32 +00:00
|
|
|
@@ -74,6 +75,10 @@
|
|
|
|
}
|
|
|
|
|
|
|
|
private void func_191967_a(IBakedModel p_191967_1_, int p_191967_2_, ItemStack p_191967_3_) {
|
|
|
|
+ if (net.minecraftforge.common.ForgeConfig.CLIENT.allowEmissiveItems.get()) {
|
|
|
|
+ net.minecraftforge.client.ForgeHooksClient.renderLitItem(this, p_191967_1_, p_191967_2_, p_191967_3_);
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
Tessellator tessellator = Tessellator.func_178181_a();
|
|
|
|
BufferBuilder bufferbuilder = tessellator.func_178180_c();
|
|
|
|
bufferbuilder.func_181668_a(7, DefaultVertexFormats.field_176599_b);
|
|
|
|
@@ -97,7 +102,7 @@
|
2018-12-21 22:45:35 +00:00
|
|
|
if (p_180454_2_.func_188618_c()) {
|
|
|
|
GlStateManager.func_179131_c(1.0F, 1.0F, 1.0F, 1.0F);
|
|
|
|
GlStateManager.func_179091_B();
|
|
|
|
- TileEntityItemStackRenderer.field_147719_a.func_179022_a(p_180454_1_);
|
|
|
|
+ p_180454_1_.func_77973_b().getTileEntityItemStackRenderer().func_179022_a(p_180454_1_);
|
|
|
|
} else {
|
|
|
|
this.func_191961_a(p_180454_2_, p_180454_1_);
|
|
|
|
if (p_180454_1_.func_77962_s()) {
|
2019-04-12 14:45:32 +00:00
|
|
|
@@ -163,7 +168,7 @@
|
2018-12-21 22:45:35 +00:00
|
|
|
k = k | -16777216;
|
|
|
|
}
|
|
|
|
|
|
|
|
- this.func_191969_a(p_191970_1_, bakedquad, k);
|
|
|
|
+ net.minecraftforge.client.model.pipeline.LightUtil.renderQuadColor(p_191970_1_, bakedquad, k);
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
2019-04-12 14:45:32 +00:00
|
|
|
@@ -224,11 +229,8 @@
|
2018-12-21 22:45:35 +00:00
|
|
|
GlStateManager.func_179147_l();
|
|
|
|
GlStateManager.func_187428_a(GlStateManager.SourceFactor.SRC_ALPHA, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA, GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ZERO);
|
|
|
|
GlStateManager.func_179094_E();
|
|
|
|
- ItemCameraTransforms itemcameratransforms = p_184394_2_.func_177552_f();
|
|
|
|
- ItemCameraTransforms.func_188034_a(itemcameratransforms.func_181688_b(p_184394_3_), p_184394_4_);
|
|
|
|
- if (this.func_183005_a(itemcameratransforms.func_181688_b(p_184394_3_))) {
|
|
|
|
- GlStateManager.func_187407_a(GlStateManager.CullFace.FRONT);
|
|
|
|
- }
|
|
|
|
+ // TODO: check if negative scale is a thing
|
|
|
|
+ p_184394_2_ = net.minecraftforge.client.ForgeHooksClient.handleCameraTransforms(p_184394_2_, p_184394_3_, p_184394_4_);
|
|
|
|
|
|
|
|
this.func_180454_a(p_184394_1_, p_184394_2_);
|
|
|
|
GlStateManager.func_187407_a(GlStateManager.CullFace.BACK);
|
2019-04-12 14:45:32 +00:00
|
|
|
@@ -259,7 +261,7 @@
|
2018-12-21 22:45:35 +00:00
|
|
|
GlStateManager.func_187401_a(GlStateManager.SourceFactor.SRC_ALPHA, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA);
|
|
|
|
GlStateManager.func_179131_c(1.0F, 1.0F, 1.0F, 1.0F);
|
|
|
|
this.func_180452_a(p_191962_2_, p_191962_3_, p_191962_4_.func_177556_c());
|
|
|
|
- p_191962_4_.func_177552_f().func_181689_a(ItemCameraTransforms.TransformType.GUI);
|
|
|
|
+ p_191962_4_ = net.minecraftforge.client.ForgeHooksClient.handleCameraTransforms(p_191962_4_, ItemCameraTransforms.TransformType.GUI, false);
|
|
|
|
this.func_180454_a(p_191962_1_, p_191962_4_);
|
|
|
|
GlStateManager.func_179118_c();
|
|
|
|
GlStateManager.func_179101_C();
|
2019-04-12 14:45:32 +00:00
|
|
|
@@ -298,6 +300,7 @@
|
2018-12-21 22:45:35 +00:00
|
|
|
crashreportcategory.func_189529_a("Item Type", () -> {
|
|
|
|
return String.valueOf((Object)p_184391_2_.func_77973_b());
|
|
|
|
});
|
|
|
|
+ crashreportcategory.func_189529_a("Registry Name", () -> String.valueOf(p_184391_2_.func_77973_b().getRegistryName()));
|
|
|
|
crashreportcategory.func_189529_a("Item Damage", () -> {
|
|
|
|
return String.valueOf(p_184391_2_.func_77952_i());
|
|
|
|
});
|
2019-04-12 14:45:32 +00:00
|
|
|
@@ -329,9 +332,12 @@
|
2019-02-14 23:08:53 +00:00
|
|
|
GlStateManager.func_179147_l();
|
2018-12-21 22:45:35 +00:00
|
|
|
GlStateManager.func_179145_e();
|
|
|
|
GlStateManager.func_179126_j();
|
|
|
|
+ // Fixes opaque cooldown overlay a bit lower
|
|
|
|
+ // TODO: check if enabled blending still screws things up down the line.
|
|
|
|
+ GlStateManager.func_179147_l();
|
|
|
|
}
|
|
|
|
|
|
|
|
- if (p_180453_2_.func_77951_h()) {
|
|
|
|
+ if (p_180453_2_.func_77973_b().showDurabilityBar(p_180453_2_)) {
|
|
|
|
GlStateManager.func_179140_f();
|
|
|
|
GlStateManager.func_179097_i();
|
|
|
|
GlStateManager.func_179090_x();
|
2019-04-12 14:45:32 +00:00
|
|
|
@@ -339,11 +345,9 @@
|
2018-12-21 22:45:35 +00:00
|
|
|
GlStateManager.func_179084_k();
|
|
|
|
Tessellator tessellator = Tessellator.func_178181_a();
|
|
|
|
BufferBuilder bufferbuilder = tessellator.func_178180_c();
|
|
|
|
- float f = (float)p_180453_2_.func_77952_i();
|
|
|
|
- float f1 = (float)p_180453_2_.func_77958_k();
|
|
|
|
- float f2 = Math.max(0.0F, (f1 - f) / f1);
|
|
|
|
- int i = Math.round(13.0F - f * 13.0F / f1);
|
|
|
|
- int j = MathHelper.func_181758_c(f2 / 3.0F, 1.0F, 1.0F);
|
|
|
|
+ double health = p_180453_2_.func_77973_b().getDurabilityForDisplay(p_180453_2_);
|
|
|
|
+ int i = Math.round(13.0F - (float)health * 13.0F);
|
|
|
|
+ int j = p_180453_2_.func_77973_b().getRGBDurabilityForDisplay(p_180453_2_);
|
|
|
|
this.func_181565_a(bufferbuilder, p_180453_3_ + 2, p_180453_4_ + 13, 13, 2, 0, 0, 0, 255);
|
|
|
|
this.func_181565_a(bufferbuilder, p_180453_3_ + 2, p_180453_4_ + 13, i, 1, j >> 16 & 255, j >> 8 & 255, j & 255, 255);
|
|
|
|
GlStateManager.func_179147_l();
|
2019-04-12 14:45:32 +00:00
|
|
|
@@ -382,4 +386,9 @@
|
2018-11-29 06:15:05 +00:00
|
|
|
public void func_195410_a(IResourceManager p_195410_1_) {
|
|
|
|
this.field_175059_m.func_178085_b();
|
|
|
|
}
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public net.minecraftforge.resource.IResourceType getResourceType() {
|
|
|
|
+ return net.minecraftforge.resource.VanillaResourceType.MODELS;
|
|
|
|
+ }
|
|
|
|
}
|