Sha256: 2947ce8e919db76c24899e3207a7a353b6fe412f0dc3d2b40d0c67cee985f44c
Contents?: true
Size: 1.47 KB
Versions: 8
Compression:
Stored size: 1.47 KB
Contents
respond :place, Use.many_children, Use.reachable(Supporter) do |actor, children, supporter| placed = [] children.each { |child| buffer = actor.quietly :place, child, supporter if child.parent != supporter actor.tell buffer else placed.push child end } if placed.length > 0 actor.tell "You put #{placed.join_and} on #{the supporter}." end end respond :place, Use.any_expression, Use.ambiguous_children, Use.reachable(Supporter) do |actor, _, children, supporter| actor.perform :place, children, supporter end respond :place, Use.text("all", "everything"), Use.reachable(Supporter) do |actor, _, supporter| children = Use.children.context_from(actor).that_are_not(:attached?) actor.perform :place, children, supporter end respond :place, Use.text("all", "everything"), Use.text("except", "but"), Use.ambiguous_children, Use.reachable(Supporter) do |actor, _, _, exceptions, supporter| children = Use.children.context_from(actor).that_are_not(:attached?) actor.perform :place, children - exceptions, supporter end respond :place, Use.not_expression, Use.ambiguous_children, Use.reachable(Supporter) do |actor, _, exceptions, supporter| children = Use.children.context_from(actor).that_are_not(:attached?) actor.perform :place, children - exceptions, supporter end respond :place, Use.plural_children, Use.reachable(Supporter) do |actor, children, supporter| actor.perform :place, children, supporter end
Version data entries
8 entries across 8 versions & 1 rubygems