diff --git a/server/gameserver/human.cc b/server/gameserver/human.cc index 6dd12121..c202eb71 100644 --- a/server/gameserver/human.cc +++ b/server/gameserver/human.cc @@ -1037,7 +1037,7 @@ void Human::FillSMGameOver(cs::SMGameOver& msg) { msg.set_total_team_num(room->GetTeamNum()); if (room->IsPveRoom()) { - msg.set_pve_wave(room->pve_data.GetWave()); + msg.set_pve_wave(room->pve_data.GetWave() + 1); msg.set_pve_max_wave(room->pve_data.max_wave); msg.set_pve_instance_id(room->pve_instance->pb->gemini_id()); } @@ -1058,7 +1058,7 @@ void Human::FillSMGameOver(cs::SMGameOver& msg) { if (room->IsPveRoom()) { msg.set_mode(GetTeam()->GetMemberNum() <= 1 ? 1 : 2); - msg.set_my_rank(room->pve_data.GetWave()); + msg.set_my_rank(room->pve_data.GetWave() + 1); msg.set_max_rank(room->pve_data.max_wave); } else { if (GetTeam()->GetMemberNum() <= 1) { diff --git a/server/gameserver/incubator.cc b/server/gameserver/incubator.cc index 0b7ce976..1b205561 100644 --- a/server/gameserver/incubator.cc +++ b/server/gameserver/incubator.cc @@ -383,12 +383,6 @@ int Incubator::GetPveLeftTime() return remain_time * FRAME_RATE_MS; } -bool Incubator::IsLastWave() -{ - return room->pve_data.GetWave() >= room->pve_mode_meta->waves.size(); -} - - void Incubator::NextWave() { if (room->pve_data.GetWave() < wave_timers_.size()) { diff --git a/server/gameserver/incubator.h b/server/gameserver/incubator.h index 635f3bd8..9164ed34 100644 --- a/server/gameserver/incubator.h +++ b/server/gameserver/incubator.h @@ -16,7 +16,6 @@ class Incubator void ActiveAndroid(Human* hum, Human* android); bool IsTimeOut() { return timeout_; }; int GetPveLeftTime(); - bool IsLastWave(); void NextWave(); private: diff --git a/server/gameserver/room.cc b/server/gameserver/room.cc index 0668651b..6c4ade2f 100644 --- a/server/gameserver/room.cc +++ b/server/gameserver/room.cc @@ -1193,13 +1193,8 @@ void Room::UpdateGas() ( pve_data.pve_kill_boss || IsAllRealDead() || - incubator_->IsTimeOut() || - ( - incubator_->IsLastWave() && - pve_data.refreshed_mon > 0 && - pve_data.killed_num >= pve_data.refreshed_mon) - ) - ) { + incubator_->IsTimeOut() + )) { game_over_ = true; game_over_frameno_ = GetFrameNo(); OnGameOver();