diff options
-rw-r--r-- | src/map/clif.c | 6 | ||||
-rw-r--r-- | src/map/pc.c | 5 |
2 files changed, 6 insertions, 5 deletions
diff --git a/src/map/clif.c b/src/map/clif.c index 8688ee771..649df3e33 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -10863,6 +10863,12 @@ static void clif_parse_LoadEndAck(int fd, struct map_session_data *sd) clif->updatestatus(sd, SP_SKILLPOINT); clif->initialstatus(sd); + // Unequip items which can't be equipped by the character. + for (int i = 0; i < EQI_MAX; i++) { + if (sd->equip_index[i] >= 0 && pc->isequip(sd , sd->equip_index[i]) == 0) + pc->unequipitem(sd, sd->equip_index[i], PCUNEQUIPITEM_FORCE); + } + if (pc_isfalcon(sd)) { int sc_icn = status->get_sc_icon(SC_FALCON); int sc_typ = status->get_sc_relevant_bl_types(SC_FALCON); diff --git a/src/map/pc.c b/src/map/pc.c index 41e182cca..c1261c839 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -5915,11 +5915,6 @@ static int pc_setpos(struct map_session_data *sd, unsigned short map_index, int status_change_end(&sd->bl, SC_CLOAKINGEXCEED, INVALID_TIMER); } - for (int i = 0; i < EQI_MAX; i++) { - if (sd->equip_index[i] >= 0 && pc->isequip(sd , sd->equip_index[i]) == 0) - pc->unequipitem(sd, sd->equip_index[i], PCUNEQUIPITEM_FORCE); - } - if ((battle_config.clear_unit_onwarp & BL_PC) != 0) skill->clear_unitgroup(&sd->bl); |