Invisible/Hide mechanics when cast on

Updated mechanics to be consistent with live regarding how invisible breaks when the client is the target of a spell.
Invisible will drop whenever a client is hit with a detrimental spell, regardless of if resisted, if it does damage or AOE.
Hide skill now also follows the same rules as above.
Implemented support for Rogue AA - Nerves of Steel which gives a chance for hide NOT to break
when client is hit with an AOE spell.
This commit is contained in:
KayenEQ
2015-10-10 15:16:49 -04:00
parent aae073f588
commit 261b6a4623
11 changed files with 102 additions and 8 deletions
+10
View File
@@ -1452,6 +1452,11 @@ void Mob::ApplyAABonuses(const AA::Rank &rank, StatBonuses *newbon)
newbon->TradeSkillMastery = base1;
break;
case SE_NoBreakAESneak:
if (newbon->NoBreakAESneak < base1)
newbon->NoBreakAESneak = base1;
break;
// to do
case SE_PetDiscipline:
break;
@@ -3188,6 +3193,11 @@ void Mob::ApplySpellsBonuses(uint16 spell_id, uint8 casterlevel, StatBonuses *ne
new_bonus->RaiseSkillCap[base2] = effect_value;
break;
}
case SE_NoBreakAESneak:
if (new_bonus->NoBreakAESneak < effect_value)
new_bonus->NoBreakAESneak = effect_value;
break;
//Special custom cases for loading effects on to NPC from 'npc_spels_effects' table
if (IsAISpellEffect) {