diff options
Diffstat (limited to 'src/map/status.c')
-rw-r--r-- | src/map/status.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/map/status.c b/src/map/status.c index b3433728c..f9db3f9c6 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -2644,10 +2644,11 @@ void status_calc_regen_rate(struct block_list *bl, struct regen_data *regen, str regen->flag = 0; if ( - sc->data[SC_EXTREMITYFIST] - || sc->data[SC_DANCING] - || (sc->data[SC_EXPLOSIONSPIRITS] - && (!sc->data[SC_SPIRIT] || sc->data[SC_SPIRIT]->val2 != SL_MONK)) + sc->data[SC_DANCING] + || ( + (((TBL_PC*)bl)->class_&MAPID_UPPERMASK) == MAPID_MONK && + (sc->data[SC_EXTREMITYFIST] || (sc->data[SC_EXPLOSIONSPIRITS] && (!sc->data[SC_SPIRIT] || sc->data[SC_SPIRIT]->val2 != SL_MONK))) + ) ) //No natural SP regen regen->flag &=~RGN_SP; |