Added initial draw functions.
This commit is contained in:
		
							parent
							
								
									c4ce09551e
								
							
						
					
					
						commit
						513d8308d0
					
				@ -12,6 +12,11 @@ void init_curses() {
 | 
				
			|||||||
  raw();                    /* disable line buffers                   */
 | 
					  raw();                    /* disable line buffers                   */
 | 
				
			||||||
  noecho();                 /* character echo is unnecessary          */
 | 
					  noecho();                 /* character echo is unnecessary          */
 | 
				
			||||||
  keypad(stdscr, TRUE);     /* enable F and arrow keys                */
 | 
					  keypad(stdscr, TRUE);     /* enable F and arrow keys                */
 | 
				
			||||||
 | 
					  start_color();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  init_pair(1, COLOR_BLACK, COLOR_WHITE);
 | 
				
			||||||
 | 
					  init_pair(2, COLOR_RED, COLOR_WHITE);
 | 
				
			||||||
 | 
					  init_pair(3, COLOR_WHITE, COLOR_BLUE);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
char *card_suit(enum suit suit) {
 | 
					char *card_suit(enum suit suit) {
 | 
				
			||||||
@ -54,3 +59,50 @@ char *card_value(enum value value) {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  return(card_value);
 | 
					  return(card_value);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void draw_value(struct card *card) {
 | 
				
			||||||
 | 
					  mvwprintw(card->frame->shape, 0, 0, card_value(card->value));
 | 
				
			||||||
 | 
					  mvwprintw(card->frame->shape, 4, 6, card_value(card->value));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  return;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void draw_suit(struct card *card) {
 | 
				
			||||||
 | 
					  if (card->suit % 2 == 0) {
 | 
				
			||||||
 | 
					    wattron(card->frame->shape, COLOR_PAIR(RED_ON_WHITE));
 | 
				
			||||||
 | 
					    mvwprintw(card->frame->shape, 0, 1, card_suit(card->suit));
 | 
				
			||||||
 | 
					    mvwprintw(card->frame->shape, 4, 5, card_suit(card->suit));
 | 
				
			||||||
 | 
					    wattroff(card->frame->shape, COLOR_PAIR(RED_ON_WHITE));
 | 
				
			||||||
 | 
					  } else {
 | 
				
			||||||
 | 
					    wattron(card->frame->shape, COLOR_PAIR(BLACK_ON_WHITE));
 | 
				
			||||||
 | 
					    mvwprintw(card->frame->shape, 0, 1, card_suit(card->suit));
 | 
				
			||||||
 | 
					    mvwprintw(card->frame->shape, 4, 5, card_suit(card->suit));
 | 
				
			||||||
 | 
					    wattroff(card->frame->shape, COLOR_PAIR(BLACK_ON_WHITE));
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  return;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void draw_front(struct card *card) {
 | 
				
			||||||
 | 
					  wbkgd(card->frame->shape, COLOR_PAIR(BLACK_ON_WHITE));
 | 
				
			||||||
 | 
					  draw_value(card);
 | 
				
			||||||
 | 
					  draw_suit(card);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  return;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void draw_back(struct card *card) {
 | 
				
			||||||
 | 
					  wbkgd(card->frame->shape, COLOR_PAIR(WHITE_ON_BLUE));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  return;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void draw_card(struct card *card) {
 | 
				
			||||||
 | 
					  if (card->face == EXPOSED) {
 | 
				
			||||||
 | 
					    draw_front(card);
 | 
				
			||||||
 | 
					  } else {
 | 
				
			||||||
 | 
					    draw_back(card);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  return;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -6,8 +6,17 @@
 | 
				
			|||||||
#define HEARTS_SYMBOL   "\u2665"
 | 
					#define HEARTS_SYMBOL   "\u2665"
 | 
				
			||||||
#define CLUBS_SYMBOL    "\u2663"
 | 
					#define CLUBS_SYMBOL    "\u2663"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define BLACK_ON_WHITE 1
 | 
				
			||||||
 | 
					#define RED_ON_WHITE   2
 | 
				
			||||||
 | 
					#define WHITE_ON_BLUE  3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void init_curses();
 | 
					void init_curses();
 | 
				
			||||||
char *card_suit(enum suit);
 | 
					char *card_suit(enum suit);
 | 
				
			||||||
char *card_value(enum value);
 | 
					char *card_value(enum value);
 | 
				
			||||||
 | 
					void draw_value(struct card *);
 | 
				
			||||||
 | 
					void draw_suit(struct card *);
 | 
				
			||||||
 | 
					void draw_front(struct card *);
 | 
				
			||||||
 | 
					void draw_back(struct card *);
 | 
				
			||||||
 | 
					void draw_card(struct card *);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user