From cf49d9a30d0a1f701f2f698ada486da2a7f01753 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Thu, 17 Jun 2021 20:04:19 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=8C=87=E5=AE=9A=E6=9E=AA=E6=A2=B0=EF=BC=8C?= =?UTF-8?q?=E6=9C=AA=E5=AF=B9=E7=89=B9=E5=AE=9A=E5=9C=BA=E6=99=AF=E9=83=A8?= =?UTF-8?q?=E4=BB=B6=E6=9C=89=E4=BC=A4=E5=AE=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/gameserver/obstacle.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/server/gameserver/obstacle.cc b/server/gameserver/obstacle.cc index 2097c5c..bb8426e 100644 --- a/server/gameserver/obstacle.cc +++ b/server/gameserver/obstacle.cc @@ -558,6 +558,10 @@ void Obstacle::OnBulletHit(Bullet* bullet) if (!IsDead(bullet->room) && Attackable() && !IsTerminatorAirDropBox(bullet->room)) { + if (meta->receive_special_damage_type != 0 && + ((bullet->gun_meta->special_damage_type & meta->receive_special_damage_type) == 0)) { + return; + } float dmg = bullet->GetAtk() * (1 + bullet->sender.Get()->GetAttrRate(kHAT_Atk)) + bullet->sender.Get()->GetAttrAbs(kHAT_Atk); float def = 0;