本次我们准备为一个防具加上buff
1.对 ArmorBase.java (第8讲中创建)添加buff函数effectPlayer 和 防具点击事件onArmorTick
@SideOnly(Side.CLIENT)
@Override
public void onArmorTick(World world, EntityPlayer player, ItemStack itemStack){
//itemStack.getItem() == ModItems.EIGHT_GLASSES &&
if(player.inventory.armorItemInSlot(3).getItem() == ModItems.EIGHT_GLASSES &&
player.inventory.armorItemInSlot(3)!=null) {
effectPlayer(player, MobEffects.SPEED, 3); //增加速度效果,级别为4
effectPlayer(player, MobEffects.NIGHT_VISION, 1); //增加夜视效果,级别为2
}
super.onArmorTick(world, player, itemStack);
}
private void effectPlayer(EntityPlayer player, Potion effect, int amplifier) {
if(player.getActivePotionEffect(effect)==null || play