TrinityCore
CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base > Class Template Reference

This hook is responsible for swapping Creature, GameObject and AreaTrigger AI's. More...

+ Inheritance diagram for CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >:

Classes

class  AIFunctionMapWorker
 
class  AsyncCastHotswapEffectEvent
 

Public Member Functions

void BeforeReleaseContext (std::string const &context) final override
 Called before the actual context release happens. More...
 
void BeforeSwapContext (bool initialize) override
 Called before SwapContext. More...
 
void BeforeUnload () final override
 Called before Unload. More...
 
void OnScriptNamesSync () final override
 Called manually to sync scriptnames. More...
 
- Public Member Functions inherited from ScriptRegistrySwapHookBase
 ScriptRegistrySwapHookBase ()
 
virtual ~ScriptRegistrySwapHookBase ()
 
 ScriptRegistrySwapHookBase (ScriptRegistrySwapHookBase const &)=delete
 
 ScriptRegistrySwapHookBase (ScriptRegistrySwapHookBase &&)=delete
 
ScriptRegistrySwapHookBaseoperator= (ScriptRegistrySwapHookBase const &)=delete
 
ScriptRegistrySwapHookBaseoperator= (ScriptRegistrySwapHookBase &&)=delete
 
virtual void BeforeReleaseContext (std::string const &)
 Called before the actual context release happens. More...
 
virtual void BeforeSwapContext (bool)
 Called before SwapContext. More...
 
virtual void BeforeUnload ()
 Called before Unload. More...
 
virtual void OnScriptNamesSync ()
 Called manually to sync scriptnames. More...
 

Static Private Member Functions

static void UnloadResetScript (Creature *creature)
 
static void UnloadDestroyScript (Creature *creature)
 
static void UnloadResetScript (GameObject *gameobject)
 
static void UnloadDestroyScript (GameObject *gameobject)
 
static void UnloadResetScript (AreaTrigger *at)
 
static void UnloadDestroyScript (AreaTrigger *at)
 
static void LoadInitializeScript (Creature *creature)
 
static void LoadResetScript (Creature *creature)
 
static void LoadInitializeScript (GameObject *gameobject)
 
static void LoadResetScript (GameObject *gameobject)
 
static void LoadInitializeScript (AreaTrigger *at)
 
static void LoadResetScript (AreaTrigger *at)
 
static CreatureGetEntityFromMap (std::common_type< Creature >, Map *map, ObjectGuid const &guid)
 
static GameObjectGetEntityFromMap (std::common_type< GameObject >, Map *map, ObjectGuid const &guid)
 
static AreaTriggerGetEntityFromMap (std::common_type< AreaTrigger >, Map *map, ObjectGuid const &guid)
 
static auto VisitObjectsToSwapOnMap (std::unordered_set< uint32 > const &idsToRemove)
 
static auto VisitObjectsWhereIdWasUpdated ()
 
template<typename T >
static void DestroyScriptIdsWithVisitor (T &&visitor)
 
template<typename T >
static void InitializeScriptIdsWithVisitor (T &&visitor)
 

Private Attributes

std::unordered_set< uint32ids_removed_
 

Detailed Description

template<typename ObjectType, typename ScriptType, typename Base>
class CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >

This hook is responsible for swapping Creature, GameObject and AreaTrigger AI's.

Definition at line 385 of file ScriptMgr.cpp.

Member Function Documentation

◆ BeforeReleaseContext()

template<typename ObjectType , typename ScriptType , typename Base >
void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::BeforeReleaseContext ( std::string const &  )
inlinefinaloverridevirtual

Called before the actual context release happens.

Reimplemented from ScriptRegistrySwapHookBase.

Definition at line 688 of file ScriptMgr.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ BeforeSwapContext()

template<typename ObjectType , typename ScriptType , typename Base >
void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::BeforeSwapContext ( bool  )
inlineoverridevirtual

Called before SwapContext.

Reimplemented from ScriptRegistrySwapHookBase.

Definition at line 697 of file ScriptMgr.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ BeforeUnload()

template<typename ObjectType , typename ScriptType , typename Base >
void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::BeforeUnload ( )
inlinefinaloverridevirtual

Called before Unload.

Reimplemented from ScriptRegistrySwapHookBase.

Definition at line 715 of file ScriptMgr.cpp.

+ Here is the caller graph for this function:

◆ DestroyScriptIdsWithVisitor()

template<typename ObjectType , typename ScriptType , typename Base >
template<typename T >
static void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::DestroyScriptIdsWithVisitor ( T &&  visitor)
inlinestaticprivate

Definition at line 629 of file ScriptMgr.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetEntityFromMap() [1/3]

template<typename ObjectType , typename ScriptType , typename Base >
static AreaTrigger * CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::GetEntityFromMap ( std::common_type< AreaTrigger ,
Map map,
ObjectGuid const &  guid 
)
inlinestaticprivate

Definition at line 556 of file ScriptMgr.cpp.

+ Here is the call graph for this function:

◆ GetEntityFromMap() [2/3]

template<typename ObjectType , typename ScriptType , typename Base >
static Creature * CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::GetEntityFromMap ( std::common_type< Creature ,
Map map,
ObjectGuid const &  guid 
)
inlinestaticprivate

Definition at line 546 of file ScriptMgr.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetEntityFromMap() [3/3]

template<typename ObjectType , typename ScriptType , typename Base >
static GameObject * CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::GetEntityFromMap ( std::common_type< GameObject ,
Map map,
ObjectGuid const &  guid 
)
inlinestaticprivate

Definition at line 551 of file ScriptMgr.cpp.

+ Here is the call graph for this function:

◆ InitializeScriptIdsWithVisitor()

template<typename ObjectType , typename ScriptType , typename Base >
template<typename T >
static void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::InitializeScriptIdsWithVisitor ( T &&  visitor)
inlinestaticprivate

Definition at line 657 of file ScriptMgr.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ LoadInitializeScript() [1/3]

template<typename ObjectType , typename ScriptType , typename Base >
static void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::LoadInitializeScript ( AreaTrigger at)
inlinestaticprivate

Definition at line 533 of file ScriptMgr.cpp.

+ Here is the call graph for this function:

◆ LoadInitializeScript() [2/3]

template<typename ObjectType , typename ScriptType , typename Base >
static void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::LoadInitializeScript ( Creature creature)
inlinestaticprivate

Definition at line 488 of file ScriptMgr.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ LoadInitializeScript() [3/3]

template<typename ObjectType , typename ScriptType , typename Base >
static void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::LoadInitializeScript ( GameObject gameobject)
inlinestaticprivate

Definition at line 519 of file ScriptMgr.cpp.

+ Here is the call graph for this function:

◆ LoadResetScript() [1/3]

template<typename ObjectType , typename ScriptType , typename Base >
static void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::LoadResetScript ( AreaTrigger at)
inlinestaticprivate

Definition at line 541 of file ScriptMgr.cpp.

+ Here is the call graph for this function:

◆ LoadResetScript() [2/3]

template<typename ObjectType , typename ScriptType , typename Base >
static void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::LoadResetScript ( Creature creature)
inlinestaticprivate

Definition at line 502 of file ScriptMgr.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ LoadResetScript() [3/3]

template<typename ObjectType , typename ScriptType , typename Base >
static void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::LoadResetScript ( GameObject gameobject)
inlinestaticprivate

Definition at line 527 of file ScriptMgr.cpp.

+ Here is the call graph for this function:

◆ OnScriptNamesSync()

template<typename ObjectType , typename ScriptType , typename Base >
void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::OnScriptNamesSync ( )
inlinefinaloverridevirtual

Called manually to sync scriptnames.

Reimplemented from ScriptRegistrySwapHookBase.

Definition at line 720 of file ScriptMgr.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ UnloadDestroyScript() [1/3]

template<typename ObjectType , typename ScriptType , typename Base >
static void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::UnloadDestroyScript ( AreaTrigger at)
inlinestaticprivate

Definition at line 479 of file ScriptMgr.cpp.

+ Here is the call graph for this function:

◆ UnloadDestroyScript() [2/3]

template<typename ObjectType , typename ScriptType , typename Base >
static void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::UnloadDestroyScript ( Creature creature)
inlinestaticprivate

Definition at line 440 of file ScriptMgr.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ UnloadDestroyScript() [3/3]

template<typename ObjectType , typename ScriptType , typename Base >
static void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::UnloadDestroyScript ( GameObject gameobject)
inlinestaticprivate

Definition at line 461 of file ScriptMgr.cpp.

◆ UnloadResetScript() [1/3]

template<typename ObjectType , typename ScriptType , typename Base >
static void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::UnloadResetScript ( AreaTrigger at)
inlinestaticprivate

Definition at line 470 of file ScriptMgr.cpp.

+ Here is the call graph for this function:

◆ UnloadResetScript() [2/3]

template<typename ObjectType , typename ScriptType , typename Base >
static void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::UnloadResetScript ( Creature creature)
inlinestaticprivate

Definition at line 424 of file ScriptMgr.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ UnloadResetScript() [3/3]

template<typename ObjectType , typename ScriptType , typename Base >
static void CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::UnloadResetScript ( GameObject gameobject)
inlinestaticprivate

Definition at line 452 of file ScriptMgr.cpp.

+ Here is the call graph for this function:

◆ VisitObjectsToSwapOnMap()

template<typename ObjectType , typename ScriptType , typename Base >
static auto CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::VisitObjectsToSwapOnMap ( std::unordered_set< uint32 > const &  idsToRemove)
inlinestaticprivate

Definition at line 561 of file ScriptMgr.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ VisitObjectsWhereIdWasUpdated()

template<typename ObjectType , typename ScriptType , typename Base >
static auto CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::VisitObjectsWhereIdWasUpdated ( )
inlinestaticprivate

Definition at line 584 of file ScriptMgr.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ ids_removed_

template<typename ObjectType , typename ScriptType , typename Base >
std::unordered_set<uint32> CreatureGameObjectAreaTriggerScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::ids_removed_
private

Definition at line 728 of file ScriptMgr.cpp.


The documentation for this class was generated from the following file: