示例#1
0
        public ListAsSet <SimObject> GetPrimitiveFromList(string[] args, out int argsUsed, List <string> missingOK)
        {
            ListAsSet <SimObject> allTargets = new ListAsSet <SimObject>();

            args = (string[])args.Clone();
            int argsUsedTotal = 0;

            while (args.Length > 0)
            {
                int argsUsed0;
                List <SimObject> PS = GetSingleArg(args, out argsUsed0);
                if (argsUsed0 == 0)
                {
                    missingOK.Add(args[0]);
                    argsUsed0 = 1;
                }
                if (argsUsed0 == 0)
                {
                    throw new ParserFilterFormatException("Cant GetSingleArg: ", args, 0);
                }
                argsUsedTotal += argsUsed0;
                if (PS != null)
                {
                    allTargets.AddRange(PS);
                }
                args = Parser.SplitOff(args, argsUsed0);
            }
            argsUsed = argsUsedTotal;
            if (allTargets.Count == 0)
            {
                return(null);
            }
            return(allTargets);
        }
        public ListAsSet <Abortable> AllTaskQueues()
        {
            ListAsSet <Abortable> all = ClientManager.AllTaskQueues();

            foreach (var tq in TaskQueueHandler.TaskQueueHandlers)
            {
                if (tq.Owner == this)
                {
                    all.Add(tq);
                }
            }
            all.AddRange(botCommandThreads);
            return(all);
        }