Class: MapDungeon::DungeonBuilder
- Inherits:
-
Object
- Object
- MapDungeon::DungeonBuilder
- Includes:
- MapEntity
- Defined in:
- lib/map/dungeon.rb
Overview
Dungeon builder class
Instance Attribute Summary collapse
-
#dungeon ⇒ Object
readonly
Returns the value of attribute dungeon.
Instance Method Summary collapse
- #add_description(description) ⇒ Object
- #add_name(name) ⇒ Object
- #build_dungeon(name, description, node = nil, entityBuilder = "") ⇒ Object
-
#initialize ⇒ DungeonBuilder
constructor
A new instance of DungeonBuilder.
Constructor Details
#initialize ⇒ DungeonBuilder
Returns a new instance of DungeonBuilder.
58 59 60 |
# File 'lib/map/dungeon.rb', line 58 def initialize() @dungeon = Dungeon.new() end |
Instance Attribute Details
#dungeon ⇒ Object (readonly)
Returns the value of attribute dungeon.
62 63 64 |
# File 'lib/map/dungeon.rb', line 62 def dungeon @dungeon end |
Instance Method Details
#add_description(description) ⇒ Object
87 88 89 |
# File 'lib/map/dungeon.rb', line 87 def add_description(description) @dungeon.description = description end |
#add_name(name) ⇒ Object
83 84 85 |
# File 'lib/map/dungeon.rb', line 83 def add_name(name) @dungeon.name = name end |
#build_dungeon(name, description, node = nil, entityBuilder = "") ⇒ Object
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/map/dungeon.rb', line 64 def build_dungeon(name, description, node = nil, entityBuilder = "") add_name(name) add_description(description) if(node != nil) node.each() do |entity| args = [] if(entityBuilder.length > 0) builder = Object::const_get(entityBuilder).new() else builder = EntityBuilder.new() end nodeSet = entity.xpath("*") nodeSet.each { |n| args << n.content } builder.build_entity(*(args)) @dungeon.add_entity(builder.entity, builder.entity.type) end end end |