Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
TurretAI Struct Reference

#include <CombatAI.h>

Inheritance diagram for TurretAI:
Collaboration diagram for TurretAI:

Public Member Functions

void AttackStart (Unit *who) OVERRIDE
bool CanAIAttack (const Unit *who) const
 TurretAI (Creature *c)
void UpdateAI (uint32 diff) OVERRIDE
 == Triggered Actions Requested ==================
Public Member Functions inherited from CreatureAI
virtual void AttackedBy (Unit *)
virtual bool CanRespawn ()
virtual bool CanSeeAlways (WorldObject const *)
bool CanSeeEvenInPassiveMode () const
virtual void CorpseRemoved (uint32 &)
 == State checks =================================
 CreatureAI (Creature *creature)
void DoZoneInCombat (Creature *creature=NULL, float maxRangeToNearestTarget=50.0f)
virtual void EnterCombat (Unit *)
virtual void EnterEvadeMode ()
virtual void ExecuteEvent (uint32)
virtual bool IsEscorted ()
virtual void IsSummonedBy (Unit *)
virtual void JustDied (Unit *)
virtual void JustReachedHome ()
virtual void JustRespawned ()
virtual void JustSummoned (Creature *)
virtual void KilledUnit (Unit *)
void MoveInLineOfSight_Safe (Unit *who)
 == Reactions At =================================
virtual void MovementInform (uint32, uint32)
void OnCharmed (bool apply)
virtual void OnSpellClick (Unit *, bool &)
virtual void OwnerAttacked (Unit *)
virtual void OwnerAttackedBy (Unit *)
virtual void PassengerBoarded (Unit *, int8, bool)
 == Fields =======================================
virtual void ReceiveEmote (Player *, uint32)
void SetCanSeeEvenInPassiveMode (bool canSeeEvenInPassiveMode)
virtual void SpellHit (Unit *, SpellInfo const *)
virtual void SpellHitTarget (Unit *, SpellInfo const *)
virtual void SummonedCreatureDespawn (Creature *)
virtual void SummonedCreatureDies (Creature *, Unit *)
void Talk (uint8 id, WorldObject const *whisperTarget=NULL)
virtual ~CreatureAI ()
Public Member Functions inherited from UnitAI
void AttackStartCaster (Unit *victim, float dist)
virtual void DamageDealt (Unit *, uint32 &, DamageEffectType)
virtual void DamageTaken (Unit *, uint32 &)
virtual void DoAction (int32)
void DoAddAuraToAllHostilePlayers (uint32 spellid)
void DoCast (uint32 spellId)
void DoCast (Unit *victim, uint32 spellId, bool triggered=false)
void DoCastAOE (uint32 spellId, bool triggered=false)
void DoCastToAllHostilePlayers (uint32 spellid, bool triggered=false)
void DoCastVictim (uint32 spellId, bool triggered=false)
float DoGetSpellMaxRange (uint32 spellId, bool positive=false)
void DoMeleeAttackIfReady ()
bool DoSpellAttackIfReady (uint32 spell)
virtual uint32 GetData (uint32) const
virtual uint64 GetGUID (int32=0) const
virtual void HealDone (Unit *, uint32 &)
virtual void HealReceived (Unit *, uint32 &)
virtual void InitializeAI ()
virtual bool OnGossipHello (Player *player)
virtual void Reset ()
template<class PREDICATE>
UnitSelectTarget (SelectAggroTarget targetType, uint32 position, PREDICATE const &predicate)
UnitSelectTarget (SelectAggroTarget targetType, uint32 position=0, float dist=0.0f, bool playerOnly=false, int32 aura=0)
template<class PREDICATE>
void SelectTargetList (std::list< Unit * > &targetList, PREDICATE const &predicate, uint32 maxTargets, SelectAggroTarget targetType)
void SelectTargetList (std::list< Unit * > &targetList, uint32 num, SelectAggroTarget targetType, float dist=0.0f, bool playerOnly=false, int32 aura=0)
virtual void SetData (uint32, uint32)
virtual void SetGUID (uint64, int32=0)
virtual void sGossipHello (Player *)
virtual void sGossipSelect (Player *, uint32, uint32)
virtual void sGossipSelectCode (Player *, uint32, uint32, char const *)
virtual bool sOnDummyEffect (Unit *, uint32, SpellEffIndex)
virtual void sOnGameEvent (bool, uint16)
virtual void SpellInterrupted (uint32, uint32)
virtual void sQuestAccept (Player *, Quest const *)
virtual void sQuestComplete (Player *, Quest const *)
virtual void sQuestReward (Player *, Quest const *, uint32)
virtual void sQuestSelect (Player *, Quest const *)
 UnitAI (Unit *unit)
virtual ~UnitAI ()

Static Public Member Functions

static int Permissible (const Creature *)
Static Public Member Functions inherited from UnitAI
static void FillAISpellInfo ()

Protected Attributes

float m_minRange
Protected Attributes inherited from CreatureAI
Creature *const me
Protected Attributes inherited from UnitAI
Unit *const me

Additional Inherited Members

Static Public Attributes inherited from UnitAI
static AISpellInfoTypeAISpellInfo
Protected Member Functions inherited from CreatureAI
bool _EnterEvadeMode ()
CreatureDoSummon (uint32 entry, Position const &pos, uint32 despawnTime=30000, TempSummonType summonType=TempSummonType::TEMPSUMMON_CORPSE_TIMED_DESPAWN)
CreatureDoSummon (uint32 entry, WorldObject *obj, float radius=5.0f, uint32 despawnTime=30000, TempSummonType summonType=TempSummonType::TEMPSUMMON_CORPSE_TIMED_DESPAWN)
CreatureDoSummonFlyer (uint32 entry, WorldObject *obj, float flightZ, float radius=5.0f, uint32 despawnTime=30000, TempSummonType summonType=TempSummonType::TEMPSUMMON_CORPSE_TIMED_DESPAWN)
virtual void MoveInLineOfSight (Unit *)
void SetGazeOn (Unit *target)
bool UpdateVictim ()
bool UpdateVictimWithGaze ()

Detailed Description

Definition at line 67 of file CombatAI.h.

Constructor & Destructor Documentation

◆ TurretAI()

Member Function Documentation

◆ AttackStart()

void TurretAI::AttackStart ( Unit * who)
virtual

Reimplemented from UnitAI.

Definition at line 244 of file CombatAI.cpp.

References CreatureAI::me.

◆ CanAIAttack()

bool TurretAI::CanAIAttack ( const Unit * who) const
virtual
Todo
use one function to replace it

Reimplemented from UnitAI.

Definition at line 235 of file CombatAI.cpp.

References m_minRange, and CreatureAI::me.

◆ Permissible()

int TurretAI::Permissible ( const Creature * )
static

Definition at line 41 of file CombatAI.cpp.

References PERMIT_BASE_NO.

◆ UpdateAI()

void TurretAI::UpdateAI ( uint32 diff)
virtual

== Triggered Actions Requested ==================

Reimplemented from CreatureAI.

Definition at line 250 of file CombatAI.cpp.

References UnitAI::DoSpellAttackIfReady(), CreatureAI::me, and CreatureAI::UpdateVictim().

Member Data Documentation

◆ m_minRange

float TurretAI::m_minRange
protected

Definition at line 77 of file CombatAI.h.

Referenced by CanAIAttack(), and TurretAI().


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