I think I found another bug related to looting. Here's how I reproduce it:
- Create two bots(I believe it's also the same issue with real players, but I don't have a friend to play with me )
- Have them all accept a quest to collect some items
- change the loot mode to master loot.
-
Whenever you or the bots try to loot the quest item, you will get the error "Cannot loot this right now".
Workaround: just change to other loot mode when you are working on that quest
Potential fix: I am not sure if I understand the code correctly, but the following fix works so far(for couple of hours of playing)
@@ -144,8 +144,14 @@ void WorldSession::HandleAutostoreLootItemOpcode(WorldPacket& recv_data) } case MASTER_LOOT: { - if((item->winner && item->winner != player->GetObjectGuid()) || (!item->winner && !item->is_underthreshold && !item->freeforall)) + if((item->winner && item->winner != player->GetObjectGuid()) + || (!item->winner && !item->is_underthreshold && !item->freeforall && !qitem)) { + // below is just to show the item flags for debugging. + sLog.outError("winner=%s, player=%s, is_underthreshold=%d, freeforall=%d", + item->winner.GetString().c_str(), + player->GetObjectGuid().GetString().c_str(), + item->is_underthreshold, + item->freeforall); player->SendEquipError(EQUIP_ERR_LOOT_CANT_LOOT_THAT_NOW, NULL, NULL, item->itemid); return; }
Recommended Comments
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now