Maze generator miyaoka forked:2 favorite:5 lines:59 license : MIT License modified : 2009-02-21 03:56:15 package { import flash.display.Sprite; [SWF(width="465", height="465", backgroundColor= 0xffffff, frameRate="60")] public class Maze extends Sprite { public function Maze() :void { var maze:MazeContainer = new MazeContainer(50, 50); maze.scaleX = maze.scaleY = maze.x = maze.y = 5; addChild(maze); } } } import flash.display.Sprite class MazeContainer extends Sprite { public function MazeContainer(col:uint = 1, row:uint = 1) :void { var c:uint; var r:uint; var block:Block; for (c = 1; c < col; c++) { for (r = 0; r < row; r++) { block = new Block(); block.x = c * 2; block.y = r * 2; addChild(block); } } //col:0 for (r = 0; r < row; r++) { block = new Block(true); block.y = r * 2; addChild(block); } } } class Block extends Sprite { public static const XY:Array = [ [0, -1], [1, 0], [0, 1], [-1, 0] ]; public function Block(isFarLeft:Boolean = false) :void { graphics.beginFill(0); graphics.drawRect(0, 0, 1, 1); var pt:Array = XY[Math.floor(Math.random() * (isFarLeft ? 4 : 3))]; graphics.drawRect(pt[0], pt[1], 1, 1); } } Code Fullscreen Preview Fullscreen tjoen matsumos jngrt : generative maze clockmaker : 迷路ジェネレーター blackwater : 迷宫 generative maze addChild scaleY scaleX Math.floor Boolean Array uint Math.random Sprite sort new page view favorite forked pv 990 forked from: Maze generator Werewolf forked:2 favorite:2 lines:59 ( diff:2 ) pv 2860 Maze generator(multi-route) miyaoka forked:4 favorite:5 lines:68 ( diff:33 ) tag: algorithm