18#ifndef PersonalPhaseTracker_h__
19#define PersonalPhaseTracker_h__
37 std::unordered_set<uint16>
Grids;
std::chrono::milliseconds Milliseconds
Milliseconds shorthand typedef.
std::optional< T > Optional
Optional helper class to wrap optional values within.
void Update(Map *map, uint32 diff)
std::unordered_map< ObjectGuid, PlayerPersonalPhasesTracker > _playerData
void MarkAllPhasesForDeletion(ObjectGuid const &phaseOwner)
void RegisterTrackedObject(uint32 phaseId, ObjectGuid const &phaseOwner, WorldObject *object)
void LoadGrid(PhaseShift const &phaseShift, NGridType &grid, Map *map, Cell const &cell)
void UnregisterTrackedObject(WorldObject *object)
void UnloadGrid(NGridType &grid)
void OnOwnerPhaseChanged(WorldObject const *phaseOwner, NGridType *grid, Map *map, Cell const &cell)
static constexpr Milliseconds DELETE_TIME_DEFAULT
Optional< Milliseconds > DurationRemaining
std::unordered_set< WorldObject * > Objects
std::unordered_set< uint16 > Grids
void UnregisterTrackedObject(WorldObject *object)
void SetGridLoadedForPhase(uint32 gridId, uint32 phaseId)
void MarkAllPhasesForDeletion()
void RegisterTrackedObject(uint32 phaseId, WorldObject *object)
bool IsGridLoadedForPhase(uint32 gridId, uint32 phaseId) const
void Update(Map *map, uint32 diff)
void OnOwnerPhasesChanged(WorldObject const *owner)
void SetGridUnloaded(uint32 gridId)
std::unordered_map< uint32, PersonalPhaseSpawns > _spawns
void DespawnPhase(Map *map, PersonalPhaseSpawns &spawns)