diff options
| author | click <clickvd@gonnamakeyou.com> | 2011-06-12 17:13:28 +0200 |
|---|---|---|
| committer | click <clickvd@gonnamakeyou.com> | 2011-06-12 17:13:28 +0200 |
| commit | b138bc31ca3742a2c11014d353c94f4e258ba8c7 (patch) | |
| tree | 42d11b4421c8a979fe3b2ad2f1a603d1297610ca /src/server/game/Entities | |
| parent | e1f7f9e5b1bbc942c9dc1eb89cf0f8a5c9df96ff (diff) | |
Scripts/EmeraldDragons: Clean up a bit on the scripts:
- Remove script for Shade of Taerar, replaced with SAI equivalent (Malcrom)
- Remove script for Demented Druids, replaced with SAI equivalent (Malcrom)
- Add supportscript for Mark of Nature (Kaelima)
- Some other minor changes here and there
Diffstat (limited to 'src/server/game/Entities')
| -rwxr-xr-x | src/server/game/Entities/Creature/Creature.cpp | 11 | ||||
| -rwxr-xr-x | src/server/game/Entities/Unit/Unit.cpp | 5 |
2 files changed, 10 insertions, 6 deletions
diff --git a/src/server/game/Entities/Creature/Creature.cpp b/src/server/game/Entities/Creature/Creature.cpp index f731ba69a54..e139c96a108 100755 --- a/src/server/game/Entities/Creature/Creature.cpp +++ b/src/server/game/Entities/Creature/Creature.cpp @@ -1823,8 +1823,11 @@ Unit* Creature::SelectNearestTargetInAttackDistance(float dist) const Unit* target = NULL; - if (dist > ATTACK_DISTANCE) - sLog->outError("Creature (GUID: %u Entry: %u) SelectNearestTargetInAttackDistance called with dist > ATTACK_DISTANCE. Extra distance ignored.", GetGUIDLow(), GetEntry()); + if (dist > MAX_VISIBILITY_DISTANCE) + { + sLog->outError("Creature (GUID: %u Entry: %u) SelectNearestTargetInAttackDistance called with dist > MAX_VISIBILITY_DISTANCE. Distance set to ATTACK_DISTANCE.", GetGUIDLow(), GetEntry()); + dist = ATTACK_DISTANCE; + } { Trinity::NearestHostileUnitInAttackDistanceCheck u_check(this, dist); @@ -1833,8 +1836,8 @@ Unit* Creature::SelectNearestTargetInAttackDistance(float dist) const TypeContainerVisitor<Trinity::UnitLastSearcher<Trinity::NearestHostileUnitInAttackDistanceCheck>, WorldTypeMapContainer > world_unit_searcher(searcher); TypeContainerVisitor<Trinity::UnitLastSearcher<Trinity::NearestHostileUnitInAttackDistanceCheck>, GridTypeMapContainer > grid_unit_searcher(searcher); - cell.Visit(p, world_unit_searcher, *GetMap(), *this, ATTACK_DISTANCE); - cell.Visit(p, grid_unit_searcher, *GetMap(), *this, ATTACK_DISTANCE); + cell.Visit(p, world_unit_searcher, *GetMap(), *this, ATTACK_DISTANCE > dist ? ATTACK_DISTANCE : dist); + cell.Visit(p, grid_unit_searcher, *GetMap(), *this, ATTACK_DISTANCE > dist ? ATTACK_DISTANCE : dist); } return target; diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 27b37dfff9f..ab38a5301f1 100755 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -12889,9 +12889,10 @@ Unit* Creature::SelectVictim() // search nearby enemy before enter evade mode if (HasReactState(REACT_AGGRESSIVE)) { - target = SelectNearestTargetInAttackDistance(); + target = SelectNearestTargetInAttackDistance(m_CombatDistance ? m_CombatDistance : ATTACK_DISTANCE); + if (target && _IsTargetAcceptable(target)) - return target; + return target; } Unit::AuraEffectList const& iAuras = GetAuraEffectsByType(SPELL_AURA_MOD_INVISIBILITY); |
