diff --git a/dist/game/data/scripts/handlers/effecthandlers/Backstab.java b/dist/game/data/scripts/handlers/effecthandlers/Backstab.java index 8fac52466d1728a20679fa560818abd19c0005b3..110210b10af06de42b250bcc5cac4def254b58a8 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/Backstab.java +++ b/dist/game/data/scripts/handlers/effecthandlers/Backstab.java @@ -80,7 +80,7 @@ public final class Backstab extends AbstractEffect } target.reduceCurrentHp(damage, activeChar, skill); - target.notifyDamageReceived(damage, activeChar, skill, true, false); + target.notifyDamageReceived(damage, activeChar, skill, true, false, false); // Manage attack or cast break of the target (calculating rate, sending message...) if (!target.isRaid() && Formulas.calcAtkBreak(target, damage)) diff --git a/dist/game/data/scripts/handlers/effecthandlers/DamOverTime.java b/dist/game/data/scripts/handlers/effecthandlers/DamOverTime.java index e8b968c104e75d94f151cc87fec95ce7dfd28d92..b0ae58d3ee000f0febbb2049f8c7d9d6b0fe3e4f 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/DamOverTime.java +++ b/dist/game/data/scripts/handlers/effecthandlers/DamOverTime.java @@ -77,7 +77,7 @@ public final class DamOverTime extends AbstractEffect } info.getEffected().reduceCurrentHpByDOT(damage, info.getEffector(), info.getSkill()); - info.getEffected().notifyDamageReceived(damage, info.getEffector(), info.getSkill(), false, true); + info.getEffected().notifyDamageReceived(damage, info.getEffector(), info.getSkill(), false, true, false); return info.getSkill().isToggle(); } } diff --git a/dist/game/data/scripts/handlers/effecthandlers/DamOverTimePercent.java b/dist/game/data/scripts/handlers/effecthandlers/DamOverTimePercent.java index 51ab82cb3560101f235dd125bc303d39ad8d88bf..60e1997f7afb06212987dd4addaadc08621d75b9 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/DamOverTimePercent.java +++ b/dist/game/data/scripts/handlers/effecthandlers/DamOverTimePercent.java @@ -78,7 +78,7 @@ public final class DamOverTimePercent extends AbstractEffect } } info.getEffected().reduceCurrentHpByDOT(damage, info.getEffector(), info.getSkill()); - info.getEffected().notifyDamageReceived(damage, info.getEffector(), info.getSkill(), false, true); + info.getEffected().notifyDamageReceived(damage, info.getEffector(), info.getSkill(), false, true, false); return info.getSkill().isToggle(); } diff --git a/dist/game/data/scripts/handlers/effecthandlers/DeathLink.java b/dist/game/data/scripts/handlers/effecthandlers/DeathLink.java index 9ef4aca2eb2e64f6b84bcf5a2018d4743c8a048f..95322cb41ecdcf0f408d38bf0c5f916927f65978 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/DeathLink.java +++ b/dist/game/data/scripts/handlers/effecthandlers/DeathLink.java @@ -88,12 +88,12 @@ public final class DeathLink extends AbstractEffect if (target.getStat().calcStat(Stats.VENGEANCE_SKILL_MAGIC_DAMAGE, 0, target, info.getSkill()) > Rnd.get(100)) { activeChar.reduceCurrentHp(damage, target, info.getSkill()); - activeChar.notifyDamageReceived(damage, target, info.getSkill(), mcrit, false); + activeChar.notifyDamageReceived(damage, target, info.getSkill(), mcrit, false, true); } else { target.reduceCurrentHp(damage, activeChar, info.getSkill()); - target.notifyDamageReceived(damage, activeChar, info.getSkill(), mcrit, false); + target.notifyDamageReceived(damage, activeChar, info.getSkill(), mcrit, false, false); activeChar.sendDamageMessage(target, damage, mcrit, false, false); } } diff --git a/dist/game/data/scripts/handlers/effecthandlers/EnergyAttack.java b/dist/game/data/scripts/handlers/effecthandlers/EnergyAttack.java index c64a5d2f4be55bc4286dce006023531c6804ecf1..e991c70f2d041ac048bdf17d6f95aa5351ab47ce 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/EnergyAttack.java +++ b/dist/game/data/scripts/handlers/effecthandlers/EnergyAttack.java @@ -159,7 +159,7 @@ public final class EnergyAttack extends AbstractEffect { attacker.sendDamageMessage(target, (int) damage, false, critical, false); target.reduceCurrentHp(damage, attacker, skill); - target.notifyDamageReceived(damage, attacker, skill, critical, false); + target.notifyDamageReceived(damage, attacker, skill, critical, false, false); // Check if damage should be reflected Formulas.calcDamageReflected(attacker, target, skill, critical); diff --git a/dist/game/data/scripts/handlers/effecthandlers/FatalBlow.java b/dist/game/data/scripts/handlers/effecthandlers/FatalBlow.java index 17e337595707713dd7e492aa4bb786a7f300037d..793f6986fb2c8fd6f92e63ee8260fee75126dc33 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/FatalBlow.java +++ b/dist/game/data/scripts/handlers/effecthandlers/FatalBlow.java @@ -81,7 +81,7 @@ public final class FatalBlow extends AbstractEffect } target.reduceCurrentHp(damage, activeChar, skill); - target.notifyDamageReceived(damage, activeChar, skill, crit, false); + target.notifyDamageReceived(damage, activeChar, skill, crit, false, false); // Manage attack or cast break of the target (calculating rate, sending message...) if (!target.isRaid() && Formulas.calcAtkBreak(target, damage)) diff --git a/dist/game/data/scripts/handlers/effecthandlers/HpDrain.java b/dist/game/data/scripts/handlers/effecthandlers/HpDrain.java index 7e270565b5b66fe3c1f5eeda5ae601507f66e0f8..c63fccdf2ffaf0f38c651c833f3948b1cf6c7b70 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/HpDrain.java +++ b/dist/game/data/scripts/handlers/effecthandlers/HpDrain.java @@ -103,7 +103,7 @@ public final class HpDrain extends AbstractEffect } activeChar.sendDamageMessage(target, damage, mcrit, false, false); target.reduceCurrentHp(damage, activeChar, info.getSkill()); - target.notifyDamageReceived(damage, activeChar, info.getSkill(), mcrit, false); + target.notifyDamageReceived(damage, activeChar, info.getSkill(), mcrit, false, false); } } } \ No newline at end of file diff --git a/dist/game/data/scripts/handlers/effecthandlers/Lethal.java b/dist/game/data/scripts/handlers/effecthandlers/Lethal.java index 78ee6b62bb2c8fa060c6a5dfe1dbfa1a24846210..af930e0b7d6bcbaa05267e0ed8ebf10f1447719a 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/Lethal.java +++ b/dist/game/data/scripts/handlers/effecthandlers/Lethal.java @@ -79,7 +79,7 @@ public final class Lethal extends AbstractEffect // for Players CP and HP is set to 1. if (target.isPlayer()) { - target.notifyDamageReceived(target.getCurrentHp() - 1, activeChar, skill, true, false); + target.notifyDamageReceived(target.getCurrentHp() - 1, activeChar, skill, true, false, false); target.setCurrentCp(1); target.setCurrentHp(1); target.sendPacket(SystemMessageId.LETHAL_STRIKE); @@ -87,7 +87,7 @@ public final class Lethal extends AbstractEffect // for Monsters HP is set to 1. else if (target.isMonster() || target.isSummon()) { - target.notifyDamageReceived(target.getCurrentHp() - 1, activeChar, skill, true, false); + target.notifyDamageReceived(target.getCurrentHp() - 1, activeChar, skill, true, false, false); target.setCurrentHp(1); } activeChar.sendPacket(SystemMessageId.LETHAL_STRIKE_SUCCESSFUL); @@ -105,7 +105,7 @@ public final class Lethal extends AbstractEffect // for Monsters HP is set to 50%. else if (target.isMonster() || target.isSummon()) { - target.notifyDamageReceived(target.getCurrentHp() * 0.5, activeChar, skill, true, false); + target.notifyDamageReceived(target.getCurrentHp() * 0.5, activeChar, skill, true, false, false); target.setCurrentHp(target.getCurrentHp() * 0.5); } activeChar.sendPacket(SystemMessageId.HALF_KILL); diff --git a/dist/game/data/scripts/handlers/effecthandlers/MagicalAttack.java b/dist/game/data/scripts/handlers/effecthandlers/MagicalAttack.java index 6eeb60ce2afee3f57476460826d51d838c863210..140a7a58e61267f58f85447e7f84df10aee65355 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/MagicalAttack.java +++ b/dist/game/data/scripts/handlers/effecthandlers/MagicalAttack.java @@ -88,12 +88,12 @@ public final class MagicalAttack extends AbstractEffect if (target.getStat().calcStat(Stats.VENGEANCE_SKILL_MAGIC_DAMAGE, 0, target, info.getSkill()) > Rnd.get(100)) { activeChar.reduceCurrentHp(damage, target, info.getSkill()); - activeChar.notifyDamageReceived(damage, target, info.getSkill(), mcrit, false); + activeChar.notifyDamageReceived(damage, target, info.getSkill(), mcrit, false, true); } else { target.reduceCurrentHp(damage, activeChar, info.getSkill()); - target.notifyDamageReceived(damage, activeChar, info.getSkill(), mcrit, false); + target.notifyDamageReceived(damage, activeChar, info.getSkill(), mcrit, false, false); activeChar.sendDamageMessage(target, damage, mcrit, false, false); } } diff --git a/dist/game/data/scripts/handlers/effecthandlers/MagicalAttackByAbnormal.java b/dist/game/data/scripts/handlers/effecthandlers/MagicalAttackByAbnormal.java index 342a8c3b3bc070da8841ef2fe814900cdb1470ac..391cd35fc4ffb1087f352c6c48e25d4cad08d568 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/MagicalAttackByAbnormal.java +++ b/dist/game/data/scripts/handlers/effecthandlers/MagicalAttackByAbnormal.java @@ -90,12 +90,12 @@ public final class MagicalAttackByAbnormal extends AbstractEffect if (target.getStat().calcStat(Stats.VENGEANCE_SKILL_MAGIC_DAMAGE, 0, target, info.getSkill()) > Rnd.get(100)) { activeChar.reduceCurrentHp(damage, target, info.getSkill()); - activeChar.notifyDamageReceived(damage, target, info.getSkill(), mcrit, false); + activeChar.notifyDamageReceived(damage, target, info.getSkill(), mcrit, false, true); } else { target.reduceCurrentHp(damage, activeChar, info.getSkill()); - target.notifyDamageReceived(damage, activeChar, info.getSkill(), mcrit, false); + target.notifyDamageReceived(damage, activeChar, info.getSkill(), mcrit, false, false); activeChar.sendDamageMessage(target, damage, mcrit, false, false); } } diff --git a/dist/game/data/scripts/handlers/effecthandlers/MagicalSoulAttack.java b/dist/game/data/scripts/handlers/effecthandlers/MagicalSoulAttack.java index 2ed7719c0a9017b954177a5aae2e5c48fdebcded..51a236f28362602952ec80b005d59a4afbc6d334 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/MagicalSoulAttack.java +++ b/dist/game/data/scripts/handlers/effecthandlers/MagicalSoulAttack.java @@ -93,12 +93,12 @@ public final class MagicalSoulAttack extends AbstractEffect if (target.getStat().calcStat(Stats.VENGEANCE_SKILL_MAGIC_DAMAGE, 0, target, info.getSkill()) > Rnd.get(100)) { activeChar.reduceCurrentHp(damage, target, info.getSkill()); - activeChar.notifyDamageReceived(damage, target, info.getSkill(), mcrit, false); + activeChar.notifyDamageReceived(damage, target, info.getSkill(), mcrit, false, true); } else { target.reduceCurrentHp(damage, activeChar, info.getSkill()); - target.notifyDamageReceived(damage, activeChar, info.getSkill(), mcrit, false); + target.notifyDamageReceived(damage, activeChar, info.getSkill(), mcrit, false, false); activeChar.sendDamageMessage(target, damage, mcrit, false, false); } } diff --git a/dist/game/data/scripts/handlers/effecthandlers/PhysicalAttack.java b/dist/game/data/scripts/handlers/effecthandlers/PhysicalAttack.java index 122f6ad2d644f65dff5d9f3b85cc7aea2d16ed5c..6e9f90ab417d19f4409c0af88d4bef6bb3377c6c 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/PhysicalAttack.java +++ b/dist/game/data/scripts/handlers/effecthandlers/PhysicalAttack.java @@ -105,7 +105,7 @@ public final class PhysicalAttack extends AbstractEffect { activeChar.sendDamageMessage(target, damage, false, crit, false); target.reduceCurrentHp(damage, activeChar, skill); - target.notifyDamageReceived(damage, activeChar, skill, crit, false); + target.notifyDamageReceived(damage, activeChar, skill, crit, false, false); // Check if damage should be reflected Formulas.calcDamageReflected(activeChar, target, skill, crit); diff --git a/dist/game/data/scripts/handlers/effecthandlers/PhysicalAttackHpLink.java b/dist/game/data/scripts/handlers/effecthandlers/PhysicalAttackHpLink.java index 3968ecf5b5b63b65607225732cef72e04218501b..a71b9b2d0bb306a2c65060954e4a3c416c5605d8 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/PhysicalAttackHpLink.java +++ b/dist/game/data/scripts/handlers/effecthandlers/PhysicalAttackHpLink.java @@ -95,7 +95,7 @@ public final class PhysicalAttackHpLink extends AbstractEffect { activeChar.sendDamageMessage(target, damage, false, crit, false); target.reduceCurrentHp(damage, activeChar, skill); - target.notifyDamageReceived(damage, activeChar, skill, crit, false); + target.notifyDamageReceived(damage, activeChar, skill, crit, false, false); // Check if damage should be reflected. Formulas.calcDamageReflected(activeChar, target, skill, crit); diff --git a/dist/game/data/scripts/handlers/effecthandlers/PhysicalSoulAttack.java b/dist/game/data/scripts/handlers/effecthandlers/PhysicalSoulAttack.java index 15893cdb8f67b0f4b40591894ec691a70bd1f5d2..7354885e1682332ca1c390cfc3270dadf767294f 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/PhysicalSoulAttack.java +++ b/dist/game/data/scripts/handlers/effecthandlers/PhysicalSoulAttack.java @@ -110,7 +110,7 @@ public final class PhysicalSoulAttack extends AbstractEffect { activeChar.sendDamageMessage(target, damage, false, crit, false); target.reduceCurrentHp(damage, activeChar, skill); - target.notifyDamageReceived(damage, activeChar, skill, crit, false); + target.notifyDamageReceived(damage, activeChar, skill, crit, false, false); // Check if damage should be reflected Formulas.calcDamageReflected(activeChar, target, skill, crit); diff --git a/dist/game/data/scripts/handlers/effecthandlers/SoulBlow.java b/dist/game/data/scripts/handlers/effecthandlers/SoulBlow.java index 8027e323fc7f48f125663ba21ee979f25e0632fd..c46e96f18c546d1503be33630afbe65baf63040c 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/SoulBlow.java +++ b/dist/game/data/scripts/handlers/effecthandlers/SoulBlow.java @@ -81,7 +81,7 @@ public final class SoulBlow extends AbstractEffect } target.reduceCurrentHp(damage, activeChar, info.getSkill()); - target.notifyDamageReceived(damage, activeChar, info.getSkill(), false, false); + target.notifyDamageReceived(damage, activeChar, info.getSkill(), false, false, false); // Manage attack or cast break of the target (calculating rate, sending message...) if (!target.isRaid() && Formulas.calcAtkBreak(target, damage)) diff --git a/dist/game/data/scripts/handlers/effecthandlers/StaticDamage.java b/dist/game/data/scripts/handlers/effecthandlers/StaticDamage.java index bb8ae41bb92e5d6c452fd4faa4b6fa7639991b30..3e5e12c75b9084d6ecb642a2f0f538b6d9c8846f 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/StaticDamage.java +++ b/dist/game/data/scripts/handlers/effecthandlers/StaticDamage.java @@ -53,7 +53,7 @@ public final class StaticDamage extends AbstractEffect } info.getEffected().reduceCurrentHp(_power, info.getEffector(), info.getSkill()); - info.getEffected().notifyDamageReceived(_power, info.getEffector(), info.getSkill(), false, false); + info.getEffected().notifyDamageReceived(_power, info.getEffector(), info.getSkill(), false, false, false); if (info.getEffector().isPlayer()) { diff --git a/dist/game/data/scripts/handlers/effecthandlers/TriggerSkillByAttack.java b/dist/game/data/scripts/handlers/effecthandlers/TriggerSkillByAttack.java index 9cc11ee5d3383a998ce5be94290dd5d430224429..2d4e335ef0de109ee2a77d3decf28406cacfb8d1 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/TriggerSkillByAttack.java +++ b/dist/game/data/scripts/handlers/effecthandlers/TriggerSkillByAttack.java @@ -88,7 +88,7 @@ public final class TriggerSkillByAttack extends AbstractEffect public void onAttackEvent(OnCreatureDamageDealt event) { - if ((event.getSkill() != null) || event.isDamageOverTime() || (_chance == 0) || ((_skill.getSkillId() == 0) || (_skill.getSkillLvl() == 0))) + if ((event.getSkill() != null) || event.isDamageOverTime() || event.isReflect() || (_chance == 0) || ((_skill.getSkillId() == 0) || (_skill.getSkillLvl() == 0))) { return; }