From ad48dd2695730aa93f503155193b908c7a1f80bb Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Thu, 25 Jan 2024 14:08:50 +0800 Subject: [PATCH] 1 --- server/gameserver/bullet.cc | 3 +++ server/gameserver/creature.cc | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/server/gameserver/bullet.cc b/server/gameserver/bullet.cc index 60e5ec1c..7ec5133a 100644 --- a/server/gameserver/bullet.cc +++ b/server/gameserver/bullet.cc @@ -904,6 +904,9 @@ void Bullet::GetHitCreatures(BulletCheckResult& result) if (c->HasBuffEffect(kBET_BulletThrough)) { return; } + if (c->HasBuffEffect(kBET_Dive)) { + return; + } if (c->HasBuffEffect(kBET_HoldShield)) { c->CheckBulletHitHoldShield(this, result.eat); if (result.eat) { diff --git a/server/gameserver/creature.cc b/server/gameserver/creature.cc index 1caff6b4..30c03bc6 100644 --- a/server/gameserver/creature.cc +++ b/server/gameserver/creature.cc @@ -1122,7 +1122,7 @@ void Creature::Initialize() [this, nature_recover_hp_timer] (int event, const a8::Args* args) mutable { if (a8::TIMER_EXEC_EVENT == event) { - if (nature_recover_hp_timer.expired()) { + if (nature_recover_hp_timer.expired() && !HasBuffEffect(kBET_Dive)) { nature_recover_hp_timer = room->xtimer.SetIntervalWpEx ( SERVER_FRAME_RATE * mt::Param::s().nature_recover_hp_interval,