Sha256: 35b233e470346baebcc67103b12bfcdc7fab42fa7cbb5d545c2afb15bc5315f5

Contents?: true

Size: 1.04 KB

Versions: 2

Compression:

Stored size: 1.04 KB

Contents

Gamefic.script do
  respond :place, Use.children, Use.reachable do |actor, thing, supporter|
    actor.tell "You can't put #{the thing} on #{the supporter}."
  end

  respond :place, Use.available, Use.available(Supporter) do |actor, thing, supporter|
    actor.perform :take, thing unless thing.parent == actor
    next unless thing.parent == actor
    thing.parent = supporter
    actor.tell "You put #{the thing} on #{the supporter}."
  end

  respond :place, Use.children, Use.reachable(Supporter) do |actor, thing, supporter|
    thing.parent = supporter
    actor.tell "You put #{the thing} on #{the supporter}."
  end

  interpret 'put :thing on :supporter', 'place :thing :supporter'
  interpret 'put :thing down on :supporter', 'place :thing :supporter'
  interpret 'set :thing on :supporter', 'place :thing :supporter'
  interpret 'set :thing down on :supporter', 'place :thing :supporter'
  interpret 'drop :thing on :supporter', 'place :thing :supporter'
  interpret 'place :thing on :supporter', 'place :thing :supporter'
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
gamefic-standard-2.3.1 lib/gamefic-standard/actions/place.rb
gamefic-standard-2.3.0 lib/gamefic-standard/actions/place.rb