diff options
Diffstat (limited to 'src/et/et.c')
-rw-r--r-- | src/et/et.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/src/et/et.c b/src/et/et.c index 30f529f..591f4e6 100644 --- a/src/et/et.c +++ b/src/et/et.c @@ -789,7 +789,7 @@ et_game_update_status(struct et_game *game) snprintf(game->status_sprite, sizeof(game->status_sprite), ET_STATUS_SPRITE_FORMAT, game->score, - game->level, game->total_lines); + game->level, game->total_nr_lines); eetg_object_update(&game->status); } @@ -1071,12 +1071,15 @@ et_game_scan_rows(struct et_game *game) game->difficult = true; } - game->total_lines += nr_cleared_rows; - game->level_lines += nr_cleared_rows; + game->total_nr_lines += nr_cleared_rows; + game->nr_level_lines += nr_cleared_rows; - if (game->level_lines >= 10) { - game->level++; - game->level_lines -= 10; + if (game->nr_level_lines >= 10) { + if (game->level < 30) { + game->level++; + } + + game->nr_level_lines -= 10; } } @@ -1100,14 +1103,14 @@ et_game_reset(struct et_game *game) game->held_piece = NULL; game->current_piece = NULL; game->score = 0; - game->total_lines = 0; + game->total_nr_lines = 0; game->gravity_counter_reload = ET_FPS / ET_CURRENT_PIECE_SPEED; game->gravity_counter = game->gravity_counter_reload; game->lockdown_counter_reload = ET_FPS / ET_LOCKDOWN_DELAY; game->nr_lockdown_moves = -1; game->next_index = 0; game->state = ET_STATE_INTRO; - game->level_lines = 0; + game->nr_level_lines = 0; game->level = 1; game->sync_counter_reload = ET_FPS * 2; game->sync_counter = 1; |