diff --git a/sql/mangos.sql b/sql/mangos.sql index 96b4a594e..19c963154 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_9222_01_mangos_playercreateinfo_spell` bit(1) default NULL + `required_9244_02_mangos_spell_chain` bit(1) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Used DB version notes'; -- @@ -17325,6 +17325,10 @@ INSERT INTO spell_chain VALUES (51423,49020,49020,2,0), (51424,51423,49020,3,0), (51425,51424,49020,4,0), +/*Rime*/ +(49188,0,49188,1,0), +(56822,49188,49188,2,0), +(59057,56822,49188,3,0), /*Threat of Thassarian*/ (65661,0,65661,1,0), (66191,65661,65661,2,0), @@ -18351,7 +18355,7 @@ INSERT INTO `spell_proc_event` VALUES (48988, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), (49018, 0x00000000, 15, 0x01400000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), (49137, 0x00000000, 15, 0x00000000, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), -(49188, 0x00000000, 15, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), +(49188, 0x00000000, 15, 0x00000000, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), (49208, 0x00000000, 15, 0x00440000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), (49222, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 3), (49503, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), @@ -18510,7 +18514,6 @@ INSERT INTO `spell_proc_event` VALUES (56636, 0x00000000, 4, 0x00000020, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 6), (56816, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000030, 0.000000, 0.000000, 0), (56821, 0x00000000, 8, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), -(56822, 0x00000000, 15, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), (56834, 0x00000000, 15, 0x00440000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), (56835, 0x00000000, 15, 0x00440000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), (57345, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 45), @@ -18538,7 +18541,6 @@ INSERT INTO `spell_proc_event` VALUES (58872, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000040, 0.000000, 0.000000, 0), (58874, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000040, 0.000000, 0.000000, 0), (58901, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 45), -(59057, 0x00000000, 15, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), (59176, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 0), (59327, 0x00000000, 15, 0x08000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0), (59345, 0x00000000, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 45), diff --git a/sql/updates/9244_01_mangos_spell_proc_event.sql b/sql/updates/9244_01_mangos_spell_proc_event.sql new file mode 100644 index 000000000..ba23c74e4 --- /dev/null +++ b/sql/updates/9244_01_mangos_spell_proc_event.sql @@ -0,0 +1,5 @@ +ALTER TABLE db_version CHANGE COLUMN required_9222_01_mangos_playercreateinfo_spell required_9244_01_mangos_spell_proc_event bit; + +DELETE FROM spell_proc_event WHERE entry IN (49188,56822,59057); +INSERT INTO `spell_proc_event` VALUES +(49188, 0x00000000, 15, 0x00000000, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0); diff --git a/sql/updates/9244_02_mangos_spell_chain.sql b/sql/updates/9244_02_mangos_spell_chain.sql new file mode 100644 index 000000000..335bcadc1 --- /dev/null +++ b/sql/updates/9244_02_mangos_spell_chain.sql @@ -0,0 +1,6 @@ +ALTER TABLE db_version CHANGE COLUMN required_9244_01_mangos_spell_proc_event required_9244_02_mangos_spell_chain bit; + +INSERT INTO `spell_chain` VALUES +(49188, 0, 49188, 1, 0), +(56822, 49188, 49188, 2, 0), +(59057, 56822, 49188, 3, 0); diff --git a/sql/updates/Makefile.am b/sql/updates/Makefile.am index 4bf94a2f3..5f3e66ea9 100644 --- a/sql/updates/Makefile.am +++ b/sql/updates/Makefile.am @@ -248,6 +248,8 @@ pkgdata_DATA = \ 9220_01_mangos_spell_proc_event.sql \ 9220_02_mangos_spell_chain.sql \ 9222_01_mangos_playercreateinfo_spell.sql \ + 9244_01_mangos_spell_proc_event.sql \ + 9244_02_mangos_spell_chain.sql \ README ## Additional files to include when running 'make dist' @@ -476,4 +478,6 @@ EXTRA_DIST = \ 9220_01_mangos_spell_proc_event.sql \ 9220_02_mangos_spell_chain.sql \ 9222_01_mangos_playercreateinfo_spell.sql \ + 9244_01_mangos_spell_proc_event.sql \ + 9244_02_mangos_spell_chain.sql \ README diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index 68f1cfc26..dbc2d4cdb 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -3757,6 +3757,16 @@ SpellCastResult Spell::CheckOrTakeRunePower(bool take) if (runeCost[rune] <= 0) continue; + int32 runeCostTemp = runeCost[rune] * 10000; + if(Player* modOwner = plr->GetSpellModOwner()) + modOwner->ApplySpellMod(m_spellInfo->Id, SPELLMOD_COST, runeCostTemp, this); + + if (runeCostTemp <= 0) + { + --runeCost[rune]; + continue; + } + if(plr->GetRuneCooldown(i) == 0) { if (take) diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index fcfd242e1..64e9564ca 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -7620,6 +7620,14 @@ bool Unit::HandleProcTriggerSpell(Unit *pVictim, uint32 damage, Aura* triggeredB return false; break; } + // Freezing Fog (Rime triggered) + case 59052: + { + // Howling Blast cooldown reset + if (GetTypeId() == TYPEID_PLAYER) + ((Player*)this)->RemoveSpellCategoryCooldown(1248, true); + break; + } // Druid - Savage Defense case 62606: { diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 83c5c38f1..aa5ffc262 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 "9243" + #define REVISION_NR "9244" #endif // __REVISION_NR_H__ diff --git a/src/shared/revision_sql.h b/src/shared/revision_sql.h index 358ca2236..92927213f 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_9136_07_characters_characters" - #define REVISION_DB_MANGOS "required_9222_01_mangos_playercreateinfo_spell" + #define REVISION_DB_MANGOS "required_9244_02_mangos_spell_chain" #define REVISION_DB_REALMD "required_9010_01_realmd_realmlist" #endif // __REVISION_SQL_H__