From 401502ea3c5ceca0c6253910035b2949e13746cc Mon Sep 17 00:00:00 2001 From: Shauren Date: Sun, 5 Jan 2025 20:22:34 +0100 Subject: Core/Grids: Modernize TypeContainer with variadic template --- src/server/game/Grids/GridDefines.h | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) (limited to 'src/server/game/Grids/GridDefines.h') diff --git a/src/server/game/Grids/GridDefines.h b/src/server/game/Grids/GridDefines.h index a40de811a29..821597bf57c 100644 --- a/src/server/game/Grids/GridDefines.h +++ b/src/server/game/Grids/GridDefines.h @@ -62,11 +62,6 @@ class Conversation; #define MAX_FALL_DISTANCE 250000.0f // "unlimited fall" to find VMap ground if it is available, just larger than MAX_HEIGHT - INVALID_HEIGHT #define DEFAULT_HEIGHT_SEARCH 50.0f // default search distance to find height at nearby locations -// Creature used instead pet to simplify *::Visit templates (not required duplicate code for Creature->Pet case) -typedef TYPELIST_4(Player, Creature/*pets*/, Corpse/*resurrectable*/, DynamicObject/*farsight target*/) AllWorldObjectTypes; -typedef TYPELIST_7(GameObject, Creature/*except pets*/, DynamicObject, Corpse/*Bones*/, AreaTrigger, SceneObject, Conversation) AllGridObjectTypes; -typedef TYPELIST_8(Creature, GameObject, DynamicObject, Pet, Corpse, AreaTrigger, SceneObject, Conversation) AllMapStoredObjectTypes; - typedef GridRefManager CorpseMapType; typedef GridRefManager CreatureMapType; typedef GridRefManager DynamicObjectMapType; @@ -89,11 +84,12 @@ enum GridMapTypeMask GRID_MAP_TYPE_MASK_ALL = 0xFF }; -extern template class TypeMapContainer; -extern template class TypeMapContainer; +// Creature used instead pet to simplify *::Visit templates (not required duplicate code for Creature->Pet case) +extern template struct TypeListContainer; +extern template struct TypeListContainer; -typedef TypeMapContainer GridTypeMapContainer; -typedef TypeMapContainer WorldTypeMapContainer; +typedef TypeListContainer GridTypeMapContainer; +typedef TypeListContainer WorldTypeMapContainer; extern template class Grid; extern template class NGrid; -- cgit v1.2.3