--- ../src-base/common/net/minecraft/src/EntityVillager.java
+++ ../src-work/common/net/minecraft/src/EntityVillager.java
@@ -2,6 +2,8 @@
 
 import cpw.mods.fml.common.Side;
 import cpw.mods.fml.common.asm.SideOnly;
+import cpw.mods.fml.common.registry.VillagerRegistry;
+
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
@@ -175,7 +177,7 @@
             case 4:
                 return "/mob/villager/butcher.png";
             default:
-                return super.func_70073_O();
+                return VillagerRegistry.getVillagerSkin(this.func_70946_n(), super.func_70073_O());
         }
     }
 
@@ -400,6 +402,8 @@
         }
 
         Collections.shuffle(var2);
+
+        VillagerRegistry.manageVillagerTrades(var2, this, this.func_70946_n(), this.field_70146_Z);
 
         if (this.field_70963_i == null)
         {

--- ../src-base/common/net/minecraft/src/EntityVillager.java
+++ ../src-work/common/net/minecraft/src/EntityVillager.java
@@ -2,6 +2,8 @@
 
 import cpw.mods.fml.common.Side;
 import cpw.mods.fml.common.asm.SideOnly;
+import cpw.mods.fml.common.registry.VillagerRegistry;
+
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
@@ -175,7 +177,7 @@
             case 4:
                 return "/mob/villager/butcher.png";
             default:
-                return super.func_70073_O();
+                return VillagerRegistry.getVillagerSkin(this.func_70946_n(), super.func_70073_O());
         }
     }
 
@@ -393,6 +395,8 @@
                 func_70949_b(var2, Item.field_77782_ar.field_77779_bT, this.field_70146_Z, 0.3F);
                 func_70949_b(var2, Item.field_77734_bj.field_77779_bT, this.field_70146_Z, 0.3F);
         }
+
+        VillagerRegistry.manageVillagerTrades(var2, this, this.func_70946_n(), this.field_70146_Z);
 
         if (var2.isEmpty())
         {

Move villager trading hook up a bit. thanks sengir.
Move villager trading hook up a bit. thanks sengir.
