diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/map/skill.c | 2 | ||||
-rw-r--r-- | src/map/status.c | 10 |
2 files changed, 5 insertions, 7 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index 62721eea9..c625ab80f 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -7209,7 +7209,7 @@ int skill_unit_onplace_timer (struct skill_unit *src, struct block_list *bl, uns case UNT_ANKLESNARE: if(sg->val2==0 && tsc){ int sec = skill_get_time2(sg->skill_id,sg->skill_lv); - if (sc_start2(bl,type,100,sg->skill_lv,sg->group_id,sec)) + if (status_change_start(bl,type,100,sg->skill_lv,sg->group_id,0,0,sec, 8)) { struct TimerData* td = get_timer(tsc->data[type].timer); if (td) sec = DIFF_TICK(td->tick, tick); diff --git a/src/map/status.c b/src/map/status.c index bc7b5130c..076b8c573 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -4442,6 +4442,10 @@ int status_get_sc_def(struct block_list *bl, int type) case SC_CONFUSION: sc_def = 300 +50*status->str +50*status->int_; break; + case SC_ANKLE: + sc_def = 100*status->agi; + break; + default: return 0; //Effect that cannot be reduced? Likely a buff. } @@ -5723,12 +5727,6 @@ int status_change_start(struct block_list *bl,int type,int rate,int val1,int val tick /= 5; //TODO: Reduce skill's duration. But for how long? break; case SC_ANKLE: - if (sd && battle_config.pc_sc_def_rate != 100) - tick -= tick*status->agi*battle_config.pc_sc_def_rate/10000; - else if (battle_config.mob_sc_def_rate != 100) - tick -= tick*status->agi*battle_config.mob_sc_def_rate/10000; - else - tick -= tick*status->agi/100; if(status->mode&MD_BOSS) // Lasts 5 times less on bosses tick /= 5; // Minimum trap time of 3+0.03*skilllv seconds [celest] |