/// <summary> /// Resolves the Vampiric Influence Event card /// </summary> /// <param name="game">The GameState</param> /// <param name="logic">The artificial intelligence component</param> private static void PlayVampiricInfluence(GameState game, DecisionMaker logic) { Console.WriteLine("Dracula played Vampiric Influence"); var bittenHunters = new List<HunterPlayer>(); if (HunterPlayingGoodLuckToCancelDraculaEvent(game, Event.VampiricInfluence, Event.VampiricInfluence, logic) > 0) { Console.WriteLine("Vampiric Influence cancelled"); return; } foreach (var h in game.Hunters) { if (h != null && h.BiteCount > 0) { bittenHunters.Add(h); } } var victim = logic.ChooseVampiricInfluenceVictim(bittenHunters); Console.WriteLine( "Dracula is influencing {0}, who must show Dracula all of {1} cards and declare {1} next move", victim.Hunter.Name(), victim.Hunter == Hunter.MinaHarker ? "her" : "his"); DraculaLooksAtAllHuntersItems(game, victim); DraculaLooksAtAllHuntersEvents(game, victim); HunterDeclaresNextMove(game, victim); }