Midhat Hodo / Mbed 2 deprecated projekat

Dependencies:   SPI_TFT_ILI9341 TFT_fonts mbed

Committer:
2018US_MidhatHodo
Date:
Thu Jun 28 10:37:23 2018 +0000
Revision:
0:a1f80a0896d4
Flappy bird

Who changed what in which revision?

UserRevisionLine numberNew contents of line
2018US_MidhatHodo 0:a1f80a0896d4 1 #include "mbed.h"
2018US_MidhatHodo 0:a1f80a0896d4 2
2018US_MidhatHodo 0:a1f80a0896d4 3 #include "stdio.h"
2018US_MidhatHodo 0:a1f80a0896d4 4 #include "SPI_TFT_ILI9341.h"
2018US_MidhatHodo 0:a1f80a0896d4 5 #include "Arial28x28.h"
2018US_MidhatHodo 0:a1f80a0896d4 6
2018US_MidhatHodo 0:a1f80a0896d4 7 SPI_TFT_ILI9341 TFT(D11, D12, D13, D4, D3, D5, "TFT");
2018US_MidhatHodo 0:a1f80a0896d4 8 //mosi, miso, clk, cs, res, dc
2018US_MidhatHodo 0:a1f80a0896d4 9
2018US_MidhatHodo 0:a1f80a0896d4 10 //240x320
2018US_MidhatHodo 0:a1f80a0896d4 11 unsigned char pticaBitmap[]={0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x08,0x7d,0x29,0x4e,0x08,0x7a,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 12 ,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x18,0xcd,0x08,0x61,0x10,0xa7,0x00,0x3f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 13 ,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x08,0x68,0x08,0x61,0x08,0x41,0x10,0xb1,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 14 ,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x18,0xff,0x18,0xdf,0x00,0x1f,0x00,0x1f,0x10,0xb1,0x08,0x41,0x08,0x41,0x08,0x62,0x08,0x78,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 15 ,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x08,0x5d,0x18,0xd3,0x21,0x2b,0x21,0x25,0x10,0x82,0x10,0xa2,0x29,0x47,0x18,0xed,0x10,0xb6,0x18,0xee,0x08,0x61,0x08,0x41,0x18,0xc6,0x00,0x1e,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 16 ,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x3f,0x21,0x31,0x10,0xa3,0x4a,0x21,0x94,0x21,0xbd,0x60,0xd6,0x21,0xcd,0xc0,0xb5,0x20,0x7b,0xa1,0x21,0x01,0x29,0x46,0x21,0x24,0x08,0x41,0x08,0x41,0x18,0xef,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 17 ,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x10,0xbc,0x18,0xe8,0x52,0x41,0xcd,0xe0,0xf7,0x00,0xf7,0x00,0xf7,0x00,0xf7,0x00,0xf7,0x00,0xee,0xe0,0x6b,0x41,0x08,0x61,0x08,0x61,0x08,0x41,0x08,0x41,0x08,0x41,0x08,0x61,0x10,0xb8,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 18 ,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x08,0x7c,0x10,0x85,0x8b,0xe1,0xf7,0x00,0xf7,0x00,0xf7,0x00,0xf7,0x00,0xf7,0x00,0xf7,0x00,0xf7,0x00,0x5a,0xa1,0x31,0xa6,0xce,0x78,0xef,0x7c,0xa5,0x33,0x18,0xe3,0x08,0x61,0x08,0x61,0x10,0xa6,0x08,0x5f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 19 ,0x08,0x5c,0x10,0x73,0x08,0x72,0x10,0x90,0x10,0xb0,0x08,0x72,0x10,0x87,0x5a,0xc1,0xee,0xe0,0xf7,0x00,0xf7,0x00,0xf7,0x00,0xf7,0x00,0xf7,0x00,0xf7,0x00,0xa4,0xc0,0x29,0x65,0xef,0x5b,0xff,0xfd,0xff,0xfd,0xff,0xfd,0xde,0xd9,0x31,0x65,0x08,0x61,0x08,0x41,0x18,0xd5,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 20 ,0x21,0x2a,0x31,0x85,0x42,0x27,0x5a,0xa8,0x52,0x88,0x42,0x27,0x39,0xc5,0x10,0xa2,0x21,0x01,0x8c,0x00,0xee,0xe0,0xf7,0x00,0xf7,0x00,0xf7,0x00,0xf7,0x00,0x42,0x01,0xad,0x54,0xff,0xdd,0xff,0xfd,0xff,0xfd,0xff,0xfd,0xff,0xfd,0xde,0xd9,0x18,0xe3,0x08,0x41,0x18,0xd5,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 21 ,0x21,0x0a,0xce,0x33,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xf7,0x77,0x9c,0xcf,0x21,0x24,0x4a,0x21,0xee,0xe0,0xf7,0x00,0xf7,0x00,0xf7,0x00,0x18,0xc2,0xef,0x3c,0xff,0xdd,0xff,0xfd,0xff,0xfd,0xff,0xfd,0xf7,0x9c,0x94,0x91,0x9c,0xd2,0x18,0xe6,0x00,0x3f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 22 ,0x18,0xec,0xb5,0x91,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xef,0x36,0x42,0x06,0x73,0x41,0xf7,0x00,0xf7,0x00,0xee,0xe0,0x29,0x45,0xef,0x5d,0xf7,0xbd,0xff,0xfd,0xff,0xfd,0xff,0xfd,0x94,0xb1,0x08,0x41,0xbd,0xd5,0x21,0x24,0x08,0x7c,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 23 ,0x10,0xaf,0x9c,0xae,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xe7,0x15,0x18,0xe2,0xd6,0x40,0xf7,0x00,0xef,0x00,0x18,0xc3,0xef,0x7d,0xf7,0x7d,0xff,0xfd,0xff,0xfd,0xff,0xfd,0x73,0x8d,0x08,0x61,0x94,0x91,0x73,0xae,0x18,0xf3,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 24 ,0x10,0x92,0x7b,0xcc,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0x73,0x8b,0x8c,0x00,0xf7,0x00,0xf7,0x00,0x31,0x61,0xce,0x58,0xef,0x5d,0xff,0xdd,0xff,0xfd,0xff,0xfd,0x7b,0xce,0x08,0x61,0x94,0xb1,0xb5,0xb5,0x21,0x0c,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 25 ,0x08,0x57,0x5a,0xc9,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xad,0x70,0x63,0x01,0xf7,0x00,0xf7,0x00,0x73,0x61,0x73,0x8d,0xef,0x5d,0xef,0x7d,0xff,0xdd,0xff,0xfd,0xb5,0x95,0x08,0x61,0xd6,0x98,0xe7,0x1a,0x18,0xc6,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 26 ,0x08,0x5c,0x29,0x64,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xbd,0xce,0x5a,0xc1,0xf7,0x00,0xf7,0x00,0xde,0x80,0x18,0xe1,0x8c,0x71,0xef,0x7d,0xef,0x5d,0xf7,0xbd,0xff,0xfd,0xc6,0x37,0xff,0xfd,0xff,0xdd,0x18,0xe4,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 27 ,0x08,0x5f,0x18,0xe5,0xde,0x8f,0xff,0xb3,0xff,0xb6,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb7,0xff,0xb3,0x8c,0x4a,0x7b,0x81,0xf7,0x00,0xf7,0x00,0xf7,0x00,0xbd,0x80,0x18,0xe1,0x31,0x86,0x73,0xad,0x84,0x0f,0x73,0x8d,0x5a,0xca,0x52,0x89,0x39,0xe7,0x10,0x82,0x21,0x18,0x18,0xda,0x08,0x7e,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 28 ,0x00,0x1f,0x18,0xcb,0x63,0x07,0xff,0x91,0xff,0xb1,0xff,0xb3,0xff,0xb4,0xff,0xb5,0xff,0xb5,0xff,0xb2,0xf7,0x71,0x29,0x64,0xbd,0x80,0xf7,0x00,0xf7,0x00,0xf7,0x00,0xf7,0x00,0x83,0xe1,0x08,0x61,0x08,0x61,0x08,0x61,0x08,0x61,0x08,0x61,0x08,0x41,0x08,0x41,0x08,0x41,0x08,0x61,0x08,0x61,0x10,0xa4,0x10,0x9b
2018US_MidhatHodo 0:a1f80a0896d4 29 ,0x00,0x1f,0x10,0x91,0x08,0x61,0x94,0x6b,0xff,0x91,0xff,0xb1,0xff,0xb1,0xff,0xb1,0xff,0xb1,0xff,0x91,0x73,0x88,0x4a,0x21,0xf7,0x00,0xf7,0x00,0xf7,0x00,0xf7,0x00,0x9c,0x60,0x20,0x82,0x89,0x85,0x91,0xa5,0xa1,0xc5,0xa1,0xc5,0xa1,0xc5,0xa9,0xc6,0xc2,0x06,0xc2,0x06,0xda,0x47,0xda,0x47,0x71,0x44,0x10,0x8b
2018US_MidhatHodo 0:a1f80a0896d4 30 ,0x00,0x1f,0x08,0x58,0x31,0x42,0x18,0xa1,0x5a,0xc7,0xc5,0xed,0xf7,0x71,0xff,0xb2,0xe6,0xf0,0x73,0x88,0x20,0xc1,0xd5,0xe0,0xf6,0xe0,0xf7,0x00,0xf7,0x00,0xde,0x60,0x18,0xc1,0xb1,0xe6,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xd2,0x27,0x18,0xe5
2018US_MidhatHodo 0:a1f80a0896d4 31 ,0x00,0x1f,0x08,0x7f,0x31,0x44,0xcc,0xe1,0x5a,0x21,0x10,0x81,0x08,0x61,0x08,0x61,0x08,0x61,0x39,0x81,0xcc,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xc0,0x72,0xe1,0x61,0x24,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xda,0x47,0xd2,0x27,0xd2,0x27,0xd2,0x27,0xd2,0x27,0xd2,0x27,0x79,0x64,0x10,0xaa
2018US_MidhatHodo 0:a1f80a0896d4 32 ,0x00,0x1f,0x00,0x1f,0x18,0xcb,0xbc,0x62,0xf5,0xa0,0xed,0x60,0xc4,0x80,0xc4,0x80,0xd5,0x00,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0x31,0x41,0xc2,0x06,0x59,0x03,0x28,0xa2,0x18,0x81,0x18,0x81,0x18,0x81,0x10,0x61,0x08,0x61,0x08,0x61,0x08,0x61,0x08,0x61,0x08,0x61,0x10,0x82,0x08,0x79
2018US_MidhatHodo 0:a1f80a0896d4 33 ,0x00,0x1f,0x00,0x1f,0x10,0x96,0x5a,0x42,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0x39,0x61,0xb1,0xe6,0x99,0xa5,0x89,0x85,0x89,0x85,0x91,0xa5,0xa1,0xc5,0xa1,0xc5,0xa1,0xc5,0xa1,0xc5,0xb1,0xe6,0xc2,0x06,0xa1,0xc5,0x18,0x82,0x08,0x7e
2018US_MidhatHodo 0:a1f80a0896d4 34 ,0x00,0x1f,0x00,0x1f,0x00,0x3f,0x21,0x06,0xcc,0xc1,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0x83,0x21,0x48,0xe3,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0xe2,0x47,0x40,0xe3,0x18,0xda
2018US_MidhatHodo 0:a1f80a0896d4 35 ,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x08,0x76,0x41,0xc2,0xf5,0x81,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xed,0x60,0x29,0x21,0x51,0x03,0xc2,0x06,0xd2,0x27,0xd2,0x27,0xd2,0x27,0xd2,0x27,0xca,0x27,0xc2,0x06,0xb9,0xe6,0xb9,0xe6,0x91,0xa5,0x18,0x82,0x10,0x9d
2018US_MidhatHodo 0:a1f80a0896d4 36 ,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x10,0xab,0x7a,0xe2,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xd5,0x00,0x41,0xa1,0x08,0x61,0x08,0x61,0x08,0x61,0x08,0x61,0x08,0x61,0x08,0x41,0x08,0x41,0x08,0x41,0x08,0x61,0x10,0xa3,0x18,0xd3,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 37 ,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x08,0x7e,0x10,0xa7,0x8b,0x42,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xdd,0x00,0xcc,0xc0,0x52,0x01,0x18,0xc8,0x21,0x1b,0x21,0x1b,0x21,0x1b,0x21,0x1b,0x18,0xdd,0x08,0x7f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 38 ,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x08,0x7c,0x18,0xc6,0x6a,0x82,0xe5,0x61,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xf5,0xa0,0xd4,0xe1,0x41,0xc1,0x18,0xc9,0x08,0x5e,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 39 ,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x08,0x7d,0x21,0x0b,0x20,0xc1,0x72,0xa1,0xa3,0xc1,0xc4,0xa1,0xdd,0x00,0xe5,0x40,0xd5,0x00,0xc4,0x81,0x9b,0xa1,0x5a,0x41,0x10,0x82,0x21,0x11,0x00,0x3f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 40 ,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x08,0x5a,0x18,0xef,0x21,0x09,0x18,0xe3,0x08,0x41,0x08,0x41,0x08,0x41,0x18,0xe4,0x21,0x0a,0x18,0xd2,0x08,0x5d,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f,0x00,0x1f
2018US_MidhatHodo 0:a1f80a0896d4 41 };
2018US_MidhatHodo 0:a1f80a0896d4 42
2018US_MidhatHodo 0:a1f80a0896d4 43 // koristena slika sa googla i konvertor http://www.digole.com/tools/PicturetoC_Hex_converter.php
2018US_MidhatHodo 0:a1f80a0896d4 44
2018US_MidhatHodo 0:a1f80a0896d4 45 void skoci();
2018US_MidhatHodo 0:a1f80a0896d4 46 void reset();
2018US_MidhatHodo 0:a1f80a0896d4 47
2018US_MidhatHodo 0:a1f80a0896d4 48 AnalogIn analogni1(A0);
2018US_MidhatHodo 0:a1f80a0896d4 49
2018US_MidhatHodo 0:a1f80a0896d4 50 bool pause = false;
2018US_MidhatHodo 0:a1f80a0896d4 51 bool game_over = false;
2018US_MidhatHodo 0:a1f80a0896d4 52 bool latch = false;
2018US_MidhatHodo 0:a1f80a0896d4 53
2018US_MidhatHodo 0:a1f80a0896d4 54 void ucitajDzojstik() {
2018US_MidhatHodo 0:a1f80a0896d4 55
2018US_MidhatHodo 0:a1f80a0896d4 56 float v1=analogni1*3.3;
2018US_MidhatHodo 0:a1f80a0896d4 57 if (v1 > 2.8) {
2018US_MidhatHodo 0:a1f80a0896d4 58 if (!latch) {
2018US_MidhatHodo 0:a1f80a0896d4 59 skoci();
2018US_MidhatHodo 0:a1f80a0896d4 60 if (pause) {
2018US_MidhatHodo 0:a1f80a0896d4 61 game_over = true;
2018US_MidhatHodo 0:a1f80a0896d4 62 reset();
2018US_MidhatHodo 0:a1f80a0896d4 63 }
2018US_MidhatHodo 0:a1f80a0896d4 64 latch = true;
2018US_MidhatHodo 0:a1f80a0896d4 65 }
2018US_MidhatHodo 0:a1f80a0896d4 66 } else latch = false;
2018US_MidhatHodo 0:a1f80a0896d4 67 }
2018US_MidhatHodo 0:a1f80a0896d4 68
2018US_MidhatHodo 0:a1f80a0896d4 69 void ekrantext() {
2018US_MidhatHodo 0:a1f80a0896d4 70 const char * game_over_text[3] = {"Game over\n", "Pritisnite gore\n", "za restart\n"};
2018US_MidhatHodo 0:a1f80a0896d4 71 const char * new_game[3] = {"Nova igra\n", "Pritisnite gore\n", "za pocetak\n"};
2018US_MidhatHodo 0:a1f80a0896d4 72
2018US_MidhatHodo 0:a1f80a0896d4 73 for (int i = 0; i < 3; i++) {
2018US_MidhatHodo 0:a1f80a0896d4 74 TFT.locate(50, 50 + i*28);
2018US_MidhatHodo 0:a1f80a0896d4 75 printf(game_over ? game_over_text[i] : new_game[i]);
2018US_MidhatHodo 0:a1f80a0896d4 76 }
2018US_MidhatHodo 0:a1f80a0896d4 77 }
2018US_MidhatHodo 0:a1f80a0896d4 78
2018US_MidhatHodo 0:a1f80a0896d4 79
2018US_MidhatHodo 0:a1f80a0896d4 80
2018US_MidhatHodo 0:a1f80a0896d4 81 const int debljina = 40;
2018US_MidhatHodo 0:a1f80a0896d4 82 void pipa(int visina, int x, int boja) {
2018US_MidhatHodo 0:a1f80a0896d4 83 TFT.line(x, 31, x, visina - debljina, boja);
2018US_MidhatHodo 0:a1f80a0896d4 84 TFT.line(x, visina + debljina, x, 239, boja);
2018US_MidhatHodo 0:a1f80a0896d4 85 }
2018US_MidhatHodo 0:a1f80a0896d4 86
2018US_MidhatHodo 0:a1f80a0896d4 87 void nacrtajPticu(int x,int y){
2018US_MidhatHodo 0:a1f80a0896d4 88 TFT.Bitmap(x,y,30,30,pticaBitmap);
2018US_MidhatHodo 0:a1f80a0896d4 89 }
2018US_MidhatHodo 0:a1f80a0896d4 90
2018US_MidhatHodo 0:a1f80a0896d4 91 int v_prva, v_druga;
2018US_MidhatHodo 0:a1f80a0896d4 92
2018US_MidhatHodo 0:a1f80a0896d4 93 bool prva = false;
2018US_MidhatHodo 0:a1f80a0896d4 94
2018US_MidhatHodo 0:a1f80a0896d4 95
2018US_MidhatHodo 0:a1f80a0896d4 96 int ptica, ptica_prosli, skok, scroll, score;
2018US_MidhatHodo 0:a1f80a0896d4 97
2018US_MidhatHodo 0:a1f80a0896d4 98 Ticker framer;
2018US_MidhatHodo 0:a1f80a0896d4 99
2018US_MidhatHodo 0:a1f80a0896d4 100 void frame();
2018US_MidhatHodo 0:a1f80a0896d4 101
2018US_MidhatHodo 0:a1f80a0896d4 102 void pocetniScreen();
2018US_MidhatHodo 0:a1f80a0896d4 103
2018US_MidhatHodo 0:a1f80a0896d4 104 void reset() {
2018US_MidhatHodo 0:a1f80a0896d4 105 scroll = 320;
2018US_MidhatHodo 0:a1f80a0896d4 106
2018US_MidhatHodo 0:a1f80a0896d4 107 pause = false;
2018US_MidhatHodo 0:a1f80a0896d4 108 v_prva = 100;
2018US_MidhatHodo 0:a1f80a0896d4 109 v_druga = 150;
2018US_MidhatHodo 0:a1f80a0896d4 110
2018US_MidhatHodo 0:a1f80a0896d4 111 prva = false;
2018US_MidhatHodo 0:a1f80a0896d4 112
2018US_MidhatHodo 0:a1f80a0896d4 113 ptica = 74;
2018US_MidhatHodo 0:a1f80a0896d4 114 ptica_prosli = 30;
2018US_MidhatHodo 0:a1f80a0896d4 115 skok = 0;
2018US_MidhatHodo 0:a1f80a0896d4 116 score = 0;
2018US_MidhatHodo 0:a1f80a0896d4 117 pocetniScreen();
2018US_MidhatHodo 0:a1f80a0896d4 118 framer.attach(frame, 1.0/60);
2018US_MidhatHodo 0:a1f80a0896d4 119 }
2018US_MidhatHodo 0:a1f80a0896d4 120
2018US_MidhatHodo 0:a1f80a0896d4 121 void skor() {
2018US_MidhatHodo 0:a1f80a0896d4 122 TFT.locate(100,2);
2018US_MidhatHodo 0:a1f80a0896d4 123 TFT.printf("%d\n", score);
2018US_MidhatHodo 0:a1f80a0896d4 124 }
2018US_MidhatHodo 0:a1f80a0896d4 125
2018US_MidhatHodo 0:a1f80a0896d4 126 void pocetniScreen(){
2018US_MidhatHodo 0:a1f80a0896d4 127 TFT.background(Blue);
2018US_MidhatHodo 0:a1f80a0896d4 128 TFT.cls();
2018US_MidhatHodo 0:a1f80a0896d4 129 TFT.fillrect(0,0,320,30, Orange);
2018US_MidhatHodo 0:a1f80a0896d4 130 TFT.background(Orange);
2018US_MidhatHodo 0:a1f80a0896d4 131 TFT.foreground(Black);
2018US_MidhatHodo 0:a1f80a0896d4 132
2018US_MidhatHodo 0:a1f80a0896d4 133 if (!game_over) {
2018US_MidhatHodo 0:a1f80a0896d4 134 pause = true;
2018US_MidhatHodo 0:a1f80a0896d4 135 ekrantext();
2018US_MidhatHodo 0:a1f80a0896d4 136 }
2018US_MidhatHodo 0:a1f80a0896d4 137
2018US_MidhatHodo 0:a1f80a0896d4 138 TFT.locate(2,2);
2018US_MidhatHodo 0:a1f80a0896d4 139 printf("Score: \n");
2018US_MidhatHodo 0:a1f80a0896d4 140 skor();
2018US_MidhatHodo 0:a1f80a0896d4 141 }
2018US_MidhatHodo 0:a1f80a0896d4 142
2018US_MidhatHodo 0:a1f80a0896d4 143
2018US_MidhatHodo 0:a1f80a0896d4 144
2018US_MidhatHodo 0:a1f80a0896d4 145 void skoci() { if (skok == 0) skok = 10; }
2018US_MidhatHodo 0:a1f80a0896d4 146
2018US_MidhatHodo 0:a1f80a0896d4 147 void frame() {
2018US_MidhatHodo 0:a1f80a0896d4 148 ucitajDzojstik();
2018US_MidhatHodo 0:a1f80a0896d4 149 if (pause) return;
2018US_MidhatHodo 0:a1f80a0896d4 150
2018US_MidhatHodo 0:a1f80a0896d4 151 ptica_prosli = ptica;
2018US_MidhatHodo 0:a1f80a0896d4 152 if (skok == 0) ptica+=2;
2018US_MidhatHodo 0:a1f80a0896d4 153 else {
2018US_MidhatHodo 0:a1f80a0896d4 154 ptica -= skok/2;
2018US_MidhatHodo 0:a1f80a0896d4 155 skok--;
2018US_MidhatHodo 0:a1f80a0896d4 156 }
2018US_MidhatHodo 0:a1f80a0896d4 157 scroll--;
2018US_MidhatHodo 0:a1f80a0896d4 158 if (scroll == -1) {
2018US_MidhatHodo 0:a1f80a0896d4 159 scroll = 319;
2018US_MidhatHodo 0:a1f80a0896d4 160 }
2018US_MidhatHodo 0:a1f80a0896d4 161 if (scroll == 159) prva = true;
2018US_MidhatHodo 0:a1f80a0896d4 162
2018US_MidhatHodo 0:a1f80a0896d4 163 if (prva && (scroll == 160 || scroll == 0)) {
2018US_MidhatHodo 0:a1f80a0896d4 164 score++;
2018US_MidhatHodo 0:a1f80a0896d4 165 skor();
2018US_MidhatHodo 0:a1f80a0896d4 166 }
2018US_MidhatHodo 0:a1f80a0896d4 167
2018US_MidhatHodo 0:a1f80a0896d4 168 if (ptica >= 240-30 || ptica < 31) {
2018US_MidhatHodo 0:a1f80a0896d4 169 pause = true;
2018US_MidhatHodo 0:a1f80a0896d4 170 game_over = true;
2018US_MidhatHodo 0:a1f80a0896d4 171 ekrantext();
2018US_MidhatHodo 0:a1f80a0896d4 172 return;
2018US_MidhatHodo 0:a1f80a0896d4 173 }
2018US_MidhatHodo 0:a1f80a0896d4 174
2018US_MidhatHodo 0:a1f80a0896d4 175 int xprva1 = (scroll + 160) % 320;
2018US_MidhatHodo 0:a1f80a0896d4 176 int xdruga1 = (scroll) % 320;
2018US_MidhatHodo 0:a1f80a0896d4 177
2018US_MidhatHodo 0:a1f80a0896d4 178 int xprva2 = (xprva1 + 30) % 320;
2018US_MidhatHodo 0:a1f80a0896d4 179 int xdruga2 = (xdruga1 + 30) % 320;
2018US_MidhatHodo 0:a1f80a0896d4 180
2018US_MidhatHodo 0:a1f80a0896d4 181 int granica, visina;
2018US_MidhatHodo 0:a1f80a0896d4 182 if (prva && xprva1 < xdruga1) {
2018US_MidhatHodo 0:a1f80a0896d4 183 granica = xprva1;
2018US_MidhatHodo 0:a1f80a0896d4 184 visina = v_prva;
2018US_MidhatHodo 0:a1f80a0896d4 185 } else {
2018US_MidhatHodo 0:a1f80a0896d4 186 granica = xdruga1;
2018US_MidhatHodo 0:a1f80a0896d4 187 visina = v_druga;
2018US_MidhatHodo 0:a1f80a0896d4 188 }
2018US_MidhatHodo 0:a1f80a0896d4 189
2018US_MidhatHodo 0:a1f80a0896d4 190 int xptica = 30;
2018US_MidhatHodo 0:a1f80a0896d4 191
2018US_MidhatHodo 0:a1f80a0896d4 192 bool vanix = xptica + 30 < granica;
2018US_MidhatHodo 0:a1f80a0896d4 193 bool vaniy = ptica > visina - debljina && ptica + 30 < visina + debljina;
2018US_MidhatHodo 0:a1f80a0896d4 194 if (!vanix && !vaniy) {
2018US_MidhatHodo 0:a1f80a0896d4 195 pause = true;
2018US_MidhatHodo 0:a1f80a0896d4 196 game_over = true;
2018US_MidhatHodo 0:a1f80a0896d4 197 ekrantext();
2018US_MidhatHodo 0:a1f80a0896d4 198 return;
2018US_MidhatHodo 0:a1f80a0896d4 199 }
2018US_MidhatHodo 0:a1f80a0896d4 200
2018US_MidhatHodo 0:a1f80a0896d4 201
2018US_MidhatHodo 0:a1f80a0896d4 202 // crtanje
2018US_MidhatHodo 0:a1f80a0896d4 203
2018US_MidhatHodo 0:a1f80a0896d4 204 if (prva)
2018US_MidhatHodo 0:a1f80a0896d4 205 pipa(v_prva, xprva1 , Green);
2018US_MidhatHodo 0:a1f80a0896d4 206 pipa(v_druga, xdruga1, Green);
2018US_MidhatHodo 0:a1f80a0896d4 207
2018US_MidhatHodo 0:a1f80a0896d4 208 if (prva)
2018US_MidhatHodo 0:a1f80a0896d4 209 pipa(v_prva, xprva2, Blue);
2018US_MidhatHodo 0:a1f80a0896d4 210 pipa(v_druga, xdruga2, Blue);
2018US_MidhatHodo 0:a1f80a0896d4 211
2018US_MidhatHodo 0:a1f80a0896d4 212 nacrtajPticu(xptica, ptica);
2018US_MidhatHodo 0:a1f80a0896d4 213 if (ptica > ptica_prosli)
2018US_MidhatHodo 0:a1f80a0896d4 214 TFT.fillrect(xptica, ptica_prosli, xptica + 30, ptica, Blue);
2018US_MidhatHodo 0:a1f80a0896d4 215
2018US_MidhatHodo 0:a1f80a0896d4 216 if (ptica < ptica_prosli)
2018US_MidhatHodo 0:a1f80a0896d4 217 TFT.fillrect(xptica, ptica+30, xptica + 30, ptica_prosli+30, Blue);
2018US_MidhatHodo 0:a1f80a0896d4 218 }
2018US_MidhatHodo 0:a1f80a0896d4 219
2018US_MidhatHodo 0:a1f80a0896d4 220 int main ()
2018US_MidhatHodo 0:a1f80a0896d4 221 {
2018US_MidhatHodo 0:a1f80a0896d4 222 // Inicijalizacija ;
2018US_MidhatHodo 0:a1f80a0896d4 223 TFT.claim(stdout);
2018US_MidhatHodo 0:a1f80a0896d4 224 TFT.set_orientation(1);
2018US_MidhatHodo 0:a1f80a0896d4 225 TFT.set_font((unsigned char *) Arial28x28);
2018US_MidhatHodo 0:a1f80a0896d4 226
2018US_MidhatHodo 0:a1f80a0896d4 227 unsigned char * ptica = pticaBitmap;
2018US_MidhatHodo 0:a1f80a0896d4 228 /*
2018US_MidhatHodo 0:a1f80a0896d4 229 for (int i = 0; i < 30*30/4; i++) {
2018US_MidhatHodo 0:a1f80a0896d4 230 char temp1 = ptica[i];
2018US_MidhatHodo 0:a1f80a0896d4 231 ptica[i] = ptica[i+3];
2018US_MidhatHodo 0:a1f80a0896d4 232 ptica[i+3] = temp1;
2018US_MidhatHodo 0:a1f80a0896d4 233
2018US_MidhatHodo 0:a1f80a0896d4 234 char temp2 = ptica[i+1];
2018US_MidhatHodo 0:a1f80a0896d4 235 ptica[i+1] = ptica[i+2];
2018US_MidhatHodo 0:a1f80a0896d4 236 ptica[i+2] = temp2;
2018US_MidhatHodo 0:a1f80a0896d4 237 }
2018US_MidhatHodo 0:a1f80a0896d4 238 */
2018US_MidhatHodo 0:a1f80a0896d4 239
2018US_MidhatHodo 0:a1f80a0896d4 240 for (int i = 0; i < 30*30*2; i++) {
2018US_MidhatHodo 0:a1f80a0896d4 241 char temp1 = ptica[i];
2018US_MidhatHodo 0:a1f80a0896d4 242 ptica[i] = ptica[i+1];
2018US_MidhatHodo 0:a1f80a0896d4 243 ptica[i+1] = temp1;
2018US_MidhatHodo 0:a1f80a0896d4 244 }
2018US_MidhatHodo 0:a1f80a0896d4 245
2018US_MidhatHodo 0:a1f80a0896d4 246
2018US_MidhatHodo 0:a1f80a0896d4 247
2018US_MidhatHodo 0:a1f80a0896d4 248 unsigned short * ptica_short = (unsigned short *) ptica;
2018US_MidhatHodo 0:a1f80a0896d4 249 /*
2018US_MidhatHodo 0:a1f80a0896d4 250 for (int i = 0; i <30*30; i++) {
2018US_MidhatHodo 0:a1f80a0896d4 251 //ptica_short[i] = ~ptica_short[i];
2018US_MidhatHodo 0:a1f80a0896d4 252 if (ptica_short[i] == 0) ptica_short[i] = Blue;
2018US_MidhatHodo 0:a1f80a0896d4 253 }
2018US_MidhatHodo 0:a1f80a0896d4 254 */
2018US_MidhatHodo 0:a1f80a0896d4 255 for (int red = 0; red < 15; red++) {
2018US_MidhatHodo 0:a1f80a0896d4 256 for (int kol = 0; kol < 30; kol++) {
2018US_MidhatHodo 0:a1f80a0896d4 257 int obrnuti = 30-red-1;
2018US_MidhatHodo 0:a1f80a0896d4 258 unsigned short temp = ptica_short[red * 30 + kol];
2018US_MidhatHodo 0:a1f80a0896d4 259 ptica_short[red * 30 + kol] = ptica_short[obrnuti * 30 + kol];
2018US_MidhatHodo 0:a1f80a0896d4 260 ptica_short[obrnuti * 30 + kol] = temp;
2018US_MidhatHodo 0:a1f80a0896d4 261 }
2018US_MidhatHodo 0:a1f80a0896d4 262 }
2018US_MidhatHodo 0:a1f80a0896d4 263 reset();
2018US_MidhatHodo 0:a1f80a0896d4 264 //Ticker skok;
2018US_MidhatHodo 0:a1f80a0896d4 265 //skok.attach(skoci, 0.5);
2018US_MidhatHodo 0:a1f80a0896d4 266
2018US_MidhatHodo 0:a1f80a0896d4 267 while (1) {
2018US_MidhatHodo 0:a1f80a0896d4 268
2018US_MidhatHodo 0:a1f80a0896d4 269 }
2018US_MidhatHodo 0:a1f80a0896d4 270 }