protected override void OnTarget( Mobile from, object targeted )
{
if ( targeted is Mobile )
{
CommandLogging.WriteLine( from, "{0} {1} dismounting {2}", from.AccessLevel, CommandLogging.Format( from ), CommandLogging.Format( targeted ) );
Mobile targ = (Mobile)targeted;
for ( int i = 0; i < targ.Items.Count; ++i )
{
Item item = targ.Items[i];
if ( item is IMountItem )
{
IMount mount = ((IMountItem)item).Mount;
if ( mount != null )
mount.Rider = null;
if ( targ.Items.IndexOf( item ) == -1 )
--i;
}
}
for ( int i = 0; i < targ.Items.Count; ++i )
{
Item item = targ.Items[i];
if ( item.Layer == Layer.Mount )
{
item.Delete();
--i;
}
}
}
}
}