Understanding the language, error messages, etc.
by adekto » Fri Apr 18, 2014 4:00 pm
hi guys im kinda doing the maps for the buinomon and doing a test project to see how far we can go with it
im doing the code all blind (without a gamebuino to test on) anyway
so since we need a map i made a 2D array since that sound most logical to do using the program tiled i made a int array thats properly fine.
now the tricky part is the sprites, i have allot of sprites and they a currently in s spritemap as a single object i was wondering is this can be done (and how in program memory)
or do i need them all as separate static objects how do give them a logic name that (some sort of array?)
or sude i completely do it different with external file data reading (stream from sd card)
current data
- Code: Select all
int map_w = 48;
int map_h = 32;
int map_arr[map_h][map_w];
map_arr = {
{47, 47, 47, 47, 23, 19, 26, 38, 8, 26, 8, 26, 8, 19, 38, 66, 66, 38, 7, 8, 19, 8, 26, 7, 8, 19, 19, 19, 7, 7, 31, 26, 7, 8, 19, 19, 19, 7, 7, 31, 32, 8, 26, 8, 26, 8, 38, 7},
{47, 47, 47, 47, 23, 8, 26, 26, 20, 38, 20, 8, 20, 7, 6, 66, 66, 6, 19, 20, 8, 20, 7, 19, 20, 38, 8, 7, 19, 19, 43, 7, 19, 20, 38, 8, 7, 19, 19, 43, 44, 20, 8, 20, 7, 20, 38, 19},
{47, 47, 47, 53, 23, 20, 7, 8, 38, 7, 8, 20, 38, 19, 38, 66, 66, 6, 7, 8, 20, 8, 19, 7, 26, 7, 20, 19, 7, 7, 8, 19, 7, 26, 7, 20, 19, 7, 7, 8, 7, 6, 20, 8, 19, 26, 20, 45},
{47, 47, 47, 47, 23, 7, 19, 20, 26, 19, 20, 7, 7, 7, 31, 32, 31, 32, 19, 20, 7, 20, 8, 19, 7, 19, 8, 6, 19, 19, 26, 8, 19, 7, 19, 8, 6, 19, 19, 20, 19, 8, 26, 20, 45, 7, 7, 8},
{47, 47, 47, 47, 23, 19, 8, 7, 7, 7, 7, 7, 19, 19, 43, 44, 43, 44, 7, 7, 19, 6, 20, 7, 19, 38, 20, 7, 8, 26, 7, 20, 6, 19, 38, 20, 7, 8, 26, 8, 7, 20, 8, 26, 8, 19, 19, 20},
{47, 47, 53, 47, 48, 11, 20, 19, 19, 19, 19, 19, 38, 6, 26, 66, 66, 38, 19, 19, 26, 26, 26, 19, 26, 6, 38, 26, 26, 6, 19, 26, 6, 26, 6, 38, 19, 20, 7, 20, 19, 26, 20, 7, 20, 7, 26, 38},
{47, 47, 47, 47, 47, 48, 11, 65, 38, 26, 38, 26, 6, 26, 28, 66, 66, 26, 6, 6, 26, 38, 38, 26, 38, 6, 26, 6, 6, 26, 6, 26, 6, 38, 6, 26, 6, 6, 19, 7, 7, 7, 26, 19, 8, 19, 7, 8},
{47, 47, 36, 34, 53, 47, 23, 65, 6, 38, 6, 38, 26, 26, 6, 66, 66, 26, 26, 38, 6, 38, 26, 6, 38, 38, 6, 6, 6, 38, 66, 66, 66, 66, 66, 66, 66, 38, 38, 19, 19, 19, 8, 38, 20, 7, 19, 20},
{47, 36, 35, 45, 21, 47, 23, 65, 6, 6, 6, 26, 26, 38, 6, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 6, 26, 6, 38, 38, 66, 66, 6, 26, 6, 38, 20, 8, 7, 19, 8, 45},
{47, 23, 45, 9, 12, 36, 35, 65, 38, 26, 6, 26, 38, 6, 38, 66, 66, 26, 26, 38, 26, 38, 6, 38, 6, 38, 6, 6, 38, 26, 38, 26, 26, 38, 38, 6, 26, 66, 38, 38, 26, 8, 26, 20, 19, 38, 20, 26},
{47, 48, 10, 12, 47, 23, 65, 65, 65, 65, 65, 38, 26, 26, 6, 66, 66, 26, 26, 26, 60, 63, 63, 64, 63, 38, 6, 6, 26, 26, 60, 64, 64, 64, 63, 64, 38, 66, 6, 26, 38, 20, 26, 8, 45, 7, 45, 7},
{47, 53, 47, 47, 47, 23, 65, 49, 50, 65, 29, 30, 38, 6, 6, 66, 66, 26, 6, 6, 60, 4, 4, 4, 4, 38, 6, 6, 38, 6, 60, 4, 4, 4, 4, 4, 38, 66, 66, 31, 32, 26, 8, 20, 8, 19, 8, 19},
{47, 47, 47, 47, 47, 23, 65, 61, 62, 65, 41, 42, 6, 38, 26, 66, 66, 38, 26, 26, 60, 16, 16, 16, 16, 45, 38, 26, 26, 6, 60, 16, 16, 16, 16, 16, 26, 66, 66, 43, 44, 38, 20, 38, 20, 8, 20, 45},
{47, 47, 47, 53, 36, 35, 65, 65, 65, 65, 38, 6, 38, 28, 38, 66, 66, 38, 6, 45, 60, 5, 54, 54, 5, 38, 26, 6, 6, 26, 60, 16, 16, 16, 54, 16, 6, 66, 38, 38, 26, 26, 38, 8, 8, 20, 45, 7},
{47, 47, 53, 47, 23, 65, 65, 65, 65, 65, 6, 38, 6, 26, 6, 66, 66, 38, 38, 6, 6, 45, 66, 66, 26, 38, 6, 6, 26, 6, 38, 38, 26, 26, 38, 38, 26, 66, 6, 38, 26, 6, 6, 20, 20, 38, 8, 19},
{47, 47, 36, 34, 35, 65, 65, 29, 30, 65, 49, 50, 38, 26, 38, 66, 66, 26, 38, 6, 38, 38, 66, 6, 38, 6, 26, 6, 26, 38, 26, 9, 10, 11, 26, 6, 26, 66, 38, 26, 38, 38, 6, 8, 26, 7, 20, 38},
{34, 34, 35, 4, 1, 2, 65, 41, 42, 65, 61, 62, 9, 10, 11, 66, 66, 9, 10, 11, 26, 38, 66, 60, 64, 63, 63, 26, 6, 26, 9, 12, 22, 48, 11, 38, 26, 66, 60, 63, 63, 63, 63, 63, 8, 19, 7, 8},
{18, 17, 16, 16, 13, 14, 65, 65, 65, 65, 26, 6, 21, 22, 23, 66, 66, 33, 24, 23, 38, 6, 66, 60, 3, 3, 3, 38, 26, 6, 33, 24, 47, 22, 23, 6, 6, 66, 60, 3, 3, 3, 3, 3, 20, 45, 19, 20},
{17, 18, 17, 4, 1, 2, 65, 26, 6, 6, 6, 6, 33, 34, 35, 66, 66, 65, 33, 35, 26, 38, 66, 60, 15, 54, 15, 26, 6, 26, 65, 21, 47, 36, 35, 38, 26, 66, 60, 15, 40, 15, 40, 15, 7, 8, 45, 38},
{18, 17, 16, 16, 13, 14, 65, 6, 26, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 38, 26, 66, 6, 6, 26, 65, 9, 12, 36, 35, 38, 6, 38, 66, 60, 15, 15, 15, 15, 15, 19, 20, 38, 45},
{4, 4, 1, 2, 4, 4, 65, 38, 6, 66, 6, 6, 6, 6, 6, 26, 26, 38, 38, 6, 38, 26, 66, 66, 66, 66, 6, 6, 26, 65, 21, 53, 23, 6, 6, 38, 38, 66, 60, 15, 54, 15, 15, 15, 7, 45, 29, 30},
{16, 16, 13, 14, 16, 54, 65, 38, 38, 66, 6, 26, 38, 6, 26, 60, 63, 64, 64, 64, 38, 6, 26, 6, 26, 66, 38, 6, 26, 65, 33, 24, 48, 11, 6, 6, 6, 66, 26, 26, 66, 26, 38, 7, 19, 38, 41, 42},
{1, 2, 1, 2, 6, 6, 6, 6, 28, 66, 6, 38, 6, 38, 38, 60, 4, 4, 4, 4, 26, 38, 28, 26, 38, 66, 6, 26, 6, 65, 65, 21, 53, 23, 6, 26, 6, 66, 66, 66, 66, 6, 6, 19, 49, 50, 49, 50},
{13, 14, 13, 14, 4, 4, 66, 66, 66, 66, 6, 38, 26, 6, 26, 60, 16, 40, 16, 16, 38, 26, 38, 6, 38, 66, 26, 38, 65, 65, 9, 12, 36, 35, 6, 38, 6, 6, 26, 6, 26, 38, 7, 26, 61, 62, 61, 62},
{1, 2, 5, 5, 5, 5, 5, 5, 5, 6, 6, 26, 26, 6, 26, 60, 16, 16, 54, 16, 26, 38, 6, 6, 26, 66, 6, 6, 65, 65, 21, 47, 23, 65, 6, 6, 6, 38, 26, 26, 49, 50, 49, 50, 29, 30, 49, 50},
{13, 14, 17, 18, 17, 18, 17, 18, 17, 26, 26, 6, 38, 38, 26, 26, 38, 26, 66, 38, 38, 6, 38, 6, 38, 66, 6, 38, 6, 9, 12, 53, 23, 65, 26, 6, 26, 6, 26, 26, 61, 62, 61, 62, 41, 42, 61, 62},
{1, 2, 5, 9, 11, 9, 10, 11, 5, 45, 6, 45, 26, 6, 6, 6, 38, 26, 66, 66, 66, 66, 66, 66, 66, 66, 6, 26, 65, 33, 34, 24, 23, 65, 65, 6, 38, 38, 38, 29, 30, 38, 29, 30, 49, 50, 49, 50},
{13, 14, 9, 12, 48, 12, 22, 23, 5, 65, 65, 65, 38, 26, 26, 65, 38, 6, 38, 38, 38, 6, 26, 26, 6, 26, 26, 65, 65, 65, 65, 21, 23, 65, 65, 65, 6, 6, 6, 41, 42, 26, 41, 42, 61, 62, 61, 62},
{1, 2, 33, 24, 47, 47, 36, 35, 5, 5, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 9, 10, 12, 48, 11, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27},
{13, 14, 9, 12, 47, 47, 23, 18, 17, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 9, 10, 10, 12, 53, 47, 22, 23, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39},
{10, 10, 12, 47, 22, 47, 48, 11, 18, 17, 18, 17, 18, 17, 18, 17, 18, 17, 18, 17, 18, 17, 18, 17, 18, 17, 21, 53, 47, 36, 34, 34, 24, 23, 18, 17, 18, 17, 18, 17, 18, 17, 18, 17, 18, 17, 18, 17},
{47, 47, 47, 47, 47, 47, 47, 48, 10, 10, 10, 10, 10, 10, 11, 1, 2, 9, 10, 10, 10, 10, 10, 10, 10, 10, 12, 36, 34, 35, 1, 2, 21, 48, 10, 10, 11, 18, 17, 18, 17, 9, 10, 10, 10, 10, 11, 65}
};
static unsigned char PROGMEM blackMap[] =
{
96,48, //width and height
B11111111, B11111111, B11111111, B00000000, B00000000, B00000000, B00001000, B00000000, B00111111, B11111111, B11111100, B10100000,
B10000000, B00000011, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B01000000, B00000000, B00000010, B01000000,
B00000000, B00000001, B00000000, B00000000, B00000000, B00000000, B00000100, B00010000, B10011111, B11111111, B11111001, B10000000,
B00000000, B00000001, B11111111, B11111111, B11111111, B00000000, B00000100, B00010000, B10100000, B00000000, B00000101, B00000000,
B00000000, B00000001, B01000000, B00010000, B01000100, B00000000, B01000010, B00001000, B10100000, B00000000, B00000101, B00000000,
B00000000, B00000001, B11111111, B00010000, B01000100, B00000000, B01101110, B00000000, B10100000, B00000000, B00000101, B00000000,
B00000000, B00000001, B00000100, B00010000, B01000100, B00000000, B00000010, B00011000, B10100000, B00000000, B00000101, B00000000,
B00000000, B00000001, B11111111, B11111111, B11111111, B00000000, B10000001, B01010100, B10100000, B00000000, B00000101, B00000000,
B00000000, B00000001, B01000000, B00000001, B00000011, B10000000, B11001111, B00111000, B10100000, B00011000, B00000101, B00000000,
B00000000, B00000001, B11111111, B00000001, B00000001, B00000000, B00000001, B00011000, B10100000, B00101100, B00000101, B00000000,
B00000000, B00000001, B00000100, B00000001, B00000001, B00000000, B10000111, B11001000, B10100000, B01000100, B00000101, B00000000,
B00000000, B00000001, B11111111, B11111111, B00000001, B00000000, B11111111, B00101011, B10100000, B01000100, B00000101, B00000000,
B00000000, B00000001, B01000000, B00010000, B00000001, B00000000, B01111110, B00011100, B10100000, B11100110, B00000101, B00000000,
B00000000, B00000001, B11111111, B00010000, B00000001, B00000000, B00001000, B00001000, B10100000, B10110010, B00000101, B10000000,
B00000000, B00000001, B00000100, B00010000, B00000011, B10000000, B00100100, B00100100, B10100000, B11011110, B00000101, B01000000,
B10000000, B00000011, B11111111, B11111111, B11111111, B11111111, B00000100, B00000100, B10100000, B01110000, B00000101, B10100000,
B00000000, B00000000, B00000000, B00010000, B00000000, B00000000, B00000000, B00000000, B10100000, B00000000, B00000101, B00000000,
B00000000, B00000000, B11111111, B00000000, B00000010, B00010000, B00000100, B00000000, B10100000, B00000000, B00000101, B00000000,
B00000000, B00000000, B11111111, B00000001, B00000000, B00000000, B00000000, B00000000, B10100000, B00000000, B00000101, B00000000,
B00000000, B00000000, B00000000, B10000000, B00000000, B00000000, B00000001, B00000000, B10100000, B00000000, B00000101, B00000000,
B00000000, B00000000, B11111111, B00000001, B00000000, B00000000, B00100000, B00010000, B10100000, B00000000, B00000101, B00000000,
B00000000, B00000000, B00000000, B11111111, B00000000, B11000000, B10011000, B00010001, B10011111, B11111111, B11111001, B00000001,
B00000000, B00000000, B00000000, B00010000, B00000000, B00110001, B00000000, B01001001, B01000000, B00000000, B00000010, B00000010,
B00000000, B00000000, B00000000, B00010000, B01001000, B00100000, B01000000, B10000110, B00111111, B11111111, B11111100, B00000101,
B11111111, B00000000, B00000000, B00111100, B01110000, B00100000, B01000011, B10000100, B00000000, B00000000, B00000000, B00000101,
B11111111, B00000000, B00000000, B01111000, B01000000, B00110001, B11000001, B00000101, B00000000, B00000000, B00000000, B00000010,
B11111111, B00000000, B00000000, B11110000, B00001000, B01110111, B11100001, B00000111, B00000000, B00000000, B00000000, B00000001,
B11111111, B00000000, B00000000, B11100001, B00011111, B10110000, B01111011, B10001111, B00000000, B00000000, B00000000, B00000000,
B11111111, B00000000, B00000000, B11000011, B00001011, B00101000, B01110000, B11100110, B00000000, B00000000, B00000000, B00000000,
B11111111, B00000000, B11111111, B10000111, B00000001, B00100000, B01111001, B11001110, B00000000, B00000000, B00000000, B00000000,
B11111111, B00000000, B11111111, B00001111, B00000001, B10100000, B00111111, B11111000, B00000000, B00000000, B00000000, B00000000,
B11111111, B00000000, B00000000, B00011110, B00000010, B10100000, B00001111, B11100000, B00000000, B00000000, B00000000, B00000000,
B00000000, B00000000, B00001000, B00010000, B00000000, B11111111, B11111111, B11111111, B00000000, B00000000, B11111111, B00000001,
B00101001, B10100000, B00101000, B00010100, B00000000, B10000001, B11111000, B00001111, B00000000, B00000000, B11111101, B00000001,
B01010010, B00010100, B00000000, B00000000, B00000000, B10000001, B11110000, B00000111, B00000000, B00000000, B11101111, B00000001,
B00100101, B00101000, B00100000, B00000100, B00000000, B10000001, B11100000, B00000011, B00000000, B00000000, B11111111, B00000001,
B01001010, B10010100, B01111111, B11111110, B00000000, B10000001, B11100000, B00000011, B00000000, B00000000, B11111111, B00000001,
B00001101, B00100010, B00101000, B00010100, B00000000, B10001101, B11010000, B00000101, B00000000, B00000000, B11111011, B00000001,
B00010010, B10010000, B00001000, B00010000, B00000000, B10000101, B11010000, B00000101, B00000000, B00000000, B10111111, B00000001,
B00000100, B00000000, B00101000, B00010100, B00000000, B10000001, B11001110, B00111001, B00000000, B00000000, B11111111, B00000001,
B00000000, B01001000, B11111111, B11111111, B00000000, B00000000, B11001110, B00111001, B00000000, B00000000, B11011111, B00000000,
B00000011, B00000000, B00000001, B00000001, B00000000, B00000000, B11000001, B01000001, B00000000, B00000000, B01101101, B00000000,
B00000010, B10010000, B01000101, B00000001, B00000000, B00000000, B11010001, B11000101, B00000000, B00000000, B10111011, B00000000,
B00000011, B00100000, B00000001, B00000001, B00000000, B00000000, B11101100, B00011011, B00000000, B00000000, B11011110, B00000000,
B00000001, B01000000, B00000001, B00000001, B00000000, B00000000, B11110110, B00110111, B00000000, B00000000, B11101101, B00000000,
B00000000, B01000000, B00000001, B00000001, B00000000, B00000000, B11110010, B10100111, B00000000, B00000000, B10111111, B00000000,
B00000011, B01100000, B01000101, B00000001, B00000000, B00000000, B11110000, B00000111, B00000000, B00000000, B01010101, B00000000,
B00001111, B11111000, B00000001, B00000001, B00000000, B00000000, B11111000, B00001111, B00000000, B00000000, B11111011, B00000000,
};
static unsigned char PROGMEM greyMap[] =
{
96,48, //width and height
B00000000, B00000000, B00000000, B00000000, B00000001, B00000000, B00010000, B00000000, B00000000, B00000000, B00000000, B01010111,
B00000000, B00000000, B00000000, B11111111, B00000001, B00000000, B00011000, B00000000, B00111111, B11111111, B11111100, B10011011,
B00111111, B11111100, B11111111, B00000000, B11111111, B00000000, B00111000, B00000000, B01000000, B00000000, B00000010, B01101101,
B01101111, B01111110, B00000000, B00000000, B00000000, B00000000, B00111000, B00000000, B01010101, B11010101, B11010010, B11010101,
B01000101, B01010110, B10111111, B11101001, B00000000, B00000000, B00111100, B00010000, B01000110, B11100110, B11100010, B11100110,
B01000000, B00010110, B00000000, B11101111, B10111011, B00000000, B00010000, B00010000, B01011011, B01111011, B01111010, B01111011,
B01000000, B00000010, B11111011, B11101111, B10111011, B00000000, B01111100, B00000000, B01011011, B10011011, B10011010, B10011011,
B01000000, B00000010, B00000000, B00000000, B00000000, B00000000, B01111110, B00101000, B01001100, B11101100, B11101010, B11101100,
B01000000, B00000010, B10111111, B10011110, B00001100, B01100000, B00110000, B00000000, B01010111, B01100111, B01110010, B01110111,
B01000000, B00000010, B00000000, B11111110, B00000110, B11000000, B11111110, B00000000, B01011011, B10010011, B10011010, B10011011,
B01000000, B00000010, B11111011, B11111110, B00000110, B11000000, B01111000, B00110000, B01001101, B10111001, B10101010, B10101101,
B01100000, B00000010, B00000000, B00000000, B00000110, B11000000, B00000000, B00010100, B01010101, B10111001, B11010010, B11010101,
B01100000, B00000010, B10111111, B11101001, B11111110, B11111111, B00000000, B00000000, B01000110, B00011000, B11100010, B11100110,
B01101010, B10101010, B00000000, B11101111, B00001110, B11100000, B00010000, B00010000, B01011011, B01001101, B01111010, B00111011,
B01111010, B11111110, B11111011, B11101111, B11111100, B01111111, B00011000, B00011000, B01011011, B00100001, B10011010, B10011011,
B00111111, B11111100, B00000000, B00000000, B00000000, B00000000, B00111000, B00111000, B01001100, B10001100, B11101010, B01001100,
B11111111, B00000000, B00000000, B00001000, B00000011, B00110000, B00000111, B11110000, B01010111, B01110111, B01110010, B01110111,
B11111111, B00000000, B00000000, B11111111, B00001100, B00001100, B00011011, B00011100, B01011011, B10011011, B10011010, B10011011,
B11111111, B01000010, B00000000, B11001010, B00010010, B00011010, B00110011, B10011110, B01001101, B10101101, B10101010, B10101101,
B11111111, B00000000, B11111111, B01111111, B00100001, B00110001, B00111110, B11110010, B01010101, B11010101, B11010010, B11010101,
B11111111, B00001000, B00000000, B01010010, B01100001, B11111011, B01011110, B11100110, B01000110, B11100110, B11100010, B11100110,
B11111111, B00000000, B11111111, B00000000, B01110011, B00111111, B01100100, B11101110, B01000000, B00000000, B00000010, B01111000,
B11111111, B00100000, B11111111, B00001000, B01001110, B11001110, B11111111, B10110110, B00111111, B11111111, B11111100, B10011001,
B11111111, B00000000, B11111111, B00001000, B00000100, B01011111, B10100111, B01001001, B00000000, B00000000, B00000000, B11101010,
B00000000, B00000000, B11111111, B00000000, B00001110, B11010011, B10110100, B01001011, B00000000, B11111111, B01110111, B01110010,
B00000000, B00000000, B11111111, B00000000, B00111111, B11000010, B00111010, B10111010, B01000000, B10101010, B10011011, B10011001,
B00000000, B00001000, B11111111, B00000000, B00110111, B10001000, B00011110, B11111000, B10100100, B01010101, B10101101, B10101100,
B00000000, B00010100, B11111111, B00000000, B00000000, B01001110, B00000100, B01110000, B01001010, B10101010, B11010101, B11010101,
B00000000, B00001000, B00000000, B00000000, B00000100, B11010100, B00001111, B00011000, B00100100, B01010101, B11100110, B11100110,
B00000000, B00000000, B00000000, B00000000, B00000000, B11000000, B00000110, B00110000, B01010010, B10101010, B01111011, B01111011,
B00000000, B00000010, B00000000, B00000000, B00000000, B01000000, B00000000, B00000000, B00100101, B11111111, B10011011, B10011011,
B00000000, B00000000, B11111111, B00000000, B00000001, B01010000, B00000000, B00000000, B00000010, B00000000, B11101100, B11101100,
B00011111, B10110000, B01110000, B00001110, B01110011, B00000000, B00000000, B00000000, B11110000, B11110000, B00000000, B00000000,
B01010000, B01011100, B01000000, B00000010, B10011101, B01111110, B00000000, B00000000, B11110000, B10110100, B00000010, B00000000,
B00101001, B00101010, B01111111, B11111110, B10100101, B01000000, B00000110, B00110000, B11110000, B11010010, B00010000, B00000000,
B11001010, B10010111, B01001111, B11110010, B11110101, B01000000, B00001100, B00011000, B11110000, B11110000, B00000000, B00000000,
B10110101, B01100011, B00000000, B00000000, B10101010, B01011110, B00001110, B00111000, B00001111, B00001111, B00000000, B00000000,
B11110010, B01011101, B01000000, B00000010, B01011011, B01010010, B00001001, B11001000, B00001111, B01001011, B00000100, B00000000,
B11101101, B01101111, B01110000, B00001110, B11011011, B01011010, B00000111, B11110000, B00001111, B00101101, B01000000, B00000000,
B01111011, B11111101, B01000000, B00000010, B11101100, B01011110, B00010001, B01000100, B00001111, B00001111, B00000000, B00000000,
B11011111, B10100110, B00000000, B00000000, B11000110, B01011011, B00010001, B01000100, B11001100, B10001000, B00100000, B00000000,
B10101000, B11001010, B00000000, B00000000, B11000110, B00000000, B00010010, B10100100, B11001100, B11011101, B10010010, B00000000,
B00110101, B01101100, B00111000, B01111100, B01100000, B01110110, B00001110, B00111000, B00110011, B10001000, B01000100, B00000000,
B00010000, B11011000, B00111000, B01111100, B01100110, B00000000, B00000011, B11100000, B00110011, B11011101, B00100001, B00000000,
B00000010, B10000000, B01111100, B01111100, B00000110, B01011101, B00000000, B00000000, B11001100, B10001000, B00010010, B00000000,
B00000011, B10000000, B01111100, B01111100, B11000000, B00000000, B00000101, B01010000, B11001100, B11011101, B01000000, B00000000,
B00000100, B10000000, B00111000, B01111100, B11011011, B01110111, B00000111, B01110000, B00110011, B10001000, B10101010, B00000000,
B00000000, B00000000, B00000000, B00000000, B00011011, B00000000, B00000000, B00000000, B00110011, B11011101, B00000100, B00000000,
};
-
adekto
-
- Posts: 448
- Joined: Tue Feb 25, 2014 9:47 pm
- Location: belgium
by rodot » Fri Apr 18, 2014 4:21 pm
I think your should use a byte array instead of an int array. 1 byte takes 8 bits while 1 int takes 16 bits and run slower as it's an 8 bit microcontroller.
The default library only allows to draw independent bitmaps. What you could do is an array of bitmaps, where the index in the array would correspond the the value of the byte in the map.
Array of bitmaps can also be used to easily draw animated bitmaps.
As the map width and height are not going to change, you can use #define instead, it will use less memory and make you game run faster. More info:
http://arduino.cc/en/Reference/DefineAs the map is not going to change, you should store it in the program memory instead of the RAM. To do so you have to add the PROGMEM keyword. More info:
http://arduino.cc/en/Reference/PROGMEMNot sure if I'm clear?
Here is a code example to illustrate that :
- Code: Select all
#define MAP_W 48
#define MAP_H 32
byte PROGMEM map[MAP_W][MAP_H] = {...};
#define NUM_TILES 64
byte* PROGMEM tiles[NUM_TILES]{
{.....}, //first tile
{.....}, //second tile
... //etc
};
-
rodot
- Site Admin
-
- Posts: 1290
- Joined: Mon Nov 19, 2012 11:54 pm
- Location: France
-
by adekto » Fri Apr 18, 2014 4:34 pm
ok that fine but this is just a small map (for this type a game) and i assume its going to have 10 or even more maps, any suggestions on that?
-
adekto
-
- Posts: 448
- Joined: Tue Feb 25, 2014 9:47 pm
- Location: belgium
by rodot » Fri Apr 18, 2014 4:42 pm
There are different solutions:
- You store everything in the program memory, but it probably won't fit.
- You only store 1 map in the program memory and use the bootloader to rewrite it with a map from the SD card. Problem is that it will wear out the program memory quickly.
- You use a RAM buffer for 1 map and load it from the SD card using a small SD library like Petit FatFs. It may use a large amount of RAM depending on the buffer size.
- You directly stream the map from the SD card. It won't use RAM and wear out flash, but it might be slower.
-
rodot
- Site Admin
-
- Posts: 1290
- Joined: Mon Nov 19, 2012 11:54 pm
- Location: France
-
by adekto » Fri Apr 18, 2014 4:50 pm
sd library sounds best and safest and it can also be used for the image, stats loading of all the monsters in the combat state
-
adekto
-
- Posts: 448
- Joined: Tue Feb 25, 2014 9:47 pm
- Location: belgium
by rodot » Fri Apr 18, 2014 5:03 pm
If you program a kind of parser and store monster's stats in the SD card too it will allow you to add/change monsters without having to re-compile the game. It may also be possible to do that for maps.
-
rodot
- Site Admin
-
- Posts: 1290
- Joined: Mon Nov 19, 2012 11:54 pm
- Location: France
-
by adekto » Fri Apr 18, 2014 5:27 pm
um yea thats a little advanced for me but its the way to go for this game
also allows for easy modding in extra maps and monsters
-
adekto
-
- Posts: 448
- Joined: Tue Feb 25, 2014 9:47 pm
- Location: belgium
by adekto » Fri Apr 18, 2014 10:45 pm
wel still the old way but its all i can do right now
(untested code)
- Code: Select all
#include <SPI.h>
#include <Gamebuino.h>
Gamebuino gb;
#define MAP_W 48
#define MAP_H 32
#define WIDTH 11
#define HEIGHT 7
byte PROGMEM map[MAP_W][MAP_H] = {
{47, 47, 47, 47, 23, 19, 26, 38, 8, 26, 8, 26, 8, 19, 38, 66, 66, 38, 7, 8, 19, 8, 26, 7, 8, 19, 19, 19, 7, 7, 31, 26, 7, 8, 19, 19, 19, 7, 7, 31, 32, 8, 26, 8, 26, 8, 38, 7},
{47, 47, 47, 47, 23, 8, 26, 26, 20, 38, 20, 8, 20, 7, 6, 66, 66, 6, 19, 20, 8, 20, 7, 19, 20, 38, 8, 7, 19, 19, 43, 7, 19, 20, 38, 8, 7, 19, 19, 43, 44, 20, 8, 20, 7, 20, 38, 19},
{47, 47, 47, 53, 23, 20, 7, 8, 38, 7, 8, 20, 38, 19, 38, 66, 66, 6, 7, 8, 20, 8, 19, 7, 26, 7, 20, 19, 7, 7, 8, 19, 7, 26, 7, 20, 19, 7, 7, 8, 7, 6, 20, 8, 19, 26, 20, 45},
{47, 47, 47, 47, 23, 7, 19, 20, 26, 19, 20, 7, 7, 7, 31, 32, 31, 32, 19, 20, 7, 20, 8, 19, 7, 19, 8, 6, 19, 19, 26, 8, 19, 7, 19, 8, 6, 19, 19, 20, 19, 8, 26, 20, 45, 7, 7, 8},
{47, 47, 47, 47, 23, 19, 8, 7, 7, 7, 7, 7, 19, 19, 43, 44, 43, 44, 7, 7, 19, 6, 20, 7, 19, 38, 20, 7, 8, 26, 7, 20, 6, 19, 38, 20, 7, 8, 26, 8, 7, 20, 8, 26, 8, 19, 19, 20},
{47, 47, 53, 47, 48, 11, 20, 19, 19, 19, 19, 19, 38, 6, 26, 66, 66, 38, 19, 19, 26, 26, 26, 19, 26, 6, 38, 26, 26, 6, 19, 26, 6, 26, 6, 38, 19, 20, 7, 20, 19, 26, 20, 7, 20, 7, 26, 38},
{47, 47, 47, 47, 47, 48, 11, 65, 38, 26, 38, 26, 6, 26, 28, 66, 66, 26, 6, 6, 26, 38, 38, 26, 38, 6, 26, 6, 6, 26, 6, 26, 6, 38, 6, 26, 6, 6, 19, 7, 7, 7, 26, 19, 8, 19, 7, 8},
{47, 47, 36, 34, 53, 47, 23, 65, 6, 38, 6, 38, 26, 26, 6, 66, 66, 26, 26, 38, 6, 38, 26, 6, 38, 38, 6, 6, 6, 38, 66, 66, 66, 66, 66, 66, 66, 38, 38, 19, 19, 19, 8, 38, 20, 7, 19, 20},
{47, 36, 35, 45, 21, 47, 23, 65, 6, 6, 6, 26, 26, 38, 6, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 6, 26, 6, 38, 38, 66, 66, 6, 26, 6, 38, 20, 8, 7, 19, 8, 45},
{47, 23, 45, 9, 12, 36, 35, 65, 38, 26, 6, 26, 38, 6, 38, 66, 66, 26, 26, 38, 26, 38, 6, 38, 6, 38, 6, 6, 38, 26, 38, 26, 26, 38, 38, 6, 26, 66, 38, 38, 26, 8, 26, 20, 19, 38, 20, 26},
{47, 48, 10, 12, 47, 23, 65, 65, 65, 65, 65, 38, 26, 26, 6, 66, 66, 26, 26, 26, 60, 63, 63, 64, 63, 38, 6, 6, 26, 26, 60, 64, 64, 64, 63, 64, 38, 66, 6, 26, 38, 20, 26, 8, 45, 7, 45, 7},
{47, 53, 47, 47, 47, 23, 65, 49, 50, 65, 29, 30, 38, 6, 6, 66, 66, 26, 6, 6, 60, 4, 4, 4, 4, 38, 6, 6, 38, 6, 60, 4, 4, 4, 4, 4, 38, 66, 66, 31, 32, 26, 8, 20, 8, 19, 8, 19},
{47, 47, 47, 47, 47, 23, 65, 61, 62, 65, 41, 42, 6, 38, 26, 66, 66, 38, 26, 26, 60, 16, 16, 16, 16, 45, 38, 26, 26, 6, 60, 16, 16, 16, 16, 16, 26, 66, 66, 43, 44, 38, 20, 38, 20, 8, 20, 45},
{47, 47, 47, 53, 36, 35, 65, 65, 65, 65, 38, 6, 38, 28, 38, 66, 66, 38, 6, 45, 60, 5, 54, 54, 5, 38, 26, 6, 6, 26, 60, 16, 16, 16, 54, 16, 6, 66, 38, 38, 26, 26, 38, 8, 8, 20, 45, 7},
{47, 47, 53, 47, 23, 65, 65, 65, 65, 65, 6, 38, 6, 26, 6, 66, 66, 38, 38, 6, 6, 45, 66, 66, 26, 38, 6, 6, 26, 6, 38, 38, 26, 26, 38, 38, 26, 66, 6, 38, 26, 6, 6, 20, 20, 38, 8, 19},
{47, 47, 36, 34, 35, 65, 65, 29, 30, 65, 49, 50, 38, 26, 38, 66, 66, 26, 38, 6, 38, 38, 66, 6, 38, 6, 26, 6, 26, 38, 26, 9, 10, 11, 26, 6, 26, 66, 38, 26, 38, 38, 6, 8, 26, 7, 20, 38},
{34, 34, 35, 4, 1, 2, 65, 41, 42, 65, 61, 62, 9, 10, 11, 66, 66, 9, 10, 11, 26, 38, 66, 60, 64, 63, 63, 26, 6, 26, 9, 12, 22, 48, 11, 38, 26, 66, 60, 63, 63, 63, 63, 63, 8, 19, 7, 8},
{18, 17, 16, 16, 13, 14, 65, 65, 65, 65, 26, 6, 21, 22, 23, 66, 66, 33, 24, 23, 38, 6, 66, 60, 3, 3, 3, 38, 26, 6, 33, 24, 47, 22, 23, 6, 6, 66, 60, 3, 3, 3, 3, 3, 20, 45, 19, 20},
{17, 18, 17, 4, 1, 2, 65, 26, 6, 6, 6, 6, 33, 34, 35, 66, 66, 65, 33, 35, 26, 38, 66, 60, 15, 54, 15, 26, 6, 26, 65, 21, 47, 36, 35, 38, 26, 66, 60, 15, 40, 15, 40, 15, 7, 8, 45, 38},
{18, 17, 16, 16, 13, 14, 65, 6, 26, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 38, 26, 66, 6, 6, 26, 65, 9, 12, 36, 35, 38, 6, 38, 66, 60, 15, 15, 15, 15, 15, 19, 20, 38, 45},
{4, 4, 1, 2, 4, 4, 65, 38, 6, 66, 6, 6, 6, 6, 6, 26, 26, 38, 38, 6, 38, 26, 66, 66, 66, 66, 6, 6, 26, 65, 21, 53, 23, 6, 6, 38, 38, 66, 60, 15, 54, 15, 15, 15, 7, 45, 29, 30},
{16, 16, 13, 14, 16, 54, 65, 38, 38, 66, 6, 26, 38, 6, 26, 60, 63, 64, 64, 64, 38, 6, 26, 6, 26, 66, 38, 6, 26, 65, 33, 24, 48, 11, 6, 6, 6, 66, 26, 26, 66, 26, 38, 7, 19, 38, 41, 42},
{1, 2, 1, 2, 6, 6, 6, 6, 28, 66, 6, 38, 6, 38, 38, 60, 4, 4, 4, 4, 26, 38, 28, 26, 38, 66, 6, 26, 6, 65, 65, 21, 53, 23, 6, 26, 6, 66, 66, 66, 66, 6, 6, 19, 49, 50, 49, 50},
{13, 14, 13, 14, 4, 4, 66, 66, 66, 66, 6, 38, 26, 6, 26, 60, 16, 40, 16, 16, 38, 26, 38, 6, 38, 66, 26, 38, 65, 65, 9, 12, 36, 35, 6, 38, 6, 6, 26, 6, 26, 38, 7, 26, 61, 62, 61, 62},
{1, 2, 5, 5, 5, 5, 5, 5, 5, 6, 6, 26, 26, 6, 26, 60, 16, 16, 54, 16, 26, 38, 6, 6, 26, 66, 6, 6, 65, 65, 21, 47, 23, 65, 6, 6, 6, 38, 26, 26, 49, 50, 49, 50, 29, 30, 49, 50},
{13, 14, 17, 18, 17, 18, 17, 18, 17, 26, 26, 6, 38, 38, 26, 26, 38, 26, 66, 38, 38, 6, 38, 6, 38, 66, 6, 38, 6, 9, 12, 53, 23, 65, 26, 6, 26, 6, 26, 26, 61, 62, 61, 62, 41, 42, 61, 62},
{1, 2, 5, 9, 11, 9, 10, 11, 5, 45, 6, 45, 26, 6, 6, 6, 38, 26, 66, 66, 66, 66, 66, 66, 66, 66, 6, 26, 65, 33, 34, 24, 23, 65, 65, 6, 38, 38, 38, 29, 30, 38, 29, 30, 49, 50, 49, 50},
{13, 14, 9, 12, 48, 12, 22, 23, 5, 65, 65, 65, 38, 26, 26, 65, 38, 6, 38, 38, 38, 6, 26, 26, 6, 26, 26, 65, 65, 65, 65, 21, 23, 65, 65, 65, 6, 6, 6, 41, 42, 26, 41, 42, 61, 62, 61, 62},
{1, 2, 33, 24, 47, 47, 36, 35, 5, 5, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 9, 10, 12, 48, 11, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27},
{13, 14, 9, 12, 47, 47, 23, 18, 17, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 9, 10, 10, 12, 53, 47, 22, 23, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39},
{10, 10, 12, 47, 22, 47, 48, 11, 18, 17, 18, 17, 18, 17, 18, 17, 18, 17, 18, 17, 18, 17, 18, 17, 18, 17, 21, 53, 47, 36, 34, 34, 24, 23, 18, 17, 18, 17, 18, 17, 18, 17, 18, 17, 18, 17, 18, 17},
{47, 47, 47, 47, 47, 47, 47, 48, 10, 10, 10, 10, 10, 10, 11, 1, 2, 9, 10, 10, 10, 10, 10, 10, 10, 10, 12, 36, 34, 35, 1, 2, 21, 48, 10, 10, 11, 18, 17, 18, 17, 9, 10, 10, 10, 10, 11, 65}
};
#define NUM_TILES 64
byte* PROGMEM blacktiles[NUM_TILES]{
{B11111111, B10000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B11111111, B00000011, B00000001, B00000001, B00000001, B00000001, B00000001, B00000001, },
{B11111111, B00000000, B00000000, B11111111, B01000000, B11111111, B00000100, B11111111, },
{B00000000, B00000000, B00000000, B11111111, B00010000, B00010000, B00010000, B11111111, },
{B00000000, B00000000, B00000000, B11111111, B01000100, B01000100, B01000100, B11111111, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B00001000, B00000000, B00000100, B00000100, B01000010, B01101110, B00000010, B10000001, },
{B00000000, B00000000, B00010000, B00010000, B00001000, B00000000, B00011000, B01010100, },
{B00111111, B01000000, B10011111, B10100000, B10100000, B10100000, B10100000, B10100000, },
{B11111111, B00000000, B11111111, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B11111100, B00000010, B11111001, B00000101, B00000101, B00000101, B00000101, B00000101, },
{B10100000, B01000000, B10000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B10000000, },
{B00000001, B00000001, B00000001, B00000001, B00000001, B00000001, B00000001, B00000011, },
{B01000000, B11111111, B00000100, B11111111, B01000000, B11111111, B00000100, B11111111, },
{B00000001, B00000001, B00000001, B11111111, B00010000, B00010000, B00010000, B11111111, },
{B00000011, B00000001, B00000001, B00000001, B00000001, B00000001, B00000011, B11111111, },
{B10000000, B00000000, B00000000, B00000000, B00000000, B00000000, B10000000, B11111111, },
{B11001111, B00000001, B10000111, B11111111, B01111110, B00001000, B00100100, B00000100, },
{B00111000, B00011000, B11001000, B00101011, B00011100, B00001000, B00100100, B00000100, },
{B10100000, B10100000, B10100000, B10100000, B10100000, B10100000, B10100000, B10100000, },
{B00011000, B00101100, B01000100, B01000100, B11100110, B10110010, B11011110, B01110000, },
{B00000101, B00000101, B00000101, B00000101, B00000101, B00000101, B00000101, B00000101, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B10000000, B01000000, B10100000, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B00000000, B11111111, B11111111, B00000000, B11111111, B00000000, B00000000, B00000000, },
{B00010000, B00000000, B00000001, B10000000, B00000001, B11111111, B00010000, B00010000, },
{B00000000, B00000010, B00000000, B00000000, B00000000, B00000000, B00000000, B01001000, },
{B00000000, B00010000, B00000000, B00000000, B00000000, B11000000, B00110001, B00100000, },
{B00000000, B00000100, B00000000, B00000001, B00100000, B10011000, B00000000, B01000000, },
{B00000000, B00000000, B00000000, B00000000, B00010000, B00010001, B01001001, B10000110, },
{B10100000, B10100000, B10100000, B10100000, B10100000, B10011111, B01000000, B00111111, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B11111111, B00000000, B11111111, },
{B00000101, B00000101, B00000101, B00000101, B00000101, B11111001, B00000010, B11111100, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000001, B00000010, B00000101, },
{B11111111, B11111111, B11111111, B11111111, B11111111, B11111111, B11111111, B11111111, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B11111111, B11111111, B00000000, },
{B00111100, B01111000, B11110000, B11100001, B11000011, B10000111, B00001111, B00011110, },
{B01110000, B01000000, B00001000, B00011111, B00001011, B00000001, B00000001, B00000010, },
{B00100000, B00110001, B01110111, B10110000, B00101000, B00100000, B10100000, B10100000, },
{B01000011, B11000001, B11100001, B01111011, B01110000, B01111001, B00111111, B00001111, },
{B10000100, B00000101, B00000111, B10001111, B11100110, B11001110, B11111000, B11100000, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B00000101, B00000010, B00000001, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B00000000, B00101001, B01010010, B00100101, B01001010, B00001101, B00010010, B00000100, },
{B00000000, B10100000, B00010100, B00101000, B10010100, B00100010, B10010000, B00000000, },
{B00001000, B00101000, B00000000, B00100000, B01111111, B00101000, B00001000, B00101000, },
{B00010000, B00010100, B00000000, B00000100, B11111110, B00010100, B00010000, B00010100, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B11111111, B10000001, B10000001, B10000001, B10000001, B10001101, B10000101, B10000001, },
{B11111111, B11111000, B11110000, B11100000, B11100000, B11010000, B11010000, B11001110, },
{B11111111, B00001111, B00000111, B00000011, B00000011, B00000101, B00000101, B00111001, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B11111111, B11111101, B11101111, B11111111, B11111111, B11111011, B10111111, B11111111, },
{B00000001, B00000001, B00000001, B00000001, B00000001, B00000001, B00000001, B00000001, },
{B00000000, B00000011, B00000010, B00000011, B00000001, B00000000, B00000011, B00001111, },
{B01001000, B00000000, B10010000, B00100000, B01000000, B01000000, B01100000, B11111000, },
{B11111111, B00000001, B01000101, B00000001, B00000001, B00000001, B01000101, B00000001, },
{B11111111, B00000001, B00000001, B00000001, B00000001, B00000001, B00000001, B00000001, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B11001110, B11000001, B11010001, B11101100, B11110110, B11110010, B11110000, B11111000, },
{B00111001, B01000001, B11000101, B00011011, B00110111, B10100111, B00000111, B00001111, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B11011111, B01101101, B10111011, B11011110, B11101101, B10111111, B01010101, B11111011, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
};
byte* PROGMEM greytiles[NUM_TILES]{
{B00000000, B00000000, B00111111, B01101111, B01000101, B01000000, B01000000, B01000000, },
{B00000000, B00000000, B11111100, B01111110, B01010110, B00010110, B00000010, B00000010, },
{B00000000, B00000000, B11111111, B00000000, B10111111, B00000000, B11111011, B00000000, },
{B00000000, B11111111, B00000000, B00000000, B11101001, B11101111, B11101111, B00000000, },
{B00000001, B00000001, B11111111, B00000000, B00000000, B10111011, B10111011, B00000000, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B00010000, B00011000, B00111000, B00111000, B00111100, B00010000, B01111100, B01111110, },
{B00000000, B00000000, B00000000, B00000000, B00010000, B00010000, B00000000, B00101000, },
{B00000000, B00111111, B01000000, B01010101, B01000110, B01011011, B01011011, B01001100, },
{B00000000, B11111111, B00000000, B11010101, B11100110, B01111011, B10011011, B11101100, },
{B00000000, B11111100, B00000010, B11010010, B11100010, B01111010, B10011010, B11101010, },
{B01010111, B10011011, B01101101, B11010101, B11100110, B01111011, B10011011, B11101100, },
{B01000000, B01000000, B01000000, B01100000, B01100000, B01101010, B01111010, B00111111, },
{B00000010, B00000010, B00000010, B00000010, B00000010, B10101010, B11111110, B11111100, },
{B10111111, B00000000, B11111011, B00000000, B10111111, B00000000, B11111011, B00000000, },
{B10011110, B11111110, B11111110, B00000000, B11101001, B11101111, B11101111, B00000000, },
{B00001100, B00000110, B00000110, B00000110, B11111110, B00001110, B11111100, B00000000, },
{B01100000, B11000000, B11000000, B11000000, B11111111, B11100000, B01111111, B00000000, },
{B00110000, B11111110, B01111000, B00000000, B00000000, B00010000, B00011000, B00111000, },
{B00000000, B00000000, B00110000, B00010100, B00000000, B00010000, B00011000, B00111000, },
{B01010111, B01011011, B01001101, B01010101, B01000110, B01011011, B01011011, B01001100, },
{B01100111, B10010011, B10111001, B10111001, B00011000, B01001101, B00100001, B10001100, },
{B01110010, B10011010, B10101010, B11010010, B11100010, B01111010, B10011010, B11101010, },
{B01110111, B10011011, B10101101, B11010101, B11100110, B00111011, B10011011, B01001100, },
{B11111111, B11111111, B11111111, B11111111, B11111111, B11111111, B11111111, B11111111, },
{B00000000, B00000000, B01000010, B00000000, B00001000, B00000000, B00100000, B00000000, },
{B00000000, B00000000, B00000000, B11111111, B00000000, B11111111, B11111111, B11111111, },
{B00001000, B11111111, B11001010, B01111111, B01010010, B00000000, B00001000, B00001000, },
{B00000011, B00001100, B00010010, B00100001, B01100001, B01110011, B01001110, B00000100, },
{B00110000, B00001100, B00011010, B00110001, B11111011, B00111111, B11001110, B01011111, },
{B00000111, B00011011, B00110011, B00111110, B01011110, B01100100, B11111111, B10100111, },
{B11110000, B00011100, B10011110, B11110010, B11100110, B11101110, B10110110, B01001001, },
{B01010111, B01011011, B01001101, B01010101, B01000110, B01000000, B00111111, B00000000, },
{B01110111, B10011011, B10101101, B11010101, B11100110, B00000000, B11111111, B00000000, },
{B01110010, B10011010, B10101010, B11010010, B11100010, B00000010, B11111100, B00000000, },
{B01110111, B10011011, B10101101, B11010101, B11100110, B01111000, B10011001, B11101010, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B00000000, B00000000, B00001000, B00010100, B00001000, B00000000, B00000010, B00000000, },
{B11111111, B11111111, B11111111, B11111111, B00000000, B00000000, B00000000, B11111111, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B00001110, B00111111, B00110111, B00000000, B00000100, B00000000, B00000000, B00000001, },
{B11010011, B11000010, B10001000, B01001110, B11010100, B11000000, B01000000, B01010000, },
{B10110100, B00111010, B00011110, B00000100, B00001111, B00000110, B00000000, B00000000, },
{B01001011, B10111010, B11111000, B01110000, B00011000, B00110000, B00000000, B00000000, },
{B00000000, B01000000, B10100100, B01001010, B00100100, B01010010, B00100101, B00000010, },
{B11111111, B10101010, B01010101, B10101010, B01010101, B10101010, B11111111, B00000000, },
{B01110111, B10011011, B10101101, B11010101, B11100110, B01111011, B10011011, B11101100, },
{B01110010, B10011001, B10101100, B11010101, B11100110, B01111011, B10011011, B11101100, },
{B00011111, B01010000, B00101001, B11001010, B10110101, B11110010, B11101101, B01111011, },
{B10110000, B01011100, B00101010, B10010111, B01100011, B01011101, B01101111, B11111101, },
{B01110000, B01000000, B01111111, B01001111, B00000000, B01000000, B01110000, B01000000, },
{B00001110, B00000010, B11111110, B11110010, B00000000, B00000010, B00001110, B00000010, },
{B01110011, B10011101, B10100101, B11110101, B10101010, B01011011, B11011011, B11101100, },
{B00000000, B01111110, B01000000, B01000000, B01011110, B01010010, B01011010, B01011110, },
{B00000000, B00000000, B00000110, B00001100, B00001110, B00001001, B00000111, B00010001, },
{B00000000, B00000000, B00110000, B00011000, B00111000, B11001000, B11110000, B01000100, },
{B11110000, B11110000, B11110000, B11110000, B00001111, B00001111, B00001111, B00001111, },
{B11110000, B10110100, B11010010, B11110000, B00001111, B01001011, B00101101, B00001111, },
{B00000000, B00000010, B00010000, B00000000, B00000000, B00000100, B01000000, B00000000, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
{B11011111, B10101000, B00110101, B00010000, B00000010, B00000011, B00000100, B00000000, },
{B10100110, B11001010, B01101100, B11011000, B10000000, B10000000, B10000000, B00000000, },
{B00000000, B00000000, B00111000, B00111000, B01111100, B01111100, B00111000, B00000000, },
{B00000000, B00000000, B01111100, B01111100, B01111100, B01111100, B01111100, B00000000, },
{B11000110, B11000110, B01100000, B01100110, B00000110, B11000000, B11011011, B00011011, },
{B01011011, B00000000, B01110110, B00000000, B01011101, B00000000, B01110111, B00000000, },
{B00010001, B00010010, B00001110, B00000011, B00000000, B00000101, B00000111, B00000000, },
{B01000100, B10100100, B00111000, B11100000, B00000000, B01010000, B01110000, B00000000, },
{B11001100, B11001100, B00110011, B00110011, B11001100, B11001100, B00110011, B00110011, },
{B10001000, B11011101, B10001000, B11011101, B10001000, B11011101, B10001000, B11011101, },
{B00100000, B10010010, B01000100, B00100001, B00010010, B01000000, B10101010, B00000100, },
{B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, },
};
void setup(){
char cam_x = 10;
char cam_y = 10;
}
void loop(){
if(gb.update()){
if(gb.buttons.repeat(BTN_RIGHT,2)){
if (map[7][4] == 6 || map[7][4] == 25 || map[7][4] == 26 || map[7][4] == 38 || map[7][4] == 45 || map[7][4] == 46 || map[7][4] == 65 || map[7][4] == 66 || map[7][4] == 72)
{
cam_x = cam_x +1;
}
}
if(gb.buttons.repeat(BTN_LEFT,2)){
cam_x = cam_x -1;
}
if(gb.buttons.repeat(BTN_DOWN,2)){
cam_y = cam_y +1;
}
if(gb.buttons.repeat(BTN_UP,2)){
cam_y = cam_y -1;
}
for (char i = cam_x; i < WIDTH +cam_x; ++i)
{
for (char j = cam_y; j < HEIGHT +cam_y; ++j)
{
gb.display.drawBitmap(i*8, j*8, blacktiles[map[i][j]]);
if(gb.frameCount%2)
gb.display.drawBitmap(i*8, j*8, greytiles[map[i][j]]);
}
}
}
}
-
adekto
-
- Posts: 448
- Joined: Tue Feb 25, 2014 9:47 pm
- Location: belgium
Return to Programming Questions
Who is online
Users browsing this forum: No registered users and 5 guests