Skip to content

Instantly share code, notes, and snippets.

@johnlindquist
Created March 2, 2011 22:38
Show Gist options
  • Save johnlindquist/851920 to your computer and use it in GitHub Desktop.
Save johnlindquist/851920 to your computer and use it in GitHub Desktop.
package
{
import flash.display.Sprite;
public class Sandbox extends Sprite
{
public function Sandbox()
{
var gridWidth:int = 70;
var gridHeight:int = 48;
var gridTotal:int = gridWidth * gridHeight;
var gridArray:Array = [];
var edgeArray:Array = [];
var i:int;
for (i = 0; i < gridHeight; i++)
{
for (var j:int = 0; j < gridWidth; j++)
{
if(gridArray[i] == null) gridArray[i] = [];
gridArray[i][j] = "?";
}
}
var isEdge:Boolean;
var currentColumn:int;
var currentRow:int;
//build "edge array" after the main 2d grid is created
for (i = 0; i < gridTotal; i++, isEdge = false)
{
//this is what's going on below
// var firstColumn:Boolean = (i % gridWidth) == 0;
// var lastColumn:Boolean = (i % gridWidth) == (gridWidth -1);
// var firstRow:Boolean = i < gridWidth;
// var lastRow:Boolean = (gridWidth - i) < gridWidth;
isEdge ||= ((i % gridWidth) == 0);
isEdge ||= (i % gridWidth) == (gridWidth - 1);
isEdge ||= i < gridWidth;
isEdge ||= i > (gridTotal - gridWidth);
if(isEdge)
{
currentColumn = i % gridWidth;
currentRow = Math.floor(i / gridWidth);
edgeArray.push(currentRow, currentColumn);
}
}
//anytime later
for (i = 0; i < edgeArray.length; i+=2)
{
var row:int = edgeArray[i];
var column:int = edgeArray[i + 1];
gridArray[row][column] = "#";
}
for (i = 0; i < gridArray.length; i++)
{
trace(i + " " + gridArray[i])
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment