diff --git a/zone/expedition.cpp b/zone/expedition.cpp index 34101e19b..cedca641b 100644 --- a/zone/expedition.cpp +++ b/zone/expedition.cpp @@ -352,52 +352,42 @@ bool Expedition::HasReplayLockout() bool Expedition::HasMember(uint32_t character_id) { - for (const auto& member : m_members) - { - if (member.char_id == character_id) - { - return true; - } - } - return false; + return std::any_of(m_members.begin(), m_members.end(), [&](const ExpeditionMember& member) { + return member.char_id == character_id; + }); } -bool Expedition::HasMember(const std::string& name) +bool Expedition::HasMember(const std::string& character_name) { - for (const auto& member : m_members) - { - if (strcasecmp(member.name.c_str(), name.c_str()) == 0) - { - return true; - } - } - return false; + return std::any_of(m_members.begin(), m_members.end(), [&](const ExpeditionMember& member) { + return (strcasecmp(member.name.c_str(), character_name.c_str()) == 0); + }); } ExpeditionMember Expedition::GetMemberData(uint32_t character_id) { + auto it = std::find_if(m_members.begin(), m_members.end(), [&](const ExpeditionMember& member) { + return member.char_id == character_id; + }); + ExpeditionMember member_data; - for (const auto& member : m_members) + if (it != m_members.end()) { - if (member.char_id == character_id) - { - member_data = member; - break; - } + member_data = *it; } return member_data; } ExpeditionMember Expedition::GetMemberData(const std::string& character_name) { + auto it = std::find_if(m_members.begin(), m_members.end(), [&](const ExpeditionMember& member) { + return (strcasecmp(member.name.c_str(), character_name.c_str()) == 0); + }); + ExpeditionMember member_data; - for (const auto& member : m_members) + if (it != m_members.end()) { - if (strcasecmp(member.name.c_str(), character_name.c_str()) == 0) - { - member_data = member; - break; - } + member_data = *it; } return member_data; } diff --git a/zone/expedition.h b/zone/expedition.h index c28e2fa3d..ce1e243f8 100644 --- a/zone/expedition.h +++ b/zone/expedition.h @@ -100,7 +100,7 @@ public: const std::vector& GetMembers() const { return m_members; } bool AddMember(const std::string& add_char_name, uint32_t add_char_id); - bool HasMember(const std::string& name); + bool HasMember(const std::string& character_name); bool HasMember(uint32_t character_id); void RemoveAllMembers(bool enable_removal_timers = true, bool update_dz_expire_time = true); bool RemoveMember(const std::string& remove_char_name);