[9327] Replace leader based indexing groups by group ids.

* This must repolve problem with loot.
  Before if some mob killed by group member and then leader changed
  then group members can't loot this mob body.
* Possible resolve crashes at loot. Now group storage content not dependent from leader changes.
This commit is contained in:
VladimirMangos 2010-02-08 08:19:35 +03:00
parent 5a7eb09bd2
commit 8e0069f364
8 changed files with 66 additions and 42 deletions

View file

@ -189,10 +189,12 @@ void WorldSession::HandleGroupAcceptOpcode( WorldPacket & recv_data )
// forming a new group, create it
if(!group->IsCreated())
{
if( leader )
if (leader)
group->RemoveInvite(leader);
group->Create(group->GetLeaderGUID(), group->GetLeaderName());
sObjectMgr.AddGroup(group);
if (group->Create(group->GetLeaderGUID(), group->GetLeaderName()))
sObjectMgr.AddGroup(group);
else
return;
}
// everything's fine, do it, PLAYER'S GROUP IS SET IN ADDMEMBER!!!