summaryrefslogtreecommitdiff
path: root/src/map/status.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/status.c')
-rw-r--r--src/map/status.c28
1 files changed, 26 insertions, 2 deletions
diff --git a/src/map/status.c b/src/map/status.c
index 467626106..2955520c6 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -5668,6 +5668,22 @@ int status_change_start(struct block_list* bl,enum sc_type type,int rate,int val
case TK_COUNTER:
clif_skill_nodamage(bl,bl,TK_READYCOUNTER,1,1);
break;
+ case MO_COMBOFINISH:
+ case CH_TIGERFIST:
+ case CH_CHAINCRUSH:
+ if( sd )
+ {
+ sd->state.combo = 1;
+ clif_skillinfoblock(sd);
+ }
+ break;
+ case TK_JUMPKICK:
+ if( sd )
+ {
+ sd->state.combo = 2;
+ clif_skillinfoblock(sd);
+ }
+ break;
}
if (ud && !val3)
{
@@ -6497,8 +6513,16 @@ int status_change_end(struct block_list* bl, enum sc_type type, int tid)
}
break;
case SC_COMBO: //Clear last used skill when it is part of a combo.
- if (sd && sd->skillid_old == sce->val1)
- sd->skillid_old = sd->skilllv_old = 0;
+ if( sd )
+ {
+ if( sd->state.combo )
+ {
+ sd->state.combo = 0;
+ clif_skillinfoblock(sd);
+ }
+ if( sd->skillid_old == sce->val1 )
+ sd->skillid_old = sd->skilllv_old = 0;
+ }
break;
case SC_MARIONETTE: