Core/Entities : Basic Conversation Implementation (#18010)

This commit is contained in:
Traesh
2017-05-14 11:40:55 +02:00
committed by joschiwald
parent 3e18fcb8fd
commit c73ce93f4c
39 changed files with 777 additions and 19 deletions

View File

@@ -21,6 +21,7 @@
#include "Battleground.h"
#include "MMapFactory.h"
#include "CellImpl.h"
#include "Conversation.h"
#include "DisableMgr.h"
#include "DynamicTree.h"
#include "GridNotifiers.h"
@@ -3037,6 +3038,9 @@ void Map::RemoveAllObjectsInRemoveList()
case TYPEID_AREATRIGGER:
RemoveFromMap((AreaTrigger*)obj, true);
break;
case TYPEID_CONVERSATION:
RemoveFromMap((Conversation*)obj, true);
break;
case TYPEID_GAMEOBJECT:
{
GameObject* go = obj->ToGameObject();
@@ -3185,12 +3189,14 @@ template TC_GAME_API bool Map::AddToMap(Creature*);
template TC_GAME_API bool Map::AddToMap(GameObject*);
template TC_GAME_API bool Map::AddToMap(DynamicObject*);
template TC_GAME_API bool Map::AddToMap(AreaTrigger*);
template TC_GAME_API bool Map::AddToMap(Conversation*);
template TC_GAME_API void Map::RemoveFromMap(Corpse*, bool);
template TC_GAME_API void Map::RemoveFromMap(Creature*, bool);
template TC_GAME_API void Map::RemoveFromMap(GameObject*, bool);
template TC_GAME_API void Map::RemoveFromMap(DynamicObject*, bool);
template TC_GAME_API void Map::RemoveFromMap(AreaTrigger*, bool);
template TC_GAME_API void Map::RemoveFromMap(Conversation*, bool);
/* ******* Dungeon Instance Maps ******* */
@@ -3773,6 +3779,11 @@ AreaTrigger* Map::GetAreaTrigger(ObjectGuid const& guid)
return _objectsStore.Find<AreaTrigger>(guid);
}
Conversation* Map::GetConversation(ObjectGuid const& guid)
{
return _objectsStore.Find<Conversation>(guid);
}
Corpse* Map::GetCorpse(ObjectGuid const& guid)
{
return _objectsStore.Find<Corpse>(guid);