This commit is contained in:
aozhiwei 2020-05-28 20:40:11 +08:00
parent 15dc16633f
commit 771bccf2d2
2 changed files with 6 additions and 7 deletions

View File

@ -2126,7 +2126,7 @@ void Room::ProcDieAndroid(int die_time, int die_num)
die_num
});
#endif
std::vector<Android*> alive_humans;
std::vector<Human*> alive_humans;
alive_humans.reserve(human_hash_.size());
{
if (frame_no % 8 < 5) {
@ -2174,11 +2174,11 @@ void Room::ProcDieAndroid(int die_time, int die_num)
}
int dead_num = 0;
int try_count = 0;
std::vector<Android*> alive_humans_copy = alive_humans;
std::vector<Human*> alive_humans_copy = alive_humans;
do {
for (size_t i = 0; i < alive_humans.size(); ++i) {
Android* hum = alive_humans[i];
Android* killer = nullptr;
Human* hum = alive_humans[i];
Human* killer = nullptr;
for (size_t ii = i + 1; ii < alive_humans_copy.size(); ++ii) {
killer = alive_humans_copy[ii];
alive_humans.erase(alive_humans.begin() + ii);
@ -2402,14 +2402,13 @@ void Room::CheckPartObjects(Human* testa, Human* testb)
}
}
void Room::CheckAliveHuman(Human* hum, std::vector<Android*>& alive_humans)
void Room::CheckAliveHuman(Human* hum, std::vector<Human*>& alive_humans)
{
if (hum->IsAndroid() &&
!hum->real_dead &&
hum->team_uuid.empty() &&
a8::HasBitFlag(hum->status, HS_Disable) &&
!HasPlayerInRound(hum->GetPos(), VIEW_RANGE)) {
Android* hum = (Android*)hum;
alive_humans.push_back(hum);
}
}

View File

@ -170,7 +170,7 @@ private:
void ProcDisableHuman();
void OnHumanGridChg(Human* target);
void ShuaGridRound(Human* target);
void CheckAliveHuman(Human* hum, std::vector<Android*>& alive_humans);
void CheckAliveHuman(Human* hum, std::vector<Human*>& alive_humans);
private:
int elapsed_time_ = 0;