Class: Woyo::Character
Instance Attribute Summary
Attributes inherited from WorldObject
#_test, #context, #id
Instance Method Summary
collapse
Methods inherited from WorldObject
#attribute_changes, #attribute_clear_changes, #changes, #clear_changes, #initialize, #uid
Methods included from Evaluate
#children, #evaluate, included
Methods included from Attributes
#attribute, #attributes, #changes, #clear_changes, #define_attr, #define_attr!, #define_attr?, #define_attr_default, #define_attr_equals, #define_attr_methods, #dependent_changes, #exclusion, #exclusions, #group, #groups, #is, #is?, #track_changes
Instance Method Details
#go(way_or_id) ⇒ Object
24
25
26
27
28
29
30
|
# File 'lib/woyo/world/character.rb', line 24
def go way_or_id
id = way_or_id.kind_of?(Way) ? way_or_id.id : way_or_id
way = @location.ways[id]
@location.characters.delete me.id
@location = way.to
@location.characters[me.id] = me
end
|
#initialize_object ⇒ Object
7
8
9
10
|
# File 'lib/woyo/world/character.rb', line 7
def initialize_object
super
attributes :description, name: lambda { |this| this.id.to_s.capitalize }
end
|
#location ⇒ Object
16
17
18
|
# File 'lib/woyo/world/character.rb', line 16
def location
@location ||= context if context.is_a? Location
end
|
#me ⇒ Object
20
21
22
|
# File 'lib/woyo/world/character.rb', line 20
def me
self
end
|
#world ⇒ Object
12
13
14
|
# File 'lib/woyo/world/character.rb', line 12
def world
@world ||= context if context.is_a? World
end
|