diff options
Diffstat (limited to 'src/map/clif.c')
-rw-r--r-- | src/map/clif.c | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/src/map/clif.c b/src/map/clif.c index ffa3acd9d..088d841ae 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -8704,7 +8704,15 @@ void clif_parse_UseSkillToId(int fd, struct map_session_data *sd) { if (sd->skilltimer != -1) { if (skillnum != SA_CASTCANCEL) return; - } else if (DIFF_TICK(tick, sd->canact_tick) < 0) { + } else if (DIFF_TICK(tick, sd->canact_tick) < 0 && + // allow monk combos to ignore this delay [celest] + !(sd->sc_count && sd->sc_data[SC_COMBO].timer!=-1 && + (skillnum == MO_EXTREMITYFIST || + skillnum == MO_CHAINCOMBO || + skillnum == MO_COMBOFINISH || + skillnum == CH_PALMSTRIKE || + skillnum == CH_TIGERFIST || + skillnum == CH_CHAINCRUSH))) { clif_skill_fail(sd, skillnum, 4, 0); return; } @@ -8846,7 +8854,15 @@ void clif_parse_UseSkillToPos(int fd, struct map_session_data *sd) { if (sd->skilltimer != -1) return; - else if (DIFF_TICK(tick, sd->canact_tick) < 0) { + else if (DIFF_TICK(tick, sd->canact_tick) < 0 && + // allow monk combos to ignore this delay [celest] + !(sd->sc_count && sd->sc_data[SC_COMBO].timer!=-1 && + (skillnum == MO_EXTREMITYFIST || + skillnum == MO_CHAINCOMBO || + skillnum == MO_COMBOFINISH || + skillnum == CH_PALMSTRIKE || + skillnum == CH_TIGERFIST || + skillnum == CH_CHAINCRUSH))) { clif_skill_fail(sd, skillnum, 4, 0); return; } |