mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-18 11:21:29 +00:00
Use stl algorithms for expedition member searches
This commit is contained in:
parent
780cf148fa
commit
32cc2d66dd
@ -352,52 +352,42 @@ bool Expedition::HasReplayLockout()
|
|||||||
|
|
||||||
bool Expedition::HasMember(uint32_t character_id)
|
bool Expedition::HasMember(uint32_t character_id)
|
||||||
{
|
{
|
||||||
for (const auto& member : m_members)
|
return std::any_of(m_members.begin(), m_members.end(), [&](const ExpeditionMember& member) {
|
||||||
{
|
return member.char_id == character_id;
|
||||||
if (member.char_id == character_id)
|
});
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Expedition::HasMember(const std::string& name)
|
bool Expedition::HasMember(const std::string& character_name)
|
||||||
{
|
{
|
||||||
for (const auto& member : m_members)
|
return std::any_of(m_members.begin(), m_members.end(), [&](const ExpeditionMember& member) {
|
||||||
{
|
return (strcasecmp(member.name.c_str(), character_name.c_str()) == 0);
|
||||||
if (strcasecmp(member.name.c_str(), name.c_str()) == 0)
|
});
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ExpeditionMember Expedition::GetMemberData(uint32_t character_id)
|
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;
|
ExpeditionMember member_data;
|
||||||
for (const auto& member : m_members)
|
if (it != m_members.end())
|
||||||
{
|
{
|
||||||
if (member.char_id == character_id)
|
member_data = *it;
|
||||||
{
|
|
||||||
member_data = member;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return member_data;
|
return member_data;
|
||||||
}
|
}
|
||||||
|
|
||||||
ExpeditionMember Expedition::GetMemberData(const std::string& character_name)
|
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;
|
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 = *it;
|
||||||
{
|
|
||||||
member_data = member;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return member_data;
|
return member_data;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -100,7 +100,7 @@ public:
|
|||||||
const std::vector<ExpeditionMember>& GetMembers() const { return m_members; }
|
const std::vector<ExpeditionMember>& GetMembers() const { return m_members; }
|
||||||
|
|
||||||
bool AddMember(const std::string& add_char_name, uint32_t add_char_id);
|
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);
|
bool HasMember(uint32_t character_id);
|
||||||
void RemoveAllMembers(bool enable_removal_timers = true, bool update_dz_expire_time = true);
|
void RemoveAllMembers(bool enable_removal_timers = true, bool update_dz_expire_time = true);
|
||||||
bool RemoveMember(const std::string& remove_char_name);
|
bool RemoveMember(const std::string& remove_char_name);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user