TrinityCore
Loading...
Searching...
No Matches
Map.h File Reference
#include "Define.h"
#include "Cell.h"
#include "DynamicTree.h"
#include "GridDefines.h"
#include "GridRefManager.h"
#include "MapDefines.h"
#include "MapRefManager.h"
#include "MPSCQueue.h"
#include "ObjectGuid.h"
#include "Optional.h"
#include "SharedDefines.h"
#include "SpawnData.h"
#include "Timer.h"
#include "Transaction.h"
#include "UniqueTrackablePtr.h"
#include <bitset>
#include <list>
#include <memory>
#include <mutex>
+ Include dependency graph for Map.h:

Go to the source code of this file.

Classes

struct  ScriptAction
 
union  u_map_magic
 Represents a map magic value of 4 bytes (used in versions) More...
 
struct  map_fileheader
 
struct  map_areaHeader
 
struct  map_heightHeader
 
struct  map_liquidHeader
 
class  GridMap
 
struct  ZoneDynamicInfo
 
struct  ZoneDynamicInfo::LightOverride
 
struct  CompareRespawnInfo
 
struct  RespawnInfo
 
class  Map
 
class  InstanceMap
 
class  BattlegroundMap
 

Namespaces

namespace  Trinity
 
namespace  VMAP
 
namespace  G3D
 

Macros

#define MAP_AREA_NO_AREA   0x0001
 
#define MAP_HEIGHT_NO_HEIGHT   0x0001
 
#define MAP_HEIGHT_AS_INT16   0x0002
 
#define MAP_HEIGHT_AS_INT8   0x0004
 
#define MAP_HEIGHT_HAS_FLIGHT_BOUNDS   0x0008
 
#define MAP_LIQUID_NO_TYPE   0x0001
 
#define MAP_LIQUID_NO_HEIGHT   0x0002
 
#define MAP_LIQUID_TYPE_NO_WATER   0x00
 
#define MAP_LIQUID_TYPE_WATER   0x01
 
#define MAP_LIQUID_TYPE_OCEAN   0x02
 
#define MAP_LIQUID_TYPE_MAGMA   0x04
 
#define MAP_LIQUID_TYPE_SLIME   0x08
 
#define MAP_ALL_LIQUIDS   (MAP_LIQUID_TYPE_WATER | MAP_LIQUID_TYPE_OCEAN | MAP_LIQUID_TYPE_MAGMA | MAP_LIQUID_TYPE_SLIME)
 
#define MAP_LIQUID_TYPE_DARK_WATER   0x10
 
#define MAX_HEIGHT   100000.0f
 
#define INVALID_HEIGHT   -100000.0f
 
#define MAX_FALL_DISTANCE   250000.0f
 
#define DEFAULT_HEIGHT_SEARCH   50.0f
 
#define MIN_UNLOAD_DELAY   1
 
#define MAP_INVALID_ZONE   0xFFFFFFFF
 

Typedefs

using ZoneDynamicInfoMap = std::unordered_map< uint32, ZoneDynamicInfo >
 
using RespawnInfoMap = std::unordered_map< ObjectGuid::LowType, RespawnInfo * >
 
typedef TypeUnorderedMapContainer< AllMapStoredObjectTypes, ObjectGuid > MapStoredObjectTypesContainer
 

Enumerations

enum  TransferAbortReason : uint8 {
  TRANSFER_ABORT_NONE = 0 , TRANSFER_ABORT_ERROR = 1 , TRANSFER_ABORT_MAX_PLAYERS = 2 , TRANSFER_ABORT_NOT_FOUND = 3 ,
  TRANSFER_ABORT_TOO_MANY_INSTANCES = 4 , TRANSFER_ABORT_LOGGING_OUT = 5 , TRANSFER_ABORT_ZONE_IN_COMBAT = 6 , TRANSFER_ABORT_INSUF_EXPAN_LVL = 7 ,
  TRANSFER_ABORT_DIFFICULTY = 8 , TRANSFER_ABORT_UNIQUE_MESSAGE = 9 , TRANSFER_ABORT_TOO_MANY_REALM_INSTANCES = 10 , TRANSFER_ABORT_NEED_GROUP = 11 ,
  TRANSFER_ABORT_NEED_SERVER = 12 , TRANSFER_ABORT_TIMEOUT = 13 , TRANSFER_ABORT_BUSY = 14 , TRANSFER_ABORT_REALM_ONLY = 15 ,
  TRANSFER_ABORT_MAP_NOT_ALLOWED = 16
}
 
enum  InstanceResetMethod {
  INSTANCE_RESET_ALL , INSTANCE_RESET_CHANGE_DIFFICULTY , INSTANCE_RESET_GLOBAL , INSTANCE_RESET_GROUP_DISBAND ,
  INSTANCE_RESET_GROUP_JOIN , INSTANCE_RESET_RESPAWN_DELAY
}
 

Macro Definition Documentation

◆ DEFAULT_HEIGHT_SEARCH

#define DEFAULT_HEIGHT_SEARCH   50.0f

Definition at line 264 of file Map.h.

◆ INVALID_HEIGHT

#define INVALID_HEIGHT   -100000.0f

Definition at line 262 of file Map.h.

◆ MAP_ALL_LIQUIDS

Definition at line 171 of file Map.h.

◆ MAP_AREA_NO_AREA

#define MAP_AREA_NO_AREA   0x0001

Definition at line 127 of file Map.h.

◆ MAP_HEIGHT_AS_INT16

#define MAP_HEIGHT_AS_INT16   0x0002

Definition at line 137 of file Map.h.

◆ MAP_HEIGHT_AS_INT8

#define MAP_HEIGHT_AS_INT8   0x0004

Definition at line 138 of file Map.h.

◆ MAP_HEIGHT_HAS_FLIGHT_BOUNDS

#define MAP_HEIGHT_HAS_FLIGHT_BOUNDS   0x0008

Definition at line 139 of file Map.h.

◆ MAP_HEIGHT_NO_HEIGHT

#define MAP_HEIGHT_NO_HEIGHT   0x0001

Definition at line 136 of file Map.h.

◆ MAP_INVALID_ZONE

#define MAP_INVALID_ZONE   0xFFFFFFFF

Definition at line 266 of file Map.h.

◆ MAP_LIQUID_NO_HEIGHT

#define MAP_LIQUID_NO_HEIGHT   0x0002

Definition at line 150 of file Map.h.

◆ MAP_LIQUID_NO_TYPE

#define MAP_LIQUID_NO_TYPE   0x0001

Definition at line 149 of file Map.h.

◆ MAP_LIQUID_TYPE_DARK_WATER

#define MAP_LIQUID_TYPE_DARK_WATER   0x10

Definition at line 173 of file Map.h.

◆ MAP_LIQUID_TYPE_MAGMA

#define MAP_LIQUID_TYPE_MAGMA   0x04

Definition at line 168 of file Map.h.

◆ MAP_LIQUID_TYPE_NO_WATER

#define MAP_LIQUID_TYPE_NO_WATER   0x00

Definition at line 165 of file Map.h.

◆ MAP_LIQUID_TYPE_OCEAN

#define MAP_LIQUID_TYPE_OCEAN   0x02

Definition at line 167 of file Map.h.

◆ MAP_LIQUID_TYPE_SLIME

#define MAP_LIQUID_TYPE_SLIME   0x08

Definition at line 169 of file Map.h.

◆ MAP_LIQUID_TYPE_WATER

#define MAP_LIQUID_TYPE_WATER   0x01

Definition at line 166 of file Map.h.

◆ MAX_FALL_DISTANCE

#define MAX_FALL_DISTANCE   250000.0f

Definition at line 263 of file Map.h.

◆ MAX_HEIGHT

#define MAX_HEIGHT   100000.0f

Definition at line 261 of file Map.h.

◆ MIN_UNLOAD_DELAY

#define MIN_UNLOAD_DELAY   1

Definition at line 265 of file Map.h.

Typedef Documentation

◆ MapStoredObjectTypesContainer

Definition at line 299 of file Map.h.

◆ RespawnInfoMap

using RespawnInfoMap = std::unordered_map<ObjectGuid::LowType, RespawnInfo*>

Definition at line 275 of file Map.h.

◆ ZoneDynamicInfoMap

using ZoneDynamicInfoMap = std::unordered_map<uint32 , ZoneDynamicInfo>

Definition at line 273 of file Map.h.

Enumeration Type Documentation

◆ InstanceResetMethod

Enumerator
INSTANCE_RESET_ALL 
INSTANCE_RESET_CHANGE_DIFFICULTY 
INSTANCE_RESET_GLOBAL 
INSTANCE_RESET_GROUP_DISBAND 
INSTANCE_RESET_GROUP_JOIN 
INSTANCE_RESET_RESPAWN_DELAY 

Definition at line 885 of file Map.h.

◆ TransferAbortReason

Enumerator
TRANSFER_ABORT_NONE 
TRANSFER_ABORT_ERROR 
TRANSFER_ABORT_MAX_PLAYERS 
TRANSFER_ABORT_NOT_FOUND 
TRANSFER_ABORT_TOO_MANY_INSTANCES 
TRANSFER_ABORT_LOGGING_OUT 
TRANSFER_ABORT_ZONE_IN_COMBAT 
TRANSFER_ABORT_INSUF_EXPAN_LVL 
TRANSFER_ABORT_DIFFICULTY 
TRANSFER_ABORT_UNIQUE_MESSAGE 
TRANSFER_ABORT_TOO_MANY_REALM_INSTANCES 
TRANSFER_ABORT_NEED_GROUP 
TRANSFER_ABORT_NEED_SERVER 
TRANSFER_ABORT_TIMEOUT 
TRANSFER_ABORT_BUSY 
TRANSFER_ABORT_REALM_ONLY 
TRANSFER_ABORT_MAP_NOT_ALLOWED 

Definition at line 73 of file Map.h.