internal void PlayStormySeas(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) { LocationDetail locationToStorm; do { locationToStorm = GetLocationFromName(ui.GetNameOfLocationWhereStormySeasIsBeingPlayed()); ui.TellUser(locationToStorm.Name); } while (locationToStorm.Name == "Unknown location" || locationToStorm.Name == "Multiple locations" || locationToStorm.Type != LocationType.Sea); Logger.WriteToDebugLog("Stormy Seas was played in " + locationToStorm.Name); Logger.WriteToGameLog("Stormy Seas was played in " + locationToStorm.Name); locationToStorm.TurnsUntilStormSubsides = 2; if (locationToStorm == Dracula.CurrentLocation) { locationToStorm.IsRevealed = true; ui.TellUser("That is where Dracula was"); LocationDetail locationToMoveTo = Dracula.DecideWhichPortToGoToAfterStormySeas(this, locationToStorm); Dracula.MoveByRoadOrSea(this, locationToMoveTo, ui); draculaEventCard = Dracula.WillPlaySensationalistPress(this, 0); bool revealing = true; if (draculaEventCard != null) { switch (draculaEventCard.name) { case "Sensationalist Press": ui.TellUser("Dracula played Sensationalist Press to cancel revealing the port he went to"); DiscardEventFromDracula("Sensationalist Press"); int hunterPlayingGoodluck = ui.AskWhichHunterIsUsingGoodLuckToCancelEvent(); if (hunterPlayingGoodluck > -1) { DiscardEventFromHunterAtIndex("Good Luck", hunterPlayingGoodluck, ui); } else { revealing = false; } break; } } if (revealing) { Dracula.LocationTrail[0].IsRevealed = true; } Dracula.HandleDroppedOffLocations(this, ui); Dracula.MatureEncounters(this, ui); } } }