From 5bcd643a686a9dc7508dc9c6139bc8fb924ee6ef Mon Sep 17 00:00:00 2001 From: nick black Date: Fri, 27 Mar 2020 00:17:16 -0400 Subject: [PATCH] tetris: increase gravity with level #421 --- src/tetris/lock.h | 9 +++++---- src/tetris/movedown.h | 6 +++--- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/tetris/lock.h b/src/tetris/lock.h index 5ece56080..18b82aabb 100644 --- a/src/tetris/lock.h +++ b/src/tetris/lock.h @@ -4,10 +4,10 @@ void StainBoard(int dimy, int dimx){ } int high = 0xff - level_ * 16, low = level_ * 16; // rgb calculation limits us to 16 levels (0--15) uint64_t tl = 0, tr = 0, bl = 0, br = 0; - channels_set_fg_rgb(&tl, high, 0, low); channels_set_bg_alpha(&tl, CELL_ALPHA_TRANSPARENT); - channels_set_fg_rgb(&tr, low, high, 0); channels_set_bg_alpha(&tr, CELL_ALPHA_TRANSPARENT); - channels_set_fg_rgb(&bl, 0, low, high); channels_set_bg_alpha(&bl, CELL_ALPHA_TRANSPARENT); - channels_set_fg_rgb(&br, 0, high, low); channels_set_bg_alpha(&br, CELL_ALPHA_TRANSPARENT); + channels_set_fg_rgb(&tl, high, 0xff, low); channels_set_bg_alpha(&tl, CELL_ALPHA_TRANSPARENT); + channels_set_fg_rgb(&tr, low, high, 0xff); channels_set_bg_alpha(&tr, CELL_ALPHA_TRANSPARENT); + channels_set_fg_rgb(&bl, 0xff, low, high); channels_set_bg_alpha(&bl, CELL_ALPHA_TRANSPARENT); + channels_set_fg_rgb(&br, 0xff, high, low); channels_set_bg_alpha(&br, CELL_ALPHA_TRANSPARENT); if(!board_->stain(dimy - 2, dimx - 2, tl, tr, bl, br)){ throw TetrisNotcursesErr("stain()"); } @@ -49,6 +49,7 @@ void LockPiece(){ static constexpr int points[] = {50, 150, 350, 1000}; score_ += (level_ + 1) * points[cleared - 1]; level_ = linescleared_ / 10; + msdelay_ = std::chrono::milliseconds(Gravity(level_)); StainBoard(bdimy, bdimx); UpdateScore(); } diff --git a/src/tetris/movedown.h b/src/tetris/movedown.h index f0a5982c9..6c510f099 100644 --- a/src/tetris/movedown.h +++ b/src/tetris/movedown.h @@ -17,9 +17,9 @@ bool MoveDown() { curpiece_ = NewPiece(); }else{ ++y; - if(!nc_.render()){ - throw TetrisNotcursesErr("render()"); - } + } + if(!nc_.render()){ + throw TetrisNotcursesErr("render()"); } } return false;