public void AddRoom(Room room) { }
public override Door MakeDoor(Room r1, Room r2) { return new DoorNeedingSpell(r1, r2); }
public DoorNeedingSpell(Room r1, Room r2): base(r1, r2) { }
public virtual Door MakeDoor(Room r1, Room r2) { return new Door(r1, r2); }
public Door(Room r1, Room r2) { }