11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
# File 'lib/watchbuffy.rb', line 11
def pick(show: %w[buffy angel], buffy_season: BUFFY_SEASONS, angel_season: ANGEL_SEASONS, exclude_characters: [])
episode = EPISODES.select{ |e|
show.include?(e["show"]) &&
(
e["show"] == "buffy" && Array(buffy_season).include?(e["season"]) ||
e["show"] == "angel" && Array(angel_season).include?(e["season"])
) &&
(Array(e["includesCharacters"]) & Array(exclude_characters)).length.zero?
}.sample
if episode
watch(episode)
else
puts "No episode found"
end
end
|