feat(Core/Config): Parameter to set all creatures with WP movement active (#2615)

This commit is contained in:
Stoabrogga
2020-02-23 14:08:42 +01:00
committed by GitHub
parent d387bdc695
commit ed243d6911
6 changed files with 22 additions and 7 deletions

View File

@@ -2217,7 +2217,11 @@ bool Creature::LoadCreaturesAddon(bool reload)
//Load Path
if (cainfo->path_id != 0)
{
if (sWorld->getBoolConfig(CONFIG_SET_ALL_CREATURES_WITH_WAYPOINT_MOVEMENT_ACTIVE))
setActive(true);
m_path_id = cainfo->path_id;
}
if (!cainfo->auras.empty())
{

View File

@@ -1520,9 +1520,7 @@ float WorldObject::GetGridActivationRange() const
float WorldObject::GetVisibilityRange() const
{
if (isActiveObject() && !ToPlayer())
return MAX_VISIBILITY_DISTANCE;
else if (IsVisibilityOverridden() && GetTypeId() == TYPEID_UNIT)
if (IsVisibilityOverridden() && GetTypeId() == TYPEID_UNIT)
return MAX_VISIBILITY_DISTANCE;
else if (GetTypeId() == TYPEID_GAMEOBJECT)
{
@@ -1545,9 +1543,7 @@ float WorldObject::GetSightRange(const WorldObject* target) const
{
if (target)
{
if (target->isActiveObject() && !target->ToPlayer())
return MAX_VISIBILITY_DISTANCE;
else if (target->IsVisibilityOverridden() && target->GetTypeId() == TYPEID_UNIT)
if (target->IsVisibilityOverridden() && target->GetTypeId() == TYPEID_UNIT)
return MAX_VISIBILITY_DISTANCE;
else if (target->GetTypeId() == TYPEID_GAMEOBJECT)
{

View File

@@ -977,7 +977,7 @@ class WorldObject : public Object, public WorldLocation
bool isActiveObject() const { return m_isActive; }
void setActive(bool isActiveObject);
bool IsVisibilityOverridden() const { return m_isVisibilityDistanceOverride || m_isActive; }
bool IsVisibilityOverridden() const { return m_isVisibilityDistanceOverride; }
void SetVisibilityDistanceOverride(bool isVisibilityDistanceOverride);
void SetWorldObject(bool apply);
bool IsPermanentWorldObject() const { return m_isWorldObject; }