From: Laurent MAZET Date: Fri, 7 Jun 2024 14:07:58 +0000 (+0200) Subject: initial score (not working) X-Git-Tag: v1.0~36 X-Git-Url: https://secure.softndesign.org/git/?a=commitdiff_plain;h=98910341d1974a86ede478771daf97b679321aac;p=scrabble.git initial score (not working) --- diff --git a/function.c b/function.c index 24b6f31..718b6f1 100644 --- a/function.c +++ b/function.c @@ -189,6 +189,41 @@ int evalscore (play_t *play, play_t *turn, bag_t *bag) { int score = 0; + int i, j; + int accountable = 0; + + /* words in line */ + for (j = 0; j < play->ysize; j++) { + int s = 0; + int wfactor = 1; + for (i = 0; i < play->xsize; i++) { + char letter = play->tab[i + j * play->xsize]; + if (letter == ' ') { + if (accountable) { + score += s * wfactor; + } + s = 0; + accountable = 0; + wfactor = 1; + } else { + int lfactor = 1; + + int k; + for (k = 0; k nbletters; k++) { + if (bag->lettervalues[k].letter == letter) { + score += bag->lettervalues[k].value * lfactor; + break; + } + } + if (turn->tab[i + j * turn->xsize] != ' ') { + accountable = 1; + } + } + } + } + + /* words in column */ + return score; } diff --git a/scrabble.c b/scrabble.c index 41c0a8d..d252adf 100644 --- a/scrabble.c +++ b/scrabble.c @@ -187,6 +187,8 @@ int main (int argc, char *argv[]) cleanplay (turn); letter = getnextletter (game); drawwindow (game, xdrawwin, ydrawwin); + score = 0; + cleanplay (turn); break; case KEY_UP: case 'i':