AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
BfWGGameObjectBuilding Struct Reference

#include "BattlefieldWG.h"

Public Member Functions

 BfWGGameObjectBuilding (BattlefieldWG *WG)
 
void Rebuild ()
 
void Damaged ()
 
void Destroyed ()
 
void Init (GameObject *gobj, uint32 type, uint32 worldstate, uint8 damageText, uint8 destroyText)
 
void UpdateCreatureAndGo ()
 
void UpdateTurretAttack (bool disable)
 
void Save ()
 

Public Attributes

TeamId m_Team
 
BattlefieldWGm_WG
 
ObjectGuid m_Build
 
uint32 m_Type
 
uint32 m_WorldState
 
uint32 m_State
 
uint8 m_damagedText
 
uint8 m_destroyedText
 
GameObjectSet m_GameObjectList [2]
 
GuidUnorderedSet m_CreatureBottomList [2]
 
GuidUnorderedSet m_CreatureTopList [2]
 
GuidUnorderedSet m_TowerCannonBottomList
 
GuidUnorderedSet m_TurretTopList
 

Detailed Description

Constructor & Destructor Documentation

◆ BfWGGameObjectBuilding()

BfWGGameObjectBuilding::BfWGGameObjectBuilding ( BattlefieldWG WG)
inline
1075 {
1076 m_WG = WG;
1078 m_Type = 0;
1079 m_WorldState = 0;
1080 m_State = 0;
1081 m_damagedText = 0;
1082 m_destroyedText = 0;
1083 }
@ TEAM_ALLIANCE
Definition SharedDefines.h:760
BattlefieldWG * m_WG
Definition BattlefieldWG.h:1089
uint32 m_State
Definition BattlefieldWG.h:1101
uint32 m_WorldState
Definition BattlefieldWG.h:1098
TeamId m_Team
Definition BattlefieldWG.h:1086
uint8 m_destroyedText
Definition BattlefieldWG.h:1105
uint32 m_Type
Definition BattlefieldWG.h:1095
uint8 m_damagedText
Definition BattlefieldWG.h:1104

References m_damagedText, m_destroyedText, m_State, m_Team, m_Type, m_WG, m_WorldState, and TEAM_ALLIANCE.

Member Function Documentation

◆ Damaged()

void BfWGGameObjectBuilding::Damaged ( )
inline
1150 {
1151 // Update worldstate
1154
1155 // Send warning message
1156 if (m_damagedText) // tower damage + name
1158
1159 for (GuidUnorderedSet::const_iterator itr = m_CreatureTopList[m_WG->GetAttackerTeam()].begin(); itr != m_CreatureTopList[m_WG->GetAttackerTeam()].end(); ++itr)
1160 if (Creature* creature = m_WG->GetCreature(*itr))
1161 m_WG->HideNpc(creature);
1162
1163 for (GuidUnorderedSet::const_iterator itr = m_TurretTopList.begin(); itr != m_TurretTopList.end(); ++itr)
1164 if (Creature* creature = m_WG->GetCreature(*itr))
1165 m_WG->HideNpc(creature);
1166
1169 }
@ BATTLEFIELD_WG_OBJECTTYPE_TOWER
Definition BattlefieldWG.h:485
@ BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_DAMAGE
Definition BattlefieldWG.h:498
void UpdateDamagedTowerCount(TeamId team)
Called when a tower is damaged.
Definition BattlefieldWG.cpp:1128
Creature * GetCreature(ObjectGuid const guid)
Definition Battlefield.cpp:858
void SendWarning(uint8 id, WorldObject const *target=nullptr)
Definition Battlefield.cpp:480
void HideNpc(Creature *creature)
Definition Battlefield.cpp:499
void SendUpdateWorldState(uint32 field, uint32 value)
Update data of a worldstate to all players present in zone.
Definition Battlefield.cpp:486
TeamId GetAttackerTeam()
Definition Battlefield.h:276
Definition Creature.h:43
GuidUnorderedSet m_CreatureTopList[2]
Definition BattlefieldWG.h:1112
GuidUnorderedSet m_TurretTopList
Definition BattlefieldWG.h:1114

References BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_DAMAGE, BATTLEFIELD_WG_OBJECTTYPE_TOWER, Battlefield::GetAttackerTeam(), Battlefield::GetCreature(), Battlefield::HideNpc(), m_CreatureTopList, m_damagedText, m_State, m_Team, m_TurretTopList, m_Type, m_WG, m_WorldState, Battlefield::SendUpdateWorldState(), Battlefield::SendWarning(), and BattlefieldWG::UpdateDamagedTowerCount().

◆ Destroyed()

void BfWGGameObjectBuilding::Destroyed ( )
inline
1173 {
1174 // Update worldstate
1177
1178 // Warn players
1179 if (m_destroyedText)
1181
1182 switch (m_Type)
1183 {
1184 // Inform the global wintergrasp script of the destruction of this object
1187 break;
1190 if (GameObject* go = m_WG->GetRelic())
1191 go->RemoveGameObjectFlag(GO_FLAG_NOT_SELECTABLE);
1192 else
1193 LOG_ERROR("bg.battlefield", "BattlefieldWG: Relic not found.");
1194 break;
1199 break;
1200 }
1201
1203 }
@ BATTLEFIELD_WG_OBJECTTYPE_DOOR
Definition BattlefieldWG.h:480
@ BATTLEFIELD_WG_OBJECTTYPE_KEEP_TOWER
Definition BattlefieldWG.h:484
@ BATTLEFIELD_WG_OBJECTTYPE_WALL
Definition BattlefieldWG.h:482
@ BATTLEFIELD_WG_OBJECTTYPE_DOOR_LAST
Definition BattlefieldWG.h:483
@ BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_DESTROY
Definition BattlefieldWG.h:499
#define LOG_ERROR(filterType__,...)
Definition Log.h:157
@ GO_FLAG_NOT_SELECTABLE
Definition SharedDefines.h:1607
TeamId
Definition SharedDefines.h:759
void UpdatedDestroyedTowerCount(TeamId team, GameObject *go)
Called when tower is broken.
Definition BattlefieldWG.cpp:1036
GameObject * GetRelic()
Return pointer to relic object.
Definition BattlefieldWG.h:379
void SetRelicInteractible(bool allow)
Define if player can interact with the relic.
Definition BattlefieldWG.h:388
void BrokenWallOrTower(TeamId team)
Called when a wall/tower is broken.
Definition BattlefieldWG.cpp:1022
GameObject * GetGameObject(ObjectGuid const guid)
Definition Battlefield.cpp:866
Definition GameObject.h:120
ObjectGuid m_Build
Definition BattlefieldWG.h:1092

References BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_DESTROY, BATTLEFIELD_WG_OBJECTTYPE_DOOR, BATTLEFIELD_WG_OBJECTTYPE_DOOR_LAST, BATTLEFIELD_WG_OBJECTTYPE_KEEP_TOWER, BATTLEFIELD_WG_OBJECTTYPE_TOWER, BATTLEFIELD_WG_OBJECTTYPE_WALL, BattlefieldWG::BrokenWallOrTower(), Battlefield::GetGameObject(), BattlefieldWG::GetRelic(), GO_FLAG_NOT_SELECTABLE, LOG_ERROR, m_Build, m_destroyedText, m_State, m_Team, m_Type, m_WG, m_WorldState, Battlefield::SendUpdateWorldState(), Battlefield::SendWarning(), BattlefieldWG::SetRelicInteractible(), and BattlefieldWG::UpdatedDestroyedTowerCount().

◆ Init()

void BfWGGameObjectBuilding::Init ( GameObject gobj,
uint32  type,
uint32  worldstate,
uint8  damageText,
uint8  destroyText 
)
inline
1206 {
1207 if (!gobj)
1208 {
1209 return;
1210 }
1211
1212 // GameObject associated to object
1213 m_Build = gobj->GetGUID();
1214
1215 // Type of building (WALL/TOWER/DOOR)
1216 m_Type = type;
1217
1218 // WorldState for client (icon on map)
1219 m_WorldState = worldstate;
1220
1221 // NameId for Warning text
1222 m_damagedText = damageText;
1223 m_destroyedText = destroyText;
1224
1225 switch (m_Type)
1226 {
1231 m_Team = m_WG->GetDefenderTeam(); // Objects that are part of the keep should be the defender's
1232 break;
1234 m_Team = m_WG->GetAttackerTeam(); // The towers in the south should be the attacker's
1235 break;
1236 default:
1238 break;
1239 }
1240
1241 m_State = sWorld->getWorldState(m_WorldState);
1242 if (gobj)
1243 {
1244 switch (m_State)
1245 {
1249 break;
1253 break;
1257 break;
1258 }
1259 }
1260
1261 int32 towerid = -1;
1262 switch (gobj->GetEntry())
1263 {
1265 towerid = 0;
1266 break;
1268 towerid = 1;
1269 break;
1271 towerid = 2;
1272 break;
1274 towerid = 3;
1275 break;
1277 towerid = 4;
1278 break;
1280 towerid = 5;
1281 break;
1283 towerid = 6;
1284 break;
1285 }
1286
1287 if (towerid > 3) // Attacker towers
1288 {
1289 // Spawn associate gameobjects
1290 for (uint8 i = 0; i < AttackTowers[towerid - 4].nbObject; i++)
1291 {
1292 WintergraspObjectPositionData gobData = AttackTowers[towerid - 4].GameObject[i];
1293 if (GameObject* go = m_WG->SpawnGameObject(gobData.entryHorde, gobData.x, gobData.y, gobData.z, gobData.o))
1294 m_GameObjectList[TEAM_HORDE].insert(go);
1295 if (GameObject* go = m_WG->SpawnGameObject(gobData.entryAlliance, gobData.x, gobData.y, gobData.z, gobData.o))
1296 m_GameObjectList[TEAM_ALLIANCE].insert(go);
1297 }
1298
1299 // Spawn associate npc bottom
1300 for (uint8 i = 0; i < AttackTowers[towerid - 4].nbCreatureBottom; i++)
1301 {
1304 m_CreatureBottomList[TEAM_HORDE].insert(creature->GetGUID());
1306 m_CreatureBottomList[TEAM_ALLIANCE].insert(creature->GetGUID());
1307 }
1308
1309 // Spawn associate npc top
1310 for (uint8 i = 0; i < AttackTowers[towerid - 4].nbCreatureTop; i++)
1311 {
1314 m_CreatureTopList[TEAM_HORDE].insert(creature->GetGUID());
1316 m_CreatureTopList[TEAM_ALLIANCE].insert(creature->GetGUID());
1317 }
1318 }
1319
1320 if (towerid >= 0)
1321 {
1322 // Spawn Turret bottom
1323 for (uint8 i = 0; i < TowerCannon[towerid].nbTowerCannonBottom; i++)
1324 {
1325 Position turretPos = TowerCannon[towerid].TowerCannonBottom[i].GetPosition();
1327 {
1328 m_TowerCannonBottomList.insert(turret->GetGUID());
1329 m_WG->HideNpc(turret);
1330 }
1331 }
1332
1333 // Spawn Turret top
1334 for (uint8 i = 0; i < TowerCannon[towerid].nbTurretTop; i++)
1335 {
1336 Position towerCannonPos = TowerCannon[towerid].TurretTop[i].GetPosition();
1337 if (Creature* turret = m_WG->SpawnCreature(NPC_WINTERGRASP_TOWER_CANNON, towerCannonPos, TEAM_ALLIANCE))
1338 {
1339 m_TurretTopList.insert(turret->GetGUID());
1340 m_WG->HideNpc(turret);
1341 }
1342 }
1344 }
1345 }
WintergraspTowerData const AttackTowers[WG_MAX_ATTACKTOWERS]
Definition BattlefieldWG.h:785
WintergraspTowerCannonData const TowerCannon[WG_MAX_TOWER_CANNON]
Definition BattlefieldWG.h:901
@ NPC_WINTERGRASP_TOWER_CANNON
Definition BattlefieldWG.h:204
@ GO_WINTERGRASP_FORTRESS_TOWER_3
Definition BattlefieldWG.h:556
@ GO_WINTERGRASP_FORTRESS_TOWER_2
Definition BattlefieldWG.h:555
@ GO_WINTERGRASP_FLAMEWATCH_TOWER
Definition BattlefieldWG.h:561
@ GO_WINTERGRASP_FORTRESS_TOWER_4
Definition BattlefieldWG.h:557
@ GO_WINTERGRASP_SHADOWSIGHT_TOWER
Definition BattlefieldWG.h:559
@ GO_WINTERGRASP_FORTRESS_TOWER_1
Definition BattlefieldWG.h:554
@ GO_WINTERGRASP_WINTER_S_EDGE_TOWER
Definition BattlefieldWG.h:560
@ BATTLEFIELD_WG_OBJECTSTATE_HORDE_DESTROY
Definition BattlefieldWG.h:496
@ BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_INTACT
Definition BattlefieldWG.h:497
@ BATTLEFIELD_WG_OBJECTSTATE_HORDE_INTACT
Definition BattlefieldWG.h:494
@ BATTLEFIELD_WG_OBJECTSTATE_HORDE_DAMAGE
Definition BattlefieldWG.h:495
std::int32_t int32
Definition Define.h:103
std::uint8_t uint8
Definition Define.h:109
@ GO_DESTRUCTIBLE_DESTROYED
Definition SharedDefines.h:1629
@ GO_DESTRUCTIBLE_REBUILDING
Definition SharedDefines.h:1630
@ GO_DESTRUCTIBLE_DAMAGED
Definition SharedDefines.h:1628
@ TEAM_NEUTRAL
Definition SharedDefines.h:762
@ TEAM_HORDE
Definition SharedDefines.h:761
Creature * SpawnCreature(uint32 entry, float x, float y, float z, float o, TeamId teamId)
Definition Battlefield.cpp:791
TeamId GetDefenderTeam()
Definition Battlefield.h:275
GameObject * SpawnGameObject(uint32 entry, float x, float y, float z, float o)
Definition Battlefield.cpp:834
void SetDestructibleState(GameObjectDestructibleState state, Player *eventInvoker=nullptr, bool setHealth=false)
Definition GameObject.cpp:2325
uint32 GetEntry() const
Definition Object.h:115
static ObjectGuid GetGUID(Object const *o)
Definition Object.h:112
#define sWorld
Definition World.h:363
ObjectData const creatureData[]
Definition instance_blackwing_lair.cpp:45
GameObjectSet m_GameObjectList[2]
Definition BattlefieldWG.h:1108
GuidUnorderedSet m_CreatureBottomList[2]
Definition BattlefieldWG.h:1111
GuidUnorderedSet m_TowerCannonBottomList
Definition BattlefieldWG.h:1113
void UpdateCreatureAndGo()
Definition BattlefieldWG.h:1347
Definition Position.h:27
void GetPosition(float &x, float &y) const
Definition Position.h:126
Definition BattlefieldWG.h:565
uint32 entryAlliance
Definition BattlefieldWG.h:571
uint32 entryHorde
Definition BattlefieldWG.h:570
float y
Definition BattlefieldWG.h:567
float x
Definition BattlefieldWG.h:566
float z
Definition BattlefieldWG.h:568
float o
Definition BattlefieldWG.h:569
uint8 nbTowerCannonBottom
Definition BattlefieldWG.h:893
Position TowerCannonBottom[5]
Definition BattlefieldWG.h:894
uint8 nbTurretTop
Definition BattlefieldWG.h:895
Position TurretTop[5]
Definition BattlefieldWG.h:896
uint8 nbCreatureTop
Definition BattlefieldWG.h:777
WintergraspObjectPositionData CreatureTop[5]
Definition BattlefieldWG.h:778
WintergraspObjectPositionData CreatureBottom[9]
Definition BattlefieldWG.h:776
WintergraspObjectPositionData GameObject[6]
Definition BattlefieldWG.h:772
uint8 nbObject
Definition BattlefieldWG.h:771
uint8 nbCreatureBottom
Definition BattlefieldWG.h:775

References AttackTowers, BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_DAMAGE, BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_DESTROY, BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_INTACT, BATTLEFIELD_WG_OBJECTSTATE_HORDE_DAMAGE, BATTLEFIELD_WG_OBJECTSTATE_HORDE_DESTROY, BATTLEFIELD_WG_OBJECTSTATE_HORDE_INTACT, BATTLEFIELD_WG_OBJECTTYPE_DOOR, BATTLEFIELD_WG_OBJECTTYPE_DOOR_LAST, BATTLEFIELD_WG_OBJECTTYPE_KEEP_TOWER, BATTLEFIELD_WG_OBJECTTYPE_TOWER, BATTLEFIELD_WG_OBJECTTYPE_WALL, WintergraspTowerData::CreatureBottom, creatureData, WintergraspTowerData::CreatureTop, WintergraspObjectPositionData::entryAlliance, WintergraspObjectPositionData::entryHorde, WintergraspTowerData::GameObject, Battlefield::GetAttackerTeam(), Battlefield::GetDefenderTeam(), Object::GetEntry(), Object::GetGUID(), Position::GetPosition(), GO_DESTRUCTIBLE_DAMAGED, GO_DESTRUCTIBLE_DESTROYED, GO_DESTRUCTIBLE_REBUILDING, GO_WINTERGRASP_FLAMEWATCH_TOWER, GO_WINTERGRASP_FORTRESS_TOWER_1, GO_WINTERGRASP_FORTRESS_TOWER_2, GO_WINTERGRASP_FORTRESS_TOWER_3, GO_WINTERGRASP_FORTRESS_TOWER_4, GO_WINTERGRASP_SHADOWSIGHT_TOWER, GO_WINTERGRASP_WINTER_S_EDGE_TOWER, Battlefield::HideNpc(), m_Build, m_CreatureBottomList, m_CreatureTopList, m_damagedText, m_destroyedText, m_GameObjectList, m_State, m_Team, m_TowerCannonBottomList, m_TurretTopList, m_Type, m_WG, m_WorldState, WintergraspTowerData::nbCreatureBottom, WintergraspTowerData::nbCreatureTop, WintergraspTowerData::nbObject, WintergraspTowerCannonData::nbTowerCannonBottom, WintergraspTowerCannonData::nbTurretTop, NPC_WINTERGRASP_TOWER_CANNON, WintergraspObjectPositionData::o, GameObject::SetDestructibleState(), Battlefield::SpawnCreature(), Battlefield::SpawnGameObject(), sWorld, TEAM_ALLIANCE, TEAM_HORDE, TEAM_NEUTRAL, TowerCannon, WintergraspTowerCannonData::TowerCannonBottom, WintergraspTowerCannonData::TurretTop, UpdateCreatureAndGo(), WintergraspObjectPositionData::x, WintergraspObjectPositionData::y, and WintergraspObjectPositionData::z.

Referenced by BattlefieldWG::SetupBattlefield().

◆ Rebuild()

void BfWGGameObjectBuilding::Rebuild ( )
inline
1117 {
1118 switch (m_Type)
1119 {
1124 m_Team = m_WG->GetDefenderTeam(); // Objects that are part of the keep should be the defender's
1125 break;
1127 m_Team = m_WG->GetAttackerTeam(); // The towers in the south should be the attacker's
1128 break;
1129 default:
1131 break;
1132 }
1133
1135 if (go)
1136 {
1137 // Rebuild gameobject
1140 }
1141
1142 // Update worldstate
1146 }
uint32 const WintergraspFaction[3]
Definition BattlefieldWG.h:43
@ GAMEOBJECT_FACTION
Definition UpdateFields.h:402
void SetUInt32Value(uint16 index, uint32 value)
Definition Object.cpp:650

References BATTLEFIELD_WG_OBJECTSTATE_ALLIANCE_INTACT, BATTLEFIELD_WG_OBJECTTYPE_DOOR, BATTLEFIELD_WG_OBJECTTYPE_DOOR_LAST, BATTLEFIELD_WG_OBJECTTYPE_KEEP_TOWER, BATTLEFIELD_WG_OBJECTTYPE_TOWER, BATTLEFIELD_WG_OBJECTTYPE_WALL, GAMEOBJECT_FACTION, Battlefield::GetAttackerTeam(), Battlefield::GetDefenderTeam(), Battlefield::GetGameObject(), GO_DESTRUCTIBLE_REBUILDING, m_Build, m_State, m_Team, m_Type, m_WG, m_WorldState, Battlefield::SendUpdateWorldState(), GameObject::SetDestructibleState(), Object::SetUInt32Value(), TEAM_NEUTRAL, UpdateCreatureAndGo(), and WintergraspFaction.

◆ Save()

void BfWGGameObjectBuilding::Save ( )
inline
1420 {
1421 sWorld->setWorldState(m_WorldState, m_State);
1422 }

References m_State, m_WorldState, and sWorld.

◆ UpdateCreatureAndGo()

void BfWGGameObjectBuilding::UpdateCreatureAndGo ( )
inline
1348 {
1349 for (GuidUnorderedSet::const_iterator itr = m_CreatureTopList[m_WG->GetDefenderTeam()].begin(); itr != m_CreatureTopList[m_WG->GetDefenderTeam()].end(); ++itr)
1350 if (Creature* creature = m_WG->GetCreature(*itr))
1351 m_WG->HideNpc(creature);
1352
1353 for (GuidUnorderedSet::const_iterator itr = m_CreatureTopList[m_WG->GetAttackerTeam()].begin(); itr != m_CreatureTopList[m_WG->GetAttackerTeam()].end(); ++itr)
1354 if (Creature* creature = m_WG->GetCreature(*itr))
1355 m_WG->ShowNpc(creature, true);
1356
1357 for (GuidUnorderedSet::const_iterator itr = m_CreatureBottomList[m_WG->GetDefenderTeam()].begin(); itr != m_CreatureBottomList[m_WG->GetDefenderTeam()].end(); ++itr)
1358 if (Creature* creature = m_WG->GetCreature(*itr))
1359 m_WG->HideNpc(creature);
1360
1361 for (GuidUnorderedSet::const_iterator itr = m_CreatureBottomList[m_WG->GetAttackerTeam()].begin(); itr != m_CreatureBottomList[m_WG->GetAttackerTeam()].end(); ++itr)
1362 if (Creature* creature = m_WG->GetCreature(*itr))
1363 m_WG->ShowNpc(creature, true);
1364
1365 for (GameObjectSet::const_iterator itr = m_GameObjectList[m_WG->GetDefenderTeam()].begin(); itr != m_GameObjectList[m_WG->GetDefenderTeam()].end(); ++itr)
1366 (*itr)->SetRespawnTime(RESPAWN_ONE_DAY);
1367
1368 for (GameObjectSet::const_iterator itr = m_GameObjectList[m_WG->GetAttackerTeam()].begin(); itr != m_GameObjectList[m_WG->GetAttackerTeam()].end(); ++itr)
1369 (*itr)->SetRespawnTime(RESPAWN_IMMEDIATELY);
1370 }
@ RESPAWN_IMMEDIATELY
Definition Battleground.h:170
@ RESPAWN_ONE_DAY
Definition Battleground.h:169
void ShowNpc(Creature *creature, bool aggressive)
Definition Battlefield.cpp:509

References Battlefield::GetAttackerTeam(), Battlefield::GetCreature(), Battlefield::GetDefenderTeam(), Battlefield::HideNpc(), m_CreatureBottomList, m_CreatureTopList, m_GameObjectList, m_WG, RESPAWN_IMMEDIATELY, RESPAWN_ONE_DAY, and Battlefield::ShowNpc().

Referenced by Init(), and Rebuild().

◆ UpdateTurretAttack()

void BfWGGameObjectBuilding::UpdateTurretAttack ( bool  disable)
inline
1373 {
1375 if (!build)
1376 return;
1377
1378 uint32 faction = 0;
1379 switch (build->GetEntry())
1380 {
1386 break;
1391 break;
1392 }
1393
1394 for (GuidUnorderedSet::const_iterator itr = m_TowerCannonBottomList.begin(); itr != m_TowerCannonBottomList.end(); ++itr)
1395 {
1396 if (Creature* creature = m_WG->GetCreature(*itr))
1397 {
1398 creature->SetFaction(faction);
1399 if (disable)
1400 m_WG->HideNpc(creature);
1401 else
1402 m_WG->ShowNpc(creature, true);
1403 }
1404 }
1405
1406 for (GuidUnorderedSet::const_iterator itr = m_TurretTopList.begin(); itr != m_TurretTopList.end(); ++itr)
1407 {
1408 if (Creature* creature = m_WG->GetCreature(*itr))
1409 {
1410 creature->SetFaction(faction);
1411 if (disable)
1412 m_WG->HideNpc(creature);
1413 else
1414 m_WG->ShowNpc(creature, true);
1415 }
1416 }
1417 }
std::uint32_t uint32
Definition Define.h:107

References Battlefield::GetAttackerTeam(), Battlefield::GetCreature(), Battlefield::GetDefenderTeam(), Object::GetEntry(), Battlefield::GetGameObject(), GO_WINTERGRASP_FLAMEWATCH_TOWER, GO_WINTERGRASP_FORTRESS_TOWER_1, GO_WINTERGRASP_FORTRESS_TOWER_2, GO_WINTERGRASP_FORTRESS_TOWER_3, GO_WINTERGRASP_FORTRESS_TOWER_4, GO_WINTERGRASP_SHADOWSIGHT_TOWER, GO_WINTERGRASP_WINTER_S_EDGE_TOWER, Battlefield::HideNpc(), m_Build, m_TowerCannonBottomList, m_TurretTopList, m_WG, Battlefield::ShowNpc(), and WintergraspFaction.

Member Data Documentation

◆ m_Build

ObjectGuid BfWGGameObjectBuilding::m_Build

◆ m_CreatureBottomList

GuidUnorderedSet BfWGGameObjectBuilding::m_CreatureBottomList[2]

Referenced by Init(), and UpdateCreatureAndGo().

◆ m_CreatureTopList

GuidUnorderedSet BfWGGameObjectBuilding::m_CreatureTopList[2]

Referenced by Damaged(), Init(), and UpdateCreatureAndGo().

◆ m_damagedText

uint8 BfWGGameObjectBuilding::m_damagedText

◆ m_destroyedText

uint8 BfWGGameObjectBuilding::m_destroyedText

◆ m_GameObjectList

GameObjectSet BfWGGameObjectBuilding::m_GameObjectList[2]

Referenced by Init(), and UpdateCreatureAndGo().

◆ m_State

uint32 BfWGGameObjectBuilding::m_State

◆ m_Team

TeamId BfWGGameObjectBuilding::m_Team

◆ m_TowerCannonBottomList

GuidUnorderedSet BfWGGameObjectBuilding::m_TowerCannonBottomList

Referenced by Init(), and UpdateTurretAttack().

◆ m_TurretTopList

GuidUnorderedSet BfWGGameObjectBuilding::m_TurretTopList

Referenced by Damaged(), Init(), and UpdateTurretAttack().

◆ m_Type

uint32 BfWGGameObjectBuilding::m_Type

◆ m_WG

◆ m_WorldState

uint32 BfWGGameObjectBuilding::m_WorldState

The documentation for this struct was generated from the following file: