mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-30 09:03:47 +00:00
feat(Core/GameObject): Gob flag helpers (#11287)
This commit is contained in:
@@ -71,7 +71,7 @@ public:
|
||||
{
|
||||
DoUseDoorOrButton(m_uiIkissDoorGUID, DAY * IN_MILLISECONDS);
|
||||
if (GameObject* coffer = instance->GetGameObject(_talonKingsCofferGUID))
|
||||
coffer->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE | GO_FLAG_INTERACT_COND);
|
||||
coffer->RemoveGameObjectFlag(GO_FLAG_NOT_SELECTABLE | GO_FLAG_INTERACT_COND);
|
||||
}
|
||||
break;
|
||||
case TYPE_ANZU_ENCOUNTER:
|
||||
|
||||
@@ -56,7 +56,7 @@ public:
|
||||
if (type == DATA_LADY_VASHJ)
|
||||
for (uint8 i = 0; i < 4; ++i)
|
||||
if (GameObject* gobject = instance->GetGameObject(ShieldGeneratorGUID[i]))
|
||||
gobject->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
gobject->SetGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -158,7 +158,7 @@ public:
|
||||
for (uint8 i = 0; i < 4; ++i)
|
||||
if (GameObject* gobject = instance->GetGameObject(ShieldGeneratorGUID[i]))
|
||||
{
|
||||
gobject->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
gobject->RemoveGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
vashj->SummonTrigger(gobject->GetPositionX(), gobject->GetPositionY(), gobject->GetPositionZ(), 0.0f, 0);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -33,14 +33,14 @@ public:
|
||||
if (go->GetEntry() == GO_ACCESS_PANEL_HYDRO)
|
||||
if (instance->GetData(TYPE_HYDROMANCER_THESPIA) == DONE)
|
||||
{
|
||||
go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
go->SetGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
instance->SetData(TYPE_HYDROMANCER_THESPIA, SPECIAL);
|
||||
}
|
||||
|
||||
if (go->GetEntry() == GO_ACCESS_PANEL_MEK)
|
||||
if (instance->GetData(TYPE_MEKGINEER_STEAMRIGGER) == DONE)
|
||||
{
|
||||
go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
go->SetGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
instance->SetData(TYPE_MEKGINEER_STEAMRIGGER, SPECIAL);
|
||||
}
|
||||
|
||||
@@ -105,14 +105,14 @@ public:
|
||||
case GO_ACCESS_PANEL_HYDRO:
|
||||
AccessPanelHydro = go->GetGUID();
|
||||
if (GetData(TYPE_HYDROMANCER_THESPIA) == DONE)
|
||||
go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
go->RemoveGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
else if (GetData(TYPE_HYDROMANCER_THESPIA) == SPECIAL)
|
||||
HandleGameObject(ObjectGuid::Empty, true, go);
|
||||
break;
|
||||
case GO_ACCESS_PANEL_MEK:
|
||||
AccessPanelMek = go->GetGUID();
|
||||
if (GetData(TYPE_MEKGINEER_STEAMRIGGER) == DONE)
|
||||
go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
go->RemoveGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
else if (GetData(TYPE_MEKGINEER_STEAMRIGGER) == SPECIAL)
|
||||
HandleGameObject(ObjectGuid::Empty, true, go);
|
||||
break;
|
||||
@@ -132,7 +132,7 @@ public:
|
||||
else if (data == DONE)
|
||||
{
|
||||
if (GameObject* panel = instance->GetGameObject(AccessPanelHydro))
|
||||
panel->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
panel->RemoveGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
}
|
||||
|
||||
m_auiEncounter[type] = data;
|
||||
@@ -146,7 +146,7 @@ public:
|
||||
else if (data == DONE)
|
||||
{
|
||||
if (GameObject* panel = instance->GetGameObject(AccessPanelMek))
|
||||
panel->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
panel->RemoveGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
}
|
||||
|
||||
m_auiEncounter[type] = data;
|
||||
|
||||
@@ -51,7 +51,7 @@ public:
|
||||
|
||||
if (type == DATA_VAZRUDEN && state == DONE)
|
||||
if (GameObject* chest = instance->GetGameObject(felIronChestGUID))
|
||||
chest->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
chest->RemoveGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -142,7 +142,7 @@ public:
|
||||
{
|
||||
for (ObjectGuid const& guid : _cubesSet)
|
||||
if (GameObject* cube = instance->GetGameObject(guid))
|
||||
cube->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
cube->SetGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
|
||||
if (state == NOT_STARTED)
|
||||
SetData(DATA_COLLAPSE, GO_READY);
|
||||
@@ -163,7 +163,7 @@ public:
|
||||
case DATA_ACTIVATE_CUBES:
|
||||
for (ObjectGuid const& guid : _cubesSet)
|
||||
if (GameObject* cube = instance->GetGameObject(guid))
|
||||
cube->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
cube->RemoveGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
break;
|
||||
case DATA_COLLAPSE:
|
||||
for (ObjectGuid const& guid : _columnSet)
|
||||
|
||||
@@ -772,7 +772,7 @@ public:
|
||||
_events.ScheduleEvent(EVENT_SIMON_PERIODIC_PLAYER_CHECK, 2000);
|
||||
|
||||
if (GameObject* relic = me->FindNearestGameObject(large ? GO_APEXIS_MONUMENT : GO_APEXIS_RELIC, searchDistance))
|
||||
relic->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
relic->SetGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
}
|
||||
|
||||
// Called when despawning the bunny. Sets all the node GOs to their default states.
|
||||
@@ -782,14 +782,14 @@ public:
|
||||
|
||||
for (uint32 clusterId = SIMON_BLUE; clusterId < SIMON_MAX_COLORS; clusterId++)
|
||||
if (GameObject* cluster = me->FindNearestGameObject(clusterIds[clusterId], searchDistance))
|
||||
cluster->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
cluster->SetGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
|
||||
for (uint32 auraId = GO_AURA_BLUE; auraId <= GO_AURA_YELLOW; auraId++)
|
||||
if (GameObject* auraGo = me->FindNearestGameObject(auraId, searchDistance))
|
||||
auraGo->RemoveFromWorld();
|
||||
|
||||
if (GameObject* relic = me->FindNearestGameObject(large ? GO_APEXIS_MONUMENT : GO_APEXIS_RELIC, searchDistance))
|
||||
relic->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
relic->RemoveGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
|
||||
me->DespawnOrUnsummon(1000);
|
||||
}
|
||||
@@ -832,7 +832,7 @@ public:
|
||||
{
|
||||
for (uint32 clusterId = SIMON_BLUE; clusterId < SIMON_MAX_COLORS; clusterId++)
|
||||
if (GameObject* cluster = me->FindNearestGameObject(clusterIds[clusterId], searchDistance))
|
||||
cluster->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
cluster->RemoveGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
|
||||
if (clustersOnly)
|
||||
return;
|
||||
@@ -886,7 +886,7 @@ public:
|
||||
{
|
||||
if (GameObject* cluster = me->FindNearestGameObject(clusterIds[clusterId], 2.0f * searchDistance))
|
||||
{
|
||||
cluster->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE);
|
||||
cluster->SetGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
|
||||
|
||||
// break since we don't need glowing auras for large clusters
|
||||
if (large)
|
||||
|
||||
Reference in New Issue
Block a user