public void DisplayFearCardConstructor(int terrorLevel) { List <IFearOptions> fearCards = new List <IFearOptions>(); fearCards.AddRange(SpiritIsland.Basegame.FearCards.GetFearCards()); fearCards.AddRange(SpiritIsland.BranchAndClaw.FearCards.GetFearCards()); foreach (var c in fearCards) { // string fearCard = c.GetType().Name; // capture which card it is before the exception _ = new ActivatedFearCard(c, terrorLevel); } }
public Image GetImage(ActivatedFearCard card) { string name = card.Name; string ns = card.FearOptions.GetType().Namespace; if (!images.ContainsKey(name)) { string edition = ns switch { "SpiritIsland.Basegame" => "basegame", "SpiritIsland.BranchAndClaw" => "bac", "SpiritIsland.JaggedEarth" => "je", _ => throw new ArgumentException($"Namespace {ns} not mapped to a fear folder") }; string name2 = GetFileName(name, edition); Image image = Image.FromFile(name2); images.Add(name, image); } return(images[name]); }