diff --git a/Scripts/Items/Misc/Corpses/Corpse.cs b/Scripts/Items/Misc/Corpses/Corpse.cs index a6fe3da24..3ddfeac5b 100644 --- a/Scripts/Items/Misc/Corpses/Corpse.cs +++ b/Scripts/Items/Misc/Corpses/Corpse.cs @@ -721,6 +721,8 @@ namespace Server.Items { if ( from.AccessLevel > AccessLevel.Player || from.InRange( this.GetWorldLocation(), 2 ) ) { + + #region Self Looting bool selfLoot = ( checkSelfLoot && ( from == m_Owner ) ); if ( selfLoot ) @@ -800,9 +802,12 @@ namespace Server.Items from.SendLocalizedMessage( 1062472 ); // You gather some of your belongings. The rest remain on the corpse. } + #endregion + if ( !CheckLoot( from ) ) return; + #region Quests PlayerMobile player = from as PlayerMobile; if ( player != null ) @@ -857,6 +862,8 @@ namespace Server.Items } } + #endregion + base.OnDoubleClick( from ); if ( from != m_Owner ) diff --git a/Scripts/Items/Weapons/Axes/BaseAxe.cs b/Scripts/Items/Weapons/Axes/BaseAxe.cs index 820d0c38d..e2ec03b79 100644 --- a/Scripts/Items/Weapons/Axes/BaseAxe.cs +++ b/Scripts/Items/Weapons/Axes/BaseAxe.cs @@ -131,9 +131,9 @@ namespace Server.Items } } - public override void OnHit( Mobile attacker, Mobile defender ) + public override void OnHit( Mobile attacker, Mobile defender, double damageBonus ) { - base.OnHit( attacker, defender ); + base.OnHit( attacker, defender, damageBonus ); if ( !Core.AOS && (attacker.Player || attacker.Body.IsHuman) && Layer == Layer.TwoHanded && (attacker.Skills[SkillName.Anatomy].Value / 400.0) >= Utility.RandomDouble() ) { diff --git a/Scripts/Items/Weapons/Maces/BaseBashing.cs b/Scripts/Items/Weapons/Maces/BaseBashing.cs index ca2edcf1b..7c1c1a988 100644 --- a/Scripts/Items/Weapons/Maces/BaseBashing.cs +++ b/Scripts/Items/Weapons/Maces/BaseBashing.cs @@ -35,9 +35,9 @@ namespace Server.Items int version = reader.ReadInt(); } - public override void OnHit( Mobile attacker, Mobile defender ) + public override void OnHit( Mobile attacker, Mobile defender, double damageBonus ) { - base.OnHit( attacker, defender ); + base.OnHit( attacker, defender, damageBonus ); defender.Stam -= Utility.Random( 3, 3 ); // 3-5 points of stamina loss } diff --git a/Scripts/Items/Weapons/PoleArms/BasePoleArm.cs b/Scripts/Items/Weapons/PoleArms/BasePoleArm.cs index 052710572..9792db3b6 100644 --- a/Scripts/Items/Weapons/PoleArms/BasePoleArm.cs +++ b/Scripts/Items/Weapons/PoleArms/BasePoleArm.cs @@ -103,9 +103,9 @@ namespace Server.Items } } - public override void OnHit( Mobile attacker, Mobile defender ) + public override void OnHit( Mobile attacker, Mobile defender, double damageBonus ) { - base.OnHit( attacker, defender ); + base.OnHit( attacker, defender, damageBonus ); if ( !Core.AOS && (attacker.Player || attacker.Body.IsHuman) && Layer == Layer.TwoHanded && (attacker.Skills[SkillName.Anatomy].Value / 400.0) >= Utility.RandomDouble() ) { diff --git a/Scripts/Items/Weapons/Ranged/BaseRanged.cs b/Scripts/Items/Weapons/Ranged/BaseRanged.cs index 07a0e3f71..32ad195bf 100644 --- a/Scripts/Items/Weapons/Ranged/BaseRanged.cs +++ b/Scripts/Items/Weapons/Ranged/BaseRanged.cs @@ -76,12 +76,12 @@ namespace Server.Items } } - public override void OnHit( Mobile attacker, Mobile defender ) + public override void OnHit( Mobile attacker, Mobile defender, double damageBonus ) { if ( attacker.Player && !defender.Player && (defender.Body.IsAnimal || defender.Body.IsMonster) && 0.4 >= Utility.RandomDouble() ) defender.AddToBackpack( Ammo ); - base.OnHit( attacker, defender ); + base.OnHit( attacker, defender, damageBonus ); } public override void OnMiss( Mobile attacker, Mobile defender ) diff --git a/Scripts/Items/Weapons/SpearsAndForks/BaseSpear.cs b/Scripts/Items/Weapons/SpearsAndForks/BaseSpear.cs index 0b489d469..8778a4934 100644 --- a/Scripts/Items/Weapons/SpearsAndForks/BaseSpear.cs +++ b/Scripts/Items/Weapons/SpearsAndForks/BaseSpear.cs @@ -35,9 +35,9 @@ namespace Server.Items int version = reader.ReadInt(); } - public override void OnHit( Mobile attacker, Mobile defender ) + public override void OnHit( Mobile attacker, Mobile defender, double damageBonus ) { - base.OnHit( attacker, defender ); + base.OnHit( attacker, defender, damageBonus ); if ( !Core.AOS && Layer == Layer.TwoHanded && (attacker.Skills[SkillName.Anatomy].Value / 400.0) >= Utility.RandomDouble() ) { diff --git a/Scripts/Items/Weapons/Staves/BaseStaff.cs b/Scripts/Items/Weapons/Staves/BaseStaff.cs index f87d52f04..16baca76e 100644 --- a/Scripts/Items/Weapons/Staves/BaseStaff.cs +++ b/Scripts/Items/Weapons/Staves/BaseStaff.cs @@ -35,9 +35,9 @@ namespace Server.Items int version = reader.ReadInt(); } - public override void OnHit( Mobile attacker, Mobile defender ) + public override void OnHit( Mobile attacker, Mobile defender, double damageBonus ) { - base.OnHit( attacker, defender ); + base.OnHit( attacker, defender, damageBonus ); defender.Stam -= Utility.Random( 3, 3 ); // 3-5 points of stamina loss } diff --git a/Scripts/Items/Weapons/Swords/BaseSword.cs b/Scripts/Items/Weapons/Swords/BaseSword.cs index 06f1cd825..aee97ecc8 100644 --- a/Scripts/Items/Weapons/Swords/BaseSword.cs +++ b/Scripts/Items/Weapons/Swords/BaseSword.cs @@ -40,9 +40,9 @@ namespace Server.Items from.Target = new BladedItemTarget( this ); } - public override void OnHit( Mobile attacker, Mobile defender ) + public override void OnHit( Mobile attacker, Mobile defender, double damageBonus ) { - base.OnHit( attacker, defender ); + base.OnHit( attacker, defender, damageBonus ); if ( !Core.AOS && Poison != null && PoisonCharges > 0 ) {