mirror of
https://github.com/EQEmu/Server.git
synced 2026-09-02 00:06:36 +00:00
Coverted melee and magic runes to use bonuses.
Removed all the old rune flags now that none of them are used. Fixed issues where runes would not fade properly if damage = remaing rune amount Fixed issue where runes would stop absorbing damage if you had multiple runes.
This commit is contained in:
+37
-1
@@ -2538,11 +2538,36 @@ void Mob::ApplySpellsBonuses(uint16 spell_id, uint8 casterlevel, StatBonuses* ne
|
||||
newbon->Root[0] = 1;
|
||||
newbon->Root[1] = buffslot;
|
||||
}
|
||||
else {
|
||||
else if (!newbon->Root[0]){
|
||||
newbon->Root[0] = 1;
|
||||
newbon->Root[1] = buffslot;
|
||||
}
|
||||
break;
|
||||
|
||||
case SE_Rune:
|
||||
|
||||
if (newbon->MeleeRune[0] && (newbon->MeleeRune[1] > buffslot)){
|
||||
|
||||
newbon->MeleeRune[0] = effect_value;
|
||||
newbon->MeleeRune[1] = buffslot;
|
||||
}
|
||||
else if (!newbon->MeleeRune[0]){
|
||||
newbon->MeleeRune[0] = effect_value;
|
||||
newbon->MeleeRune[1] = buffslot;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case SE_AbsorbMagicAtt:
|
||||
if (newbon->AbsorbMagicAtt[0] && (newbon->AbsorbMagicAtt[1] > buffslot)){
|
||||
newbon->AbsorbMagicAtt[0] = effect_value;
|
||||
newbon->AbsorbMagicAtt[1] = buffslot;
|
||||
}
|
||||
else if (!newbon->AbsorbMagicAtt[0]){
|
||||
newbon->AbsorbMagicAtt[0] = effect_value;
|
||||
newbon->AbsorbMagicAtt[1] = buffslot;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -3896,7 +3921,18 @@ void Mob::NegateSpellsBonuses(uint16 spell_id)
|
||||
case SE_Root:
|
||||
spellbonuses.Root[0] = effect_value;
|
||||
spellbonuses.Root[1] = -1;
|
||||
break;
|
||||
|
||||
case SE_Rune:
|
||||
spellbonuses.MeleeRune[0] = effect_value;
|
||||
spellbonuses.MeleeRune[1] = -1;
|
||||
break;
|
||||
|
||||
case SE_AbsorbMagicAtt:
|
||||
spellbonuses.AbsorbMagicAtt[0] = effect_value;
|
||||
spellbonuses.AbsorbMagicAtt[1] = -1;
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user