aboutsummaryrefslogtreecommitdiff
path: root/src/game/Group.cpp
diff options
context:
space:
mode:
authormegamage <none@none>2008-12-12 11:21:28 -0600
committermegamage <none@none>2008-12-12 11:21:28 -0600
commitb6c288ca9fb271923f493ee39d78b5dc4b2a996f (patch)
treeec03c0dce11277c5e04f87a33ca76f1dd78687e7 /src/game/Group.cpp
parent135f39a5efabc12728924933056f3ea952dd2c09 (diff)
*Update to Mangos 6902. Source: Mangos.
*Skipped rev: rev 6893, some code about waypoint movement. --HG-- branch : trunk
Diffstat (limited to 'src/game/Group.cpp')
-rw-r--r--src/game/Group.cpp36
1 files changed, 23 insertions, 13 deletions
diff --git a/src/game/Group.cpp b/src/game/Group.cpp
index 8f79f94697c..3e9dcff7d1b 100644
--- a/src/game/Group.cpp
+++ b/src/game/Group.cpp
@@ -212,7 +212,7 @@ bool Group::AddInvite(Player *player)
RemoveInvite(player);
- m_invitees.insert(player->GetGUID());
+ m_invitees.insert(player);
player->SetGroupInvite(this);
@@ -231,14 +231,7 @@ bool Group::AddLeaderInvite(Player *player)
uint32 Group::RemoveInvite(Player *player)
{
- for(InvitesList::iterator itr=m_invitees.begin(); itr!=m_invitees.end(); ++itr)
- {
- if((*itr) == player->GetGUID())
- {
- m_invitees.erase(itr);
- break;
- }
- }
+ m_invitees.erase(player);
player->SetGroupInvite(NULL);
return GetMembersCount();
@@ -247,12 +240,29 @@ uint32 Group::RemoveInvite(Player *player)
void Group::RemoveAllInvites()
{
for(InvitesList::iterator itr=m_invitees.begin(); itr!=m_invitees.end(); ++itr)
+ (*itr)->SetGroupInvite(NULL);
+
+ m_invitees.clear();
+}
+
+Player* Group::GetInvited(const uint64& guid) const
+{
+ for(InvitesList::const_iterator itr = m_invitees.begin(); itr != m_invitees.end(); ++itr)
{
- Player *invitee = objmgr.GetPlayer(*itr);
- if(invitee)
- invitee->SetGroupInvite(NULL);
+ if((*itr)->GetGUID() == guid)
+ return (*itr);
}
- m_invitees.clear();
+ return NULL;
+}
+
+Player* Group::GetInvited(const std::string& name) const
+{
+ for(InvitesList::const_iterator itr = m_invitees.begin(); itr != m_invitees.end(); ++itr)
+ {
+ if((*itr)->GetName() == name)
+ return (*itr);
+ }
+ return NULL;
}
bool Group::AddMember(const uint64 &guid, const char* name)