Class: CoopAl::ChapterGenerator

Inherits:
Object
  • Object
show all
Defined in:
lib/coop_al/chapter_generator.rb

Overview

ChapterGenerator

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name, description, adventure, bestiary) ⇒ ChapterGenerator

Returns a new instance of ChapterGenerator.



8
9
10
11
12
# File 'lib/coop_al/chapter_generator.rb', line 8

def initialize(name, description, adventure, bestiary)
  @adventure = adventure
  @chapter = Chapter.new(name, description, adventure)
  @bestiary = bestiary
end

Instance Attribute Details

#chapterObject (readonly)

Returns the value of attribute chapter.



6
7
8
# File 'lib/coop_al/chapter_generator.rb', line 6

def chapter
  @chapter
end

Instance Method Details

#encounter(name, &blk) ⇒ Object



14
15
16
17
# File 'lib/coop_al/chapter_generator.rb', line 14

def encounter(name, &blk)
  generator = EncounterGenerator.new(name, @chapter, @bestiary)
  @chapter.add_encounter(generator.generate_encounter(&blk))
end


24
25
26
# File 'lib/coop_al/chapter_generator.rb', line 24

def link_to(chapter)
  @chapter.add_link(Path.absolute(@adventure.name, chapter))
end


28
29
30
# File 'lib/coop_al/chapter_generator.rb', line 28

def link_to_downtime
  @chapter.link_to_downtime
end

#random(name, &blk) ⇒ Object



19
20
21
22
# File 'lib/coop_al/chapter_generator.rb', line 19

def random(name, &blk)
  generator = RandomEncounterGenerator.new(name, @chapter, @bestiary)
  @chapter.add_encounter(generator.generate_encounter(&blk))
end