diff --git a/server/gameserver/human.cc b/server/gameserver/human.cc index b8759e6..d380a35 100644 --- a/server/gameserver/human.cc +++ b/server/gameserver/human.cc @@ -858,10 +858,9 @@ void Human::BeKill(int killer_id, const std::string& killer_name, int weapon_id) dead_frameno = room->frame_no; ++dead_times; int max_revive_times = MetaMgr::Instance()->GetSysParamAsInt("max_revive_times", 1); - if (AliveCount() >= 5 && - weapon_id != VW_Spectate && + if (weapon_id != VW_Spectate && dead_times <= max_revive_times && - room->AliveCount() > 2 && + room->AliveCount() > 5 && entity_subtype == EST_Player) { Revive(); } else {