|
Project SkyFire Core
SkyFire 5.4.8 server core API documentation
|
Public Member Functions | |
| void | DoAction (int32 action) OVERRIDE |
| npc_orb_carrierAI (Creature *creature) | |
| void | UpdateAI (uint32) OVERRIDE |
| == Triggered Actions Requested ================== | |
| Public Member Functions inherited from ScriptedAI | |
| void | AttackStart (Unit *) OVERRIDE |
| void | AttackStartNoMove (Unit *target) |
| void | DamageTaken (Unit *, uint32 &) OVERRIDE |
| void | DoCastSpell (Unit *target, SpellInfo const *spellInfo, bool triggered=false) |
| std::list< Creature * > | DoFindFriendlyCC (float range) |
| std::list< Creature * > | DoFindFriendlyMissingBuff (float range, uint32 spellId) |
| float | DoGetThreat (Unit *unit) |
| void | DoModifyThreatPercent (Unit *unit, int32 pct) |
| void | DoPlaySoundToSet (WorldObject *source, uint32 soundId) |
| void | DoResetThreat () |
| Unit * | DoSelectLowestHpFriendly (float range, uint32 minHPDiff=1) |
| Creature * | DoSpawnCreature (uint32 entry, float offsetX, float offsetY, float offsetZ, float angle, TempSummonType type, uint32 despawntime) |
| void | DoStartMovement (Unit *target, float distance=0.0f, float angle=0.0f) |
| void | DoStartNoMovement (Unit *target) |
| void | DoStopAttack () |
| void | DoTeleportAll (float x, float y, float z, float o) |
| void | DoTeleportPlayer (Unit *unit, float x, float y, float z, float o) |
| void | DoTeleportTo (float const pos[4]) |
| void | DoTeleportTo (float x, float y, float z, uint32 time=0) |
| template<class T> | |
| const T & | DUNGEON_MODE (const T &normal5, const T &heroic5) const |
| void | EnterCombat (Unit *) OVERRIDE |
| bool | EnterEvadeIfOutOfCombatArea (uint32 const diff) |
| void | ExecuteEvent (uint32) OVERRIDE |
| DifficultyID | GetDifficulty () const |
| Player * | GetPlayerAtMinimumRange (float minRange) |
| bool | HealthAbovePct (uint32 pct) const |
| bool | HealthBelowPct (uint32 pct) const |
| bool | Is25ManRaid () const |
| bool | IsCombatMovementAllowed () const |
| bool | IsHeroic () const |
| void | JustDied (Unit *) OVERRIDE |
| void | JustSummoned (Creature *) OVERRIDE |
| void | KilledUnit (Unit *) OVERRIDE |
| void | MovementInform (uint32, uint32) OVERRIDE |
| void | OnPossess (bool) |
| template<class T> | |
| const T & | RAID_MODE (const T &normal10, const T &normal25) const |
| template<class T> | |
| const T & | RAID_MODE (const T &normal10, const T &normal25, const T &flex, const T &lfr) const |
| template<class T> | |
| const T & | RAID_MODE (const T &normal10, const T &normal25, const T &heroic10, const T &heroic25, const T &flex, const T &lfr) const |
| void | Reset () OVERRIDE |
| ScriptedAI (Creature *creature) | |
| SpellInfo const * | SelectSpell (Unit *target, uint32 school, uint32 mechanic, SelectTargetType targets, uint32 powerCostMin, uint32 powerCostMax, float rangeMin, float rangeMax, SelectEffect effect) |
| void | SetCombatMovement (bool allowMovement) |
| void | SetEquipmentSlots (bool loadDefault, int32 mainHand=EQUIP_NO_CHANGE, int32 offHand=EQUIP_NO_CHANGE, int32 ranged=EQUIP_NO_CHANGE) |
| void | SpellHit (Unit *, SpellInfo const *) OVERRIDE |
| void | SpellHitTarget (Unit *, SpellInfo const *) OVERRIDE |
| void | SummonedCreatureDespawn (Creature *) OVERRIDE |
| void | UpdateAI (uint32 diff) OVERRIDE |
| == Triggered Actions Requested ================== | |
| virtual | ~ScriptedAI () |
| 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 | EnterEvadeMode () |
| virtual bool | IsEscorted () |
| virtual void | IsSummonedBy (Unit *) |
| virtual void | JustReachedHome () |
| virtual void | JustRespawned () |
| void | MoveInLineOfSight_Safe (Unit *who) |
| == Reactions At ================================= | |
| 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 | 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 bool | CanAIAttack (Unit const *) const |
| virtual void | DamageDealt (Unit *, uint32 &, DamageEffectType) |
| 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) |
| template<class PREDICATE> | |
| Unit * | SelectTarget (SelectAggroTarget targetType, uint32 position, PREDICATE const &predicate) |
| Unit * | SelectTarget (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 () |
Private Member Functions | |
| void | TriggerCutter (Unit *caster, Unit *target) |
Private Attributes | |
| InstanceScript * | instance |
Additional Inherited Members | |
| Static Public Member Functions inherited from UnitAI | |
| static void | FillAISpellInfo () |
| Public Attributes inherited from ScriptedAI | |
| bool | IsFleeing |
| Creature * | me |
| Static Public Attributes inherited from UnitAI | |
| static AISpellInfoType * | AISpellInfo |
| Protected Member Functions inherited from CreatureAI | |
| bool | _EnterEvadeMode () |
| Creature * | DoSummon (uint32 entry, Position const &pos, uint32 despawnTime=30000, TempSummonType summonType=TempSummonType::TEMPSUMMON_CORPSE_TIMED_DESPAWN) |
| Creature * | DoSummon (uint32 entry, WorldObject *obj, float radius=5.0f, uint32 despawnTime=30000, TempSummonType summonType=TempSummonType::TEMPSUMMON_CORPSE_TIMED_DESPAWN) |
| Creature * | DoSummonFlyer (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 () |
| Protected Attributes inherited from CreatureAI | |
| Creature *const | me |
| Protected Attributes inherited from UnitAI | |
| Unit *const | me |
Definition at line 890 of file boss_halion.cpp.
|
inline |
Definition at line 892 of file boss_halion.cpp.
References ASSERT, Unit::GetVehicleKit(), instance, and ScriptedAI::ScriptedAI().
|
inlinevirtual |
Reimplemented from UnitAI.
Definition at line 914 of file boss_halion.cpp.
References ACTION_SHOOT, Creature::AI(), EMOTE_WARN_LASER, Vehicle::GetPassenger(), Object::GetTypeId(), ScriptedAI::IsHeroic(), ScriptedAI::me, OVERRIDE, SEAT_EAST, SEAT_NORTH, SEAT_SOUTH, SEAT_WEST, CreatureAI::Talk(), Object::ToCreature(), TriggerCutter(), and TYPEID_UNIT.
|
inlineprivate |
Definition at line 940 of file boss_halion.cpp.
References Unit::CastSpell(), SPELL_TWILIGHT_CUTTER, and SPELL_TWILIGHT_PULSE_PERIODIC.
Referenced by DoAction().
|
inlinevirtual |
== Triggered Actions Requested ==================
According to sniffs this spell is cast every 1 or 2 seconds. However, refreshing it looks bad, so just cast the spell if we are not channeling it.
Workaround: This is here because even though the above spell has SPELL_ATTR1_CHANNEL_TRACK_TARGET, we are having two creatures involded here. This attribute is handled clientside, meaning the client sends orientation update itself. Here, no packet is sent, and the creature does not rotate. By forcing the carrier to always be facing the rotation focus, we ensure everything works as it should.
Reimplemented from CreatureAI.
Definition at line 898 of file boss_halion.cpp.
References DATA_ORB_ROTATION_FOCUS, ObjectAccessor::GetCreature(), instance, ScriptedAI::me, OVERRIDE, SPELL_TRACK_ROTATION, and UNIT_STATE_CASTING.
|
private |
Definition at line 938 of file boss_halion.cpp.
Referenced by npc_orb_carrierAI(), and UpdateAI().