diff options
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/status.c | 4 | ||||
-rw-r--r-- | src/map/status.h | 2 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/map/status.c b/src/map/status.c index 5d1e7f4ef..f7c336f55 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -802,6 +802,7 @@ void initChangeTables(void) { status->dbs->IconChangeTable[SC_SPL_MATK] = SI_SPL_MATK; status->dbs->IconChangeTable[SC_PLUSATTACKPOWER] = SI_PLUSATTACKPOWER; status->dbs->IconChangeTable[SC_PLUSMAGICPOWER] = SI_PLUSMAGICPOWER; + status->dbs->IconChangeTable[SC_FOOD_CRITICALSUCCESSVALUE] = SI_FOOD_CRITICALSUCCESSVALUE; // Cash Items status->dbs->IconChangeTable[SC_FOOD_STR_CASH] = SI_FOOD_STR_CASH; @@ -993,6 +994,7 @@ void initChangeTables(void) { status->dbs->ChangeFlagTable[SC_TARGET_ASPD] |= SCB_MAXSP; status->dbs->ChangeFlagTable[SC_ATKER_ASPD] |= SCB_MAXHP | SCB_ALL; status->dbs->ChangeFlagTable[SC_ATKER_MOVESPEED] |= SCB_MAXSP | SCB_ALL; + status->dbs->ChangeFlagTable[SC_FOOD_CRITICALSUCCESSVALUE] |= SCB_CRI; // Cash Items status->dbs->ChangeFlagTable[SC_FOOD_STR_CASH] = SCB_STR; @@ -4839,6 +4841,8 @@ signed short status_calc_critical(struct block_list *bl, struct status_change *s if (sc->data[SC_CRITICALPERCENT]) critical += sc->data[SC_CRITICALPERCENT]->val2; + if (sc->data[SC_FOOD_CRITICALSUCCESSVALUE]) + critical += sc->data[SC_FOOD_CRITICALSUCCESSVALUE]->val1; if (sc->data[SC_EXPLOSIONSPIRITS]) critical += sc->data[SC_EXPLOSIONSPIRITS]->val2; if (sc->data[SC_FORTUNE]) diff --git a/src/map/status.h b/src/map/status.h index e784eade8..99916c291 100644 --- a/src/map/status.h +++ b/src/map/status.h @@ -773,6 +773,8 @@ typedef enum sc_type { SC_ATKER_ASPD, SC_ATKER_MOVESPEED, + + SC_FOOD_CRITICALSUCCESSVALUE, // 610 SC_MAX, //Automatically updated max, used in for's to check we are within bounds. } sc_type; |