diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/game/GroupHandler.cpp | 4 | ||||
-rw-r--r-- | src/game/Spell.cpp | 3 | ||||
-rw-r--r-- | src/game/Unit.cpp | 4 |
3 files changed, 8 insertions, 3 deletions
diff --git a/src/game/GroupHandler.cpp b/src/game/GroupHandler.cpp index a283a6baff5..f35c60aa81c 100644 --- a/src/game/GroupHandler.cpp +++ b/src/game/GroupHandler.cpp @@ -722,7 +722,7 @@ void WorldSession::BuildPartyMemberStatsChangedPacket(Player *player, WorldPacke { if(auramask & (uint64(1) << i)) { - uint32 updatedAura=player->GetUInt32Value(UNIT_FIELD_AURA + i); + uint32 updatedAura=player->GetUInt32Value(uint16(UNIT_FIELD_AURA + i)); *data << uint16(updatedAura); *data << uint8(1); //TODO: find a safe place to do this cleanup @@ -807,7 +807,7 @@ void WorldSession::BuildPartyMemberStatsChangedPacket(Player *player, WorldPacke { if(auramask & (uint64(1) << i)) { - uint32 updatedAura=pet->GetUInt32Value(UNIT_FIELD_AURA + i); + uint32 updatedAura=pet->GetUInt32Value(uint16(UNIT_FIELD_AURA + i)); *data << uint16(updatedAura); *data << uint8(1); //TODO: find a safe place to do this cleanup diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index 90a22d963e9..8f8118e48e2 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -1171,7 +1171,10 @@ void Spell::DoSpellHitOnUnit(Unit *unit, const uint32 effectMask) // assisting case, healing and resurrection if(unit->hasUnitState(UNIT_STAT_ATTACK_PLAYER)) + { m_caster->SetContestedPvP(); + if m_caster->UpdatePvP(true); + } if( unit->isInCombat() && !(m_spellInfo->AttributesEx3 & SPELL_ATTR_EX3_NO_INITIAL_AGGRO) ) { m_caster->SetInCombatState(unit->GetCombatTimer() > 0); diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index 0a6cf93be76..8f5462cea81 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -5502,7 +5502,7 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura* triggeredByAu // 41409 Dementia: Every 5 seconds either gives you -5% damage/healing. (Druid, Shaman, Priest, Warlock, Mage, Paladin) case 39446: { - if(GetTypeId() != TYPEID_PLAYER) + if(GetTypeId() != TYPEID_PLAYER || !this->isAlive()) return false; // Select class defined buff @@ -12635,6 +12635,8 @@ bool Unit::HandleMeandingAuraProc( Aura* triggeredByAura ) caster->AddSpellMod(mod, true); CastCustomSpell(target,spellProto->Id,&heal,NULL,NULL,true,NULL,triggeredByAura,caster->GetGUID()); caster->AddSpellMod(mod, false); + + heal = caster->SpellHealingBonus(spellProto, heal, HEAL, this); } } } |