public void onEntityDamaged(EntityLivingBase user, Entity target, int level) {
if (target instanceof EntityLivingBase) {
EntityLivingBase entitylivingbase = (EntityLivingBase)target;
entitylivingbase.attackEntityFrom(DamageInit.VOID, 100.0f);
}
}
@SubscribeEvent
public void entityAttack(LivingAttackEvent e) {
if(e.getEntityLiving() != null && EnchantHelper.hasVoidDamegeEnchantment((EntityPlayer) e.getEntity())) {
e.getEntityLiving().attackEntityFrom(DamageInit.VOID, 10.0f);
}
public class EnchantHelper {
public static boolean hasVoidDamegeEnchantment(EntityPlayer player) {
return EnchantmentHelper.getEnchantmentLevel(EnchantmentsInit.VOID_DAMAGE, player.getHeldItemMainhand()) > 0;
}
}
public class EnchantmentVoidDamage extends Enchantment {
public EnchantmentVoidDamage(String name, Rarity rarity, EnumEnchantmentType type, EntityEquipmentSlot... slots) {
super(rarity, type, slots);
setEnchantmentName(name);
EnchantmentsInit.ENCHANTMENTS.add(this);
}
private void setEnchantmentName(String name) {
this.setRegistryName(Main.MODID, name);
this.setName(name);
}
@Override
public int getMaxLevel() {
return 1;
}
@Override
public boolean canApplyTogether(Enchantment enchantment) {
return super.canApplyTogether(enchantment) && enchantment != Enchantments.FIRE_ASPECT;//Несовместимости
}
@Override
public int getMinEnchantability(int enchantmentLevel) {
return 10;
}
@Override
public int getMaxEnchantability(int enchantmentLevel) {
return 20;
}
}
public void onEntityDamaged(EntityLivingBase user, Entity target, int level) {
if (target instanceof EntityLivingBase) {
EntityLivingBase entitylivingbase = (EntityLivingBase)target;
entitylivingbase.attackEntityFrom(DamageInit.VOID, 100.0f);
}
}