From 49286ef1472ee00769b9bd8f3e1f8372ff15d51b Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Tue, 15 Nov 2022 21:00:44 +0800 Subject: [PATCH] 1 --- server/gameserver/bullet.cc | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/server/gameserver/bullet.cc b/server/gameserver/bullet.cc index 25b1fef2..970324a1 100644 --- a/server/gameserver/bullet.cc +++ b/server/gameserver/bullet.cc @@ -85,9 +85,9 @@ void Bullet::OnHit(std::set& objects) if (sender.Get() && !sender.Get()->dead) { for (auto& target : objects) { Creature* c = target->IsCreature(room) ? (Creature*)target : nullptr; - if (!(c && c->IsCar())) { - ProcFlyHook(target); - if (!c || (c->team_id != sender.Get()->team_id)) { + ProcFlyHook(target); + if (!c || (c->team_id != sender.Get()->team_id)) { + if (!c || !c->IsCar()) { target->OnBulletHit(this); } } @@ -865,8 +865,8 @@ void Bullet::ProcFlyHook(Entity* target) return; } - if (target->IsCreature(room)) { - Creature* c = (Creature*)target; + Creature* c = (Creature*)target; + if (target->IsCreature(room) && !c->IsCar()) { room->frame_event.AddPropChg(c->GetWeakPtrRef(), kPropBeHook, 0, sender.Get()->GetUniId()); std::vector buff_uniids; for (int buff_id : gun_meta->hit_buff_list) {