修复匹配到5个人问题
This commit is contained in:
parent
724dc3ab72
commit
d984b10cc4
@ -1298,6 +1298,10 @@ void Room::CombineTeam()
|
|||||||
need_combine_teams_copy.erase(team_id1);
|
need_combine_teams_copy.erase(team_id1);
|
||||||
} else {
|
} else {
|
||||||
pair1.second = new_team_num;
|
pair1.second = new_team_num;
|
||||||
|
if (need_combine_teams_copy.find(pair1.first) !=
|
||||||
|
need_combine_teams_copy.end()) {
|
||||||
|
need_combine_teams_copy[pair1.first] = new_team_num;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
need_combine_teams.erase(team_id2);
|
need_combine_teams.erase(team_id2);
|
||||||
need_combine_teams_copy.erase(team_id2);
|
need_combine_teams_copy.erase(team_id2);
|
||||||
@ -1308,6 +1312,10 @@ void Room::CombineTeam()
|
|||||||
need_combine_teams_copy.erase(team_id1);
|
need_combine_teams_copy.erase(team_id1);
|
||||||
} else {
|
} else {
|
||||||
pair1.second = new_team_num;
|
pair1.second = new_team_num;
|
||||||
|
if (need_combine_teams_copy.find(pair1.first) !=
|
||||||
|
need_combine_teams_copy.end()) {
|
||||||
|
need_combine_teams_copy[pair1.first] = new_team_num;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
need_combine_teams.erase(team_id2);
|
need_combine_teams.erase(team_id2);
|
||||||
need_combine_teams_copy.erase(team_id2);
|
need_combine_teams_copy.erase(team_id2);
|
||||||
@ -1317,6 +1325,10 @@ void Room::CombineTeam()
|
|||||||
need_combine_teams_copy.erase(team_id2);
|
need_combine_teams_copy.erase(team_id2);
|
||||||
} else {
|
} else {
|
||||||
pair2.second = new_team_num;
|
pair2.second = new_team_num;
|
||||||
|
if (need_combine_teams.find(pair2.first) !=
|
||||||
|
need_combine_teams.end()) {
|
||||||
|
need_combine_teams[pair2.first] = new_team_num;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
need_combine_teams.erase(team_id1);
|
need_combine_teams.erase(team_id1);
|
||||||
need_combine_teams_copy.erase(team_id1);
|
need_combine_teams_copy.erase(team_id1);
|
||||||
@ -1748,9 +1760,6 @@ void Room::SecondRandPoint()
|
|||||||
hum->born_point = AllocBornPoint(hum);
|
hum->born_point = AllocBornPoint(hum);
|
||||||
}
|
}
|
||||||
for (auto& pair : team_hash_) {
|
for (auto& pair : team_hash_) {
|
||||||
if (pair.second.size() < 2) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
Human* target = nullptr;
|
Human* target = nullptr;
|
||||||
for (Human* hum : pair.second) {
|
for (Human* hum : pair.second) {
|
||||||
if (!target) {
|
if (!target) {
|
||||||
@ -1761,18 +1770,20 @@ void Room::SecondRandPoint()
|
|||||||
DecBornPointHumanNum(hum->born_point, hum);
|
DecBornPointHumanNum(hum->born_point, hum);
|
||||||
}
|
}
|
||||||
hum->born_point = target->born_point;
|
hum->born_point = target->born_point;
|
||||||
if (!hum->born_point) {
|
if (hum->born_point) {
|
||||||
hum->SetX(DEFAULT_BORN_POINT_X + rand() % 100);
|
|
||||||
hum->SetY(DEFAULT_BORN_POINT_Y + rand() % 200);
|
|
||||||
} else {
|
|
||||||
IncBornPointHumanNum(hum->born_point, hum);
|
IncBornPointHumanNum(hum->born_point, hum);
|
||||||
hum->SetPos(hum->born_point->RandPoint());
|
|
||||||
}
|
}
|
||||||
hum->FindLocation();
|
|
||||||
hum->RefreshView();
|
|
||||||
grid_service.MoveHuman(hum);
|
|
||||||
}
|
}
|
||||||
|
} //end if
|
||||||
|
if (!hum->born_point) {
|
||||||
|
hum->SetX(DEFAULT_BORN_POINT_X + rand() % 100);
|
||||||
|
hum->SetY(DEFAULT_BORN_POINT_Y + rand() % 200);
|
||||||
|
} else {
|
||||||
|
hum->SetPos(hum->born_point->RandPoint());
|
||||||
}
|
}
|
||||||
|
hum->FindLocation();
|
||||||
|
hum->RefreshView();
|
||||||
|
grid_service.MoveHuman(hum);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user