diff options
| author | Muhaha <none@none> | 2009-06-20 02:54:03 +0200 |
|---|---|---|
| committer | Muhaha <none@none> | 2009-06-20 02:54:03 +0200 |
| commit | eab85d9d6e55d66971ac5b816196510a26973d47 (patch) | |
| tree | 4fb0933253d74af34109983b75274f0c26e2e947 /src/bindings/scripts | |
| parent | 0bef9c2e59e87f44d35b8c33a8c700bf82e85d28 (diff) | |
* Added LowerPlayerDamageReq function from TC2
* Akama is summoned after the illidari council has been deafeated. (remove your akama spawn from creature db)
* Dampen Magic timer
* Merging mother from TC2
--HG--
branch : trunk
Diffstat (limited to 'src/bindings/scripts')
3 files changed, 13 insertions, 6 deletions
diff --git a/src/bindings/scripts/scripts/zone/aunchindoun/shadow_labyrinth/boss_murmur.cpp b/src/bindings/scripts/scripts/zone/aunchindoun/shadow_labyrinth/boss_murmur.cpp index 0ac15f31f40..1908de699bf 100644 --- a/src/bindings/scripts/scripts/zone/aunchindoun/shadow_labyrinth/boss_murmur.cpp +++ b/src/bindings/scripts/scripts/zone/aunchindoun/shadow_labyrinth/boss_murmur.cpp @@ -62,6 +62,7 @@ struct TRINITY_DLL_DECL boss_murmurAI : public Scripted_NoMovementAI //database should have `RegenHealth`=0 to prevent regen uint32 hp = (m_creature->GetMaxHealth()*40)/100; if (hp) m_creature->SetHealth(hp); + m_creature->ResetPlayerDamageReq(); } void Aggro(Unit *who) { } diff --git a/src/bindings/scripts/scripts/zone/black_temple/boss_mother_shahraz.cpp b/src/bindings/scripts/scripts/zone/black_temple/boss_mother_shahraz.cpp index 4b63b092c53..2718ff5b2a7 100644 --- a/src/bindings/scripts/scripts/zone/black_temple/boss_mother_shahraz.cpp +++ b/src/bindings/scripts/scripts/zone/black_temple/boss_mother_shahraz.cpp @@ -1,4 +1,4 @@ -/* Copyright (C) 2006 - 2008 ScriptDev2 <https://scriptdev2.svn.sourceforge.net/> +/* Copyright (C) 2006 - 2009 ScriptDev2 <https://scriptdev2.svn.sourceforge.net/> * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or @@ -241,7 +241,7 @@ struct TRINITY_DLL_DECL boss_shahrazAI : public ScriptedAI // Just make them explode three times... they're supposed to keep exploding while they are in range, but it'll take too much code. I'll try to think of an efficient way for it later. if(ExplosionCount < 3) { - for(uint8 i = 0; i < 4; i++) + for(uint8 i = 0; i < 3; ++i) { Unit* pUnit = NULL; if(TargetGUID[i]) diff --git a/src/bindings/scripts/scripts/zone/black_temple/illidari_council.cpp b/src/bindings/scripts/scripts/zone/black_temple/illidari_council.cpp index 266c84bd09e..b64c5d7374e 100644 --- a/src/bindings/scripts/scripts/zone/black_temple/illidari_council.cpp +++ b/src/bindings/scripts/scripts/zone/black_temple/illidari_council.cpp @@ -1,4 +1,4 @@ -/* Copyright (C) 2006 - 2008 ScriptDev2 <https://scriptdev2.svn.sourceforge.net/> +/* Copyright (C) 2006 - 2009 ScriptDev2 <https://scriptdev2.svn.sourceforge.net/> * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or @@ -51,6 +51,8 @@ EndScriptData */ #define ERROR_INST_DATA "SD2 ERROR: Instance Data for Black Temple not set properly; Illidari Council event will not function properly." +#define AKAMAID 23089 + struct CouncilYells { int32 entry; @@ -240,7 +242,7 @@ struct TRINITY_DLL_DECL mob_illidari_councilAI : public ScriptedAI m_creature->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); m_creature->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); - m_creature->SetUInt32Value(UNIT_FIELD_DISPLAYID, 11686); + m_creature->SetDisplayId(11686); } void Aggro(Unit *who) {} @@ -297,6 +299,7 @@ struct TRINITY_DLL_DECL mob_illidari_councilAI : public ScriptedAI if(Creature* VoiceTrigger = (Unit::GetCreature(*m_creature, pInstance->GetData64(DATA_BLOOD_ELF_COUNCIL_VOICE)))) VoiceTrigger->DealDamage(VoiceTrigger, VoiceTrigger->GetHealth(), NULL, DIRECT_DAMAGE, SPELL_SCHOOL_MASK_NORMAL, NULL, false); pInstance->SetData(DATA_ILLIDARICOUNCILEVENT, DONE); + m_creature->SummonCreature(AKAMAID,746.466980f,304.394989f,311.90208f,6.272870f,TEMPSUMMON_DEAD_DESPAWN,0); } m_creature->DealDamage(m_creature, m_creature->GetHealth(), NULL, DIRECT_DAMAGE, SPELL_SCHOOL_MASK_NORMAL, NULL, false); return; @@ -405,9 +408,12 @@ struct TRINITY_DLL_DECL boss_illidari_councilAI : public ScriptedAI damage /= 4; for(uint8 i = 0; i < 4; ++i) { - if(Unit* pUnit = Unit::GetUnit(*m_creature, Council[i])) + if(Creature* pUnit = Unit::GetCreature(*m_creature, Council[i])) if(pUnit != m_creature && damage < pUnit->GetHealth()) + { pUnit->SetHealth(pUnit->GetHealth() - damage); + pUnit->LowerPlayerDamageReq(damage); + } } } @@ -593,7 +599,7 @@ struct TRINITY_DLL_DECL boss_high_nethermancer_zerevorAI : public boss_illidari_ { DoCast(m_creature, SPELL_DAMPEN_MAGIC); Cooldown = 1000; - DampenMagicTimer = 110000; // almost 2 minutes + DampenMagicTimer = 67200; // almost 1,12 minutes ArcaneBoltTimer += 1000; // Give the Mage some time to spellsteal Dampen. }else DampenMagicTimer -= diff; |
