New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
scoring now like NDS, also filled pieces on the sides #7
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The scoring change is fine. I'm not totally sold on drawBack2Back() and the change to drawPieceAt().
Tetris.ino
Outdated
@@ -312,6 +321,14 @@ void manageGame() { | |||
} | |||
} | |||
|
|||
void drawBack2Back() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a little too fast and a definitely too big (i.e. the text goes off the screen). Drawing or adding delays in the middle of the game manager also needs to be justified. Thinking about it, pausing should probably be moved out to its own function to be called in drawFrame().
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
makes sense, I still would like on screen indication of the back to back tetris in some way that resembles this: https://www.youtube.com/watch?v=UlwH4v9_OvE
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same for regular tetris.
perhaps doing something with the background to signify this ?
Tetris.ino
Outdated
@@ -332,7 +349,7 @@ void drawPieceAt(Piece& piece, int x, int y) { | |||
for(int i = 0; i < piece.width; ++i) { | |||
for(int j = 0; j < piece.width; ++j) { | |||
if(piece.shape[i][j] == 1) { | |||
arduboy.drawRect(x + j * CELL_SIZE, y + i * CELL_SIZE, CELL_SIZE, CELL_SIZE, WHITE); | |||
arduboy.fillRect(x + j * CELL_SIZE, y + i * CELL_SIZE, CELL_SIZE, CELL_SIZE, WHITE); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A matter of taste, I think. Having two different sprites bothers me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I get it. though it does make it easier to look at the next piece and held piece.
this is in prep for ghost piece (a la TGM3)
Once ghost piece works, everything can become a solid.
I intend ghost piece to be a simple black rect (non filled).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
actually, i take that back, can't go solid, my bad
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
also need to add efficiency meter (tetris/total lines)
removed the fill for draw piece at. it isn't important enough. |
I have the png and then use a tool (I forget which one) to turn it into bytecode. I'll probably write something up to do automatically generate bytecode when I get a chance. |
Sorry I haven't looked at this yet. It's been busy. Doing something with the background might be interesting (maybe a simple animation for example.) For drawTetris and drawBack2Back, it's hard to find a solution that looks good. Tetris DS displays them off the board for a couple seconds, plus a few other effects (sound, motion, etc.) I'm not trying to emulate them, but their design is certainly aesthetically appealing. From a technical perspective, I suggest using a timer to draw. Set the timer whenever a tetris or back2back happened, and then draw while the timer has not run out. |
No description provided.