Exemple #1
0
		bool CheckContainmentSpheres(bool remove_prison = false) {
			if (!instance)
				return false;

			auiContainmentSphereGUIDs[0] = instance->GetData64(
					ANOMALUS_CONTAINMET_SPHERE);
			auiContainmentSphereGUIDs[1] = instance->GetData64(
					ORMOROKS_CONTAINMET_SPHERE);
			auiContainmentSphereGUIDs[2] = instance->GetData64(
					TELESTRAS_CONTAINMET_SPHERE);

			GameObject *ContainmentSpheres[DATA_CONTAINMENT_SPHERES];

			for (uint8 i = 0; i < DATA_CONTAINMENT_SPHERES; ++i) {
				ContainmentSpheres[i] = instance->instance->GetGameObject(
						auiContainmentSphereGUIDs[i]);
				if (!ContainmentSpheres[i])
					return false;
				if (ContainmentSpheres[i]->GetGoState() != GO_STATE_ACTIVE)
					return false;
			}
			if (remove_prison)
				RemovePrison(true);
			return true;
		}
            bool CheckSpheres()
            {
                for (uint8 i = 0; i < 2; ++i)
                    if (!instance->GetData(DATA_SPHERE_1 + i))
                        return false;

                RemovePrison();
                return true;
            }
            void Reset() override
            {
                Initialize();
                _intenseColdList.clear();

                me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_STUNNED);

                RemovePrison(CheckContainmentSpheres());
                _Reset();
            }
        void Reset() override
        {
            Initialize();
            intenseColdList.clear();

            me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_STUNNED);

            RemovePrison(CheckContainmentSpheres());

            instance->SetData(DATA_KERISTRASZA_EVENT, NOT_STARTED);
        }
 bool CheckContainmentSpheres(bool removePrison = false)
 {
     for (uint32 i = ANOMALUS_CONTAINMET_SPHERE; i < (ANOMALUS_CONTAINMET_SPHERE + DATA_CONTAINMENT_SPHERES); ++i)
     {
         GameObject* containmentSpheres = ObjectAccessor::GetGameObject(*me, instance->GetGuidData(i));
         if (!containmentSpheres || containmentSpheres->GetGoState() != GO_STATE_ACTIVE)
             return false;
     }
     if (removePrison)
         RemovePrison(true);
     return true;
 }
        void Reset()
        {
            uiCrystalfireBreathTimer = 10*IN_MILLISECONDS;
            uiCrystalChainsTimer = 20*IN_MILLISECONDS;
            uiCrystalizeTimer = urand(10*IN_MILLISECONDS, 15*IN_MILLISECONDS);
            uiTailSweepTimer = 5*IN_MILLISECONDS;
            bEnrage = false;

            lIntenseColdPlayers.clear();
            me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_STUNNED);

            RemovePrison(CheckContainmentSpheres());

            if (pInstance)
                pInstance->SetData(DATA_KERISTRASZA_EVENT, NOT_STARTED);
        }
        void Reset()
        {
            uiCrystalfireBreathTimer = 14*IN_MILLISECONDS;
            uiCrystalChainsCrystalizeTimer = DUNGEON_MODE(30*IN_MILLISECONDS, 11*IN_MILLISECONDS);
            uiTailSweepTimer = 5*IN_MILLISECONDS;
            bEnrage = false;

            intenseCold = true;
            intenseColdList.clear();

            me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_STUNNED);

            RemovePrison(CheckContainmentSpheres());

            instance->SetBossState(DATA_KERISTRASZA, NOT_STARTED);
        }
Exemple #8
0
        void Reset()
        {
            uiCrystalfireBreathTimer = 14*IN_MILLISECONDS;
            uiCrystalChainsCrystalizeTimer = DUNGEON_MODE(30*IN_MILLISECONDS, 11*IN_MILLISECONDS);
            uiTailSweepTimer = 5*IN_MILLISECONDS;
            bEnrage = false;

            uiCheckIntenseColdTimer = 2*IN_MILLISECONDS;
            bMoreThanTwoIntenseCold = false;

            me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_STUNNED);

            RemovePrison(CheckContainmentSpheres());

            if (instance)
                instance->SetData(DATA_KERISTRASZA_EVENT, NOT_STARTED);
        }
            bool CheckContainmentSpheres(bool remove_prison = false)
            {
                ContainmentSphereGUIDs[0] = instance->GetGuidData(ANOMALUS_CONTAINMENT_SPHERE);
                ContainmentSphereGUIDs[1] = instance->GetGuidData(ORMOROKS_CONTAINMENT_SPHERE);
                ContainmentSphereGUIDs[2] = instance->GetGuidData(TELESTRAS_CONTAINMENT_SPHERE);

                for (uint8 i = 0; i < DATA_CONTAINMENT_SPHERES; ++i)
                {
                    GameObject* ContainmentSphere = ObjectAccessor::GetGameObject(*me, ContainmentSphereGUIDs[i]);
                    if (!ContainmentSphere)
                        return false;
                    if (ContainmentSphere->GetGoState() != GO_STATE_ACTIVE)
                        return false;
                }
                if (remove_prison)
                    RemovePrison(true);
                return true;
            }
    bool CheckSpheres()
    {
        if(!pInstance)
            return false;
        uiSphereGuids[0] = pInstance->GetData64(DATA_SPHERE1);
        uiSphereGuids[1] = pInstance->GetData64(DATA_SPHERE2);

        GameObject *pSpheres[2];
        for (uint8 i=0; i < 2; ++i)
        {
            pSpheres[i] = pInstance->instance->GetGameObject(uiSphereGuids[i]);
            if (!pSpheres[i])
                return false;
            if (pSpheres[i]->GetGoState() != GO_STATE_ACTIVE)
                return false;
        }
        RemovePrison();
        return true;
    }
			void SetData(uint32 type, uint32)
			{
				if (type == me->GetEntry() && CanRemovePrison())
					RemovePrison(true);
			}
			void Reset()
			{
				BossAI::Reset();
				RemovePrison(CanRemovePrison());
				aGuids.clear();
			}