Changed SE_SingingSkill to SE_Amplificatoin

This effect will now stack with other singing spell/item mods
like it does on live.
This commit is contained in:
Michael Cook 2014-02-21 22:57:15 -05:00
parent 451d422b8a
commit 026f019f58
5 changed files with 10 additions and 12 deletions

View File

@ -265,7 +265,7 @@ typedef enum {
#define SE_Hunger 115 // implemented - Song of Sustenance #define SE_Hunger 115 // implemented - Song of Sustenance
#define SE_CurseCounter 116 // implemented #define SE_CurseCounter 116 // implemented
#define SE_MagicWeapon 117 // implemented - makes weapon magical #define SE_MagicWeapon 117 // implemented - makes weapon magical
#define SE_SingingSkill 118 // *implemented - needs AA conversion #define SE_Amplification 118 // implemented - Harmonize/Amplification (stacks with other singing mods)
#define SE_AttackSpeed3 119 // implemented #define SE_AttackSpeed3 119 // implemented
#define SE_HealRate 120 // implemented - reduces healing by a % #define SE_HealRate 120 // implemented - reduces healing by a %
#define SE_ReverseDS 121 // implemented #define SE_ReverseDS 121 // implemented

View File

@ -1607,12 +1607,9 @@ void Mob::ApplySpellsBonuses(uint16 spell_id, uint8 casterlevel, StatBonuses* ne
newbon->reflect_chance += effect_value; newbon->reflect_chance += effect_value;
break; break;
case SE_SingingSkill: case SE_Amplification:
{ newbon->Amplification += effect_value;
if(effect_value > newbon->singingMod)
newbon->singingMod = effect_value;
break; break;
}
case SE_ChangeAggro: case SE_ChangeAggro:
newbon->hatemod += effect_value; newbon->hatemod += effect_value;
@ -3124,10 +3121,10 @@ void Mob::NegateSpellsBonuses(uint16 spell_id)
itembonuses.reflect_chance = effect_value; itembonuses.reflect_chance = effect_value;
break; break;
case SE_SingingSkill: case SE_Amplification:
spellbonuses.singingMod = effect_value; spellbonuses.Amplification = effect_value;
itembonuses.singingMod = effect_value; itembonuses.Amplification = effect_value;
aabonuses.singingMod = effect_value; aabonuses.Amplification = effect_value;
break; break;
case SE_ChangeAggro: case SE_ChangeAggro:

View File

@ -1857,7 +1857,7 @@ uint16 Mob::GetInstrumentMod(uint16 spell_id) const
effectmod = itembonuses.singingMod; effectmod = itembonuses.singingMod;
else else
effectmod = spellbonuses.singingMod; effectmod = spellbonuses.singingMod;
effectmod += aabonuses.singingMod; effectmod += aabonuses.singingMod + spellbonuses.Amplification;
break; break;
default: default:
effectmod = 10; effectmod = 10;

View File

@ -231,6 +231,7 @@ struct StatBonuses {
int effective_casting_level; int effective_casting_level;
int reflect_chance; // chance to reflect incoming spell int reflect_chance; // chance to reflect incoming spell
uint16 singingMod; uint16 singingMod;
uint16 Amplification; // stacks with singingMod
uint16 brassMod; uint16 brassMod;
uint16 percussionMod; uint16 percussionMod;
uint16 windMod; uint16 windMod;

View File

@ -2631,7 +2631,7 @@ bool Mob::SpellEffect(Mob* caster, uint16 spell_id, float partial)
case SE_MeleeMitigation: case SE_MeleeMitigation:
case SE_Reflect: case SE_Reflect:
case SE_Screech: case SE_Screech:
case SE_SingingSkill: case SE_Amplification:
case SE_MagicWeapon: case SE_MagicWeapon:
case SE_Hunger: case SE_Hunger:
case SE_MagnifyVision: case SE_MagnifyVision: