--- ../src-base/minecraft/net/minecraft/client/renderer/entity/RenderItem.java
+++ ../src-work/minecraft/net/minecraft/client/renderer/entity/RenderItem.java
@@ -302,6 +302,10 @@
                     modelresourcelocation = new ModelResourceLocation("bow_pulling_0", "inventory");
                 }
             }
+            else
+            {
+                modelresourcelocation = item.getModel(p_175049_1_, entityplayer, p_175049_1_.func_77988_m() - entityplayer.func_71052_bv());
+            }
 
             if (modelresourcelocation != null)
             {
@@ -485,10 +489,11 @@
                 GlStateManager.func_179126_j();
             }
 
-            if (p_180453_2_.func_77951_h())
+            if (p_180453_2_.func_77973_b().showDurabilityBar(p_180453_2_))
             {
-                int j1 = (int)Math.round(13.0D - (double)p_180453_2_.func_77952_i() * 13.0D / (double)p_180453_2_.func_77958_k());
-                int k = (int)Math.round(255.0D - (double)p_180453_2_.func_77952_i() * 255.0D / (double)p_180453_2_.func_77958_k());
+                double health = p_180453_2_.func_77973_b().getDurabilityForDisplay(p_180453_2_);
+                int j1 = (int)Math.round(13.0D - health * 13.0D);
+                int k = (int)Math.round(255.0D - health * 255.0D);
                 GlStateManager.func_179140_f();
                 GlStateManager.func_179097_i();
                 GlStateManager.func_179090_x();
@@ -501,7 +506,7 @@
                 this.func_175044_a(worldrenderer, p_180453_3_ + 2, p_180453_4_ + 13, 13, 2, 0);
                 this.func_175044_a(worldrenderer, p_180453_3_ + 2, p_180453_4_ + 13, 12, 1, i1);
                 this.func_175044_a(worldrenderer, p_180453_3_ + 2, p_180453_4_ + 13, j1, 1, l);
-                GlStateManager.func_179147_l();
+                //GlStateManager.enableBlend(); // Forge: Disable Bled because it screws with a lot of things down the line.
                 GlStateManager.func_179141_d();
                 GlStateManager.func_179098_w();
                 GlStateManager.func_179145_e();
@@ -1078,6 +1083,19 @@
     {
         this.field_175059_m.func_178085_b();
     }
+    /*==================================== 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)
 
