class Gemwarrior::Letter

Public Class Methods

new() click to toggle source
Calls superclass method Gemwarrior::Item::new
# File lib/gemwarrior/entities/items/letter.rb, line 8
def initialize
  super

  self.name         = 'letter'
  self.name_display = 'Letter'
  self.description  = 'A single page of thin paper, folded at the middle, with some excellent penmanship impressed upon it.'
  self.takeable     = true
end

Public Instance Methods

use(world) click to toggle source
# File lib/gemwarrior/entities/items/letter.rb, line 17
def use(world)
  if self.used
    print 'Do you want to read the letter again? (y/n) '
    answer = gets.chomp.downcase

    case answer
    when 'y', 'yes'
      print "\n"
      print_letter(world)
    else
      { type: nil, data: nil }
    end
  else
    self.used = true
    print_letter(world)
    { type: 'xp', data: 3 }
  end
end

Private Instance Methods

print_letter(world) click to toggle source