using System.Collections.Generic; using System.Linq; public class ItemManager { public ItemBox box; public ItemManager(List deckUnitInfo, List equipment, List consumableItem, List etcItem) { box = new ItemBox(deckUnitInfo, equipment, consumableItem, etcItem); } } public class ItemBox { List _deckUnitInfo; public List deckUnitInfo { get { return _deckUnitInfo; } } List _equipment; public List equipment { get { return _equipment; } } List _consumableItem; public List consumableItem { get { return _consumableItem; } } List _etcItem; public List etcItem { get { return _etcItem; } } public ItemBox(List deckUnitInfo, List equipment, List consumableItem, List etcItem) { if (deckUnitInfo == null) _deckUnitInfo = new List(); else _deckUnitInfo = deckUnitInfo.OrderBy(n => n.unit_data_id).ToList(); if (equipment == null) _equipment = new List(); else _equipment = equipment.OrderBy(n => n.id).ToList(); if (consumableItem == null) _consumableItem = new List(); else _consumableItem = consumableItem.OrderBy(n => n.id).ToList(); if (etcItem == null) _etcItem = new List(); else _etcItem = etcItem.OrderBy(n => n.id).ToList(); } public DeckUnitInfo FindDeckUnitInfo(long id) { return _deckUnitInfo.Find(n => n.id == id); } public int FindIndexDeckUnitInfo(long unit_data_id) { return _deckUnitInfo.FindIndex(n => n.unit_data_id == unit_data_id); } public Equipment FindEquipment(long id) { return _equipment.Find(n => n.id == id); } public void UpdateDeckUnitInfo(DeckUnitInfo item) { FindDeckUnitInfo(item.id).Update(item); } public void UpdateEquipment(Equipment item) { FindEquipment(item.id).Update(item); } }