Advertisement
Guest User

Untitled

a guest
May 26th, 2019
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.09 KB | None | 0 0
  1. @EventHandler
  2. public void onEntityDamageByEntityEvent(EntityDamageByEntityEvent e) {
  3. // Nerf des potions de force 1 à 50%
  4. // Ancien coeff : Double coef1 = (0.50d*1.3d+1d)/(1.3d+1d);
  5. if (e.getDamager() instanceof Player) {
  6. Player p = (Player) e.getDamager();
  7. if (p.hasPotionEffect(PotionEffectType.INCREASE_DAMAGE)) {
  8. for (PotionEffect ef : p.getActivePotionEffects()) {
  9. if (ef.getType().equals(PotionEffectType.INCREASE_DAMAGE)) {
  10.  
  11. int level = ef.getAmplifier() + 1;
  12.  
  13. double newDamage = e.getDamage(EntityDamageEvent.DamageModifier.BASE) / (level * 1.3D + 1.0D) + 4 * level;
  14. double damagePercent = newDamage / e.getDamage(EntityDamageEvent.DamageModifier.BASE);
  15.  
  16. try {
  17. e.setDamage(EntityDamageEvent.DamageModifier.ARMOR, e.getDamage(EntityDamageEvent.DamageModifier.ARMOR) * damagePercent);
  18. } catch (Exception localException) {
  19.  
  20. }
  21. try {
  22. e.setDamage(EntityDamageEvent.DamageModifier.MAGIC, e.getDamage(EntityDamageEvent.DamageModifier.MAGIC) * damagePercent);
  23. } catch (Exception localException1) {
  24.  
  25. }
  26. try {
  27. e.setDamage(EntityDamageEvent.DamageModifier.RESISTANCE, e.getDamage(EntityDamageEvent.DamageModifier.RESISTANCE) * damagePercent);
  28. } catch (Exception localException2) {
  29.  
  30. }
  31. try {
  32. e.setDamage(EntityDamageEvent.DamageModifier.BLOCKING, e.getDamage(EntityDamageEvent.DamageModifier.BLOCKING) * damagePercent);
  33. } catch (Exception localException3) {
  34.  
  35. }
  36.  
  37. e.setDamage(EntityDamageEvent.DamageModifier.BASE, newDamage);
  38. break;
  39. }
  40. }
  41. }
  42. }
  43. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement