static void handle_rowsize( LWControl *ectl, void *edata ) { int i; GET_INT( ectl, i ); if ( i < linesize ) { clrtext( 1, 13, NROWS, 60 ); clrtext( 1, 63, NROWS, 78 ); } linesize = i; pagesize = i * NROWS; drawcb_text( ctl[ 0 ], NULL, 0 ); }
int main(void) { /* init ncurses */ WINDOW * mainwin; if (( mainwin = initscr()) == NULL) { fprintf(stderr,"ERROR initializing ncurses.\n"); exit(1); } /* Define all internally used variables */ int loopy,loopx; int keyin=0; /* Initialize BigMap array to all blanks */ for(loopy=1; loopy<=84; loopy++) for(loopx=1; loopx<=84; loopx++) bigmap[loopy][loopx]=' '; for(loopy=1; loopy<=2; loopy++) for(loopx=1; loopx<=84; loopx++) { bigmap[loopy][loopx]='#'; bigmap[loopy+82][loopx]='#'; } for(loopx=1; loopx<=2; loopx++) for(loopy=1; loopy<=84; loopy++) { bigmap[loopy][loopx]='#'; bigmap[loopy][loopx+82]='#'; } for(loopx=1; loopx<=8; loopx++) { shields[loopx]=100; twas[loopx]='B'; } /*********** Main programming starts here ***********/ curs_set(0); drawscr(); initgame(); views(); while(keyin != 27) { keyin = check_keybrd(); switch(keyin) { case 172:movetank(UP);break; case 180:movetank(DOWN);break; case 175:movetank(LEFT);break; case 177:movetank(RIGHT);break; case 182:clrtext();break; case 49:tank=1;views();break; case 50:tank=2;views();break; case 51:tank=3;views();break; case 52:tank=4;views();break; case 53:tank=5;views();break; case 54:tank=6;views();break; case 55:tank=7;views();break; case 56:tank=8;views();break; case 33:decoy=1;views();break; case 64:decoy=2;views();break; case 35:decoy=3;views();break; } remote(); refresh(); } curs_set(1); /* Show Cursor */ return(0); }
int main(void) { /* init ncurses */ WINDOW * mainwin; if (( mainwin = initscr()) == NULL) { fprintf(stderr, "ERROR initializing ncurses.\n"); exit(1); } /* Define all internally used variables */ int loopy, loopx; int keyin = 0; /* Initialize BigMap array to all blanks */ for (loopy = 1; loopy <= 84; loopy++) { for (loopx = 1; loopx <= 84; loopx++) { bigmap[loopy][loopx]=' '; } } /* Create the inpenetrable walls around the big map */ /* Top and Bottom wall */ for (loopy = 1; loopy <= 2; loopy++) { for (loopx = 1; loopx <= 84; loopx++) { bigmap[loopy][loopx] = '#'; bigmap[loopy+82][loopx] = '#'; } } /* Left and Right wall */ for (loopx = 1; loopx <= 2; loopx++) { for(loopy = 1; loopy <=84; loopy++) { bigmap[loopy][loopx] = '#'; bigmap[loopy][loopx+82] = '#'; } } /* Initialize the tanks shields to 100 and their previous character to 'B' indicating they were on the Base */ for (loopx = 1; loopx <= 8; loopx++) { shields[loopx] = 100; twas[loopx] = 'B'; } /*********** Main programming starts here ***********/ /* hide the cursor */ curs_set(FALSE); // disable the cursor drawscr(); initgame(); views(); /* Main Game Loop - Exits when ESC is pressed */ while(keyin != 27) { keyin = check_keybrd(); switch(keyin) { case 172: movetank(UP); break; case 180: movetank(DOWN); break; case 175: movetank(LEFT); break; case 177: movetank(RIGHT); break; case 182: clrtext(); break; case 49: tank = 1; views(); break; case 50: tank = 2; views(); break; case 51: tank = 3; views(); break; case 52: tank = 4; views(); break; case 53: tank = 5; views(); break; case 54: tank = 6; views(); break; case 55: tank = 7; views(); break; case 56: tank = 8; views(); break; case 33: decoy = 1; views(); break; case 64: decoy = 2; views(); break; case 35: decoy = 3; views(); break; } remote(); refresh(); } curs_set(1); /* Show Cursor */ return(0); }