aboutsummaryrefslogtreecommitdiff
path: root/src/game/Unit.cpp
diff options
context:
space:
mode:
authorMachiavelli <none@none>2009-10-06 17:09:11 +0200
committerMachiavelli <none@none>2009-10-06 17:09:11 +0200
commit2cd66e90c24e85b110c70f3563cf2c7e03fa9e6f (patch)
tree2d4f3f1d80bccc4d70590070014e1d1c4d04b80b /src/game/Unit.cpp
parent1bd3f9604cae7ba47368b85a0fcfe024768c8944 (diff)
* Do not let Seal of Command proc on anything other than a melee swing.
* Fix Judgement of Blood/Martyr dummy by nos4r2zod * Fix Judgement of Command dummy by nos4r2zod --HG-- branch : trunk
Diffstat (limited to 'src/game/Unit.cpp')
-rw-r--r--src/game/Unit.cpp52
1 files changed, 32 insertions, 20 deletions
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index 98760807e4f..5f0f1fd27b3 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -6307,35 +6307,19 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger
// Seal of Blood do damage trigger
case 31892:
{
- if (effIndex == 0) // 0 effect - is proc on enemy
+ if (effIndex == 0 && procFlag & PROC_FLAG_SUCCESSFUL_MELEE_HIT) // 0 effect - is proc on enemy
triggered_spell_id = 31893;
- else if (effIndex == 1) // 1 effect - is proc on self
- {
- // add spell damage from prev effect (27%)
- damage += CalculateDamage(BASE_ATTACK, false) * 27 / 100;
- basepoints0 = triggerAmount * damage / 100;
- target = this;
- triggered_spell_id = 32221;
- }
else
- return false;
+ return true;
break;
}
// Seal of the Martyr do damage trigger
case 53720:
{
- if (effIndex == 0) // 0 effect - is proc on enemy
+ if (effIndex == 0 && procFlag & PROC_FLAG_SUCCESSFUL_MELEE_HIT ) // 0 effect - is proc on enemy
triggered_spell_id = 53719;
- else if (effIndex == 1) // 1 effect - is proc on self
- {
- // add spell damage from prev effect (27%)
- damage += CalculateDamage(BASE_ATTACK, false) * 27 / 100;
- basepoints0 = triggerAmount * damage / 100;
- target = this;
- triggered_spell_id = 53718;
- }
else
- return false;
+ return true;
break;
}
// Paladin Tier 6 Trinket (Ashtongue Talisman of Zeal)
@@ -7150,6 +7134,24 @@ bool Unit::HandleAuraProc(Unit *pVictim, uint32 damage, Aura* triggeredByAura, S
}
break;
}
+
+ case SPELLFAMILY_PALADIN:
+ {
+ // Seal of Command should only proc from melee hits.
+ if(dummySpell->Id == 20375)
+ {
+ if (procFlag && ( procFlag & PROC_FLAG_SUCCESSFUL_MELEE_HIT ))
+ {
+ *handled = false;
+ return true;
+ }
+ else
+ {
+ *handled = true;
+ return false;
+ }
+ }
+ }
}
return false;
}
@@ -9641,6 +9643,16 @@ bool Unit::isSpellCrit(Unit *pVictim, SpellEntry const *spellProto, SpellSchoolM
break;
}
break;
+ case SPELLFAMILY_PALADIN:
+ // Judgement of Command proc always crits on stunned target
+ if(spellProto->SpellFamilyName == SPELLFAMILY_PALADIN)
+ {
+ if(spellProto->SpellFamilyFlags[0] & 0x0000000000800000LL && spellProto->SpellIconID == 561)
+ {
+ if(pVictim->hasUnitState(UNIT_STAT_STUNNED))
+ return true;
+ }
+ }
}
}
case SPELL_DAMAGE_CLASS_RANGED: