mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-15 23:20:36 +01:00
Scripts/Spells: Added proc requirements to a few auras that have SPELL_ATTR3_CAN_PROC_FROM_PROCS attribute
This commit is contained in:
216
sql/updates/world/master/2023_04_16_00_world.sql
Normal file
216
sql/updates/world/master/2023_04_16_00_world.sql
Normal file
@@ -0,0 +1,216 @@
|
||||
DELETE FROM `spell_proc` WHERE `SpellId` IN (251777,251813,251825,251854,251878,253026,253285,253287,253305,253323,255148,255150,255151,255800,258880,258881,258885,258896,258907,258933,258942,258946,258954,258969,258972,258976,258981,258984,258989,258993,
|
||||
259003,259004,259005,259006,259007,259008,259009,262111,262226,262304,262507,265000,265003,265025,265027,265034,265036,265057,265066,265071,265072,265073,265078,265079,265082,265083,265090,265094,265162,265167,265170,265174,265176,265230,265233,265234,
|
||||
265236,265238,265240,265255,265266,265270,265274,265276,265278,265282,265285,265310,265317,265327,265331,265353,265408,265413,265414,265416,265419,265421,268035,268175,268399,268401,268441,268503,268506,268507,268508,268512,268516,268517,268531,268533,
|
||||
268535,268546,268557,268566,268603,268605,268608,268610,268617,268620,268621,268624,268771,268855,268888,268900,268906,268912,269718,269884,269886,269888,269891,270658,270671,270673,270675,271072,271102,271104,271547,271818,272258,272275,272276,272837,
|
||||
272933,272936,272956,272969,272980,273005,273153,273298,273292,273332,273449,273454,273463,273799,273825,273835,273858,273975,273987,273991,274155,274376,274597,274835,275514,275864,276076,276214,276266,276840,277182,277958,277966,278053,278138,278142,
|
||||
278224,278248,278251,278287,278356,278382,278519,278573,278603,278815,278840,278859,278951,278991,279006,279193);
|
||||
INSERT INTO `spell_proc` (`SpellId`,`SchoolMask`,`SpellFamilyName`,`SpellFamilyMask0`,`SpellFamilyMask1`,`SpellFamilyMask2`,`SpellFamilyMask3`,`ProcFlags`,`ProcFlags2`,`SpellTypeMask`,`SpellPhaseMask`,`HitMask`,`AttributesMask`,`DisableEffectsMask`,`ProcsPerMinute`,`Chance`,`Cooldown`,`Charges`) VALUES
|
||||
(251777,0x00,8,0x10010000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x402,0x0,0x0,0,0,0,0), -- Item - Rogue T21 Assassination 4P Bonus
|
||||
(251813,0x00,7,0x00000000,0x00000000,0x00040000,0x00000000,0x0,0x0,0x2,0x2,0x403,0x0,0x0,0,0,0,0), -- Item - Druid T21 Restoration 2P Bonus
|
||||
(251825,0x00,53,0x00000000,0x00000000,0x00000000,0x00004000,0x0,0x0,0x2,0x2,0x403,0x0,0x0,0,0,0,0), -- Item - Monk T21 Mistweaver 2P Bonus
|
||||
(251854,0x00,5,0x00000000,0x00002000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Item - Warlock T21 Destruction 2P Bonus
|
||||
(251878,0x00,4,0x00000000,0x40000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Item - Warrior T21 Arms 2P Bonus
|
||||
(253026,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x4,0x2,0x1000,0x0,0x0,0,0,0,0), -- Impending Inevitability
|
||||
(253285,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x2,0x2,0x403,0x0,0x0,0,0,0,0), -- Highfather's Timekeeping
|
||||
(253287,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x3,0x0,0x0,0,0,0,0), -- Highfather's Timekeeping
|
||||
(253305,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Flames of F'harg
|
||||
(253323,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Shadow Strike
|
||||
(255148,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x2,0x2,0x403,0x0,0x0,0,0,0,0), -- Coastal Surge
|
||||
(255150,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Torrent of Elements
|
||||
(255151,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Gale-Force Striking
|
||||
(255800,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x2,0x2,0x403,0x0,0x0,0,0,0,0), -- Wounded
|
||||
(258880,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- The Chief's Enforcer
|
||||
(258881,0x00,107,0x00001000,0x00000040,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Trail of Ruin
|
||||
(258885,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Gahz'rilla's Fang
|
||||
(258896,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Bite of Serra'kis
|
||||
(258907,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Jang'thraze
|
||||
(258933,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Sul'thraze
|
||||
(258942,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- The Hand of Antu'sul
|
||||
(258946,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Ripsaw
|
||||
(258954,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Darkwater Talwar
|
||||
(258969,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Glutton's Cleaver
|
||||
(258972,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Stinging Viper
|
||||
(258976,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Diabolic Skiver
|
||||
(258981,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Bloodcursed Felblade
|
||||
(258984,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Razor Gauntlets
|
||||
(258989,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Gatorbite Axe
|
||||
(258993,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x2,0x2,0x403,0x0,0x0,0,0,0,0), -- Fist of Stone
|
||||
(259003,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Claw of Celebras
|
||||
(259004,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Princess Theradras' Scepter
|
||||
(259005,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Blade of Eternal Darkness
|
||||
(259006,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Venomstrike
|
||||
(259007,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Coldrage Dagger
|
||||
(259008,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Satyr's Lash
|
||||
(259009,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Strike of the Hydra
|
||||
(262111,0x00,4,0x02C00000,0x40004000,0x00000000,0x00000800,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Mastery: Deep Wounds
|
||||
(262226,0x00,4,0x00000000,0x00004004,0x00000000,0x00000800,0x0,0x0,0x1,0x2,0x402,0x0,0x0,0,0,0,0), -- Unbridled Wrath
|
||||
(262304,0x00,4,0x02400000,0x00004000,0x00000000,0x00100000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Deep Wounds
|
||||
(262507,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Crystalline Shockwave
|
||||
(265000,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Fiery War Axe
|
||||
(265003,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Duskwood Staff
|
||||
(265025,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Archeus
|
||||
(265027,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Phytoblade
|
||||
(265034,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Runic Darkblade
|
||||
(265036,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Claw of the Shadowmancer
|
||||
(265057,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Bleeding Crescent
|
||||
(265066,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Grimclaw
|
||||
(265071,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Black Menace
|
||||
(265072,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- The Ziggler
|
||||
(265073,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Silithid Ripper
|
||||
(265078,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Shoni's Disarming Tool
|
||||
(265079,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Gryphon Rider's Stormhammer
|
||||
(265082,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Linken's Sword of Mastery
|
||||
(265083,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Felstriker
|
||||
(265090,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Incendiary Ammunition (DND)
|
||||
(265094,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Frost-Laced Ammunition (DND)
|
||||
(265162,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Doombringer
|
||||
(265167,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Argent Avenger
|
||||
(265170,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Ashbringer
|
||||
(265174,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Darrowspike
|
||||
(265176,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Bonechill Hammer
|
||||
(265230,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Shimmering Platinum Warhammer
|
||||
(265233,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Gutwrencher
|
||||
(265234,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Hameya's Slayer
|
||||
(265236,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Windreaper
|
||||
(265238,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Ichor Spitter
|
||||
(265240,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Sulfuron Hammer
|
||||
(265255,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Quel'Serrar
|
||||
(265266,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Sprinter's Sword
|
||||
(265270,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Ebon Hand
|
||||
(265274,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Drakefist Hammer
|
||||
(265276,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Dragonmaw
|
||||
(265278,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Deep Thunder
|
||||
(265282,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Stormherald
|
||||
(265285,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Infinity Blade
|
||||
(265310,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Singed Vis'kag the Bloodletter
|
||||
(265317,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Gleaming Quel'Serrar
|
||||
(265327,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Burnished Quel'Serrar
|
||||
(265331,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Tempered Vis'kag the Bloodletter
|
||||
(265353,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Meteor Shard
|
||||
(265408,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Seeping Willow
|
||||
(265413,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Petrified Willow
|
||||
(265414,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Blackhand Doomcutter
|
||||
(265416,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Blackhand Doomsaw
|
||||
(265419,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Bleakblade of Shahram
|
||||
(265421,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Dripping Willow
|
||||
(268035,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Lingering Spore Pods
|
||||
(268175,0x00,107,0x80000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Void Reaver
|
||||
(268399,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Template Secondary Stat Proc
|
||||
(268401,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Template Primary Stat Proc
|
||||
(268441,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Resonating Elemental Heart
|
||||
(268503,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Elder's Stormseed
|
||||
(268506,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Galewind Chimes
|
||||
(268507,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Bargain For Power
|
||||
(268508,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Relic of the Makers
|
||||
(268512,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Siren's Melody
|
||||
(268516,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Dread Spore
|
||||
(268517,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Sharpened Claws
|
||||
(268531,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Sound Barrier
|
||||
(268533,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Want For Nothing
|
||||
(268535,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Best In Show
|
||||
(268546,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Exposure
|
||||
(268557,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Luminous Honey Jar
|
||||
(268566,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Rikal's Ritual Beads
|
||||
(268603,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Master's Sight
|
||||
(268605,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Blood Crazed
|
||||
(268608,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- PH Crit Buff - Nazmir
|
||||
(268610,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Potency Manipulator
|
||||
(268617,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Swell of Voodoo
|
||||
(268620,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Diemetradon Frenzy
|
||||
(268621,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- PH Verse Buff - Zuldazar
|
||||
(268624,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Shark's Bite
|
||||
(268771,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Dread Captain's Spyglass
|
||||
(268855,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Versatile Navigation
|
||||
(268888,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Quick Navigation
|
||||
(268900,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Masterful Navigation
|
||||
(268906,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Deadly Navigation
|
||||
(268912,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Stalwart Navigation
|
||||
(269718,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- PH Crit Buff - Zuldazar 2
|
||||
(269884,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Unbound Power of Zem'lan
|
||||
(269886,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Residual Viciousness
|
||||
(269888,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Boiling Time
|
||||
(269891,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Searing Zap
|
||||
(270658,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x4,0x2,0x0,0x0,0x0,0,0,0,0), -- Azerite Fortification
|
||||
(270671,0x00,3,0x00200000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x4,0x0,0x0,0x0,0,0,0,0), -- Arcane Pummeling
|
||||
(270673,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Azerite Veins
|
||||
(270675,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Winds of War
|
||||
(271072,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Conch of Dark Whispers
|
||||
(271102,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Rezan's Gleaming Eye
|
||||
(271104,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Butcher's Eye
|
||||
(271547,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Strength in Numbers
|
||||
(271818,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x2,0x2,0x403,0x0,0x0,0,0,0,0), -- Blessed Portents
|
||||
(272258,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x2,0x2,0x403,0x0,0x0,0,0,0,0), -- Concentrated Mending
|
||||
(272275,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x2,0x2,0x403,0x0,0x0,0,0,0,0), -- Bracing Chill
|
||||
(272276,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x2,0x2,0x403,0x0,0x0,0,0,0,0), -- Bracing Chill
|
||||
(272837,0x00,4,0x00000000,0x00000000,0x00000000,0x08000000,0x0,0x0,0x4,0x2,0x0,0x0,0x0,0,0,0,0), -- Trample the Weak
|
||||
(272933,0x00,3,0x00000000,0x00000008,0x00000000,0x00000000,0x0,0x0,0x4,0x2,0x0,0x0,0x0,0,0,0,0), -- Flames of Alacrity
|
||||
(272936,0x00,8,0x00000000,0x00000000,0x00000000,0x00008000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Deadshot
|
||||
(272956,0x00,5,0x00000000,0x00000000,0x10000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Accelerant
|
||||
(272969,0x00,3,0x00000000,0x00000000,0x00000080,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Packed Ice
|
||||
(272980,0x00,11,0x00000003,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Volcanic Lightning
|
||||
(273005,0x00,11,0x00200000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Primal Primer
|
||||
(273153,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Rezan's Fury
|
||||
(273298,0x00,53,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Sunrise Technique
|
||||
(273292,0x00,53,0x00000000,0x00000080,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Sunrise Technique
|
||||
(273332,0x00,3,0x00000010,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Preheat
|
||||
(273449,0x00,11,0x10000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Lava Shock
|
||||
(273454,0x00,8,0x00800000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Storm of Steel
|
||||
(273463,0x00,11,0x10000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Strength of Earth
|
||||
(273799,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Maokka's Carving
|
||||
(273825,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Wandering Soul
|
||||
(273835,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Filthy Transfusion
|
||||
(273858,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Sandstorm
|
||||
(273975,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Will of the Loa
|
||||
(273987,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Primal Instinct
|
||||
(273991,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Speed of the Spirits
|
||||
(274155,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x3,0x0,0x0,0,0,0,0), -- Direhorn Studded Belt
|
||||
(274376,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Marie's Fresh Baked Cookies
|
||||
(274597,0x00,3,0x00000010,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Blaster Master
|
||||
(274835,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Sweete's Sweet Dice
|
||||
(275514,0x00,3,0x00000020,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Orbital Precision
|
||||
(275864,0x00,4,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x2040,0x0,0x0,0,0,0,0), -- Reinforced Plating
|
||||
(276076,0x00,8,0x00000100,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x1,0x403,0x0,0x0,0,0,0,0), -- Poisoned Wire
|
||||
(276214,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x3,0x0,0x0,0,0,0,0), -- Marie's Fresh Baked Cookies
|
||||
(276266,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x4,0x2,0x1000,0x0,0x0,0,0,0,0), -- Spirit's Swiftness
|
||||
(276840,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Silvered Weapons
|
||||
(277182,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Gladiator's Insignia
|
||||
(277958,0x00,11,0x00000003,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Synapse Shock
|
||||
(277966,0x00,9,0x00000000,0x00000000,0x00010000,0x00000001,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Blur of Talons
|
||||
(278053,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Bloodshaping
|
||||
(278138,0x00,10,0x00200000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Radiant Incandescence
|
||||
(278142,0x00,10,0x00000000,0x00010000,0x00000000,0x00000000,0x0,0x0,0x2,0x2,0x403,0x0,0x0,0,0,0,0), -- Radiant Incandescence
|
||||
(278224,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Coalesced Essence
|
||||
(278248,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Razorleaf Tempest
|
||||
(278251,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Avian Tempest
|
||||
(278287,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Kraulok's Strength
|
||||
(278356,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Blood Hatred
|
||||
(278382,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Seaborne Tempest
|
||||
(278519,0x00,10,0x00000000,0x00020000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Divine Right
|
||||
(278573,0x00,10,0x00800000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x402,0x0,0x0,0,0,0,0), -- Judicious Defense
|
||||
(278603,0x00,15,0x00000000,0x00000004,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x402,0x0,0x0,0,15,0,0), -- Killer Frost
|
||||
(278815,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Lion's Grace
|
||||
(278840,0x00,4,0x00000000,0x00000000,0x00000000,0x00001000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Simmering Rage
|
||||
(278859,0x00,0,0x00000000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x3,0x2,0x403,0x0,0x0,0,0,0,0), -- Chill of the Runes
|
||||
(278951,0x00,10,0x00004000,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Soaring Shield
|
||||
(278991,0x00,4,0x00000400,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Callous Reprisal
|
||||
(279006,0x00,4,0x00000080,0x00000000,0x00000000,0x00000000,0x0,0x0,0x1,0x2,0x403,0x0,0x0,0,0,0,0), -- Deafening Crash
|
||||
(279193,0x00,4,0x00000000,0x00000000,0x00000000,0x00002000,0x0,0x0,0x4,0x2,0x0,0x0,0x0,0,0,0,0); -- Bloodsport
|
||||
|
||||
|
||||
DELETE FROM `spell_script_names` WHERE `ScriptName` IN ('spell_item_highfathers_machination','spell_item_seeping_scourgewing','spell_item_seeping_scourgewing_aoe_check','spell_item_azerite_fortification',
|
||||
'spell_item_strength_in_numbers','spell_item_blessed_portents','spell_item_concentrated_mending','spell_item_bracing_chill_proc','spell_item_bracing_chill_search_jump_target','spell_item_trample_the_weak',
|
||||
'spell_item_orbital_precision','spell_item_blur_of_talons','spell_item_divine_right');
|
||||
INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES
|
||||
(253287,'spell_item_highfathers_machination'),
|
||||
(253323,'spell_item_seeping_scourgewing'),
|
||||
(255861,'spell_item_seeping_scourgewing_aoe_check'),
|
||||
(277253,'spell_item_azerite_fortification'),
|
||||
(271548,'spell_item_strength_in_numbers'),
|
||||
(271843,'spell_item_blessed_portents'),
|
||||
(272260,'spell_item_concentrated_mending'),
|
||||
(272276,'spell_item_bracing_chill_proc'),
|
||||
(272436,'spell_item_bracing_chill_search_jump_target'),
|
||||
(272837,'spell_item_trample_the_weak'),
|
||||
(275514,'spell_item_orbital_precision'),
|
||||
(277966,'spell_item_blur_of_talons'),
|
||||
(278519,'spell_item_divine_right');
|
||||
364
src/server/scripts/Spells/spell_azerite.cpp
Normal file
364
src/server/scripts/Spells/spell_azerite.cpp
Normal file
@@ -0,0 +1,364 @@
|
||||
/*
|
||||
* This file is part of the TrinityCore Project. See AUTHORS file for Copyright information
|
||||
*
|
||||
* 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 (at your
|
||||
* option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "ScriptMgr.h"
|
||||
#include "AzeritePackets.h"
|
||||
#include "Containers.h"
|
||||
#include "Player.h"
|
||||
#include "Spell.h"
|
||||
#include "SpellAuraEffects.h"
|
||||
#include "SpellInfo.h"
|
||||
#include "SpellScript.h"
|
||||
|
||||
// 270658 - Azerite Fortification
|
||||
class spell_item_azerite_fortification : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_item_azerite_fortification);
|
||||
|
||||
bool CheckProc(AuraEffect const* /*aurEff*/, ProcEventInfo& eventInfo)
|
||||
{
|
||||
Spell const* procSpell = eventInfo.GetProcSpell();
|
||||
if (!procSpell)
|
||||
return false;
|
||||
|
||||
return procSpell->GetSpellInfo()->HasAura(SPELL_AURA_MOD_STUN)
|
||||
|| procSpell->GetSpellInfo()->HasAura(SPELL_AURA_MOD_ROOT)
|
||||
|| procSpell->GetSpellInfo()->HasAura(SPELL_AURA_MOD_ROOT_2)
|
||||
|| procSpell->GetSpellInfo()->HasEffect(SPELL_EFFECT_KNOCK_BACK);
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
DoCheckEffectProc += AuraCheckEffectProcFn(spell_item_azerite_fortification::CheckProc, EFFECT_0, SPELL_AURA_PROC_TRIGGER_SPELL);
|
||||
}
|
||||
};
|
||||
|
||||
enum StrengthInNumbers
|
||||
{
|
||||
SPELL_STRENGTH_IN_NUMBERS_TRAIT = 271546,
|
||||
SPELL_STRENGTH_IN_NUMBERS_BUFF = 271550
|
||||
};
|
||||
|
||||
// 271548 - Strength in Numbers
|
||||
class spell_item_strength_in_numbers : public SpellScript
|
||||
{
|
||||
PrepareSpellScript(spell_item_strength_in_numbers);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
return ValidateSpellInfo({ SPELL_STRENGTH_IN_NUMBERS_TRAIT, SPELL_STRENGTH_IN_NUMBERS_BUFF });
|
||||
}
|
||||
|
||||
void TriggerHealthBuff()
|
||||
{
|
||||
if (AuraEffect const* trait = GetCaster()->GetAuraEffect(SPELL_STRENGTH_IN_NUMBERS_TRAIT, EFFECT_0, GetCaster()->GetGUID()))
|
||||
if (int64 enemies = GetUnitTargetCountForEffect(EFFECT_0))
|
||||
GetCaster()->CastSpell(GetCaster(), SPELL_STRENGTH_IN_NUMBERS_BUFF, CastSpellExtraArgs(TRIGGERED_FULL_MASK)
|
||||
.AddSpellMod(SPELLVALUE_BASE_POINT0, trait->GetAmount())
|
||||
.AddSpellMod(SPELLVALUE_AURA_STACK, enemies));
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
AfterHit += SpellHitFn(spell_item_strength_in_numbers::TriggerHealthBuff);
|
||||
}
|
||||
};
|
||||
|
||||
enum BlessedPortents
|
||||
{
|
||||
SPELL_BLESSED_PORTENTS_TRAIT = 267889,
|
||||
SPELL_BLESSED_PORTENTS_HEAL = 280052,
|
||||
};
|
||||
|
||||
// 271843 - Blessed Portents
|
||||
class spell_item_blessed_portents : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_item_blessed_portents);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
return ValidateSpellInfo({ SPELL_BLESSED_PORTENTS_TRAIT, SPELL_BLESSED_PORTENTS_HEAL });
|
||||
}
|
||||
|
||||
void CheckProc(AuraEffect* /*aurEff*/, DamageInfo& dmgInfo, uint32& /*absorbAmount*/)
|
||||
{
|
||||
if (GetTarget()->HealthBelowPctDamaged(50, dmgInfo.GetDamage()))
|
||||
{
|
||||
if (Unit* caster = GetCaster())
|
||||
if (AuraEffect const* trait = caster->GetAuraEffect(SPELL_BLESSED_PORTENTS_TRAIT, EFFECT_0, caster->GetGUID()))
|
||||
caster->CastSpell(GetTarget(), SPELL_BLESSED_PORTENTS_HEAL, CastSpellExtraArgs(TRIGGERED_FULL_MASK)
|
||||
.AddSpellMod(SPELLVALUE_BASE_POINT0, trait->GetAmount()));
|
||||
}
|
||||
else
|
||||
PreventDefaultAction();
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectAbsorb += AuraEffectAbsorbFn(spell_item_blessed_portents::CheckProc, EFFECT_0);
|
||||
}
|
||||
};
|
||||
|
||||
enum ConcentratedMending
|
||||
{
|
||||
SPELL_CONCENTRATED_MENDING_TRAIT = 267882,
|
||||
};
|
||||
|
||||
// 272260 - Concentrated Mending
|
||||
class spell_item_concentrated_mending : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_item_concentrated_mending);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
return ValidateSpellInfo({ SPELL_CONCENTRATED_MENDING_TRAIT });
|
||||
}
|
||||
|
||||
void RecalculateHealAmount(AuraEffect* aurEff)
|
||||
{
|
||||
if (Unit const* caster = GetCaster())
|
||||
if (AuraEffect const* trait = caster->GetAuraEffect(SPELL_CONCENTRATED_MENDING_TRAIT, EFFECT_0, caster->GetGUID()))
|
||||
aurEff->ChangeAmount(trait->GetAmount() * aurEff->GetTickNumber());
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectUpdatePeriodic += AuraEffectUpdatePeriodicFn(spell_item_concentrated_mending::RecalculateHealAmount, EFFECT_0, SPELL_AURA_PERIODIC_HEAL);
|
||||
}
|
||||
};
|
||||
|
||||
enum BracingChill
|
||||
{
|
||||
SPELL_BRACING_CHILL_TRAIT = 267884,
|
||||
SPELL_BRACING_CHILL = 272276,
|
||||
SPELL_BRACING_CHILL_HEAL = 272428,
|
||||
SPELL_BRACING_CHILL_SEARCH_JUMP_TARGET = 272436,
|
||||
};
|
||||
|
||||
// 272276 - Bracing Chill
|
||||
class spell_item_bracing_chill_proc : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_item_bracing_chill_proc);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
return ValidateSpellInfo({ SPELL_BRACING_CHILL_TRAIT, SPELL_BRACING_CHILL_HEAL, SPELL_BRACING_CHILL_SEARCH_JUMP_TARGET });
|
||||
}
|
||||
|
||||
bool CheckHealCaster(AuraEffect const* /*aurEff*/, ProcEventInfo& eventInfo)
|
||||
{
|
||||
return GetCasterGUID() == eventInfo.GetActor()->GetGUID();
|
||||
}
|
||||
|
||||
void HandleProc(AuraEffect* /*aurEff*/, ProcEventInfo& procInfo)
|
||||
{
|
||||
Unit* caster = procInfo.GetActor();
|
||||
if (!caster)
|
||||
return;
|
||||
|
||||
if (AuraEffect const* trait = caster->GetAuraEffect(SPELL_BRACING_CHILL_TRAIT, EFFECT_0, caster->GetGUID()))
|
||||
caster->CastSpell(procInfo.GetProcTarget(), SPELL_BRACING_CHILL_HEAL,
|
||||
CastSpellExtraArgs(TRIGGERED_FULL_MASK).AddSpellMod(SPELLVALUE_BASE_POINT0, trait->GetAmount()));
|
||||
|
||||
if (GetStackAmount() > 1)
|
||||
caster->CastSpell(nullptr, SPELL_BRACING_CHILL_SEARCH_JUMP_TARGET,
|
||||
CastSpellExtraArgs(TRIGGERED_FULL_MASK).AddSpellMod(SPELLVALUE_AURA_STACK, GetStackAmount() - 1));
|
||||
|
||||
Remove();
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
DoCheckEffectProc += AuraCheckEffectProcFn(spell_item_bracing_chill_proc::CheckHealCaster, EFFECT_0, SPELL_AURA_DUMMY);
|
||||
AfterEffectProc += AuraEffectProcFn(spell_item_bracing_chill_proc::HandleProc, EFFECT_0, SPELL_AURA_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
// 272436 - Bracing Chill
|
||||
class spell_item_bracing_chill_search_jump_target : public SpellScript
|
||||
{
|
||||
PrepareSpellScript(spell_item_bracing_chill_search_jump_target);
|
||||
|
||||
void FilterTarget(std::list<WorldObject*>& targets)
|
||||
{
|
||||
if (targets.empty())
|
||||
return;
|
||||
|
||||
std::list<WorldObject*> copy = targets;
|
||||
Trinity::Containers::RandomResize(copy, [&](WorldObject* target)
|
||||
{
|
||||
return target->IsUnit() && !target->ToUnit()->HasAura(SPELL_BRACING_CHILL, GetCaster()->GetGUID());
|
||||
}, 1);
|
||||
|
||||
if (!copy.empty())
|
||||
{
|
||||
// found a preferred target, use that
|
||||
targets.swap(copy);
|
||||
return;
|
||||
}
|
||||
|
||||
WorldObject* target = Trinity::Containers::SelectRandomContainerElement(targets);
|
||||
targets.clear();
|
||||
targets.push_back(target);
|
||||
}
|
||||
|
||||
void MoveAura(SpellEffIndex /*effIndex*/)
|
||||
{
|
||||
GetCaster()->CastSpell(GetHitUnit(), SPELL_BRACING_CHILL,
|
||||
CastSpellExtraArgs(TRIGGERED_FULL_MASK).AddSpellMod(SPELLVALUE_AURA_STACK, GetSpellValue()->AuraStackAmount));
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_item_bracing_chill_search_jump_target::FilterTarget, EFFECT_0, TARGET_UNIT_DEST_AREA_ALLY);
|
||||
OnEffectHitTarget += SpellEffectFn(spell_item_bracing_chill_search_jump_target::MoveAura, EFFECT_0, SPELL_EFFECT_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
// 272837 - Trample the Weak
|
||||
class spell_item_trample_the_weak : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_item_trample_the_weak);
|
||||
|
||||
bool CheckHealthPct(AuraEffect const* /*aurEff*/, ProcEventInfo& eventInfo)
|
||||
{
|
||||
return eventInfo.GetActor()->GetHealthPct() > eventInfo.GetActionTarget()->GetHealthPct();
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
DoCheckEffectProc += AuraCheckEffectProcFn(spell_item_trample_the_weak::CheckHealthPct, EFFECT_0, SPELL_AURA_PROC_TRIGGER_SPELL);
|
||||
}
|
||||
};
|
||||
|
||||
enum OrbitalPrecision
|
||||
{
|
||||
SPELL_MAGE_FROZEN_ORB = 84714
|
||||
};
|
||||
|
||||
// 275514 - Orbital Precision
|
||||
class spell_item_orbital_precision : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_item_orbital_precision);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
return ValidateSpellInfo({ SPELL_MAGE_FROZEN_ORB });
|
||||
}
|
||||
|
||||
bool CheckFrozenOrbActive(AuraEffect const* /*aurEff*/, ProcEventInfo& eventInfo)
|
||||
{
|
||||
return eventInfo.GetActor()->GetAreaTrigger(SPELL_MAGE_FROZEN_ORB) != nullptr;
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
DoCheckEffectProc += AuraCheckEffectProcFn(spell_item_orbital_precision::CheckFrozenOrbActive, EFFECT_0, SPELL_AURA_PROC_TRIGGER_SPELL);
|
||||
}
|
||||
};
|
||||
|
||||
enum BlurOfTalons
|
||||
{
|
||||
SPELL_HUNTER_COORDINATED_ASSAULT = 266779
|
||||
};
|
||||
|
||||
// 277966 - Blur of Talons
|
||||
class spell_item_blur_of_talons : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_item_blur_of_talons);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
return ValidateSpellInfo({ SPELL_HUNTER_COORDINATED_ASSAULT });
|
||||
}
|
||||
|
||||
bool CheckCoordinatedAssaultActive(AuraEffect const* /*aurEff*/, ProcEventInfo& eventInfo)
|
||||
{
|
||||
return eventInfo.GetActor()->HasAura(SPELL_HUNTER_COORDINATED_ASSAULT, eventInfo.GetActor()->GetGUID());
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
DoCheckEffectProc += AuraCheckEffectProcFn(spell_item_blur_of_talons::CheckCoordinatedAssaultActive, EFFECT_0, SPELL_AURA_PROC_TRIGGER_SPELL);
|
||||
}
|
||||
};
|
||||
|
||||
// 278519 - Divine Right
|
||||
class spell_item_divine_right : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_item_divine_right);
|
||||
|
||||
bool CheckHealthPct(AuraEffect const* /*aurEff*/, ProcEventInfo& eventInfo)
|
||||
{
|
||||
return eventInfo.GetProcTarget()->HasAuraState(AURA_STATE_WOUNDED_20_PERCENT, eventInfo.GetSpellInfo(), eventInfo.GetActor());
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
DoCheckEffectProc += AuraCheckEffectProcFn(spell_item_divine_right::CheckHealthPct, EFFECT_0, SPELL_AURA_PROC_TRIGGER_SPELL);
|
||||
}
|
||||
};
|
||||
|
||||
// 277253 - Heart of Azeroth
|
||||
class spell_item_heart_of_azeroth : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_item_heart_of_azeroth);
|
||||
|
||||
void SetEquippedFlag(AuraEffect const* /*effect*/, AuraEffectHandleModes /*mode*/)
|
||||
{
|
||||
SetState(true);
|
||||
}
|
||||
|
||||
void ClearEquippedFlag(AuraEffect const* /*effect*/, AuraEffectHandleModes /*mode*/)
|
||||
{
|
||||
SetState(false);
|
||||
}
|
||||
|
||||
void SetState(bool equipped) const
|
||||
{
|
||||
if (Player* target = GetTarget()->ToPlayer())
|
||||
{
|
||||
target->ApplyAllAzeriteEmpoweredItemMods(equipped);
|
||||
|
||||
WorldPackets::Azerite::PlayerAzeriteItemEquippedStatusChanged statusChanged;
|
||||
statusChanged.IsHeartEquipped = equipped;
|
||||
target->SendDirectMessage(statusChanged.Write());
|
||||
}
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectApply += AuraEffectApplyFn(spell_item_heart_of_azeroth::SetEquippedFlag, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
|
||||
OnEffectRemove += AuraEffectRemoveFn(spell_item_heart_of_azeroth::ClearEquippedFlag, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
|
||||
}
|
||||
};
|
||||
|
||||
void AddSC_azerite_item_spell_scripts()
|
||||
{
|
||||
RegisterSpellScript(spell_item_azerite_fortification);
|
||||
RegisterSpellScript(spell_item_strength_in_numbers);
|
||||
RegisterSpellScript(spell_item_blessed_portents);
|
||||
RegisterSpellScript(spell_item_concentrated_mending);
|
||||
RegisterSpellScript(spell_item_bracing_chill_proc);
|
||||
RegisterSpellScript(spell_item_bracing_chill_search_jump_target);
|
||||
RegisterSpellScript(spell_item_trample_the_weak);
|
||||
RegisterSpellScript(spell_item_orbital_precision);
|
||||
RegisterSpellScript(spell_item_blur_of_talons);
|
||||
RegisterSpellScript(spell_item_divine_right);
|
||||
|
||||
RegisterSpellScript(spell_item_heart_of_azeroth);
|
||||
}
|
||||
@@ -22,7 +22,6 @@
|
||||
*/
|
||||
|
||||
#include "ScriptMgr.h"
|
||||
#include "AzeritePackets.h"
|
||||
#include "Battleground.h"
|
||||
#include "Containers.h"
|
||||
#include "Creature.h"
|
||||
@@ -4641,37 +4640,90 @@ class spell_item_lightblood_elixir : public AuraScript
|
||||
}
|
||||
};
|
||||
|
||||
// 277253 - Heart of Azeroth
|
||||
class spell_item_heart_of_azeroth : public AuraScript
|
||||
enum HighfathersMachination
|
||||
{
|
||||
PrepareAuraScript(spell_item_heart_of_azeroth);
|
||||
SPELL_HIGHFATHERS_TIMEKEEPING_HEAL = 253288
|
||||
};
|
||||
|
||||
void SetEquippedFlag(AuraEffect const* /*effect*/, AuraEffectHandleModes /*mode*/)
|
||||
// 253287 - Highfather's Timekeeping
|
||||
class spell_item_highfathers_machination : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_item_highfathers_machination);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
SetState(true);
|
||||
return ValidateSpellInfo({ SPELL_HIGHFATHERS_TIMEKEEPING_HEAL });
|
||||
}
|
||||
|
||||
void ClearEquippedFlag(AuraEffect const* /*effect*/, AuraEffectHandleModes /*mode*/)
|
||||
bool CheckHealth(AuraEffect const* aurEff, ProcEventInfo& eventInfo)
|
||||
{
|
||||
SetState(false);
|
||||
return eventInfo.GetDamageInfo() && GetTarget()->HealthBelowPctDamaged(aurEff->GetAmount(), eventInfo.GetDamageInfo()->GetDamage());
|
||||
}
|
||||
|
||||
void SetState(bool equipped) const
|
||||
void Heal(AuraEffect* aurEff, ProcEventInfo& /*procInfo*/)
|
||||
{
|
||||
if (Player* target = GetTarget()->ToPlayer())
|
||||
{
|
||||
target->ApplyAllAzeriteEmpoweredItemMods(equipped);
|
||||
|
||||
WorldPackets::Azerite::PlayerAzeriteItemEquippedStatusChanged statusChanged;
|
||||
statusChanged.IsHeartEquipped = equipped;
|
||||
target->SendDirectMessage(statusChanged.Write());
|
||||
}
|
||||
PreventDefaultAction();
|
||||
if (Unit* caster = GetCaster())
|
||||
caster->CastSpell(GetTarget(), SPELL_HIGHFATHERS_TIMEKEEPING_HEAL, aurEff);
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectApply += AuraEffectApplyFn(spell_item_heart_of_azeroth::SetEquippedFlag, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
|
||||
OnEffectRemove += AuraEffectRemoveFn(spell_item_heart_of_azeroth::ClearEquippedFlag, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
|
||||
DoCheckEffectProc += AuraCheckEffectProcFn(spell_item_highfathers_machination::CheckHealth, EFFECT_0, SPELL_AURA_DUMMY);
|
||||
OnEffectProc += AuraEffectProcFn(spell_item_highfathers_machination::Heal, EFFECT_0, SPELL_AURA_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
enum SeepingScourgewing
|
||||
{
|
||||
SPELL_SHADOW_STRIKE_AOE_CHECK = 255861,
|
||||
SPELL_ISOLATED_STRIKE = 255609
|
||||
};
|
||||
|
||||
// 253323 - Shadow Strike
|
||||
class spell_item_seeping_scourgewing : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_item_seeping_scourgewing);
|
||||
|
||||
bool Validate(SpellInfo const* /*spellInfo*/) override
|
||||
{
|
||||
return ValidateSpellInfo({ SPELL_SHADOW_STRIKE_AOE_CHECK });
|
||||
}
|
||||
|
||||
void TriggerIsolatedStrikeCheck(AuraEffect* aurEff, ProcEventInfo& eventInfo)
|
||||
{
|
||||
GetTarget()->CastSpell(eventInfo.GetProcTarget(), SPELL_SHADOW_STRIKE_AOE_CHECK,
|
||||
CastSpellExtraArgs(aurEff).SetTriggeringSpell(eventInfo.GetProcSpell()));
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
AfterEffectProc += AuraEffectProcFn(spell_item_seeping_scourgewing::TriggerIsolatedStrikeCheck, EFFECT_0, SPELL_AURA_PROC_TRIGGER_SPELL);
|
||||
}
|
||||
};
|
||||
|
||||
// 255861 - Shadow Strike
|
||||
class spell_item_seeping_scourgewing_aoe_check : public SpellScript
|
||||
{
|
||||
PrepareSpellScript(spell_item_seeping_scourgewing_aoe_check);
|
||||
|
||||
void TriggerAdditionalDamage()
|
||||
{
|
||||
if (GetUnitTargetCountForEffect(EFFECT_0) > 1)
|
||||
return;
|
||||
|
||||
CastSpellExtraArgs args;
|
||||
args.TriggerFlags = TRIGGERED_FULL_MASK;
|
||||
args.OriginalCastId = GetSpell()->m_originalCastId;
|
||||
if (GetSpell()->m_castItemLevel >= 0)
|
||||
args.OriginalCastItemLevel = GetSpell()->m_castItemLevel;
|
||||
|
||||
GetCaster()->CastSpell(GetHitUnit(), SPELL_ISOLATED_STRIKE, args);
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
AfterHit += SpellHitFn(spell_item_seeping_scourgewing_aoe_check::TriggerAdditionalDamage);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -4820,6 +4872,7 @@ void AddSC_item_spell_scripts()
|
||||
RegisterSpellScript(spell_item_set_march_of_the_legion);
|
||||
RegisterSpellScript(spell_item_seal_of_darkshire_nobility);
|
||||
RegisterSpellScript(spell_item_lightblood_elixir);
|
||||
|
||||
RegisterSpellScript(spell_item_heart_of_azeroth);
|
||||
RegisterSpellScript(spell_item_highfathers_machination);
|
||||
RegisterSpellScript(spell_item_seeping_scourgewing);
|
||||
RegisterSpellScript(spell_item_seeping_scourgewing_aoe_check);
|
||||
}
|
||||
|
||||
@@ -32,6 +32,7 @@ void AddSC_warlock_spell_scripts();
|
||||
void AddSC_warrior_spell_scripts();
|
||||
void AddSC_quest_spell_scripts();
|
||||
void AddSC_item_spell_scripts();
|
||||
void AddSC_azerite_item_spell_scripts();
|
||||
|
||||
// The name of this function should match:
|
||||
// void Add${NameOfDirectory}Scripts()
|
||||
@@ -53,4 +54,5 @@ void AddSpellsScripts()
|
||||
AddSC_warrior_spell_scripts();
|
||||
AddSC_quest_spell_scripts();
|
||||
AddSC_item_spell_scripts();
|
||||
AddSC_azerite_item_spell_scripts();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user