Advertisement
Guest User

Untitled

a guest
Aug 5th, 2015
174
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.97 KB | None | 0 0
  1. package com.hotmail.veteab.modTest.common;
  2.  
  3. import cpw.mods.fml.common.eventhandler.SubscribeEvent;
  4. import net.minecraft.entity.monster.EntityCreeper;
  5. import net.minecraft.item.ItemStack;
  6. import net.minecraft.util.MathHelper;
  7. import net.minecraftforge.event.entity.living.LivingFallEvent;
  8. import net.minecraftforge.event.entity.living.LivingHurtEvent;
  9.  
  10. public class LivingEventHandler
  11. {
  12. @SubscribeEvent
  13. public void onLivingHurt(LivingHurtEvent event)
  14. {
  15. ItemStack boots = event.entityLiving.getEquipmentInSlot(1);
  16. ItemStack leggings = event.entityLiving.getEquipmentInSlot(2);
  17. ItemStack chestplate = event.entityLiving.getEquipmentInSlot(3);
  18. ItemStack helmet = event.entityLiving.getEquipmentInSlot(4);
  19.  
  20. if(boots != null && boots.getItem() == ModTest.bootsTest && leggings != null && leggings.getItem() == ModTest.leggingsTest && chestplate != null && chestplate.getItem() == ModTest.chestplateTest && helmet != null && helmet.getItem() == ModTest.helmetTest)
  21. {
  22. if(event.source.getEntity() != null && event.source.getEntity() instanceof EntityCreeper)
  23. {
  24. boots.damageItem(MathHelper.floor_float(event.ammount), event.entityLiving);
  25. leggings.damageItem(MathHelper.floor_float(event.ammount), event.entityLiving);
  26. chestplate.damageItem(MathHelper.floor_float(event.ammount), event.entityLiving);
  27. helmet.damageItem(MathHelper.floor_float(event.ammount), event.entityLiving);
  28. event.ammount = 0F;
  29. if(boots.stackSize == 0)
  30. {
  31. event.entityLiving.setCurrentItemOrArmor(1, null);
  32. }
  33. else if(leggings.stackSize == 0)
  34. {
  35. event.entityLiving.setCurrentItemOrArmor(2, null);
  36. }
  37. else if(chestplate.stackSize == 0)
  38. {
  39. event.entityLiving.setCurrentItemOrArmor(3, null);
  40. }
  41. else if(helmet.stackSize == 0)
  42. {
  43. event.entityLiving.setCurrentItemOrArmor(4, null);
  44. }
  45. }
  46. else if(event.source.getDamageType().equals("cactus"))
  47. {
  48. event.entityLiving.worldObj.newExplosion(event.entityLiving, event.entityLiving.posX, event.entityLiving.posY, event.entityLiving.posZ, event.ammount, true, true);
  49. }
  50. }
  51. }
  52.  
  53. @SubscribeEvent
  54. public void onLivingFall(LivingFallEvent event)
  55. {
  56. ItemStack boots = event.entityLiving.getEquipmentInSlot(1);
  57. if(boots != null && boots.getItem() == ModTest.bootsTest)
  58. {
  59. boots.damageItem(MathHelper.floor_float(event.distance), event.entityLiving);
  60. event.distance = 0F;
  61. if(boots.stackSize == 0)
  62. {
  63. event.entityLiving.setCurrentItemOrArmor(1, null);
  64. }
  65. }
  66. }
  67.  
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement