/// <summary> /// Cast a WonderDAO steps array into the Wonder applicable steps array. /// </summary> /// <param name="wonderDAO">The object containing the steps information.</param> /// <returns>The list of wonder steps.</returns> private static List <Step> GetSteps(WonderDAO wonderDAO) { List <Step> steps = new List <Step>(); foreach (WonderDAO.StepDAO stepDAO in wonderDAO.Steps) { steps.Add(new Step( CardsDAO.GetResources(stepDAO.StepBuildCondition.ToList()), stepDAO.StepTypes.Cast <StepType>().ToArray(), stepDAO.Reward != null ? CardsDAO.GetReward(stepDAO.Reward.ToList()): new BonusCard.RewardQuantity[0], stepDAO.WarPoints, (AcquisitionType)stepDAO.TradeType, (BonusCard.ResourceMetaType)stepDAO.Resources, (BuilderType)stepDAO.BuildType )); } return(steps); }