1
This commit is contained in:
parent
7f67438290
commit
1ceda647fe
@ -47,6 +47,21 @@ Human* Team::GetOneAliveMember(Human* exclude_hum)
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
Human* Team::RandomOneAliveMember(Human* exclude_hum)
|
||||
{
|
||||
std::vector<Human*> humans;
|
||||
for (Human* member : members_) {
|
||||
if (member != exclude_hum && !member->dead) {
|
||||
humans.push_back(member);
|
||||
}
|
||||
}
|
||||
if (!humans.empty()) {
|
||||
std::random_shuffle(humans.begin(), humans.end());
|
||||
return humans.at(0);
|
||||
}
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
bool Team::HasAliveMember()
|
||||
{
|
||||
for (Human* member : members_) {
|
||||
|
@ -31,6 +31,7 @@ class Team
|
||||
size_t GetMemberNum() { return members_.size(); }
|
||||
void GetOveredHumans(std::set<Human*>& overed_humans);
|
||||
Human* GetOneAliveMember(Human* exclude_hum);
|
||||
Human* RandomOneAliveMember(Human* exclude_hum);
|
||||
bool HasAliveMember();
|
||||
int GetAliveNum();
|
||||
void AddMember(Human* member);
|
||||
|
Loading…
x
Reference in New Issue
Block a user