Esempio n. 1
0
        private void Start()
        {
            m_NextMsgTime = DateTime.Now + TimeSpan.FromMinutes(msgevery);

            foreach (Item ps in this.GetItemsInRange(range))
            {
                if (ps != null && ps is XmlSpawner)
                {
                    XmlSpawner sp = (XmlSpawner)ps;
                    if (ps.Hue == 5)
                    {
                        sp.Running = true;
                        sp.Respawn();
                    }
                    if (ps.Hue == 10)
                    {
                        sp.Running = false;
                    }
                }
            }

            Regions.GuardedRegion reg = (Regions.GuardedRegion) this.Region.GetRegion(typeof(Regions.GuardedRegion));
            if (reg != null && !(reg.Disabled))
            {
                restoreguards = true;
                reg.Disabled  = true;
            }

            string meg = this.Region.Name + " is under attack by forces of " + this.Name + "!!!";

            BroadcastMessage(34, meg, true);
            init = true;
        }
Esempio n. 2
0
            protected override void OnTick()
            {
                foreach (Item ps in m_Owner.GetItemsInRange(m_Owner.Hue))
                {
                    if (ps != null && ps is XmlSpawner)
                    {
                        XmlSpawner sp = (XmlSpawner)ps;
                        if (ps.Hue == 10)
                        {
                            sp.Running = true;
                        }
                    }
                }

                if (m_Owner.Weight == 1.0)
                {
                    Orc orc = new Orc();
                    orc.MoveToWorld(m_Owner.Location, m_Owner.Map);
                    orc.Hidden = true;
                    Regions.GuardedRegion reg = (Regions.GuardedRegion)orc.Region.GetRegion(typeof(Regions.GuardedRegion));
                    if (reg != null && reg.Disabled)
                    {
                        reg.Disabled = false;
                    }

                    orc.Delete();
                }

                StopTimer(m_Owner);
                m_Owner.Delete();
            }
Esempio n. 3
0
 protected virtual void GetConvoFragments(ArrayList list)
 {
     if (this.Region is Regions.GuardedRegion)
     {
         Regions.GuardedRegion gr = (Regions.GuardedRegion) this.Region;
         if (gr.Fragment != RegionFragment.Wilderness)
         {
             list.Add((int)gr.Fragment);
         }
     }
     list.Add(BritanniaFragment);
 }
Esempio n. 4
0
        public virtual bool CheckResources(Mobile from, Item tool, HarvestDefinition def, Map map, Point3D loc, bool timed)
        {
            HarvestBank bank      = def.GetBank(map, loc.X, loc.Y);
            bool        available = (bank != null && bank.Current >= def.ConsumedPerHarvest);

            if (available && !(this is Fishing))
            {
                Regions.GuardedRegion reg = Region.Find(loc, map).GetRegion(typeof(Regions.GuardedRegion)) as Regions.GuardedRegion;

                if (reg != null && !reg.Disabled)
                {
                    available = false;
                }
            }

            if (!available)
            {
                def.SendMessageTo(from, timed ? def.DoubleHarvestMessage : def.NoResourcesMessage);
            }

            return(available);
        }