public AbstractDungeonStructureBuilder AddEmbeddedDungeon(string key, AbstractDungeonStructure dungeonStructure) => this.Also(x => { if (newInstance.EmbeddedDungeons == null) { newInstance.EmbeddedDungeons = new Dictionary <string, AbstractDungeonStructure>(); } newInstance.EmbeddedDungeons.Add(key, dungeonStructure); });
public AbstractDungeonStructureBuilderFinisher(AbstractDungeonStructure newInstance, AbstractDungeonElement startElement) { this.newInstance = newInstance; this.newInstance.StartElement = startElement; }
public AbstractDungeonStructureBuilder() { newInstance = new AbstractDungeonStructure(); newInstance.StructureMetaData = StructureMetaData.Builder.Empty; }
public DungeonStructure(DungeonNode startElement, StructureMetaData structureMetaData, AbstractDungeonStructure abstractStructure) { StartElement = startElement; AbstractStructure = abstractStructure; StructureMetaData = structureMetaData; }