Class: RubyWarrior::PlayerGenerator

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby_warrior/player_generator.rb

Instance Method Summary collapse

Constructor Details

#initialize(level) ⇒ PlayerGenerator

Returns a new instance of PlayerGenerator.



7
8
9
# File 'lib/ruby_warrior/player_generator.rb', line 7

def initialize(level)
  @level = level
end

Instance Method Details

#generateObject

TODO refactor and test this method



20
21
22
23
24
25
26
27
28
29
# File 'lib/ruby_warrior/player_generator.rb', line 20

def generate
  if level.number == 1
    FileUtils.mkdir_p(level.player_path) unless File.exists? level.player_path
    FileUtils.cp(templates_path + '/player.rb', level.player_path)
  end
  
  File.open(level.player_path + '/README', 'w') do |f|
    f.write read_template(templates_path + '/README.erb')
  end
end

#levelObject



11
12
13
# File 'lib/ruby_warrior/player_generator.rb', line 11

def level
  @level
end

#previous_levelObject



15
16
17
# File 'lib/ruby_warrior/player_generator.rb', line 15

def previous_level
  @previous_level ||= Level.new(level.profile, level.number-1)
end

#templates_pathObject



31
32
33
# File 'lib/ruby_warrior/player_generator.rb', line 31

def templates_path
  File.expand_path("../../../templates", __FILE__)
end