From 802dd23c7561fd13e1fa5383e51a62cece6832a5 Mon Sep 17 00:00:00 2001 From: Jason Bou-Samra <154414066+bou-samra@users.noreply.github.com> Date: Sat, 17 Aug 2024 19:59:33 +1000 Subject: [PATCH] Update backdrop.c --- src/backdrop.c | 28 +++++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/src/backdrop.c b/src/backdrop.c index f4350e4..b696ec4 100644 --- a/src/backdrop.c +++ b/src/backdrop.c @@ -1,5 +1,9 @@ #include +#include + extern SDL_Renderer *sr; +extern bool gradient_d; + enum gradient {Blue = 0, Green = 10, Red = 20, Yellow = 30, Magenta = 40, Cyan = 50, Grey = 60} colour = 0; ////////////////// BOARD BACKDROP COLOURS ////////////////// @@ -16,17 +20,27 @@ int grad_tab[] = { }; k = 0; // gradient fill - for (int j = 0; j < 10; j++) { - SDL_SetRenderDrawColor (sr, (grad_tab[j + colour] & 0x00ff0000) >> 16, (grad_tab[j + colour] & 0x0000ff00) >> 8, grad_tab[j + colour] & 0x000000ff, 255); - for (int i = 0; i < 20; i++) { - SDL_RenderDrawLine (sr, 0, k, 319, k); - k = k + 1; + if (gradient_d == false) { + for (int j = 0; j < 10; j++) { + SDL_SetRenderDrawColor (sr, (grad_tab[j + colour] & 0x00ff0000) >> 16, (grad_tab[j + colour] & 0x0000ff00) >> 8, grad_tab[j + colour] & 0x000000ff, 255); + for (int i = 0; i < 20; i++) { + SDL_RenderDrawLine (sr, 0, k, 319, k); + k = k + 1; + } + } + } else { // invert gradient + for (int j = 9; j > -1; j--) { + SDL_SetRenderDrawColor (sr, (grad_tab[j + colour] & 0x00ff0000) >> 16, (grad_tab[j + colour] & 0x0000ff00) >> 8, grad_tab[j + colour] & 0x000000ff, 255); + for (int i = 0; i < 20; i++) { + SDL_RenderDrawLine (sr, 0, k, 319, k); + k = k + 1; + } } } k = 0; // horizontal edge light - SDL_SetRenderDrawColor (sr, 0x99, 0x99, 0x99, 255); - for (int i = 0; i < 16; i++) { + SDL_SetRenderDrawColor (sr, 0x99, 0x99, 0x99, 255); + for (int i = 0; i < 16; i++) { SDL_RenderDrawLine (sr, k, 0, k, 199); k = k + 20; }