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.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/src/map/status.c b/src/map/status.c
index 22e7fd0ea..b4e95ae71 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -3483,11 +3483,6 @@ void status_calc_bl_main(struct block_list *bl, /*enum scb_flag*/int flag)
status->matk_max = status_calc_matk(bl, sc, status->matk_max);
#endif
- if(sc->data[SC_MAGICPOWER]) { //Store current matk values
- sc->mp_matk_min = status->matk_min;
- sc->mp_matk_max = status->matk_max;
- }
-
if( bl->type&BL_HOM && battle_config.hom_setting&0x20 ) //Hom Min Matk is always the same as Max Matk
status->matk_min = status->matk_max;
@@ -4136,7 +4131,7 @@ static unsigned short status_calc_matk(struct block_list *bl, struct status_chan
matk += sc->data[SC_MATKPOTION]->val1;
if(sc->data[SC_MATKFOOD])
matk += sc->data[SC_MATKFOOD]->val1;
- if(sc->data[SC_MAGICPOWER])
+ if(sc->data[SC_MAGICPOWER] && sc->data[SC_MAGICPOWER]->val4)
matk += matk * sc->data[SC_MAGICPOWER]->val3/100;
if(sc->data[SC_MINDBREAKER])
matk += matk * sc->data[SC_MINDBREAKER]->val2/100;
@@ -6414,6 +6409,7 @@ int status_change_start(struct block_list* bl,enum sc_type type,int rate,int val
//val1: Skill lv
val2 = 1; //Lasts 1 invocation
val3 = 5*val1; //Matk% increase
+ val4 = 0; // 0 = ready to be used, 1 = activated and running
break;
case SC_SACRIFICE:
val2 = 5; //Lasts 5 hits