private static UnitQueueItem GetUnitQueueItem(IDomObject item, string typeStr) { CQ itemCq = item.OuterHTML; var queantAndTypeStr = itemCq.Select("div.unit_sprite.unit_sprite_smaller").ToList().First(); var type = UnitHelper.GetTypeForString(queantAndTypeStr.Classes.ToList().Last()); var domElements = item.ChildElements.ToList(); var quantity = RegExHelper.GetNumberWithRegEx(@"(\d+)", domElements[0].InnerText); var timeUntillCompleeteStr = itemCq.Text(); var timeUntillCompleete = RegExHelper.GetTimeFromString(timeUntillCompleeteStr); var queueItem = new UnitQueueItem { Quantity = quantity, Type = type, TimeLeft = timeUntillCompleete, Id = GetOrderQueueId(item, typeStr) }; return(queueItem); }
private BuildingQueueItem GetBuildingQueueItem(IDomObject item) { CQ trElement = item.OuterHTML; var timeUntillCompleeteStr = trElement.Select("td span").FirstElement().TextContent; var timeUntillCompleete = RegExHelper.GetTimeFromString(timeUntillCompleeteStr); var builingName = RegExHelper.GetTextWithRegEx("buildorder_([a-z]+)", item.ClassName); var buildingType = BuildingHelper.GetBuildingTypeFromString(builingName); var subString = item.FirstElementChild.InnerText.Split('\n')[1]; var lvl = RegExHelper.GetNumberWithRegEx(@"([\d]+)", subString); var id = GetBuildingQueueId(item); var buildingQueueItem = new BuildingQueueItem { Level = lvl, Type = buildingType, TimeLeft = timeUntillCompleete, Id = id }; return(buildingQueueItem); }