Fixed skill delay paw print icons showing for far too long.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13624 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
Sara 2009-03-25 06:23:14 +00:00
parent e12ce87444
commit 71e1662e67
2 changed files with 14 additions and 4 deletions

View File

@ -950,8 +950,11 @@ int skill_additional_effect (struct block_list* src, struct block_list *bl, int
ud = unit_bl2ud(src);
if (ud) {
rate = skill_delayfix(src, skill, skilllv);
if (DIFF_TICK(ud->canact_tick, tick + rate) < 0)
if (DIFF_TICK(ud->canact_tick, tick + rate) < 0){
ud->canact_tick = tick+rate;
if ( battle_config.display_status_timers && sd )
clif_status_change(src, SI_ACTIONDELAY, 1, rate);
}
}
break; //Only one auto skill comes off at a time.
}
@ -1197,8 +1200,11 @@ int skill_counter_additional_effect (struct block_list* src, struct block_list *
ud = unit_bl2ud(bl);
if (ud) {
rate = skill_delayfix(bl, skillid, skilllv);
if (DIFF_TICK(ud->canact_tick, tick + rate) < 0)
if (DIFF_TICK(ud->canact_tick, tick + rate) < 0){
ud->canact_tick = tick+rate;
if ( battle_config.display_status_timers && dstsd )
clif_status_change(bl, SI_ACTIONDELAY, 1, rate);
}
}
break; //trigger only one auto-spell per hit.
}
@ -5667,6 +5673,8 @@ int skill_castend_id(int tid, unsigned int tick, int id, intptr data)
unit_stop_walking(src,1);
ud->canact_tick = tick + skill_delayfix(src, ud->skillid, ud->skilllv);
if ( battle_config.display_status_timers && sd )
clif_status_change(src, SI_ACTIONDELAY, 1, skill_delayfix(src, ud->skillid, ud->skilllv));
if (skill_get_state(ud->skillid) != ST_MOVE_ENABLE)
unit_set_walkdelay(src, tick, battle_config.default_walk_delay+skill_get_walkdelay(ud->skillid, ud->skilllv), 1);
@ -5844,6 +5852,8 @@ int skill_castend_pos(int tid, unsigned int tick, int id, intptr data)
src->type, src->id, ud->skillid, ud->skilllv, ud->skillx, ud->skilly);
unit_stop_walking(src,1);
ud->canact_tick = tick + skill_delayfix(src, ud->skillid, ud->skilllv);
if ( battle_config.display_status_timers && sd )
clif_status_change(src, SI_ACTIONDELAY, 1, skill_delayfix(src, ud->skillid, ud->skilllv));
unit_set_walkdelay(src, tick, battle_config.default_walk_delay+skill_get_walkdelay(ud->skillid, ud->skilllv), 1);
map_freeblock_lock();

View File

@ -1071,7 +1071,7 @@ int unit_skilluse_id2(struct block_list *src, int target_id, short skill_num, sh
ud->canact_tick = tick + casttime + 100;
if ( battle_config.display_status_timers && sd )
clif_status_change(src, SI_ACTIONDELAY, 1, ud->canact_tick);
clif_status_change(src, SI_ACTIONDELAY, 1, casttime);
ud->skilltarget = target_id;
ud->skillx = 0;
ud->skilly = 0;
@ -1178,7 +1178,7 @@ int unit_skilluse_pos2( struct block_list *src, short skill_x, short skill_y, sh
ud->canact_tick = tick + casttime + 100;
if ( battle_config.display_status_timers && sd )
clif_status_change(src, SI_ACTIONDELAY, 1, ud->canact_tick);
clif_status_change(src, SI_ACTIONDELAY, 1, casttime);
ud->skillid = skill_num;
ud->skilllv = skill_lv;
ud->skillx = skill_x;