Core/GameObject: Add infinite visibility GameObject check (#24074)

This commit is contained in:
Kittnz
2020-01-23 15:33:09 +01:00
committed by ccrs
parent 78c1216bcf
commit b0db728c49
2 changed files with 17 additions and 0 deletions

View File

@@ -408,6 +408,10 @@ bool GameObject::Create(ObjectGuid::LowType guidlow, uint32 name_id, Map* map, u
if (goinfo->IsLargeGameObject())
SetVisibilityDistanceOverride(VisibilityDistanceType::Large);
// Check if GameObject is Infinite
if (goinfo->IsInfiniteGameObject())
SetVisibilityDistanceOverride(VisibilityDistanceType::Infinite);
return true;
}

View File

@@ -603,6 +603,19 @@ struct GameObjectTemplate
}
}
bool IsInfiniteGameObject() const
{
switch (type)
{
case GAMEOBJECT_TYPE_DOOR: return true;
case GAMEOBJECT_TYPE_FLAGSTAND: return true;
case GAMEOBJECT_TYPE_FLAGDROP: return true;
case GAMEOBJECT_TYPE_DUNGEON_DIFFICULTY: return true;
case GAMEOBJECT_TYPE_TRAPDOOR: return true;
default: return false;
}
}
void InitializeQueryData();
WorldPacket BuildQueryData(LocaleConstant loc) const;
};