diff --git a/server/gameserver/human.cc b/server/gameserver/human.cc index a696a29..495e663 100644 --- a/server/gameserver/human.cc +++ b/server/gameserver/human.cc @@ -848,13 +848,6 @@ 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 1 - ++max_revive_times; - #else - if (today_enter_times == 0) { - ++max_revive_times; - } - #endif if (weapon_id != VW_Spectate && dead_times <= max_revive_times && room->AliveCount() > 2 && @@ -1348,7 +1341,7 @@ void Human::RecalcBaseAttr() if (helmet_meta) { ability.def += helmet_meta->i->def(); } - ability.max_hp = ability.hp; + ability.max_hp = std::max(ability.hp, ability.max_hp); } int Human::GetInventory(int slot_id) diff --git a/server/gameserver/player.cc b/server/gameserver/player.cc index 59f6a32..e0d1e09 100644 --- a/server/gameserver/player.cc +++ b/server/gameserver/player.cc @@ -133,6 +133,7 @@ void Player::UpdateMove() void Player::UpdateShot() { if (dead || + downed || room->waiting_start || a8::HasBitFlag(status, HS_Fly) || a8::HasBitFlag(status, HS_Jump) ) {