From 7768d5f3e70b503eb13d191e14b09bc07b4a1c75 Mon Sep 17 00:00:00 2001 From: Win32 Date: Mon, 21 Sep 2009 17:23:36 +0400 Subject: [PATCH] [8521] Implement glyph 42744 Patch added with improvement in code suggested by Shendor. Signed-off-by: VladimirMangos --- sql/mangos.sql | 3 ++- sql/updates/8521_01_mangos_spell_proc_event.sql | 6 ++++++ sql/updates/Makefile.am | 2 ++ src/game/Unit.cpp | 10 ++++++++++ src/shared/revision_nr.h | 2 +- src/shared/revision_sql.h | 2 +- 6 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 sql/updates/8521_01_mangos_spell_proc_event.sql diff --git a/sql/mangos.sql b/sql/mangos.sql index 5db0de543..f6bf658d6 100644 --- a/sql/mangos.sql +++ b/sql/mangos.sql @@ -24,7 +24,7 @@ CREATE TABLE `db_version` ( `version` varchar(120) default NULL, `creature_ai_version` varchar(120) default NULL, `cache_id` int(10) default '0', - `required_8514_01_mangos_spell_bonus_data` bit(1) default NULL + `required_8521_01_mangos_spell_proc_event` bit(1) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Used DB version notes'; -- @@ -17930,6 +17930,7 @@ INSERT INTO `spell_proc_event` VALUES (56344, 0x00000000, 9, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), (56355, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000040, 0.000000, 0.000000, 0), (56364, 0x00000000, 3, 0x00000000, 0x01000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), +(56372, 0x00000000, 3, 0x00000000, 0x00000080, 0x00000000, 0x00004000, 0x00000000, 0.000000, 0.000000, 0), (56451, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 3), (56611, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), (56612, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), diff --git a/sql/updates/8521_01_mangos_spell_proc_event.sql b/sql/updates/8521_01_mangos_spell_proc_event.sql new file mode 100644 index 000000000..8ebdaac96 --- /dev/null +++ b/sql/updates/8521_01_mangos_spell_proc_event.sql @@ -0,0 +1,6 @@ +ALTER TABLE db_version CHANGE COLUMN required_8514_01_mangos_spell_bonus_data required_8521_01_mangos_spell_proc_event bit; + +DELETE FROM `spell_proc_event` WHERE `entry` = 56372; + +INSERT INTO `spell_proc_event` VALUES +(56372, 0x00, 3, 0x00000000, 0x00000080, 0x00000000, 0x00004000, 0x00000000, 0.000000, 0.000000, 0); diff --git a/sql/updates/Makefile.am b/sql/updates/Makefile.am index 6174f2357..cd09ce4a8 100644 --- a/sql/updates/Makefile.am +++ b/sql/updates/Makefile.am @@ -112,6 +112,7 @@ pkgdata_DATA = \ 8505_01_characters_character_spell.sql \ 8511_01_mangos_spell_proc_event.sql \ 8514_01_mangos_spell_bonus_data.sql \ + 8521_01_mangos_spell_proc_event.sql \ README ## Additional files to include when running 'make dist' @@ -204,4 +205,5 @@ EXTRA_DIST = \ 8505_01_characters_character_spell.sql \ 8511_01_mangos_spell_proc_event.sql \ 8514_01_mangos_spell_bonus_data.sql \ + 8521_01_mangos_spell_proc_event.sql \ README diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index c5976fb72..03b34cba0 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -5137,6 +5137,16 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura* triggeredByAu CastSpell(this, 28682, true, castItem, triggeredByAura); return (procEx & PROC_EX_CRITICAL_HIT); // charge update only at crit hits, no hidden cooldowns } + // Glyph of Ice Block + case 56372: + { + if (GetTypeId() != TYPEID_PLAYER) + return false; + + // not 100% safe with client version switches but for 3.1.3 no spells with cooldown that can have mage player except Frost Nova. + ((Player*)this)->RemoveSpellCategoryCooldown(35, true); + return true; + } } break; } diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 37e07b1d8..90ad3ea11 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 "8520" + #define REVISION_NR "8521" #endif // __REVISION_NR_H__ diff --git a/src/shared/revision_sql.h b/src/shared/revision_sql.h index ee51ea207..686c79b73 100644 --- a/src/shared/revision_sql.h +++ b/src/shared/revision_sql.h @@ -1,6 +1,6 @@ #ifndef __REVISION_SQL_H__ #define __REVISION_SQL_H__ #define REVISION_DB_CHARACTERS "required_8505_01_characters_character_spell" - #define REVISION_DB_MANGOS "required_8514_01_mangos_spell_bonus_data" + #define REVISION_DB_MANGOS "required_8521_01_mangos_spell_proc_event" #define REVISION_DB_REALMD "required_8332_01_realmd_realmcharacters" #endif // __REVISION_SQL_H__