class Use

Attributes

item[RW]

Public Class Methods

new(item, &block) click to toggle source
# File lib/Olib/core/use.rb, line 5
def initialize(item, &block)
  @item = item
  both(&block) if block
end

Public Instance Methods

both(&block) click to toggle source
# File lib/Olib/core/use.rb, line 32
def both(&block)
  empty_hands
  @item.take
  run &block
  fill_hands
end
left(&block) click to toggle source
# File lib/Olib/core/use.rb, line 17
def left(&block)
  empty_left_hand
  @item.take
  Char.swap if Char.right.id == @item.id
  run &block
  fill_left_hand
end
right(&block) click to toggle source
# File lib/Olib/core/use.rb, line 25
def right(&block)
  empty_right_hand
  @item.take
  run &block
  fill_right_hand
end
run() { |item| ... } click to toggle source
# File lib/Olib/core/use.rb, line 10
def run(&block)
  Try.new do
    yield @item
  end
  @item.container.add(@item)
end