153 {-7591.151855f, -1204.051880f, 476.800476f, 3.0f},
154 {-7514.598633f, -1150.448853f, 476.796570f, 3.0f}
159 {-7449.763672f, -1387.816040f, 526.783691f, 3.0f},
160 {-7535.456543f, -1279.562500f, 476.798706f, 3.0f}
232 if ( type == 1 && data == 1)
238 if (type == 1 && data == 2)
331 for (
uint8 i=0; i<2; ++i)
334 if (
urand(0, 2) == 0)
348 nefarian->setActive(
true);
349 nefarian->SetFarVisible(
true);
350 nefarian->SetCanFly(
true);
351 nefarian->SetDisableGravity(
true);
353 nefarian->GetMotionMaster()->MovePoint(1,
NefarianLoc[1]);
455 std::list<Creature*> constructList;
457 for (std::list<Creature*>::const_iterator itr = constructList.begin(); itr != constructList.end(); ++itr)
458 (*itr)->DespawnOrUnsummon();
500 switch (target->GetClass())
556 std::list<Creature*> constructList;
558 for (std::list<Creature*>::const_iterator itr = constructList.begin(); itr != constructList.end(); ++itr)
559 if ((*itr) && !(*itr)->IsAlive())
563 (*itr)->SetUninteractible(
false);
uint32 urand(uint32 min, uint32 max)
void CloseGossipMenuFor(Player *player)
@ FACTION_DRAGONFLIGHT_BLACK
@ UNIT_STAND_STATE_SIT_HIGH_CHAIR
#define RegisterBlackwingLairCreatureAI(ai_name)
Position const NefarianLoc[2]
@ GO_PORTCULLIS_TOBOSSROOMS
@ NPC_CHROMATIC_DRAKANOID
@ SPELL_NEFARIANS_BARRIER
@ SPELL_SHADOWBOLT_VOLLEY
@ SPELL_VAELASTRASZZ_SPAWN
@ SPELL_SHADOWFLAME_INITIAL
void AddSC_boss_nefarian()
Position const DrakeSpawnLoc[2]
InstanceScript *const instance
void _JustEngagedWith(Unit *who)
void Talk(uint8 id, WorldObject const *whisperTarget=nullptr)
void SetImmuneToPC(bool apply) override
void SetReactState(ReactStates st)
void DespawnOrUnsummon(Milliseconds timeToDespawn=0s, Seconds forceRespawnTime=0s)
bool UpdateEntry(uint32 entry, CreatureData const *data=nullptr, bool updateLevel=true)
void ScheduleEvent(uint32 eventId, Milliseconds time, uint32 group=0, uint8 phase=0)
void CancelEvent(uint32 eventId)
virtual bool SetBossState(uint32 id, EncounterState state)
void MovePath(uint32 pathId, bool repeatable, Optional< Milliseconds > duration={}, Optional< float > speed={}, MovementWalkRunSpeedSelectionMode speedSelectionMode=MovementWalkRunSpeedSelectionMode::Default, Optional< std::pair< Milliseconds, Milliseconds > > waitTimeRangeAtPathEnd={}, Optional< float > wanderDistanceAtPathEnds={}, Optional< bool > followPathBackwardsFromEndToStart={}, bool generatePath=true)
SpellCastResult DoCastVictim(uint32 spellId, CastSpellExtraArgs const &args={})
Unit * SelectTarget(SelectTargetMethod targetType, uint32 offset=0, float dist=0.0f, bool playerOnly=false, bool withTank=true, int32 aura=0)
SpellCastResult DoCast(uint32 spellId)
void RemoveAura(AuraApplicationMap::iterator &i, AuraRemoveMode mode=AURA_REMOVE_BY_DEFAULT)
void SetStandState(UnitStandStateType state, uint32 animKitID=0)
void SetFaction(uint32 faction) override
MotionMaster * GetMotionMaster()
void SetFacingToObject(WorldObject const *object, bool force=true)
void RemoveNpcFlag(NPCFlags flags)
void SetUninteractible(bool apply)
void SetNpcFlag(NPCFlags flags)
void SetFacingTo(float const ori, bool force=true)
bool HasUnitState(const uint32 f) const
constexpr uint32 GetMapId() const
Player * SelectNearestPlayer(float range) const
GameObject * FindNearestGameObject(uint32 entry, float range, bool spawnedOnly=true) const
void GetCreatureListWithEntryInGrid(Container &creatureContainer, uint32 entry, float maxSearchRange=250.0f) const
TempSummon * SummonCreature(uint32 entry, Position const &pos, TempSummonType despawnType=TEMPSUMMON_MANUAL_DESPAWN, Milliseconds despawnTime=0s, uint32 vehId=0, uint32 spellId=0, ObjectGuid privateObjectOwner=ObjectGuid::Empty)
Creature * FindNearestCreature(uint32 entry, float range, bool alive=true) const
void AttackStart(Unit *) override
== Triggered Actions Requested ==================
bool HealthBelowPct(uint32 pct) const
void ResetThreatList(Unit *who=nullptr)
void MovementInform(uint32 type, uint32 id) override
void UpdateAI(uint32 diff) override
void JustDied(Unit *) override
void JustReachedHome() override
void JustEngagedWith(Unit *) override
void KilledUnit(Unit *victim) override
boss_nefarian(Creature *creature)
void BeginEvent(Player *target)
bool OnGossipSelect(Player *player, uint32 menuId, uint32 gossipListId) override
void JustReachedHome() override
void UpdateAI(uint32 diff) override
void SummonedCreatureDies(Creature *summon, Unit *) override
boss_victor_nefarius(Creature *creature)
void SetData(uint32 type, uint32 data) override
void JustSummoned(Creature *) override