public override void OnDoubleClick( Mobile from )
{
if( Utility.InRange( from.Location, Location, 2 ) )
{
try
{
if( m_NextSpawn < DateTime.Now )
{
Map map = this.Map;
BaseCreature bc = (BaseCreature)Activator.CreateInstance( m_Creatures[Utility.Random( m_Creatures.Length )] );
if( bc != null )
{
Point3D spawnLoc = GetSpawnPosition();
DoEffect( spawnLoc, map );
Timer.DelayCall( TimeSpan.FromSeconds( 1 ), delegate()
{
bc.Home = Location;
bc.RangeHome = m_SpawnRange;
bc.FightMode = FightMode.Closest;
bc.MoveToWorld( spawnLoc, map );
DoEffect( spawnLoc, map );
bc.ForceReacquire();
} );
m_NextSpawn = DateTime.Now + m_NextSpawnDelay;
}
}
else
{
PublicOverheadMessage( MessageType.Regular, 0x3B2, 500760 ); // The brazier fizzes and pops, but nothing seems to happen.
}
}
catch
{
}
}
else
{
from.SendLocalizedMessage( 500446 ); // That is too far away.
}
}
}