コード例 #1
0
        private List <ScreenItem> CountAllComponents(IEnumerable <IMyInventory> inventories, out bool complete)
        {
            List <ScreenItem> items = new List <ScreenItem>();

            complete = true;
            IPSession ipSession = IPSession.Instance;

            foreach (KeyValuePair <MyDefinitionId, int> c in comps)
            {
                MyDefinitionId id       = c.Key;
                int            required = c.Value;
                int            need     = (int)CountComponents(inventories, id, required);
                if (need > 0)
                {
                    complete = false;
                }
                items.Add(new ScreenItem(ipSession.GetComponentName(id), required, required - need));
            }

            return(items);
        }