AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
FlameLeviathanPursuedTargetSelector Class Reference

Public Member Functions

 FlameLeviathanPursuedTargetSelector ()
 
bool operator() (WorldObject *target) const
 

Detailed Description

Constructor & Destructor Documentation

◆ FlameLeviathanPursuedTargetSelector()

FlameLeviathanPursuedTargetSelector::FlameLeviathanPursuedTargetSelector ( )
inlineexplicit
1488{};

Member Function Documentation

◆ operator()()

bool FlameLeviathanPursuedTargetSelector::operator() ( WorldObject *  target) const
inline

No players, only vehicles. Pursue is never cast on players.

NPC entries must match

NPC must be a valid vehicle installation

Entity needs to be in appropriate area

Vehicle must be in use by player

1491 {
1493 Creature* creatureTarget = target->ToCreature();
1494 if (!creatureTarget)
1495 return true;
1496
1498 if (creatureTarget->GetEntry() != NPC_SALVAGED_DEMOLISHER && creatureTarget->GetEntry() != NPC_SALVAGED_SIEGE_ENGINE)
1499 return true;
1500
1502 Vehicle* vehicle = creatureTarget->GetVehicleKit();
1503 if (!vehicle)
1504 return true;
1505
1507 if (target->GetAreaId() != AREA_FORMATION_GROUNDS)
1508 return true;
1509
1511 bool playerFound = false;
1512 for (SeatMap::const_iterator itr = vehicle->Seats.begin(); itr != vehicle->Seats.end() && !playerFound; ++itr)
1513 if (itr->second.Passenger.Guid.IsPlayer())
1514 playerFound = true;
1515
1516 return !playerFound;
1517 }
@ AREA_FORMATION_GROUNDS
Definition AreaDefines.h:164
Definition Creature.h:47
uint32 GetEntry() const
Definition Object.h:123
Creature * ToCreature()
Definition Object.h:212
Vehicle * GetVehicleKit() const
Definition Unit.h:1947
Definition Vehicle.h:28
SeatMap Seats
Definition Vehicle.h:60
uint32 GetAreaId() const
Definition Object.cpp:3186
@ NPC_SALVAGED_SIEGE_ENGINE
Definition ulduar.h:224
@ NPC_SALVAGED_DEMOLISHER
Definition ulduar.h:227

References AREA_FORMATION_GROUNDS, WorldObject::GetAreaId(), Object::GetEntry(), Unit::GetVehicleKit(), NPC_SALVAGED_DEMOLISHER, NPC_SALVAGED_SIEGE_ENGINE, Vehicle::Seats, and Object::ToCreature().


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