diff --git a/sql/mangos.sql b/sql/mangos.sql index 9f997595b..7c0a3bea7 100644 --- a/sql/mangos.sql +++ b/sql/mangos.sql @@ -23,7 +23,7 @@ DROP TABLE IF EXISTS `db_version`; CREATE TABLE `db_version` ( `version` varchar(120) default NULL, `creature_ai_version` varchar(120) default NULL, - `required_8310_01_mangos_spell_proc_event` bit(1) default NULL + `required_8342_01_mangos_spell_proc_event` bit(1) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Used DB version notes'; -- @@ -17832,6 +17832,7 @@ INSERT INTO `spell_proc_event` VALUES (53380, 0x00000000, 10, 0x00800000, 0x00020000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), (53381, 0x00000000, 10, 0x00800000, 0x00020000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), (53382, 0x00000000, 10, 0x00800000, 0x00020000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), +(53397, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), (53486, 0x00000000, 10, 0x00800000, 0x00028000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), (53488, 0x00000000, 10, 0x00800000, 0x00028000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), (53501, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), diff --git a/sql/updates/8342_01_mangos_spell_proc_event.sql b/sql/updates/8342_01_mangos_spell_proc_event.sql new file mode 100644 index 000000000..097534be3 --- /dev/null +++ b/sql/updates/8342_01_mangos_spell_proc_event.sql @@ -0,0 +1,5 @@ +ALTER TABLE db_version CHANGE COLUMN required_8310_01_mangos_spell_proc_event required_8342_01_mangos_spell_proc_event bit; + +DELETE FROM spell_proc_event WHERE entry IN (53397); +INSERT INTO spell_proc_event VALUES +(53397, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 0); diff --git a/sql/updates/Makefile.am b/sql/updates/Makefile.am index 20d68977f..9a9a36a56 100644 --- a/sql/updates/Makefile.am +++ b/sql/updates/Makefile.am @@ -79,6 +79,7 @@ pkgdata_DATA = \ 8332_01_realmd_realmcharacters.sql \ 8339_01_characters_characters.sql \ 8339_02_characters_character_battleground_data.sql \ + 8342_01_mangos_spell_proc_event.sql \ README ## Additional files to include when running 'make dist' @@ -138,4 +139,5 @@ EXTRA_DIST = \ 8332_01_realmd_realmcharacters.sql \ 8339_01_characters_characters.sql \ 8339_02_characters_character_battleground_data.sql \ + 8342_01_mangos_spell_proc_event.sql \ README diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index af08c7312..1258cc201 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -5265,6 +5265,26 @@ void Spell::EffectScriptEffect(uint32 effIndex) m_caster->CastCustomSpell(target, spellId, &basePoint, 0, 0, false); return; } + case 53412: // Invigoration (pet triggered script, master targeted) + { + if (!unitTarget) + return; + + Unit::AuraList const& auras = unitTarget->GetAurasByType(SPELL_AURA_DUMMY); + for(Unit::AuraList::const_iterator i = auras.begin();i != auras.end(); ++i) + { + // Invigoration (master talent) + if ((*i)->GetModifier()->m_miscvalue == 8 && (*i)->GetSpellProto()->SpellIconID == 3487) + { + if (roll_chance_i((*i)->GetModifier()->m_amount)) + { + unitTarget->CastSpell(unitTarget, 53398, true, NULL, (*i), m_caster->GetGUID()); + break; + } + } + } + return; + } default: break; } diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index a2a4a174f..03bda0f9b 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "8341" + #define REVISION_NR "8342" #endif // __REVISION_NR_H__