diff options
| author | OnyxDarkKnight <sor1n.iliutza16@gmail.com> | 2013-12-14 11:10:02 +0200 |
|---|---|---|
| committer | OnyxDarkKnight <sor1n.iliutza16@gmail.com> | 2013-12-14 11:10:02 +0200 |
| commit | ea5397ae56706b9dfc18ed9f4febbc0a6722549f (patch) | |
| tree | 72c76c85e963e281f6cae0a8da320cacc6bf6e3b | |
| parent | 8ddd830130fa6df22d902bcf1d8b0a1fab55c8f1 (diff) | |
made the thieving Gloves work! :D
| -rw-r--r-- | common/bspkrs/briefcasespeakers/item/ItemThiefGloves.java | 30 |
1 files changed, 27 insertions, 3 deletions
diff --git a/common/bspkrs/briefcasespeakers/item/ItemThiefGloves.java b/common/bspkrs/briefcasespeakers/item/ItemThiefGloves.java index 10e54d2..49c61f0 100644 --- a/common/bspkrs/briefcasespeakers/item/ItemThiefGloves.java +++ b/common/bspkrs/briefcasespeakers/item/ItemThiefGloves.java @@ -1,14 +1,23 @@ package bspkrs.briefcasespeakers.item; +import java.util.Iterator; +import java.util.Random; + +import cpw.mods.fml.common.registry.VillagerRegistry; +import cpw.mods.fml.relauncher.ReflectionHelper; + import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.passive.EntityVillager; import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.village.MerchantRecipe; +import net.minecraft.village.MerchantRecipeList; public class ItemThiefGloves extends ItemBase { + public Random rand; public ItemThiefGloves(int par1) { super(par1); @@ -20,9 +29,24 @@ public class ItemThiefGloves extends ItemBase { if (par3EntityLivingBase instanceof EntityVillager) { - EntityVillager entityliving = (EntityVillager) par3EntityLivingBase; - MerchantRecipe recipe = null; - entityliving.dropItem(recipe.getItemToSell().itemID, recipe.getItemToSell().stackSize); + EntityVillager villager = (EntityVillager) par3EntityLivingBase; + int wealth = (Integer) ReflectionHelper.getPrivateValue(EntityVillager.class, villager, "wealth", "field_70956_bz"); + MerchantRecipeList buyingList = (MerchantRecipeList) ReflectionHelper.getPrivateValue(EntityVillager.class, villager, "buyingList", "field_70963_i"); + if(buyingList!=null) + { + Iterator iterator = buyingList.iterator(); + while(iterator.hasNext()) + { + MerchantRecipe recipe = (MerchantRecipe)iterator.next(); + while(!recipe.func_82784_g()) + { + villager.dropItem(recipe.getItemToSell().itemID, recipe.getItemToSell().stackSize); + villager.dropItem(Item.emerald.itemID, wealth); + ReflectionHelper.setPrivateValue(EntityVillager.class, villager, 0, wealth); + recipe.incrementToolUses(); + } + } + } return true; } else |
