public Magicite BuildMagiciteInfoFromName(string name) { var magicite = magiciteRepository.GetMagiciteByName(name); var newMagicite = new Magicite(); newMagicite.Info = magicite; var statusRegex = new Regex(Constants.Constants.statusRegex); var statuses = statusRegex.Matches(magicite.Effects).Select(x => x?.Groups[1]?.Value).ToList(); newMagicite.MagiciteStatuses = statusRepository.GetStatusByNamesAndSource(magicite.MagiciteUltra, statuses, 0); return(newMagicite); }
private void WireUpMagiciteIds(TransformResultsContainer transformResults) { foreach (MagiciteSkill ms in transformResults.MagiciteSkills) { if (!String.IsNullOrWhiteSpace(ms.MagiciteName)) { Magicite parentMagicite = transformResults.Magicites.FirstOrDefault( m => $"{m.MagiciteName} ({GetNameOfTypeListItem<RealmList>(m.Realm)})" == ms.MagiciteName); if (parentMagicite != null) { ms.MagiciteId = parentMagicite.Id; } else { ms.MagiciteId = 0; //couldn't match } _logger.LogDebug("wired up MagiciteId {MagiciteId} to MagiciteSkill {MagiciteSkill}", ms.MagiciteId, ms.Description); } } }