uncontrolled summons will not be acquired by hostile mobiles, unless they attacked the mobile first. Necro familiars should be pretty much unlosable now... as well as not acquired by mobiles.

This commit is contained in:
xavier 2012-11-23 21:57:03 +00:00
parent 9dfdf757a2
commit e773309f17
3 changed files with 124 additions and 54 deletions

View file

@ -1294,9 +1294,11 @@ namespace Server.Mobiles
public HonorContext ReceivedHonorContext{ get{ return m_ReceivedHonorContext; } set{ m_ReceivedHonorContext = value; } }
public virtual void CheckStopFollow( Mobile from )
public virtual bool CanBeDistracted { get { return true; } }
public virtual void CheckDistracted( Mobile from )
{
if( ControlOrder == OrderType.Follow && Utility.RandomDouble() < .10 )
if( Utility.RandomDouble() < .10 )
{
ControlTarget = from;
ControlOrder = OrderType.Attack;
@ -1342,7 +1344,10 @@ namespace Server.Mobiles
if( !willKill )
{
CheckStopFollow( from );
if( CanBeDistracted && ControlOrder == OrderType.Follow )
{
CheckDistracted( from );
}
}
else if( from is PlayerMobile )
{
@ -1354,7 +1359,10 @@ namespace Server.Mobiles
public virtual void OnDamagedBySpell( Mobile from )
{
CheckStopFollow( from );
if( CanBeDistracted && ControlOrder == OrderType.Follow )
{
CheckDistracted( from );
}
}
public virtual void OnHarmfulSpell( Mobile from )