Exemple #1
0
        void EnterCombat(Unit* /*pWho*/)
        {
            if(!pInstance)
                return;

            DoScriptText(SAY_AGGRO, me);

            pInstance->SetData(TYPE_LOKEN, IN_PROGRESS);
            pInstance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMELY_DEATH_START_EVENT);

            if(pInstance->GetData(TYPE_IONAR) != DONE)
            {
                Map* pMap = me->GetMap();
                if(pMap->IsDungeon())
                {
                    Map::PlayerList const &PlayerList = pMap->GetPlayers();
                    if(PlayerList.isEmpty())
                        return;

                    for(Map::PlayerList::const_iterator i = PlayerList.begin(); i != PlayerList.end(); ++i)
                        if(i->getSource() && i->getSource()->isAlive() && !i->getSource()->isGameMaster())
                            me->DealDamage(i->getSource(),i->getSource()->GetMaxHealth(), NULL, DIRECT_DAMAGE, SPELL_SCHOOL_MASK_NORMAL, NULL, false);
                }
            }
        }
 void EnterCombat(Unit* /*who*/)
 {
     DoScriptText(SAY_AGGRO, me);
     DelayTimer = 0;
     if (instance)
         instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
 }
        void EnterCombat(Unit* /*who*/) override
        {
            Talk(SAY_AGGRO);

            instance->SetBossState(DATA_HERALD_VOLAZJ, IN_PROGRESS);
            instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_QUICK_DEMISE_START_EVENT);
        }
        void EnterCombat(Unit* /*who*/) override
        {
            Talk(SAY_AGGRO);

            instance->SetBossState(DATA_LOKEN, IN_PROGRESS);
            instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMELY_DEATH_START_EVENT);
        }
        void JustDied(Unit* /*killer*/)
        {
            InstanceScript* instance = me->GetInstanceScript();

            if (instance)
                instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_CREATURE, 43658);
        }
 void EnterCombat(Unit* /*who*/)
 {
     DoScriptText(SAY_AGGRO, me);
     if (pInstance)
     {
         pInstance->SetData(DATA_ANUBARAK_EVENT, IN_PROGRESS);
         pInstance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
     }
 }
Exemple #7
0
        void EnterCombat(Unit* who)
        {
            if (m_pInstance)
            {
                m_pInstance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT,  EVENT_START_TWINS_FIGHT);
            }

            me->SummonCreature(NPC_BULLET_CONTROLLER, ToCCommonLoc[1].GetPositionX(), ToCCommonLoc[1].GetPositionY(), ToCCommonLoc[1].GetPositionZ(), 0.0f, TEMPSUMMON_MANUAL_DESPAWN);
            boss_twin_baseAI::EnterCombat(who);
        }
Exemple #8
0
        void EnterCombat(Unit* /*who*/)
        {
            DoScriptText(SAY_AGGRO, me);

            if (m_pInstance)
            {
                m_pInstance->SetData(TYPE_LOKEN, IN_PROGRESS);
                m_pInstance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMELY_DEATH_START_EVENT);
            }
        }
Exemple #9
0
        void EnterCombat(Unit* /*who*/)
        {
            Talk(SAY_AGGRO);

            if (instance)
            {
                instance->SetData(TYPE_LOKEN, IN_PROGRESS);
                instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMELY_DEATH_START_EVENT);
            }
        }
        void EnterCombat(Unit* /*who*/)
        {
            DoScriptText(SAY_AGGRO, me);

            if (instance)
            {
                instance->SetData(DATA_HERALD_VOLAZJ, IN_PROGRESS);
                instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_QUICK_DEMISE_START_EVENT);
            }
        }
Exemple #11
0
        void EnterCombat(Unit* /*who*/)
        {
            DoScriptText(SAY_AGGRO, me);
            me->SetInCombatWithZone();

            if (m_pInstance)
            {
                m_pInstance->SetData(DATA_ONYXIA, IN_PROGRESS);
                m_pInstance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT,  ACHIEV_TIMED_START_EVENT);
            }
        }
 void EnterCombat(Unit* /*who*/)
 {
     DoScriptText(SAY_AGGRO, me);
     me->SetInCombatWithZone();
     me->ApplySpellImmune(0, IMMUNITY_MECHANIC, MECHANIC_GRIP, true);
     if (m_instance)
     {
         m_instance->SetData(DATA_ONYXIA, IN_PROGRESS);
         m_instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT,  ACHIEV_TIMED_START_EVENT);
     }
 }
Exemple #13
0
        void JustDied(Unit* /*killer*/)
        {
            DoScriptText(SAY_DEATH, me);

            if (pInstance)
            {
                pInstance->SetData(DATA_DRAKOS_EVENT, DONE);
                // start achievement timer (kill Eregos within 20 min)
                pInstance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
            }

            lSummons.DespawnAll();
        }
        void EnterCombat(Unit* /*who*/)
        {
            if (phase == 1)
            {
                DoScriptText(SAY_PHASE1_AGGRO, me);
                if (instance)
                    instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
            }

            if (phase == 2)
                DoScriptText(SAY_PHASE1_AGGRO, me);
            if (phase == 3)
                DoScriptText(SAY_PHASE1_AGGRO, me);
        }
		void EnterCombat(Unit* who)
		{
			events.ScheduleEvent(EVENT_STORM, 5000);
			events.ScheduleEvent(EVENT_SHOCK, 26000+rand()%6000);
			events.ScheduleEvent(EVENT_PILLAR, 12000+rand()%8000);
			events.ScheduleEvent(EVENT_PARTING, 8000);

			Talk(SAY_AGGRO);
			if (pInstance)
			{
				pInstance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEVEMENT_GOOD_GRIEF);
				pInstance->SetData(BOSS_MAIDEN_OF_GRIEF, IN_PROGRESS);
			}
		}
        void EnterCombat(Unit* /*who*/)
        {
			events.ScheduleEvent(EVENT_HERALD_MIND_FLAY, 8000);
			events.ScheduleEvent(EVENT_HERALD_SHADOW, 5000);
			events.ScheduleEvent(EVENT_HERALD_SHIVER, 15000);
			events.ScheduleEvent(EVENT_HERALD_HEALTH, 1000);

            Talk(SAY_AGGRO);

            if (pInstance)
            {
                pInstance->SetData(DATA_HERALD_VOLAZJ, IN_PROGRESS);
                pInstance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_QUICK_DEMISE_START_EVENT);
            }

			me->SetInCombatWithZone();
        }
        void EnterCombat(Unit* /*who*/)
        {
            DoScriptText(SAY_AGGRO, me);

            if (instance)
            {
                if (GameObject* pDoor = instance->instance->GetGameObject(instance->GetData64(DATA_MAIDEN_DOOR)))
                    if (pDoor->GetGoState() == GO_STATE_READY)
                    {
                        EnterEvadeMode();
                        return;
                    }

                instance->SetData(DATA_MAIDEN_OF_GRIEF_EVENT, IN_PROGRESS);
                instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_GOOD_GRIEF_START_EVENT);
            }
        }
Exemple #18
0
        void EnterCombat(Unit*)
        {
            me->SetInCombatWithZone();
            Talk(SAY_AGGRO);

            events.ScheduleEvent(EVENT_ARC_LIGHTNING, 10000);
            events.ScheduleEvent(EVENT_SHOCKWAVE, 3000);
            events.ScheduleEvent(EVENT_LIGHTNING_NOVA, 15000);

            if (m_pInstance)
            {
                m_pInstance->SetData(TYPE_LOKEN, IN_PROGRESS);

                if (me->GetMap()->IsHeroic())
                    m_pInstance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEVEMENT_TIMELY_DEATH);
            }
        }
        void EnterCombat(Unit* /*who*/) override
        {
            Talk(SAY_AGGRO);

            me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE | UNIT_FLAG_NON_ATTACKABLE);

            Phase = FLYING;

            m_uiMovementTimer = 1000;
            m_uiSummonTimer = 10000;
            me->SetInCombatWithZone();
            instance->SetBossState(DATA_SKADI_THE_RUTHLESS, IN_PROGRESS);
            instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
            me->GetMotionMaster()->MoveJump(Location[0].GetPositionX(), Location[0].GetPositionY(), Location[0].GetPositionZ(), 5.0f, 10.0f);
            me->SetWalk(false);
            m_uiMountTimer = 1000;
            Summons.DespawnEntry(NPC_GRAUF);
        }
        void EnterCombat(Unit* pWho)
        {
            if (!EventStarted)
            {
                EventStarted = true;
                Talk(SAY_AGGRO);
                if (m_pInstance)
                {
                    if (IsHeroic())
                        m_pInstance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_LODI_DODI);
                    
                    m_pInstance->SetData(DATA_SKADI_THE_RUTHLESS, IN_PROGRESS);
                }

                me->SetControlled(true, UNIT_STATE_ROOT);
                me->SetInCombatWithZone();
                events.RescheduleEvent(EVENT_SKADI_START, 2000);
            }
        }
Exemple #21
0
        void EnterCombat(Unit* /*who*/)
        {
            DoScriptText(SAY_AGGRO, me);

            me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE | UNIT_FLAG_NON_ATTACKABLE);

            Phase = FLYING;

            m_uiMovementTimer = 1000;
            m_uiSummonTimer = 10000;
            me->SetInCombatWithZone();
            if (m_instance)
            {
                m_instance->SetData(DATA_SKADI_THE_RUTHLESS_EVENT, IN_PROGRESS);
                m_instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
                me->GetMotionMaster()->MoveJump(Location[0].GetPositionX(), Location[0].GetPositionY(), Location[0].GetPositionZ(), 5.0f, 10.0f);
                me->RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING);
                m_uiMountTimer = 1000;
                Summons.DespawnEntry(CREATURE_GRAUF);
            }
        }
 void EnterCombat(Unit* /*who*/) override
 {
     Talk(SAY_AGGRO);
     DelayTimer = 0;
     instance->DoStartTimedAchievement(ACHIEVEMENT_TIMED_TYPE_EVENT, ACHIEV_TIMED_START_EVENT);
 }