private void PlayLocalRumors(int hunterIndex, UserInterface ui) { int locationIndex = -1; do { locationIndex = ui.GetLocationIndexOfEncounterToReveal(); } while (Dracula.LocationTrail[locationIndex] == null && (locationIndex > 5 ? Dracula.Catacombs[locationIndex - 6] == null : true)); LocationDetail locationWhereEncounterIsBeingRevealed; if (locationIndex < 6) { locationWhereEncounterIsBeingRevealed = Dracula.LocationTrail[locationIndex]; } else { locationWhereEncounterIsBeingRevealed = Dracula.Catacombs[locationIndex - 6]; } int encounterToReveal = 0; if (locationWhereEncounterIsBeingRevealed.Encounters.Count() > 0) { encounterToReveal = ui.GetIndexOfEncounterToReveal(); } locationWhereEncounterIsBeingRevealed.Encounters[encounterToReveal].isRevealed = true; DiscardItemFromHunterAtIndex("Local Rumors", hunterIndex, ui); }