230 else if (
Life50 && pct <= 50)
235 else if (
Life75 && pct <= 75)
309 if (mPortalCount < 6)
311 else if (mPortalCount > 12)
354 for (
uint8 i = 0; i < 3; ++i)
370 TC_LOG_DEBUG(
"scripts",
"npc_time_rift: not casting anylonger, i need to die.");
#define TC_LOG_DEBUG(filterType__,...)
@ TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT
void Talk(uint8 id, WorldObject const *whisperTarget=nullptr)
Creature * DoSummon(uint32 entry, Position const &pos, Milliseconds despawnTime=30s, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN)
void Respawn(bool force=false)
void setDeathState(DeathState s) override
void DespawnOrUnsummon(Milliseconds timeToDespawn=0s, Seconds forceRespawnTime=0s)
virtual ObjectGuid GetGuidData(uint32 type) const override
float GetHeight(PhaseShift const &phaseShift, float x, float y, float z, bool vmap=true, float maxSearchDist=DEFAULT_HEIGHT_SEARCH)
float GetWaterLevel(PhaseShift const &phaseShift, float x, float y)
SpellCastResult DoCast(uint32 spellId)
void RemoveAura(AuraApplicationMap::iterator &i, AuraRemoveMode mode=AURA_REMOVE_BY_DEFAULT)
void InterruptNonMeleeSpells(bool withDelayed, uint32 spellid=0, bool withInstant=true)
bool IsNonMeleeSpellCast(bool withDelayed, bool skipChanneled=false, bool skipAutorepeat=false, bool isAutoshoot=false, bool skipInstant=true) const
bool HasAura(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, ObjectGuid itemCasterGUID=ObjectGuid::Empty, uint32 reqEffMask=0) const
InstanceScript * GetInstanceScript() const
SpellCastResult CastSpell(CastSpellTargetArg const &targets, uint32 spellId, CastSpellExtraArgs const &args={ })
PhaseShift & GetPhaseShift()
Position GetRandomNearPosition(float radius)
bool IsWithinDistInMap(WorldObject const *obj, float dist2compare, bool is3D=true, bool incOwnRadius=true, bool incTargetRadius=true) const
virtual uint32 GetData(uint32) const
virtual void SetData(uint32, uint32)
TC_GAME_API Unit * GetUnit(WorldObject const &, ObjectGuid const &guid)
void AddThreat(Unit *victim, float amount, Unit *who=nullptr)
npc_medivh_bm(Creature *creature)
void JustEngagedWith(Unit *) override
void SpellHit(WorldObject *, SpellInfo const *spellInfo) override
void JustDied(Unit *killer) override
InstanceScript * instance
void MoveInLineOfSight(Unit *who) override
void AttackStart(Unit *) override
== Triggered Actions Requested ==================
uint32 SpellCorrupt_Timer
void UpdateAI(uint32 diff) override
InstanceScript * instance
uint32 TimeRiftWave_Timer
void DoSummonAtRift(uint32 creature_entry)
void JustEngagedWith(Unit *) override
npc_time_rift(Creature *creature)
void UpdateAI(uint32 diff) override
void AddSC_the_black_morass()
@ SPELL_SUMMON_INFINITE_CHRONO_LORD
@ SPELL_TIME_RIFT_3_READY
@ SPELL_TIME_RIFT_1_READY
@ SPELL_SUMMON_RIFT_KEEPER
@ SPELL_SUMMON_INFINITE_CHRONOMANCER
@ SPELL_TIME_RIFT_4_READY
@ SPELL_SUMMON_RIFT_LORD_2
@ SPELL_TIME_RIFT_CHANNEL
@ SPELL_SUMMON_TIME_RIFT_EFFECT_1
@ SPELL_SUMMON_TIME_RIFT_PERIODIC_5
@ SPELL_TIME_RIFT_CHANNEL_TRIGGER
@ SPELL_SUMMON_INFINITE_EXECUTIONER
@ SPELL_TIME_RIFT_PERIODIC
@ SPELL_SUMMON_RIFT_KEEPER_2
@ SPELL_SUMMON_INFINITE_ASSASSIN
@ SPELL_SUMMON_TIME_RIFT_PERIODIC_75
@ SPELL_SUMMON_TIME_RIFT_EFFECT_2
@ SPELL_SUMMON_TIME_RIFT_PERIODIC_90
@ SPELL_SUMMON_INFINITE_VANQUISHER
@ SPELL_SUMMON_INFINITE_TIMEREAVER
@ SPELL_SUMMON_INFINITE_ASSASSIN_2
@ SPELL_TIME_RIFT_2_READY
@ SPELL_SUMMON_INFINITE_EXECUTIONER_2
@ SPELL_SUMMON_TIME_RIFT_EFFECT_4
@ SPELL_THE_BLACK_MORASS_COMPLETE
@ SPELL_CLOSE_TIME_RIFT_EFFECT
@ SPELL_CLOSE_TIME_RIFT_TRIGGER
@ SPELL_SUMMON_INFINITE_WHELP
@ SPELL_SUMMON_TIME_RIFT_PERIODIC_30
@ SPELL_SUMMON_INFINITE_CHRONOMANCER_2
@ SPELL_SUMMON_TIME_RIFT_EFFECT_3
@ SPELL_SUMMON_INFINITE_VANQUISHER_2
@ SPELL_SUMMON_TIME_RIFT_PERIODIC_120
@ SPELL_TIME_RIFT_READY_PRIMER
@ SPELL_SUMMON_TIME_RIFT_PERIODIC_45
@ SPELL_SUMMON_CHRONO_LORD_DEJA
static Wave PortalWaves[]
@ NPC_INFINITE_EXECUTIONER
@ NPC_INFINITE_VANQUISHER
@ NPC_INFINITE_CRONOMANCER
#define RegisterBlackMorassCreatureAI(ai_name)