update
parent
37a3080b48
commit
556cc8ace0
449
src/gif_frames.h
449
src/gif_frames.h
|
@ -5,76 +5,24 @@ const uint16_t gif_frame_0[] = {
|
|||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5B0C, 0x5AEB,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x31C7,
|
||||
0x738E, 0x6B6D, 0x31A6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x4A8A, 0x73CF, 0x73AE, 0x4A49, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x5AEC, 0x73AE, 0x73AE, 0x5ACB, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x3186, 0x5AEC, 0x632D, 0x632D,
|
||||
0x5AEC, 0x3186, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4229, 0x6B4D,
|
||||
0x530E, 0x530E, 0x6B4D, 0x4229, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x3A08, 0x4249, 0x52AB, 0x6B6D, 0x5B0C,
|
||||
0x5AEC, 0x4B71, 0x5D9A, 0x5D9A, 0x4B71, 0x5AEC, 0x5B0C, 0x6B6D,
|
||||
0x52AB, 0x4249, 0x3A08, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x5B0C, 0x6B6E, 0x632D, 0x738E,
|
||||
0x73AE, 0x5B0C, 0x52ED, 0x4CFA, 0x8F5F, 0x8F5F, 0x4CFA, 0x52ED,
|
||||
0x5B0C, 0x73AE, 0x738E, 0x632D, 0x6B6E, 0x5B0C, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5ACB, 0x73AE, 0x634D,
|
||||
0x6B4D, 0x73AE, 0x73AE, 0x52AB, 0x4350, 0x4DFE, 0x565F, 0x565F,
|
||||
0x4DFE, 0x4350, 0x52AB, 0x73AE, 0x73AE, 0x6B4D, 0x634D, 0x73AE,
|
||||
0x5ACB, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4A6A, 0x5AEC,
|
||||
0x6B4D, 0x5B0C, 0x632D, 0x6B6E, 0x6B4D, 0x4A6A, 0x2AF2, 0x4DDE,
|
||||
0x563F, 0x563F, 0x4DDE, 0x2AF2, 0x4A6A, 0x6B4D, 0x6B6E, 0x632D,
|
||||
0x5B0C, 0x6B4D, 0x5AEC, 0x4A6A, 0x0000, 0x0000, 0x0000, 0x4249,
|
||||
0x5AEC, 0x5ACC, 0x5AEC, 0x52AB, 0x52AB, 0x5AEC, 0x52CC, 0x424A,
|
||||
0x2290, 0x1BD8, 0x2C5A, 0x2C5A, 0x1BD8, 0x2290, 0x424A, 0x52CC,
|
||||
0x5AEC, 0x52AB, 0x52AB, 0x5ACC, 0x5ACC, 0x5AEC, 0x4249, 0x0000,
|
||||
0x0000, 0x31A7, 0x39E8, 0x39C8, 0x39C8, 0x31C8, 0x31C8, 0x39C8,
|
||||
0x31C8, 0x3187, 0x2A6E, 0x0B77, 0x0B77, 0x0B77, 0x0B77, 0x2A6E,
|
||||
0x3187, 0x31C8, 0x39C8, 0x31C8, 0x31C8, 0x39C8, 0x39C8, 0x39E8,
|
||||
0x31A7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x3A2A, 0x2AAF, 0x1B12, 0x1B12,
|
||||
0x2AAF, 0x3A2A, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2966, 0x4A6B,
|
||||
0x4A8B, 0x4A8B, 0x4A6B, 0x2966, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x2146, 0x3A0A, 0x3A2B, 0x3A2B, 0x3A0A, 0x2146, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x29C9, 0x3A0A, 0x31E9, 0x31E9, 0x3A0A, 0x29C9,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x222C, 0x432F, 0x432F,
|
||||
0x222C, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2CDB,
|
||||
0x973E, 0x973E, 0x2CDB, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x2CDB, 0x76DF, 0x76DF, 0x2CDB, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0BF9, 0x4DFE, 0x4DFE, 0x0BF9, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0398, 0x1C7A, 0x1C7A,
|
||||
0x0398, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x03B8, 0x03B8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8CD6,
|
||||
0x8CD6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xADB8, 0x19AE,
|
||||
0x19AE, 0xADB8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0xCE38, 0xBDF6, 0x7453, 0x11F1, 0x3AF5,
|
||||
0x3AF5, 0x11F1, 0x7453, 0xBDF6, 0xCE38, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x4393, 0x12F8, 0x09D4, 0x008B, 0x1256,
|
||||
0x1256, 0x008B, 0x09D4, 0x12F8, 0x4393, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x01F6, 0x1A75, 0x4B12, 0x52F0, 0x098F,
|
||||
0x098F, 0x52F0, 0x4B12, 0x1A75, 0x01F6, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0xBCF1, 0xEE56, 0xEE57, 0x0000, 0x63B3,
|
||||
0x63B3, 0x0000, 0xEE57, 0xEE56, 0xBCF1, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
|
@ -85,7 +33,6 @@ const uint16_t gif_frame_0[] = {
|
|||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000,
|
||||
};
|
||||
|
||||
const uint16_t gif_frame_1[] = {
|
||||
|
@ -93,82 +40,27 @@ const uint16_t gif_frame_1[] = {
|
|||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2104, 0x2104,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x4A49, 0x4228, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x18E3, 0x52AA, 0x4A69, 0x18E3, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x2965, 0x52AA, 0x528A, 0x2945, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x31A6, 0x528A, 0x4A69,
|
||||
0x3186, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0x39E7,
|
||||
0x39E7, 0x39E7, 0x39E7, 0x0841, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0841, 0x0020,
|
||||
0x2124, 0x4A49, 0x39C7, 0x39C7, 0x4A49, 0x2124, 0x0020, 0x0841,
|
||||
0x0020, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2104, 0x2945, 0x39C7,
|
||||
0x52AA, 0x39E7, 0x39C7, 0x5AEB, 0x738E, 0x738E, 0x5AEB, 0x39C7,
|
||||
0x39E7, 0x52AA, 0x39C7, 0x2945, 0x2104, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x18E3, 0x4A49, 0x4228,
|
||||
0x4208, 0x528A, 0x528A, 0x3186, 0x39E7, 0x6B6D, 0x73AE, 0x73AE,
|
||||
0x6B6D, 0x39E7, 0x3186, 0x528A, 0x528A, 0x4208, 0x4A49, 0x4A49,
|
||||
0x18E3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0841, 0x4208,
|
||||
0x528A, 0x39E7, 0x4A49, 0x528A, 0x4A69, 0x2945, 0x5AEB, 0x6B6D,
|
||||
0x738E, 0x738E, 0x6B6D, 0x5AEB, 0x2945, 0x4A69, 0x528A, 0x4A49,
|
||||
0x39E7, 0x528A, 0x4208, 0x0841, 0x0000, 0x0000, 0x0000, 0x0841,
|
||||
0x2965, 0x39C7, 0x4228, 0x31A6, 0x4228, 0x4A49, 0x4228, 0x2124,
|
||||
0x5ACB, 0x6B6D, 0x738E, 0x738E, 0x6B6D, 0x5ACB, 0x2124, 0x4228,
|
||||
0x4A49, 0x4228, 0x31A6, 0x4228, 0x39C7, 0x2965, 0x0841, 0x0000,
|
||||
0x0020, 0x2945, 0x31A6, 0x3186, 0x3186, 0x2965, 0x3186, 0x31A6,
|
||||
0x3186, 0x2104, 0x52AA, 0x630C, 0x6B4D, 0x6B4D, 0x630C, 0x52AA,
|
||||
0x2104, 0x3186, 0x31A6, 0x3186, 0x2965, 0x3186, 0x3186, 0x31A6,
|
||||
0x2945, 0x0020, 0x0000, 0x1082, 0x10A2, 0x10A2, 0x10A2, 0x1082,
|
||||
0x1082, 0x10A2, 0x1082, 0x0861, 0x18E3, 0x5AEB, 0x5AEB, 0x5AEB,
|
||||
0x5AEB, 0x18E3, 0x0861, 0x1082, 0x10A2, 0x1082, 0x1082, 0x10A2,
|
||||
0x10A2, 0x10A2, 0x1082, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x18C3, 0x5ACB,
|
||||
0x5ACB, 0x5ACB, 0x5ACB, 0x18C3, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0861, 0x2945, 0x2124, 0x2124, 0x2945, 0x0861, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x18C3, 0x2124, 0x2124, 0x18C3, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0861, 0x10A2, 0x10A2, 0x10A2,
|
||||
0x10A2, 0x0861, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0861,
|
||||
0x18C3, 0x18C3, 0x0861, 0x0020, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x5ACB, 0x632C, 0x632C, 0x5ACB, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x6B4D, 0x738E, 0x738E, 0x6B4D, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x630C, 0x6B6D, 0x6B6D,
|
||||
0x630C, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x630C,
|
||||
0x6B4D, 0x6B4D, 0x630C, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x632C, 0x630C, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x632C, 0x632C, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8CD6,
|
||||
0x8CD6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xADB8, 0x19AE,
|
||||
0x19AE, 0xADB8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0xCE38, 0xBDF6, 0x7453, 0x11F1, 0x3AF5,
|
||||
0x3AF5, 0x11F1, 0x7453, 0xBDF6, 0xCE38, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x4393, 0x12F8, 0x09D4, 0x008B, 0x1256,
|
||||
0x1256, 0x008B, 0x09D4, 0x12F8, 0x4393, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0217, 0x1A75, 0x4B12, 0x52F0, 0x098F,
|
||||
0x098F, 0x52F0, 0x4B12, 0x1A75, 0x0217, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0xBCB1, 0xEE36, 0xEE16, 0x0000, 0x63B3,
|
||||
0x63B3, 0x0000, 0xEE16, 0xEE36, 0xBCB1, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
|
@ -176,7 +68,6 @@ const uint16_t gif_frame_1[] = {
|
|||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
};
|
||||
|
||||
const uint16_t gif_frame_2[] = {
|
||||
|
@ -184,82 +75,27 @@ const uint16_t gif_frame_2[] = {
|
|||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4A6A, 0x4A69,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x6B6E, 0x6B4D, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x4229, 0x73CF, 0x738E, 0x4208, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x52EB, 0x73CF, 0x73AE, 0x52AA, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5AEC, 0x738E, 0x738E,
|
||||
0x5AEB, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x39C7, 0x630C,
|
||||
0x630C, 0x630C, 0x630C, 0x39C7, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2145, 0x39C7, 0x2986,
|
||||
0x4A6A, 0x6B6E, 0x4B2F, 0x4B2F, 0x6B6E, 0x4A6A, 0x2986, 0x39C7,
|
||||
0x2145, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4A6A, 0x528B, 0x5B0C,
|
||||
0x73AF, 0x632D, 0x5B0C, 0x43B3, 0x6E5D, 0x6E5D, 0x43B3, 0x5B0C,
|
||||
0x632D, 0x73AF, 0x5B0C, 0x528B, 0x4A6A, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4A49, 0x6B6D, 0x6B4D,
|
||||
0x632D, 0x73AE, 0x73AE, 0x5AEC, 0x530E, 0x4D5B, 0x873F, 0x873F,
|
||||
0x4D5B, 0x530E, 0x5AEC, 0x73AE, 0x73AE, 0x632D, 0x6B6D, 0x6B6D,
|
||||
0x4A49, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x31C7, 0x632D,
|
||||
0x73AE, 0x632D, 0x6B6D, 0x73AE, 0x738E, 0x528B, 0x4372, 0x4E1F,
|
||||
0x563F, 0x563F, 0x4E1F, 0x4372, 0x528B, 0x738E, 0x73AE, 0x6B6D,
|
||||
0x632D, 0x73AE, 0x632D, 0x31C7, 0x0000, 0x0000, 0x0000, 0x31A7,
|
||||
0x52AB, 0x5B0C, 0x6B4D, 0x5AEC, 0x634D, 0x6B6E, 0x634D, 0x4A6A,
|
||||
0x2B33, 0x4DDF, 0x565F, 0x565F, 0x4DDF, 0x2B33, 0x4A6A, 0x634D,
|
||||
0x6B6E, 0x634D, 0x5AEC, 0x6B4D, 0x5B0C, 0x52AB, 0x31A7, 0x0000,
|
||||
0x2125, 0x4A8B, 0x5AEC, 0x5AEC, 0x5AEC, 0x52AB, 0x52CC, 0x5AEC,
|
||||
0x52CC, 0x424A, 0x1A91, 0x23F9, 0x349B, 0x349B, 0x23F9, 0x1A91,
|
||||
0x424A, 0x52CC, 0x5AEC, 0x52CC, 0x52AB, 0x5AEC, 0x5AEC, 0x5AEC,
|
||||
0x4A8B, 0x2125, 0x1905, 0x39E8, 0x3A09, 0x3A09, 0x3A09, 0x39E8,
|
||||
0x39E8, 0x3A09, 0x39E8, 0x31C8, 0x228F, 0x0B97, 0x0B77, 0x0B77,
|
||||
0x0B97, 0x228F, 0x31C8, 0x39E8, 0x3A09, 0x39E8, 0x39E8, 0x3A09,
|
||||
0x3A09, 0x3A09, 0x39E8, 0x1905, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x18E4, 0x3A2B, 0x1AD1,
|
||||
0x1355, 0x1355, 0x1AD1, 0x3A2B, 0x18E4, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x31C8, 0x4A8B, 0x426B, 0x426B, 0x4A8B, 0x31C8, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x2126, 0x3A2B, 0x424B, 0x424B, 0x3A2B, 0x2126,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x31EA, 0x3A0A, 0x31EA, 0x31EA,
|
||||
0x3A0A, 0x31EA, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2989, 0x320B,
|
||||
0x320A, 0x320A, 0x320B, 0x2989, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x3C76, 0x7DD8, 0x7DD8, 0x3C76, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x03D9, 0x55FE, 0x9F9F, 0x9F9F, 0x55FE, 0x03D9,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x03B8, 0x353D, 0x5E5F, 0x5E5F,
|
||||
0x353D, 0x03B8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x143A,
|
||||
0x4DDE, 0x4DFE, 0x143A, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0398, 0x0BF9, 0x0BF9, 0x0398, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0398, 0x0398, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8CD6,
|
||||
0x8CD6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xADB8, 0x19AE,
|
||||
0x19AE, 0xADB8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0xCE38, 0xBDF6, 0x7453, 0x11F1, 0x3AF5,
|
||||
0x3AF5, 0x11F1, 0x7453, 0xBDF6, 0xCE38, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x4393, 0x12F8, 0x09D4, 0x008B, 0x1256,
|
||||
0x1256, 0x008B, 0x09D4, 0x12F8, 0x4393, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0217, 0x1A75, 0x4B12, 0x52F0, 0x098F,
|
||||
0x098F, 0x52F0, 0x4B12, 0x1A75, 0x0217, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0xBC70, 0xEE57, 0xEE57, 0x0000, 0x63B3,
|
||||
0x63B3, 0x0000, 0xEE57, 0xEE57, 0xBC70, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
|
@ -267,191 +103,8 @@ const uint16_t gif_frame_2[] = {
|
|||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
};
|
||||
|
||||
const uint16_t gif_frame_3[] = {
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4249, 0x4249,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x6B6D, 0x6B4D, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x3A08, 0x73AE, 0x738E, 0x39E7, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x52AB, 0x73CF, 0x73AE, 0x4A8A, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5B0C, 0x73AE, 0x73AE,
|
||||
0x5AEB, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3186, 0x5AEC,
|
||||
0x632D, 0x632D, 0x5AEC, 0x3186, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x4229, 0x6B6D, 0x5B0D, 0x5B0D, 0x6B6D, 0x4229, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x39C7, 0x4229,
|
||||
0x5B0C, 0x4A8A, 0x5ACB, 0x534F, 0x4C76, 0x4C76, 0x534F, 0x5ACB,
|
||||
0x4A8A, 0x5B0C, 0x4229, 0x39C7, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4A8A, 0x632D,
|
||||
0x630C, 0x6B8E, 0x73CF, 0x632D, 0x5B0D, 0x4477, 0x977F, 0x977F,
|
||||
0x4477, 0x5B0D, 0x632D, 0x73CF, 0x6B8E, 0x630C, 0x632D, 0x4A8A,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5ACB,
|
||||
0x73CF, 0x632D, 0x634D, 0x73AE, 0x73AE, 0x52CB, 0x4B2F, 0x4DBD,
|
||||
0x6EBF, 0x6EBF, 0x4DBD, 0x4B2F, 0x52CB, 0x73AE, 0x73AE, 0x632D,
|
||||
0x632D, 0x73CF, 0x5ACB, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x4208, 0x634D, 0x73AE, 0x632D, 0x6B6E, 0x73AE, 0x738E, 0x4A8B,
|
||||
0x3B73, 0x563F, 0x563F, 0x563F, 0x563F, 0x3B73, 0x4A8B, 0x738E,
|
||||
0x73AE, 0x6B6E, 0x632D, 0x73AE, 0x634D, 0x4208, 0x0000, 0x0000,
|
||||
0x0000, 0x39E8, 0x52CB, 0x5AEC, 0x632D, 0x5AEC, 0x632D, 0x6B4D,
|
||||
0x630D, 0x424A, 0x22F2, 0x459E, 0x563F, 0x563F, 0x459E, 0x22F2,
|
||||
0x424A, 0x630D, 0x6B4D, 0x632D, 0x5AEC, 0x632D, 0x5AEC, 0x52CB,
|
||||
0x39E8, 0x0000, 0x2145, 0x52AB, 0x5AEC, 0x5ACC, 0x52CC, 0x4A8B,
|
||||
0x52CC, 0x5AEC, 0x52AB, 0x422A, 0x1A91, 0x1B98, 0x23F9, 0x23F9,
|
||||
0x1B98, 0x1A91, 0x422A, 0x52AB, 0x5AEC, 0x52CC, 0x4A8B, 0x52CC,
|
||||
0x5ACC, 0x5AEC, 0x52AB, 0x2145, 0x1904, 0x31C8, 0x39C8, 0x39C8,
|
||||
0x31C8, 0x31A7, 0x31C8, 0x39C8, 0x31A7, 0x31A7, 0x228F, 0x0B77,
|
||||
0x0B77, 0x0B77, 0x0B77, 0x228F, 0x31A7, 0x31A7, 0x39C8, 0x31C8,
|
||||
0x31A7, 0x31C8, 0x39C8, 0x39C8, 0x31C8, 0x1904, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x18E4,
|
||||
0x3A2B, 0x22B1, 0x1334, 0x1334, 0x22B1, 0x3A2B, 0x18E4, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x31C8, 0x4A8B, 0x4A6B, 0x4A6B, 0x4A8B, 0x31C8,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x2125, 0x3A2B, 0x426B, 0x426B,
|
||||
0x3A2B, 0x2125, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x31A8, 0x31E9,
|
||||
0x320A, 0x320A, 0x31E9, 0x31A8, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x29A9, 0x31EA, 0x31EA, 0x31EA, 0x31EA, 0x29A9, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x1AB0, 0x5433, 0x5433, 0x1AB0, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x353C, 0x9F9F, 0x9F9F,
|
||||
0x353C, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0398, 0x2CFC,
|
||||
0x6E9F, 0x6E9F, 0x2CFC, 0x0398, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x1419, 0x4DFF, 0x4DFF, 0x1419, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0398, 0x24BB, 0x24BB, 0x0398, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0398, 0x0398,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0398, 0x0398, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
};
|
||||
|
||||
const uint16_t gif_frame_4[] = {
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4229, 0x228F,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x6B4D, 0x632D, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x3A2B, 0x73AE, 0x6B6D, 0x31C8, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x52AB, 0x73CF, 0x73AE, 0x4A8B, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5B0C, 0x73AE, 0x73AE,
|
||||
0x52CB, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x39E7, 0x5AEC,
|
||||
0x630D, 0x630D, 0x5AEC, 0x39E7, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x4229, 0x6B4D, 0x5B0D, 0x5B0D, 0x6B4D, 0x4229, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x29A9, 0x3A2B, 0x4A8A,
|
||||
0x632D, 0x5ACB, 0x5AEC, 0x0398, 0x459E, 0x459E, 0x0398, 0x5AEC,
|
||||
0x5ACB, 0x632D, 0x4A8A, 0x3A2B, 0x29A9, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5ACB, 0x632D,
|
||||
0x630D, 0x738E, 0x73AE, 0x5B0C, 0x5B0D, 0x4DBD, 0x0000, 0x0000,
|
||||
0x4DBD, 0x5B0D, 0x5B0C, 0x73AE, 0x738E, 0x630D, 0x632D, 0x5ACB,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5AEC,
|
||||
0x73CF, 0x630D, 0x632D, 0x73AE, 0x6B6D, 0x52AB, 0x0398, 0x563F,
|
||||
0x9F9F, 0x9F9F, 0x563F, 0x0398, 0x52AB, 0x738E, 0x73AE, 0x632D,
|
||||
0x630D, 0x73CF, 0x5AEC, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x4249, 0x632D, 0x6B6D, 0x4B2F, 0x6B4D, 0x73AE, 0x6B6D, 0x426B,
|
||||
0x22F2, 0x6EBF, 0x977F, 0x977F, 0x6EBF, 0x22F2, 0x426B, 0x6B6D,
|
||||
0x73AE, 0x6B4D, 0x4B2F, 0x6B6D, 0x632D, 0x4249, 0x0000, 0x0000,
|
||||
0x0000, 0x228F, 0x5ACB, 0x5ACB, 0x5B0C, 0x52CB, 0x5AEC, 0x534F,
|
||||
0x5ACB, 0x4249, 0x22B1, 0x353C, 0x563F, 0x563F, 0x353C, 0x22B1,
|
||||
0x4249, 0x5ACB, 0x534F, 0x5AEC, 0x5ACB, 0x5B0C, 0x5ACB, 0x5ACB,
|
||||
0x228F, 0x0000, 0x3186, 0x4A8A, 0x4A8B, 0x4A8B, 0x4A8B, 0x426B,
|
||||
0x4A8A, 0x4A8B, 0x4A8A, 0x39E8, 0x1AB0, 0x1334, 0x0B77, 0x0B77,
|
||||
0x1334, 0x1AB0, 0x39E8, 0x4A8A, 0x4A8B, 0x4A8A, 0x426B, 0x4A8B,
|
||||
0x4A8B, 0x4A8B, 0x4A8A, 0x3186, 0x1904, 0x1904, 0x3186, 0x2145,
|
||||
0x2145, 0x1904, 0x2145, 0x3186, 0x18E4, 0x31A7, 0x31EA, 0x3B73,
|
||||
0x23F9, 0x23F9, 0x3B73, 0x31EA, 0x31A7, 0x18E4, 0x3186, 0x2145,
|
||||
0x1904, 0x2145, 0x2145, 0x2145, 0x1904, 0x1904, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x18E4,
|
||||
0x31E9, 0x320A, 0x1A91, 0x1A91, 0x320A, 0x31E9, 0x18E4, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x39C7, 0x426B, 0x4A8A, 0x4A8A, 0x426B, 0x39C7,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x31A7, 0x31C8, 0x31EA, 0x31EA,
|
||||
0x31C8, 0x31A7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x31A8, 0x31C8,
|
||||
0x31C8, 0x31C8, 0x31C8, 0x31A8, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x29A9, 0x39C8, 0x3A08, 0x3A08, 0x39C8, 0x29A9, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0B77, 0x4DFF, 0x4DFF, 0x0B77, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1419, 0x0000, 0x0000,
|
||||
0x1419, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0398, 0x4C76,
|
||||
0x6E9F, 0x6E9F, 0x4C76, 0x0398, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x1B98, 0x2CFC, 0x24BB, 0x1B98, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0398, 0x4477, 0x5433, 0x0398, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1B98, 0x1B98,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0398, 0x0398, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
};
|
||||
|
||||
const int num_frames = 5;
|
||||
const int frame_width = 26;
|
||||
const int frame_height = 27;
|
||||
const int num_frames = 3;
|
||||
const int frame_width = 16;
|
||||
const int frame_height = 16;
|
||||
|
|
303
src/main.cpp
303
src/main.cpp
|
@ -4,6 +4,7 @@
|
|||
#include <vector>
|
||||
#include <cstdlib>
|
||||
#include <ctime>
|
||||
#include <Fonts/FreeMono9pt7b.h>
|
||||
#pragma region Matrix Config
|
||||
#define R1_PIN 4
|
||||
#define G1_PIN 5
|
||||
|
@ -29,7 +30,6 @@
|
|||
#define PANE_HEIGHT PANEL_HEIGHT
|
||||
#define NUM_PIXELS PANE_WIDTH *PANE_HEIGHT
|
||||
|
||||
|
||||
#define COLOR_GREEN 0x07E0
|
||||
#define COLOR_RED 0xF800
|
||||
#define COLOR_BLUE 0x001F
|
||||
|
@ -58,27 +58,29 @@ const int floatSize = sizeof(float);
|
|||
const int SCREEN_WIDTH = 128;
|
||||
const int SCREEN_HEIGHT = 128;
|
||||
const int PLAYER_WIDTH = 16;
|
||||
const int PLAYER_HEIGHT = 8;
|
||||
const int ENEMY_WIDTH = 16;
|
||||
const int PLAYER_HEIGHT = 16;
|
||||
const int ENEMY_WIDTH = 8;
|
||||
const int ENEMY_HEIGHT = 8;
|
||||
const int BULLET_WIDTH = 2;
|
||||
const int BULLET_HEIGHT = 4;
|
||||
const int NUM_ENEMIES = 10;
|
||||
|
||||
|
||||
struct Player {
|
||||
int x, y;
|
||||
bool alive;
|
||||
const int MAX_BULLETS = 10; // Số lượng viên đạn tối đa
|
||||
struct Player
|
||||
{
|
||||
int x, y;
|
||||
bool alive;
|
||||
};
|
||||
|
||||
struct Enemy {
|
||||
int x, y;
|
||||
bool alive;
|
||||
struct Enemy
|
||||
{
|
||||
int x, y;
|
||||
bool alive;
|
||||
};
|
||||
|
||||
struct Bullet {
|
||||
int x, y;
|
||||
bool active;
|
||||
struct Bullet
|
||||
{
|
||||
int x, y;
|
||||
bool active;
|
||||
};
|
||||
|
||||
uint32_t rgb565_to_rgb888(uint16_t rgb565)
|
||||
|
@ -96,9 +98,9 @@ uint32_t rgb565_to_rgb888(uint16_t rgb565)
|
|||
// Ghép các giá trị RGB888 thành một giá trị 32 bit
|
||||
return (r << 16) | (g << 8) | b;
|
||||
}
|
||||
Player player ;
|
||||
Player player;
|
||||
std::vector<Enemy> enemies(NUM_ENEMIES);
|
||||
Bullet bullet = {0, 0, false};
|
||||
Bullet bullets[MAX_BULLETS];
|
||||
void Initialize_State()
|
||||
{
|
||||
player = {SCREEN_WIDTH / 2 - PLAYER_WIDTH / 2, SCREEN_HEIGHT - PLAYER_HEIGHT - 10, true};
|
||||
|
@ -106,81 +108,204 @@ void Initialize_State()
|
|||
{
|
||||
enemies[i] = {i * (SCREEN_WIDTH / NUM_ENEMIES), 0, true};
|
||||
}
|
||||
for (int i = 0; i < MAX_BULLETS; ++i)
|
||||
{
|
||||
bullets[i] = {0, 0, false};
|
||||
}
|
||||
}
|
||||
void fireBullet()
|
||||
{
|
||||
for (int i = 0; i < MAX_BULLETS; ++i)
|
||||
{
|
||||
if (!bullets[i].active)
|
||||
{
|
||||
bullets[i].x = player.x + PLAYER_WIDTH / 2 - BULLET_WIDTH / 2;
|
||||
bullets[i].y = player.y - BULLET_HEIGHT;
|
||||
bullets[i].active = true;
|
||||
break; // Chỉ bắn một viên đạn tại một thời điểm
|
||||
}
|
||||
}
|
||||
}
|
||||
int X_player = 0;
|
||||
void updatePlayer(int x)
|
||||
{
|
||||
// Example: Move player left or right based on input
|
||||
player.x = x;
|
||||
}
|
||||
|
||||
void updatePlayer(int x) {
|
||||
// Example: Move player left or right based on input
|
||||
player.x = x;
|
||||
}
|
||||
void updateEnemies() {
|
||||
for (auto& enemy : enemies) {
|
||||
if (enemy.alive) {
|
||||
enemy.y += 1; // Move downwards
|
||||
if (enemy.y > SCREEN_HEIGHT) {
|
||||
enemy.y = 0; // Reset position if off screen
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
void updateBullet() {
|
||||
if (bullet.active) {
|
||||
bullet.y -= 4; // Move upwards
|
||||
if (bullet.y < 0) {
|
||||
bullet.active = false; // Deactivate if off screen
|
||||
}
|
||||
unsigned long last_enemies_update = millis();
|
||||
int enemies_update_rate = 500;
|
||||
void updateEnemies()
|
||||
{
|
||||
unsigned long now = millis();
|
||||
if (now - last_enemies_update < enemies_update_rate)
|
||||
return;
|
||||
last_enemies_update = now;
|
||||
for (auto &enemy : enemies)
|
||||
{
|
||||
if (enemy.alive)
|
||||
{
|
||||
enemy.y += 1; // Move downwards
|
||||
if (enemy.y > SCREEN_HEIGHT)
|
||||
{
|
||||
enemy.y = 0; // Reset position if off screen
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void checkCollisions() {
|
||||
// Check collision between bullet and enemies
|
||||
for (auto& enemy : enemies) {
|
||||
if (enemy.alive && bullet.active &&
|
||||
bullet.x < enemy.x + ENEMY_WIDTH &&
|
||||
bullet.x + BULLET_WIDTH > enemy.x &&
|
||||
bullet.y < enemy.y + ENEMY_HEIGHT &&
|
||||
bullet.y + BULLET_HEIGHT > enemy.y) {
|
||||
enemy.alive = false;
|
||||
bullet.active = false;
|
||||
}
|
||||
}
|
||||
|
||||
// Check collision between enemies and player
|
||||
for (auto& enemy : enemies) {
|
||||
if (enemy.alive &&
|
||||
player.x < enemy.x + ENEMY_WIDTH &&
|
||||
player.x + PLAYER_WIDTH > enemy.x &&
|
||||
player.y < enemy.y + ENEMY_HEIGHT &&
|
||||
player.y + PLAYER_HEIGHT > enemy.y) {
|
||||
player.alive = false; // Player is hit
|
||||
}
|
||||
unsigned long last_bullets_update = millis();
|
||||
int bullets_update_speed = 10;
|
||||
void updateBullets()
|
||||
{
|
||||
unsigned long now = millis();
|
||||
if (now - last_bullets_update < bullets_update_speed)
|
||||
return;
|
||||
last_bullets_update = now;
|
||||
for (int i = 0; i < MAX_BULLETS; ++i)
|
||||
{
|
||||
if (bullets[i].active)
|
||||
{
|
||||
bullets[i].y -= 4; // Di chuyển lên trên
|
||||
if (bullets[i].y < 0)
|
||||
{
|
||||
bullets[i].active = false; // Vô hiệu hóa nếu ra ngoài màn hình
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
void render() {
|
||||
dma_display->clearScreen();
|
||||
if (player.alive) {
|
||||
dma_display->drawRect(player.x, player.y, PLAYER_WIDTH, PLAYER_HEIGHT, COLOR_GREEN);
|
||||
}
|
||||
|
||||
for (const auto& enemy : enemies) {
|
||||
if (enemy.alive) {
|
||||
dma_display->drawRect(enemy.x, enemy.y, ENEMY_WIDTH, ENEMY_HEIGHT, COLOR_RED);
|
||||
unsigned long last_game_over_time = millis();
|
||||
int restart_time = 2000;
|
||||
void checkCollisions()
|
||||
{
|
||||
// Check collision between bullet and enemies
|
||||
for (int i = 0; i < MAX_BULLETS; ++i)
|
||||
{
|
||||
if (bullets[i].active)
|
||||
{
|
||||
for (auto &enemy : enemies)
|
||||
{
|
||||
if (enemy.alive &&
|
||||
bullets[i].x < enemy.x + ENEMY_WIDTH &&
|
||||
bullets[i].x + BULLET_WIDTH > enemy.x &&
|
||||
bullets[i].y < enemy.y + ENEMY_HEIGHT &&
|
||||
bullets[i].y + BULLET_HEIGHT > enemy.y)
|
||||
{
|
||||
enemy.alive = false;
|
||||
bullets[i].active = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (bullet.active) {
|
||||
dma_display->drawRect(bullet.x, bullet.y, BULLET_WIDTH, BULLET_HEIGHT, COLOR_WHITE);
|
||||
// Check collision between enemies and player
|
||||
for (auto &enemy : enemies)
|
||||
{
|
||||
if (enemy.alive &&
|
||||
player.x < enemy.x + ENEMY_WIDTH &&
|
||||
player.x + PLAYER_WIDTH > enemy.x &&
|
||||
player.y < enemy.y + ENEMY_HEIGHT &&
|
||||
player.y + PLAYER_HEIGHT > enemy.y)
|
||||
{
|
||||
player.alive = false; // Player is hit
|
||||
last_game_over_time = millis();
|
||||
}
|
||||
}
|
||||
}
|
||||
unsigned long last_render_time = millis();
|
||||
int render_rate = 20; // Frame rate in frames per second
|
||||
|
||||
|
||||
void render()
|
||||
{
|
||||
unsigned long now = millis();
|
||||
if (now - last_render_time < 1000 / render_rate)
|
||||
return;
|
||||
last_render_time = now;
|
||||
dma_display->clearScreen();
|
||||
if (player.alive)
|
||||
{
|
||||
int x = player.x;
|
||||
int y = player.y;
|
||||
if (y > 64)
|
||||
{
|
||||
y = y - 64;
|
||||
x = x + 128;
|
||||
}
|
||||
dma_display->drawRect(x, y, PLAYER_WIDTH, PLAYER_HEIGHT, COLOR_GREEN);
|
||||
}
|
||||
for (auto &enemy : enemies)
|
||||
{
|
||||
if (enemy.alive)
|
||||
{
|
||||
int x = enemy.x;
|
||||
int y = enemy.y;
|
||||
if (y > 64)
|
||||
{
|
||||
y = y - 64;
|
||||
x = x + 128;
|
||||
}
|
||||
dma_display->drawRect(x, y, ENEMY_WIDTH, ENEMY_HEIGHT, COLOR_RED);
|
||||
}
|
||||
}
|
||||
for (int i = 0; i < MAX_BULLETS; ++i)
|
||||
{
|
||||
if (bullets[i].active)
|
||||
{
|
||||
int x = bullets[i].x;
|
||||
int y = bullets[i].y;
|
||||
if (y > 64)
|
||||
{
|
||||
y = y - 64;
|
||||
x = x + 128;
|
||||
}
|
||||
dma_display->drawRect(x, y, BULLET_WIDTH, BULLET_HEIGHT, COLOR_WHITE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
unsigned long period_time = millis();
|
||||
bool set_FPS(int rate){
|
||||
bool set_FPS(int rate)
|
||||
{
|
||||
unsigned long now = millis();
|
||||
int elapsed = 1000/rate;
|
||||
if(now - period_time >=elapsed){
|
||||
int elapsed = 1000 / rate;
|
||||
if (now - period_time >= elapsed)
|
||||
{
|
||||
period_time = now;
|
||||
return true;
|
||||
}
|
||||
else return false;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
const char *text = "Game Over";
|
||||
bool game_over = false;
|
||||
|
||||
void Game_Over()
|
||||
{
|
||||
if(!game_over){
|
||||
game_over = true;
|
||||
last_game_over_time = millis();
|
||||
}
|
||||
// Font metrics
|
||||
int textWidth = 0;
|
||||
int textHeight = 0;
|
||||
int cursorX = 0;
|
||||
int cursorY = 0;
|
||||
|
||||
// Calculate text dimensions (approximated for example)
|
||||
textWidth = strlen(text) * 11; // Assuming each character is approximately 6 pixels wide
|
||||
textHeight = 8; // Assuming font height is 8 pixels
|
||||
|
||||
// Compute the center position
|
||||
cursorX = (128 - textWidth) / 2;
|
||||
cursorY = (64 + textHeight) / 2;
|
||||
|
||||
// Set the cursor position
|
||||
dma_display->setCursor(cursorX, cursorY);
|
||||
|
||||
// Print text on the matrix
|
||||
dma_display->print(text);
|
||||
}
|
||||
void setup()
|
||||
{
|
||||
|
@ -189,12 +314,15 @@ void setup()
|
|||
dma_display->begin(); // setup the LED matrix
|
||||
dma_display->setBrightness8(200); // 0-255
|
||||
dma_display->clearScreen();
|
||||
dma_display->setTextColor(dma_display->color333(7, 7, 7)); //)
|
||||
dma_display->setTextSize(1);
|
||||
dma_display->setFont(&FreeMono9pt7b);
|
||||
Initialize_State();
|
||||
}
|
||||
|
||||
|
||||
void loop()
|
||||
{
|
||||
// server.handleClient();
|
||||
|
||||
#pragma region Serial processing
|
||||
while (Serial.available() > 0)
|
||||
{
|
||||
|
@ -221,8 +349,6 @@ void loop()
|
|||
int expectedSize = numRows * numCols * floatSize;
|
||||
if (bufferIndex >= (2 * sizeof(int) + expectedSize))
|
||||
{
|
||||
//dma_display->clearScreen();
|
||||
|
||||
for (int row = 0; row < numRows; ++row)
|
||||
{
|
||||
for (int col = 0; col < numCols; ++col)
|
||||
|
@ -238,18 +364,29 @@ void loop()
|
|||
if (player.alive)
|
||||
{
|
||||
int x = (int)data[0][0];
|
||||
int f = (int)data[0][2];
|
||||
updatePlayer(x);
|
||||
updateEnemies();
|
||||
updateBullet();
|
||||
checkCollisions();
|
||||
render();
|
||||
if (f == 1)
|
||||
fireBullet();
|
||||
}
|
||||
else
|
||||
{
|
||||
//Game_Over();
|
||||
}
|
||||
}
|
||||
|
||||
// Reset chỉ số chỉ mục sau khi xử lý
|
||||
}
|
||||
bufferIndex = 0;
|
||||
}
|
||||
if(!player.alive) Game_Over();
|
||||
unsigned long now = millis();
|
||||
if(now-last_game_over_time >= restart_time && !player.alive){
|
||||
Initialize_State();
|
||||
}
|
||||
//if(game_over) return;
|
||||
updateEnemies();
|
||||
updateBullets();
|
||||
checkCollisions();
|
||||
render();
|
||||
#pragma endregion
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue