Overwrite
Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
This commit is contained in:
65
Scripts/Items/Equipment/Weapons/BaseMeleeWeapon.cs
Normal file
65
Scripts/Items/Equipment/Weapons/BaseMeleeWeapon.cs
Normal file
@@ -0,0 +1,65 @@
|
||||
using System;
|
||||
using Server.Spells.Spellweaving;
|
||||
|
||||
namespace Server.Items
|
||||
{
|
||||
public abstract class BaseMeleeWeapon : BaseWeapon
|
||||
{
|
||||
public BaseMeleeWeapon(int itemID)
|
||||
: base(itemID)
|
||||
{
|
||||
}
|
||||
|
||||
public BaseMeleeWeapon(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override int AbsorbDamage(Mobile attacker, Mobile defender, int damage)
|
||||
{
|
||||
damage = base.AbsorbDamage(attacker, defender, damage);
|
||||
|
||||
if (Core.AOS)
|
||||
return damage;
|
||||
|
||||
int absorb = defender.MeleeDamageAbsorb;
|
||||
|
||||
if (absorb > 0)
|
||||
{
|
||||
if (absorb > damage)
|
||||
{
|
||||
int react = damage / 5;
|
||||
|
||||
if (react <= 0)
|
||||
react = 1;
|
||||
|
||||
defender.MeleeDamageAbsorb -= damage;
|
||||
damage = 0;
|
||||
|
||||
attacker.Damage(react, defender);
|
||||
|
||||
attacker.PlaySound(0x1F1);
|
||||
attacker.FixedEffect(0x374A, 10, 16);
|
||||
}
|
||||
else
|
||||
{
|
||||
defender.MeleeDamageAbsorb = 0;
|
||||
defender.SendLocalizedMessage(1005556); // Your reactive armor spell has been nullified.
|
||||
DefensiveSpell.Nullify(defender);
|
||||
}
|
||||
}
|
||||
|
||||
return damage;
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user