mirror of
https://github.com/mangosfour/server.git
synced 2025-12-17 16:37:00 +00:00
[7213] Fixed quest related GO activation/deactivation at join/leave/convert raid group.
This commit is contained in:
parent
a47c8d3bfc
commit
ed52e3f8f0
2 changed files with 20 additions and 3 deletions
|
|
@ -203,6 +203,11 @@ void Group::ConvertToRaid()
|
||||||
|
|
||||||
if(!isBGGroup()) CharacterDatabase.PExecute("UPDATE groups SET isRaid = 1 WHERE leaderGuid='%u'", GUID_LOPART(m_leaderGuid));
|
if(!isBGGroup()) CharacterDatabase.PExecute("UPDATE groups SET isRaid = 1 WHERE leaderGuid='%u'", GUID_LOPART(m_leaderGuid));
|
||||||
SendUpdate();
|
SendUpdate();
|
||||||
|
|
||||||
|
// update quest related GO states (quest activity dependent from raid membership)
|
||||||
|
for(member_citerator citr = m_memberSlots.begin(); citr != m_memberSlots.end(); ++citr)
|
||||||
|
if(Player* player = objmgr.GetPlayer(citr->guid))
|
||||||
|
player->UpdateForQuestsGO();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Group::AddInvite(Player *player)
|
bool Group::AddInvite(Player *player)
|
||||||
|
|
@ -288,6 +293,10 @@ bool Group::AddMember(const uint64 &guid, const char* name)
|
||||||
}
|
}
|
||||||
player->SetGroupUpdateFlag(GROUP_UPDATE_FULL);
|
player->SetGroupUpdateFlag(GROUP_UPDATE_FULL);
|
||||||
UpdatePlayerOutOfRange(player);
|
UpdatePlayerOutOfRange(player);
|
||||||
|
|
||||||
|
// quest related GO state dependent from raid memebership
|
||||||
|
if(isRaidGroup())
|
||||||
|
player->UpdateForQuestsGO();
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
@ -300,9 +309,12 @@ uint32 Group::RemoveMember(const uint64 &guid, const uint8 &method)
|
||||||
{
|
{
|
||||||
bool leaderChanged = _removeMember(guid);
|
bool leaderChanged = _removeMember(guid);
|
||||||
|
|
||||||
Player *player = objmgr.GetPlayer( guid );
|
if(Player *player = objmgr.GetPlayer( guid ))
|
||||||
if (player)
|
|
||||||
{
|
{
|
||||||
|
// quest related GO state dependent from raid membership
|
||||||
|
if(isRaidGroup())
|
||||||
|
player->UpdateForQuestsGO();
|
||||||
|
|
||||||
WorldPacket data;
|
WorldPacket data;
|
||||||
|
|
||||||
if(method == 1)
|
if(method == 1)
|
||||||
|
|
@ -361,6 +373,11 @@ void Group::Disband(bool hideDestroy)
|
||||||
|
|
||||||
player->SetGroup(NULL);
|
player->SetGroup(NULL);
|
||||||
|
|
||||||
|
// quest related GO state dependent from raid membership
|
||||||
|
if(isRaidGroup())
|
||||||
|
player->UpdateForQuestsGO();
|
||||||
|
|
||||||
|
|
||||||
if(!player->GetSession())
|
if(!player->GetSession())
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
#ifndef __REVISION_NR_H__
|
#ifndef __REVISION_NR_H__
|
||||||
#define __REVISION_NR_H__
|
#define __REVISION_NR_H__
|
||||||
#define REVISION_NR "7212"
|
#define REVISION_NR "7213"
|
||||||
#endif // __REVISION_NR_H__
|
#endif // __REVISION_NR_H__
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue