I'm not sure what the problem here is, so I'll post the code and let you see for yourself
I know it is caused by that somehow, or something related to it because it only crashes when you remove an obj, and when I changed to the stock code it worked perfectly fine
Edit #1
Forgot to subscribe, lol
OBJ_DATA *
get_eq_char (CHAR_DATA * ch, int iWear)
{
OBJ_DATA *obj, *maxobj = NULL;
OBJ_DATA *cloak = NULL;
for (obj = ch->first_carrying; obj; obj = obj->next_content)
{
if (obj->wear_loc == WEAR_ABOUT) checks for cloak in wear_loc WEAR_ABOUT
cloak = obj;
}
for (obj = ch->first_carrying; obj; obj = obj->next_content)
{
if (ch->pcdata && IS_SET (ch->pcdata->flags, PLR_CLOAK) && cloak)
{
if (obj->wear_loc != WEAR_FEET && obj->wear_loc != WEAR_HEAD && obj->wear_loc != WEAR_HANDS &&obj->wear_loc != WEAR_ABOUT && obj->wear_loc != WEAR_FACE && obj->wear_loc != WEAR_FLOAT && obj->wear_loc != WEAR_SHOULDER)
continue;
}
else if (obj->wear_loc == iWear)
{
if (!obj->pIndexData->layers)
return obj;
else if (!maxobj || obj->pIndexData->layers > maxobj->pIndexData->layers)
maxobj = obj;
}
}
return maxobj;
}
I know it is caused by that somehow, or something related to it because it only crashes when you remove an obj, and when I changed to the stock code it worked perfectly fine
Edit #1
Forgot to subscribe, lol