diff options
author | Jérémy Zurcher <jeremy@asynk.ch> | 2012-05-03 22:27:16 +0200 |
---|---|---|
committer | Jérémy Zurcher <jeremy@asynk.ch> | 2012-05-03 22:27:16 +0200 |
commit | 2ee48c4f18470e733f244c659221e243ff998416 (patch) | |
tree | 62949886912b3dc5eb9e000b211e7f45f17ed978 /lib/evendoors/spot.rb | |
download | edoors-ruby-2ee48c4f18470e733f244c659221e243ff998416.zip edoors-ruby-2ee48c4f18470e733f244c659221e243ff998416.tar.gz |
initial commit
Diffstat (limited to 'lib/evendoors/spot.rb')
-rw-r--r-- | lib/evendoors/spot.rb | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/lib/evendoors/spot.rb b/lib/evendoors/spot.rb new file mode 100644 index 0000000..e88bac7 --- /dev/null +++ b/lib/evendoors/spot.rb @@ -0,0 +1,28 @@ +#! /usr/bin/env ruby +# -*- coding: UTF-8 -*- + +# +module EvenDoors + # + class Spot + # + def initialize n, p + @name = n # unique in it's room + @parent = p # single direct parent + @viewer = nil # particle going through that position will be sent there readonly + end + # + attr_reader :name + attr_accessor :viewer, :parent + # + def path + return @path if @path + p = ( @parent ? @parent.path+'/' : '') + name + @path = p.sub(/^\/+/,'').gsub(/\/{2,}/,'/').sub(/\/+$/,'') + end + # + end + # +end +# +# EOF |