This commit is contained in:
mark 2012-11-10 20:06:36 +00:00
parent 8ff1a903a0
commit 14873aaa3e
78 changed files with 360 additions and 231 deletions

View file

@ -1243,6 +1243,10 @@ namespace Server.Items
if ( Core.AOS )
return AbsorbDamageAOS( attacker, defender, damage );
BaseShield shield = defender.FindItemOnLayer( Layer.TwoHanded ) as BaseShield;
if ( shield != null )
damage = shield.OnHit( this, damage );
double chance = Utility.RandomDouble();
Item armorItem;
@ -1265,10 +1269,6 @@ namespace Server.Items
if ( armor != null )
damage = armor.OnHit( this, damage );
BaseShield shield = defender.FindItemOnLayer( Layer.TwoHanded ) as BaseShield;
if ( shield != null )
damage = shield.OnHit( this, damage );
int virtualArmor = defender.VirtualArmor + defender.VirtualArmorMod;
if ( virtualArmor > 0 )
@ -2345,7 +2345,13 @@ namespace Server.Items
if ( Core.AOS )
return ComputeDamageAOS( attacker, defender );
return (int)ScaleDamageOld( attacker, GetBaseDamage( attacker ), true );
int damage = (int)ScaleDamageOld( attacker, GetBaseDamage( attacker ), true );
// pre-AOS, halve damage if the defender is a player or the attacker is not a player
if ( defender is PlayerMobile || !( attacker is PlayerMobile ) )
damage = (int)(damage / 2.0);
return damage;
}
public virtual void PlayHurtAnimation( Mobile from )