Class: MazeMagic::MazeGenerator::RecursiveBacktracking

Inherits:
Object
  • Object
show all
Includes:
Randomnes
Defined in:
lib/maze_magic/maze_generator/recursive_backtracking.rb

Overview

RecursiveBacktracking algorithm for generating Maze

original author Jamis Buck

http://weblog.jamisbuck.org/2010/12/27/maze-generation-recursive-backtracking

I've wraped the algorith with objects

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Randomnes

included, #preseeder, #randomizer

Constructor Details

#initialize(grid:) ⇒ RecursiveBacktracking

Returns a new instance of RecursiveBacktracking.



16
17
18
# File 'lib/maze_magic/maze_generator/recursive_backtracking.rb', line 16

def initialize(grid:)
  @grid = grid
end

Instance Attribute Details

#gridObject (readonly)

Returns the value of attribute grid.



14
15
16
# File 'lib/maze_magic/maze_generator/recursive_backtracking.rb', line 14

def grid
  @grid
end

Instance Method Details

#callObject



20
21
22
23
24
# File 'lib/maze_magic/maze_generator/recursive_backtracking.rb', line 20

def call
  preseeder.call
  algorithm(grid, grid.start_x, grid.start_y)
  grid
end