Beispiel #1
0
 public void FinalizeDataHolder()
 {
     Occurence = TimeSpan.FromMinutes(_Occurence);
     Duration  = TimeSpan.FromMinutes(_Length);
     CalculateEventDelays(this);
     WorldEventMgr.AddEvent(this);
 }
Beispiel #2
0
 public void FinalizeDataHolder()
 {
     this.Occurence = TimeSpan.FromMinutes((double)this._Occurence);
     this.Duration  = TimeSpan.FromMinutes((double)this._Length);
     WorldEvent.CalculateEventDelays(this);
     WorldEventMgr.AddEvent(this);
 }
Beispiel #3
0
 public static bool Reload()
 {
     if (WorldEventMgr.UnloadAll())
     {
         return(WorldEventMgr.LoadAll());
     }
     return(false);
 }
Beispiel #4
0
        public void FinalizeDataHolder()
        {
            var worldEvent = WorldEventMgr.GetEvent(EventId);

            if (worldEvent != null)
            {
                worldEvent.ModelEquips.Add(this);
            }
        }
        public void FinalizeDataHolder()
        {
            WorldEvent worldEvent = WorldEventMgr.GetEvent(EventId);

            if (worldEvent == null)
            {
                return;
            }
            worldEvent.ModelEquips.Add(this);
        }
Beispiel #6
0
        public void FinalizeDataHolder()
        {
            WorldEventMgr.WorldEventQuests.Add(this);
            var worldEvent = WorldEventMgr.GetEvent(EventId);

            if (worldEvent != null)
            {
                worldEvent.QuestIds.Add(QuestId);
            }
        }
Beispiel #7
0
        public void FinalizeDataHolder()
        {
            WorldEventMgr.WorldEventQuests.Add(this);
            WorldEvent worldEvent = WorldEventMgr.GetEvent(EventId);

            if (worldEvent == null)
            {
                return;
            }
            worldEvent.QuestIds.Add(QuestId);
        }
Beispiel #8
0
        public void FinalizeDataHolder()
        {
            Spawn   = _eventId > 0;
            EventId = (uint)_eventId;
            var worldEvent = WorldEventMgr.GetEvent(EventId);

            if (worldEvent != null)
            {
                worldEvent.GOSpawns.Add(this);
            }
        }
Beispiel #9
0
        public static bool StopEvent(uint id)
        {
            WorldEvent worldEvent = WorldEventMgr.GetEvent(id);

            if (worldEvent == null)
            {
                return(false);
            }
            WorldEventMgr.StopEvent(worldEvent);
            return(true);
        }
Beispiel #10
0
        public void FinalizeDataHolder()
        {
            this.Spawn   = this._eventId > 0;
            this.EventId = (uint)this._eventId;
            WorldEvent worldEvent = WorldEventMgr.GetEvent(this.EventId);

            if (worldEvent == null)
            {
                return;
            }
            worldEvent.GOSpawns.Add(this);
        }
Beispiel #11
0
        public void FinalizeDataHolder()
        {
            Spawn   = _eventId > 0;
            EventId = (uint)_eventId;
            WorldEvent worldEvent = WorldEventMgr.GetEvent(EventId);

            if (worldEvent == null)
            {
                return;
            }
            worldEvent.NPCSpawns.Add(this);
        }
Beispiel #12
0
        public static void StartEvent(WorldEvent worldEvent)
        {
            WorldEvent worldEvent1        = worldEvent;
            TimeSpan?  timeUntilNextStart = worldEvent1.TimeUntilNextStart;
            TimeSpan   occurence          = worldEvent.Occurence;

            worldEvent1.TimeUntilNextStart = timeUntilNextStart.HasValue
                ? new TimeSpan?(timeUntilNextStart.GetValueOrDefault() + occurence)
                : new TimeSpan?();
            if (WorldEventMgr.IsEventActive(worldEvent.Id))
            {
                return;
            }
            WorldEventMgr.Log.Info("Starting event {0}: {1}", (object)worldEvent.Id, (object)worldEvent.Description);
            ArrayUtil.Set <WorldEvent>(ref WorldEventMgr.ActiveEvents, worldEvent.Id, worldEvent);
            WorldEventMgr.SpawnEvent(worldEvent);
            WorldEventMgr.ApplyEventNPCData(worldEvent);
        }
Beispiel #13
0
        public static void Update()
        {
            if (!WorldEventMgr.Loaded || !QuestMgr.Loaded || (!NPCMgr.Loaded || !GOMgr.Loaded))
            {
                return;
            }
            TimeSpan timeSpan1 = DateTime.Now - WorldEventMgr.LastUpdateTime;

            WorldEventMgr.LastUpdateTime = DateTime.Now;
            foreach (WorldEvent worldEvent1 in ((IEnumerable <WorldEvent>)WorldEventMgr.AllEvents)
                     .Where <WorldEvent>((Func <WorldEvent, bool>)(worldEvent => worldEvent != null))
                     .Where <WorldEvent>((Func <WorldEvent, bool>)(worldEvent => worldEvent.TimeUntilNextStart.HasValue)))
            {
                WorldEvent worldEvent2         = worldEvent1;
                TimeSpan?  timeUntilNextStart1 = worldEvent2.TimeUntilNextStart;
                TimeSpan   timeSpan2           = timeSpan1;
                worldEvent2.TimeUntilNextStart = timeUntilNextStart1.HasValue
                    ? new TimeSpan?(timeUntilNextStart1.GetValueOrDefault() - timeSpan2)
                    : new TimeSpan?();
                WorldEvent worldEvent3   = worldEvent1;
                TimeSpan?  timeUntilEnd1 = worldEvent3.TimeUntilEnd;
                TimeSpan   timeSpan3     = timeSpan1;
                worldEvent3.TimeUntilEnd = timeUntilEnd1.HasValue
                    ? new TimeSpan?(timeUntilEnd1.GetValueOrDefault() - timeSpan3)
                    : new TimeSpan?();
                TimeSpan?timeUntilEnd2 = worldEvent1.TimeUntilEnd;
                TimeSpan zero1         = TimeSpan.Zero;
                if ((timeUntilEnd2.HasValue ? (timeUntilEnd2.GetValueOrDefault() <= zero1 ? 1 : 0) : 0) != 0)
                {
                    WorldEventMgr.StopEvent(worldEvent1);
                }
                else
                {
                    TimeSpan?timeUntilNextStart2 = worldEvent1.TimeUntilNextStart;
                    TimeSpan zero2 = TimeSpan.Zero;
                    if ((timeUntilNextStart2.HasValue
                            ? (timeUntilNextStart2.GetValueOrDefault() <= zero2 ? 1 : 0)
                            : 0) != 0)
                    {
                        WorldEventMgr.StartEvent(worldEvent1);
                    }
                }
            }
        }
Beispiel #14
0
        public static void StopEvent(WorldEvent worldEvent)
        {
            WorldEvent worldEvent1  = worldEvent;
            TimeSpan?  timeUntilEnd = worldEvent1.TimeUntilEnd;
            TimeSpan   timeSpan     = worldEvent.Occurence + worldEvent.Duration;

            worldEvent1.TimeUntilEnd = timeUntilEnd.HasValue
                ? new TimeSpan?(timeUntilEnd.GetValueOrDefault() + timeSpan)
                : new TimeSpan?();
            if (!WorldEventMgr.IsEventActive(worldEvent.Id))
            {
                return;
            }
            WorldEventMgr.Log.Info("Stopping event {0}: {1}", (object)worldEvent.Id, (object)worldEvent.Description);
            WorldEventMgr.ActiveEvents[worldEvent.Id] = (WorldEvent)null;
            if (worldEvent.QuestIds.Count != 0)
            {
                WorldEventMgr.ClearActiveQuests((IEnumerable <uint>)worldEvent.QuestIds);
            }
            WorldEventMgr.DeSpawnEvent(worldEvent);
            WorldEventMgr.ResetEventNPCData(worldEvent);
        }
Beispiel #15
0
 /// <summary>
 /// Checks if the event is currently active
 /// </summary>
 /// <param name="eventId">Id of the event to check</param>
 /// <returns></returns>
 public bool IsEventActive(uint eventId)
 {
     return(WorldEventMgr.IsEventActive(eventId));
 }
Beispiel #16
0
 public static void Initialize()
 {
     WorldEventMgr.LoadAll();
 }
Beispiel #17
0
 public static void DeSpawnEvent(uint eventId)
 {
     WorldEventMgr.DeSpawnEvent(WorldEventMgr.GetEvent(eventId));
 }