From 611b53fab86ab93d06c2a7e00cc3377342fcba98 Mon Sep 17 00:00:00 2001 From: zergtmn Date: Tue, 18 May 2010 14:18:45 +0400 Subject: [PATCH] [9926] Typos in Unit::DealDamageMods Can be source very strange damage/absorb and any near stored/calculated in memory values. and crashes also. Signed-off-by: VladimirMangos --- src/game/Unit.cpp | 6 +++--- src/shared/revision_nr.h | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index cdd19e222..5caee7242 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -495,7 +495,7 @@ void Unit::DealDamageMods(Unit *pVictim, uint32 &damage, uint32* absorb) if (!pVictim->isAlive() || pVictim->isInFlight() || pVictim->GetTypeId() == TYPEID_UNIT && ((Creature*)pVictim)->IsInEvadeMode()) { if(absorb) - absorb += damage; + *absorb += damage; damage = 0; return; } @@ -508,7 +508,7 @@ void Unit::DealDamageMods(Unit *pVictim, uint32 &damage, uint32* absorb) if(area && area->flags & AREA_FLAG_SANCTUARY) //sanctuary { if(absorb) - absorb += damage; + *absorb += damage; damage = 0; } } @@ -523,7 +523,7 @@ void Unit::DealDamageMods(Unit *pVictim, uint32 &damage, uint32* absorb) ((Creature *)pVictim)->AI()->DamageTaken(this, damage); if(absorb && originalDamage > damage) - absorb += (originalDamage - damage); + *absorb += (originalDamage - damage); } uint32 Unit::DealDamage(Unit *pVictim, uint32 damage, CleanDamage const* cleanDamage, DamageEffectType damagetype, SpellSchoolMask damageSchoolMask, SpellEntry const *spellProto, bool durabilityLoss) diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 88829c20e..c53d0fb0d 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "9925" + #define REVISION_NR "9926" #endif // __REVISION_NR_H__