public MapArea(kcsapi_mst_maparea maparea, MasterTable <MapInfo> mapInfos) : base(maparea) { this.Id = maparea.api_id; this.Name = maparea.api_name; this.MapInfos = new MasterTable <MapInfo>(mapInfos.Values.Where(x => x.MapAreaId == maparea.api_id)); foreach (var cell in this.MapInfos.Values) { cell.MapArea = this; } }
internal Master(kcsapi_start2 start2) { this.ShipTypes = new MasterTable <ShipType>(start2.api_mst_stype.Select(x => new ShipType(x))); this.Ships = new MasterTable <ShipInfo>(start2.api_mst_ship.Select(x => new ShipInfo(x))); this.SlotItemEquipTypes = new MasterTable <SlotItemEquipType>(start2.api_mst_slotitem_equiptype.Select(x => new SlotItemEquipType(x))); this.SlotItems = new MasterTable <SlotItemInfo>(start2.api_mst_slotitem.Select(x => new SlotItemInfo(x, this.SlotItemEquipTypes))); this.UseItems = new MasterTable <UseItemInfo>(start2.api_mst_useitem.Select(x => new UseItemInfo(x))); this.Missions = new MasterTable <Mission>(start2.api_mst_mission.Select(x => new Mission(x))); this.MapInfos = new MasterTable <MapInfo>(start2.api_mst_mapinfo.Select(x => new MapInfo(x))); this.MapAreas = new MasterTable <MapArea>(start2.api_mst_maparea.Select(x => new MapArea(x, this.MapInfos))); }
internal SlotItemInfo(kcsapi_mst_slotitem rawData, MasterTable <SlotItemEquipType> types) : base(rawData) { this.EquipType = types[rawData.api_type?[2] ?? 0] ?? SlotItemEquipType.Dummy; }