mirror of
https://github.com/mangosfour/server.git
synced 2025-12-12 10:37:03 +00:00
[10767] Show <overkill> value in combat logs.
Signed-off-by: Ambal <pogrebniak@gala.net>
This commit is contained in:
parent
06e8d8c0ea
commit
272fa74854
4 changed files with 18 additions and 12 deletions
|
|
@ -1755,12 +1755,15 @@ void Unit::DealMeleeDamage(CalcDamageInfo *damageInfo, bool durabilityLoss)
|
|||
|
||||
pVictim->DealDamageMods(this,damage,NULL);
|
||||
|
||||
uint32 targetHealth = GetHealth();
|
||||
uint32 overkill = damage > targetHealth ? damage - targetHealth : 0;
|
||||
|
||||
WorldPacket data(SMSG_SPELLDAMAGESHIELD,(8+8+4+4+4+4));
|
||||
data << pVictim->GetObjectGuid();
|
||||
data << GetObjectGuid();
|
||||
data << uint32(i_spellProto->Id);
|
||||
data << uint32(damage); // Damage
|
||||
data << uint32(0); // Overkill
|
||||
data << uint32(overkill); // Overkill
|
||||
data << uint32(i_spellProto->SchoolMask);
|
||||
pVictim->SendMessageToSet(&data, true );
|
||||
|
||||
|
|
@ -5072,12 +5075,15 @@ void Unit::RemoveAllGameObjects()
|
|||
|
||||
void Unit::SendSpellNonMeleeDamageLog(SpellNonMeleeDamage *log)
|
||||
{
|
||||
uint32 targetHealth = log->target->GetHealth();
|
||||
uint32 overkill = log->damage > targetHealth ? log->damage - targetHealth : 0;
|
||||
|
||||
WorldPacket data(SMSG_SPELLNONMELEEDAMAGELOG, (16+4+4+4+1+4+4+1+1+4+4+1)); // we guess size
|
||||
data << log->target->GetPackGUID();
|
||||
data << log->attacker->GetPackGUID();
|
||||
data << uint32(log->SpellID);
|
||||
data << uint32(log->damage); // damage amount
|
||||
data << uint32(log->overkill); // overkill
|
||||
data << uint32(overkill); // overkill
|
||||
data << uint8 (log->schoolMask); // damage school
|
||||
data << uint32(log->absorb); // AbsorbedDamage
|
||||
data << uint32(log->resist); // resist
|
||||
|
|
@ -5179,13 +5185,16 @@ void Unit::SendAttackStateUpdate(CalcDamageInfo *damageInfo)
|
|||
{
|
||||
DEBUG_FILTER_LOG(LOG_FILTER_COMBAT, "WORLD: Sending SMSG_ATTACKERSTATEUPDATE");
|
||||
|
||||
uint32 targetHealth = damageInfo->target->GetHealth();
|
||||
uint32 overkill = damageInfo->damage > targetHealth ? damageInfo->damage - targetHealth : 0;
|
||||
|
||||
uint32 count = 1;
|
||||
WorldPacket data(SMSG_ATTACKERSTATEUPDATE, 16 + 45); // we guess size
|
||||
data << uint32(damageInfo->HitInfo);
|
||||
data << damageInfo->attacker->GetPackGUID();
|
||||
data << damageInfo->target->GetPackGUID();
|
||||
data << uint32(damageInfo->damage); // Full damage
|
||||
data << uint32(0); // overkill value
|
||||
data << uint32(overkill); // overkill value
|
||||
data << uint8(count); // Sub damage count
|
||||
|
||||
for(uint32 i = 0; i < count; ++i)
|
||||
|
|
@ -10785,4 +10794,4 @@ bool Unit::IsAllowedDamageInArea(Unit* pVictim) const
|
|||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue