Some bonus ignored left_cardfix_to_right (#8097)

Taken from #7024

Co-authored-by: munkrej <schmunk@posteo.de>
This commit is contained in:
Lemongrass3110
2024-01-12 11:42:08 +01:00
committed by GitHub
parent 360b8bc3e2
commit c4026c08c8

View File

@@ -4503,15 +4503,19 @@ int status_calc_pc_sub(map_session_data* sd, uint8 opt)
skill = skill * 4;
sd->right_weapon.addrace[RC_DRAGON]+=skill;
sd->left_weapon.addrace[RC_DRAGON]+=skill;
if( !battle_config.left_cardfix_to_right ){
sd->left_weapon.addrace[RC_DRAGON] += skill;
}
sd->indexed_bonus.magic_addrace[RC_DRAGON]+=dragon_matk;
sd->indexed_bonus.subrace[RC_DRAGON]+=skill;
}
if ((skill = pc_checkskill(sd, AB_EUCHARISTICA)) > 0) {
sd->right_weapon.addrace[RC_DEMON] += skill;
sd->right_weapon.addele[ELE_DARK] += skill;
sd->left_weapon.addrace[RC_DEMON] += skill;
sd->left_weapon.addele[ELE_DARK] += skill;
if( !battle_config.left_cardfix_to_right ){
sd->left_weapon.addrace[RC_DEMON] += skill;
sd->left_weapon.addele[ELE_DARK] += skill;
}
sd->indexed_bonus.magic_addrace[RC_DEMON] += skill;
sd->indexed_bonus.magic_addele[ELE_DARK] += skill;
sd->indexed_bonus.subrace[RC_DEMON] += skill;
@@ -4535,8 +4539,10 @@ int status_calc_pc_sub(map_session_data* sd, uint8 opt)
sd->right_weapon.addrace[RC_UNDEAD] += race_atk[skill - 1];
sd->right_weapon.addrace[RC_DEMON] += race_atk[skill - 1];
sd->left_weapon.addrace[RC_UNDEAD] += race_atk[skill - 1];
sd->left_weapon.addrace[RC_DEMON] += race_atk[skill - 1];
if( !battle_config.left_cardfix_to_right ){
sd->left_weapon.addrace[RC_UNDEAD] += race_atk[skill - 1];
sd->left_weapon.addrace[RC_DEMON] += race_atk[skill - 1];
}
sd->indexed_bonus.subrace[RC_UNDEAD] += race_def[skill - 1];
sd->indexed_bonus.subrace[RC_DEMON] += race_def[skill - 1];
}
@@ -4550,7 +4556,9 @@ int status_calc_pc_sub(map_session_data* sd, uint8 opt)
for( uint8 size = SZ_SMALL; size < SZ_MAX; size++ ){
sd->right_weapon.addsize[size] += attack_bonus[size][skill - 1];
sd->left_weapon.addsize[size] += attack_bonus[size][skill - 1];
if( !battle_config.left_cardfix_to_right ){
sd->left_weapon.addsize[size] += attack_bonus[size][skill - 1];
}
}
}
if ((skill = pc_checkskill(sd, CD_FIDUS_ANIMUS)) > 0) {
@@ -4580,7 +4588,9 @@ int status_calc_pc_sub(map_session_data* sd, uint8 opt)
for( uint8 size = SZ_SMALL; size < SZ_MAX; size++ ){
sd->right_weapon.addsize[size] += attack_bonus[size][skill - 1];
sd->left_weapon.addsize[size] += attack_bonus[size][skill - 1];
if( !battle_config.left_cardfix_to_right ){
sd->left_weapon.addsize[size] += attack_bonus[size][skill - 1];
}
}
}
if ((skill = pc_checkskill(sd, ABC_MAGIC_SWORD_M)) > 0 && (sd->status.weapon == W_DAGGER || sd->status.weapon == W_1HSWORD || sd->status.weapon == W_DOUBLE_DD || sd->status.weapon == W_DOUBLE_SS || sd->status.weapon == W_DOUBLE_DS || sd->status.weapon == W_DOUBLE_DA || sd->status.weapon == W_DOUBLE_SA)) {
@@ -4627,8 +4637,10 @@ int status_calc_pc_sub(map_session_data* sd, uint8 opt)
i = sc->getSCE(SC_BASILICA)->val1 * 5;
sd->right_weapon.addele[ELE_DARK] += i;
sd->right_weapon.addele[ELE_UNDEAD] += i;
sd->left_weapon.addele[ELE_DARK] += i;
sd->left_weapon.addele[ELE_UNDEAD] += i;
if( !battle_config.left_cardfix_to_right ){
sd->left_weapon.addele[ELE_DARK] += i;
sd->left_weapon.addele[ELE_UNDEAD] += i;
}
sd->indexed_bonus.magic_atk_ele[ELE_HOLY] += sc->getSCE(SC_BASILICA)->val1 * 3;
}
if (sc->getSCE(SC_FIREWEAPON))
@@ -4647,8 +4659,10 @@ int status_calc_pc_sub(map_session_data* sd, uint8 opt)
if (sc->getSCE(SC_GEFFEN_MAGIC1)) {
sd->right_weapon.addrace[RC_PLAYER_HUMAN] += sc->getSCE(SC_GEFFEN_MAGIC1)->val1;
sd->right_weapon.addrace[RC_DEMIHUMAN] += sc->getSCE(SC_GEFFEN_MAGIC1)->val1;
sd->left_weapon.addrace[RC_PLAYER_HUMAN] += sc->getSCE(SC_GEFFEN_MAGIC1)->val1;
sd->left_weapon.addrace[RC_DEMIHUMAN] += sc->getSCE(SC_GEFFEN_MAGIC1)->val1;
if( !battle_config.left_cardfix_to_right ){
sd->left_weapon.addrace[RC_PLAYER_HUMAN] += sc->getSCE( SC_GEFFEN_MAGIC1 )->val1;
sd->left_weapon.addrace[RC_DEMIHUMAN] += sc->getSCE( SC_GEFFEN_MAGIC1 )->val1;
}
}
if (sc->getSCE(SC_GEFFEN_MAGIC2)) {
sd->indexed_bonus.magic_addrace[RC_PLAYER_HUMAN] += sc->getSCE(SC_GEFFEN_MAGIC2)->val1;