From 486c0955cfa6100ed13a5757177bff9a1a5642c9 Mon Sep 17 00:00:00 2001 From: johnjohn Date: Tue, 9 Jun 2015 12:42:45 -0600 Subject: [PATCH] Added ItemMap type check to item frames and ItemRenderer, enabling vanilla style rendering for custom maps --- .../client/renderer/ItemRenderer.java.patch | 11 +++++++++++ .../tileentity/RenderItemFrame.java.patch | 17 ++++++++++++++--- .../entity/item/EntityItemFrame.java.patch | 11 +++++++++++ 3 files changed, 36 insertions(+), 3 deletions(-) create mode 100644 patches/minecraft/net/minecraft/client/renderer/ItemRenderer.java.patch create mode 100644 patches/minecraft/net/minecraft/entity/item/EntityItemFrame.java.patch diff --git a/patches/minecraft/net/minecraft/client/renderer/ItemRenderer.java.patch b/patches/minecraft/net/minecraft/client/renderer/ItemRenderer.java.patch new file mode 100644 index 000000000..638b93230 --- /dev/null +++ b/patches/minecraft/net/minecraft/client/renderer/ItemRenderer.java.patch @@ -0,0 +1,11 @@ +--- ../src-base/minecraft/net/minecraft/client/renderer/ItemRenderer.java ++++ ../src-work/minecraft/net/minecraft/client/renderer/ItemRenderer.java +@@ -308,7 +308,7 @@ + + if (this.field_78453_b != null) + { +- if (this.field_78453_b.func_77973_b() == Items.field_151098_aY) ++ if (this.field_78453_b.func_77973_b() instanceof net.minecraft.item.ItemMap) + { + this.func_178097_a(entityplayersp, f3, f1, f2); + } diff --git a/patches/minecraft/net/minecraft/client/renderer/tileentity/RenderItemFrame.java.patch b/patches/minecraft/net/minecraft/client/renderer/tileentity/RenderItemFrame.java.patch index cba0de846..d0ec3a7d9 100644 --- a/patches/minecraft/net/minecraft/client/renderer/tileentity/RenderItemFrame.java.patch +++ b/patches/minecraft/net/minecraft/client/renderer/tileentity/RenderItemFrame.java.patch @@ -1,15 +1,26 @@ --- ../src-base/minecraft/net/minecraft/client/renderer/tileentity/RenderItemFrame.java +++ ../src-work/minecraft/net/minecraft/client/renderer/tileentity/RenderItemFrame.java -@@ -106,6 +106,9 @@ +@@ -99,15 +99,18 @@ + GlStateManager.func_179140_f(); + int i = p_82402_1_.func_82333_j(); + +- if (item == Items.field_151098_aY) ++ if (item instanceof net.minecraft.item.ItemMap) + { + i = i % 4 * 2; + } GlStateManager.func_179114_b((float)i * 360.0F / 8.0F, 0.0F, 0.0F, 1.0F); +- if (item == Items.field_151098_aY) + net.minecraftforge.client.event.RenderItemInFrameEvent event = new net.minecraftforge.client.event.RenderItemInFrameEvent(p_82402_1_, this); + if (!net.minecraftforge.common.MinecraftForge.EVENT_BUS.post(event)) -+ { - if (item == Items.field_151098_aY) { ++ if (item instanceof net.minecraft.item.ItemMap) ++ { this.field_76990_c.field_78724_e.func_110577_a(field_110789_a); + GlStateManager.func_179114_b(180.0F, 0.0F, 0.0F, 1.0F); + float f = 0.0078125F; @@ -165,6 +168,7 @@ textureatlassprite.func_94219_l(); } diff --git a/patches/minecraft/net/minecraft/entity/item/EntityItemFrame.java.patch b/patches/minecraft/net/minecraft/entity/item/EntityItemFrame.java.patch new file mode 100644 index 000000000..3ff9ebe83 --- /dev/null +++ b/patches/minecraft/net/minecraft/entity/item/EntityItemFrame.java.patch @@ -0,0 +1,11 @@ +--- ../src-base/minecraft/net/minecraft/entity/item/EntityItemFrame.java ++++ ../src-work/minecraft/net/minecraft/entity/item/EntityItemFrame.java +@@ -123,7 +123,7 @@ + { + if (p_110131_1_ != null) + { +- if (p_110131_1_.func_77973_b() == Items.field_151098_aY) ++ if (p_110131_1_.func_77973_b() instanceof net.minecraft.item.ItemMap) + { + MapData mapdata = ((ItemMap)p_110131_1_.func_77973_b()).func_77873_a(p_110131_1_, this.field_70170_p); + mapdata.field_76203_h.remove("frame-" + this.func_145782_y());