예제 #1
0
        public static void Queue(QueueItem item)
        {
            if (!item.Nodes.Any())
            {
                Logger.Debug("Item {0} was queued without any nodes", item.Name);
                return;
            }

            if (QueueItemComparer.Equals(item, _active) || Q.Contains(item, QueueItemComparer))
            {
                string activeNodeName = "";
                if (item.ActiveNode != null)
                {
                    activeNodeName = item.ActiveNode.GetType().Name;
                }
                Logger.Verbose("Discarding Duplicate Queue Request Name='{0}' Id='{1}' Type='{2}'", item.Name, item.Id, activeNodeName);
                return;
            }

            if (item.Condition == null)
            {
                item.Condition = ret => true;
            }

            ProfileUtils.AsyncReplaceTags(item.Nodes);
            Q.Add(item);
        }
예제 #2
0
 private static void ProfileManager_OnProfileLoaded(object sender, EventArgs e)
 {
     ProfileUtils.LoadAdditionalGameParams();
     ProfileHistory.Add(ProfileManager.CurrentProfile);
     ProfileUtils.ProcessProfile();
 }