קוד:
// Draws the tiles (borders + filling).
public function drawTiles():void {
tileMatrix.graphics.lineStyle(0,borderColor,border Visible);
addChildAt(tileMatrix,0);
for (var i:int=0; i<gridSize; i++) {
for (var j:int=0; j<gridSize; j++) {
if ((j<gridSize-1) && (i<gridSize-1)) {
var vertex1:Vertex = gridMatrix[i][j];
var vertex2:Vertex = gridMatrix[i][j+1];
var vertex3:Vertex = gridMatrix[i+1][j+1];
var vertex4:Vertex = gridMatrix[i+1][j];
colorTile(tileMatrix,vertex1,createVertexEnv(gridM atrix,i,j,vertex2,vertex3,vertex4));
tileMatrix.graphics.moveTo(vertex1.xTrue,vertex1.y True);
tileMatrix.graphics.lineTo(vertex2.xTrue,vertex2.y True);
tileMatrix.graphics.lineTo(vertex3.xTrue,vertex3.y True);
tileMatrix.graphics.lineTo(vertex4.xTrue,vertex4.y True);
tileMatrix.graphics.lineTo(vertex1.xTrue,vertex1.y True);
tileMatrix.graphics.endFill();
}
}
}
}
// A function to determine the color of a certain given tile.
private function colorTile(tileMatrix:Sprite,vertex:Vertex,vertexAr ray:Array):void {
var garMatrix:Matrix = new Matrix();
var tWidth:Number = hSize+vSize;
var tHeight:Number = vSize-vertex.yOffset+vertexArray[4].yOffset;
garMatrix.createGradientBox(tWidth,tHeight,Math.at an(tHeight/tWidth)/prespective,0,0);
var colors:Array = [0xFFFFFF, 0x000000];
var alphas:Array = [tileVisible, tileVisible];
var ratios:Array = [0, 255];
tileMatrix.graphics.beginGradientFill(GradientType .LINEAR, colors, alphas, ratios, garMatrix);
}