Tetris: PieceStuck() learns of lower halves

This commit is contained in:
nick black 2020-03-25 21:52:23 -04:00
parent 25dd65a172
commit d5e0b24f01
No known key found for this signature in database
GPG Key ID: 5F43400C21CBFACC
2 changed files with 7 additions and 3 deletions

View File

@ -18,7 +18,7 @@ std::unique_ptr<ncpp::Plane> NewPiece() {
const size_t cols = strlen(t->texture); const size_t cols = strlen(t->texture);
int y, x; int y, x;
stdplane_->get_dim(&y, &x); stdplane_->get_dim(&y, &x);
const int xoff = x / 2 - BOARD_WIDTH + (random() % BOARD_WIDTH - 1); const int xoff = x / 2 - BOARD_WIDTH + random() % BOARD_WIDTH;
std::unique_ptr<ncpp::Plane> n = std::make_unique<ncpp::Plane>(2, cols, board_top_y_ - 1, xoff, nullptr); std::unique_ptr<ncpp::Plane> n = std::make_unique<ncpp::Plane>(2, cols, board_top_y_ - 1, xoff, nullptr);
if(n){ if(n){
uint64_t channels = 0; uint64_t channels = 0;

View File

@ -12,8 +12,12 @@ bool PieceStuck() {
if(board_->get_at(cmpy, cmpx, &c) < 0){ if(board_->get_at(cmpy, cmpx, &c) < 0){
throw TetrisNotcursesErr("get_at()"); throw TetrisNotcursesErr("get_at()");
} }
if(c.get().gcluster && c.get().gcluster != ' '){ if(c.get().gcluster){
return true; if(c.get().gcluster != ' '){
if(strcmp(board_->get_extended_gcluster(c), "")){
return true;
}
}
} }
} }
} }