summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenpachi Developer <Kenpachi.Developer@gmx.de>2020-03-09 19:38:36 +0100
committerKenpachi Developer <Kenpachi.Developer@gmx.de>2020-03-14 19:46:50 +0100
commit6bbe78a5518deb3a0bd8b8227066f8fdba7f6e0d (patch)
tree0c8166598cc9d1178199962a6bb538cb6fb60a46
parent7490bd522753bf4adcdb807c39dac9914dff37c7 (diff)
downloadhercules-6bbe78a5518deb3a0bd8b8227066f8fdba7f6e0d.tar.gz
hercules-6bbe78a5518deb3a0bd8b8227066f8fdba7f6e0d.tar.bz2
hercules-6bbe78a5518deb3a0bd8b8227066f8fdba7f6e0d.tar.xz
hercules-6bbe78a5518deb3a0bd8b8227066f8fdba7f6e0d.zip
Add SC_SKF_MATK status change
-rw-r--r--db/constants.conf1
-rw-r--r--db/sc_config.conf8
-rw-r--r--src/map/status.c3
-rw-r--r--src/map/status.h1
4 files changed, 13 insertions, 0 deletions
diff --git a/db/constants.conf b/db/constants.conf
index c05f9c240..399556732 100644
--- a/db/constants.conf
+++ b/db/constants.conf
@@ -1419,6 +1419,7 @@ constants_db: {
SC_MADOGEAR: 669
SC_POPECOOKIE: 670
SC_VITALIZE_POTION: 671
+ SC_SKF_MATK: 672
comment__: "Emotes"
e_gasp: 0
diff --git a/db/sc_config.conf b/db/sc_config.conf
index dbddfd57d..ae472e53e 100644
--- a/db/sc_config.conf
+++ b/db/sc_config.conf
@@ -3689,3 +3689,11 @@ SC_VITALIZE_POTION: {
}
Icon: "SI_VITALIZE_POTION"
}
+SC_SKF_MATK: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SKF_MATK"
+}
diff --git a/src/map/status.c b/src/map/status.c
index b0fef0b2e..aaf295222 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -886,6 +886,7 @@ static void initChangeTables(void)
status->dbs->ChangeFlagTable[SC_MYSTICPOWDER] |= SCB_FLEE | SCB_LUK;
status->dbs->ChangeFlagTable[SC_POPECOOKIE] |= SCB_BASE | SCB_BATK | SCB_MATK;
status->dbs->ChangeFlagTable[SC_VITALIZE_POTION] |= SCB_BATK | SCB_MATK;
+ status->dbs->ChangeFlagTable[SC_SKF_MATK] |= SCB_MATK;
// Cash Items
status->dbs->ChangeFlagTable[SC_FOOD_STR_CASH] |= SCB_STR;
@@ -5099,6 +5100,8 @@ static int status_calc_matk(struct block_list *bl, struct status_change *sc, int
matk += matk * sc->data[SC_2011RWC]->val2 / 100;
if (sc->data[SC_MAGIC_CANDY])
matk += sc->data[SC_MAGIC_CANDY]->val1;
+ if (sc->data[SC_SKF_MATK] != NULL)
+ matk += sc->data[SC_SKF_MATK]->val1;
return cap_value(matk, battle_config.matk_min, battle_config.matk_max);
}
diff --git a/src/map/status.h b/src/map/status.h
index 7a14f1961..7266d6ec3 100644
--- a/src/map/status.h
+++ b/src/map/status.h
@@ -856,6 +856,7 @@ typedef enum sc_type {
SC_MADOGEAR,
SC_POPECOOKIE,
SC_VITALIZE_POTION,
+ SC_SKF_MATK,
#ifndef SC_MAX
SC_MAX, //Automatically updated max, used in for's to check we are within bounds.
#endif