From cf4e8acf44cda3091cb09c7ed769c9597184edf7 Mon Sep 17 00:00:00 2001 From: Shocker Date: Sun, 26 May 2013 04:56:43 +0300 Subject: Core/AreaTrigger: Add object ToAreaTrigger() cast and AreaTrigger typeid/mask to Condition::GetSearcherTypeMaskForCondition --- src/server/game/Conditions/ConditionMgr.cpp | 5 +++++ src/server/game/Entities/Object/Object.h | 3 +++ 2 files changed, 8 insertions(+) (limited to 'src') diff --git a/src/server/game/Conditions/ConditionMgr.cpp b/src/server/game/Conditions/ConditionMgr.cpp index 507f8e066e3..a2c95c30cab 100644 --- a/src/server/game/Conditions/ConditionMgr.cpp +++ b/src/server/game/Conditions/ConditionMgr.cpp @@ -428,6 +428,9 @@ uint32 Condition::GetSearcherTypeMaskForCondition() case TYPEID_CORPSE: mask |= GRID_MAP_TYPE_MASK_CORPSE; break; + case TYPEID_AREATRIGGER: + mask |= GRID_MAP_TYPE_MASK_AREATRIGGER; + break; default: break; } @@ -441,6 +444,8 @@ uint32 Condition::GetSearcherTypeMaskForCondition() mask |= GRID_MAP_TYPE_MASK_GAMEOBJECT; if (ConditionValue1 & TYPEMASK_CORPSE) mask |= GRID_MAP_TYPE_MASK_CORPSE; + if (ConditionValue1 & TYPEMASK_AREATRIGGER) + mask |= GRID_MAP_TYPE_MASK_AREATRIGGER; break; case CONDITION_RELATION_TO: mask |= GRID_MAP_TYPE_MASK_CREATURE | GRID_MAP_TYPE_MASK_PLAYER; diff --git a/src/server/game/Entities/Object/Object.h b/src/server/game/Entities/Object/Object.h index 6e9c403a630..854978b921f 100644 --- a/src/server/game/Entities/Object/Object.h +++ b/src/server/game/Entities/Object/Object.h @@ -283,6 +283,9 @@ class Object DynamicObject* ToDynObject() { if (GetTypeId() == TYPEID_DYNAMICOBJECT) return reinterpret_cast(this); else return NULL; } DynamicObject const* ToDynObject() const { if (GetTypeId() == TYPEID_DYNAMICOBJECT) return reinterpret_cast(this); else return NULL; } + AreaTrigger* ToAreaTrigger() { if (GetTypeId() == TYPEID_AREATRIGGER) return reinterpret_cast(this); else return NULL; } + AreaTrigger const* ToAreaTrigger() const { if (GetTypeId() == TYPEID_AREATRIGGER) return reinterpret_cast(this); else return NULL; } + protected: Object(); -- cgit v1.2.3