#include "lzr.h" #include "cfg.h" #include "input.h" #include #include #include #define PAGES 8 int main(int argc, char **argv) { (void)argc, (void)argv; srand(time(NULL)); if (LZR_Init(cfg)) return LZR_Quit(), 1; LZR_ToggleFullscreen(); int pages[PAGES] = { LZR_IMAGE("res/004/0.bmp"), LZR_IMAGE("res/004/1.bmp"), LZR_IMAGE("res/004/2.bmp"), LZR_IMAGE("res/004/3.bmp"), LZR_IMAGE("res/004/4.bmp"), LZR_IMAGE("res/004/5.bmp"), LZR_IMAGE("res/004/6.bmp"), LZR_IMAGE("res/004/7.bmp"), }; for (int i = 0; i < PAGES; i++) if (pages[i] < 0) return LZR_Quit(), 1; LZR_ImageDrawSettings stg = { .ix = 0, .iy = 0, .width = -1, .height = -1, .scale_x = 1.0, .scale_y = 1.0, .angle = 0.0, .center = false, .flip_h = false, .flip_v = false }; int page = 0; while (!LZR_ShouldQuit()) { float color = (1.0 + fabs(sin((float)LZR_GetTick() / 32))) / 2; color *= color; LZR_CycleEvents(); input_update(); if (input_pressed(K_LEFT) && page > 0) page -= 1; if (input_pressed(K_RIGHT) && page < 4) page += 1; LZR_DrawBegin(); //LZR_DrawSetColor(color, 1.0 - color, color); LZR_DrawSetColor(0, 0, 0); LZR_DrawClear(); LZR_DrawSetColor(1.0 - color, color, 1.0 - color); if (page > 0) { stg.flip_h = (rand() % 2048 == 0); stg.flip_v = (rand() % 2048 == 0); LZR_DrawImageEx(pages[page * 2 - 1], 0, (CFG_DHEIGHT - 595) / 2, stg); } if (page < 4) { stg.flip_h = (rand() % 2048 == 0); stg.flip_v = (rand() % 2048 == 0); LZR_DrawImageEx(pages[page * 2], CFG_DWIDTH - 421, (CFG_DHEIGHT - 595) / 2, stg); } //LZR_DrawSetColor(color, 1.0 - color, color); LZR_DrawSetColor(0, 0, 0); LZR_DrawEnd(); } LZR_Quit(); return 0; }