1234567891011121314151617181920212223242526272829303132333435363738 |
- package me.km.capabilities;
- import net.minecraft.entity.EntityLivingBase;
- import net.minecraft.item.ItemStack;
- import net.minecraft.util.DamageSource;
- public class DamageUtils
- {
- public static void init()
- {
- DamageSource.IN_FIRE.setMagicDamage();
- DamageSource.LIGHTNING_BOLT.setMagicDamage();
- DamageSource.ON_FIRE.setMagicDamage();
- DamageSource.HOT_FLOOR.setMagicDamage();
- DamageSource.WITHER.setMagicDamage();
- DamageSource.DRAGON_BREATH.setMagicDamage();
-
- // Special
- DamageSource.LAVA.setDamageBypassesArmor().setDamageIsAbsolute();
- DamageSource.IN_WALL.setDamageIsAbsolute();
- DamageSource.CRAMMING.setDamageIsAbsolute();
- DamageSource.DROWN.setDamageIsAbsolute();
- DamageSource.GENERIC.setDamageIsAbsolute();
- }
-
- public static int getMagicDefense(EntityLivingBase liv)
- {
- int level = 0;
- for(ItemStack stack : liv.getArmorInventoryList())
- {
- if(stack.hasCapability(DefenseProvider.DEFENSE_CAP, null))
- {
- level += stack.getCapability(DefenseProvider.DEFENSE_CAP, null).getMagicDefense();
- }
- }
- return level;
- }
- }
|