[9364] Update diminishing categories.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
This commit is contained in:
laise 2010-02-12 14:04:29 +03:00 committed by VladimirMangos
parent 6fbe7f4307
commit 71d0989db3
3 changed files with 36 additions and 34 deletions

View file

@ -2429,14 +2429,12 @@ enum DiminishingGroup
DIMINISHING_TRIGGER_STUN, // By aura proced stuns, usualy chance on hit talents
DIMINISHING_CONTROL_ROOT, // Immobilizing effects from casted spells
DIMINISHING_TRIGGER_ROOT, // Immobilizing effects from triggered spells like Frostbite
DIMINISHING_FEAR_BLIND, // Fears & blind
DIMINISHING_CHARM,
DIMINISHING_POLYMORPH_GOUGE_SAP,
// Warlock Specific
DIMINISHING_DEATHCOIL, // Death Coil Diminish only with another Death Coil
// Druid Specific
DIMINISHING_CYCLONE, // From 2.3.0
// Shared Class Specific
DIMINISHING_FEAR_CHARM_BLIND, // Fears & charm and Blind
DIMINISHING_DISORIENT,
DIMINISHING_HORROR,
// Druid Specific
DIMINISHING_CYCLONE,
DIMINISHING_CHEAPSHOT_POUNCE,
DIMINISHING_DISARM, // From 2.3.0
DIMINISHING_SILENCE, // From 2.3.0

View file

@ -3325,11 +3325,16 @@ DiminishingGroup GetDiminishingReturnsGroupForSpell(SpellEntry const* spellproto
if (spellproto->Mechanic == MECHANIC_TURN)
return DIMINISHING_NONE;
break;
case SPELLFAMILY_MAGE:
// Dragon's Breath
if (spellproto->SpellIconID == 1548)
return DIMINISHING_DISORIENT;
break;
case SPELLFAMILY_ROGUE:
{
// Blind
if (spellproto->SpellFamilyFlags & UI64LIT(0x00001000000))
return DIMINISHING_FEAR_BLIND;
return DIMINISHING_FEAR_CHARM_BLIND;
// Cheap Shot
else if (spellproto->SpellFamilyFlags & UI64LIT(0x00000000400))
return DIMINISHING_CHEAPSHOT_POUNCE;
@ -3338,14 +3343,18 @@ DiminishingGroup GetDiminishingReturnsGroupForSpell(SpellEntry const* spellproto
return DIMINISHING_LIMITONLY;
break;
}
case SPELLFAMILY_HUNTER:
{
// Freezing Trap & Freezing Arrow & Wyvern Sting
if (spellproto->SpellIconID == 180 || spellproto->SpellIconID == 1721)
return DIMINISHING_DISORIENT;
break;
}
case SPELLFAMILY_WARLOCK:
{
// Curses/etc
if (spellproto->SpellFamilyFlags & UI64LIT(0x00080000000))
return DIMINISHING_LIMITONLY;
// Seduction
else if (spellproto->SpellFamilyFlags & UI64LIT(0x00040000000))
return DIMINISHING_CHARM;
break;
}
case SPELLFAMILY_DRUID:
@ -3373,13 +3382,16 @@ DiminishingGroup GetDiminishingReturnsGroupForSpell(SpellEntry const* spellproto
// Vampiric Embrace
if ((spellproto->SpellFamilyFlags & UI64LIT(0x00000000004)) && spellproto->SpellIconID == 150)
return DIMINISHING_LIMITONLY;
// Shackle Undead
else if (spellproto->SpellIconID == 27)
return DIMINISHING_DISORIENT;
break;
}
case SPELLFAMILY_DEATHKNIGHT:
{
// Hungering Cold (no flags)
if (spellproto->SpellIconID == 2797)
return DIMINISHING_POLYMORPH_GOUGE_SAP;
return DIMINISHING_DISORIENT;
break;
}
default:
@ -3393,28 +3405,22 @@ DiminishingGroup GetDiminishingReturnsGroupForSpell(SpellEntry const* spellproto
if (mechanic & ((1<<(MECHANIC_STUN-1))|(1<<(MECHANIC_SHACKLE-1))))
return triggered ? DIMINISHING_TRIGGER_STUN : DIMINISHING_CONTROL_STUN;
if (mechanic & (1<<(MECHANIC_SLEEP-1)))
if (mechanic & ((1<<(MECHANIC_SLEEP-1))|(1<<(MECHANIC_FREEZE-1))))
return DIMINISHING_FREEZE_SLEEP;
if (mechanic & (1<<(MECHANIC_POLYMORPH-1)))
return DIMINISHING_POLYMORPH_GOUGE_SAP;
if (mechanic & ((1<<(MECHANIC_KNOCKOUT-1))|(1<<(MECHANIC_POLYMORPH-1))|(1<<(MECHANIC_SAPPED-1))))
return DIMINISHING_DISORIENT;
if (mechanic & (1<<(MECHANIC_ROOT-1)))
return triggered ? DIMINISHING_TRIGGER_ROOT : DIMINISHING_CONTROL_ROOT;
if (mechanic & ((1<<(MECHANIC_FEAR-1))|(1<<(MECHANIC_TURN-1))))
return DIMINISHING_FEAR_BLIND;
if (mechanic & (1<<(MECHANIC_CHARM-1)))
return DIMINISHING_CHARM;
if (mechanic & (1<<(MECHANIC_SILENCE-1)))
if (mechanic & ((1<<(MECHANIC_FEAR-1))|(1<<(MECHANIC_CHARM-1))))
return DIMINISHING_FEAR_CHARM_BLIND;
if (mechanic & ((1<<(MECHANIC_SILENCE-1))|(1<<(MECHANIC_INTERRUPT-1))))
return DIMINISHING_SILENCE;
if (mechanic & (1<<(MECHANIC_DISARM-1)))
return DIMINISHING_DISARM;
if (mechanic & (1<<(MECHANIC_FREEZE-1)))
return DIMINISHING_FREEZE_SLEEP;
if (mechanic & ((1<<(MECHANIC_KNOCKOUT-1))|(1<<(MECHANIC_SAPPED-1))))
return DIMINISHING_POLYMORPH_GOUGE_SAP;
if (mechanic & (1<<(MECHANIC_BANISH-1)))
return DIMINISHING_BANISH;
if (mechanic & (1<<(MECHANIC_HORROR-1)))
return DIMINISHING_DEATHCOIL;
return DIMINISHING_HORROR;
return DIMINISHING_NONE;
}
@ -3470,9 +3476,8 @@ bool IsDiminishingReturnsGroupDurationLimited(DiminishingGroup group)
case DIMINISHING_TRIGGER_STUN:
case DIMINISHING_CONTROL_ROOT:
case DIMINISHING_TRIGGER_ROOT:
case DIMINISHING_FEAR_BLIND:
case DIMINISHING_CHARM:
case DIMINISHING_POLYMORPH_GOUGE_SAP:
case DIMINISHING_FEAR_CHARM_BLIND:
case DIMINISHING_DISORIENT:
case DIMINISHING_CHEAPSHOT_POUNCE:
case DIMINISHING_FREEZE_SLEEP:
case DIMINISHING_CYCLONE:
@ -3492,18 +3497,17 @@ DiminishingReturnsType GetDiminishingReturnsGroupType(DiminishingGroup group)
case DIMINISHING_CYCLONE:
case DIMINISHING_TRIGGER_STUN:
case DIMINISHING_CONTROL_STUN:
case DIMINISHING_CHEAPSHOT_POUNCE:
return DRTYPE_ALL;
case DIMINISHING_CONTROL_ROOT:
case DIMINISHING_TRIGGER_ROOT:
case DIMINISHING_FEAR_BLIND:
case DIMINISHING_CHARM:
case DIMINISHING_POLYMORPH_GOUGE_SAP:
case DIMINISHING_FEAR_CHARM_BLIND:
case DIMINISHING_DISORIENT:
case DIMINISHING_SILENCE:
case DIMINISHING_DISARM:
case DIMINISHING_DEATHCOIL:
case DIMINISHING_HORROR:
case DIMINISHING_FREEZE_SLEEP:
case DIMINISHING_BANISH:
case DIMINISHING_CHEAPSHOT_POUNCE:
return DRTYPE_PLAYER;
default:
break;

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__
#define __REVISION_NR_H__
#define REVISION_NR "9363"
#define REVISION_NR "9364"
#endif // __REVISION_NR_H__