fix(Core/Spell): spell immunity system and new separate immunities table (#24956)
Co-authored-by: ariel- <ariel-@users.noreply.github.com> Co-authored-by: Keader <keader.android@gmail.com> Co-authored-by: Shauren <shauren.trinity@gmail.com>
This commit is contained in:
parent
0e0ff86e3e
commit
a90570a2de
26 changed files with 1655 additions and 914 deletions
|
|
@ -0,0 +1,23 @@
|
|||
--
|
||||
CREATE TABLE `creature_immunities` (
|
||||
`ID` int NOT NULL,
|
||||
`SchoolMask` tinyint NOT NULL DEFAULT '0',
|
||||
`DispelTypeMask` smallint NOT NULL DEFAULT '0',
|
||||
`MechanicsMask` bigint NOT NULL DEFAULT '0',
|
||||
`Effects` mediumtext COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`Auras` mediumtext COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`ImmuneAoE` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`ImmuneChain` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`Comment` mediumtext COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
PRIMARY KEY (`ID`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
ALTER TABLE `creature_template` ADD `CreatureImmunitiesId` int NOT NULL DEFAULT '0' AFTER `RegenHealth`;
|
||||
|
||||
UPDATE `creature_template` SET `CreatureImmunitiesId`=COALESCE((SELECT ci.`ID` FROM `creature_immunities` ci WHERE ci.`SchoolMask`=`spell_school_immune_mask` AND ci.`MechanicsMask`=`mechanic_immune_mask`*2),0);
|
||||
|
||||
ALTER TABLE `creature_template`
|
||||
DROP `spell_school_immune_mask`,
|
||||
DROP `mechanic_immune_mask`;
|
||||
|
||||
ALTER TABLE `creature_template` DROP COLUMN `scale`;
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
--
|
||||
|
||||
DELETE FROM `creature_immunities` WHERE `ID` IN (95,96,315,477,679,878,1537,1557,1614,1615,1630,1632,1664,1676,1682,1693,1694,1695,1733);
|
||||
INSERT INTO `creature_immunities` (`ID`, `SchoolMask`, `DispelTypeMask`, `MechanicsMask`, `Effects`, `Auras`, `ImmuneAoE`, `ImmuneChain`, `Comment`) VALUES
|
||||
(95, 0, 0, 32, '', '', 0, 0, 'Immune to Fear'),
|
||||
(96, 0, 0, 1234599598, '', '5,7,12,26,33', 0, 0, 'Immune to CC (Free Friend, Uncontrollable Frenzy, Warlord\'s Presence)'),
|
||||
(315, 127, 0, 0, '', '', 0, 0, 'Immune to damage'),
|
||||
(477, 0, 0, 68719476736, '114', '11', 0, 0, 'Immune to Taunt'),
|
||||
(679, 0, 0, 1234599078, '', '5,7,12,26,33', 0, 0, 'Immune to CC'),
|
||||
(878, 0, 0, 4096, '', '12', 0, 0, 'Immune to Stun'),
|
||||
(1537, 0, 0, 32, '', '7', 0, 0, 'Immune to Fear'),
|
||||
(1557, 0, 0, 1234599078, '98,124,144,145', '', 0, 0, 'Immune CC+Stun+Move'),
|
||||
(1614, 0, 0, 68719476736, '114', '11', 0, 0, 'Immune to Taunt'),
|
||||
(1615, 0, 0, 1301707942, '68', '5,7,12,26,27,33,60', 0, 0, 'Immune to CC+Interrupt'),
|
||||
(1630, 0, 0, 69954075814, '114', '5,7,11,12,26,33', 0, 0, 'Immune to CC+Taunt'),
|
||||
(1632, 0, 0, 584472182, '', '', 0, 0, 'Immune to hard CC'),
|
||||
(1664, 0, 0, 2176, '', '', 0, 0, 'Immune to slow'),
|
||||
(1676, 0, 0, 570425344, '', '', 0, 0, 'Immune to immunities'),
|
||||
(1682, 0, 0, 4096, '', '', 0, 0, 'Immune to Stun'),
|
||||
(1693, 0, 0, 584472182, '68', '', 0, 0, 'Immune to hard CC+Interrupt'),
|
||||
(1694, 0, 0, 68719476736, '114', '11', 0, 0, 'Immune to Taunt'),
|
||||
(1695, 0, 0, 4096, '', '12', 0, 0, 'Immune to Stun'),
|
||||
(1733, 0, 0, 1234599078, '98,124,144,145', '', 0, 0, 'Immune CC+Stun+Move');
|
||||
|
||||
DELETE FROM `creature_immunities` WHERE `ID` IN (1762,1771,1794,1799,1808,1835,1887,1893,1944,1964,1971);
|
||||
INSERT INTO `creature_immunities` (`ID`, `SchoolMask`, `DispelTypeMask`, `MechanicsMask`, `Effects`, `Auras`, `ImmuneAoE`, `ImmuneChain`, `Comment`) VALUES
|
||||
(1762, 0, 4, 0, '', '', 0, 0, 'Immune to Curses'),
|
||||
(1771, 0, 0, 0, '', '', 1, 0, 'Immune to AoE'),
|
||||
(1794, 0, 0, 67108864, '68', '', 0, 0, 'Immune to Interrupts'),
|
||||
(1799, 0, 0, 67109376, '68', '27,60', 0, 0, 'Immune to Interrupts+Silence'),
|
||||
(1808, 0, 0, 0, '98,124,144,145', '', 0, 0, 'Immune to knockback'),
|
||||
(1835, 0, 0, 1075183616, '', '', 0, 0, 'Immune to polymorph+banish+shackle+sap'),
|
||||
(1887, 0, 0, 0, '98,124,144,145', '', 0, 0, 'Immune to knockback'),
|
||||
(1893, 0, 0, 1091728546, '', '', 0, 0, 'Immune to Charm+Fear+Freeze+Horror+Knockout+Polymorph+Root+Sap+Shackle+Sleep+Stun'),
|
||||
(1944, 0, 0, 68719476736, '114', '11', 0, 0, 'Immune to Taunt'),
|
||||
(1964, 0, 0, 67109376, '68', '27,60', 0, 0, 'Immune to Interrupts+Silence'),
|
||||
(1971, 0, 0, 4096, '', '', 0, 0, 'Immune to Stun');
|
||||
Loading…
Add table
Add a link
Reference in a new issue