public void RunTo( Mobile m )
{
if( !SmartAI )
{
if( !MoveTo( m, true, m_Mobile.RangeFight ) )
OnFailedMove();
return;
}
if( m.Paralyzed || m.Frozen )
{
if( m_Mobile.InRange( m, 1 ) )
RunFrom( m );
else if( !m_Mobile.InRange( m, m_Mobile.RangeFight > 2 ? m_Mobile.RangeFight : 2 ) && !MoveTo( m, true, 1 ) )
OnFailedMove();
}
else
{
if( !m_Mobile.InRange( m, m_Mobile.RangeFight ) )
{
if( !MoveTo( m, true, 1 ) )
OnFailedMove();
}
else if( m_Mobile.InRange( m, m_Mobile.RangeFight - 1 ) )
{
RunFrom( m );
}
}
}