mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-22 23:30:14 +00:00
feat: show absorb/resist on periodic damage (DoT) ticks
SMSG_PERIODICAURALOG already parsed abs/res fields for type 3/89 but discarded them. Surface these as ABSORB/RESIST combat text so players see when DoT ticks are being partially absorbed (e.g. vs. PW:Shield).
This commit is contained in:
parent
dfc78572f5
commit
031448ec6d
1 changed files with 11 additions and 4 deletions
|
|
@ -3476,10 +3476,17 @@ void GameHandler::handlePacket(network::Packet& packet) {
|
|||
if (packet.getSize() - packet.getReadPos() < 16) break;
|
||||
uint32_t dmg = packet.readUInt32();
|
||||
/*uint32_t school=*/ packet.readUInt32();
|
||||
/*uint32_t abs=*/ packet.readUInt32();
|
||||
/*uint32_t res=*/ packet.readUInt32();
|
||||
addCombatText(CombatTextEntry::PERIODIC_DAMAGE, static_cast<int32_t>(dmg),
|
||||
spellId, isPlayerCaster);
|
||||
uint32_t abs = packet.readUInt32();
|
||||
uint32_t res = packet.readUInt32();
|
||||
if (dmg > 0)
|
||||
addCombatText(CombatTextEntry::PERIODIC_DAMAGE, static_cast<int32_t>(dmg),
|
||||
spellId, isPlayerCaster);
|
||||
if (abs > 0)
|
||||
addCombatText(CombatTextEntry::ABSORB, static_cast<int32_t>(abs),
|
||||
spellId, isPlayerCaster);
|
||||
if (res > 0)
|
||||
addCombatText(CombatTextEntry::RESIST, static_cast<int32_t>(res),
|
||||
spellId, isPlayerCaster);
|
||||
} else if (auraType == 8 || auraType == 124 || auraType == 45) {
|
||||
// PERIODIC_HEAL / PERIODIC_HEAL_PCT / OBS_MOD_HEALTH: heal+maxHeal+overHeal
|
||||
if (packet.getSize() - packet.getReadPos() < 12) break;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue