@@ -1490,9 +1490,22 @@ void Group::CountTheRoll(Rolls::iterator rollI, Map* allowedMap)
14901490 }
14911491 else
14921492 {
1493- item->is_blocked = false ;
1494- item->rollWinnerGUID = player->GetGUID ();
1495- player->SendEquipError (msg, nullptr , nullptr , roll->itemid );
1493+ uint32 mailOnFull = sWorld ->getIntConfig (CONFIG_LFG_MAIL_ITEM_ON_FULL_INVENTORY);
1494+ if (mailOnFull == MAIL_ITEM_ON_FULL_INVENTORY_EVERYWHERE || (mailOnFull == MAIL_ITEM_ON_FULL_INVENTORY_LFG_ONLY && isLFGGroup ()))
1495+ {
1496+ item->is_looted = true ;
1497+ roll->getLoot ()->NotifyItemRemoved (roll->itemSlot );
1498+ roll->getLoot ()->unlootedCount --;
1499+ player->SendEquipError (msg, nullptr , nullptr , roll->itemid );
1500+ if (Item* mailItem = Item::CreateItem (roll->itemid , item->count , player, false , item->randomPropertyId ))
1501+ player->SendItemRetrievalMail (mailItem);
1502+ }
1503+ else
1504+ {
1505+ item->is_blocked = false ;
1506+ item->rollWinnerGUID = player->GetGUID ();
1507+ player->SendEquipError (msg, nullptr , nullptr , roll->itemid );
1508+ }
14961509 }
14971510 }
14981511 }
@@ -1560,9 +1573,22 @@ void Group::CountTheRoll(Rolls::iterator rollI, Map* allowedMap)
15601573 }
15611574 else
15621575 {
1563- item->is_blocked = false ;
1564- item->rollWinnerGUID = player->GetGUID ();
1565- player->SendEquipError (msg, nullptr , nullptr , roll->itemid );
1576+ uint32 mailOnFull = sWorld ->getIntConfig (CONFIG_LFG_MAIL_ITEM_ON_FULL_INVENTORY);
1577+ if (mailOnFull == MAIL_ITEM_ON_FULL_INVENTORY_EVERYWHERE || (mailOnFull == MAIL_ITEM_ON_FULL_INVENTORY_LFG_ONLY && isLFGGroup ()))
1578+ {
1579+ item->is_looted = true ;
1580+ roll->getLoot ()->NotifyItemRemoved (roll->itemSlot );
1581+ roll->getLoot ()->unlootedCount --;
1582+ player->SendEquipError (msg, nullptr , nullptr , roll->itemid );
1583+ if (Item* mailItem = Item::CreateItem (roll->itemid , item->count , player, false , item->randomPropertyId ))
1584+ player->SendItemRetrievalMail (mailItem);
1585+ }
1586+ else
1587+ {
1588+ item->is_blocked = false ;
1589+ item->rollWinnerGUID = player->GetGUID ();
1590+ player->SendEquipError (msg, nullptr , nullptr , roll->itemid );
1591+ }
15661592 }
15671593 }
15681594 else if (rollvote == DISENCHANT)
0 commit comments