예제 #1
0
        private List <RemodelItemList> MakeUpgradeList(IEnumerable <XElement> List)
        {
            var tempList = List;
            List <RemodelItemList> ItemList = new List <RemodelItemList>();

            foreach (var item in tempList)
            {
                //초기화
                RemodelItemList ItemContent = new RemodelItemList
                {
                    ItemName = item.Element("SlotItemName").Value
                };
                //우선 장비명을 번역
                ItemContent.ItemName = KanColleClient.Current.Translations.GetTranslation(ItemContent.ItemName, TranslationType.Equipment, false);
                //슬롯 아이템 Master목록에서 해당되는 아이콘을 찾아 삽입
                foreach (var slotitem in KanColleClient.Current.Master.SlotItems)
                {
                    if (slotitem.Value.Name == ItemContent.ItemName)
                    {
                        ItemContent.IconType = slotitem.Value.IconType;
                    }
                }


                ItemContent.Ships = new List <ShipInfo>(TrimShipList(MakeShipList(item, true)));

                if (ItemContent.Ships.Count > 0)
                {
                    ItemList.Add(ItemContent);
                }
            }
            return(ItemList);
        }
예제 #2
0
        private List <RemodelItemList> MakeUseItemList(IEnumerable <XElement> List)
        {
            var tempList = List;

            List <RemodelItemList> ItemList = new List <RemodelItemList>();

            foreach (var item in tempList)
            {
                //초기화
                RemodelItemList ItemContent = new RemodelItemList
                {
                    ItemName = item.Element("SlotItemName").Value
                };
                //우선 장비명을 번역
                ItemContent.ItemName = KanColleClient.Current.Translations.GetTranslation(ItemContent.ItemName, TranslationType.Equipment, false);
                //슬롯 아이템 Master목록에서 해당되는 아이콘을 찾아 삽입
                foreach (var slotitem in KanColleClient.Current.Master.SlotItems)
                {
                    if (slotitem.Value.Name == ItemContent.ItemName)
                    {
                        ItemContent.IconType = slotitem.Value.IconType;
                    }
                }
                // 개수시 필요한 나사 개수 목록을 작성
                StringBuilder screwCombine = new StringBuilder();
                if (item.Element("StartScrew") != null)
                {
                    screwCombine.Append(item.Element("StartScrew").Value);
                }
                if (item.Element("MidScrew") != null)
                {
                    screwCombine.Append("/");
                    screwCombine.Append(item.Element("MidScrew").Value);
                }
                if (item.Element("LastScrew") != null)
                {
                    screwCombine.Append("/");
                    screwCombine.Append(item.Element("LastScrew").Value);
                }
                if (screwCombine.Length > 0)
                {
                    ItemContent.UseScrew = screwCombine.ToString();
                }

                ItemList.Add(ItemContent);
            }
            return(ItemList);
        }
예제 #3
0
        private List <RemodelItemList> MakeDefaultList(IEnumerable <XElement> List, int Position = -1)
        {
            //var PosElement = "Position";

            List <RemodelItemList> ItemList = new List <RemodelItemList>();


            //리스트를 Position에 따라 필터링
            //var tempList = List.Where(f => f.Element(PosElement).Value.Equals(Position.ToString())).ToList();
            var tempList = List;

            //XML리스트를 List<RemodelItemList>의 형태로 재작성
            foreach (var item in tempList)
            {
                //초기화
                RemodelItemList ItemContent = new RemodelItemList
                {
                    ItemName = item.Element("SlotItemName").Value
                };
                //우선 장비명을 번역
                ItemContent.ItemName = KanColleClient.Current.Translations.GetTranslation(ItemContent.ItemName, TranslationType.Equipment, false);
                //슬롯 아이템 Master목록에서 해당되는 아이콘을 찾아 삽입
                foreach (var slotitem in KanColleClient.Current.Master.SlotItems)
                {
                    if (slotitem.Value.Name == ItemContent.ItemName)
                    {
                        ItemContent.IconType = slotitem.Value.IconType;
                    }
                }
                if (item.Element("ToolTip") != null)
                {
                    ItemContent.ToolTipString = item.Element("ToolTip").Value;
                }
                else
                {
                    ItemContent.ToolTipString = "특이사항 없음";
                }
                ItemContent.Ships = new List <ShipInfo>(MakeShipList(item));


                ItemList.Add(ItemContent);
            }

            return(ItemList);
        }