summaryrefslogtreecommitdiff
path: root/src/server/game/Spells/Spell.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Spells/Spell.h')
-rw-r--r--src/server/game/Spells/Spell.h33
1 files changed, 10 insertions, 23 deletions
diff --git a/src/server/game/Spells/Spell.h b/src/server/game/Spells/Spell.h
index 50ba2a4bc6..bb8f2cb7bb 100644
--- a/src/server/game/Spells/Spell.h
+++ b/src/server/game/Spells/Spell.h
@@ -445,25 +445,12 @@ public:
void SelectEffectTypeImplicitTargets(uint8 effIndex);
- uint32 GetSearcherTypeMask(SpellTargetObjectTypes objType,
- std::shared_ptr<ConditionList> condList);
+ uint32 GetSearcherTypeMask(SpellTargetObjectTypes objType, ConditionList* condList);
template<class SEARCHER> void SearchTargets(SEARCHER& searcher, uint32 containerMask, Unit* referer, Position const* pos, float radius);
- WorldObject* SearchNearbyTarget(float range, SpellTargetObjectTypes objectType,
- SpellTargetCheckTypes selectionType,
- std::shared_ptr<ConditionList> condList = nullptr);
- void SearchAreaTargets(std::list<WorldObject *> &targets, float range,
- Position const *position, Unit *referer,
- SpellTargetObjectTypes objectType,
- SpellTargetCheckTypes selectionType,
- std::shared_ptr<ConditionList> condList);
- void SearchChainTargets(std::list<WorldObject *> &targets,
- uint32 chainTargets, WorldObject *target,
- SpellTargetObjectTypes objectType,
- SpellTargetCheckTypes selectType,
- SpellTargetSelectionCategories selectCategory,
- std::shared_ptr<ConditionList> condList,
- bool isChainHeal);
+ WorldObject* SearchNearbyTarget(float range, SpellTargetObjectTypes objectType, SpellTargetCheckTypes selectionType, ConditionList* condList = nullptr);
+ void SearchAreaTargets(std::list<WorldObject*>& targets, float range, Position const* position, Unit* referer, SpellTargetObjectTypes objectType, SpellTargetCheckTypes selectionType, ConditionList* condList);
+ void SearchChainTargets(std::list<WorldObject*>& targets, uint32 chainTargets, WorldObject* target, SpellTargetObjectTypes objectType, SpellTargetCheckTypes selectType, SpellTargetSelectionCategories selectCategory, ConditionList* condList, bool isChainHeal);
SpellCastResult prepare(SpellCastTargets const* targets, AuraEffect const* triggeredByAura = nullptr);
void cancel(bool bySelf = false);
@@ -814,10 +801,10 @@ namespace Acore
SpellInfo const* _spellInfo;
SpellTargetCheckTypes _targetSelectionType;
ConditionSourceInfo* _condSrcInfo;
- std::shared_ptr<ConditionList> _condList;
+ ConditionList* _condList;
WorldObjectSpellTargetCheck(Unit* caster, Unit* referer, SpellInfo const* spellInfo,
- SpellTargetCheckTypes selectionType, std::shared_ptr<ConditionList> condList);
+ SpellTargetCheckTypes selectionType, ConditionList* condList);
~WorldObjectSpellTargetCheck();
bool operator()(WorldObject* target);
};
@@ -827,7 +814,7 @@ namespace Acore
float _range;
Position const* _position;
WorldObjectSpellNearbyTargetCheck(float range, Unit* caster, SpellInfo const* spellInfo,
- SpellTargetCheckTypes selectionType, std::shared_ptr<ConditionList> condList);
+ SpellTargetCheckTypes selectionType, ConditionList* condList);
bool operator()(WorldObject* target);
};
@@ -836,7 +823,7 @@ namespace Acore
float _range;
Position const* _position;
WorldObjectSpellAreaTargetCheck(float range, Position const* position, Unit* caster,
- Unit* referer, SpellInfo const* spellInfo, SpellTargetCheckTypes selectionType, std::shared_ptr<ConditionList> condList);
+ Unit* referer, SpellInfo const* spellInfo, SpellTargetCheckTypes selectionType, ConditionList* condList);
bool operator()(WorldObject* target);
};
@@ -844,14 +831,14 @@ namespace Acore
{
float _coneAngle;
WorldObjectSpellConeTargetCheck(float coneAngle, float range, Unit* caster,
- SpellInfo const* spellInfo, SpellTargetCheckTypes selectionType, std::shared_ptr<ConditionList> condList);
+ SpellInfo const* spellInfo, SpellTargetCheckTypes selectionType, ConditionList* condList);
bool operator()(WorldObject* target);
};
struct WorldObjectSpellTrajTargetCheck : public WorldObjectSpellAreaTargetCheck
{
WorldObjectSpellTrajTargetCheck(float range, Position const* position, Unit* caster,
- SpellInfo const* spellInfo, SpellTargetCheckTypes selectionType, std::shared_ptr<ConditionList> condList);
+ SpellInfo const* spellInfo, SpellTargetCheckTypes selectionType, ConditionList* condList);
bool operator()(WorldObject* target);
};
}