Jump to content

Maze generation: Difference between revisions

→‎Simple, Depth-First: Use language-provided shuffle function.
(→‎Simple, Depth-First: Use language-provided shuffle function.)
Line 6,747:
(defvar vi)
(defvar pa)
 
(defun scramble (list)
(let ((out ()))
(each ((item list))
(let ((r (random *r* (+ 1 (length out)))))
(set [out r..r] (list item))))
out))
 
(defun neigh (loc)
Line 6,763 ⟶ 6,756:
(defun make-maze-rec (cu)
(set [vi cu] t)
(each ((ne (scrambleshuffle (neigh cu))))
(cond ((not [vi ne])
(push ne [pa cu])
543

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.