#include <ncurses.h>
void printrow(int r, int c, int colour);
void printcol(int r, int c, int colour);
int main()
{
initscr();
int rr,rc,cr,cc,ch,colour;
keypad(stdscr, TRUE);
noecho();
ch = getch();
while(ch!='q' && ch!='Q')
{
while(ch!=KEY_RIGHT && ch!=KEY_UP && ch!=KEY_LEFT && ch!=KEY_DOWN)
{
move(5,20);
printw("Wrong key: press Arrow Keys");
ch=getch();
clear();
}
if (ch==KEY_RIGHT)
{
colour=1;
rr=5;
cr=3;
rc=20;
cc=28;
}
else if (ch==KEY_UP)
{
colour=2;
rr=5;
cr=5;
rc=20;
cc=24;
}
else if(ch==KEY_LEFT)
{
colour=3;
rr=7;
cr=5;
rc=20;
cc=20;
}
else if(ch==KEY_DOWN)
{
colour=4;
rr=9;
cr=5;
rc=16;
cc=20;
}
printrow(rr,rc,colour);
printcol(cr,cc,colour);
ch=getch();
clear();
}
endwin();
return 0;
}
void printrow(int r, int c, int colour)
{
start_color();
init_pair(1,COLOR_RED,COLOR_BLUE);
init_pair(2,COLOR_YELLOW, COLOR_GREEN);
init_pair(3,COLOR_WHITE,COLOR_MAGENTA);
init_pair(4,COLOR_YELLOW,COLOR_BLACK);
for(int i=0; i<10; i++)
{
attrset(COLOR_PAIR(colour));
move(r,c+i);
printw("*");
move(r+1,c+i);
printw("*");
}
}
void printcol(int r, int c,int colour)
{
start_color();
init_pair(1,COLOR_RED,COLOR_BLUE);
init_pair(2,COLOR_YELLOW, COLOR_GREEN);
init_pair(3,COLOR_WHITE,COLOR_MAGENTA);
init_pair(4,COLOR_YELLOW,COLOR_BLACK);
for (int i=0; i<6; i++)
{
attrset(COLOR_PAIR(colour));
move(r+i,c);
printw("*");
move(r+i,c+1);
printw("*");
}
}
0 comments:
Post a Comment