diff options
Diffstat (limited to 'src/server/game/Groups/Group.cpp')
| -rw-r--r-- | src/server/game/Groups/Group.cpp | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/src/server/game/Groups/Group.cpp b/src/server/game/Groups/Group.cpp index ca11a2fe24e..c9993f95f40 100644 --- a/src/server/game/Groups/Group.cpp +++ b/src/server/game/Groups/Group.cpp @@ -152,7 +152,7 @@ bool Group::Create(Player* leader) { ObjectGuid leaderGuid = leader->GetGUID(); - m_guid = ObjectGuid(HighGuid::Group, sGroupMgr->GenerateGroupId()); + m_guid = ObjectGuid::Create<HighGuid::Group>(sGroupMgr->GenerateGroupId()); m_leaderGuid = leaderGuid; m_leaderName = leader->GetName(); leader->SetFlag(PLAYER_FLAGS, PLAYER_FLAGS_GROUP_LEADER); @@ -221,15 +221,15 @@ bool Group::Create(Player* leader) void Group::LoadGroupFromDB(Field* fields) { m_dbStoreId = fields[16].GetUInt32(); - m_guid = ObjectGuid(HighGuid::Group, sGroupMgr->GenerateGroupId()); - m_leaderGuid = ObjectGuid(HighGuid::Player, fields[0].GetUInt32()); + m_guid = ObjectGuid::Create<HighGuid::Group>(sGroupMgr->GenerateGroupId()); + m_leaderGuid = ObjectGuid::Create<HighGuid::Player>(fields[0].GetUInt32()); // group leader not exist if (!sCharacterCache->GetCharacterNameByGuid(m_leaderGuid, m_leaderName)) return; m_lootMethod = LootMethod(fields[1].GetUInt8()); - m_looterGuid = ObjectGuid(HighGuid::Player, fields[2].GetUInt32()); + m_looterGuid = ObjectGuid::Create<HighGuid::Player>(fields[2].GetUInt32()); m_lootThreshold = ItemQualities(fields[3].GetUInt8()); for (uint8 i = 0; i < TARGET_ICONS_COUNT; ++i) @@ -251,7 +251,7 @@ void Group::LoadGroupFromDB(Field* fields) else m_raidDifficulty = Difficulty(r_diff); - m_masterLooterGuid = ObjectGuid(HighGuid::Player, fields[15].GetUInt32()); + m_masterLooterGuid = fields[15].GetUInt32() ? ObjectGuid::Create<HighGuid::Player>(fields[15].GetUInt32()) : ObjectGuid::Empty; if (m_groupType & GROUPTYPE_LFG) sLFGMgr->_LoadFromDB(fields, GetGUID()); @@ -260,7 +260,7 @@ void Group::LoadGroupFromDB(Field* fields) void Group::LoadMemberFromDB(ObjectGuid::LowType guidLow, uint8 memberFlags, uint8 subgroup, uint8 roles) { MemberSlot member; - member.guid = ObjectGuid(HighGuid::Player, guidLow); + member.guid = ObjectGuid::Create<HighGuid::Player>(guidLow); // skip non-existed member if (!sCharacterCache->GetCharacterNameByGuid(member.guid, member.name)) @@ -1084,7 +1084,6 @@ void Group::GroupLoot(Loot* loot, WorldObject* pLootedObject) if (item->Quality >= uint32(m_lootThreshold)) { ObjectGuid newitemGUID = ObjectGuid::Create<HighGuid::Item>(sObjectMgr->GetGenerator<HighGuid::Item>().Generate()); - Roll* r = new Roll(newitemGUID, *i); //a vector is filled with only near party members @@ -1169,7 +1168,6 @@ void Group::GroupLoot(Loot* loot, WorldObject* pLootedObject) } ObjectGuid newitemGUID = ObjectGuid::Create<HighGuid::Item>(sObjectMgr->GetGenerator<HighGuid::Item>().Generate()); - Roll* r = new Roll(newitemGUID, *i); //a vector is filled with only near party members @@ -1235,7 +1233,6 @@ void Group::NeedBeforeGreed(Loot* loot, WorldObject* lootedObject) if (item->Quality >= uint32(m_lootThreshold)) { ObjectGuid newitemGUID = ObjectGuid::Create<HighGuid::Item>(sObjectMgr->GetGenerator<HighGuid::Item>().Generate()); - Roll* r = new Roll(newitemGUID, *i); for (GroupReference* itr = GetFirstMember(); itr != nullptr; itr = itr->next()) @@ -1309,7 +1306,6 @@ void Group::NeedBeforeGreed(Loot* loot, WorldObject* lootedObject) item = sObjectMgr->GetItemTemplate(i->itemid); ObjectGuid newitemGUID = ObjectGuid::Create<HighGuid::Item>(sObjectMgr->GetGenerator<HighGuid::Item>().Generate()); - Roll* r = new Roll(newitemGUID, *i); for (GroupReference* itr = GetFirstMember(); itr != nullptr; itr = itr->next()) |
