diff options
author | Jesusaves <cpntb1@ymail.com> | 2020-04-30 10:29:27 -0300 |
---|---|---|
committer | Jesusaves <cpntb1@ymail.com> | 2020-04-30 10:29:27 -0300 |
commit | 37af2a0bf7ff2a9535bf54696e1f91a4dd1eecd5 (patch) | |
tree | b9d2a4249785d81f5e37055f7250f70009d002a6 | |
parent | c06ceaf8651cac1fb41c46b5a9f9b734ca45d12a (diff) | |
download | evol-hercules-37af2a0bf7ff2a9535bf54696e1f91a4dd1eecd5.tar.gz evol-hercules-37af2a0bf7ff2a9535bf54696e1f91a4dd1eecd5.tar.bz2 evol-hercules-37af2a0bf7ff2a9535bf54696e1f91a4dd1eecd5.tar.xz evol-hercules-37af2a0bf7ff2a9535bf54696e1f91a4dd1eecd5.zip |
Patch Level B: Revert part of defense calculations when critically hit
Incides mostly over DEF2. Do note the 40 attack bonus was kept!!
-rw-r--r-- | src/emap/battle.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/emap/battle.c b/src/emap/battle.c index 5a24927..d574919 100644 --- a/src/emap/battle.c +++ b/src/emap/battle.c @@ -91,9 +91,17 @@ struct Damage ebattle_calc_weapon_attack_post(struct Damage retVal, struct block_list *src, struct block_list *target, uint16 skill_id, - uint16 skill_lv __attribute__ ((unused)), + uint16 skill_lv, int wflag __attribute__ ((unused))) { + // ML: Crits ignore defense (estimate) + // (regardless of source or target) + if (retVal.type == BDT_CRIT) { + int pnerf; + pnerf=battle->calc_defense(BF_WEAPON, src, target, skill_id, skill_lv, retVal.damage, 0, 0); + retVal.damage+=retVal.damage-pnerf; + } + if (src == NULL) return retVal; |