|
@@ -3748,20 +3748,20 @@ void status_calc_atk_ele_pc(struct map_session_data *sd, struct status_change *s
|
|
int i = 0;
|
|
int i = 0;
|
|
|
|
|
|
nullpo_retv(sd);
|
|
nullpo_retv(sd);
|
|
-
|
|
|
|
|
|
+
|
|
memset(sd->magic_addele, 0, sizeof(sd->magic_addele));
|
|
memset(sd->magic_addele, 0, sizeof(sd->magic_addele));
|
|
memset(sd->right_weapon.addele, 0, sizeof(sd->right_weapon.addele));
|
|
memset(sd->right_weapon.addele, 0, sizeof(sd->right_weapon.addele));
|
|
memset(sd->left_weapon.addele, 0, sizeof(sd->left_weapon.addele));
|
|
memset(sd->left_weapon.addele, 0, sizeof(sd->left_weapon.addele));
|
|
|
|
|
|
- if (!sc || !sc->count)
|
|
|
|
- return;
|
|
|
|
-
|
|
|
|
if ((i = pc_checkskill(sd, AB_EUCHARISTICA)) > 0) {
|
|
if ((i = pc_checkskill(sd, AB_EUCHARISTICA)) > 0) {
|
|
sd->right_weapon.addele[ELE_DARK] += i;
|
|
sd->right_weapon.addele[ELE_DARK] += i;
|
|
sd->left_weapon.addele[ELE_DARK] += i;
|
|
sd->left_weapon.addele[ELE_DARK] += i;
|
|
sd->magic_addele[ELE_DARK] += i;
|
|
sd->magic_addele[ELE_DARK] += i;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ if (!sc || !sc->count)
|
|
|
|
+ return;
|
|
|
|
+
|
|
if (sc->data[SC_FIRE_INSIGNIA] && sc->data[SC_FIRE_INSIGNIA]->val1 == 3)
|
|
if (sc->data[SC_FIRE_INSIGNIA] && sc->data[SC_FIRE_INSIGNIA]->val1 == 3)
|
|
sd->magic_addele[ELE_FIRE] += 25;
|
|
sd->magic_addele[ELE_FIRE] += 25;
|
|
if (sc->data[SC_WATER_INSIGNIA] && sc->data[SC_WATER_INSIGNIA]->val1 == 3)
|
|
if (sc->data[SC_WATER_INSIGNIA] && sc->data[SC_WATER_INSIGNIA]->val1 == 3)
|
|
@@ -3785,9 +3785,6 @@ void status_calc_def_ele_pc(struct map_session_data *sd, struct status_change *s
|
|
|
|
|
|
memset(sd->subele, 0, sizeof(sd->subele));
|
|
memset(sd->subele, 0, sizeof(sd->subele));
|
|
|
|
|
|
- if (!sc || !sc->count)
|
|
|
|
- return;
|
|
|
|
-
|
|
|
|
if ((i = pc_checkskill(sd,CR_TRUST))>0)
|
|
if ((i = pc_checkskill(sd,CR_TRUST))>0)
|
|
sd->subele[ELE_HOLY] += i * 5;
|
|
sd->subele[ELE_HOLY] += i * 5;
|
|
|
|
|
|
@@ -3799,6 +3796,9 @@ void status_calc_def_ele_pc(struct map_session_data *sd, struct status_change *s
|
|
if ((i = pc_checkskill(sd, AB_EUCHARISTICA)) > 0)
|
|
if ((i = pc_checkskill(sd, AB_EUCHARISTICA)) > 0)
|
|
sd->subele[ELE_DARK] += i;
|
|
sd->subele[ELE_DARK] += i;
|
|
|
|
|
|
|
|
+ if (!sc || !sc->count)
|
|
|
|
+ return;
|
|
|
|
+
|
|
if (sc->data[SC_SIEGFRIED]) {
|
|
if (sc->data[SC_SIEGFRIED]) {
|
|
i = sc->data[SC_SIEGFRIED]->val2;
|
|
i = sc->data[SC_SIEGFRIED]->val2;
|
|
sd->subele[ELE_WATER] += i;
|
|
sd->subele[ELE_WATER] += i;
|