From c4cebfe0d71ccdbf6a45da1f3a84e8fabf2b971a Mon Sep 17 00:00:00 2001 From: "sigonasr2, Sig, Sigo" Date: Mon, 25 Jul 2022 18:37:30 +0000 Subject: [PATCH] Include background drawing functions that set and reset colors Co-authored-by: sigonasr2 --- main | Bin 17904 -> 18152 bytes main.c | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++------- 2 files changed, 57 insertions(+), 7 deletions(-) diff --git a/main b/main index 3e8f1cb9d3c875722f04eab5e6ba05b601b2b732..3481be7f2047031f0ad3b9597e91611b0f04155e 100755 GIT binary patch delta 5154 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 delta 4069 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 F{1=~r25$fW diff --git a/main.c b/main.c index e2083f7..a5a2922 100644 --- a/main.c +++ b/main.c @@ -45,11 +45,37 @@ boolean ToggleWindow(WINDOW**win,int w,int h,int x,int y) { *win=NULL; delwin(*win); clear(); + return false; } else { *win=newwin(h,w,y,x); + return true; } } +void changeColor(int*oldcol,int newcol) { + attroff(COLOR_PAIR(*oldcol)); + attron(COLOR_PAIR(newcol)); + *oldcol=newcol; +} + +//Provide the width and height that the background needs to cover as well as an offset x and y value. +void drawBackground(int*currentcol,int background_id,int x,int y,int w,int h) { + int oldcol=*currentcol; + switch(background_id) { + case 0:{ + move(y,x); + changeColor(currentcol,3); + for (int yy=0;yy=0)?currentcol-1:7); + }break; } } if (clock()-lastTime>FRAMETIME) { @@ -96,6 +142,7 @@ int main(int argc,char**argv) { messageBox=newwin(4,cols-2,rows-5,1); } //mvprintw(5,7,"There are %dx%d squares. (%d)",cols,rows,frameCount++); + drawBackground(¤tcol,0,4,4,4,4); if (messageBox!=NULL) { drawBorder(messageBox); mvwprintw(messageBox,0,0,"There are %dx%d squares. (%d) It is good!",cols,rows,frameCount); @@ -103,6 +150,9 @@ int main(int argc,char**argv) { for (int i=0;i<25;i++) { if (keyLog[i]>0) { mvprintw(6+i,2,"Key %d was pressed.",keyLog[i]); + short r,g,b; + color_content(currentcol,&r,&g,&b); + mvprintw(6+i,30,"%d %d %d",r,g,b); } } refresh();