本文整理汇总了Java中net.minecraft.entity.EntityLivingBase.getArmorInventoryList方法的典型用法代码示例。如果您正苦于以下问题:Java EntityLivingBase.getArmorInventoryList方法的具体用法?Java EntityLivingBase.getArmorInventoryList怎么用?Java EntityLivingBase.getArmorInventoryList使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类net.minecraft.entity.EntityLivingBase
的用法示例。
在下文中一共展示了EntityLivingBase.getArmorInventoryList方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: damageArmor
import net.minecraft.entity.EntityLivingBase; //导入方法依赖的package包/类
private void damageArmor(ItemStack stack, int amount, EntityLivingBase entity)
{
int slot = -1;
int x = 0;
for (ItemStack i : entity.getArmorInventoryList())
{
if (i == stack){
slot = x;
break;
}
x++;
}
if (slot == -1 || !(stack.getItem() instanceof net.minecraftforge.common.ISpecialArmor))
{
stack.damageItem(1, entity);
return;
}
net.minecraftforge.common.ISpecialArmor armor = (net.minecraftforge.common.ISpecialArmor)stack.getItem();
armor.damageArmor(entity, stack, DamageSource.causeThornsDamage(entity), amount, slot);
}
示例2: hitEntity
import net.minecraft.entity.EntityLivingBase; //导入方法依赖的package包/类
@Override
public boolean hitEntity(ItemStack stack, EntityLivingBase target, EntityLivingBase attacker) {
super.hitEntity(stack, target, attacker);
for (ItemStack armor : target.getArmorInventoryList()) {
if (armor.isItemStackDamageable() && this.itemRand.nextFloat() < 0.3F) {
armor.damageItem((int) (this.getAttackDamage(stack) / 2) + 1, target);
}
}
return true;
}