@@ -1498,9 +1498,22 @@ void Group::CountTheRoll(Rolls::iterator rollI, Map* allowedMap)
14981498 }
14991499 else
15001500 {
1501- item->is_blocked = false ;
1502- item->rollWinnerGUID = player->GetGUID ();
1503- player->SendEquipError (msg, nullptr , nullptr , roll->itemid );
1501+ uint32 mailOnFull = sWorld ->getIntConfig (CONFIG_LFG_MAIL_ITEM_ON_FULL_INVENTORY);
1502+ if (mailOnFull == MAIL_ITEM_ON_FULL_INVENTORY_EVERYWHERE || (mailOnFull == MAIL_ITEM_ON_FULL_INVENTORY_LFG_ONLY && isLFGGroup ()))
1503+ {
1504+ item->is_looted = true ;
1505+ roll->getLoot ()->NotifyItemRemoved (roll->itemSlot );
1506+ roll->getLoot ()->unlootedCount --;
1507+ player->SendEquipError (msg, nullptr , nullptr , roll->itemid );
1508+ if (Item* mailItem = Item::CreateItem (roll->itemid , item->count , player, false , item->randomPropertyId ))
1509+ player->SendItemRetrievalMail (mailItem);
1510+ }
1511+ else
1512+ {
1513+ item->is_blocked = false ;
1514+ item->rollWinnerGUID = player->GetGUID ();
1515+ player->SendEquipError (msg, nullptr , nullptr , roll->itemid );
1516+ }
15041517 }
15051518 }
15061519 }
@@ -1568,9 +1581,22 @@ void Group::CountTheRoll(Rolls::iterator rollI, Map* allowedMap)
15681581 }
15691582 else
15701583 {
1571- item->is_blocked = false ;
1572- item->rollWinnerGUID = player->GetGUID ();
1573- player->SendEquipError (msg, nullptr , nullptr , roll->itemid );
1584+ uint32 mailOnFull = sWorld ->getIntConfig (CONFIG_LFG_MAIL_ITEM_ON_FULL_INVENTORY);
1585+ if (mailOnFull == MAIL_ITEM_ON_FULL_INVENTORY_EVERYWHERE || (mailOnFull == MAIL_ITEM_ON_FULL_INVENTORY_LFG_ONLY && isLFGGroup ()))
1586+ {
1587+ item->is_looted = true ;
1588+ roll->getLoot ()->NotifyItemRemoved (roll->itemSlot );
1589+ roll->getLoot ()->unlootedCount --;
1590+ player->SendEquipError (msg, nullptr , nullptr , roll->itemid );
1591+ if (Item* mailItem = Item::CreateItem (roll->itemid , item->count , player, false , item->randomPropertyId ))
1592+ player->SendItemRetrievalMail (mailItem);
1593+ }
1594+ else
1595+ {
1596+ item->is_blocked = false ;
1597+ item->rollWinnerGUID = player->GetGUID ();
1598+ player->SendEquipError (msg, nullptr , nullptr , roll->itemid );
1599+ }
15741600 }
15751601 }
15761602 else if (rollvote == DISENCHANT)
0 commit comments