Fix Glyph of Totem of Wrath.

Fixes issue #3743
Patch by dr.tenma.

--HG--
branch : trunk
This commit is contained in:
silinoron
2010-09-05 14:59:46 -07:00
parent 4f112d6a9d
commit 5e95be0c33
4 changed files with 37 additions and 1 deletions
+1 -1
View File
@@ -17597,7 +17597,6 @@ INSERT INTO `spell_group` (`id`, `spell_id`) VALUES
-- Increased Spell Power Buff
(1044,54646), -- Focus Magic
(1045,52109), -- Flametongue Totem
(1046,63283), -- Totem of Wrath
(1046,57658), -- Totem of Wrath
(1046,57660), -- Totem of Wrath
(1046,57662), -- Totem of Wrath
@@ -19105,6 +19104,7 @@ INSERT INTO `spell_proc_event` (`entry`,`SchoolMask`,`SpellFamilyName`,`SpellFam
( 63108, 0x00, 5, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0, 0, 0), -- Siphon Life
( 63158, 0x00, 5, 0x00000001, 0x000000C0, 0x00000000, 0x00000000, 0x00000000, 0, 0, 0), -- Decimation
( 63156, 0x00, 5, 0x00000001, 0x000000C0, 0x00000000, 0x00000000, 0x00000000, 0, 0, 0), -- Decimation
( 63280, 0x00, 11, 0x20000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0, 0, 0), -- Glyph ofTotem of Wrath
( 64343, 0x00, 3, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0, 0, 0), -- Impact
( 64976, 0x00, 4, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0, 0, 0), -- Juggernaut
( 64914, 0x00, 8, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0, 0, 0), -- Item - Rogue T8 2P Bonus
+1
View File
@@ -0,0 +1 @@
DELETE FROM `spell_group` WHERE `spell_id` IN ('63283');
@@ -0,0 +1,3 @@
DELETE FROM `spell_proc_event` WHERE `entry`=63280;
INSERT INTO `spell_proc_event` (`entry`,`SchoolMask`,`SpellFamilyName`,`SpellFamilyMask0`,`SpellFamilyMask1`,`SpellFamilyMask2`,`procFlags`,`procEx`,`ppmRate`,`CustomChance`,`Cooldown`) VALUES
(63280,0x00,11,0x20000000,0x00000000,0x00000000,0x00000000,0x00000000,0,0,0); -- Glyph ofTotem of Wrath
+32
View File
@@ -7416,6 +7416,38 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger
}
return false;
}
case 63280: // Glyph of Totem of Wrath
{
if (procSpell->SpellIconID != 2019)
return false;
AuraEffect * aurEffA = NULL;
AuraEffectList const& auras = GetAuraEffectsByType(SPELL_AURA_MOD_DAMAGE_DONE);
for (AuraEffectList::const_iterator i = auras.begin(); i != auras.end(); ++i)
{
SpellEntry const *spell = (*i)->GetSpellProto();
if (spell->SpellFamilyName == uint32(SPELLFAMILY_SHAMAN) && spell->SpellFamilyFlags.HasFlag(0, 0x02000000, 0))
{
if ((*i)->GetCasterGUID() != GetGUID())
continue;
if (spell->Id == 63283)
continue;
aurEffA = (*i);
break;
}
}
if (aurEffA)
{
int32 bp0 = 0, bp1 = 0;
bp0 = aurEffA->GetAmount() * triggerAmount / 100;
if (AuraEffect * aurEffB = aurEffA->GetBase()->GetEffect(EFFECT_1))
bp1 = aurEffB->GetAmount() * triggerAmount / 100;
CastCustomSpell(this, 63283, &bp0, &bp1, NULL, true, NULL, triggeredByAura);
return true;
}
return false;
}
break;
}
// Frozen Power
if (dummySpell->SpellIconID == 3780)