Esempio n. 1
0
        internal void PlayVampireLair(int hunterIndex, UserInterface ui)
        {
            EventDetail draculaEventCard = Dracula.WillPlayDevilishPower(this, ui);
            bool eventIsCancelled = false;
            if (draculaEventCard != null)
            {
                switch (draculaEventCard.name)
                {
                    case "DevilishPower":
                        ui.TellUser("Dracula played Devilish power to cancel this event");
                        DiscardEventFromDracula("Devilish Power");
                        int hunterPlayingGoodluck = ui.AskWhichHunterIsUsingGoodLuckToCancelEvent();
                        if (hunterPlayingGoodluck > -1)
                        {
                            DiscardEventFromHunterAtIndex("Good Luck", hunterPlayingGoodluck, ui);
                        }
                        else
                        {
                            eventIsCancelled = true;
                        }

                        break;
                }
            }
            if (!eventIsCancelled)
            {
                switch (ResolveCombat(hunterIndex, 6, true, ui))
                {
                    case "Bite":
                        if (NumberOfHuntersAtLocation(LocationOfHunterAtHunterIndex(hunterIndex)) > 1)
                        {
                            ApplyBiteToOneOfMultipleHunters(hunterIndex, ui);
                        }
                        else
                        {
                            ApplyBiteToHunter(hunterIndex, ui);
                        }
                        break;
                    case "Enemy wounded":
                        VampirePointTracker--;
                        break;
                    case "Enemy killed":
                        VampirePointTracker--;
                        break;
                    case "Hunter killed":
                        Hunters[ui.GetNameOfHunterKilled()].Health = 0;
                        HandlePossibleHunterDeath(ui);
                        break;
                }
            }
        }