Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @EventHandler
- public void onEntityDamageByEntityEvent(EntityDamageByEntityEvent e) {
- // Nerf des potions de force 1 à 50%
- // Ancien coeff : Double coef1 = (0.50d*1.3d+1d)/(1.3d+1d);
- if (e.getDamager() instanceof Player) {
- Player p = (Player) e.getDamager();
- if (p.hasPotionEffect(PotionEffectType.INCREASE_DAMAGE)) {
- for (PotionEffect ef : p.getActivePotionEffects()) {
- if (ef.getType().equals(PotionEffectType.INCREASE_DAMAGE)) {
- int level = ef.getAmplifier() + 1;
- double newDamage = e.getDamage(EntityDamageEvent.DamageModifier.BASE) / (level * 1.3D + 1.0D) + 4 * level;
- double damagePercent = newDamage / e.getDamage(EntityDamageEvent.DamageModifier.BASE);
- try {
- e.setDamage(EntityDamageEvent.DamageModifier.ARMOR, e.getDamage(EntityDamageEvent.DamageModifier.ARMOR) * damagePercent);
- } catch (Exception localException) {
- }
- try {
- e.setDamage(EntityDamageEvent.DamageModifier.MAGIC, e.getDamage(EntityDamageEvent.DamageModifier.MAGIC) * damagePercent);
- } catch (Exception localException1) {
- }
- try {
- e.setDamage(EntityDamageEvent.DamageModifier.RESISTANCE, e.getDamage(EntityDamageEvent.DamageModifier.RESISTANCE) * damagePercent);
- } catch (Exception localException2) {
- }
- try {
- e.setDamage(EntityDamageEvent.DamageModifier.BLOCKING, e.getDamage(EntityDamageEvent.DamageModifier.BLOCKING) * damagePercent);
- } catch (Exception localException3) {
- }
- e.setDamage(EntityDamageEvent.DamageModifier.BASE, newDamage);
- break;
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement