diff options
author | Shauren <shauren.trinity@gmail.com> | 2022-03-30 18:01:24 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2022-03-30 18:01:24 +0200 |
commit | 5eea9883c2c4cc0cf5d5be6fe52644d205a88ca3 (patch) | |
tree | d58aeff3487987082f755f305f8f15062979e767 | |
parent | e334fdf3ade7c3df8df9e5730434b67fe1ed019a (diff) |
Core/GameObjects: Reduce differences between branches part 3 - gameobject updatefield accessors
61 files changed, 223 insertions, 197 deletions
diff --git a/src/server/game/Battlegrounds/Zones/BattlegroundIC.cpp b/src/server/game/Battlegrounds/Zones/BattlegroundIC.cpp index daca43f5b57..6ff89cfb440 100644 --- a/src/server/game/Battlegrounds/Zones/BattlegroundIC.cpp +++ b/src/server/game/Battlegrounds/Zones/BattlegroundIC.cpp @@ -240,7 +240,7 @@ void BattlegroundIC::StartingEventOpenDoors() DoorOpen(BG_IC_GO_DOODAD_VR_PORTCULLIS01_2); for (uint8 i = 0; i < MAX_FORTRESS_TELEPORTERS_SPAWNS; ++i) - GetBGObject(BG_IC_Teleporters[i].type)->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + GetBGObject(BG_IC_Teleporters[i].type)->RemoveFlag(GO_FLAG_NOT_SELECTABLE); for (uint8 i = 0; i < MAX_FORTRESS_TELEPORTER_EFFECTS_SPAWNS; ++i) GetBGObject(BG_IC_TeleporterEffects[i].type)->SetGoState(GO_STATE_ACTIVE); @@ -809,12 +809,12 @@ void BattlegroundIC::DestroyGate(Player* player, GameObject* go) if (player->GetTeamId() == TEAM_ALLIANCE) { DoorOpen(BG_IC_GO_HORDE_KEEP_PORTCULLIS); - GetBGObject(BG_IC_GO_HORDE_BANNER)->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + GetBGObject(BG_IC_GO_HORDE_BANNER)->RemoveFlag(GO_FLAG_NOT_SELECTABLE); } else { DoorOpen(BG_IC_GO_DOODAD_PORTCULLISACTIVE02); - GetBGObject(BG_IC_GO_ALLIANCE_BANNER)->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + GetBGObject(BG_IC_GO_ALLIANCE_BANNER)->RemoveFlag(GO_FLAG_NOT_SELECTABLE); } uint32 textId; diff --git a/src/server/game/Battlegrounds/Zones/BattlegroundSA.cpp b/src/server/game/Battlegrounds/Zones/BattlegroundSA.cpp index b3a1c1d0b4d..f6b997c2527 100644 --- a/src/server/game/Battlegrounds/Zones/BattlegroundSA.cpp +++ b/src/server/game/Battlegrounds/Zones/BattlegroundSA.cpp @@ -766,9 +766,9 @@ void BattlegroundSA::UpdateObjectInteractionFlags(uint32 objectId) if (GameObject* go = GetBGObject(objectId)) { if (CanInteractWithObject(objectId)) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); else - go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->SetFlag(GO_FLAG_NOT_SELECTABLE); } } diff --git a/src/server/game/Entities/GameObject/GameObject.cpp b/src/server/game/Entities/GameObject/GameObject.cpp index 7d0c92b5335..8e9d541e2c6 100644 --- a/src/server/game/Entities/GameObject/GameObject.cpp +++ b/src/server/game/Entities/GameObject/GameObject.cpp @@ -323,7 +323,7 @@ bool GameObject::Create(ObjectGuid::LowType guidlow, uint32 name_id, Map* map, u if (GameObjectOverride const* goOverride = GetGameObjectOverride()) { SetFaction(goOverride->Faction); - SetUInt32Value(GAMEOBJECT_FLAGS, goOverride->Flags); + ReplaceAllFlags(GameObjectFlags(goOverride->Flags)); } SetEntry(goinfo->entry); @@ -333,7 +333,7 @@ bool GameObject::Create(ObjectGuid::LowType guidlow, uint32 name_id, Map* map, u SetDisplayId(goinfo->displayId); - m_model = CreateModel(); + CreateModel(); // GAMEOBJECT_BYTES_1, index at 0, 1, 2 and 3 SetGoType(GameobjectTypes(goinfo->type)); m_prevGoState = go_state; @@ -352,7 +352,7 @@ bool GameObject::Create(ObjectGuid::LowType guidlow, uint32 name_id, Map* map, u SetGoAnimProgress(255); break; case GAMEOBJECT_TYPE_TRANSPORT: - SetUInt32Value(GAMEOBJECT_LEVEL, goinfo->transport.pause); + SetLevel(goinfo->transport.pause); SetGoState(goinfo->transport.startOpen ? GO_STATE_ACTIVE : GO_STATE_READY); SetGoAnimProgress(animprogress); m_goValue.Transport.PathProgress = 0; @@ -505,7 +505,7 @@ void GameObject::Update(uint32 diff) if (caster && caster->GetTypeId() == TYPEID_PLAYER) { SetGoState(GO_STATE_ACTIVE); - SetUInt32Value(GAMEOBJECT_FLAGS, GO_FLAG_NODESPAWN); + ReplaceAllFlags(GO_FLAG_NODESPAWN); UpdateData udata; WorldPacket packet; @@ -694,7 +694,7 @@ void GameObject::Update(uint32 diff) case GAMEOBJECT_TYPE_GOOBER: if (GameTime::GetGameTimeMS() >= m_cooldownTime) { - RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE); + RemoveFlag(GO_FLAG_IN_USE); SetLootState(GO_JUST_DEACTIVATED); } break; @@ -823,7 +823,7 @@ void GameObject::Update(uint32 diff) SendObjectDeSpawnAnim(GetGUID()); //reset flags if (GameObjectOverride const* goOverride = GetGameObjectOverride()) - SetUInt32Value(GAMEOBJECT_FLAGS, goOverride->Flags); + ReplaceAllFlags(GameObjectFlags(goOverride->Flags)); } if (!m_respawnDelayTime) @@ -918,7 +918,7 @@ void GameObject::Delete() SetGoState(GO_STATE_READY); if (GameObjectOverride const* goOverride = GetGameObjectOverride()) - SetUInt32Value(GAMEOBJECT_FLAGS, goOverride->Flags); + ReplaceAllFlags(GameObjectFlags(goOverride->Flags)); uint32 poolid = GetSpawnId() ? sPoolMgr->IsPartOfAPool<GameObject>(GetSpawnId()) : 0; if (poolid) @@ -1069,7 +1069,7 @@ bool GameObject::LoadFromDB(ObjectGuid::LowType spawnId, Map* map, bool addToMap if (!GetGOInfo()->GetDespawnPossibility() && !GetGOInfo()->IsDespawnAtAction()) { - SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NODESPAWN); + SetFlag(GO_FLAG_NODESPAWN); m_respawnDelayTime = 0; m_respawnTime = 0; } @@ -1411,7 +1411,7 @@ void GameObject::ResetDoorOrButton() if (m_lootState == GO_READY || m_lootState == GO_JUST_DEACTIVATED) return; - RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE); + RemoveFlag(GO_FLAG_IN_USE); SetGoState(m_prevGoState); SetLootState(GO_JUST_DEACTIVATED); @@ -1452,8 +1452,10 @@ void GameObject::ActivateObject(GameObjectActions action, WorldObject* spellCast Use(unitCaster); break; case GameObjectActions::Unlock: + RemoveFlag(GO_FLAG_LOCKED); + break; case GameObjectActions::Lock: - ApplyModFlag(GAMEOBJECT_FLAGS, GO_FLAG_LOCKED, action == GameObjectActions::Lock); + SetFlag(GO_FLAG_LOCKED); break; case GameObjectActions::Open: if (unitCaster) @@ -1463,7 +1465,7 @@ void GameObject::ActivateObject(GameObjectActions action, WorldObject* spellCast if (unitCaster) { UseDoorOrButton(0, false, unitCaster); - RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_LOCKED); + RemoveFlag(GO_FLAG_LOCKED); } break; case GameObjectActions::Close: @@ -1486,12 +1488,14 @@ void GameObject::ActivateObject(GameObjectActions action, WorldObject* spellCast DespawnOrUnsummon(); break; case GameObjectActions::MakeInert: + SetFlag(GO_FLAG_NOT_SELECTABLE); + break; case GameObjectActions::MakeActive: - ApplyModFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE, action == GameObjectActions::MakeInert); + RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; case GameObjectActions::CloseAndLock: ResetDoorOrButton(); - SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_LOCKED); + SetFlag(GO_FLAG_LOCKED); break; case GameObjectActions::UseArtKit0: case GameObjectActions::UseArtKit1: @@ -1548,9 +1552,9 @@ void GameObject::SetGoArtKit(uint8 artkit, GameObject* go, ObjectGuid::LowType l void GameObject::SwitchDoorOrButton(bool activate, bool alternative /* = false */) { if (activate) - SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE); + SetFlag(GO_FLAG_IN_USE); else - RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE); + RemoveFlag(GO_FLAG_IN_USE); if (GetGoState() == GO_STATE_READY) //if closed -> open SetGoState(alternative ? GO_STATE_DESTROYED : GO_STATE_ACTIVE); @@ -1749,7 +1753,7 @@ void GameObject::Use(Unit* user) if (uint32 trapEntry = info->goober.linkedTrapId) TriggeringLinkedGameObject(trapEntry, user); - SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE); + SetFlag(GO_FLAG_IN_USE); SetLootState(GO_ACTIVATED, user); // this appear to be ok, however others exist in addition to this that should have custom (ex: 190510, 188692, 187389) @@ -2351,7 +2355,7 @@ void GameObject::SetDestructibleState(GameObjectDestructibleState state, WorldOb switch (state) { case GO_DESTRUCTIBLE_INTACT: - RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_DAMAGED | GO_FLAG_DESTROYED); + RemoveFlag(GO_FLAG_DAMAGED | GO_FLAG_DESTROYED); SetDisplayId(m_goInfo->displayId); if (setHealth) { @@ -2365,8 +2369,8 @@ void GameObject::SetDestructibleState(GameObjectDestructibleState state, WorldOb EventInform(m_goInfo->building.damagedEvent, attackerOrHealer); AI()->Damaged(attackerOrHealer, m_goInfo->building.damagedEvent); - RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_DESTROYED); - SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_DAMAGED); + RemoveFlag(GO_FLAG_DESTROYED); + SetFlag(GO_FLAG_DAMAGED); uint32 modelId = m_goInfo->displayId; if (DestructibleModelDataEntry const* modelData = sDestructibleModelDataStore.LookupEntry(m_goInfo->building.destructibleData)) @@ -2394,8 +2398,8 @@ void GameObject::SetDestructibleState(GameObjectDestructibleState state, WorldOb if (Battleground* bg = player->GetBattleground()) bg->DestroyGate(player, this); - RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_DAMAGED); - SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_DESTROYED); + RemoveFlag(GO_FLAG_DAMAGED); + SetFlag(GO_FLAG_DESTROYED); uint32 modelId = m_goInfo->displayId; if (DestructibleModelDataEntry const* modelData = sDestructibleModelDataStore.LookupEntry(m_goInfo->building.destructibleData)) @@ -2414,7 +2418,7 @@ void GameObject::SetDestructibleState(GameObjectDestructibleState state, WorldOb case GO_DESTRUCTIBLE_REBUILDING: { EventInform(m_goInfo->building.rebuildingEvent, attackerOrHealer); - RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_DAMAGED | GO_FLAG_DESTROYED); + RemoveFlag(GO_FLAG_DAMAGED | GO_FLAG_DESTROYED); uint32 modelId = m_goInfo->displayId; if (DestructibleModelDataEntry const* modelData = sDestructibleModelDataStore.LookupEntry(m_goInfo->building.destructibleData)) @@ -2527,7 +2531,7 @@ void GameObject::UpdateModel() if (GetMap()->ContainsGameObjectModel(*m_model)) GetMap()->RemoveGameObjectModel(*m_model); delete m_model; - m_model = CreateModel(); + CreateModel(); if (m_model) GetMap()->InsertGameObjectModel(*m_model); } @@ -2762,9 +2766,9 @@ private: GameObject* _owner; }; -GameObjectModel* GameObject::CreateModel() +void GameObject::CreateModel() { - return GameObjectModel::Create(std::make_unique<GameObjectModelOwnerImpl>(this), sWorld->GetDataPath()); + m_model = GameObjectModel::Create(std::make_unique<GameObjectModelOwnerImpl>(this), sWorld->GetDataPath()); } std::string GameObject::GetDebugInfo() const diff --git a/src/server/game/Entities/GameObject/GameObject.h b/src/server/game/Entities/GameObject/GameObject.h index 0646b53b85f..f3687c19154 100644 --- a/src/server/game/Entities/GameObject/GameObject.h +++ b/src/server/game/Entities/GameObject/GameObject.h @@ -20,7 +20,6 @@ #include "Object.h" #include "GridObject.h" -#include "DatabaseEnvFwd.h" #include "GameObjectData.h" #include "Loot.h" #include "MapObject.h" @@ -116,7 +115,7 @@ class TC_GAME_API GameObject : public WorldObject, public GridObject<GameObject> QuaternionData GetWorldRotation() const; // overwrite WorldObject function for proper name localization - std::string const& GetNameForLocaleIdx(LocaleConstant locale_idx) const override; + std::string const& GetNameForLocaleIdx(LocaleConstant locale) const override; void SaveToDB(); void SaveToDB(uint32 mapid, uint8 spawnMask, uint32 phaseMask); @@ -126,7 +125,7 @@ class TC_GAME_API GameObject : public WorldObject, public GridObject<GameObject> void SetOwnerGUID(ObjectGuid owner) { // Owner already found and different than expected owner - remove object from old owner - if (owner && GetOwnerGUID() && GetOwnerGUID() != owner) + if (!owner.IsEmpty() && !GetOwnerGUID().IsEmpty() && GetOwnerGUID() != owner) { ABORT(); } @@ -161,6 +160,13 @@ class TC_GAME_API GameObject : public WorldObject, public GridObject<GameObject> void Delete(); void getFishLoot(Loot* loot, Player* loot_owner); void getFishLootJunk(Loot* loot, Player* loot_owner); + + bool HasFlag(GameObjectFlags flags) const { return Object::HasFlag(GAMEOBJECT_FLAGS, flags); } + void SetFlag(GameObjectFlags flags) { Object::SetFlag(GAMEOBJECT_FLAGS, flags); } + void RemoveFlag(GameObjectFlags flags) { Object::RemoveFlag(GAMEOBJECT_FLAGS, flags); } + void ReplaceAllFlags(GameObjectFlags flags) { SetUInt32Value(GAMEOBJECT_FLAGS, flags); } + + void SetLevel(uint32 level) { SetUInt32Value(GAMEOBJECT_LEVEL, level); } GameobjectTypes GetGoType() const { return GameobjectTypes(GetByteValue(GAMEOBJECT_BYTES_1, 1)); } void SetGoType(GameobjectTypes type) { SetByteValue(GAMEOBJECT_BYTES_1, 1, type); } GOState GetGoState() const { return GOState(GetByteValue(GAMEOBJECT_BYTES_1, 0)); } @@ -191,14 +197,10 @@ class TC_GAME_API GameObject : public WorldObject, public GridObject<GameObject> void SetLootGenerationTime(); uint32 GetLootGenerationTime() const { return m_lootGenerationTime; } - void AddToSkillupList(ObjectGuid::LowType PlayerGuidLow) { m_SkillupList.push_back(PlayerGuidLow); } - bool IsInSkillupList(ObjectGuid::LowType PlayerGuidLow) const + void AddToSkillupList(ObjectGuid const& PlayerGuidLow) { m_SkillupList.insert(PlayerGuidLow); } + bool IsInSkillupList(ObjectGuid const& playerGuid) const { - for (std::list<ObjectGuid::LowType>::const_iterator i = m_SkillupList.begin(); i != m_SkillupList.end(); ++i) - if (*i == PlayerGuidLow) - return true; - - return false; + return m_SkillupList.count(playerGuid) > 0; } void ClearSkillupList() { m_SkillupList.clear(); } @@ -206,7 +208,7 @@ class TC_GAME_API GameObject : public WorldObject, public GridObject<GameObject> void AddUse() { ++m_usetimes; } uint32 GetUseCount() const { return m_usetimes; } - uint32 GetUniqueUseCount() const { return m_unique_users.size(); } + uint32 GetUniqueUseCount() const { return uint32(m_unique_users.size()); } void SaveRespawnTime(uint32 forceDelay = 0); @@ -234,7 +236,6 @@ class TC_GAME_API GameObject : public WorldObject, public GridObject<GameObject> void TriggeringLinkedGameObject(uint32 trapEntry, Unit* target); bool IsNeverVisible() const override; - bool IsAlwaysVisibleFor(WorldObject const* seer) const override; bool IsInvisibleDueToDespawn() const override; @@ -250,9 +251,9 @@ class TC_GAME_API GameObject : public WorldObject, public GridObject<GameObject> void SetDestructibleState(GameObjectDestructibleState state, WorldObject* attackerOrHealer = nullptr, bool setHealth = false); GameObjectDestructibleState GetDestructibleState() const { - if (HasFlag(GAMEOBJECT_FLAGS, GO_FLAG_DESTROYED)) + if (HasFlag(GO_FLAG_DESTROYED)) return GO_DESTRUCTIBLE_DESTROYED; - if (HasFlag(GAMEOBJECT_FLAGS, GO_FLAG_DAMAGED)) + if (HasFlag(GO_FLAG_DAMAGED)) return GO_DESTRUCTIBLE_DAMAGED; return GO_DESTRUCTIBLE_INTACT; } @@ -303,7 +304,7 @@ class TC_GAME_API GameObject : public WorldObject, public GridObject<GameObject> std::string GetDebugInfo() const override; protected: - GameObjectModel* CreateModel(); + void CreateModel(); void UpdateModel(); // updates model in case displayId were changed uint32 m_spellId; time_t m_respawnTime; // (secs) time of next respawn (or despawn if GO have owner()), @@ -318,9 +319,9 @@ class TC_GAME_API GameObject : public WorldObject, public GridObject<GameObject> // For traps this: spell casting cooldown, for doors/buttons: reset time. GOState m_prevGoState; // What state to set whenever resetting - std::list<ObjectGuid::LowType> m_SkillupList; + GuidSet m_SkillupList; - ObjectGuid m_ritualOwnerGUID; // used for GAMEOBJECT_TYPE_SUMMONING_RITUAL where GO is not summoned (no owner) + ObjectGuid m_ritualOwnerGUID; // used for GAMEOBJECT_TYPE_RITUAL where GO is not summoned (no owner) GuidSet m_unique_users; uint32 m_usetimes; @@ -355,6 +356,7 @@ class TC_GAME_API GameObject : public WorldObject, public GridObject<GameObject> //! Following check does check 3d distance return IsInRange(obj->GetPositionX(), obj->GetPositionY(), obj->GetPositionZ(), dist2compare); } + GameObjectAI* m_AI; bool m_respawnCompatibilityMode; }; diff --git a/src/server/game/Entities/Transport/Transport.cpp b/src/server/game/Entities/Transport/Transport.cpp index f1d45b935a4..6e4b0ed7857 100644 --- a/src/server/game/Entities/Transport/Transport.cpp +++ b/src/server/game/Entities/Transport/Transport.cpp @@ -87,7 +87,7 @@ bool Transport::Create(ObjectGuid::LowType guidlow, uint32 entry, uint32 mapid, if (GameObjectOverride const* goOverride = GetGameObjectOverride()) { SetFaction(goOverride->Faction); - SetUInt32Value(GAMEOBJECT_FLAGS, goOverride->Flags); + ReplaceAllFlags(GameObjectFlags(goOverride->Flags)); } m_goValue.Transport.PathProgress = 0; @@ -102,7 +102,7 @@ bool Transport::Create(ObjectGuid::LowType guidlow, uint32 entry, uint32 mapid, SetLocalRotation(0.0f, 0.0f, 0.0f, 1.0f); SetParentRotation(QuaternionData()); - m_model = CreateModel(); + CreateModel(); return true; } diff --git a/src/server/game/Entities/Transport/Transport.h b/src/server/game/Entities/Transport/Transport.h index 6f2b30f7408..cd88a4ede42 100644 --- a/src/server/game/Entities/Transport/Transport.h +++ b/src/server/game/Entities/Transport/Transport.h @@ -80,7 +80,7 @@ class TC_GAME_API Transport : public GameObject, public TransportBase } uint32 GetTransportPeriod() const override { return GetUInt32Value(GAMEOBJECT_LEVEL); } - void SetPeriod(uint32 period) { SetUInt32Value(GAMEOBJECT_LEVEL, period); } + void SetPeriod(uint32 period) { SetLevel(period); } uint32 GetTimer() const { return GetGOValue()->Transport.PathProgress; } KeyFrameVec const& GetKeyFrames() const { return _transportInfo->keyFrames; } diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index 5123cad6a23..7140403ce95 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -1871,9 +1871,9 @@ void Spell::EffectOpenLock() if (gameObjTarget) { // Allow one skill-up until respawned - if (!gameObjTarget->IsInSkillupList(player->GetGUID().GetCounter()) && + if (!gameObjTarget->IsInSkillupList(player->GetGUID()) && player->UpdateGatherSkill(skillId, pureSkillValue, reqSkillValue)) - gameObjTarget->AddToSkillupList(player->GetGUID().GetCounter()); + gameObjTarget->AddToSkillupList(player->GetGUID()); } else if (itemTarget) { @@ -3657,7 +3657,7 @@ void Spell::EffectDuel() } pGameObj->SetFaction(caster->GetFaction()); - pGameObj->SetUInt32Value(GAMEOBJECT_LEVEL, caster->GetLevel() + 1); + pGameObj->SetLevel(caster->GetLevel() + 1); int32 duration = m_spellInfo->GetDuration(); pGameObj->SetRespawnTime(duration > 0 ? duration/IN_MILLISECONDS : 0); pGameObj->SetSpellId(m_spellInfo->Id); @@ -4000,7 +4000,7 @@ void Spell::EffectSummonObject() } go->SetFaction(unitCaster->GetFaction()); - go->SetUInt32Value(GAMEOBJECT_LEVEL, unitCaster->GetLevel()); + go->SetLevel(unitCaster->GetLevel()); int32 duration = m_spellInfo->GetDuration(); go->SetRespawnTime(duration > 0 ? duration / IN_MILLISECONDS : 0); go->SetSpellId(m_spellInfo->Id); diff --git a/src/server/scripts/Battlefield/BattlefieldWG.cpp b/src/server/scripts/Battlefield/BattlefieldWG.cpp index 9d3c98fdd77..e1302b05b2a 100644 --- a/src/server/scripts/Battlefield/BattlefieldWG.cpp +++ b/src/server/scripts/Battlefield/BattlefieldWG.cpp @@ -571,7 +571,7 @@ void BattlefieldWG::OnBattleStart() // Update faction of relic, only attacker can click on relic->SetFaction(WintergraspFaction[GetAttackerTeam()]); // Set in use (not allow to click on before last door is broken) - relic->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE | GO_FLAG_NOT_SELECTABLE); + relic->SetFlag(GO_FLAG_IN_USE | GO_FLAG_NOT_SELECTABLE); m_titansRelicGUID = relic->GetGUID(); } else @@ -1495,7 +1495,7 @@ void BfWGGameObjectBuilding::Destroyed() go->SetGoState(GO_STATE_ACTIVE); _wg->SetRelicInteractible(true); if (_wg->GetRelic()) - _wg->GetRelic()->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE | GO_FLAG_NOT_SELECTABLE); + _wg->GetRelic()->RemoveFlag(GO_FLAG_IN_USE | GO_FLAG_NOT_SELECTABLE); else TC_LOG_ERROR("bg.battlefield.wg", "Titan Relic not found."); break; diff --git a/src/server/scripts/Commands/cs_gobject.cpp b/src/server/scripts/Commands/cs_gobject.cpp index 5fd73e20f6b..806b195924b 100644 --- a/src/server/scripts/Commands/cs_gobject.cpp +++ b/src/server/scripts/Commands/cs_gobject.cpp @@ -610,14 +610,31 @@ public: if (!objectState) return false; - if (objectType < 4) - object->SetByteValue(GAMEOBJECT_BYTES_1, objectType, *objectState); - else if (objectType == 4) - { - WorldPacket data(SMSG_GAMEOBJECT_CUSTOM_ANIM, 8+4); - data << object->GetGUID(); - data << static_cast<uint32>(*objectState); - object->SendMessageToSet(&data, true); + switch (objectType) + { + case 0: + object->SetGoState(GOState(*objectState)); + break; + case 1: + object->SetGoType(GameobjectTypes(*objectState)); + break; + case 2: + object->SetGoArtKit(*objectState); + break; + case 3: + object->SetGoAnimProgress(*objectState); + break; + case 4: + object->SendCustomAnim(*objectState); + break; + case 5: + if (*objectState > GO_DESTRUCTIBLE_REBUILDING) + return false; + + object->SetDestructibleState(GameObjectDestructibleState(*objectState)); + break; + default: + break; } handler->PSendSysMessage("Set gobject type %d state %u", objectType, *objectState); return true; diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_broodlord_lashlayer.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_broodlord_lashlayer.cpp index 76c021e3b91..2a66ff8bf05 100644 --- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_broodlord_lashlayer.cpp +++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_broodlord_lashlayer.cpp @@ -194,7 +194,7 @@ struct go_suppression_device : public GameObjectAI if (me->GetGoState() == GO_STATE_ACTIVE) me->SetGoState(GO_STATE_READY); me->SetLootState(GO_READY); - me->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + me->RemoveFlag(GO_FLAG_NOT_SELECTABLE); _events.ScheduleEvent(EVENT_SUPPRESSION_CAST, 0s); } @@ -204,7 +204,7 @@ struct go_suppression_device : public GameObjectAI return; _active = false; me->SetGoState(GO_STATE_ACTIVE); - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + me->SetFlag(GO_FLAG_NOT_SELECTABLE); _events.CancelEvent(EVENT_SUPPRESSION_CAST); } diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_chromaggus.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_chromaggus.cpp index 808b14e45f1..8cc58f8dba2 100644 --- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_chromaggus.cpp +++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_chromaggus.cpp @@ -303,7 +303,7 @@ struct go_chromaggus_lever : public GameObjectAI _instance->HandleGameObject(ObjectGuid::Empty, true, go); } - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE | GO_FLAG_IN_USE); + me->SetFlag(GO_FLAG_NOT_SELECTABLE | GO_FLAG_IN_USE); me->SetGoState(GO_STATE_ACTIVE); return true; diff --git a/src/server/scripts/EasternKingdoms/Deadmines/instance_deadmines.cpp b/src/server/scripts/EasternKingdoms/Deadmines/instance_deadmines.cpp index 138bcc04868..868e8494403 100644 --- a/src/server/scripts/EasternKingdoms/Deadmines/instance_deadmines.cpp +++ b/src/server/scripts/EasternKingdoms/Deadmines/instance_deadmines.cpp @@ -185,7 +185,7 @@ class instance_deadmines : public InstanceMapScript void LeverStucked() { if (GameObject* pDoorLever = instance->GetGameObject(DoorLeverGUID)) - pDoorLever->SetUInt32Value(GAMEOBJECT_FLAGS, 4); + pDoorLever->SetFlag(GO_FLAG_INTERACT_COND); } void OnCreatureCreate(Creature* creature) override diff --git a/src/server/scripts/EasternKingdoms/Gnomeregan/gnomeregan.cpp b/src/server/scripts/EasternKingdoms/Gnomeregan/gnomeregan.cpp index dbdd15aebf8..697d1a8a214 100644 --- a/src/server/scripts/EasternKingdoms/Gnomeregan/gnomeregan.cpp +++ b/src/server/scripts/EasternKingdoms/Gnomeregan/gnomeregan.cpp @@ -312,7 +312,7 @@ public: if (GameObject* go = me->SummonGameObject(183410, -533.140f, -105.322f, -156.016f, 0.f, QuaternionData(), 1s)) { GoSummonList.push_back(go->GetGUID()); - go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); //We can't use it! + go->SetFlag(GO_FLAG_NOT_SELECTABLE); //We can't use it! } Summon(3); break; @@ -327,7 +327,7 @@ public: if (GameObject* go = me->SummonGameObject(183410, -542.199f, -96.854f, -155.790f, 0.f, QuaternionData(), 1s)) { GoSummonList.push_back(go->GetGUID()); - go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->SetFlag(GO_FLAG_NOT_SELECTABLE); } break; case 5: @@ -341,7 +341,7 @@ public: if (GameObject* go = me->SummonGameObject(183410, -507.820f, -103.333f, -151.353f, 0.f, QuaternionData(), 1s)) { GoSummonList.push_back(go->GetGUID()); - go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); //We can't use it! + go->SetFlag(GO_FLAG_NOT_SELECTABLE); //We can't use it! Summon(5); } break; @@ -349,7 +349,7 @@ public: if (GameObject* go = me->SummonGameObject(183410, -511.829f, -86.249f, -151.431f, 0.f, QuaternionData(), 1s)) { GoSummonList.push_back(go->GetGUID()); - go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); //We can't use it! + go->SetFlag(GO_FLAG_NOT_SELECTABLE); //We can't use it! } break; case 8: diff --git a/src/server/scripts/EasternKingdoms/Karazhan/boss_nightbane.cpp b/src/server/scripts/EasternKingdoms/Karazhan/boss_nightbane.cpp index 35394225430..90b87ede00a 100644 --- a/src/server/scripts/EasternKingdoms/Karazhan/boss_nightbane.cpp +++ b/src/server/scripts/EasternKingdoms/Karazhan/boss_nightbane.cpp @@ -130,7 +130,7 @@ public: me->SetDisableGravity(true); HandleTerraceDoors(true); if (GameObject* urn = ObjectAccessor::GetGameObject(*me, instance->GetGuidData(DATA_GO_BLACKENED_URN))) - urn->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE); + urn->RemoveFlag(GO_FLAG_IN_USE); } void EnterEvadeMode(EvadeReason why) override @@ -430,7 +430,7 @@ class go_blackened_urn : public GameObjectScript bool OnGossipHello(Player* /*player*/) override { - if (me->HasFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE)) + if (me->HasFlag(GO_FLAG_IN_USE)) return false; if (instance->GetBossState(DATA_NIGHTBANE) == DONE || instance->GetBossState(DATA_NIGHTBANE) == IN_PROGRESS) @@ -438,7 +438,7 @@ class go_blackened_urn : public GameObjectScript if (Creature* nightbane = ObjectAccessor::GetCreature(*me, instance->GetGuidData(DATA_NIGHTBANE))) { - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE); + me->SetFlag(GO_FLAG_IN_USE); nightbane->AI()->DoAction(ACTION_SUMMON); } return false; diff --git a/src/server/scripts/EasternKingdoms/Karazhan/instance_karazhan.cpp b/src/server/scripts/EasternKingdoms/Karazhan/instance_karazhan.cpp index c8a309b3ad3..66decf65ed3 100644 --- a/src/server/scripts/EasternKingdoms/Karazhan/instance_karazhan.cpp +++ b/src/server/scripts/EasternKingdoms/Karazhan/instance_karazhan.cpp @@ -162,7 +162,7 @@ public: HandleGameObject(StageDoorLeftGUID, true); HandleGameObject(StageDoorRightGUID, true); if (GameObject* sideEntrance = instance->GetGameObject(SideEntranceDoor)) - sideEntrance->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_LOCKED); + sideEntrance->RemoveFlag(GO_FLAG_LOCKED); UpdateEncounterStateForKilledCreature(16812, nullptr); } break; @@ -224,9 +224,9 @@ public: case GO_SIDE_ENTRANCE_DOOR: SideEntranceDoor = go->GetGUID(); if (GetBossState(DATA_OPERA_PERFORMANCE) == DONE) - go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_LOCKED); + go->SetFlag(GO_FLAG_LOCKED); else - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_LOCKED); + go->RemoveFlag(GO_FLAG_LOCKED); break; case GO_DUST_COVERED_CHEST: DustCoveredChest = go->GetGUID(); diff --git a/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp b/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp index 34e7a58140c..4311c08efa2 100644 --- a/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp +++ b/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp @@ -159,7 +159,7 @@ class instance_magisters_terrace : public InstanceMapScript { case GO_ESCAPE_ORB: if (GetBossState(DATA_KAELTHAS_SUNSTRIDER) == DONE) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; default: break; @@ -201,7 +201,7 @@ class instance_magisters_terrace : public InstanceMapScript case DATA_KAELTHAS_SUNSTRIDER: if (state == DONE) if (GameObject* orb = GetGameObject(DATA_ESCAPE_ORB)) - orb->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + orb->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; default: break; diff --git a/src/server/scripts/EasternKingdoms/ScarletMonastery/instance_scarlet_monastery.cpp b/src/server/scripts/EasternKingdoms/ScarletMonastery/instance_scarlet_monastery.cpp index efa9bfefef5..94963564991 100644 --- a/src/server/scripts/EasternKingdoms/ScarletMonastery/instance_scarlet_monastery.cpp +++ b/src/server/scripts/EasternKingdoms/ScarletMonastery/instance_scarlet_monastery.cpp @@ -71,7 +71,7 @@ class instance_scarlet_monastery : public InstanceMapScript _horsemanState = IN_PROGRESS; for (uint32 data : {DATA_PUMPKIN_SHRINE, DATA_LOOSELY_TURNED_SOIL}) if (GameObject* gob = GetGameObject(data)) - gob->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + gob->SetFlag(GO_FLAG_NOT_SELECTABLE); instance->SummonCreature(NPC_HEADLESS_HORSEMAN_HEAD, HeadlessHorsemanHeadSpawnPosition); instance->SummonCreature(NPC_FLAME_BUNNY, BunnySpawnPosition); diff --git a/src/server/scripts/EasternKingdoms/Stratholme/instance_stratholme.cpp b/src/server/scripts/EasternKingdoms/Stratholme/instance_stratholme.cpp index c4a2df94fe2..7c14a894836 100644 --- a/src/server/scripts/EasternKingdoms/Stratholme/instance_stratholme.cpp +++ b/src/server/scripts/EasternKingdoms/Stratholme/instance_stratholme.cpp @@ -198,7 +198,7 @@ class instance_stratholme : public InstanceMapScript break; case GO_GAUNTLET_GATE1: //weird, but unless flag is set, client will not respond as expected. DB bug? - go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_LOCKED); + go->SetFlag(GO_FLAG_LOCKED); gauntletGate1GUID = go->GetGUID(); break; case GO_ZIGGURAT1: diff --git a/src/server/scripts/EasternKingdoms/SunkenTemple/instance_sunken_temple.cpp b/src/server/scripts/EasternKingdoms/SunkenTemple/instance_sunken_temple.cpp index 8028bcce7fc..47ec2889161 100644 --- a/src/server/scripts/EasternKingdoms/SunkenTemple/instance_sunken_temple.cpp +++ b/src/server/scripts/EasternKingdoms/SunkenTemple/instance_sunken_temple.cpp @@ -178,7 +178,7 @@ public: void UseStatue(GameObject* go) { go->SummonGameObject(GO_ATALAI_LIGHT1, *go, QuaternionData(), 0s); - go->SetUInt32Value(GAMEOBJECT_FLAGS, 4); + go->SetFlag(GO_FLAG_INTERACT_COND); } void UseLastStatue(GameObject* go) diff --git a/src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp b/src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp index ec21f8fddc5..97148f8e5e7 100644 --- a/src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp +++ b/src/server/scripts/EasternKingdoms/Uldaman/instance_uldaman.cpp @@ -121,7 +121,7 @@ class instance_uldaman : public InstanceMapScript case GO_ANCIENT_VAULT_DOOR: go->SetGoState(GO_STATE_READY); - go->SetUInt32Value(GAMEOBJECT_FLAGS, 33); + go->ReplaceAllFlags(GO_FLAG_IN_USE | GO_FLAG_NODESPAWN); ancientVaultDoor = go->GetGUID(); if (m_auiEncounter[1] == DONE) @@ -141,7 +141,7 @@ class instance_uldaman : public InstanceMapScript if (m_auiEncounter[2] == DONE) { HandleGameObject(ObjectGuid::Empty, true, go); - go->SetUInt32Value(GAMEOBJECT_FLAGS, GO_FLAG_INTERACT_COND); + go->SetFlag(GO_FLAG_INTERACT_COND); } break; } @@ -171,7 +171,7 @@ class instance_uldaman : public InstanceMapScript if (!go) return; - go->SetUInt32Value(GAMEOBJECT_FLAGS, GO_FLAG_INTERACT_COND); + go->SetFlag(GO_FLAG_INTERACT_COND); } void ActivateStoneKeepers() diff --git a/src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp b/src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp index d0bb49544f0..d680e0b7c55 100644 --- a/src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp +++ b/src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp @@ -244,14 +244,14 @@ class npc_harrison_jones : public CreatureScript break; case GONG_EVENT_3: if (GameObject* gong = instance->GetGameObject(GO_STRANGE_GONG)) - gong->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + gong->RemoveFlag(GO_FLAG_NOT_SELECTABLE); _gongEvent = GONG_EVENT_4; _gongTimer = 105000; break; case GONG_EVENT_4: me->RemoveAura(SPELL_BANGING_THE_GONG); if (GameObject* gong = instance->GetGameObject(GO_STRANGE_GONG)) - gong->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + gong->SetFlag(GO_FLAG_NOT_SELECTABLE); // trigger or gong will need to be scripted to set IN_PROGRESS after enough hits. // This is temp workaround. diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_arlokk.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_arlokk.cpp index 02150827d45..3291530c5d3 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_arlokk.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_arlokk.cpp @@ -160,7 +160,7 @@ struct boss_arlokk : public BossAI { BossAI::EnterEvadeMode(why); if (GameObject* object = instance->GetGameObject(DATA_GONG_BETHEKK)) - object->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + object->RemoveFlag(GO_FLAG_NOT_SELECTABLE); me->DespawnOrUnsummon(4s); } @@ -426,7 +426,7 @@ struct go_gong_of_bethekk : public GameObjectAI bool OnGossipHello(Player* /*player*/) override { - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + me->SetFlag(GO_FLAG_NOT_SELECTABLE); me->SendCustomAnim(0); me->SummonCreature(NPC_ARLOKK, PosSummonArlokk[0], TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 10min); return true; diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp index 1452b440ce3..120ff0e3f61 100644 --- a/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp +++ b/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp @@ -73,9 +73,9 @@ class instance_zulgurub : public InstanceMapScript { case GO_GONG_OF_BETHEKK: if (GetBossState(DATA_ARLOKK) == DONE) - go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->SetFlag(GO_FLAG_NOT_SELECTABLE); else - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; default: break; diff --git a/src/server/scripts/Kalimdor/BlackfathomDeeps/blackfathom_deeps.cpp b/src/server/scripts/Kalimdor/BlackfathomDeeps/blackfathom_deeps.cpp index 2949d9ed40b..0ce911b30ee 100644 --- a/src/server/scripts/Kalimdor/BlackfathomDeeps/blackfathom_deeps.cpp +++ b/src/server/scripts/Kalimdor/BlackfathomDeeps/blackfathom_deeps.cpp @@ -57,7 +57,7 @@ struct go_blackfathom_fire : public GameObjectAI bool OnGossipHello(Player* /*player*/) override { me->SetGoState(GO_STATE_ACTIVE); - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + me->SetFlag(GO_FLAG_NOT_SELECTABLE); instance->SetData(DATA_FIRE, instance->GetData(DATA_FIRE) + 1); return true; } diff --git a/src/server/scripts/Kalimdor/BlackfathomDeeps/instance_blackfathom_deeps.cpp b/src/server/scripts/Kalimdor/BlackfathomDeeps/instance_blackfathom_deeps.cpp index 5bd2afeb68f..05e0fa32767 100644 --- a/src/server/scripts/Kalimdor/BlackfathomDeeps/instance_blackfathom_deeps.cpp +++ b/src/server/scripts/Kalimdor/BlackfathomDeeps/instance_blackfathom_deeps.cpp @@ -106,12 +106,12 @@ public: case GO_SHRINE_OF_GELIHAST: shrineOfGelihastGUID = go->GetGUID(); if (GetBossState(DATA_GELIHAST) != DONE) - go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->SetFlag(GO_FLAG_NOT_SELECTABLE); break; case GO_ALTAR_OF_THE_DEEPS: altarOfTheDeepsGUID = go->GetGUID(); if (GetBossState(DATA_AKU_MAI) != DONE) - go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->SetFlag(GO_FLAG_NOT_SELECTABLE); break; case GO_AKU_MAI_DOOR: if (GetBossState(DATA_AKU_MAI) == DONE) @@ -189,13 +189,13 @@ public: case DATA_GELIHAST: if (state == DONE) if (GameObject* go = instance->GetGameObject(shrineOfGelihastGUID)) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; case DATA_AKU_MAI: if (state == DONE) if (GameObject* go = instance->GetGameObject(altarOfTheDeepsGUID)) { - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); go->SummonCreature(NPC_MORRIDUNE, SpawnsLocation[10], TEMPSUMMON_CORPSE_TIMED_DESPAWN, 5min); } break; diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/npc_arthas.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/npc_arthas.cpp index fb1cac8b123..9caecbebffd 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/npc_arthas.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/npc_arthas.cpp @@ -1419,7 +1419,7 @@ public: malganis->CastSpell(malganis, SPELL_MALGANIS_QUEST_CREDIT, true); malganis->CastSpell(malganis, SPELL_MALGANIS_KILL_CREDIT, true); if (GameObject* chest = malganis->FindNearestGameObject(RAID_MODE(GO_CHEST_NORMAL, GO_CHEST_HEROIC), 100.0f)) - chest->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + chest->RemoveFlag(GO_FLAG_NOT_SELECTABLE); } events.ScheduleEvent(RP5_EVENT_MALGANIS12, 3s); events.ScheduleEvent(RP5_EVENT_MALGANIS_LEAVE, 19s); diff --git a/src/server/scripts/Kalimdor/RazorfenDowns/instance_razorfen_downs.cpp b/src/server/scripts/Kalimdor/RazorfenDowns/instance_razorfen_downs.cpp index 78610296335..59b8637227e 100644 --- a/src/server/scripts/Kalimdor/RazorfenDowns/instance_razorfen_downs.cpp +++ b/src/server/scripts/Kalimdor/RazorfenDowns/instance_razorfen_downs.cpp @@ -72,7 +72,7 @@ public: case GO_GONG: goGongGUID = gameObject->GetGUID(); if (GetBossState(DATA_TUTEN_KASH) == DONE) - gameObject->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + gameObject->SetFlag(GO_FLAG_NOT_SELECTABLE); break; case GO_IDOL_OVEN_FIRE: case GO_IDOL_CUP_FIRE: @@ -115,7 +115,7 @@ public: case IN_PROGRESS: { if (GameObject* go = instance->GetGameObject(goGongGUID)) - go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->SetFlag(GO_FLAG_NOT_SELECTABLE); switch (gongWave) { @@ -153,7 +153,7 @@ public: { fiendsKilled = 0; if (GameObject* go = instance->GetGameObject(goGongGUID)) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); } break; case NPC_TOMB_REAVER: @@ -161,7 +161,7 @@ public: { reaversKilled = 0; if (GameObject* go = instance->GetGameObject(goGongGUID)) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); } break; } diff --git a/src/server/scripts/Kalimdor/RazorfenKraul/instance_razorfen_kraul.cpp b/src/server/scripts/Kalimdor/RazorfenKraul/instance_razorfen_kraul.cpp index f8784986981..e02ae696e37 100644 --- a/src/server/scripts/Kalimdor/RazorfenKraul/instance_razorfen_kraul.cpp +++ b/src/server/scripts/Kalimdor/RazorfenKraul/instance_razorfen_kraul.cpp @@ -79,7 +79,7 @@ public: if (WardKeeperDeath == WARD_KEEPERS_NR) if (GameObject* go = instance->GetGameObject(DoorWardGUID)) { - go->SetUInt32Value(GAMEOBJECT_FLAGS, 33); + go->ReplaceAllFlags(GO_FLAG_IN_USE | GO_FLAG_NODESPAWN); go->SetGoState(GO_STATE_ACTIVE); } } diff --git a/src/server/scripts/Kalimdor/zone_ashenvale.cpp b/src/server/scripts/Kalimdor/zone_ashenvale.cpp index d7e72ff0751..f5fe45af7eb 100644 --- a/src/server/scripts/Kalimdor/zone_ashenvale.cpp +++ b/src/server/scripts/Kalimdor/zone_ashenvale.cpp @@ -258,7 +258,7 @@ public: if (GameObject* go = GetClosestGameObjectWithEntry(me, GO_NAGA_BRAZIER, INTERACTION_DISTANCE*2)) { - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); SetEscortPaused(true); } break; diff --git a/src/server/scripts/Kalimdor/zone_silithus.cpp b/src/server/scripts/Kalimdor/zone_silithus.cpp index e012dfd4e82..6aa57bb75cc 100644 --- a/src/server/scripts/Kalimdor/zone_silithus.cpp +++ b/src/server/scripts/Kalimdor/zone_silithus.cpp @@ -1418,7 +1418,7 @@ class go_wind_stone : public GameObjectScript void Reset() override { // Allow despawning - me->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NODESPAWN); + me->RemoveFlag(GO_FLAG_NODESPAWN); isSummoning = false; } }; diff --git a/src/server/scripts/Kalimdor/zone_winterspring.cpp b/src/server/scripts/Kalimdor/zone_winterspring.cpp index 40d9173053a..09e02e55558 100644 --- a/src/server/scripts/Kalimdor/zone_winterspring.cpp +++ b/src/server/scripts/Kalimdor/zone_winterspring.cpp @@ -308,13 +308,13 @@ public: { if (GameObject* go = GetClosestGameObjectWithEntry(me, GO_ELUNE_ALTAR, 10.0f)) { - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); me->SetFacingToObject(go); _altarGUID = go->GetGUID(); } } else if (GameObject* go = GetClosestGameObjectWithEntry(me, GO_ELUNE_FIRE, 10.0f)) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); // Yell and set escort to pause Talk(SAY_REACH_TORCH); @@ -585,7 +585,7 @@ public: if (npc_ranshalla::npc_ranshallaAI* escortAI = dynamic_cast<npc_ranshalla::npc_ranshallaAI*>(ranshalla->AI())) escortAI->DoContinueEscort(isAltar); } - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + me->SetFlag(GO_FLAG_NOT_SELECTABLE); return false; } }; diff --git a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_prince_taldaram.cpp b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_prince_taldaram.cpp index dc888672538..af90f1defc3 100644 --- a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_prince_taldaram.cpp +++ b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_prince_taldaram.cpp @@ -387,7 +387,7 @@ struct go_prince_taldaram_sphere : public GameObjectAI Creature* princeTaldaram = instance->GetCreature(DATA_PRINCE_TALDARAM); if (princeTaldaram && princeTaldaram->IsAlive()) { - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + me->SetFlag(GO_FLAG_NOT_SELECTABLE); me->SetGoState(GO_STATE_ACTIVE); switch (me->GetEntry()) diff --git a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/instance_ahnkahet.cpp b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/instance_ahnkahet.cpp index db1ba1b3242..13b6c12c5b4 100644 --- a/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/instance_ahnkahet.cpp +++ b/src/server/scripts/Northrend/AzjolNerub/Ahnkahet/instance_ahnkahet.cpp @@ -83,19 +83,19 @@ class instance_ahnkahet : public InstanceMapScript if (SpheresState[0]) { go->SetGoState(GO_STATE_ACTIVE); - go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->SetFlag(GO_FLAG_NOT_SELECTABLE); } else - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; case GO_SPHERE_2: if (SpheresState[1]) { go->SetGoState(GO_STATE_ACTIVE); - go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->SetFlag(GO_FLAG_NOT_SELECTABLE); } else - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; default: break; diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp index 0f0767189c7..5a656477ecc 100644 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp @@ -210,7 +210,7 @@ class instance_trial_of_the_crusader : public InstanceMapScript DoUpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_BE_SPELL_TARGET, SPELL_CHAMPIONS_KILLED_IN_MINUTE); DoRespawnGameObject(GetGuidData(DATA_CRUSADERS_CHEST), 7_days); if (GameObject* cache = GetGameObject(DATA_CRUSADERS_CHEST)) - cache->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + cache->RemoveFlag(GO_FLAG_NOT_SELECTABLE); if (Creature* fordring = GetCreature(DATA_FORDRING)) fordring->AI()->DoAction(ACTION_CHAMPIONS_DEFEATED); EventStage = 3100; diff --git a/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/instance_halls_of_reflection.cpp b/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/instance_halls_of_reflection.cpp index 9fcc7df1730..a623bde0876 100644 --- a/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/instance_halls_of_reflection.cpp +++ b/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/instance_halls_of_reflection.cpp @@ -340,7 +340,7 @@ class instance_halls_of_reflection : public InstanceMapScript break; case DONE: if (GameObject* chest = instance->GetGameObject(CaptainsChestGUID)) - chest->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_LOCKED | GO_FLAG_NOT_SELECTABLE | GO_FLAG_NODESPAWN); + chest->RemoveFlag(GO_FLAG_LOCKED | GO_FLAG_NOT_SELECTABLE | GO_FLAG_NODESPAWN); DoUseDoorOrButton(CaveInGUID, 15); diff --git a/src/server/scripts/Northrend/Gundrak/instance_gundrak.cpp b/src/server/scripts/Northrend/Gundrak/instance_gundrak.cpp index b792c466c4a..0af07f1401b 100644 --- a/src/server/scripts/Northrend/Gundrak/instance_gundrak.cpp +++ b/src/server/scripts/Northrend/Gundrak/instance_gundrak.cpp @@ -99,7 +99,7 @@ class instance_gundrak : public InstanceMapScript if (GetBossState(DATA_SLAD_RAN) == DONE) { if (SladRanStatueState == GO_STATE_ACTIVE) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); else go->SetGoState(GO_STATE_ACTIVE); } @@ -108,7 +108,7 @@ class instance_gundrak : public InstanceMapScript if (GetBossState(DATA_MOORABI) == DONE) { if (MoorabiStatueState == GO_STATE_ACTIVE) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); else go->SetGoState(GO_STATE_ACTIVE); } @@ -117,7 +117,7 @@ class instance_gundrak : public InstanceMapScript if (GetBossState(DATA_DRAKKARI_COLOSSUS) == DONE) { if (DrakkariColossusStatueState == GO_STATE_ACTIVE) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); else go->SetGoState(GO_STATE_ACTIVE); } @@ -173,17 +173,17 @@ class instance_gundrak : public InstanceMapScript case DATA_SLAD_RAN: if (state == DONE) if (GameObject* go = GetGameObject(DATA_SLAD_RAN_ALTAR)) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; case DATA_DRAKKARI_COLOSSUS: if (state == DONE) if (GameObject* go = GetGameObject(DATA_DRAKKARI_COLOSSUS_ALTAR)) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; case DATA_MOORABI: if (state == DONE) if (GameObject* go = GetGameObject(DATA_MOORABI_ALTAR)) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; default: break; @@ -357,7 +357,7 @@ struct go_gundrak_altar : public GameObjectAI bool OnGossipHello(Player* /*player*/) override { - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + me->SetFlag(GO_FLAG_NOT_SELECTABLE); me->SetGoState(GO_STATE_ACTIVE); instance->SetData(DATA_STATUE_ACTIVATE, me->GetEntry()); diff --git a/src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.cpp b/src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.cpp index a03f6eb844e..6c8aea53349 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.cpp @@ -757,7 +757,7 @@ struct npc_icc_orb_controller : public ScriptedAI UpdateValidGuids(); ScheduleVisualChannel(true); if (GameObject* orb = me->FindNearestGameObject(GO_EMPOWERING_BLOOD_ORB, 5.0f)) - orb->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + orb->SetFlag(GO_FLAG_NOT_SELECTABLE); } } @@ -825,7 +825,7 @@ struct DarkFallenAI : public ScriptedAI { if (action == ACTION_SIPHON_INTERRUPTED) if (GameObject* orb = me->FindNearestGameObject(GO_EMPOWERING_BLOOD_ORB, 10.0f)) - orb->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + orb->RemoveFlag(GO_FLAG_NOT_SELECTABLE); } void SetGUID(ObjectGuid const& guid, int32 id) override @@ -1132,7 +1132,7 @@ struct go_empowering_blood_orb : public GameObjectAI void HandleObjectUse() { - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE); + me->SetFlag(GO_FLAG_IN_USE); me->SetGoAnimProgress(255); me->SetGoState(GO_STATE_DESTROYED); if (Creature* trigger = ObjectAccessor::GetCreature(*me, _triggerGuid)) diff --git a/src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp b/src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp index 5c781128fe5..849d8c8b54f 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp @@ -165,12 +165,12 @@ class instance_icecrown_citadel : public InstanceMapScript { if (usable) { - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); go->SetGoState(GO_STATE_ACTIVE); } else { - go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->SetFlag(GO_FLAG_NOT_SELECTABLE); go->SetGoState(GO_STATE_READY); } } @@ -535,7 +535,7 @@ class instance_icecrown_citadel : public InstanceMapScript LadyDeathwisperElevatorGUID = go->GetGUID(); if (GetBossState(DATA_LADY_DEATHWHISPER) == DONE) { - go->SetUInt32Value(GAMEOBJECT_LEVEL, 0); + go->SetLevel(0); go->SetGoState(GO_STATE_READY); } break; @@ -648,7 +648,7 @@ class instance_icecrown_citadel : public InstanceMapScript case GO_CACHE_OF_THE_DREAMWALKER_25H: if (Creature* valithria = instance->GetCreature(ValithriaDreamwalkerGUID)) go->SetLootRecipient(valithria->GetLootRecipient(), valithria->GetLootRecipientGroup()); - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_LOCKED | GO_FLAG_NOT_SELECTABLE | GO_FLAG_NODESPAWN); + go->RemoveFlag(GO_FLAG_LOCKED | GO_FLAG_NOT_SELECTABLE | GO_FLAG_NODESPAWN); break; case GO_ARTHAS_PLATFORM: // this enables movement at The Frozen Throne, when printed this value is 0.000000f @@ -880,7 +880,7 @@ class instance_icecrown_citadel : public InstanceMapScript if (GameObject* elevator = instance->GetGameObject(LadyDeathwisperElevatorGUID)) { - elevator->SetUInt32Value(GAMEOBJECT_LEVEL, 0); + elevator->SetLevel(0); elevator->SetGoState(GO_STATE_READY); } @@ -895,7 +895,7 @@ class instance_icecrown_citadel : public InstanceMapScript SetTeleporterState(teleporter, true); if (GameObject* loot = instance->GetGameObject(GunshipArmoryGUID)) - loot->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_LOCKED | GO_FLAG_NOT_SELECTABLE | GO_FLAG_NODESPAWN); + loot->RemoveFlag(GO_FLAG_LOCKED | GO_FLAG_NOT_SELECTABLE | GO_FLAG_NODESPAWN); } else if (state == FAIL) Events.ScheduleEvent(EVENT_RESPAWN_GUNSHIP, 30s); @@ -909,7 +909,7 @@ class instance_icecrown_citadel : public InstanceMapScript { if (Creature* deathbringer = instance->GetCreature(DeathbringerSaurfangGUID)) loot->SetLootRecipient(deathbringer->GetLootRecipient(), deathbringer->GetLootRecipientGroup()); - loot->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_LOCKED | GO_FLAG_NOT_SELECTABLE | GO_FLAG_NODESPAWN); + loot->RemoveFlag(GO_FLAG_LOCKED | GO_FLAG_NOT_SELECTABLE | GO_FLAG_NODESPAWN); } if (GameObject* teleporter = instance->GetGameObject(TeleporterUpperSpireGUID)) diff --git a/src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp b/src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp index 0fe0233fed1..9142b003755 100644 --- a/src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp +++ b/src/server/scripts/Northrend/Naxxramas/instance_naxxramas.cpp @@ -214,23 +214,23 @@ class instance_naxxramas : public InstanceMapScript break; case GO_NAXX_PORTAL_ARACHNID: if (GetBossState(BOSS_MAEXXNA) == DONE) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; case GO_NAXX_PORTAL_CONSTRUCT: if (GetBossState(BOSS_THADDIUS) == DONE) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; case GO_NAXX_PORTAL_PLAGUE: if (GetBossState(BOSS_LOATHEB) == DONE) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; case GO_NAXX_PORTAL_MILITARY: if (GetBossState(BOSS_HORSEMEN) == DONE) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; case GO_KELTHUZAD_THRONE: if (GetBossState(BOSS_KELTHUZAD) == DONE) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; case GO_BIRTH: if (hadSapphironBirth || GetBossState(BOSS_SAPPHIRON) == DONE) @@ -355,7 +355,7 @@ class instance_naxxramas : public InstanceMapScript if (state == DONE) { if (GameObject* teleporter = GetGameObject(DATA_NAXX_PORTAL_ARACHNID)) - teleporter->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + teleporter->RemoveFlag(GO_FLAG_NOT_SELECTABLE); events.ScheduleEvent(EVENT_KELTHUZAD_WING_TAUNT, 6s); } @@ -364,7 +364,7 @@ class instance_naxxramas : public InstanceMapScript if (state == DONE) { if (GameObject* teleporter = GetGameObject(DATA_NAXX_PORTAL_PLAGUE)) - teleporter->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + teleporter->RemoveFlag(GO_FLAG_NOT_SELECTABLE); events.ScheduleEvent(EVENT_KELTHUZAD_WING_TAUNT, 6s); } @@ -373,7 +373,7 @@ class instance_naxxramas : public InstanceMapScript if (state == DONE) { if (GameObject* teleporter = GetGameObject(DATA_NAXX_PORTAL_CONSTRUCT)) - teleporter->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + teleporter->RemoveFlag(GO_FLAG_NOT_SELECTABLE); events.ScheduleEvent(EVENT_KELTHUZAD_WING_TAUNT, 6s); } @@ -388,11 +388,11 @@ class instance_naxxramas : public InstanceMapScript if (GameObject* horsemenChest = instance->GetGameObject(HorsemenChestGUID)) { horsemenChest->SetRespawnTime(horsemenChest->GetRespawnDelay()); - horsemenChest->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + horsemenChest->RemoveFlag(GO_FLAG_NOT_SELECTABLE); } if (GameObject* teleporter = GetGameObject(DATA_NAXX_PORTAL_MILITARY)) - teleporter->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + teleporter->RemoveFlag(GO_FLAG_NOT_SELECTABLE); events.ScheduleEvent(EVENT_KELTHUZAD_WING_TAUNT, 6s); } @@ -405,7 +405,7 @@ class instance_naxxramas : public InstanceMapScript case BOSS_KELTHUZAD: if (state == DONE) if (GameObject* throne = GetGameObject(DATA_KELTHUZAD_THRONE)) - throne->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + throne->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; default: break; diff --git a/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp b/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp index 4e882bb0a55..b8b6f9fd6c9 100644 --- a/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp +++ b/src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp @@ -1898,7 +1898,7 @@ class spell_alexstrasza_bunny_destroy_platform_event : public SpellScript Creature* caster = GetCaster()->ToCreature(); if (InstanceScript* instance = caster->GetInstanceScript()) if (GameObject* platform = caster->GetMap()->GetGameObject(instance->GetGuidData(DATA_PLATFORM))) - platform->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_DESTROYED); + platform->SetFlag(GO_FLAG_DESTROYED); } void HandleScript(SpellEffIndex /*effIndex*/) @@ -2119,13 +2119,13 @@ private: if (Creature* target = GetTarget()->ToCreature()) if (InstanceScript* instance = GetCaster()->GetInstanceScript()) { - _alexstraszaGift->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + _alexstraszaGift->RemoveFlag(GO_FLAG_NOT_SELECTABLE); if (GameObject* heartMagic = target->GetMap()->GetGameObject(instance->GetGuidData(DATA_HEART_OF_MAGIC_GUID))) { - heartMagic->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + heartMagic->RemoveFlag(GO_FLAG_NOT_SELECTABLE); // TO DO: This is hack, core doesn't have support for these flags, // remove line below if it ever gets supported otherwise object won't be accessible. - heartMagic->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_INTERACT_COND); + heartMagic->RemoveFlag(GO_FLAG_INTERACT_COND); } } } diff --git a/src/server/scripts/Northrend/Nexus/EyeOfEternity/instance_eye_of_eternity.cpp b/src/server/scripts/Northrend/Nexus/EyeOfEternity/instance_eye_of_eternity.cpp index 9fca1baef71..fffe0d9a804 100644 --- a/src/server/scripts/Northrend/Nexus/EyeOfEternity/instance_eye_of_eternity.cpp +++ b/src/server/scripts/Northrend/Nexus/EyeOfEternity/instance_eye_of_eternity.cpp @@ -83,7 +83,7 @@ public: SpawnGameObject(GO_EXIT_PORTAL, exitPortalPosition); if (GameObject* platform = instance->GetGameObject(platformGUID)) - platform->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_DESTROYED); + platform->RemoveFlag(GO_FLAG_DESTROYED); } else if (state == DONE) SpawnGameObject(GO_EXIT_PORTAL, exitPortalPosition); @@ -173,7 +173,7 @@ public: alexstraszaBunny->CastSpell(alexstraszaBunny, SPELL_IRIS_OPENED); if (GameObject* iris = instance->GetGameObject(irisGUID)) - iris->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE); + iris->SetFlag(GO_FLAG_IN_USE); if (Creature* malygos = instance->GetCreature(malygosGUID)) malygos->AI()->DoAction(0); // ACTION_LAND_ENCOUNTER_START diff --git a/src/server/scripts/Northrend/Nexus/Nexus/boss_keristrasza.cpp b/src/server/scripts/Northrend/Nexus/Nexus/boss_keristrasza.cpp index 5f7f61722be..b0517b3f522 100644 --- a/src/server/scripts/Northrend/Nexus/Nexus/boss_keristrasza.cpp +++ b/src/server/scripts/Northrend/Nexus/Nexus/boss_keristrasza.cpp @@ -220,7 +220,7 @@ struct containment_sphere : public GameObjectAI if (keristrasza && keristrasza->IsAlive()) { // maybe these are hacks :( - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + me->SetFlag(GO_FLAG_NOT_SELECTABLE); me->SetGoState(GO_STATE_ACTIVE); ENSURE_AI(boss_keristrasza, keristrasza->AI())->CheckContainmentSpheres(true); diff --git a/src/server/scripts/Northrend/Nexus/Nexus/instance_nexus.cpp b/src/server/scripts/Northrend/Nexus/Nexus/instance_nexus.cpp index a413a5a7664..c6e9c27115b 100644 --- a/src/server/scripts/Northrend/Nexus/Nexus/instance_nexus.cpp +++ b/src/server/scripts/Northrend/Nexus/Nexus/instance_nexus.cpp @@ -101,17 +101,17 @@ class instance_nexus : public InstanceMapScript case GO_ANOMALUS_CONTAINMENT_SPHERE: AnomalusContainmentSphere = go->GetGUID(); if (GetBossState(DATA_ANOMALUS) == DONE) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; case GO_ORMOROKS_CONTAINMENT_SPHERE: OrmoroksContainmentSphere = go->GetGUID(); if (GetBossState(DATA_ORMOROK) == DONE) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; case GO_TELESTRAS_CONTAINMENT_SPHERE: TelestrasContainmentSphere = go->GetGUID(); if (GetBossState(DATA_MAGUS_TELESTRA) == DONE) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; default: break; @@ -129,21 +129,21 @@ class instance_nexus : public InstanceMapScript if (state == DONE) { if (GameObject* sphere = instance->GetGameObject(TelestrasContainmentSphere)) - sphere->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + sphere->RemoveFlag(GO_FLAG_NOT_SELECTABLE); } break; case DATA_ANOMALUS: if (state == DONE) { if (GameObject* sphere = instance->GetGameObject(AnomalusContainmentSphere)) - sphere->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + sphere->RemoveFlag(GO_FLAG_NOT_SELECTABLE); } break; case DATA_ORMOROK: if (state == DONE) { if (GameObject* sphere = instance->GetGameObject(OrmoroksContainmentSphere)) - sphere->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + sphere->RemoveFlag(GO_FLAG_NOT_SELECTABLE); } break; default: diff --git a/src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp b/src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp index 406c6adf578..fed6a8b9d65 100644 --- a/src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp +++ b/src/server/scripts/Northrend/Nexus/Oculus/instance_oculus.cpp @@ -212,7 +212,7 @@ class instance_oculus : public InstanceMapScript if (GameObject* cache = instance->GetGameObject(EregosCacheGUID)) { cache->SetRespawnTime(cache->GetRespawnDelay()); - cache->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + cache->RemoveFlag(GO_FLAG_NOT_SELECTABLE); } } break; diff --git a/src/server/scripts/Northrend/Ulduar/HallsOfStone/instance_halls_of_stone.cpp b/src/server/scripts/Northrend/Ulduar/HallsOfStone/instance_halls_of_stone.cpp index 9e7dd6a3237..22c217d3099 100644 --- a/src/server/scripts/Northrend/Ulduar/HallsOfStone/instance_halls_of_stone.cpp +++ b/src/server/scripts/Northrend/Ulduar/HallsOfStone/instance_halls_of_stone.cpp @@ -95,7 +95,7 @@ class instance_halls_of_stone : public InstanceMapScript case GO_TRIBUNAL_CHEST_HERO: TribunalChestGUID = go->GetGUID(); if (GetBossState(DATA_TRIBUNAL_OF_AGES) == DONE) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; case GO_TRIBUNAL_SKY_FLOOR: TribunalSkyFloorGUID = go->GetGUID(); @@ -149,7 +149,7 @@ class instance_halls_of_stone : public InstanceMapScript if (state == DONE) { if (GameObject* go = instance->GetGameObject(TribunalChestGUID)) - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); } break; default: diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_algalon_the_observer.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_algalon_the_observer.cpp index b38be3aa41b..e618905462b 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_algalon_the_observer.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_algalon_the_observer.cpp @@ -974,7 +974,7 @@ struct go_celestial_planetarium_access : public GameObjectAI bool OnReportUse(Player* player) override { - if (me->HasFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE)) + if (me->HasFlag(GO_FLAG_IN_USE)) return true; bool hasKey = true; @@ -998,7 +998,7 @@ struct go_celestial_planetarium_access : public GameObjectAI return false; // Start Algalon event - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE); + me->SetFlag(GO_FLAG_IN_USE); _events.ScheduleEvent(EVENT_DESPAWN_CONSOLE, 5s); if (Creature* brann = me->SummonCreature(NPC_BRANN_BRONZBEARD_ALG, BrannIntroSpawnPos)) brann->AI()->DoAction(ACTION_START_INTRO); diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_mimiron.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_mimiron.cpp index 174795375dc..068cd1b6201 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_mimiron.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_mimiron.cpp @@ -432,7 +432,7 @@ class boss_mimiron : public CreatureScript DoCast(me->GetVehicleBase(), SPELL_SEAT_6); if (GameObject* button = instance->GetGameObject(DATA_MIMIRON_BUTTON)) - button->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + button->SetFlag(GO_FLAG_NOT_SELECTABLE); if (_fireFighter) events.ScheduleEvent(EVENT_SUMMON_FLAMES, 3s); @@ -474,7 +474,7 @@ class boss_mimiron : public CreatureScript if (GameObject* button = instance->GetGameObject(DATA_MIMIRON_BUTTON)) { button->SetGoState(GO_STATE_READY); - button->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + button->RemoveFlag(GO_FLAG_NOT_SELECTABLE); } _fireFighter = false; @@ -1683,14 +1683,14 @@ class go_mimiron_hardmode_button : public GameObjectScript bool OnGossipHello(Player* /*player*/) override { - if (me->HasFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE)) + if (me->HasFlag(GO_FLAG_NOT_SELECTABLE)) return true; if (Creature* computer = instance->GetCreature(DATA_COMPUTER)) computer->AI()->DoAction(DO_ACTIVATE_COMPUTER); me->SetGoState(GO_STATE_ACTIVE); - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + me->SetFlag(GO_FLAG_NOT_SELECTABLE); return true; } }; diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_razorscale.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_razorscale.cpp index a1a43dc20d8..d9a88456fe0 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_razorscale.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_razorscale.cpp @@ -1515,7 +1515,7 @@ public: bool OnGossipHello(Player* /*player*/) override { - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + me->SetFlag(GO_FLAG_NOT_SELECTABLE); if (Creature* controller = me->FindNearestCreature(NPC_RAZORSCALE_CONTROLLER, 5.0f)) { // Prevent 2 players clicking at "same time" @@ -1555,7 +1555,7 @@ public: void Reset() override { - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + me->SetFlag(GO_FLAG_NOT_SELECTABLE); _scheduler.Schedule(Seconds(1), [this](TaskContext /*context*/) { me->UseDoorOrButton(); diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_thorim.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_thorim.cpp index d3e8ba7045f..da38251aecc 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_thorim.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_thorim.cpp @@ -488,7 +488,7 @@ class boss_thorim : public CreatureScript me->SummonCreature(s.entry, s.pos, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 3s); if (GameObject* lever = instance->GetGameObject(DATA_THORIM_LEVER)) - lever->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + lever->SetFlag(GO_FLAG_NOT_SELECTABLE); // Remove trigger auras if (Creature* pillar = ObjectAccessor::GetCreature(*me, _activePillarGUID)) @@ -636,7 +636,7 @@ class boss_thorim : public CreatureScript } if (GameObject* lever = instance->GetGameObject(DATA_THORIM_LEVER)) - lever->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + lever->RemoveFlag(GO_FLAG_NOT_SELECTABLE); // Summon Sif me->SummonCreature(NPC_SIF, SifSpawnPosition); diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp index f2b06039667..518ff37bfeb 100644 --- a/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp +++ b/src/server/scripts/Northrend/Ulduar/Ulduar/instance_ulduar.cpp @@ -511,7 +511,7 @@ class instance_ulduar : public InstanceMapScript case GO_CELESTIAL_PLANETARIUM_ACCESS_10: case GO_CELESTIAL_PLANETARIUM_ACCESS_25: if (_algalonSummoned) - gameObject->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_IN_USE); + gameObject->SetFlag(GO_FLAG_IN_USE); break; case GO_DOODAD_UL_SIGILDOOR_01: case GO_DOODAD_UL_SIGILDOOR_02: @@ -646,7 +646,7 @@ class instance_ulduar : public InstanceMapScript if (GameObject* gameObject = instance->GetGameObject(KologarnChestGUID)) { gameObject->SetRespawnTime(gameObject->GetRespawnDelay()); - gameObject->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + gameObject->RemoveFlag(GO_FLAG_NOT_SELECTABLE); } HandleGameObject(KologarnBridgeGUID, false); } @@ -656,7 +656,7 @@ class instance_ulduar : public InstanceMapScript { if (GameObject* HodirRareCache = instance->GetGameObject(HodirRareCacheGUID)) if (GetData(DATA_HODIR_RARE_CACHE)) - HodirRareCache->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + HodirRareCache->RemoveFlag(GO_FLAG_NOT_SELECTABLE); if (GameObject* HodirChest = instance->GetGameObject(HodirChestGUID)) HodirChest->SetRespawnTime(HodirChest->GetRespawnDelay()); @@ -672,7 +672,7 @@ class instance_ulduar : public InstanceMapScript { cache->SetLootRecipient(thorim->GetLootRecipient()); cache->SetRespawnTime(cache->GetRespawnDelay()); - cache->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_LOCKED | GO_FLAG_NOT_SELECTABLE | GO_FLAG_NODESPAWN); + cache->RemoveFlag(GO_FLAG_LOCKED | GO_FLAG_NOT_SELECTABLE | GO_FLAG_NODESPAWN); } } diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_palehoof.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_palehoof.cpp index ef8a950ca73..995b690d721 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_palehoof.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/boss_palehoof.cpp @@ -202,7 +202,7 @@ struct boss_palehoof : public BossAI if (GameObject* go = instance->GetGameObject(DATA_GORTOK_PALEHOOF_SPHERE)) { go->SetGoState(GO_STATE_READY); - go->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->RemoveFlag(GO_FLAG_NOT_SELECTABLE); } } @@ -512,7 +512,7 @@ struct go_palehoof_sphere : public GameObjectAI { if (palehoof->IsAlive() && instance->GetBossState(DATA_GORTOK_PALEHOOF) != DONE) { - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + me->SetFlag(GO_FLAG_NOT_SELECTABLE); me->SetGoState(GO_STATE_ACTIVE); palehoof->AI()->DoAction(ACTION_START_ENCOUNTER); } diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/instance_utgarde_pinnacle.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/instance_utgarde_pinnacle.cpp index 3448b9a3ee3..7b6cc204e86 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/instance_utgarde_pinnacle.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardePinnacle/instance_utgarde_pinnacle.cpp @@ -78,7 +78,7 @@ class instance_utgarde_pinnacle : public InstanceMapScript if (go->GetEntry() == GO_GORTOK_PALEHOOF_SPHERE) if (GetBossState(DATA_GORTOK_PALEHOOF) == DONE) - go->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + go->SetFlag(GO_FLAG_NOT_SELECTABLE); } void SetGuidData(uint32 type, ObjectGuid data) override diff --git a/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp b/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp index 83c9e61411e..7260b8fa1e1 100644 --- a/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp +++ b/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp @@ -409,7 +409,7 @@ class instance_violet_hold : public InstanceMapScript for (uint8 i = 0; i < ActivationCrystalCount; ++i) if (GameObject* crystal = instance->GetGameObject(ActivationCrystalGUIDs[i])) - crystal->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + crystal->RemoveFlag(GO_FLAG_NOT_SELECTABLE); Scheduler.Schedule(Seconds(3), [this](TaskContext task) { @@ -422,7 +422,7 @@ class instance_violet_hold : public InstanceMapScript if (GameObject* mainDoor = GetGameObject(DATA_MAIN_DOOR)) { mainDoor->SetGoState(GO_STATE_ACTIVE); - mainDoor->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_LOCKED); + mainDoor->RemoveFlag(GO_FLAG_LOCKED); } DoUpdateWorldState(WORLD_STATE_VH_SHOW, 0); @@ -431,21 +431,21 @@ class instance_violet_hold : public InstanceMapScript for (uint8 i = 0; i < ActivationCrystalCount; ++i) if (GameObject* crystal = instance->GetGameObject(ActivationCrystalGUIDs[i])) - crystal->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + crystal->SetFlag(GO_FLAG_NOT_SELECTABLE); } else if (data == DONE) { if (GameObject* mainDoor = GetGameObject(DATA_MAIN_DOOR)) { mainDoor->SetGoState(GO_STATE_ACTIVE); - mainDoor->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_LOCKED); + mainDoor->RemoveFlag(GO_FLAG_LOCKED); } DoUpdateWorldState(WORLD_STATE_VH_SHOW, 0); for (uint8 i = 0; i < ActivationCrystalCount; ++i) if (GameObject* crystal = instance->GetGameObject(ActivationCrystalGUIDs[i])) - crystal->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + crystal->SetFlag(GO_FLAG_NOT_SELECTABLE); if (Creature* sinclari = GetCreature(DATA_SINCLARI)) sinclari->AI()->DoAction(ACTION_SINCLARI_OUTRO); diff --git a/src/server/scripts/Northrend/VioletHold/violet_hold.cpp b/src/server/scripts/Northrend/VioletHold/violet_hold.cpp index 1636edf75f7..83fce5afc3f 100644 --- a/src/server/scripts/Northrend/VioletHold/violet_hold.cpp +++ b/src/server/scripts/Northrend/VioletHold/violet_hold.cpp @@ -502,7 +502,7 @@ struct npc_sinclari_vh : public ScriptedAI if (GameObject* mainDoor = _instance->GetGameObject(DATA_MAIN_DOOR)) { mainDoor->SetGoState(GO_STATE_READY); - mainDoor->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_LOCKED); + mainDoor->SetFlag(GO_FLAG_LOCKED); } task.Repeat(Seconds(5)); break; diff --git a/src/server/scripts/Outland/Auchindoun/SethekkHalls/instance_sethekk_halls.cpp b/src/server/scripts/Outland/Auchindoun/SethekkHalls/instance_sethekk_halls.cpp index 1c75672b55d..bd892c3aca5 100644 --- a/src/server/scripts/Outland/Auchindoun/SethekkHalls/instance_sethekk_halls.cpp +++ b/src/server/scripts/Outland/Auchindoun/SethekkHalls/instance_sethekk_halls.cpp @@ -73,7 +73,7 @@ class instance_sethekk_halls : public InstanceMapScript /// gameobject should have GO_DYNFLAG_LO_ACTIVATE too, which makes gobs interactable with GO_FLAG_INTERACT_COND /// so just removed GO_FLAG_INTERACT_COND if (GameObject* coffer = GetGameObject(DATA_TALON_KING_COFFER)) - coffer->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_INTERACT_COND | GO_FLAG_NOT_SELECTABLE); + coffer->RemoveFlag(GO_FLAG_INTERACT_COND | GO_FLAG_NOT_SELECTABLE); } break; default: diff --git a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/instance_steam_vault.cpp b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/instance_steam_vault.cpp index 46d937d90b4..c18b8dfae5d 100644 --- a/src/server/scripts/Outland/CoilfangReservoir/SteamVault/instance_steam_vault.cpp +++ b/src/server/scripts/Outland/CoilfangReservoir/SteamVault/instance_steam_vault.cpp @@ -33,7 +33,7 @@ struct go_main_chambers_access_panel : public GameObjectAI if (Creature* controller = _instance->GetCreature(DATA_DOOR_CONTROLLER)) controller->AI()->Talk(CONTROLLER_TEXT_ACESS_USED); _instance->SetData(ACTION_OPEN_DOOR, 0); - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + me->SetFlag(GO_FLAG_NOT_SELECTABLE); me->SetGoState(GO_STATE_ACTIVE); return true; } @@ -91,7 +91,7 @@ class instance_steam_vault : public InstanceMapScript if (GameObject* mainDoor = GetGameObject(DATA_MAIN_DOOR)) { HandleGameObject(ObjectGuid::Empty, true, mainDoor); - mainDoor->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + mainDoor->SetFlag(GO_FLAG_NOT_SELECTABLE); } } } @@ -121,12 +121,12 @@ class instance_steam_vault : public InstanceMapScript case DATA_HYDROMANCER_THESPIA: if (state == DONE) if (GameObject* panel = GetGameObject(DATA_ACCESS_PANEL_HYDRO)) - panel->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + panel->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; case DATA_MEKGINEER_STEAMRIGGER: if (state == DONE) if (GameObject* panel = GetGameObject(DATA_ACCESS_PANEL_MEK)) - panel->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + panel->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; default: break; diff --git a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_broggok.cpp b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_broggok.cpp index ea12d36f5fd..6f4cb101c31 100644 --- a/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_broggok.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/BloodFurnace/boss_broggok.cpp @@ -132,7 +132,7 @@ class boss_broggok : public CreatureScript instance->SetBossState(DATA_BROGGOK, NOT_STARTED); if (GameObject * lever = instance->GetGameObject(DATA_BROGGOK_LEVER)) { - lever->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE | GO_FLAG_IN_USE); + lever->RemoveFlag(GO_FLAG_NOT_SELECTABLE | GO_FLAG_IN_USE); lever->SetGoState(GO_STATE_READY); } break; @@ -261,7 +261,7 @@ class go_broggok_lever : public GameObjectScript broggok->AI()->DoAction(ACTION_PREPARE_BROGGOK); } - me->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE | GO_FLAG_IN_USE); + me->SetFlag(GO_FLAG_NOT_SELECTABLE | GO_FLAG_IN_USE); me->SetGoState(GO_STATE_ACTIVE); return true; diff --git a/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/instance_hellfire_ramparts.cpp b/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/instance_hellfire_ramparts.cpp index eddf4d2bff4..839c478b0e0 100644 --- a/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/instance_hellfire_ramparts.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/instance_hellfire_ramparts.cpp @@ -63,7 +63,7 @@ class instance_ramparts : public InstanceMapScript case DATA_NAZAN: if (GetBossState(DATA_VAZRUDEN) == DONE && GetBossState(DATA_NAZAN) == DONE) if (GameObject* chest = instance->GetGameObject(felIronChestGUID)) - chest->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + chest->RemoveFlag(GO_FLAG_NOT_SELECTABLE); break; default: break; diff --git a/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/instance_magtheridons_lair.cpp b/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/instance_magtheridons_lair.cpp index daadb13db4d..c6983a0f63f 100644 --- a/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/instance_magtheridons_lair.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/MagtheridonsLair/instance_magtheridons_lair.cpp @@ -105,9 +105,9 @@ class instance_magtheridons_lair : public InstanceMapScript if (GameObject* cube = instance->GetGameObject(gobGUID)) { if (value == ACTION_ENABLE) - cube->RemoveFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + cube->RemoveFlag(GO_FLAG_NOT_SELECTABLE); else - cube->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + cube->SetFlag(GO_FLAG_NOT_SELECTABLE); } break; case DATA_COLLAPSE: diff --git a/src/server/scripts/Outland/zone_blades_edge_mountains.cpp b/src/server/scripts/Outland/zone_blades_edge_mountains.cpp index 9a13dc64f3e..71fba09e871 100644 --- a/src/server/scripts/Outland/zone_blades_edge_mountains.cpp +++ b/src/server/scripts/Outland/zone_blades_edge_mountains.cpp @@ -595,7 +595,7 @@ class npc_simon_bunny : public CreatureScript _events.ScheduleEvent(EVENT_SIMON_PERIODIC_PLAYER_CHECK, 2s); if (GameObject* relic = me->FindNearestGameObject(large ? GO_APEXIS_MONUMENT : GO_APEXIS_RELIC, searchDistance)) - relic->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + relic->SetFlag(GO_FLAG_NOT_SELECTABLE); } // Called when despawning the bunny. Sets all the node GOs to their default states. @@ -605,14 +605,14 @@ class npc_simon_bunny : public CreatureScript 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->SetFlag(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->RemoveFlag(GO_FLAG_NOT_SELECTABLE); me->DespawnOrUnsummon(1s); } @@ -655,7 +655,7 @@ class npc_simon_bunny : public CreatureScript { 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->RemoveFlag(GO_FLAG_NOT_SELECTABLE); if (clustersOnly) return; @@ -709,7 +709,7 @@ class npc_simon_bunny : public CreatureScript { if (GameObject* cluster = me->FindNearestGameObject(clusterIds[clusterId], 2.0f*searchDistance)) { - cluster->SetFlag(GAMEOBJECT_FLAGS, GO_FLAG_NOT_SELECTABLE); + cluster->SetFlag(GO_FLAG_NOT_SELECTABLE); // break since we don't need glowing auras for large clusters if (large) diff --git a/src/server/shared/SharedDefines.h b/src/server/shared/SharedDefines.h index fe3382876ba..b19c205d97b 100644 --- a/src/server/shared/SharedDefines.h +++ b/src/server/shared/SharedDefines.h @@ -20,6 +20,7 @@ #include "DBCEnums.h" #include "Define.h" +#include "EnumFlag.h" #include "SmartEnum.h" float const GROUND_HEIGHT_TOLERANCE = 0.05f; // Extra tolerance to z position to check if it is in air or on ground. @@ -1639,6 +1640,8 @@ enum GameObjectFlags GO_FLAG_DESTROYED = 0x00000400 }; +DEFINE_ENUM_FLAG(GameObjectFlags); + enum GameObjectDynamicLowFlags { GO_DYNFLAG_LO_ACTIVATE = 0x01, // enables interaction with GO |