John, Your latest response (to include the if loop) should get me to where I am going.
That was great. A good lesson in stepping back and looking at problem in a fresh way. Thanks, Terry -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of John McCormack Sent: Thursday, April 17, 2008 4:41 AM To: Flash Coders List Subject: Re: [Flashcoders] byteArray x/y Terry, // in randomize( ) in TileMap.as we have // a value sometimes more than 12... setTile(j, i, (i * numCols) + j); // here ^^^^^^^^^^^^^ // But the original has a value never more than 12 setTile(j, i, Math.floor(Math.random()*numTiles)); // here ^^^^^^^^^^^^^^^^^^^^^^^^^^^ // and this value is passed in as "id" and stored in map[ ][ ] inside function // setTile(row,col,id ) at Line 32 in TileMap.as map[row][col] = id; // and this is used later to identify the tile to use (1 of 12) in the tiles array // made up of 12 rectangular patches from the original bitmap // Line 28 in TileMap.as public function getTile (id:int):ByteArray { return tiles[id]; // returns null if id>12 } // BUT, because id>12 does not exist then thisTile receives null // in TileMapRenderer line 135 thisTile = tiles.getTile(map.getTile(j, i)); thisTile.position and that causes the breakdown you see Glen is right to point you to this code, it's really useful. The main idea is shown below. It uses getPixels to pick out a rectangle of bytes that get stored in the newTileSet array for using later. // Line 73 in TileSet.as... public function convertBitmapToTiles (size:int, data:BitmapData):Array { var newTileSet:Array = new Array(); var numTilesH:int = data.width/size; var numTilesV:int = data.height/size; for (var i:int = 0; i < numTilesV; i++) { for (var j:int = 0; j < numTilesH; j++) { newTileSet.push(data.getPixels(new Rectangle(j*size, i*size, size, size))); } } return newTileSet; } John _______________________________________________ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders _______________________________________________ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders