static IsoCat() {
using( Bitmap tilesBmp = Resources.Tileset ) {
TileX = tilesBmp.Width / 50;
TileY = tilesBmp.Height;
TileStride = TileX * TileY * 4;
Tiles = new byte[50 * TileStride];
MaxTileDim = Math.Max( TileX, TileY );
for( int i = 0; i < 50; i++ ) {
for( int y = 0; y < TileY; y++ ) {
for( int x = 0; x < TileX; x++ ) {
int p = i * TileStride + (y * TileX + x) * 4;
System.Drawing.Color c = tilesBmp.GetPixel( x + i * TileX, y );
Tiles[p] = c.B;
Tiles[p + 1] = c.G;
Tiles[p + 2] = c.R;
Tiles[p + 3] = c.A;
}
}
}
}
using( Bitmap stilesBmp = Resources.TilesetShadowed ) {
ShadowTiles = new byte[50 * TileStride];
for( int i = 0; i < 50; i++ ) {
for( int y = 0; y < TileY; y++ ) {
for( int x = 0; x < TileX; x++ ) {
int p = i * TileStride + (y * TileX + x) * 4;
System.Drawing.Color c = stilesBmp.GetPixel( x + i * TileX, y );
ShadowTiles[p] = c.B;
ShadowTiles[p + 1] = c.G;
ShadowTiles[p + 2] = c.R;
ShadowTiles[p + 3] = c.A;
}
}
}
}
}