Index: Scripts/Skills/Peacemaking.cs
===================================================================
--- Scripts/Skills/Peacemaking.cs (revision 315)
+++ Scripts/Skills/Peacemaking.cs (working copy)
@@ -95,7 +95,7 @@
foreach ( Mobile m in from.GetMobilesInRange( range ) )
{
- if ( (m is BaseCreature && ((BaseCreature)m).Uncalmable) || m == from || !from.CanBeHarmful( m, false ) )
+ if ( (m is BaseCreature && ((BaseCreature)m).Uncalmable) || (m is BaseCreature && ((BaseCreature)m).AreaPeaceImmune) || m == from || !from.CanBeHarmful( m, false ) )
continue;
calmed = true;
Index: Scripts/Engines/AI/Creature/BaseCreature.cs
===================================================================
--- Scripts/Engines/AI/Creature/BaseCreature.cs (revision 315)
+++ Scripts/Engines/AI/Creature/BaseCreature.cs (working copy)
@@ -402,6 +402,7 @@
public virtual bool BardImmune{ get{ return false; } }
public virtual bool Unprovokable{ get{ return BardImmune || m_IsDeadPet; } }
public virtual bool Uncalmable{ get{ return BardImmune || m_IsDeadPet; } }
+ public virtual bool AreaPeaceImmune{ get{ return BardImmune || m_IsDeadPet; } }
public virtual bool BleedImmune{ get{ return false; } }
public virtual double BonusPetDamageScalar{ get{ return 1.0; } }
Index: Scripts/Mobiles/Monsters/AOS/DarknightCreeper.cs
===================================================================
--- Scripts/Mobiles/Monsters/AOS/DarknightCreeper.cs (revision 315)
+++ Scripts/Mobiles/Monsters/AOS/DarknightCreeper.cs (working copy)
@@ -63,7 +63,7 @@
public override bool BardImmune{ get{ return !Core.SE; } }
public override bool Unprovokable{ get{ return Core.SE; } }
- public override bool Uncalmable{ get{ return Core.SE; } }
+ public override bool AreaPeaceImmune{ get{ return Core.SE; } }
public override bool BleedImmune{ get{ return true; } }
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
public override Poison HitPoison{ get{ return Poison.Lethal; } }
Index: Scripts/Mobiles/Monsters/AOS/AbysmalHorror.cs
===================================================================
--- Scripts/Mobiles/Monsters/AOS/AbysmalHorror.cs (revision 315)
+++ Scripts/Mobiles/Monsters/AOS/AbysmalHorror.cs (working copy)
@@ -66,7 +66,7 @@
public override bool BardImmune{ get{ return !Core.SE; } }
public override bool Unprovokable{ get{ return Core.SE; } }
- public override bool Uncalmable{ get{ return Core.SE; } }
+ public override bool AreaPeaceImmune{ get{ return Core.SE; } }
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
public override int TreasureMapLevel{ get{ return 1; } }
Index: Scripts/Mobiles/Monsters/AOS/FleshRenderer.cs
===================================================================
--- Scripts/Mobiles/Monsters/AOS/FleshRenderer.cs (revision 315)
+++ Scripts/Mobiles/Monsters/AOS/FleshRenderer.cs (working copy)
@@ -63,8 +63,9 @@
}
public override bool AutoDispel{ get{ return true; } }
- public override bool Unprovokable{ get{ return true; } }
- public override bool Uncalmable{ get{ return true; } }
+ public override bool BardImmune{ get{ return !Core.SE; } }
+ public override bool Unprovokable{ get{ return Core.SE; } }
+ public override bool AreaPeaceImmune{ get{ return Core.SE; } }
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
public override int TreasureMapLevel{ get{ return 1; } }
Index: Scripts/Mobiles/Monsters/AOS/Impaler.cs
===================================================================
--- Scripts/Mobiles/Monsters/AOS/Impaler.cs (revision 315)
+++ Scripts/Mobiles/Monsters/AOS/Impaler.cs (working copy)
@@ -66,7 +66,7 @@
public override bool AutoDispel{ get{ return true; } }
public override bool BardImmune{ get{ return !Core.SE; } }
public override bool Unprovokable{ get{ return Core.SE; } }
- public override bool Uncalmable{ get{ return Core.SE; } }
+ public override bool AreaPeaceImmune{ get{ return Core.SE; } }
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
public override Poison HitPoison{ get{ return (0.8 >= Utility.RandomDouble() ? Poison.Greater : Poison.Deadly); } }
Index: Scripts/Mobiles/Monsters/AOS/ShadowKnight.cs
===================================================================
--- Scripts/Mobiles/Monsters/AOS/ShadowKnight.cs (revision 315)
+++ Scripts/Mobiles/Monsters/AOS/ShadowKnight.cs (working copy)
@@ -167,7 +167,9 @@
base.OnThink();
}
- public override bool BardImmune{ get{ return true; } }
+ public override bool BardImmune{ get{ return !Core.SE; } }
+ public override bool Unprovokable{ get{ return Core.SE; } }
+ public override bool AreaPeaceImmune{ get{ return Core.SE; } }
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
public override int TreasureMapLevel{ get{ return 1; } }
Index: Scripts/Mobiles/Monsters/AOS/BoneDemon.cs
===================================================================
--- Scripts/Mobiles/Monsters/AOS/BoneDemon.cs (revision 315)
+++ Scripts/Mobiles/Monsters/AOS/BoneDemon.cs (working copy)
@@ -50,8 +50,9 @@
AddLoot( LootPack.FilthyRich, 8 );
}
- public override bool Unprovokable{ get{ return true; } }
- public override bool Uncalmable{ get{ return true; } }
+ public override bool BardImmune{ get{ return !Core.SE; } }
+ public override bool Unprovokable{ get{ return Core.SE; } }
+ public override bool AreaPeaceImmune{ get{ return Core.SE; } }
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
public override int TreasureMapLevel{ get{ return 1; } }
Index: Scripts/Mobiles/Monsters/AOS/DemonKnight.cs
===================================================================
--- Scripts/Mobiles/Monsters/AOS/DemonKnight.cs (revision 315)
+++ Scripts/Mobiles/Monsters/AOS/DemonKnight.cs (working copy)
@@ -213,7 +213,7 @@
public override bool BardImmune{ get{ return !Core.SE; } }
public override bool Unprovokable{ get{ return Core.SE; } }
- public override bool Uncalmable{ get{ return Core.SE; } }
+ public override bool AreaPeaceImmune{ get{ return Core.SE; } }
public override Poison PoisonImmune{ get{ return Poison.Lethal; } }
public override int TreasureMapLevel{ get{ return 1; } }