mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-12 09:31:30 +00:00
[Bug Fix] Limit MeleeMitigationEffect to defender if only client. (#3918)
* [Bug] Limit MeleeMitigationEffect to defender if only client. * Fix MeleeMitigation to properly Add (Substract due to negative values). * defender fix
This commit is contained in:
parent
46a0cf6b02
commit
97dbf85a4c
@ -5362,24 +5362,29 @@ void Mob::DoRiposte(Mob *defender)
|
||||
|
||||
void Mob::ApplyMeleeDamageMods(uint16 skill, int64 &damage, Mob *defender, ExtraAttackOptions *opts)
|
||||
{
|
||||
int64 dmgbonusmod = 0;
|
||||
int64 damage_bonus_mod = 0;
|
||||
damage_bonus_mod += GetMeleeDamageMod_SE(skill);
|
||||
damage_bonus_mod += GetMeleeDmgPositionMod(defender);
|
||||
|
||||
dmgbonusmod += GetMeleeDamageMod_SE(skill);
|
||||
dmgbonusmod += GetMeleeDmgPositionMod(defender);
|
||||
if (opts)
|
||||
dmgbonusmod += opts->melee_damage_bonus_flat;
|
||||
if (opts) {
|
||||
damage_bonus_mod += opts->melee_damage_bonus_flat;
|
||||
}
|
||||
|
||||
if (defender) {
|
||||
if (defender->IsOfClientBotMerc() && defender->GetClass() == Class::Warrior) {
|
||||
dmgbonusmod -= 5;
|
||||
}
|
||||
// 168 defensive
|
||||
dmgbonusmod += (defender->spellbonuses.MeleeMitigationEffect +
|
||||
defender->itembonuses.MeleeMitigationEffect +
|
||||
defender->aabonuses.MeleeMitigationEffect);
|
||||
damage_bonus_mod -= 5;
|
||||
}
|
||||
|
||||
damage += damage * dmgbonusmod / 100;
|
||||
if (defender->IsOfClientBotMerc()) {
|
||||
damage_bonus_mod += (
|
||||
defender->spellbonuses.MeleeMitigationEffect +
|
||||
defender->itembonuses.MeleeMitigationEffect +
|
||||
defender->aabonuses.MeleeMitigationEffect
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
damage += damage * damage_bonus_mod / 100;
|
||||
}
|
||||
|
||||
bool Mob::HasDied() {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user