1
This commit is contained in:
parent
15dc16633f
commit
771bccf2d2
@ -2126,7 +2126,7 @@ void Room::ProcDieAndroid(int die_time, int die_num)
|
|||||||
die_num
|
die_num
|
||||||
});
|
});
|
||||||
#endif
|
#endif
|
||||||
std::vector<Android*> alive_humans;
|
std::vector<Human*> alive_humans;
|
||||||
alive_humans.reserve(human_hash_.size());
|
alive_humans.reserve(human_hash_.size());
|
||||||
{
|
{
|
||||||
if (frame_no % 8 < 5) {
|
if (frame_no % 8 < 5) {
|
||||||
@ -2174,11 +2174,11 @@ void Room::ProcDieAndroid(int die_time, int die_num)
|
|||||||
}
|
}
|
||||||
int dead_num = 0;
|
int dead_num = 0;
|
||||||
int try_count = 0;
|
int try_count = 0;
|
||||||
std::vector<Android*> alive_humans_copy = alive_humans;
|
std::vector<Human*> alive_humans_copy = alive_humans;
|
||||||
do {
|
do {
|
||||||
for (size_t i = 0; i < alive_humans.size(); ++i) {
|
for (size_t i = 0; i < alive_humans.size(); ++i) {
|
||||||
Android* hum = alive_humans[i];
|
Human* hum = alive_humans[i];
|
||||||
Android* killer = nullptr;
|
Human* killer = nullptr;
|
||||||
for (size_t ii = i + 1; ii < alive_humans_copy.size(); ++ii) {
|
for (size_t ii = i + 1; ii < alive_humans_copy.size(); ++ii) {
|
||||||
killer = alive_humans_copy[ii];
|
killer = alive_humans_copy[ii];
|
||||||
alive_humans.erase(alive_humans.begin() + 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() &&
|
if (hum->IsAndroid() &&
|
||||||
!hum->real_dead &&
|
!hum->real_dead &&
|
||||||
hum->team_uuid.empty() &&
|
hum->team_uuid.empty() &&
|
||||||
a8::HasBitFlag(hum->status, HS_Disable) &&
|
a8::HasBitFlag(hum->status, HS_Disable) &&
|
||||||
!HasPlayerInRound(hum->GetPos(), VIEW_RANGE)) {
|
!HasPlayerInRound(hum->GetPos(), VIEW_RANGE)) {
|
||||||
Android* hum = (Android*)hum;
|
|
||||||
alive_humans.push_back(hum);
|
alive_humans.push_back(hum);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -170,7 +170,7 @@ private:
|
|||||||
void ProcDisableHuman();
|
void ProcDisableHuman();
|
||||||
void OnHumanGridChg(Human* target);
|
void OnHumanGridChg(Human* target);
|
||||||
void ShuaGridRound(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:
|
private:
|
||||||
int elapsed_time_ = 0;
|
int elapsed_time_ = 0;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user