Beispiel #1
0
int main(int argc, char *argv[])
{
    int side, maxcolour;

    srand(time(NULL));
    
    if (argc < 3)
        ERROR("Expected at least 2 arguments\n");
    
    side = atoi(argv[1]);
    
    if (side <= 1)
        ERROR("Expected a square with a side length of at least 2");

    if (side > MAX_SIDE)
        ERROR("Given side is greater than max_side");

    maxcolour = atoi(argv[2]);
    
    if (maxcolour <= 1)
        ERROR("Expected at least 2 colours");
    
    /* initialise random field */
    for (unsigned int r = 0; r < NELEM(field); r++)
        for (unsigned int c = 0; c < NELEM(field[0]); c++)
            field[r][c] = rand() % maxcolour;
    
    for (int x = 0; x < side; x++)
        for (int y = 0; y < side; y++)
            print_tile(x, y);
    
    return 0;
}
Beispiel #2
0
void print_list(TileList* list) {
	TileNode* cur = list->first;
	while (cur) {
		print_tile(cur->tile);
		cur = cur->next;
	}
}
Beispiel #3
0
/*
Wypisz zawartość stosu
*/
void print_pool(WINDOW* wnd) {

	int i,j;

	/* wypisz współrzędne znakowe */
	for(i=0;i<TILES_COUNT;i++) {
		wmove(wnd, 4+(i*3)+i, 37);
		wprintw(wnd, "%c", 'A'+TILES_COUNT+i);
	}

	/* wypisz współrzędne numeryczne */
	for(i=0;i<TILES_COUNT;i++) {
		wmove(wnd, 1, 40+i*5+2+i);
		wprintw(wnd, "%d.", i+1);
	}

	wmove(wnd, 1, 35);
	
	wprintw(wnd, "Pool:");

	for(i=0;i<TILES_COUNT;i++) {
		for(j=0;j<TILES_COUNT;j++) {

			print_tile(wnd, &pool[i][j], 40+TILE_WIDTH*i+i, 3+TILE_HEIGHT*j+j);

		}
	}

}
Beispiel #4
0
/*
Wypisz zawartość pola gry
*/
void print_game(WINDOW* wnd) {

	int i,j;

	wmove(wnd, 3, 5);
	
	wprintw(wnd, "%s", "Game field:");

	/* wypisz współrzędne znakowe */
	for(i=0;i<TILES_COUNT;i++) {
		wmove(wnd, 8+i*3, 2);
		wprintw(wnd, "%c", 'A'+i);
	}

	/* wypisz współrzędne numeryczne */
	for(i=0;i<TILES_COUNT;i++) {
		wmove(wnd, 5, 5+i*5+2);
		wprintw(wnd, "%d.", i+1);
	}

	for(i=0;i<TILES_COUNT;i++) {
		for(j=0;j<TILES_COUNT;j++) {
			
			print_tile(wnd, &game[i][j], 5+TILE_WIDTH*i, 7+TILE_HEIGHT*j);

		}
	}
	
}
Beispiel #5
0
void print_board(int board[SIZE][SIZE]) {
  int i, j;

  printf("\n");
  for (i = 0; i < SIZE; i++) {
    for (j = 0; j < SIZE; j++) {
      print_tile(board[i][j]);
    }
    printf("\n");
  }
  printf("\n");
}
Beispiel #6
0
void print_game(struct game_t *game)
{
	int r, c;
	move(0, 0);
	printw("Score: %6d  Turns: %4d", game->score, game->turns);
	for (r = 0; r < NROWS; r++) {
		for (c = 0; c < NCOLS; c++) {
			move(r + 2, 5 * c);
			print_tile(game->board[r][c]);
		}
	}

	refresh();
}
Beispiel #7
0
int			event(s_sdl *s_init, int **table, int xe, int ce)
{
  SDL_Event		event;
  int			i;
  SDL_Texture		*character;
  SDL_Rect		dest;
  int			x;
  int			y;
  SDL_Texture		*tileset;

  tileset = load_tileset(s_init);
  if (tileset == NULL)
    return (0);
  if (!(character = (load_character(s_init))))
    printf("Character NULL");
  i = 0;
  x = 100;
  y = 100;
  while (!i)
    {
      SDL_PollEvent(&event);
      switch (event.type)
	{
	case SDL_KEYDOWN:
	  switch (event.key.keysym.sym)
	    {
	    case SDLK_ESCAPE:
	      i = 1;
	      return (0);
	    case SDLK_LEFT:
	      x = x - 1;
	      break;
	    case SDLK_RIGHT:
	      x = x + 1;
	      break;
	    case SDLK_UP:
	      y = y - 1;
	      break;
	    case SDLK_DOWN:
	      y = y + 1;
	      break;
	    }
	  break;
	}
      pos_character(&dest, &x, &y);
      print_tile(s_init, table, xe, ce, tileset);
      SDL_RenderCopy(s_init->renderer, character, NULL, &dest);
      SDL_RenderPresent(s_init->renderer);
    }
}
Beispiel #8
0
void print_game(struct game_t *game)
{
	int r, c;
	gotoxy(0, 0);
	printf("Score: %6d  Turns: %4d", game->score, game->turns);
	for (r = 0; r < NROWS; r++)
	{
		for (c = 0; c < NCOLS; c++)
		{
			gotoxy(5 * c, r + 2);
			print_tile(game->board[r][c]);
		}
	}
}