Jump to content

[fix][8847] Heart of the Crusader


Auntie Mangos

Recommended Posts

What bug does the patch fix? What features does the patch add?

- fixes Heart of the Crusader triggering right spells and stacking with judgements

For which repository revision was the patch created?

- 8769

Is there a thread in the bug report section or at lighthouse? If yes, please add a link to the thread.

- http://getmangos.eu/community/viewtopic.php?id=5779

- http://getmangos.eu/community/viewtopic.php?id=9756

Who has been writing this patch? Please include either forum user names or email addresses.

- me

diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp
index 7c41423..c115f0c 100644
--- a/src/game/SpellMgr.cpp
+++ b/src/game/SpellMgr.cpp
@@ -294,7 +294,7 @@ SpellSpecific GetSpellSpecific(uint32 spellId)
            if (spellInfo->SpellFamilyFlags & UI64LIT(0x0000000000002190))
                return SPELL_HAND;

-            if ((spellInfo->SpellFamilyFlags & UI64LIT(0x00000820180400)) && (spellInfo->AttributesEx3 & 0x200))
+            if ((spellInfo->SpellFamilyFlags & UI64LIT(0x00000820180400)) && (spellInfo->AttributesEx3 & 0x200) && (spellInfo->SpellIconID != 237))
                return SPELL_JUDGEMENT;

            // only paladin auras have this (for palaldin class family)
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index 3703b58..0e6d14e 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -6028,6 +6028,24 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura* triggeredByAu

                    break;
                }
+                // Heart of the Crusader (Rank 1)
+                case 20335:
+                {
+                    triggered_spell_id = 21183;
+                    break;
+                }
+                // Heart of the Crusader (Rank 2)
+                case 20336:
+                {
+                    triggered_spell_id = 54498;
+                    break;
+                }
+                // Heart of the Crusader (Rank 3)
+                case 20337:
+                {
+                    triggered_spell_id = 54499;
+                    break;
+                }
                // Glyph of Divinity
                case 54939:
                {

SQL:

delete from spell_proc_event where entry in (20335,20336,20337);

-- (20335) Heart of the Crusader (Rank 1)
DELETE FROM `spell_proc_event` WHERE `entry` IN (20335);
INSERT INTO `spell_proc_event` VALUES
(20335, 0x00, 10, 0x80000000000800000, 0x00000000, 0x00000000, 0x00000010, 0x00000000, 0.000000, 100.000000, 0);

insert into spell_chain values (20335, 0, 20335, 1, 0);
insert into spell_chain values (20336, 20335, 20335, 2, 0);
insert into spell_chain values (20337, 20336, 20335, 3, 0);

yeah SpellFamilyMask0 is too long but idk how else it can work for all judgements ...and idk why Heart of the Crusader has judgement spell attribute....

Link to comment
Share on other sites

  • 39 years later...
mysql> INSERT INTO `spell_proc_event` VALUES

(20335, 0x00, 10, 0x80000000000800000, 0x00000000, 0x00000000, 0x00000010, 0x00000000, 0.000000, 100.000000, 0);

ERROR 1264 (22003): Out of range value for column 'SpellFamilyMask0' at row 1

mysql>

so, what is the correct value for 'SpellFamilyMask0' ?

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use