diff options
author | Rat <gmstreetrat@gmail.com> | 2015-03-23 07:42:50 +0100 |
---|---|---|
committer | Rat <gmstreetrat@gmail.com> | 2015-03-23 07:42:50 +0100 |
commit | 930b74d0cad2623cd6d7455df58e9908ab5dcd2c (patch) | |
tree | 339ff7b427f4564fc1730dcf842fbf46674baa3e /src | |
parent | 594a0a0a8180c020cea9632ca4463959c93845f7 (diff) |
Core/Spells: Spell radius calculation update
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/DataStores/DBCStructure.h | 4 | ||||
-rw-r--r-- | src/server/game/Spells/SpellInfo.cpp | 5 |
2 files changed, 7 insertions, 2 deletions
diff --git a/src/server/game/DataStores/DBCStructure.h b/src/server/game/DataStores/DBCStructure.h index c26898abf21..f997aaf776f 100644 --- a/src/server/game/DataStores/DBCStructure.h +++ b/src/server/game/DataStores/DBCStructure.h @@ -1564,8 +1564,8 @@ struct SpellRadiusEntry { uint32 ID; // 0 //float Radius; // 1 - float RadiusMin; // 2 - float RadiusPerLevel; // 3 + float RadiusPerLevel; // 2 + float RadiusMin; // 3 float RadiusMax; // 4 }; diff --git a/src/server/game/Spells/SpellInfo.cpp b/src/server/game/Spells/SpellInfo.cpp index 2a72cdc49be..eb09cc60a1f 100644 --- a/src/server/game/Spells/SpellInfo.cpp +++ b/src/server/game/Spells/SpellInfo.cpp @@ -642,6 +642,11 @@ float SpellEffectInfo::CalcRadius(Unit* caster, Spell* spell) const return 0.0f; float radius = entry->RadiusMin; + + // Client uses max if min is 0 + if (radius == 0.0f) + radius = entry->RadiusMax; + if (caster) { radius += entry->RadiusPerLevel * caster->getLevel(); |