diff --git a/Source/Game/Collision/Models/GameObjectModel.cs b/Source/Game/Collision/Models/GameObjectModel.cs index d74b40706..7a4b15880 100644 --- a/Source/Game/Collision/Models/GameObjectModel.cs +++ b/Source/Game/Collision/Models/GameObjectModel.cs @@ -177,7 +177,7 @@ namespace Game.Collision public void enableCollision(bool enable) { _collisionEnabled = enable; } bool isCollisionEnabled() { return _collisionEnabled; } - bool isMapObject() { return isWmo; } + public bool isMapObject() { return isWmo; } public static void LoadGameObjectModelList() { diff --git a/Source/Game/Entities/GameObject/GameObject.cs b/Source/Game/Entities/GameObject/GameObject.cs index 7f2b00f01..76cf59d2f 100644 --- a/Source/Game/Entities/GameObject/GameObject.cs +++ b/Source/Game/Entities/GameObject/GameObject.cs @@ -266,6 +266,9 @@ namespace Game.Entities SetDisplayId(goInfo.displayId); m_model = CreateModel(); + if (m_model != null && m_model.isMapObject()) + SetFlag(GameObjectFields.Flags, GameObjectFlags.MapObject); + // GAMEOBJECT_BYTES_1, index at 0, 1, 2 and 3 SetGoType(goInfo.type); m_prevGoState = goState; @@ -2360,6 +2363,8 @@ namespace Game.Entities m_model = CreateModel(); if (m_model != null) GetMap().InsertGameObjectModel(m_model); + + ApplyModFlag(GameObjectFields.Flags, GameObjectFlags.MapObject, m_model != null && m_model.isMapObject()); } Player GetLootRecipient()