Skip to content

Instantly share code, notes, and snippets.

@Romain-P
Created September 20, 2015 16:47
Show Gist options
  • Select an option

  • Save Romain-P/ab8405b8c2e41423634e to your computer and use it in GitHub Desktop.

Select an option

Save Romain-P/ab8405b8c2e41423634e to your computer and use it in GitHub Desktop.
:)
bool Challenges::playersFulfilsConditions() {
Map::PlayerList const& players = instance.instance->GetPlayers();
Player* player = players.getFirst()->GetSource();
Group::MemberSlotList const& members = player->GetGroup()->GetMemberSlots();
bool fulfils = true;
for (Group::MemberSlotList::const_iterator itr = members.begin(); itr != members.end(); ++itr) {
Player* member = ObjectAccessor::FindPlayer(itr->guid);
for (uint8 i = EQUIPMENT_SLOT_START; i < EQUIPMENT_SLOT_END; ++i)
{
//don't check tabard, ranged, offhand or shirt
if (i == EQUIPMENT_SLOT_TABARD || i == EQUIPMENT_SLOT_RANGED || i == EQUIPMENT_SLOT_OFFHAND
|| i == EQUIPMENT_SLOT_BODY)
continue;
Item* item = member->GetItemByPos(INVENTORY_SLOT_BAG_0, i);
if(item && item->GetTemplate()) {
if (item->GetTemplate()->GetItemLevelIncludingQuality() > itemLevelMax) {
fulfils = false;
break;
}
}
}
//todo: notice players
return (enabled = fulfils);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment