int move(int dir, int execute) { int x = 0, y = 0, i, j; // coordenadas para andar int line[4], col[4]; int nummoves = 0; switch(dir) { case KEY_RIGHT: x = 1; break; case KEY_LEFT: x = -1; break; case KEY_UP: y = -1; break; case KEY_DOWN: y = 1; break; } clear_combinated(); set_line_col(line, col, x, y); for(i=0; i<4; i++) { int li; int co; for(j=0; j<4; j++) { li = line[i]; co = col[j]; if(game.tabuleiro[li][co]) { nummoves += move_block(li, co, x, y, execute); // retorna se mveu } } } return nummoves; }
options set_show_info(options const & opts, unsigned line, unsigned col) { return set_line_col(opts.update(name("show_info"), true), line, col); }