|
@@ -2416,19 +2416,21 @@ struct Damage battle_calc_damage_parts(struct Damage wd, struct block_list *src,
|
|
int left_element = battle_get_weapon_element(wd, src, target, skill_id, skill_lv, EQI_HAND_L, false);
|
|
int left_element = battle_get_weapon_element(wd, src, target, skill_id, skill_lv, EQI_HAND_L, false);
|
|
|
|
|
|
wd.statusAtk += battle_calc_status_attack(sstatus, EQI_HAND_R);
|
|
wd.statusAtk += battle_calc_status_attack(sstatus, EQI_HAND_R);
|
|
|
|
+ wd.statusAtk2 += battle_calc_status_attack(sstatus, EQI_HAND_L);
|
|
|
|
|
|
- if (sd) {
|
|
|
|
- wd.statusAtk2 += battle_calc_status_attack(sstatus, EQI_HAND_L);
|
|
|
|
-
|
|
|
|
- if (!skill_id) { // status atk is considered neutral on normal attacks [helvetica]
|
|
|
|
|
|
+ if (!skill_id) { // status atk is considered neutral on normal attacks [helvetica]
|
|
|
|
+ if(sd && sd->sc.data[SC_SEVENWIND]) { // Mild Wind applies element to status ATK as well as weapon ATK [helvetica]
|
|
|
|
+ wd.statusAtk = battle_attr_fix(src, target, wd.statusAtk, right_element, tstatus->def_ele, tstatus->ele_lv);
|
|
|
|
+ wd.statusAtk2 = battle_attr_fix(src, target, wd.statusAtk, left_element, tstatus->def_ele, tstatus->ele_lv);
|
|
|
|
+ }
|
|
|
|
+ else {
|
|
wd.statusAtk = battle_attr_fix(src, target, wd.statusAtk, ELE_NEUTRAL, tstatus->def_ele, tstatus->ele_lv);
|
|
wd.statusAtk = battle_attr_fix(src, target, wd.statusAtk, ELE_NEUTRAL, tstatus->def_ele, tstatus->ele_lv);
|
|
wd.statusAtk2 = battle_attr_fix(src, target, wd.statusAtk, ELE_NEUTRAL, tstatus->def_ele, tstatus->ele_lv);
|
|
wd.statusAtk2 = battle_attr_fix(src, target, wd.statusAtk, ELE_NEUTRAL, tstatus->def_ele, tstatus->ele_lv);
|
|
- } else {
|
|
|
|
- wd.statusAtk = battle_attr_fix(src, target, wd.statusAtk, right_element, tstatus->def_ele, tstatus->ele_lv);
|
|
|
|
- wd.statusAtk2 = battle_attr_fix(src, target, wd.statusAtk, left_element, tstatus->def_ele, tstatus->ele_lv);
|
|
|
|
- }
|
|
|
|
- if(sd->sc.data[SC_SEVENWIND]) // Mild Wind applies element to status ATK as well as weapon ATK [helvetica]
|
|
|
|
- wd.statusAtk = battle_attr_fix(src, target, wd.statusAtk, right_element, tstatus->def_ele, tstatus->ele_lv);
|
|
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ else {
|
|
|
|
+ wd.statusAtk = battle_attr_fix(src, target, wd.statusAtk, right_element, tstatus->def_ele, tstatus->ele_lv);
|
|
|
|
+ wd.statusAtk2 = battle_attr_fix(src, target, wd.statusAtk, left_element, tstatus->def_ele, tstatus->ele_lv);
|
|
}
|
|
}
|
|
|
|
|
|
wd.weaponAtk += battle_calc_base_weapon_attack(src, tstatus, &sstatus->rhw, sd);
|
|
wd.weaponAtk += battle_calc_base_weapon_attack(src, tstatus, &sstatus->rhw, sd);
|