diff --git a/server/gameserver/human.cc b/server/gameserver/human.cc index 43307149..f4533ad0 100644 --- a/server/gameserver/human.cc +++ b/server/gameserver/human.cc @@ -2410,12 +2410,18 @@ void Human::OnBulletHit(IBullet* bullet) (bullet->GetGunMeta()->id(), finaly_dmg); } float dmg_out = 0.0f; + int real_killer_id = bullet->GetSender().Get()->GetUniId(); + std::string real_killer_name = bullet->GetSender().Get()->GetName(); + if (bullet->GetSender().Get()->master.Get()) { + real_killer_id = bullet->GetSender().Get()->master.Get()->GetUniId(); + real_killer_name = bullet->GetSender().Get()->master.Get()->GetName(); + } DecHP(finaly_dmg, bullet->GetSender().Get()->GetUniId(), bullet->GetSender().Get()->GetName(), bullet->GetGunMeta()->id(), - bullet->GetSender().Get()->GetUniId(), - bullet->GetSender().Get()->GetName(), + real_killer_id, + real_killer_name, dmg_out, 0, dmg_bp);