mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-18 11:25:42 +00:00
feat(Core/Unit): New helpers for UnitFlag and UnitFlag2 (#11227)
This commit is contained in:
@@ -158,7 +158,7 @@ public:
|
||||
me->getThreatMgr().clearReferences();
|
||||
me->SetRegeneratingHealth(false);
|
||||
_EnterEvadeMode();
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( pInstance )
|
||||
pInstance->SetData(BOSS_ARGENT_CHALLENGE, DONE);
|
||||
}
|
||||
@@ -305,7 +305,7 @@ public:
|
||||
me->getThreatMgr().clearReferences();
|
||||
me->SetRegeneratingHealth(false);
|
||||
_EnterEvadeMode();
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( pInstance )
|
||||
{
|
||||
pInstance->SetData(BOSS_ARGENT_CHALLENGE, DONE);
|
||||
@@ -439,7 +439,7 @@ public:
|
||||
|
||||
break;
|
||||
case EVENT_MEMORY_START_ATTACK:
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( Unit* target = me->SelectNearestTarget(200.0f) )
|
||||
{
|
||||
AttackStart(target);
|
||||
|
||||
@@ -120,7 +120,7 @@ public:
|
||||
summons.DespawnAll();
|
||||
Phase = 1;
|
||||
me->SetDisplayId(me->GetNativeDisplayId());
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
if( pInstance )
|
||||
pInstance->SetData(BOSS_BLACK_KNIGHT, NOT_STARTED);
|
||||
@@ -136,7 +136,7 @@ public:
|
||||
|
||||
void DamageTaken(Unit*, uint32& damage, DamageEffectType, SpellSchoolMask) override
|
||||
{
|
||||
if (me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE))
|
||||
if (me->HasUnitFlag(UNIT_FLAG_NON_ATTACKABLE))
|
||||
{
|
||||
damage = 0;
|
||||
return;
|
||||
@@ -147,15 +147,15 @@ public:
|
||||
damage = 0;
|
||||
me->SetHealth(me->GetMaxHealth());
|
||||
events.Reset();
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->RemoveAllAuras();
|
||||
me->SetControlled(true, UNIT_STATE_STUNNED);
|
||||
me->CastSpell(me, SPELL_BK_GHOUL_EXPLODE, true);
|
||||
summons.clear();
|
||||
|
||||
me->CastSpell(me, SPELL_BK_FEIGN_DEATH, true);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_PREVENT_EMOTES_FROM_CHAT_TEXT);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS_2, UNIT_FLAG2_FEIGN_DEATH);
|
||||
me->SetUnitFlag(UNIT_FLAG_PREVENT_EMOTES_FROM_CHAT_TEXT);
|
||||
me->SetUnitFlag2(UNIT_FLAG2_FEIGN_DEATH);
|
||||
me->SetFlag(UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_DEAD);
|
||||
me->AddUnitState(UNIT_STATE_DIED);
|
||||
}
|
||||
@@ -193,11 +193,11 @@ public:
|
||||
{
|
||||
case SPELL_BLACK_KNIGHT_RES:
|
||||
me->SetHealth(me->GetMaxHealth());
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetControlled(false, UNIT_STATE_STUNNED);
|
||||
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_PREVENT_EMOTES_FROM_CHAT_TEXT);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS_2, UNIT_FLAG2_FEIGN_DEATH);
|
||||
me->RemoveUnitFlag(UNIT_FLAG_PREVENT_EMOTES_FROM_CHAT_TEXT);
|
||||
me->RemoveUnitFlag2(UNIT_FLAG2_FEIGN_DEATH);
|
||||
me->RemoveFlag(UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_DEAD);
|
||||
me->ClearUnitState(UNIT_STATE_DIED);
|
||||
|
||||
@@ -414,7 +414,7 @@ public:
|
||||
{
|
||||
if (spell->Id == SPELL_BK_GHOUL_EXPLODE)
|
||||
{
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_STUNNED);
|
||||
me->RemoveUnitFlag(UNIT_FLAG_STUNNED);
|
||||
me->CastSpell(me, SPELL_EXPLODE, false);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -169,13 +169,13 @@ public:
|
||||
|
||||
if( apply )
|
||||
{
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetSpeed(MOVE_RUN, 2.0f, false);
|
||||
me->CastSpell(me, SPELL_TRAMPLE_AURA, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->StopMoving();
|
||||
me->RemoveAura(SPELL_TRAMPLE_AURA);
|
||||
}
|
||||
@@ -361,7 +361,7 @@ public:
|
||||
BossOrder = 0;
|
||||
NewMountGUID.Clear();
|
||||
me->CastSpell(me, SPELL_BOSS_DEFEND_PERIODIC, true);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_PACIFIED);
|
||||
me->SetUnitFlag(UNIT_FLAG_PACIFIED);
|
||||
|
||||
events.Reset();
|
||||
events.ScheduleEvent(EVENT_MOUNT_CHARGE, urand(2500, 4000));
|
||||
@@ -401,7 +401,7 @@ public:
|
||||
{
|
||||
DoAction(1);
|
||||
DoAction(2);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetUInt32Value(UNIT_FIELD_MOUNTDISPLAYID, 0);
|
||||
me->SetReactState(REACT_AGGRESSIVE);
|
||||
}
|
||||
@@ -487,9 +487,9 @@ public:
|
||||
NewMountGUID.Clear();
|
||||
me->SetHealth(me->GetMaxHealth());
|
||||
me->SetRegeneratingHealth(true);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_PACIFIED);
|
||||
me->RemoveUnitFlag(UNIT_FLAG_PACIFIED);
|
||||
me->SetSpeed(MOVE_RUN, 1.0f, false);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
me->RemoveAllAuras();
|
||||
AddCreatureAddonAuras();
|
||||
@@ -557,7 +557,7 @@ public:
|
||||
me->StopMoving();
|
||||
me->SetUInt32Value(UNIT_FIELD_MOUNTDISPLAYID, 0);
|
||||
me->SetRegeneratingHealth(false);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
if( pInstance )
|
||||
{
|
||||
@@ -584,7 +584,7 @@ public:
|
||||
me->CombatStop(true);
|
||||
me->GetMotionMaster()->Clear();
|
||||
me->SetRegeneratingHealth(false);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( pInstance )
|
||||
pInstance->SetData(DATA_GRAND_CHAMPION_DIED, BossOrder);
|
||||
}
|
||||
@@ -627,7 +627,7 @@ public:
|
||||
events.ScheduleEvent(EVENT_SHIELD_BREAKER, urand(5000, 8000));
|
||||
events.ScheduleEvent(EVENT_THRUST, urand(3000, 5000));
|
||||
me->SetReactState(REACT_AGGRESSIVE);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( Unit* target = me->SelectNearestTarget(200.0f) )
|
||||
AttackStart(target);
|
||||
DoZoneInCombat();
|
||||
@@ -720,7 +720,7 @@ public:
|
||||
{
|
||||
me->AddUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
NewMountGUID = mount->GetGUID();
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->GetMotionMaster()->MovePoint(7, *mount);
|
||||
events.RepeatEvent(200);
|
||||
break;
|
||||
|
||||
@@ -836,7 +836,7 @@ public:
|
||||
if( Creature* c = instance->GetCreature(NPC_GrandChampionMinionsGUID[1][i]) )
|
||||
{
|
||||
c->SetReactState(REACT_AGGRESSIVE);
|
||||
c->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( Unit* target = c->SelectNearestTarget(200.0f) )
|
||||
c->AI()->AttackStart(target);
|
||||
c->AI()->DoZoneInCombat();
|
||||
@@ -862,7 +862,7 @@ public:
|
||||
if( Creature* c = instance->GetCreature(NPC_GrandChampionMinionsGUID[0][i]) )
|
||||
{
|
||||
c->SetReactState(REACT_AGGRESSIVE);
|
||||
c->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( Unit* target = c->SelectNearestTarget(200.0f) )
|
||||
c->AI()->AttackStart(target);
|
||||
c->AI()->DoZoneInCombat();
|
||||
@@ -887,7 +887,7 @@ public:
|
||||
if( Creature* c = instance->GetCreature(NPC_GrandChampionMinionsGUID[2][i]) )
|
||||
{
|
||||
c->SetReactState(REACT_AGGRESSIVE);
|
||||
c->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( Unit* target = c->SelectNearestTarget(200.0f) )
|
||||
c->AI()->AttackStart(target);
|
||||
c->AI()->DoZoneInCombat();
|
||||
@@ -912,7 +912,7 @@ public:
|
||||
if( Creature* c = instance->GetCreature(NPC_GrandChampionGUID[i]) )
|
||||
{
|
||||
c->SetReactState(REACT_AGGRESSIVE);
|
||||
c->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( Unit* target = c->SelectNearestTarget(200.0f) )
|
||||
c->AI()->AttackStart(target);
|
||||
c->AI()->DoZoneInCombat();
|
||||
@@ -949,7 +949,7 @@ public:
|
||||
if( Creature* c = instance->GetCreature(NPC_GrandChampionGUID[i]) )
|
||||
{
|
||||
c->SetReactState(REACT_AGGRESSIVE);
|
||||
c->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( Unit* target = c->SelectNearestTarget(200.0f) )
|
||||
c->AI()->AttackStart(target);
|
||||
c->AI()->DoZoneInCombat();
|
||||
@@ -1053,7 +1053,7 @@ public:
|
||||
if( Creature* c = instance->GetCreature(NPC_ArgentSoldierGUID[i][j]) )
|
||||
{
|
||||
c->SetReactState(REACT_AGGRESSIVE);
|
||||
c->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
//c->AI()->DoZoneInCombat();
|
||||
}
|
||||
if( Creature* tirion = instance->GetCreature(NPC_TirionGUID) )
|
||||
@@ -1074,7 +1074,7 @@ public:
|
||||
if( Creature* boss = instance->GetCreature(NPC_ArgentChampionGUID) )
|
||||
{
|
||||
boss->SetReactState(REACT_AGGRESSIVE);
|
||||
boss->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
boss->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( Unit* target = boss->SelectNearestTarget(200.0f) )
|
||||
boss->AI()->AttackStart(target);
|
||||
boss->AI()->DoZoneInCombat();
|
||||
@@ -1161,7 +1161,7 @@ public:
|
||||
bk->SetHomePosition(*bk);
|
||||
bk->SetFacingToObject(announcer);
|
||||
announcer->SetFacingToObject(bk);
|
||||
announcer->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
announcer->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
bk->AddAura(68306, announcer); // spell has attribute player only
|
||||
if( Creature* tirion = instance->GetCreature(NPC_TirionGUID) )
|
||||
tirion->AI()->Talk(TEXT_BK_MEANING);
|
||||
@@ -1207,7 +1207,7 @@ public:
|
||||
if( Creature* bk = instance->GetCreature(NPC_BlackKnightGUID) )
|
||||
{
|
||||
bk->SetReactState(REACT_AGGRESSIVE);
|
||||
bk->SetUInt32Value(UNIT_FIELD_FLAGS, 0);
|
||||
bk->ReplaceAllUnitFlags(UNIT_FLAG_NONE);
|
||||
if( Unit* target = bk->SelectNearestTarget(200.0f) )
|
||||
bk->AI()->AttackStart(target);
|
||||
bk->AI()->DoZoneInCombat();
|
||||
|
||||
@@ -109,7 +109,7 @@ public:
|
||||
return;
|
||||
if( pInstance->GetData(DATA_TEAMID_IN_INSTANCE) == TEAM_ALLIANCE )
|
||||
me->UpdateEntry(NPC_ARELAS);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); // removed during black knight scene
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE); // removed during black knight scene
|
||||
}
|
||||
|
||||
void DamageTaken(Unit*, uint32& damage, DamageEffectType, SpellSchoolMask) override
|
||||
|
||||
@@ -176,7 +176,7 @@ public:
|
||||
void Reset() override
|
||||
{
|
||||
me->SetStandState(UNIT_STAND_STATE_SUBMERGED);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
summons.DespawnAll();
|
||||
for( uint8 i = 0; i < 10; ++i )
|
||||
{
|
||||
@@ -185,7 +185,7 @@ public:
|
||||
if( Creature* c = me->SummonCreature(NPC_SCARAB, AnubLocs[0].GetPositionX() + cos(angle) * dist, AnubLocs[0].GetPositionY() + std::sin(angle) * dist, AnubLocs[0].GetPositionZ(), 0.0f, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 5000) )
|
||||
{
|
||||
c->SetFaction(FACTION_PREY);
|
||||
c->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->GetMotionMaster()->MoveRandom(15.0f);
|
||||
}
|
||||
}
|
||||
@@ -251,7 +251,7 @@ public:
|
||||
if( me->HasUnitState(UNIT_STATE_CASTING) )
|
||||
return;
|
||||
|
||||
if( !bPhase3 && HealthBelowPct(30) && !me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE) && !me->HasAura(SPELL_SUBMERGE) && !me->HasAura(SPELL_EMERGE) )
|
||||
if( !bPhase3 && HealthBelowPct(30) && !me->HasUnitFlag(UNIT_FLAG_NOT_SELECTABLE) && !me->HasAura(SPELL_SUBMERGE) && !me->HasAura(SPELL_EMERGE) )
|
||||
{
|
||||
bPhase3 = true;
|
||||
events.CancelEvent(EVENT_SUBMERGE);
|
||||
@@ -313,7 +313,7 @@ public:
|
||||
break;
|
||||
case EVENT_SUBMERGE:
|
||||
{
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
|
||||
bool berserk = me->HasAura(SPELL_BERSERK);
|
||||
me->RemoveAllAuras();
|
||||
if (berserk)
|
||||
@@ -348,7 +348,7 @@ public:
|
||||
case EVENT_EMERGE_2:
|
||||
{
|
||||
Talk(SAY_EMERGE);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->RemoveUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->setAttackTimer(BASE_ATTACK, 3000);
|
||||
me->RemoveAura(SPELL_SUBMERGE);
|
||||
me->CastSpell(me, SPELL_EMERGE, false);
|
||||
@@ -393,7 +393,7 @@ public:
|
||||
{
|
||||
events.Reset();
|
||||
summons.DespawnAll();
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( pInstance )
|
||||
pInstance->SetData(TYPE_FAILED, 1);
|
||||
}
|
||||
@@ -408,7 +408,7 @@ public:
|
||||
|
||||
if (!bIntro)
|
||||
{
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( !me->IsInCombat() )
|
||||
Talk(SAY_INTRO);
|
||||
bIntro = true;
|
||||
@@ -507,7 +507,7 @@ public:
|
||||
|
||||
bool CanAIAttack(Unit const* target) const override
|
||||
{
|
||||
return target->GetEntry() != NPC_FROST_SPHERE && !me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
return target->GetEntry() != NPC_FROST_SPHERE && !me->HasUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
}
|
||||
};
|
||||
};
|
||||
@@ -559,9 +559,9 @@ public:
|
||||
if( me->GetHealth() <= damage )
|
||||
{
|
||||
damage = 0;
|
||||
if( !me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE) )
|
||||
if( !me->HasUnitFlag(UNIT_FLAG_NOT_SELECTABLE) )
|
||||
{
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->GetMotionMaster()->MoveIdle();
|
||||
me->GetMotionMaster()->MoveCharge(me->GetPositionX(), me->GetPositionY(), 143.0f, 20.0f);
|
||||
permafrostTimer = 1500;
|
||||
@@ -682,7 +682,7 @@ public:
|
||||
if( HealthBelowPct(80) && !me->HasAura(RAID_MODE(66193, 67855, 67856, 67857)) ) // not having permafrost - allow submerge
|
||||
{
|
||||
me->GetMotionMaster()->MoveIdle();
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->RemoveAllAuras();
|
||||
me->CastSpell(me, SPELL_EXPOSE_WEAKNESS, true);
|
||||
me->CastSpell(me, SPELL_SPIDER_FRENZY, true);
|
||||
@@ -697,7 +697,7 @@ public:
|
||||
case EVENT_EMERGE:
|
||||
me->SetHealth(me->GetMaxHealth());
|
||||
me->GetMotionMaster()->MoveChase(me->GetVictim());
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->RemoveUnitFlag(UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->CastSpell(me, SPELL_EMERGE, false);
|
||||
me->RemoveAura(SPELL_SUBMERGE);
|
||||
|
||||
|
||||
@@ -292,7 +292,7 @@ public:
|
||||
|
||||
bool myCanCast()
|
||||
{
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_SILENCED) || IsCCed());
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasUnitFlag(UNIT_FLAG_SILENCED) || IsCCed());
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
@@ -421,7 +421,7 @@ public:
|
||||
|
||||
bool myCanCast()
|
||||
{
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_SILENCED) || IsCCed());
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasUnitFlag(UNIT_FLAG_SILENCED) || IsCCed());
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
@@ -544,7 +544,7 @@ public:
|
||||
|
||||
bool myCanCast()
|
||||
{
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_SILENCED) || IsCCed());
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasUnitFlag(UNIT_FLAG_SILENCED) || IsCCed());
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
@@ -677,7 +677,7 @@ public:
|
||||
|
||||
bool myCanCast()
|
||||
{
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_SILENCED) || IsCCed());
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasUnitFlag(UNIT_FLAG_SILENCED) || IsCCed());
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
@@ -800,7 +800,7 @@ public:
|
||||
|
||||
bool myCanCast()
|
||||
{
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_SILENCED) || IsCCed());
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasUnitFlag(UNIT_FLAG_SILENCED) || IsCCed());
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
@@ -954,7 +954,7 @@ public:
|
||||
|
||||
bool myCanCast()
|
||||
{
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_SILENCED) || IsCCed());
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasUnitFlag(UNIT_FLAG_SILENCED) || IsCCed());
|
||||
}
|
||||
|
||||
void JustSummoned(Creature* c) override
|
||||
@@ -1097,7 +1097,7 @@ public:
|
||||
|
||||
bool myCanCast()
|
||||
{
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_SILENCED) || IsCCed());
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasUnitFlag(UNIT_FLAG_SILENCED) || IsCCed());
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
@@ -1245,7 +1245,7 @@ public:
|
||||
|
||||
bool myCanCast()
|
||||
{
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasFlag(UNIT_FIELD_FLAGS_2, UNIT_FLAG2_DISARM_RANGED) || IsCCed());
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasUnitFlag2(UNIT_FLAG2_DISARM_RANGED) || IsCCed());
|
||||
}
|
||||
|
||||
void JustSummoned(Creature* c) override
|
||||
@@ -1398,7 +1398,7 @@ public:
|
||||
|
||||
bool myCanCast()
|
||||
{
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_SILENCED) || IsCCed());
|
||||
return !(me->HasUnitState(UNIT_STATE_CASTING) || me->HasUnitFlag(UNIT_FLAG_SILENCED) || IsCCed());
|
||||
}
|
||||
|
||||
void JustSummoned(Creature* c) override
|
||||
@@ -1562,7 +1562,7 @@ public:
|
||||
case 0:
|
||||
break;
|
||||
case EVENT_SPELL_BLADESTORM:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISARMED) )
|
||||
if( me->HasUnitFlag(UNIT_FLAG_DISARMED) )
|
||||
{
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
@@ -1587,7 +1587,7 @@ public:
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
case EVENT_SPELL_MORTAL_STRIKE:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISARMED) )
|
||||
if( me->HasUnitFlag(UNIT_FLAG_DISARMED) )
|
||||
{
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
@@ -1618,7 +1618,7 @@ public:
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
case EVENT_SPELL_OVERPOWER:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISARMED) )
|
||||
if( me->HasUnitFlag(UNIT_FLAG_DISARMED) )
|
||||
{
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
@@ -1633,7 +1633,7 @@ public:
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
case EVENT_SPELL_SUNDER_ARMOR:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISARMED) )
|
||||
if( me->HasUnitFlag(UNIT_FLAG_DISARMED) )
|
||||
{
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
@@ -1648,7 +1648,7 @@ public:
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
case EVENT_SPELL_SHATTERING_THROW:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISARMED) )
|
||||
if( me->HasUnitFlag(UNIT_FLAG_DISARMED) )
|
||||
{
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
@@ -1663,7 +1663,7 @@ public:
|
||||
events.RepeatEvent(6000);
|
||||
break;
|
||||
case EVENT_SPELL_RETALIATION:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISARMED) )
|
||||
if( me->HasUnitFlag(UNIT_FLAG_DISARMED) )
|
||||
{
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
@@ -1789,7 +1789,7 @@ public:
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
case EVENT_SPELL_FROST_STRIKE:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISARMED) )
|
||||
if( me->HasUnitFlag(UNIT_FLAG_DISARMED) )
|
||||
{
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
@@ -1911,7 +1911,7 @@ public:
|
||||
case 0:
|
||||
break;
|
||||
case EVENT_SPELL_FAN_OF_KNIVES:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISARMED) )
|
||||
if( me->HasUnitFlag(UNIT_FLAG_DISARMED) )
|
||||
{
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
@@ -1946,7 +1946,7 @@ public:
|
||||
events.RepeatEvent(6000);
|
||||
break;
|
||||
case EVENT_SPELL_BLADE_FLURRY:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISARMED) )
|
||||
if( me->HasUnitFlag(UNIT_FLAG_DISARMED) )
|
||||
events.RepeatEvent(5000);
|
||||
else
|
||||
{
|
||||
@@ -1966,7 +1966,7 @@ public:
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
case EVENT_SPELL_HEMORRHAGE:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISARMED) )
|
||||
if( me->HasUnitFlag(UNIT_FLAG_DISARMED) )
|
||||
{
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
@@ -1981,7 +1981,7 @@ public:
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
case EVENT_SPELL_EVISCERATE:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISARMED) )
|
||||
if( me->HasUnitFlag(UNIT_FLAG_DISARMED) )
|
||||
{
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
@@ -2069,7 +2069,7 @@ public:
|
||||
case 0:
|
||||
break;
|
||||
case EVENT_SPELL_EARTH_SHOCK_ENH:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_SILENCED) )
|
||||
if( me->HasUnitFlag(UNIT_FLAG_SILENCED) )
|
||||
{
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
@@ -2084,7 +2084,7 @@ public:
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
case EVENT_SPELL_LAVA_LASH:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS_2, UNIT_FLAG2_DISARM_OFFHAND) )
|
||||
if( me->HasUnitFlag2(UNIT_FLAG2_DISARM_OFFHAND) )
|
||||
{
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
@@ -2099,7 +2099,7 @@ public:
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
case EVENT_SPELL_STORMSTRIKE:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISARMED) && me->HasFlag(UNIT_FIELD_FLAGS_2, UNIT_FLAG2_DISARM_OFFHAND) )
|
||||
if( me->HasUnitFlag(UNIT_FLAG_DISARMED) && me->HasUnitFlag2(UNIT_FLAG2_DISARM_OFFHAND) )
|
||||
{
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
@@ -2212,7 +2212,7 @@ public:
|
||||
EventMapGCD(events, 1500);
|
||||
break;
|
||||
case EVENT_SPELL_CRUSADER_STRIKE:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISARMED) )
|
||||
if( me->HasUnitFlag(UNIT_FLAG_DISARMED) )
|
||||
{
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
@@ -2237,7 +2237,7 @@ public:
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
case EVENT_SPELL_DIVINE_STORM:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISARMED) )
|
||||
if( me->HasUnitFlag(UNIT_FLAG_DISARMED) )
|
||||
{
|
||||
events.RepeatEvent(5000);
|
||||
break;
|
||||
@@ -2333,7 +2333,7 @@ public:
|
||||
|
||||
bool myCanCast()
|
||||
{
|
||||
return !(me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_SILENCED) || IsCCed());
|
||||
return !(me->HasUnitFlag(UNIT_FLAG_SILENCED) || IsCCed());
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
|
||||
@@ -283,7 +283,7 @@ public:
|
||||
{
|
||||
events.Reset();
|
||||
summons.DespawnAll();
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( pInstance )
|
||||
pInstance->SetData(TYPE_FAILED, 1);
|
||||
}
|
||||
|
||||
@@ -293,7 +293,7 @@ public:
|
||||
case 0:
|
||||
break;
|
||||
case EVENT_SPELL_IMPALE:
|
||||
if( !me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISARMED) )
|
||||
if( !me->HasUnitFlag(UNIT_FLAG_DISARMED) )
|
||||
{
|
||||
if( Unit* victim = me->GetVictim() )
|
||||
me->CastSpell(victim, SPELL_IMPALE, false);
|
||||
@@ -406,7 +406,7 @@ public:
|
||||
{
|
||||
events.Reset();
|
||||
summons.DespawnAll();
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( pInstance )
|
||||
pInstance->SetData(TYPE_FAILED, 1);
|
||||
}
|
||||
@@ -491,11 +491,11 @@ struct boss_jormungarAI : public ScriptedAI
|
||||
switch( param )
|
||||
{
|
||||
case -1:
|
||||
if( !me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE) )
|
||||
if( !me->HasUnitFlag(UNIT_FLAG_NON_ATTACKABLE) )
|
||||
events.RescheduleEvent(EVENT_SUBMERGE, 1500);
|
||||
break;
|
||||
case -2:
|
||||
if( me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE) )
|
||||
if( me->HasUnitFlag(UNIT_FLAG_NON_ATTACKABLE) )
|
||||
bIsStationary = true; // it will come out mobile soon
|
||||
else if( me->GetDisplayId() == _MODEL_STATIONARY )
|
||||
events.RescheduleEvent(EVENT_SUBMERGE, 1000);
|
||||
@@ -568,7 +568,7 @@ struct boss_jormungarAI : public ScriptedAI
|
||||
case EVENT_SUBMERGE:
|
||||
{
|
||||
bIsStationary = (me->GetDisplayId() == _MODEL_STATIONARY);
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->CastSpell(me, SPELL_SUBMERGE_0, false);
|
||||
Talk(EMOTE_SUBMERGE);
|
||||
|
||||
@@ -588,7 +588,7 @@ struct boss_jormungarAI : public ScriptedAI
|
||||
{
|
||||
c->SetSpeed(MOVE_RUN, 2.5f);
|
||||
c->CastSpell(c, SPELL_CHURNING_GROUND, true);
|
||||
c->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE | UNIT_FLAG_PACIFIED);
|
||||
c->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE | UNIT_FLAG_PACIFIED);
|
||||
c->GetMotionMaster()->MovePoint(0, Locs[LOC_CENTER].GetPositionX() + cos(angle)*dist, Locs[LOC_CENTER].GetPositionY() + std::sin(angle)*dist, me->GetPositionZ());
|
||||
}
|
||||
me->UpdatePosition(Locs[LOC_CENTER].GetPositionX() + cos(angle)*dist, Locs[LOC_CENTER].GetPositionY() + std::sin(angle)*dist, me->GetPositionZ(), me->GetOrientation(), true);
|
||||
@@ -618,7 +618,7 @@ struct boss_jormungarAI : public ScriptedAI
|
||||
me->RemoveAurasDueToSpell(SPELL_SUBMERGE_0);
|
||||
me->CastSpell(me, SPELL_EMERGE_0, false);
|
||||
Talk(EMOTE_EMERGE);
|
||||
me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE);
|
||||
me->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE);
|
||||
ScheduleEvents();
|
||||
}
|
||||
break;
|
||||
@@ -647,7 +647,7 @@ struct boss_jormungarAI : public ScriptedAI
|
||||
break;
|
||||
}
|
||||
|
||||
if( !me->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE) )
|
||||
if( !me->HasUnitFlag(UNIT_FLAG_NON_ATTACKABLE) )
|
||||
{
|
||||
if( me->GetDisplayId() == _MODEL_STATIONARY )
|
||||
DoSpellAttackIfReady(_SPELL_SPIT);
|
||||
@@ -670,7 +670,7 @@ struct boss_jormungarAI : public ScriptedAI
|
||||
void EnterEvadeMode() override
|
||||
{
|
||||
events.Reset();
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( pInstance )
|
||||
pInstance->SetData(TYPE_FAILED, 1);
|
||||
}
|
||||
@@ -1003,7 +1003,7 @@ public:
|
||||
void EnterEvadeMode() override
|
||||
{
|
||||
events.Reset();
|
||||
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
me->SetUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
if( pInstance )
|
||||
pInstance->SetData(TYPE_FAILED, 1);
|
||||
}
|
||||
|
||||
@@ -318,7 +318,7 @@ public:
|
||||
if (Creature* trigger = instance->SummonCreature(WORLD_TRIGGER, Locs[LOC_CENTER], nullptr, 25000))
|
||||
{
|
||||
trigger->SetDisplayId(11686);
|
||||
trigger->SetUInt32Value(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
trigger->ReplaceAllUnitFlags(UNIT_FLAG_NOT_SELECTABLE);
|
||||
trigger->SetFaction(FACTION_MONSTER);
|
||||
trigger->SetInCombatWithZone();
|
||||
}
|
||||
@@ -340,7 +340,7 @@ public:
|
||||
if (Creature* trigger = instance->SummonCreature(WORLD_TRIGGER, Locs[LOC_CENTER], nullptr, 25000))
|
||||
{
|
||||
trigger->SetDisplayId(11686);
|
||||
trigger->SetUInt32Value(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
trigger->ReplaceAllUnitFlags(UNIT_FLAG_NOT_SELECTABLE);
|
||||
trigger->SetFaction(FACTION_MONSTER);
|
||||
trigger->SetInCombatWithZone();
|
||||
}
|
||||
@@ -656,7 +656,7 @@ public:
|
||||
if( Creature* c = instance->GetCreature(NPC_GormokGUID) )
|
||||
{
|
||||
c->SetReactState(REACT_AGGRESSIVE);
|
||||
c->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
if( Unit* target = c->SelectNearestTarget(200.0f) )
|
||||
{
|
||||
@@ -704,7 +704,7 @@ public:
|
||||
if( Creature* c = instance->GetCreature(NPC_DreadscaleGUID) )
|
||||
{
|
||||
c->SetReactState(REACT_AGGRESSIVE);
|
||||
c->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
if( Unit* target = c->SelectNearestTarget(200.0f) )
|
||||
{
|
||||
@@ -715,7 +715,7 @@ public:
|
||||
if( Creature* c = instance->GetCreature(NPC_AcidmawGUID) )
|
||||
{
|
||||
c->SetReactState(REACT_AGGRESSIVE);
|
||||
c->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
if( Unit* target = c->SelectNearestTarget(200.0f) )
|
||||
{
|
||||
@@ -752,7 +752,7 @@ public:
|
||||
if( Creature* c = instance->GetCreature(NPC_IcehowlGUID) )
|
||||
{
|
||||
c->SetReactState(REACT_AGGRESSIVE);
|
||||
c->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
if( Unit* target = c->SelectNearestTarget(200.0f) )
|
||||
{
|
||||
@@ -907,7 +907,7 @@ public:
|
||||
if( Creature* c = instance->GetCreature(NPC_JaraxxusGUID) )
|
||||
{
|
||||
c->SetReactState(REACT_AGGRESSIVE);
|
||||
c->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
if( Unit* target = c->SelectNearestTarget(200.0f) )
|
||||
{
|
||||
@@ -1104,7 +1104,7 @@ public:
|
||||
if (Creature* c = instance->GetCreature(guid))
|
||||
{
|
||||
c->SetReactState(REACT_AGGRESSIVE);
|
||||
c->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
//if( Unit* target = c->SelectNearestTarget(200.0f) )
|
||||
// c->AI()->AttackStart(target);
|
||||
@@ -1171,7 +1171,7 @@ public:
|
||||
if( Creature* c = instance->GetCreature(NPC_LightbaneGUID) )
|
||||
{
|
||||
c->SetReactState(REACT_AGGRESSIVE);
|
||||
c->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
/*if( Unit* target = c->SelectNearestTarget(200.0f) )
|
||||
{
|
||||
c->AI()->AttackStart(target);
|
||||
@@ -1181,7 +1181,7 @@ public:
|
||||
if( Creature* c = instance->GetCreature(NPC_DarkbaneGUID) )
|
||||
{
|
||||
c->SetReactState(REACT_AGGRESSIVE);
|
||||
c->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
c->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
/*if( Unit* target = c->SelectNearestTarget(200.0f) )
|
||||
{
|
||||
c->AI()->AttackStart(target);
|
||||
@@ -1483,7 +1483,7 @@ public:
|
||||
{
|
||||
jaraxxus->CastSpell(jaraxxus, 67924, true);
|
||||
jaraxxus->SetReactState(REACT_AGGRESSIVE);
|
||||
jaraxxus->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
|
||||
jaraxxus->RemoveUnitFlag(UNIT_FLAG_NON_ATTACKABLE);
|
||||
jaraxxus->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user