Пример #1
0
        /// <summary>
        /// Handler for the GenSpawnData command
        /// </summary>
        private static void OnGenSpawnData(CommandEventArgs e)
        {
            World.Broadcast(BoxConfig.MessageHue, false, "Generating spawn data for Pandora's Box");

            DateTime start = DateTime.Now;

            SpawnData data = new SpawnData();

            ArrayList Items = new ArrayList(World.Items.Values);

            foreach (Item item in Items)
            {
                if (item.GetType() == SpawnerHelper.SpawnerType)
                {
                    SpawnEntry entry = SpawnerHelper.SpawnerToData(item);

                    if (entry != null)
                    {
                        data.m_Spawns.Add(entry);
                    }
                }
            }

            data.Save();

            TimeSpan duration = DateTime.Now - start;

            World.Broadcast(BoxConfig.MessageHue, false, string.Format("Generation complete. The process took {0} seconds", duration.TotalSeconds));
        }
Пример #2
0
        public override BoxMessage Perform()
        {
            Item   spawner = SpawnerHelper.CreateBoxSpawn(m_Spawn);
            Mobile m       = Authentication.GetOnlineMobile(Username);

            if (spawner != null && m != null)
            {
                m.SendMessage(BoxConfig.MessageHue, "Where do you wish to place the spawn?");

                m.Target = new InternalTarget(m_Spawn);
            }

            return(null);
        }
Пример #3
0
            protected override void OnTarget(Mobile from, object targeted)
            {
                IPoint3D target = targeted as IPoint3D;

                if (target != null)
                {
                    Item spawner = SpawnerHelper.CreateBoxSpawn(m_Spawn);

                    if (spawner != null)
                    {
                        spawner.MoveToWorld(new Point3D(target), from.Map);
                        SpawnerHelper.StartSpawner(spawner);

                        from.SendMessage(BoxConfig.MessageHue, "Spawn succesful.");
                    }
                    else
                    {
                        from.SendMessage(BoxConfig.MessageHue, "Spawn failed.");
                    }
                }

                base.OnTarget(from, targeted);
            }