TrinityCore
Loading...
Searching...
No Matches
GridDefines.h File Reference
#include "Common.h"
#include "NGrid.h"
#include <cmath>
+ Include dependency graph for GridDefines.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  CoordPair< LIMIT >
 

Namespaces

namespace  Trinity
 

Macros

#define MAX_NUMBER_OF_CELLS   8
 
#define MAX_NUMBER_OF_GRIDS   64
 
#define SIZE_OF_GRIDS   533.3333f
 
#define CENTER_GRID_ID   (MAX_NUMBER_OF_GRIDS/2)
 
#define CENTER_GRID_OFFSET   (SIZE_OF_GRIDS/2)
 
#define MIN_GRID_DELAY   (MINUTE*IN_MILLISECONDS)
 
#define MIN_MAP_UPDATE_DELAY   1
 
#define SIZE_OF_GRID_CELL   (SIZE_OF_GRIDS/MAX_NUMBER_OF_CELLS)
 
#define CENTER_GRID_CELL_ID   (MAX_NUMBER_OF_CELLS*MAX_NUMBER_OF_GRIDS/2)
 
#define CENTER_GRID_CELL_OFFSET   (SIZE_OF_GRID_CELL/2)
 
#define TOTAL_NUMBER_OF_CELLS_PER_MAP   (MAX_NUMBER_OF_GRIDS*MAX_NUMBER_OF_CELLS)
 
#define MAP_RESOLUTION   128
 
#define MAP_SIZE   (SIZE_OF_GRIDS*MAX_NUMBER_OF_GRIDS)
 
#define MAP_HALFSIZE   (MAP_SIZE/2)
 
#define MAX_HEIGHT   100000.0f
 
#define INVALID_HEIGHT   -100000.0f
 
#define MAX_FALL_DISTANCE   250000.0f
 
#define DEFAULT_HEIGHT_SEARCH   50.0f
 

Typedefs

typedef GridRefManager< CorpseCorpseMapType
 
typedef GridRefManager< CreatureCreatureMapType
 
typedef GridRefManager< DynamicObjectDynamicObjectMapType
 
typedef GridRefManager< GameObjectGameObjectMapType
 
typedef GridRefManager< PlayerPlayerMapType
 
typedef GridRefManager< AreaTriggerAreaTriggerMapType
 
typedef GridRefManager< SceneObjectSceneObjectMapType
 
typedef GridRefManager< ConversationConversationMapType
 
typedef Grid< Player, AllWorldObjectTypes, AllGridObjectTypes > GridType
 
typedef NGrid< MAX_NUMBER_OF_CELLS, Player, AllWorldObjectTypes, AllGridObjectTypes > NGridType
 
typedef TypeMapContainer< AllGridObjectTypes > GridTypeMapContainer
 
typedef TypeMapContainer< AllWorldObjectTypes > WorldTypeMapContainer
 
typedef CoordPair< MAX_NUMBER_OF_GRIDSGridCoord
 
typedef CoordPair< TOTAL_NUMBER_OF_CELLS_PER_MAPCellCoord
 

Enumerations

enum  GridMapTypeMask {
  GRID_MAP_TYPE_MASK_CORPSE = 0x01 , GRID_MAP_TYPE_MASK_CREATURE = 0x02 , GRID_MAP_TYPE_MASK_DYNAMICOBJECT = 0x04 , GRID_MAP_TYPE_MASK_GAMEOBJECT = 0x08 ,
  GRID_MAP_TYPE_MASK_PLAYER = 0x10 , GRID_MAP_TYPE_MASK_AREATRIGGER = 0x20 , GRID_MAP_TYPE_MASK_SCENEOBJECT = 0x40 , GRID_MAP_TYPE_MASK_CONVERSATION = 0x80 ,
  GRID_MAP_TYPE_MASK_ALL = 0xFF
}
 

Functions

typedef TYPELIST_4 (Player, Creature, Corpse, DynamicObject) AllWorldObjectTypes
 
typedef TYPELIST_7 (GameObject, Creature, DynamicObject, Corpse, AreaTrigger, SceneObject, Conversation) AllGridObjectTypes
 
typedef TYPELIST_8 (Creature, GameObject, DynamicObject, Pet, Corpse, AreaTrigger, SceneObject, Conversation) AllMapStoredObjectTypes
 
template<uint32 LIMIT>
bool operator== (const CoordPair< LIMIT > &p1, const CoordPair< LIMIT > &p2)
 
template<uint32 LIMIT>
bool operator!= (const CoordPair< LIMIT > &p1, const CoordPair< LIMIT > &p2)
 
template<class RET_TYPE , int CENTER_VAL>
RET_TYPE Trinity::Compute (float x, float y, float center_offset, float size)
 
GridCoord Trinity::ComputeGridCoord (float x, float y)
 
GridCoord Trinity::ComputeGridCoordSimple (float x, float y)
 
CellCoord Trinity::ComputeCellCoord (float x, float y)
 
CellCoord Trinity::ComputeCellCoord (float x, float y, float &x_off, float &y_off)
 
void Trinity::NormalizeMapCoord (float &c)
 
bool Trinity::IsValidMapCoord (float c)
 
bool Trinity::IsValidMapCoord (float x, float y)
 
bool Trinity::IsValidMapCoord (float x, float y, float z)
 
bool Trinity::IsValidMapCoord (float x, float y, float z, float o)
 

Macro Definition Documentation

◆ CENTER_GRID_CELL_ID

#define CENTER_GRID_CELL_ID   (MAX_NUMBER_OF_CELLS*MAX_NUMBER_OF_GRIDS/2)

◆ CENTER_GRID_CELL_OFFSET

#define CENTER_GRID_CELL_OFFSET   (SIZE_OF_GRID_CELL/2)

◆ CENTER_GRID_ID

#define CENTER_GRID_ID   (MAX_NUMBER_OF_GRIDS/2)

◆ CENTER_GRID_OFFSET

#define CENTER_GRID_OFFSET   (SIZE_OF_GRIDS/2)

◆ DEFAULT_HEIGHT_SEARCH

#define DEFAULT_HEIGHT_SEARCH   50.0f

◆ INVALID_HEIGHT

#define INVALID_HEIGHT   -100000.0f

◆ MAP_HALFSIZE

#define MAP_HALFSIZE   (MAP_SIZE/2)

◆ MAP_RESOLUTION

#define MAP_RESOLUTION   128

◆ MAP_SIZE

#define MAP_SIZE   (SIZE_OF_GRIDS*MAX_NUMBER_OF_GRIDS)

◆ MAX_FALL_DISTANCE

#define MAX_FALL_DISTANCE   250000.0f

◆ MAX_HEIGHT

#define MAX_HEIGHT   100000.0f

◆ MAX_NUMBER_OF_CELLS

#define MAX_NUMBER_OF_CELLS   8

◆ MAX_NUMBER_OF_GRIDS

#define MAX_NUMBER_OF_GRIDS   64

◆ MIN_GRID_DELAY

#define MIN_GRID_DELAY   (MINUTE*IN_MILLISECONDS)

◆ MIN_MAP_UPDATE_DELAY

#define MIN_MAP_UPDATE_DELAY   1

◆ SIZE_OF_GRID_CELL

#define SIZE_OF_GRID_CELL   (SIZE_OF_GRIDS/MAX_NUMBER_OF_CELLS)

◆ SIZE_OF_GRIDS

#define SIZE_OF_GRIDS   533.3333f

◆ TOTAL_NUMBER_OF_CELLS_PER_MAP

#define TOTAL_NUMBER_OF_CELLS_PER_MAP   (MAX_NUMBER_OF_GRIDS*MAX_NUMBER_OF_CELLS)

Typedef Documentation

◆ AreaTriggerMapType

◆ CellCoord

◆ ConversationMapType

◆ CorpseMapType

◆ CreatureMapType

◆ DynamicObjectMapType

◆ GameObjectMapType

◆ GridCoord

◆ GridType

typedef Grid<Player, AllWorldObjectTypes, AllGridObjectTypes> GridType

◆ GridTypeMapContainer

typedef TypeMapContainer<AllGridObjectTypes> GridTypeMapContainer

◆ NGridType

typedef NGrid<MAX_NUMBER_OF_CELLS, Player, AllWorldObjectTypes, AllGridObjectTypes> NGridType

◆ PlayerMapType

◆ SceneObjectMapType

◆ WorldTypeMapContainer

typedef TypeMapContainer<AllWorldObjectTypes> WorldTypeMapContainer

Enumeration Type Documentation

◆ GridMapTypeMask

Enumerator
GRID_MAP_TYPE_MASK_CORPSE 
GRID_MAP_TYPE_MASK_CREATURE 
GRID_MAP_TYPE_MASK_DYNAMICOBJECT 
GRID_MAP_TYPE_MASK_GAMEOBJECT 
GRID_MAP_TYPE_MASK_PLAYER 
GRID_MAP_TYPE_MASK_AREATRIGGER 
GRID_MAP_TYPE_MASK_SCENEOBJECT 
GRID_MAP_TYPE_MASK_CONVERSATION 
GRID_MAP_TYPE_MASK_ALL 
80{
90};
@ GRID_MAP_TYPE_MASK_PLAYER
Definition: GridDefines.h:85
@ GRID_MAP_TYPE_MASK_CREATURE
Definition: GridDefines.h:82
@ GRID_MAP_TYPE_MASK_CONVERSATION
Definition: GridDefines.h:88
@ GRID_MAP_TYPE_MASK_SCENEOBJECT
Definition: GridDefines.h:87
@ GRID_MAP_TYPE_MASK_ALL
Definition: GridDefines.h:89
@ GRID_MAP_TYPE_MASK_GAMEOBJECT
Definition: GridDefines.h:84
@ GRID_MAP_TYPE_MASK_DYNAMICOBJECT
Definition: GridDefines.h:83
@ GRID_MAP_TYPE_MASK_CORPSE
Definition: GridDefines.h:81
@ GRID_MAP_TYPE_MASK_AREATRIGGER
Definition: GridDefines.h:86

Function Documentation

◆ operator!=()

template<uint32 LIMIT>
bool operator!= ( const CoordPair< LIMIT > &  p1,
const CoordPair< LIMIT > &  p2 
)
183{
184 return !(p1 == p2);
185}

◆ operator==()

template<uint32 LIMIT>
bool operator== ( const CoordPair< LIMIT > &  p1,
const CoordPair< LIMIT > &  p2 
)
177{
178 return (p1.x_coord == p2.x_coord && p1.y_coord == p2.y_coord);
179}
uint32 x_coord
Definition: GridDefines.h:171
uint32 y_coord
Definition: GridDefines.h:172

◆ TYPELIST_4()

typedef TYPELIST_4 ( Player  ,
Creature  ,
Corpse  ,
DynamicObject   
)

◆ TYPELIST_7()

typedef TYPELIST_7 ( GameObject  ,
Creature  ,
DynamicObject  ,
Corpse  ,
AreaTrigger  ,
SceneObject  ,
Conversation   
)

◆ TYPELIST_8()

typedef TYPELIST_8 ( Creature  ,
GameObject  ,
DynamicObject  ,
Pet  ,
Corpse  ,
AreaTrigger  ,
SceneObject  ,
Conversation   
)