diff options
-rw-r--r-- | src/server/game/Spells/Spell.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Spells/Spell.h | 5 | ||||
-rw-r--r-- | src/server/game/Time/GameTime.cpp | 4 | ||||
-rw-r--r-- | src/server/game/Time/GameTime.h | 3 |
4 files changed, 12 insertions, 2 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index 03514bc7ef9..cceb6c0a481 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -2188,6 +2188,8 @@ void Spell::SearchTargets(SEARCHER& searcher, uint32 containerMask, WorldObject* } } +template TC_GAME_API void Spell::SearchTargets<Trinity::WorldObjectListSearcher<Trinity::WorldObjectSpellAreaTargetCheck>>(Trinity::WorldObjectListSearcher<Trinity::WorldObjectSpellAreaTargetCheck>& searcher, uint32 containerMask, WorldObject* referer, Position const* pos, float radius); + WorldObject* Spell::SearchNearbyTarget(SpellEffectInfo const& spellEffectInfo, float range, SpellTargetObjectTypes objectType, SpellTargetCheckTypes selectionType, ConditionContainer const* condList) { WorldObject* target = nullptr; diff --git a/src/server/game/Spells/Spell.h b/src/server/game/Spells/Spell.h index e9ec910e322..cf6cef6fa8e 100644 --- a/src/server/game/Spells/Spell.h +++ b/src/server/game/Spells/Spell.h @@ -71,6 +71,9 @@ enum WeaponAttackType : uint8; namespace Trinity { enum class WorldObjectSpellAreaTargetSearchReason; + +template <class Check> +struct WorldObjectListSearcher; } #define SPELL_CHANNEL_UPDATE_INTERVAL (1 * IN_MILLISECONDS) @@ -1011,6 +1014,8 @@ namespace Trinity TC_GAME_API void SelectRandomInjuredTargets(std::list<WorldObject*>& targets, size_t maxTargets, bool prioritizePlayers, Unit const* prioritizeGroupMembersOf = nullptr); } +extern template void Spell::SearchTargets<Trinity::WorldObjectListSearcher<Trinity::WorldObjectSpellAreaTargetCheck>>(Trinity::WorldObjectListSearcher<Trinity::WorldObjectSpellAreaTargetCheck>& searcher, uint32 containerMask, WorldObject* referer, Position const* pos, float radius); + using SpellEffectHandlerFn = void(Spell::*)(); #endif diff --git a/src/server/game/Time/GameTime.cpp b/src/server/game/Time/GameTime.cpp index 3175c0e5571..2a2797b97e0 100644 --- a/src/server/game/Time/GameTime.cpp +++ b/src/server/game/Time/GameTime.cpp @@ -68,13 +68,13 @@ namespace GameTime } template<> - TC_GAME_API SystemTimePoint GetTime<std::chrono::system_clock>() + SystemTimePoint GetTime<std::chrono::system_clock>() { return GetSystemTime(); } template<> - TC_GAME_API TimePoint GetTime<std::chrono::steady_clock>() + TimePoint GetTime<std::chrono::steady_clock>() { return Now(); } diff --git a/src/server/game/Time/GameTime.h b/src/server/game/Time/GameTime.h index 7b18b030d2c..4c182553efd 100644 --- a/src/server/game/Time/GameTime.h +++ b/src/server/game/Time/GameTime.h @@ -54,6 +54,9 @@ namespace GameTime TC_GAME_API WowTime const* GetWowTime(); void UpdateGameTimers(); + + template<> TC_GAME_API SystemTimePoint GetTime<std::chrono::system_clock>(); + template<> TC_GAME_API TimePoint GetTime<std::chrono::steady_clock>(); } #endif |