diff options
Diffstat (limited to 'src/map/pc.c')
-rw-r--r-- | src/map/pc.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/map/pc.c b/src/map/pc.c index 50773029d..6191012ba 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -6192,6 +6192,11 @@ int pc_equipitem(struct map_session_data *sd,int n,int req_pos) pos = req_pos&EQP_ACC; if (pos == EQP_ACC) //User specified both slots.. pos = sd->equip_index[EQI_ACC_L] >= 0 ? EQP_ACC_R : EQP_ACC_L; + if (pos == EQP_ACC_L && + sd->equip_index[EQI_ACC_L] >= 0 && + sd->equip_index[EQI_ACC_R] < 0 + ) //Requesting to reequip on left when right is available? + pos = EQP_ACC_R; } if(pos == EQP_WEAPON && id->equip == EQP_HAND_R && @@ -6201,8 +6206,12 @@ int pc_equipitem(struct map_session_data *sd,int n,int req_pos) pos = (req_pos&EQP_WEAPON); if (pos == EQP_WEAPON) //User specified both slots, pick one for them. pos = sd->equip_index[EQI_HAND_R] >= 0 ? EQP_HAND_L : EQP_HAND_R; + if (pos == EQP_HAND_R && + sd->equip_index[EQI_HAND_R] >= 0 && + sd->equip_index[EQI_HAND_L] < 0 + ) //Requesting to reequip on right when left is available? + pos = EQP_HAND_L; } - if (pos&EQP_HAND_R && battle_config.use_weapon_skill_range) { //Update skill-block range database when weapon range changes. [Skotlex] |