![]() |
TrinityCore
|
#include <Vehicle.h>
Inheritance diagram for Vehicle:Public Member Functions | |
| Vehicle (Unit *unit, VehicleEntry const *vehInfo, uint32 creatureEntry) | |
| ~Vehicle () | |
| void | Install () |
| Initializes power type for vehicle. Nothing more. | |
| void | Uninstall () |
| Removes all passengers and sets status to STATUS_UNINSTALLING. No new passengers can be added to the vehicle after this call. | |
| void | Reset (bool evading=false) |
| Reapplies immunities and reinstalls accessories. Only has effect for creatures. | |
| void | InstallAllAccessories (bool evading) |
| void | ApplyAllImmunities () |
| Applies specific immunities that cannot be set in DB. | |
| void | InstallAccessory (uint32 entry, int8 seatId, bool minion, uint8 type, uint32 summonTime) |
| Installs an accessory. | |
| Unit * | GetBase () const |
| May be called from scripts. | |
| VehicleEntry const * | GetVehicleInfo () const |
| uint32 | GetCreatureEntry () const |
| bool | HasEmptySeat (int8 seatId) const |
| Checks if vehicle's seat specified by 'seatId' is empty. | |
| Unit * | GetPassenger (int8 seatId) const |
| Gets a passenger on specified seat. | |
| SeatMap::const_iterator | GetNextEmptySeat (int8 seatId, bool next) const |
| Gets the next empty seat based on current seat. | |
| VehicleSeatAddon const * | GetSeatAddonForSeatOfPassenger (Unit const *passenger) const |
| Gets the vehicle seat addon data for the seat of a passenger. | |
| uint8 | GetAvailableSeatCount () const |
| Gets the available seat count. | |
| bool | AddPassenger (Unit *passenger, int8 seatId=-1) |
| Attempts to add a passenger to the vehicle on 'seatId'. | |
| void | EjectPassenger (Unit *passenger, Unit *controller) |
| Vehicle * | RemovePassenger (Unit *passenger) |
| Removes the passenger from the vehicle. | |
| void | RelocatePassengers () |
| Relocate passengers. Must be called after m_base::Relocate. | |
| void | RemoveAllPassengers () |
| Removes all current and pending passengers from the vehicle. | |
| bool | IsVehicleInUse () const |
| Returns information whether the vehicle is currently used by any unit. | |
| bool | IsControllableVehicle () const |
| VehicleSeatEntry const * | GetSeatForPassenger (Unit const *passenger) const |
| Returns information on the seat of specified passenger, represented by the format in VehicleSeat.dbc. | |
| void | RemovePendingEventsForPassenger (Unit *passenger) |
| Milliseconds | GetDespawnDelay () |
| std::string | GetDebugInfo () const |
| Trinity::unique_weak_ptr< Vehicle > | GetWeakPtr () const |
Public Attributes | |
| SeatMap | Seats |
| The collection of all seats on the vehicle. Including vacant ones. | |
Protected Attributes | |
| uint32 | UsableSeatNum |
| Number of seats that match VehicleSeatEntry::UsableByPlayer, used for proper display flags. | |
Private Types | |
| enum | Status { STATUS_NONE , STATUS_INSTALLED , STATUS_UNINSTALLING } |
| typedef std::list< VehicleJoinEvent * > | PendingJoinEventContainer |
Private Member Functions | |
| SeatMap::iterator | GetSeatIteratorForPassenger (Unit *passenger) |
| Gets seat iterator for specified passenger. | |
| void | InitMovementInfoForBase () |
| Sets correct MovementFlags2 based on VehicleFlags from DBC. | |
| void | CalculatePassengerPosition (float &x, float &y, float &z, float *o) const override |
| This method transforms supplied transport offsets into global coordinates. | |
| void | CalculatePassengerOffset (float &x, float &y, float &z, float *o) const override |
| This method transforms supplied global coordinates into local offsets. | |
| void | RemovePendingEvent (VehicleJoinEvent *e) |
| Removes @VehicleJoinEvent objects from pending join event store. This method only removes it after it's executed or aborted to prevent leaving pointers to deleted events. | |
| void | RemovePendingEventsForSeat (int8 seatId) |
| Removes any pending events for given seatId. Executed when a @VehicleJoinEvent::Execute is called. | |
| bool | HasPendingEventForSeat (int8 seatId) const |
Private Attributes | |
| Unit * | _me |
| The underlying unit with the vehicle kit. Can be player or creature. | |
| VehicleEntry const * | _vehicleInfo |
| DBC data for vehicle. | |
| GuidSet | vehiclePlayers |
| uint32 | _creatureEntry |
| Can be different than the entry of _me in case of players. | |
| Status | _status |
| Internal variable for sanity checks. | |
| PendingJoinEventContainer | _pendingJoinEvents |
| Collection of delayed join events for prospective passengers. | |
Friends | |
| class | VehicleJoinEvent |
Additional Inherited Members | |
Protected Member Functions inherited from TransportBase | |
| TransportBase () | |
| virtual | ~TransportBase () |
Static Protected Member Functions inherited from TransportBase | |
| static void | CalculatePassengerPosition (float &x, float &y, float &z, float *o, float transX, float transY, float transZ, float transO) |
| static void | CalculatePassengerOffset (float &x, float &y, float &z, float *o, float transX, float transY, float transZ, float transO) |
|
private |
|
private |
| Vehicle::Vehicle | ( | Unit * | unit, |
| VehicleEntry const * | vehInfo, | ||
| uint32 | creatureEntry | ||
| ) |
Definition at line 36 of file Vehicle.cpp.
References _me, _vehicleInfo, Object::GetTypeId(), InitMovementInfoForBase(), MAX_VEHICLE_SEATS, Unit::RemoveNpcFlag(), VehicleEntry::SeatID, Unit::SetNpcFlag(), sObjectMgr, sVehicleSeatStore, TYPEID_PLAYER, UNIT_NPC_FLAG_PLAYER_VEHICLE, UNIT_NPC_FLAG_SPELLCLICK, and UsableSeatNum.
| Vehicle::~Vehicle | ( | ) |
@Uninstall must be called before this.
Definition at line 60 of file Vehicle.cpp.
References _status, ASSERT, and STATUS_UNINSTALLING.
Attempts to add a passenger to the vehicle on 'seatId'.
| unit | The prospective passenger. |
| seatId | Identifier for the seat. Value of -1 indicates the next available seat. |
@Prevent adding passengers when vehicle is uninstalling. (Bad script in OnUninstall/OnRemovePassenger/PassengerBoarded hook.)
Definition at line 426 of file Vehicle.cpp.
References _me, _pendingJoinEvents, _status, _vehicleInfo, EventProcessor::AddEvent(), ASSERT, EventProcessor::CalculateTime(), Unit::ExitVehicle(), GetBase(), Object::GetEntry(), Object::GetGUID(), WorldObject::GetName(), ObjectAccessor::GetUnit(), HasPendingEventForSeat(), VehicleEntry::ID, WorldObject::m_Events, BasicEvent::ScheduleAbort(), VehicleJoinEvent::Seat, STATUS_UNINSTALLING, TC_LOG_DEBUG, TC_LOG_ERROR, ObjectGuid::ToString(), and VehicleJoinEvent.
Referenced by Unit::_EnterVehicle().
| void Vehicle::ApplyAllImmunities | ( | ) |
Applies specific immunities that cannot be set in DB.
Definition at line 160 of file Vehicle.cpp.
References _me, Unit::ApplySpellImmune(), CREATURE_TYPE_MECHANICAL, GetBase(), Creature::GetCreatureTemplate(), GetVehicleInfo(), IMMUNITY_EFFECT, IMMUNITY_MECHANIC, IMMUNITY_STATE, Creature::isWorldBoss(), MECHANIC_BANISH, MECHANIC_IMMUNE_SHIELD, MECHANIC_SHIELD, Unit::SetControlled(), SPELL_AURA_DAMAGE_SHIELD, SPELL_AURA_MOD_DAMAGE_PERCENT_TAKEN, SPELL_AURA_MOD_DECREASE_SPEED, SPELL_AURA_MOD_RESISTANCE, SPELL_AURA_MOD_STAT, SPELL_AURA_MOD_UNATTACKABLE, SPELL_AURA_PERIODIC_HEAL, SPELL_AURA_SCHOOL_ABSORB, SPELL_AURA_SCHOOL_IMMUNITY, SPELL_AURA_SPLIT_DAMAGE_PCT, SPELL_EFFECT_DISPEL, SPELL_EFFECT_HEAL, SPELL_EFFECT_HEAL_PCT, SPELL_EFFECT_KNOCK_BACK, SPELL_EFFECT_KNOCK_BACK_DEST, Object::ToCreature(), CreatureTemplate::type, UNIT_STATE_ROOT, and VEHICLE_FLAG_FIXED_POSITION.
Referenced by Reset().
|
inlineoverrideprivatevirtual |
This method transforms supplied global coordinates into local offsets.
Implements TransportBase.
Definition at line 99 of file Vehicle.h.
References TransportBase::CalculatePassengerOffset().
|
inlineoverrideprivatevirtual |
This method transforms supplied transport offsets into global coordinates.
Implements TransportBase.
Definition at line 91 of file Vehicle.h.
References TransportBase::CalculatePassengerPosition().
Referenced by RelocatePassengers().
| uint8 Vehicle::GetAvailableSeatCount | ( | ) | const |
Gets the available seat count.
Definition at line 689 of file Vehicle.cpp.
References HasPendingEventForSeat().
Referenced by Aura::CanStackWith(), and npc_brunnhildar_prisoner::SpellHit().
|
inline |
May be called from scripts.
Definition at line 45 of file Vehicle.h.
Referenced by Unit::_EnterVehicle(), Unit::_ExitVehicle(), Creature::_IsTargetAcceptable(), VehicleJoinEvent::Abort(), AddPassenger(), ApplyAllImmunities(), Unit::ChangeSeat(), VehicleJoinEvent::Execute(), GetPassenger(), SmartScript::GetTargets(), ObjectMgr::GetVehicleAccessoryList(), Unit::GetVehicleBase(), WorldSession::HandleEjectPassenger(), spell_auto_repair::spell_auto_repair_SpellScript::HandleScript(), Install(), InstallAllAccessories(), npc_tiger_matriarch::IsSummonedBy(), ScriptMgr::OnAddPassenger(), ScriptMgr::OnInstall(), ScriptMgr::OnInstallAccessory(), ScriptMgr::OnRemovePassenger(), ScriptMgr::OnReset(), ScriptMgr::OnUninstall(), RelocatePassengers(), RemovePassenger(), Reset(), and Uninstall().
|
inline |
Definition at line 47 of file Vehicle.h.
Referenced by ObjectMgr::GetVehicleAccessoryList(), ObjectMgr::GetVehicleTemplate(), Unit::HandleSpellClick(), InstallAccessory(), and Reset().
| std::string Vehicle::GetDebugInfo | ( | ) | const |
Definition at line 969 of file Vehicle.cpp.
References _pendingJoinEvents.
Referenced by Unit::GetDebugInfo().
| Milliseconds Vehicle::GetDespawnDelay | ( | ) |
Definition at line 961 of file Vehicle.cpp.
References sObjectMgr.
Referenced by Unit::_ExitVehicle().
| SeatMap::const_iterator Vehicle::GetNextEmptySeat | ( | int8 | seatId, |
| bool | next | ||
| ) | const |
Gets the next empty seat based on current seat.
| seatId | Identifier for the current seat. |
| next | true if iterating forward, false means iterating backwards. |
Definition at line 319 of file Vehicle.cpp.
References HasPendingEventForSeat().
Referenced by Unit::ChangeSeat().
Gets a passenger on specified seat.
| seatId | Seat to look on. |
Definition at line 296 of file Vehicle.cpp.
References GetBase(), and ObjectAccessor::GetUnit().
Referenced by boss_leviathan_mk_ii::boss_leviathan_mk_iiAI::DamageTaken(), npc_orb_carrier::DoAction(), boss_gormok::ExecuteEvent(), spell_pilgrims_bounty_on_plate::GetPlateInSeat(), spell_icecrown_jump_jets::HandleCast(), spell_icecrown_illidan_kill_credit_master::HandleDummy(), spell_icecrown_plant_battle_standard::HandleDummy(), spell_auto_repair::spell_auto_repair_SpellScript::HandleScript(), spell_zuldrak_gymers_throw::HandleScript(), npc_snobold_vassal::MountOnBoss(), boss_flame_leviathan_overload_device::boss_flame_leviathan_overload_deviceAI::OnSpellClick(), boss_flame_leviathan_seat::boss_flame_leviathan_seatAI::PassengerBoarded(), boss_vx_001::boss_vx_001AI::UpdateAI(), npc_freed_protodrake::UpdateAI(), and generic_vehicleAI_toc5::generic_vehicleAI_toc5AI::UpdateAI().
| VehicleSeatAddon const * Vehicle::GetSeatAddonForSeatOfPassenger | ( | Unit const * | passenger | ) | const |
Gets the vehicle seat addon data for the seat of a passenger.
| passenger | Identifier for the current seat user |
Definition at line 360 of file Vehicle.cpp.
References Object::GetGUID().
Referenced by Unit::_ExitVehicle().
| VehicleSeatEntry const * Vehicle::GetSeatForPassenger | ( | Unit const * | passenger | ) | const |
Returns information on the seat of specified passenger, represented by the format in VehicleSeat.dbc.
| [in,out] | The | passenger for which we check the seat info. |
Definition at line 646 of file Vehicle.cpp.
References Object::GetGUID().
Referenced by SpellInfo::CheckVehicle(), WorldSession::HandleChangeSeatsOnControlledVehicle(), and WorldSession::HandleEjectPassenger().
|
private |
Gets seat iterator for specified passenger.
| [in,out] | passenger | Passenger to look up. |
Definition at line 668 of file Vehicle.cpp.
References Object::GetGUID().
Referenced by RemovePassenger().
|
inline |
Definition at line 46 of file Vehicle.h.
Referenced by Unit::_EnterVehicle(), ApplyAllImmunities(), WorldSession::HandleRequestPartyMemberStatsOpcode(), and InitMovementInfoForBase().
| Trinity::unique_weak_ptr< Vehicle > Vehicle::GetWeakPtr | ( | ) | const |
Definition at line 996 of file Vehicle.cpp.
References _me, and Unit::GetVehicleKitWeakPtr().
| bool Vehicle::HasEmptySeat | ( | int8 | seatId | ) | const |
Checks if vehicle's seat specified by 'seatId' is empty.
| seatId | Identifier for the seat. |
Definition at line 275 of file Vehicle.cpp.
Referenced by npc_ros_dark_rider::npc_ros_dark_riderAI::Reset(), and npc_mechanolift::npc_mechanoliftAI::UpdateAI().
|
private |
Definition at line 951 of file Vehicle.cpp.
References _pendingJoinEvents.
Referenced by AddPassenger(), GetAvailableSeatCount(), and GetNextEmptySeat().
|
private |
Sets correct MovementFlags2 based on VehicleFlags from DBC.
Definition at line 617 of file Vehicle.cpp.
References _me, Unit::AddExtraUnitMovementFlag(), VehicleEntry::Flags, GetVehicleInfo(), MOVEMENTFLAG2_ALWAYS_ALLOW_PITCHING, MOVEMENTFLAG2_FULL_SPEED_PITCHING, MOVEMENTFLAG2_FULL_SPEED_TURNING, MOVEMENTFLAG2_NO_JUMPING, MOVEMENTFLAG2_NO_STRAFE, VEHICLE_FLAG_ALLOW_PITCHING, VEHICLE_FLAG_FULLSPEEDPITCHING, VEHICLE_FLAG_FULLSPEEDTURNING, VEHICLE_FLAG_NO_JUMPING, and VEHICLE_FLAG_NO_STRAFE.
Referenced by Vehicle().
| void Vehicle::Install | ( | ) |
Initializes power type for vehicle. Nothing more.
Definition at line 77 of file Vehicle.cpp.
References _status, GetBase(), sScriptMgr, STATUS_INSTALLED, and TYPEID_UNIT.
Referenced by Creature::AddToWorld().
| void Vehicle::InstallAccessory | ( | uint32 | entry, |
| int8 | seatId, | ||
| bool | minion, | ||
| uint8 | type, | ||
| uint32 | summonTime | ||
| ) |
Installs an accessory.
| entry | The NPC entry of accessory. |
| seatId | Identifier for the seat to add the accessory to. |
| minion | true if accessory considered a 'minion'. Implies that the accessory will despawn when the vehicle despawns. Essentially that it has no life without the vehicle. Their fates are bound. |
| type | See enum @SummonType. |
| summonTime | Time after which the minion is despawned in case of a timed despawn @type specified. |
@Prevent adding accessories when vehicle is uninstalling. (Bad script in OnUninstall/OnRemovePassenger/PassengerBoarded hook.)
If for some reason adding accessory to vehicle fails it will unsummon in @VehicleJoinEvent::Abort
Definition at line 386 of file Vehicle.cpp.
References _me, _status, Unit::AddUnitTypeMask(), ASSERT, GetCreatureEntry(), Object::GetGUID(), Unit::HandleSpellClick(), STATUS_UNINSTALLING, WorldObject::SummonCreature(), TC_LOG_DEBUG, TC_LOG_ERROR, ObjectGuid::ToString(), and UNIT_MASK_ACCESSORY.
Referenced by InstallAllAccessories().
| void Vehicle::InstallAllAccessories | ( | bool | evading | ) |
Definition at line 84 of file Vehicle.cpp.
References GetBase(), InstallAccessory(), RemoveAllPassengers(), sObjectMgr, and TYPEID_PLAYER.
Referenced by Unit::Mount(), Reset(), and npc_hyldsmeet_protodrake::UpdateAI().
| bool Vehicle::IsControllableVehicle | ( | ) | const |
Definition at line 599 of file Vehicle.cpp.
References VEHICLE_SEAT_FLAG_CAN_CONTROL.
Referenced by Spell::CheckEffectTarget().
| bool Vehicle::IsVehicleInUse | ( | ) | const |
Returns information whether the vehicle is currently used by any unit.
Definition at line 590 of file Vehicle.cpp.
Referenced by VehicleAI::OnCharmed().
| void Vehicle::RelocatePassengers | ( | ) |
Relocate passengers. Must be called after m_base::Relocate.
Definition at line 554 of file Vehicle.cpp.
References _me, ASSERT, CalculatePassengerPosition(), GetBase(), WorldObject::GetMap(), and ObjectAccessor::GetUnit().
Referenced by Map::CreatureRelocation(), Map::MoveAllCreaturesInMoveList(), Map::PlayerRelocation(), Unit::UpdateHeight(), and Unit::UpdateOrientation().
| void Vehicle::RemoveAllPassengers | ( | ) |
Removes all current and pending passengers from the vehicle.
Setting to_Abort to true will cause @VehicleJoinEvent::Abort to be executed on next @Unit::UpdateEvents call This will properly "reset" the pending join process for the passenger.
Update vehicle pointer in every pending join event - Abort may be called after vehicle is deleted
Definition at line 231 of file Vehicle.cpp.
References _creatureEntry, _me, _pendingJoinEvents, _status, Object::GetGUID(), ObjectAccessor::GetUnit(), Unit::RemoveAurasByType(), BasicEvent::ScheduleAbort(), Seats, SPELL_AURA_CONTROL_VEHICLE, STATUS_UNINSTALLING, VehicleJoinEvent::Target, TC_LOG_DEBUG, and ObjectGuid::ToString().
Referenced by InstallAllAccessories(), and Uninstall().
Removes the passenger from the vehicle.
| [in,out] | unit | The passenger to remove. |
Definition at line 497 of file Vehicle.cpp.
References _me, _vehicleInfo, Creature::AI(), ASSERT, WorldObject::CastSpell(), GetBase(), Object::GetEntry(), Object::GetGUID(), WorldObject::GetName(), GetSeatIteratorForPassenger(), WorldObject::GetTransport(), Object::GetTypeId(), Unit::GetVehicle(), VehicleEntry::ID, Unit::IsAIEnabled(), Unit::IsFlying(), Object::IsInWorld(), WorldObject::m_movementInfo, MOVEMENTFLAG_ONTRANSPORT, CreatureAI::PassengerBoarded(), Unit::RemoveCharmedBy(), Unit::RemoveUnitFlag(), Unit::RemoveUnitMovementFlag(), MovementInfo::TransportInfo::Reset(), Unit::SetNpcFlag(), Unit::SetVehicle(), sScriptMgr, TC_LOG_DEBUG, Object::ToCreature(), ObjectGuid::ToString(), MovementInfo::transport, TYPEID_PLAYER, TYPEID_UNIT, UNIT_FLAG_UNINTERACTIBLE, UNIT_NPC_FLAG_PLAYER_VEHICLE, UNIT_NPC_FLAG_SPELLCLICK, UsableSeatNum, VEHICLE_SEAT_FLAG_CAN_CONTROL, VEHICLE_SEAT_FLAG_PASSENGER_NOT_SELECTABLE, and VEHICLE_SPELL_PARACHUTE.
Referenced by Unit::_ExitVehicle(), AuraEffect::HandleAuraControlVehicle(), and spell_skadi_ride_vehicle::OnRemoveVehicle().
|
private |
Removes @VehicleJoinEvent objects from pending join event store. This method only removes it after it's executed or aborted to prevent leaving pointers to deleted events.
| [in] | e | The VehicleJoinEvent* to remove from pending event store. |
Definition at line 713 of file Vehicle.cpp.
References _pendingJoinEvents.
Referenced by VehicleJoinEvent::Abort().
| void Vehicle::RemovePendingEventsForPassenger | ( | Unit * | passenger | ) |
Definition at line 761 of file Vehicle.cpp.
References _pendingJoinEvents.
Referenced by VehicleJoinEvent::Execute(), AuraEffect::HandleAuraControlVehicle(), and spell_ulduar_stone_grip::spell_ulduar_stone_grip_AuraScript::OnRemoveVehicle().
|
private |
Removes any pending events for given seatId. Executed when a @VehicleJoinEvent::Execute is called.
Removes any pending events for given passenger. Executed when vehicle control aura is removed while adding passenger is in progress.
| seatId | Identifier for the seat. |
| passenger | Unit that is supposed to enter the vehicle. |
Definition at line 736 of file Vehicle.cpp.
References _pendingJoinEvents.
Referenced by VehicleJoinEvent::Execute().
| void Vehicle::Reset | ( | bool | evading = false | ) |
Reapplies immunities and reinstalls accessories. Only has effect for creatures.
| evading | true if called from CreatureAI::EnterEvadeMode |
Definition at line 137 of file Vehicle.cpp.
References _me, ApplyAllImmunities(), GetBase(), GetCreatureEntry(), Object::GetGUID(), Creature::GetSpawnId(), InstallAllAccessories(), sScriptMgr, TC_LOG_DEBUG, Object::ToCreature(), ObjectGuid::ToString(), and TYPEID_UNIT.
Referenced by Creature::AIM_Initialize(), HomeMovementGenerator< T >::DoFinalize(), npc_daegarn::EnterEvadeMode(), CreatureGameObjectScriptRegistrySwapHooks< ObjectType, ScriptType, Base >::LoadResetScript(), and Creature::Update().
| void Vehicle::Uninstall | ( | ) |
Removes all passengers and sets status to STATUS_UNINSTALLING. No new passengers can be added to the vehicle after this call.
@Prevent recursive uninstall call. (Bad script in OnUninstall/OnRemovePassenger/PassengerBoarded hook.)
Definition at line 108 of file Vehicle.cpp.
References _creatureEntry, _me, _status, GetBase(), Object::GetGUID(), RemoveAllPassengers(), sScriptMgr, STATUS_UNINSTALLING, TC_LOG_DEBUG, TC_LOG_ERROR, ObjectGuid::ToString(), TYPEID_UNIT, and UNIT_MASK_MINION.
Referenced by Unit::RemoveVehicleKit().
|
friend |
Definition at line 76 of file Vehicle.h.
Referenced by AddPassenger().
|
private |
Can be different than the entry of _me in case of players.
Definition at line 116 of file Vehicle.h.
Referenced by RemoveAllPassengers(), and Uninstall().
|
private |
The underlying unit with the vehicle kit. Can be player or creature.
Definition at line 112 of file Vehicle.h.
Referenced by AddPassenger(), ApplyAllImmunities(), GetWeakPtr(), InitMovementInfoForBase(), InstallAccessory(), RelocatePassengers(), RemoveAllPassengers(), RemovePassenger(), Reset(), Uninstall(), and Vehicle().
|
private |
Collection of delayed join events for prospective passengers.
Definition at line 120 of file Vehicle.h.
Referenced by AddPassenger(), GetDebugInfo(), HasPendingEventForSeat(), RemoveAllPassengers(), RemovePendingEvent(), RemovePendingEventsForPassenger(), and RemovePendingEventsForSeat().
|
private |
Internal variable for sanity checks.
Definition at line 117 of file Vehicle.h.
Referenced by AddPassenger(), Install(), InstallAccessory(), RemoveAllPassengers(), Uninstall(), and ~Vehicle().
|
private |
DBC data for vehicle.
Definition at line 113 of file Vehicle.h.
Referenced by AddPassenger(), RemovePassenger(), and Vehicle().
| SeatMap Vehicle::Seats |
The collection of all seats on the vehicle. Including vacant ones.
Definition at line 63 of file Vehicle.h.
Referenced by Unit::ChangeSeat(), SmartScript::GetTargets(), FlameLeviathanPursuedTargetSelector::operator()(), Unit::OutDebugInfo(), RemoveAllPassengers(), and boss_flame_leviathan::boss_flame_leviathanAI::SpellHitTarget().
|
protected |
Number of seats that match VehicleSeatEntry::UsableByPlayer, used for proper display flags.
Definition at line 77 of file Vehicle.h.
Referenced by VehicleJoinEvent::Execute(), RemovePassenger(), and Vehicle().